Paul Koning [Fri, 19 Nov 2010 01:58:41 +0000 (20:58 -0500)]
pdp11.h (FIRST_PARM_OFFSET): Fix case of no frame pointer.
* config/pdp11/pdp11.h (FIRST_PARM_OFFSET): Fix case of no frame
pointer.
From-SVN: r166929
Paul Koning [Fri, 19 Nov 2010 01:57:00 +0000 (20:57 -0500)]
pdp11.md (abshi2): Delete TARGET_ABSHI_BUILTIN.
* config/pdp11/pdp11.md (abshi2): Delete TARGET_ABSHI_BUILTIN.
* config/pdp11/pdp11.c (TARGET_DEFAULT_TARGET_FLAGS): Ditto.
* config/pdp11/pdp11.opt (-mabshi): Delete.
From-SVN: r166928
Mingjie Xing [Fri, 19 Nov 2010 01:51:07 +0000 (01:51 +0000)]
Fix typo in the comment.
From-SVN: r166927
GCC Administrator [Fri, 19 Nov 2010 00:21:30 +0000 (00:21 +0000)]
Daily bump.
From-SVN: r166926
Steve Ellcey [Thu, 18 Nov 2010 23:50:26 +0000 (23:50 +0000)]
slp-reduc-3.c: Make check dependent on vect_unpack.
2010-11-18 Steve Ellcey <sje@cup.hp.com>
* gcc.dg/vect/slp-reduc-3.c: Make check dependent on vect_unpack.
* gcc.dg/vect/slp-reduc-6.c: Ditto, plus add alignment.
From-SVN: r166922
Uros Bizjak [Thu, 18 Nov 2010 23:46:13 +0000 (00:46 +0100)]
re PR target/46546 (ix86_pad_returns may leave BB_END (bb) pointing to deleted insn)
PR target/46546
* config/i386/i386.c (ix86_reorg): Call compute_bb_for_insn.
From-SVN: r166921
Richard Henderson [Thu, 18 Nov 2010 21:08:38 +0000 (13:08 -0800)]
re PR middle-end/46515 (Many libjava failures)
PR middle-end/46515
* function.c (maybe_copy_prologue_epilogue_insn): Rename from
maybe_copy_epilogue_insn; handle prologue insns as well.
* rtl.h, cfglayout.c: Update for rename.
* recog.c (peep2_attempt): Copy prologue/epilogue data for
RTX_FRAME_RELATED_P insns.
From-SVN: r166920
Quentin Neill [Thu, 18 Nov 2010 20:56:26 +0000 (20:56 +0000)]
MAINTAINERS (Write After Approval): Add myself.
2010-11-18 Quentin Neill <quentin.neill.gnu@gmail.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r166919
Jakub Jelinek [Thu, 18 Nov 2010 20:51:19 +0000 (21:51 +0100)]
re PR middle-end/46534 (ICE optimizing printf ("...>10MBstring\n") into puts)
PR middle-end/46534
* builtins.c (fold_builtin_printf): Don't copy and modify string
before build_string_literal, instead modify what
build_string_literal returned.
* gcc.c-torture/compile/pr46534.c: New test.
From-SVN: r166918
Jonathan Wakely [Thu, 18 Nov 2010 18:56:29 +0000 (18:56 +0000)]
re PR libstdc++/46455 (resource leaks due to missing destructors for mutexes and condvars)
2010-11-18 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/46455
* include/std/mutex: Define destructors for mutex types which use an
init function.
* include/ext/concurrence.h: Likewise.
From-SVN: r166917
Eric Botcazou [Thu, 18 Nov 2010 18:48:54 +0000 (18:48 +0000)]
decl.c (gnat_to_gnu_entity): Also use return-by-invisible-reference if the return type is By_Reference.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Subprogram_Type>: Also
use return-by-invisible-reference if the return type is By_Reference.
Tidy up and skip the processing of the return type if it is void.
From-SVN: r166916
Ian Lance Taylor [Thu, 18 Nov 2010 17:44:11 +0000 (17:44 +0000)]
configure.ac: Check for lang_requires_boot_languages in config-lang.in files.
* configure.ac: Check for lang_requires_boot_languages in
config-lang.in files.
* configure: Rebuild.
From-SVN: r166914
Paolo Carlini [Thu, 18 Nov 2010 17:26:59 +0000 (17:26 +0000)]
2010-11-18 Paolo Carlini <paolo.carlini@oracle.com>
Fix typo in the last ChangeLog entry.
From-SVN: r166913
Paolo Carlini [Thu, 18 Nov 2010 17:21:35 +0000 (17:21 +0000)]
PR libstdc++/26211 + N3168
2010-11-18 Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/26211 + N3168
* include/bits/istream.tcc (basic_istream<>::tellg, seekg(pos_type),
seekg(off_type, ios_base::seekdir)): Construct a sentry.
(basic_istream<>::tellg, seekg(pos_type), seekg(off_type,
ios_base::seekdir, putback, unget)): Clear eofbit first, per N3168.
* testsuite/27_io/basic_istream/seekg/char/26211.cc: New.
* testsuite/27_io/basic_istream/seekg/wchar_t/26211.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/char/26211.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/wchar_t/26211.cc: Likewise.
* testsuite/27_io/basic_istream/tellg/char/8348.cc: Tweak.
* testsuite/27_io/basic_istream/tellg/wchar_t/8348.cc: Likewise.
From-SVN: r166911
Richard Henderson [Thu, 18 Nov 2010 16:41:53 +0000 (08:41 -0800)]
* gcc.target/i386/pr46470.c: Skip for 32-bit PIC.
From-SVN: r166910
Nathan Froyd [Thu, 18 Nov 2010 16:24:56 +0000 (16:24 +0000)]
re PR c/33193 (slopiness in __real/__imag)
gcc/
PR c/33193
* c-typeck.c (build_unary_op): Call build_real_imag_expr for
REALPART_EXPR and IMAGPART_EXPR.
gcc/c-family/
PR c/33193
* c-common.h (build_real_imag_expr): Declare.
* c-semantics.c (build_real_imag_expr): Define.
gcc/cp/
PR c/33193
* typeck.c (cp_build_unary_op): Call build_real_imag_expr for
REALPART_EXPR and IMAGPART_EXPR.
gcc/testsuite/
PR c/33193
* c-c++-common/pr33193.c: New test.
From-SVN: r166909
Richard Guenther [Thu, 18 Nov 2010 15:17:37 +0000 (15:17 +0000)]
re PR tree-optimization/46172 (ICE: in expand_widen_pattern_expr, at optabs.c:522 with -ftree-vectorize -fno-tree-dce)
2010-11-18 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46172
* tree-vect-loop-manip.c (remove_dead_stmts_from_loop): New
function.
(slpeel_tree_peel_loop_to_edge): Call it.
* gcc.dg/torture/pr46172.c: New testcase.
From-SVN: r166908
Jeff Law [Thu, 18 Nov 2010 14:34:29 +0000 (07:34 -0700)]
re PR middle-end/46297 (gfortran.dg/g77/980701-0.f FAILs with -Os -fno-asynchronous-unwind-tables)
PR middle-end-optimization/46297
* postreload.c (reload_combine_note_store): Deal with embedded
side effects in MEM expressions.
* gfortran.dg/pr46297.f: New test.
From-SVN: r166905
Richard Guenther [Thu, 18 Nov 2010 14:11:00 +0000 (14:11 +0000)]
re PR lto/45089 (-Os -g -fwhopr dwarf2out ICE)
2010-11-18 Richard Guenther <rguenther@suse.de>
PR lto/45089
* dwarf2out.c (add_AT_die_ref): Work around LTO losing types
when checking is not enabled.
From-SVN: r166904
H.J. Lu [Thu, 18 Nov 2010 13:24:00 +0000 (13:24 +0000)]
Update expected demangler output.
2010-11-18 H.J. Lu <hongjiu.lu@intel.com>
PR other/42670
* testsuite/abi/demangle/regression/cw-13.cc: Updated.
From-SVN: r166903
Richard Guenther [Thu, 18 Nov 2010 13:10:40 +0000 (13:10 +0000)]
re PR lto/46525 (Failed to bootstrap-lto)
2010-11-18 Richard Guenther <rguenther@suse.de>
PR lto/46525
* gimple.c (gimple_register_type): Update TYPE_MAIN_VARIANT of
type leaders.
(gimple_register_canonical_type): Also cache the canoncial type
for non type leaders.
From-SVN: r166902
Richard Guenther [Thu, 18 Nov 2010 11:19:20 +0000 (11:19 +0000)]
lto-wrapper.c (run_gcc): Fix -flto=N parsing.
2010-11-18 Richard Guenther <rguenther@suse.de>
* lto-wrapper.c (run_gcc): Fix -flto=N parsing.
From-SVN: r166901
Paolo Carlini [Thu, 18 Nov 2010 11:03:14 +0000 (11:03 +0000)]
formatter.h (__truth): Remove, unused.
2010-11-18 Paolo Carlini <paolo.carlini@oracle.com>
* include/debug/formatter.h (__truth): Remove, unused.
(__is_same): Remove, include cpp_type_traits.h instead.
(_Parameter::_Parameter(const _Safe_iterator<>&, const char*,
_Is_iterator)): Adjust.
* include/debug/safe_iterator.h (_Safe_iterator<>::_M_constant):
Likewise.
From-SVN: r166900
Alexander Monakov [Thu, 18 Nov 2010 10:24:31 +0000 (13:24 +0300)]
re PR middle-end/46518 (internal compiler error: in vinsn_detach, at sel-sched-ir.c:1271)
PR middle-end/46518
* sel-sched-ir.c (init_expr): Use the correct type for
target_available.
* sel-sched.c (fill_vec_av_set): Use explicitly signed char type.
From-SVN: r166898
Joakim Tjernlund [Thu, 18 Nov 2010 08:32:58 +0000 (09:32 +0100)]
sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Support -fpic as well as -mrelocatable at the same time.
2010-11-17 Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
* config/rs6000/sysv4.h (SUBTARGET_OVERRIDE_OPTIONS): Support -fpic
as well as -mrelocatable at the same time.
From-SVN: r166897
Ian Lance Taylor [Thu, 18 Nov 2010 07:35:34 +0000 (07:35 +0000)]
re PR bootstrap/45538 (--enable-build-with-cxx compiling gcc/libcpp/charset.c)
PR bootstrap/45538
* configure.ac: Use AC_USE_SYSTEM_EXTENSIONS. Remove switch of
AC_LANG based on ENABLE_BUILD_WITH_CXX.
From-SVN: r166896
Nicola Pero [Thu, 18 Nov 2010 02:11:33 +0000 (02:11 +0000)]
ivars.c: Include stdlib.h.
2010-11-18 Nicola Pero <nicola.pero@meta-innovation.com>
* ivars.c: Include stdlib.h.
* protocols.c: Same change.
From-SVN: r166895
GCC Administrator [Thu, 18 Nov 2010 00:18:22 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r166894
Quentin Neill [Thu, 18 Nov 2010 00:10:35 +0000 (00:10 +0000)]
re PR testsuite/46422 (FAIL: g++.dg/other/i386-?.C)
Fix PR target/46422.
2010-11-17 Quentin Neill <quentin.neill.gnu@gmail.com>
PR target/46422
* config/i386/bmiintrin.h (__lzcnt_u16, __lzcnt_u32, __lzcnt_u64):
Call the clz builtin.
From-SVN: r166889
Steve Ellcey [Wed, 17 Nov 2010 22:55:01 +0000 (22:55 +0000)]
re PR middle-end/31490 (Compile error section type conflict)
2010-11-17 Steve Ellcey <sje@cup.hp.com>
PR middle-end/31490
* gcc.dg/pr31490.c: New test.
From-SVN: r166888
Dinar Temirbulatov [Wed, 17 Nov 2010 22:54:05 +0000 (01:54 +0300)]
re PR middle-end/31490 (Compile error section type conflict)
2010-11-17 Dinar Temirbulatov <dtemirbulatov@gmail.com>
Steve Ellcey <sje@cup.hp.com>
PR middle-end/31490
* varasm.c (categorize_decl_for_section): Ignore reloc_rw_mask
if section attribute used.
Co-Authored-By: Steve Ellcey <sje@cup.hp.com>
From-SVN: r166887
François Dumont [Wed, 17 Nov 2010 21:33:50 +0000 (22:33 +0100)]
testsuite/lib/libstdc++.exp (check_v3_target_debug_mode): Clean built exe.
From-SVN: r166881
Jan Hubicka [Wed, 17 Nov 2010 21:11:24 +0000 (22:11 +0100)]
builtins.c (expand_builtin_mathfn_2, [...]): Do not expand errno setting variant when optimizing for size.
* builtins.c (expand_builtin_mathfn_2, expand_builtin_mathfn): Do not
expand errno setting variant when optimizing for size.
From-SVN: r166879
Eric Botcazou [Wed, 17 Nov 2010 21:10:19 +0000 (21:10 +0000)]
postreload.c (reload_combine): Call control_flow_insn_p only once.
* postreload.c (reload_combine): Call control_flow_insn_p only once.
Reverse backward loop. Fix formatting issues.
From-SVN: r166878
Uros Bizjak [Wed, 17 Nov 2010 20:35:46 +0000 (21:35 +0100)]
nop.h: Move from ...
* gcc.dg/nop.h: Move from ...
* gcc.dg/guality/nop.h: ... here.
* gcc.dg/lto/
20091216-1_0.c: Include nop.h and use NOP macro.
* gcc.dg/guality/asm-1.c: Update nop.h include.
* gcc.dg/guality/pr43329-1.c: Ditto.
From-SVN: r166877
Paolo Bonzini [Wed, 17 Nov 2010 18:17:17 +0000 (18:17 +0000)]
c-parser.c (c_token_is_qualifier, [...]): New.
2010-11-17 Paolo Bonzini <bonzini@gnu.org>
* c-parser.c (c_token_is_qualifier,
c_parser_next_token_is_qualifier): New.
(c_parser_declaration_or_fndef, c_parser_struct_declaration):
Improve error message on specs->tagdef_seen_p.
(c_parser_struct_or_union_specifier): Improve error recovery.
(c_parser_declspecs): Move exit condition on C_ID_ID early.
Reorganize exit condition for C_ID_TYPENAME/C_ID_CLASSNAME
using c_parser_next_token_is_qualifier; extend it to cover
a ctsk_tagdef typespec and !typespec_ok in general.
testsuite:
2010-11-17 Paolo Bonzini <bonzini@gnu.org>
* gcc.dg/two-types-1.c: New test.
* gcc.dg/two-types-2.c: New test.
* gcc.dg/two-types-3.c: New test.
* gcc.dg/two-types-4.c: New test.
* gcc.dg/two-types-5.c: New test.
* gcc.dg/two-types-6.c: New test.
* gcc.dg/two-types-7.c: New test.
* gcc.dg/two-types-8.c: New test.
* gcc.dg/two-types-9.c: New test.
* gcc.dg/two-types-10.c: New test.
* objc.dg/two-types-1.m: New test.
From-SVN: r166874
Richard Guenther [Wed, 17 Nov 2010 15:56:41 +0000 (15:56 +0000)]
value-prof.c (gimple_divmod_fixed_value_transform): Update the stmt.
2010-11-17 Richard Guenther <rguenther@suse.de>
* value-prof.c (gimple_divmod_fixed_value_transform): Update
the stmt.
(gimple_mod_pow2_value_transform): Likewise.
(gimple_mod_subtract_transform): Likewise.
From-SVN: r166871
Richard Guenther [Wed, 17 Nov 2010 15:47:17 +0000 (15:47 +0000)]
re PR lto/46504 (LTO failed on 483.xalancbmk in SPEC CPU 2006)
2010-11-17 Richard Guenther <rguenther@suse.de>
PR lto/46504
* gimple.c (gimple_register_canonical_type): Make sure to only
make type leaders canonical types.
From-SVN: r166870
Michael Matz [Wed, 17 Nov 2010 15:18:08 +0000 (15:18 +0000)]
timevar.def (TV_IPA_OPT, [...]): New.
* timevar.def (TV_IPA_OPT, TV_EARLY_LOCAL, TV_OPTIMIZE,
TV_POSTRELOAD, TV_REMOVE_UNUSED, TV_ADDRESS_TAKEN, TV_TODO,
TV_VERIFY_LOOP_CLOSED, TV_VERIFY_RTL_SHARING,
TV_REBUILD_FREQUENCIES, TV_REPAIR_LOOPS): New.
* tree-into-ssa.c (rewrite_into_ssa): Don't push/pop timevar here ...
(pass_build_ssa): ... but here.
* cgraphbuild.c (pass_rebuild_cgraph): Use timevar.
* tree-ssa-loop-manip.c (verify_loop_closed_ssa): Use timevar.
* tree-emutls.c (pass_ipa_lower_emutls): Ditto.
* df-core.c (pass_df_initialize_opt,
pass_df_initialize_no_opt): Ditto.
* predict.c (rebuild_frequencies): Ditto.
* tree-vectorizer.c (pass_ipa_increase_alignment): Ditto.
* emit-rtl.c (verify_rtl_sharing): Ditto.
* tree-cfgcleanup.c (repair_loop_structures): Ditto.
* tree-ssa-live.c (remove_unused_locals): Ditto.
* cfglayout.c (pass_into_cfg_layout, pass_outof_cfg_layout): Ditto.
* tree-ssa.c (pass_early_warn_uninitialized,
execute_update_addresses_taken, pass_update_address_taken): Ditto.
* tree-optimize.c (pass_all_optimizations, pass_early_local_passes,
pass_cleanup_cfg_post_optimizing, tree_rest_of_compilation): Ditto.
* passes.c (pass_postreload, execute_todo): Ditto.
* tree-ssanames.c (pass_release_ssa_names): Ditto.
From-SVN: r166869
Joseph Myers [Wed, 17 Nov 2010 14:31:07 +0000 (14:31 +0000)]
invoke.texi (-dy): Remove.
* doc/invoke.texi (-dy): Remove.
* langhooks-def.h (lhd_do_nothing_i): Don't declare.
(LANG_HOOKS_PARSE_FILE): Define to lhd_do_nothing.
* langhooks.c (lhd_do_nothing_i): Remove.
* langhooks.h (lang_hooks.parse_file): Take no arguments.
* toplev.c (set_yydebug): Remove.
(compile_file): Update call to lang_hooks.parse_file.
(decode_d_option): Don't handle -dy.
ada:
* gcc-interface/misc.c (gnat_parse_file): Take no arguments.
c-family:
* c-opts.c (c_common_parse_file): Take no arguments.
* c-common.h (c_common_parse_file): Update prototype.
fortran:
* f95-lang.c (gfc_be_parse_file): Take no arguments.
java:
* jcf-parse.c (java_parse_file): Take no arguments.
* java-tree.h (java_parse_file): Update prototype.
lto:
* lto.c (lto_main): Take no arguments.
* lto.h (lto_main): Update prototype.
From-SVN: r166868
Jakub Jelinek [Wed, 17 Nov 2010 13:02:31 +0000 (14:02 +0100)]
re PR rtl-optimization/46440 (ICE: in rtl_verify_flow_info, at cfgrtl.c:2165 with -fstack-protector-all -fno-tree-dominator-opts -fno-tree-fre)
PR rtl-optimization/46440
* combine.c (update_cfg_for_uncondjump): When changing
an indirect jump into unconditional jump, remove BARRIERs
from bb's footer.
* gcc.dg/pr46440.c: New test.
From-SVN: r166867
Joseph Myers [Wed, 17 Nov 2010 12:21:39 +0000 (12:21 +0000)]
opts.c (target_handle_option): Do not assert that loc == UNKNOWN_LOCATION.
* opts.c (target_handle_option): Do not assert that loc ==
UNKNOWN_LOCATION.
From-SVN: r166866
Jakub Jelinek [Wed, 17 Nov 2010 12:05:24 +0000 (13:05 +0100)]
re PR testsuite/45429 (gcc.dg/vect/no-section-anchors-vect-64.c)
PR testsuite/45429
* gcc.dg/vect/no-section-anchors-vect-64.c: New test.
From-SVN: r166865
Eric Botcazou [Wed, 17 Nov 2010 12:00:15 +0000 (12:00 +0000)]
trans.c (addressable_p): Rewrite obsolete paragraph in head comment.
* gcc-interface/trans.c (addressable_p): Rewrite obsolete paragraph in
head comment.
From-SVN: r166864
Jakub Jelinek [Wed, 17 Nov 2010 11:15:55 +0000 (12:15 +0100)]
re PR middle-end/45838 (FAIL: libgomp.c/pr34513.c execution test)
PR middle-end/45838
* tree-ssa-alias.c (ref_maybe_used_by_call_p_1,
call_may_clobber_ref_p_1): Return true for __sync_* and some
OpenMP builtins that act as threading barriers.
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r166863
Richard Guenther [Wed, 17 Nov 2010 10:43:21 +0000 (10:43 +0000)]
re PR tree-optimization/46498 (ICE: in eliminate_unnecessary_stmts, at tree-ssa-dce.c:1112 with -O -funsafe-math-optimizations -fno-tree-dominator-opts -fno-tree-reassoc)
2010-11-16 Richard Guenther <rguenther@suse.de>
PR tree-optimization/46498
* tree-ssa-dce.c (perform_tree_ssa_dce): Compute dominator info.
From-SVN: r166861
Ira Rosen [Wed, 17 Nov 2010 10:00:27 +0000 (10:00 +0000)]
re PR tree-optimization/46312 (gcc.dg/vec-scal-opt2.c fails for ARM targets.)
PR tree-optimization/46312
* gcc.dg/vect/vect-scal-opt2.c: Rename to...
* gcc.dg/vect/vec-scal-opt2.c: ... this. Expect to pass only
on targets that support vector shifts with scalar shift
argument.
Remove dg-options.
* gcc.dg/vect/vect-scal-opt.c: Rename to...
* gcc.dg/vect/vec-scal-opt.c: ... this, and change likewise.
* gcc.dg/vect/vect-scal-opt1.c: Rename to...
* gcc.dg/vect/vec-scal-opt1.c: ... this, and change likewise.
* gcc.dg/vect/vect.exp: Run vec-scal-* tests with relevant
flags.
* gcc.dg/vect/vect-114.c: Expect to pass only on targets that
support misaligned data accesses.
* gcc.dg/vect/pr43432.c, gcc.dg/vect/vect-15.c: Likewise.
* gcc.dg/vect/pr43430-2.c: Remove dg-options.
* lib/target-supports.exp
(check_effective_target_vect_shift_scalar): New.
From-SVN: r166860
Jakub Jelinek [Wed, 17 Nov 2010 09:16:06 +0000 (10:16 +0100)]
nop.h: New file.
* gcc.dg/guality/nop.h: New file.
* gcc.dg/guality/asm-1.c: Include it and use NOP macro instead of
"nop". Adjust line numbers in gdb-test.
* gcc.dg/guality/pr43329-1.c: Likewise.
From-SVN: r166859
Nathan Froyd [Wed, 17 Nov 2010 03:18:19 +0000 (03:18 +0000)]
xtensa.c (function_arg_boundary): Really rename to...
* config/xtensa/xtensa.c (function_arg_boundary): Really rename to...
(xtensa_function_arg_boundary): ...this.
* config/picochip/pichochip.c (picochip_function_arg_boundary): Fix
thinko in declaration.
(picochip_function_arg, picochip_arg_partial_bytes): Pass proper
number of parameters to picochip_function_arg_boundary.
(picochip_arg_advance): Likewise.
From-SVN: r166853
Jason Merrill [Wed, 17 Nov 2010 01:43:19 +0000 (20:43 -0500)]
call.c (convert_like_real): Don't make a temp for copy-list-init.
* call.c (convert_like_real): Don't make a temp for copy-list-init.
(build_over_call): Don't handle that here.
(build_new_method_call): Use COMPLETE_OR_OPEN_TYPE_P for error.
From-SVN: r166852
Jason Merrill [Wed, 17 Nov 2010 01:43:10 +0000 (20:43 -0500)]
re PR c++/46497 ([C++0x] Defaulted vs declared move constructor vs is_convertible)
PR c++/46497
* call.c (build_over_call): Check for =delete even when trivial.
From-SVN: r166851
Jason Merrill [Wed, 17 Nov 2010 01:43:02 +0000 (20:43 -0500)]
DR 1004
DR 1004
* decl.c (make_unbound_class_template): Handle using
injected-type-name as template.
From-SVN: r166850
Nathan Froyd [Wed, 17 Nov 2010 01:41:13 +0000 (01:41 +0000)]
re PR target/46512 (crtstuff.c:563:1: internal compiler error: Segmentation fault)
PR target/46512
* config/pa/pa.c (pa_function_arg_boundary): Move TYPE_SIZE accesses
under check for type.
From-SVN: r166849
Ian Lance Taylor [Wed, 17 Nov 2010 01:03:06 +0000 (01:03 +0000)]
simple-object.h (simple_object_attributes_merge): Declare, replacing simple_object_attributes_compare.
include/:
* simple-object.h (simple_object_attributes_merge): Declare,
replacing simple_object_attributes_compare.
libiberty/:
* simple-object.c (simple_object_attributes_merge): Rename from
simple_object_attributes_compare. Call merge field.
* simple-object-common.h (struct simple_object_functions): Rename
attributes_compare field to attribute_merge.
* simple-object-elf.c (EM_SPARC): Define.
(EM_SPARC32PLUS): Define.
(simple_object_elf_attributes_merge): Renamed from
simple_object_elf_attributes_compare. Permit EM_SPARC and
EM_SPARC32PLUS objects to be merged.
(simple_object_elf_functions): Update function name.
* simple-object-coff.c (simple_object_coff_attributes_merge):
Rename from simple_object_coff_attributes_compare.
(simple_object_coff_functions): Update function name.
* simple-object-mach-o.c (simple_object_mach_o_attributes_merge):
Renamed from simple_object_mach_o_attributes_compare.
(simple_object_mach_o_functions): Update function name.
gcc/lto/:
* lto-object.c (lto_obj_file_open): Call
simple_object_attributes_merge rather than
simple_object_attributes_compare.
From-SVN: r166848
Nicola Pero [Wed, 17 Nov 2010 01:01:49 +0000 (01:01 +0000)]
In gcc/objc/: 2010-11-17 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-17 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (lookup_method_in_protocol_list): Search methods in
PROTOCOL_OPTIONAL_CLS_METHODS / PROTOCOL_OPTIONAL_NST_METHODS if
they are not found in PROTOCOL_CLS_METHODS / PROTOCOL_NST_METHODS.
In gcc/testsuite/:
2010-11-17 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/protocol-optional-1.m: New.
* obj-c++.dg/protocol-optional-1.mm: New.
From-SVN: r166847
GCC Administrator [Wed, 17 Nov 2010 00:18:36 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r166844
Eric Botcazou [Tue, 16 Nov 2010 23:29:15 +0000 (23:29 +0000)]
* ifcvt.c (dead_or_predicable): Fix typo.
From-SVN: r166839
Richard Henderson [Tue, 16 Nov 2010 23:24:53 +0000 (15:24 -0800)]
s390: -mfused-madd cleanup
* config.gcc [s390*-*] (extra_options): Add fused-madd.opt.
* config/s390/s390.opt (mfused-madd): Remove.
* config/s390/s390.c (s390_rtx_costs): Handle FMA.
(TARGET_DEFAULT_TARGET_FLAGS): Remove MASK_FUSED_MADD.
* config/s390/s390.md (fma<DSF>4): Rename from *fmadd<DSF>; use FMA.
(fms<DSF>4): Rename from *fmsub<DSF>; use FMA.
From-SVN: r166838
Richard Henderson [Tue, 16 Nov 2010 23:19:44 +0000 (15:19 -0800)]
rs6000: -mfused-madd cleanup
* config.gcc [powerpc*, rs6000*] (extra_options): Add fused-madd.opt.
* config/rs6000/rs6000.opt (mfused-madd): Remove.
* config/rs6000/altivec.md (altivec_vmaddfp): Remove.
(*altivec_vmaddfp_1): Remove.
(*altivec_fmav4sf4): Rename from altivec_vmaddfp_2; use FMA.
(altivec_mulv4sf3): Expand to FMA directly.
(*altivec_vnmsubfp): Rename from altivec_vnmsubfp.
(*altivec_vnmsubfp_1, *altivec_vnmsubfp_2): Remove.
* config/rs6000/paired.md (paired_madds0): Use FMA.
(paired_madds1): Likewise.
(*paired_madd): Rename from paired_madd; use FMA.
(*paired_msub, *paired_nmadd, *paired_nmsub): Similarly.
* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Do not
consider TARGET_FUSED_MADD wrt rs6000_recip_control.
(bdesc_3arg): Update CODE_FOR_* for pattern renames.
(rs6000_emit_madd): Use fma_optab.
(rs6000_emit_msub): Use fms_optab.
(rs6000_emit_nmsub): Expand the FMA pattern directly.
* config/rs6000/rs6000.md (FMA_F): New mode iterator.
(*fmasf4_fpr): Rename from fmasf4_fpr.
(*nfmasf4_fpr): Rename from *fnmasf4_fpr.
(*nfmssf4_fpr): Rename from *fnmssf4_fpr.
(*fmaddsf4_powerpc, *fmaddsf4_power, *fmsubsf4_powerpc): Remove.
(*fmsubsf4_power, *fnmaddsf4_powerpc_1, *fnmaddsf4_powerpc_2): Remove.
(*fnmaddsf4_power_1, *fnmaddsf4_power_2, *fnmsubsf4_powerpc_1): Remove.
(*fnmsubsf4_powerpc_2, *fnmsubsf4_power_1, *fnmsubsf4_power_2): Remove.
(*fmadf4_fpr): Rename from fmadf4_fpr.
(*nfmadf4_fpr): Rename from *fnmadf4_fpr.
(*nfmsdf4_fpr): Rename from *fnmsdf4_fpr.
(*fmadddf4_fpr, *fmsubdf4_fpr, *fnmadddf4_fpr_1): Remove.
(*fnmadddf4_fpr_2, *fnmsubdf4_fpr_1, *fnmsubdf4_fpr_2): Remove.
(fmasf4, fmadf4): Macroize into...
(fma<FMA_F>4): ... here.
(fms<FMA_F>4, fnma<FMA_F>4, fnms<FMA_F>4): New.
(nfma<FMA_F>4, nfms<FMA_F>4): New.
* config/rs6000/vector.md (mul<VEC_F>3): Do not depend on
TARGET_FUSED_MADD.
* config/rs6000/vsx.md (vsx_fmadd<VSX_B>4): Remove.
(*vsx_fmadd<mode>4_1): Remove.
(vsx_fmsub<mode>4, *vsx_fmsub<mode>4_1): Remove.
(vsx_fnmadd<mode>4_1, vsx_fnmadd<mode>4_2): Remove.
(vsx_fnmsub<mode>4_1, vsx_fnmsub<mode>4_2): Remove.
(*vsx_fma<mode>4): Rename from vsx_fmadd<mode>4_2.
(*vsx_fms<mode>4): Rename from vsx_fmsub<mode>4_2.
(*vsx_nfma<mode>4): Rename from vsx_fnmadd<mode>4.
(*vsx_nfms<mode>4): Rename from vsx_fnmsub<mode>4.
testsuite/
* gcc.target/powerpc/ppc-fma-2.c: Use -ffp-contract=off.
* gcc.target/powerpc/ppc-fma-4.c: Likewise.
From-SVN: r166837
Richard Henderson [Tue, 16 Nov 2010 22:56:06 +0000 (14:56 -0800)]
pa: Use the FMA rtx code.
* config/pa/pa.md (fmadf4): Rename from unnamed; use FMA.
(fmasf4, fnmadf4, fnmasf4): Likewise.
(unnamed plus+mult insns and splitters): Delete.
From-SVN: r166834
Richard Henderson [Tue, 16 Nov 2010 22:47:27 +0000 (14:47 -0800)]
spu: Use the FMA rtx code.
* config/spu/spu.md (fma<VSF>4): Rename from fma_<VSF>.
(fnma<VSF>4): Rename from fnms_<VSF>.
(fms<VSF>4): Rename from fms_<VSF>.
(fma<VDF>4): Rename from fma_<VDF>.
(fms<VDF>4): Rename from fms_<VDF>.
(nfma<VDF>4): Rename from fnma_<VDF>.
(nfms<VDF>4): Rename from fnms_<VDF>.
(fnma<VDF>4, fnms<VDF>4): New expanders.
(floatunsdisf2): Update for the renames.
(*div<VSF>3_fast, *div<VSF>3_adjusted): Likewise.
* config/spu/spu-builtins.def: Update CODE_FOR_* for the renames.
From-SVN: r166833
Eric Botcazou [Tue, 16 Nov 2010 22:30:19 +0000 (22:30 +0000)]
re PR rtl-optimization/46490 (ACATS
c460007 fails at -O2 or above)
PR rtl-optimization/46490
* combine.c (expand_compound_operation): Fix thinko.
From-SVN: r166830
Richard Henderson [Tue, 16 Nov 2010 22:22:13 +0000 (14:22 -0800)]
re PR target/46470 ("add $0x8,%rsp" no longer optimized to pop)
PR target/46470
* recog.c (peep2_attempt): Convert frame-related info when possible.
(peep2_fill_buffer): Allow frame-related insns into the buffer.
(peephole2_optimize): Allow peep2_attempt to fail.
From-SVN: r166829
Eric Botcazou [Tue, 16 Nov 2010 22:13:52 +0000 (22:13 +0000)]
re PR rtl-optimization/46315 (-O2 -fno-strict-overflow causes wrong code generation)
PR rtl-optimization/46315
* rtl.h (remove_reg_equal_equiv_notes_for_regno): Declare.
* rtlanal.c (remove_reg_equal_equiv_notes_for_regno): New function
extracted from...
* dce.c (delete_corresponding_reg_eq_notes): ...here. Rename into...
(remove_reg_equal_equiv_notes_for_defs): ...this.
(delete_unmarked_insns): Adjust to above renaming.
* ifcvt.c (dead_or_predicable): Remove REG_EQUAL and REG_EQUIV notes
referring to registers set in the insns being moved, if any.
* df-core.c (df_ref_dump): New function extracted from...
(df_refs_chain_dump): ...here. Call it.
(df_regs_chain_dump): Likewise.
* df-problems.c (df_chain_dump): Print 'e' for uses in notes.
* df-scan.c (df_scan_start_dump): Likewise. Fix long line.
From-SVN: r166827
Joern Rennecke [Tue, 16 Nov 2010 21:46:28 +0000 (21:46 +0000)]
re PR java/46386 (negative shift count in build_constants_constructor for 16 bit pointer targets)
2010-11-09 Joern Rennecke <amylaar@spamcop.net>
Andrew Haley <aph@redhat.com>
PR java/46386
gcc/java:
* constants.c (build_constants_constructor): Avoid negative shift.
gcc:
* config/pdp11/t-pdp11 (java/constants.o-warn): Remove.
* config/t-pnt16-warn (java/constants.o-warn): Likewise.
Co-Authored-By: Andrew Haley <aph@redhat.com>
From-SVN: r166826
Francois-Xavier Coudert [Tue, 16 Nov 2010 21:23:19 +0000 (21:23 +0000)]
re PR fortran/32049 (Support on x86_64 also kind=16)
/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* Makefile.def: Add libquadmath; build it with language=fortran.
* configure.ac: Add libquadmath.
* Makefile.tpl: Handle multiple libs in check-[+language+].
* Makefile.in: Regenerate.
* configure: Regenerate.
libquadmath/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
Initial implementation and checkin.
gcc/fortran/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* gfortranspec.c (find_spec_file): New function.
(lang_specific_driver): Try to find .spec file and use it.
* trans-io.c (iocall): Define
* IOCALL_X_REAL128/COMPLEX128(,write).
(gfc_build_io_library_fndecls): Build decl for __float128 I/O.
(transfer_expr): Call __float128 I/O functions.
* trans-types.c (gfc_init_kinds): Allow kind-16 belonging
to __float128.
gcc/testsuite/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* gfortran.dg/quad_1.f90: New.
* lib/gcc-defs.exp (gcc-set-multilib-library-path): Use also
compiler arguments.
* lib/gfortran.exp (gfortran_link_flags): Add libquadmath to
library search path; call gcc-set-multilib-library-path with
arguments such that libgfortran.spec is found.
(gfortran_init): Add path for libgfortran.spec to
GFORTRAN_UNDER_TEST.
libgomp/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* configure.ac:
* configure: Regenerate.
libgfortran/
2010-11-13 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR fortran/32049
* Makefile.am: Add missing pow_r16_i4.c, add transfer128.c,
link libquadmath, if used.
* acinclude.m4 (LIBGFOR_CHECK_FLOAT128): Add.
* configure.ac: Use it, touch spec file.
* gfortran.map: Add pow_r16_i4 and
transfer_(real,complex)128(,write) functions.
* intrinsics/cshift0.c (cshift0): Handle __float128 type.
* intrinsics/erfc_scaled_inc.c: Ditto.
* intrinsics/pack_generic.c (pack): Ditto
* intrinsics/spread_generic.c (spread): Ditto.
* intrinsics/unpack_generic.c (unpack1): Ditto.
* io/read.c (convert_real): Ditto.
* io/transfer.c: Update comments.
* io/transfer128.c: New file.
* io/write_float.def (write_float): Handle __float128 type.
* libgfortran.h: #include quadmath_weak.h, define __builtin_infq
and nanq.
* m4/mtype.m4: Handle __float128 type.
* runtime/in_pack_generic.c (internal_pack): Ditto.
* runtime/in_unpack_generic.c (internal_unpack): Ditto.
* kinds-override.h: New file.
* libgfortran.spec.in: Ditto.
* generated/pow_r16_i4.c: Generated.
* Makefile.in: Regenerate.
* configure: Regenerate.
* config.h: Regenerate.
* bessel_r10.c: Regenerate.
* bessel_r16.c: Regenerate.
* bessel_r4.c: Regenerate.
* bessel_r8.c: Regenerate.
* exponent_r16.c: Regenerate.
* fraction_r16.c: Regenerate.
* nearest_r16.c: Regenerate.
* norm2_r10.c: Regenerate.
* norm2_r16.c: Regenerate.
* norm2_r4.c: Regenerate.
* norm2_r8.c: Regenerate.
* rrspacing_r16.c: Regenerate.
* set_exponent_r16.c: Regenerate.
* spacing_r16.c: Regenerate.
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r166825
Jakub Jelinek [Tue, 16 Nov 2010 20:49:57 +0000 (21:49 +0100)]
re PR c++/46401 (very slow compile time with -Wsequence-point)
PR c++/46401
* c-common.c (warning_candidate_p): Don't track non-const calls
or STRING_CSTs.
* g++.dg/warn/Wsequence-point-3.C: New test.
From-SVN: r166823
Andreas Schwab [Tue, 16 Nov 2010 20:17:31 +0000 (20:17 +0000)]
re PR rtl-optimization/46395 (FAIL: 22_locale/numpunct/members/pod/2.cc execution test)
PR rtl-optimization/46395
* gcc/postreload.c (reload_combine): Invalidate register use
information on all control flow insns.
From-SVN: r166820
Kai Tietz [Tue, 16 Nov 2010 19:50:17 +0000 (19:50 +0000)]
re PR preprocessor/17349 (// comments cause weird behaviour with options -E -C)
2010-11-16 Kai Tietz <kai.tietz@onevision.com>
PR preprocessor/17349
* lex.c (save_comment): Handle in argument passing c++
comments special.
2010-11-16 Kai Tietz <kai.tietz@onevision.com>
PR preprocessor/17349
* gcc.dg/cpp/cmdlne-C3.c: New.
From-SVN: r166817
Andreas Schwab [Tue, 16 Nov 2010 19:45:55 +0000 (19:45 +0000)]
m68k.c (m68k_delegitimize_address): Also expect LABEL_REF in UNSPEC operand.
* gcc/config/m68k/m68k.c (m68k_delegitimize_address): Also expect
LABEL_REF in UNSPEC operand.
From-SVN: r166816
Jan Hubicka [Tue, 16 Nov 2010 18:15:17 +0000 (19:15 +0100)]
cgraph.h (+varpool_can_remove_if_no_refs): Move here from ......
* cgraph.h (+varpool_can_remove_if_no_refs): Move here from ...;
when !flag_toplevel_reorder do not remove unless variable is
COMDAT or ARTIFICIAL.
* ipa.c (varpool_can_remove_if_no_refs): ... here.
(cgraph_remove_unreachable_nodes): Only analyzed nodes needs to stay.
* cgraphunit.c (cgraph_analyze_functions): Dump varpool, too.
* varpool.c (decide_is_variable_needed): Do not handle visibility issues.
(varpool_finalize_decl): Likewise.
(varpool_remove_unreferenced_decls): Use varpool_mark_needed_node; update
outdated comment on DECL_RTL_SET_P check.
From-SVN: r166812
Rainer Orth [Tue, 16 Nov 2010 18:04:40 +0000 (18:04 +0000)]
sol2.h (NM_FLAGS): Define.
* config/sol2.h (NM_FLAGS): Define.
* doc/tm.texi.in (Macros for Initialization, NM_FLAGS): Document.
* doc/tm.texi: Update.
From-SVN: r166811
H.J. Lu [Tue, 16 Nov 2010 17:56:50 +0000 (17:56 +0000)]
Properly demangle a global constructor symbol.
2010-11-16 H.J. Lu <hongjiu.lu@intel.com>
PR other/42670
PR binutils/11137
* cp-demangle.c (d_make_demangle_mangled_name): New.
(d_demangle_callback): Use it on DCT_GLOBAL_XTORS.
* testsuite/demangle-expected: Updated.
From-SVN: r166810
Tom Tromey [Tue, 16 Nov 2010 17:37:04 +0000 (17:37 +0000)]
* MAINTAINERS: Moved myself to reviewers section.
From-SVN: r166809
Nick Clifton [Tue, 16 Nov 2010 16:51:14 +0000 (16:51 +0000)]
v850.md (maddsf4): Rename to fmasf4 and use fma rtx_code.
* config/v850/v850.md (maddsf4): Rename to fmasf4 and use fma
rtx_code.
(msubsf4): Rename to fmssf4, and use fma.
(nmaddsf4): Rename to fnmasf4 and use fma.
(nmsubsf4): Rename to fnmssf4 and use fma.
From-SVN: r166808
Joern Rennecke [Tue, 16 Nov 2010 16:12:14 +0000 (16:12 +0000)]
re PR target/44762 (score/predicates.md warnings)
PR target/44762
* config/score/score3.c (score3_return_in_memory): Constify arguments.
(score3_in_small_data_p, score3_function_value): Likewise.
(score3_trampoline_init): Use LCT_NORMAL.
(score3_print_operand): Initialize code as UNKNOWN.
* config/score/predicates.md (score_load_multiple_operation):
Remove unused variable.
(score_store_multiple_operation): Likewise.
* config/score/score7.c (score7_return_in_memory): Constify arguments.
(score7_in_small_data_p, score7_function_value): Likewise.
(score7_trampoline_init): Use LCT_NORMAL.
(score7_print_operand): Initialize code as UNKNOWN.
* config/score/score3.h (score3_return_in_memory): Update prototype.
(score3_in_small_data_p, score3_function_value): Likewise.
* config/score/score-protos.h (score_function_value): Likewise.
* config/score/score7.h (score7_return_in_memory): Update prototype.
(score7_in_small_data_p, score7_function_value): Likewise.
* config/score/score.c (TARGET_PROMOTE_PROTOTYPES): Constify.
(score_return_in_memory, score_pass_by_reference): Constify arguments.
(score_output_mi_thunk, score_function_prologue): Don't return a value.
(score_function_epilogue, score_in_small_data_p): Likewise.
(score_option_override, score_asm_trampoline_template): Likewise.
(score_trampoline_init, score_print_operand): Likewise.
(score_print_operand_address, score_prologue): Likewise.
(score_epilogue, score_call, score_call_value): Likewise.
(score_movsicc, score_movdi, score_zero_extract_andi): Likewise.
(score_function_arg_advance): Likewise. Make static.
(score_asm_file_end): Mark parameter value with ATTRIBUTE_UNUSED.
(score_function_arg, score_legitimate_address_p): Make static.
(score_function_value): Mark parameter func with ATTRIBUTE_UNUSED.
* config/score/score.h (REGNO_REG_CLASS): Cast value to enum reg_class.
* config/score/score-conv.h (UIMM_IN_RANGE, SIMM_IN_RANGE):
Allow (W) == HOST_BITS_PER_WIDE_INT.
From-SVN: r166807
Nathan Froyd [Tue, 16 Nov 2010 15:48:28 +0000 (15:48 +0000)]
arc.c: Delete pasto.
* config/arc/arc.c: Delete pasto.
* config/pa/pa.c (pa_function_arg_boundary): Add missing comparison.
From-SVN: r166806
Anatoly Sokolov [Tue, 16 Nov 2010 15:47:31 +0000 (18:47 +0300)]
mn10300.h (PREFERRED_RELOAD_CLASS, [...]): Remove.
* config/mn10300/mn10300.h (PREFERRED_RELOAD_CLASS,
PREFERRED_OUTPUT_RELOAD_CLASS): Remove.
* config/mn10300/mn10300.c (TARGET_PREFERRED_RELOAD_CLASS,
TARGET_PREFERRED_OUTPUT_RELOAD_CLASS): Define.
(mn10300_preferred_reload_class,
mn10300_preferred_output_reload_class): New functions.
From-SVN: r166805
Andreas Krebbel [Tue, 16 Nov 2010 15:33:53 +0000 (15:33 +0000)]
gensupport.c (MNEMONIC_ATTR_NAME, [...]): New macros.
2010-11-16 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
* gensupport.c (MNEMONIC_ATTR_NAME, MNEMONIC_HTAB_SIZE): New
macros.
(htab_eq_string, add_mnemonic_string, gen_mnemonic_setattr)
(mnemonic_htab_callback, gen_mnemonic_attr): New functions.
(init_rtx_reader_args_cb): Invoke gen_mnemonic_attr.
From-SVN: r166804
Nathan Froyd [Tue, 16 Nov 2010 14:25:07 +0000 (14:25 +0000)]
builtins.c (std_gimplify_va_arg_expr): Use targetm.calls.function_arg_boundary.
* builtins.c (std_gimplify_va_arg_expr): Use
targetm.calls.function_arg_boundary.
* function.c (assign_parms, locate_and_pad_parm): Likewise.
* calls.c (struct arg_data): Update comment.
* defaults.h (FUNCTION_ARG_BOUNDARY): Delete.
* target.def (function_arg_boundary): Define.
* targhooks.h (default_function_arg_boundary): Declare.
* targhooks.c (default_function_arg_boundary): Define.
* doc/tm.texi.in (FUNCTION_ARG_PADDING): Use
TARGET_FUNCTION_ARG_BOUNDARY.
(FUNCTION_ARG_BOUNDARY): Delete.
(TARGET_FUNCTION_ARG_BOUNDARY): New.
* doc/tm.texi: Regenerate.
* system.h (FUNCTION_ARG_BOUNDARY): Poison.
* config/arc/arc.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/arc/arc.c (arc_function_arg_boundary): Define.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/arm/arm.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/arm/arm-protos.h (arm_needs_doubleword_align): Delete.
* config/arm/arm.c (arm_needs_doubleword_align): Make static.
(arm_function_arg_boundary): Define.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/frv/frv.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/frv/frv-protos.h (frv_function_arg_boundary): Delete.
* config/frv/frv.c (frv_function_arg_boundary): Make static.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/i386/i386.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/i386/i386-protos.h (ix86_function_arg_boundary): Delete.
* config/i386/i386.c (ix86_function_arg_boundary): Make static.
(ix86_compat_function_arg_boundary): Take and return unsigned int.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/ia64/ia64.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/ia64/ia64-protos.h (ia64_function_arg_boundary): Delete.
* config/ia64/ia64.c (ia64_function_arg_boundary): Make static.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/m32c/m32c.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/m32c/m32c.c (m32c_function_arg_boundary): Define.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/m32r/m32r.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/mcore/mcore.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/mcore/mcore.c (mcore_function_arg_boundary): Define.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/mips/mips.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/mips/mips-protos.h (mips_function_arg_boundary): Delete.
* config/mips/mips.c (mips_function_arg_boundary): Make static.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/pa/pa.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/pa/pa.c (pa_function_arg_boundary): Define.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/picochip/picochip.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/picochip/picochip-protos.h
(picochip_get_function_arg_boundary): Delete.
* config/picochip/picochip.c (picochip_get_function_arg_boundary):
Rename to...
(picochip_function_arg_boundary): ...this. Make static.
(picochip_function_arg, picochip_arg_partial_bytes): Adjust.
(picochip_arg_advance): Adjust.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/rs6000/rs6000.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/rs6000/rs6000-protos.h (function_arg_boundary): Delete.
* config/rs6000/rs6000.c (function_arg_boundary): Rename to...
(rs6000_function_arg_boundary): ...this. Make static.
(rs6000_parm_start, rs6000_gimplify_va_arg): Adjust.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/rx/rx.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/rx/rx.c (rx_function_arg_boundary): Define.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/sparc/sparc.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/sparc/sparc.c (sparc_function_arg_boundary): Define.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
* config/xtensa/xtensa.h (FUNCTION_ARG_BOUNDARY): Delete.
* config/xtensa/xtensa-protos.h (function_arg_boundary): Delete.
* config/xtensa/xtensa.c (function_arg_boundary): Rename to...
(xtensa_function_arg_boundary): ...this. Make static.
(TARGET_FUNCTION_ARG_BOUNDARY): Define.
From-SVN: r166803
Nathan Froyd [Tue, 16 Nov 2010 14:19:43 +0000 (14:19 +0000)]
expr.c (alignment_for_piecewise_move): New function.
* expr.c (alignment_for_piecewise_move): New function.
(widest_int_mode_for_size): New function.
(move_by_pieces, move_by_pieces_ninsns): Call them.
(can_store_by_pieces, store_by_pieces_1): Likewise.
From-SVN: r166802
Nathan Froyd [Tue, 16 Nov 2010 14:18:02 +0000 (14:18 +0000)]
gcc.c (char_p): Define.
* gcc.c (char_p): Define. Define a VEC of it.
(n_linker_options, n_assembler_options, n_preprocessor_options):
Delete.
(linker_options, assembler_options, preprocessor_options): Convert
to a VEC.
(add_preprocessor_option): Adjust.
(add_assembler_option): Adjust.
(add_linker_option): Adjust.
(do_specs_vec): New function.
(do_spec_1): Call it. Adjust for new types.
From-SVN: r166801
Nathan Froyd [Tue, 16 Nov 2010 14:16:30 +0000 (14:16 +0000)]
Makefile.in (bitmap.o, [...]): Update dependencies.
* Makefile.in (bitmap.o, ebitmap.o, et-forest.o): Update
dependencies.
(sreal.o, statistics.o, stringpool.o): Likewise.
From-SVN: r166800
Richard Guenther [Tue, 16 Nov 2010 14:15:55 +0000 (14:15 +0000)]
re PR tree-optimization/44545 (internal compiler error: in remove_unreachable_handlers, at tree-eh)
2010-11-16 Richard Guenther <rguenther@suse.de>
PR tree-optimization/44545
* tree-ssa-reassoc.c (linearize_expr_tree): Possibly throwing
statements are not reassociatable.
(reassociate_bb): Likewise.
* gcc.dg/pr44545.c: New testcase.
From-SVN: r166799
Andrey Belevantsev [Tue, 16 Nov 2010 14:11:39 +0000 (17:11 +0300)]
re PR rtl-optimization/46366 (gcc.target/i386/pr45352-2.c failed)
PR rtl-optimization/46366
* gcc.target/i386/pr45352-2.c: Silence warnings by using appropriate
casts.
From-SVN: r166798
Nathan Froyd [Tue, 16 Nov 2010 13:57:21 +0000 (13:57 +0000)]
bitmap.c: Delete unnecessary includes.
* bitmap.c: Delete unnecessary includes.
* ebitmap.c: Likewise.
* et-forest.c: Likewise.
* sreal.c: Likewise.
* statistics.c: Likewise.
* stringpool.c: Likewise.
* double-int.c: Add comment for inclusion of tm.h.
From-SVN: r166797
Richard Guenther [Tue, 16 Nov 2010 12:57:34 +0000 (12:57 +0000)]
tree-ssa-sccvn.c (visit_unary_op): Rename to ...
2010-11-16 Richard Guenther <rguenther@suse.de>
* tree-ssa-sccvn.c (visit_unary_op): Rename to ...
(visit_nary_op): ... this.
(visit_binary_op): Remove.
(visit_use): Adjust and handle GIMPLE_TERNARY_RHS.
* gcc.dg/tree-ssa/ssa-fre-30.c: New testcase.
From-SVN: r166795
Richard Guenther [Tue, 16 Nov 2010 11:42:50 +0000 (11:42 +0000)]
re PR middle-end/45172 (internal compiler error: verify_flow_info failed)
2010-11-16 Richard Guenther <rguenther@suse.de>
PR middle-end/45172
* tree-eh.c (cleanup_empty_eh_unsplit): Avoid creating duplicate
edges.
* gfortran.dg/gomp/pr45172.f90: New testcase.
From-SVN: r166794
Nick Clifton [Tue, 16 Nov 2010 09:40:02 +0000 (09:40 +0000)]
rx.c (rx_is_ms_bitfield_layout): Return false if the record is packed.
* config/rx/rx.c (rx_is_ms_bitfield_layout): Return false if the
record is packed.
* gcc.target/rx/pack.c: New test.
From-SVN: r166793
Richard Henderson [Tue, 16 Nov 2010 03:45:36 +0000 (19:45 -0800)]
fold-const.c (operand_equal_for_comparison_p): Handle FMA_EXPR...
* fold-const.c (operand_equal_for_comparison_p): Handle FMA_EXPR,
WIDEN_MULT_PLUS_EXPR, WIDEN_MULT_MINUS_EXPR, VEC_COND_EXPR,
DOT_PROD_EXPR.
From-SVN: r166792
Richard Henderson [Tue, 16 Nov 2010 03:43:22 +0000 (19:43 -0800)]
builtin-math-2.c: Split out fma tests...
* gcc.dg/torture/builtin-math-2.c: Split out fma tests...
* gcc.dg/torture/builtin-math-8.c: ... here. New file.
Use builtin_constant_p rather than scanning for builtin name.
From-SVN: r166791
Richard Henderson [Tue, 16 Nov 2010 01:32:56 +0000 (17:32 -0800)]
mn10300.md (fmasf4, [...]): Rename from fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4 respectively.
* config/mn10300/mn10300.md (fmasf4, fmssf4, fnmasf4, fnmssf4): Rename
from fmaddsf4, fmsubsf4, fnmaddsf4, fnmsubsf4 respectively. Use
fma rtx_code.
From-SVN: r166790
Richard Henderson [Tue, 16 Nov 2010 01:30:38 +0000 (17:30 -0800)]
frv.md (fmasf4, fmssf4): Rename from *muladdsf4 and *mulsubsf4 respectively.
* config/frv/frv.md (fmasf4, fmssf4): Rename from *muladdsf4
and *mulsubsf4 respectively. Use fma rtx_code.
From-SVN: r166789
Joseph Myers [Tue, 16 Nov 2010 01:01:57 +0000 (01:01 +0000)]
gcc.c: Include "vec.h".
* gcc.c: Include "vec.h".
(argbuf): Make into a VEC.
(argbuf_length, argbuf_index): Remove.
(alloc_args, clear_args, store_arg, execute, insert_wrapper,
do_spec, do_self_spec, do_spec_1, eval_spec_function, main,
compare_debug_dump_opt_spec_function: Use VEC interfaces on
argbuf.
* Makefile.in (GCC_OBJS): Add vec.o and ggc-none.o.
(gcc.o): Depend on $(VEC_H).
From-SVN: r166788
GCC Administrator [Tue, 16 Nov 2010 00:18:35 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r166786
Richard Henderson [Mon, 15 Nov 2010 23:20:13 +0000 (15:20 -0800)]
loop-unroll.c (analyze_insn_to_expand_var): Accept
* loop-unroll.c (analyze_insn_to_expand_var): Accept
* accumulation
via FMA if unsafe math.
(insert_var_expansion_initialization): Handle FMA.
(combine_var_copies_in_loop_exit): Likewise.
From-SVN: r166781
Richard Henderson [Mon, 15 Nov 2010 23:16:48 +0000 (15:16 -0800)]
ia64: -mfused-madd cleanup
* config.gcc [ia64-*] (extra_options): Add fused-madd.opt.
* config/ia64/ia64.opt: Remove mfused-madd.
* config/ia64/ia64.c (ia64_rtx_costs): Handle FP MULT, PLUS, FMA.
* config/ia64/vms.h (TARGET_DEFAULT): Remove MASK_FUSED_MADD.
* config/ia64/vms64.h (TARGET_DEFAULT): Likewise.
* config/ia64/ia64.h (TARGET_DEFAULT): Likewise.
* config/ia64/hpux.h (TARGET_DEFAULT): Likewise.
* config/ia64/vect.md (addv2sf3, subv2sf3): Generate FMA.
(*addv2sf3_1, *addv2sf3_2, *subv2sf3_1, *subv2sf3_2): Remove.
(fmav2sf4): Rename from fpma; use FMA code.
(fmsv2sf4): Rename from fpms; use FMA code.
(fnmav2sf4): Rename from *fpnma; use FMA code.
* config/ia64/ia64.md (MODE_SDF): New iterator.
(suffix): New mode attribute.
(*maddsf4, *msubsf4, *nmaddsf4): Remove.
(fmssf4): Rename from *fmssf4.
(fnmasf4): Rename from *nfmasf4.
(*madddf4, *madddf4_trunc, *msubdf4, *msubdf4_trunc): Remove.
(*nmadddf4, *nmadddf4_truncsf): Remove.
(fmsdf4): Rename from *fmsdf4.
(fnmadf4): Rename from *nfmadf4.
(*fmadf_trunc_sf, *fmsdf_trunc_sf, *fnmadf_trunc_sf): New.
(*maddxf4, *maddxf4_truncsf, *maddxf4_truncdf): Remove.
(*msubxf4, *msubxf4_truncsf, *msubxf4_truncdf): Remove.
(*nmaddxf4, *nmaddxf4_truncsf, *nmaddxf4_truncdf): Remove.
(fmsxf4): Rename from *fmsxf4.
(fnmaxf4): Rename from *nfmaxf4.
(*fmaxf_trunc_<MODE_SDF>, *fmsxf_trunc_<MODE_SDF>): New.
(*fnmaxf_trunc_<MODE_SDF>): New.
From-SVN: r166780
Nicola Pero [Mon, 15 Nov 2010 23:12:49 +0000 (23:12 +0000)]
In gcc/objc/: 2010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
* objc-act.c (objc_build_setter_call): New.
(objc_maybe_build_modify_expr): Rewritten to build a compound
statement.
(objc_build_incr_expr_for_property_ref): Updated calls to
objc_maybe_build_modify_expr to call objc_build_setter_call
instead. Use build_modify_expr () instead of build2 (MODIFY_EXPR,
...). Use convert () instead of build1 (NOP_EXPR, ...). Use
TREE_NO_WARNING on the final compound statement to silence C++
warnings.
In gcc/testsuite/:
2010-11-15 Nicola Pero <nicola.pero@meta-innovation.com>
* objc.dg/property/dotsyntax-18.m: New.
* objc.dg/property/dotsyntax-19.m: New.
* objc.dg/property/dotsyntax-20.m: New.
* obj-c++.dg/property/dotsyntax-18.mm: New.
* obj-c++.dg/property/dotsyntax-19.mm: New.
* obj-c++.dg/property/dotsyntax-20.mm: New.
* objc.dg/property/dotsyntax-4.m: Removed some unused variables and code.
* objc.dg/property/dotsyntax-6.m: Same change.
* objc.dg/property/dotsyntax-16.m: Same change.
* objc.dg/property/dotsyntax-17.m: Same change.
* obj-c++.dg/property/dotsyntax-4.mm: Same change.
* obj-c++.dg/property/dotsyntax-6.mm: Same change.
* obj-c++.dg/property/dotsyntax-16.mm: Same change.
* obj-c++.dg/property/dotsyntax-17.mm: Same change.
* objc.dg/property/at-property-22.m: Added missing casts.
* obj-c++.dg/property/at-property-22.mm: Same change.
From-SVN: r166779
Jakub Jelinek [Mon, 15 Nov 2010 22:31:47 +0000 (23:31 +0100)]
re PR tree-optimization/46491 (ipa-pure-const.c miscompilation)
PR tree-optimization/46491
* gcc.target/i386/pr46491.c: New test.
From-SVN: r166777
Jakub Jelinek [Mon, 15 Nov 2010 22:30:15 +0000 (23:30 +0100)]
re PR tree-optimization/46461 (ICE: invalid argument to gimple call at -O with __builtin_memset())
PR tree-optimization/46461
* tree-ssa-forwprop.c (simplify_builtin_call): Ensure ptr1 is
a gimple val.
* gcc.c-torture/compile/pr46461.c: New test.
From-SVN: r166776