Commit Graph

104749 Commits

Author SHA1 Message Date
Richard Guenther
1d85701e5c 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
2010-11-18 13:10:40 +00:00
Richard Guenther
e36b937416 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
2010-11-18 11:19:20 +00:00
Paolo Carlini
67c495be79 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
2010-11-18 11:03:14 +00:00
Alexander Monakov
f3764768fa 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
2010-11-18 13:24:31 +03:00
Joakim Tjernlund
df0aaa66d9 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
2010-11-18 08:32:58 +00:00
Ian Lance Taylor
0e1a989c9c 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
2010-11-18 07:35:34 +00:00
Nicola Pero
49a35931ee 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
2010-11-18 02:11:33 +00:00
GCC Administrator
af9fe0ec84 Daily bump.
From-SVN: r166894
2010-11-18 00:18:22 +00:00
Quentin Neill
d159880364 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
2010-11-18 00:10:35 +00:00
Steve Ellcey
d1b2ae0d9c 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
2010-11-17 22:55:01 +00:00
Dinar Temirbulatov
86f27ba678 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
2010-11-17 22:54:05 +00:00
François Dumont
3a3a1e7484 testsuite/lib/libstdc++.exp (check_v3_target_debug_mode): Clean built exe.
From-SVN: r166881
2010-11-17 21:33:50 +00:00
Jan Hubicka
fc48e63f52 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
2010-11-17 21:11:24 +00:00
Eric Botcazou
7ad93142a8 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
2010-11-17 21:10:19 +00:00
Uros Bizjak
a6759a8a0b 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
2010-11-17 21:35:46 +01:00
Paolo Bonzini
f725e72170 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
2010-11-17 18:17:17 +00:00
Richard Guenther
0197bf54a1 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
2010-11-17 15:56:41 +00:00
Richard Guenther
3c760b86e1 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
2010-11-17 15:47:17 +00:00
Michael Matz
a222c01a3c 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
2010-11-17 15:18:08 +00:00
Joseph Myers
b37421c62a 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
2010-11-17 14:31:07 +00:00
Jakub Jelinek
073d7052e5 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
2010-11-17 14:02:31 +01:00
Joseph Myers
f79616a446 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
2010-11-17 12:21:39 +00:00
Jakub Jelinek
b57849d419 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
2010-11-17 13:05:24 +01:00
Eric Botcazou
5a19bc0a79 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
2010-11-17 12:00:15 +00:00
Jakub Jelinek
d0f305b11a 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
2010-11-17 12:15:55 +01:00
Richard Guenther
5ac60b564f 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
2010-11-17 10:43:21 +00:00
Ira Rosen
d92826beb4 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
2010-11-17 10:00:27 +00:00
Jakub Jelinek
a677307de8 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
2010-11-17 10:16:06 +01:00
Nathan Froyd
84ec98d2eb 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
2010-11-17 03:18:19 +00:00
Jason Merrill
be5e69085c 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
2010-11-16 20:43:19 -05:00
Jason Merrill
66753821b5 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
2010-11-16 20:43:10 -05:00
Jason Merrill
bf4c0738c0 DR 1004
DR 1004
	* decl.c (make_unbound_class_template): Handle using
	injected-type-name as template.

From-SVN: r166850
2010-11-16 20:43:02 -05:00
Nathan Froyd
b58a864da3 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
2010-11-17 01:41:13 +00:00
Ian Lance Taylor
d82f74d3ab 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
2010-11-17 01:03:06 +00:00
Nicola Pero
354d8ce108 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
2010-11-17 01:01:49 +00:00
GCC Administrator
109a508a0a Daily bump.
From-SVN: r166844
2010-11-17 00:18:36 +00:00
Eric Botcazou
a5e2cc0b54 * ifcvt.c (dead_or_predicable): Fix typo.
From-SVN: r166839
2010-11-16 23:29:15 +00:00
Richard Henderson
d7ecb504b9 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
2010-11-16 15:24:53 -08:00
Richard Henderson
d6613781a5 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
2010-11-16 15:19:44 -08:00
Richard Henderson
f9669294e1 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
2010-11-16 14:56:06 -08:00
Richard Henderson
23c819b54d 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
2010-11-16 14:47:27 -08:00
Eric Botcazou
a05c8f2351 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
2010-11-16 22:30:19 +00:00
Richard Henderson
cfc76ec4d0 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
2010-11-16 14:22:13 -08:00
Eric Botcazou
885c9b5d3a 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
2010-11-16 22:13:52 +00:00
Joern Rennecke
2b12962772 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
2010-11-16 21:46:28 +00:00
Francois-Xavier Coudert
1ec601bf9f 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
2010-11-16 22:23:19 +01:00
Jakub Jelinek
07078664fd 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
2010-11-16 21:49:57 +01:00
Andreas Schwab
18c33e032d 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
2010-11-16 20:17:31 +00:00
Kai Tietz
651a20b54b 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
2010-11-16 20:50:17 +01:00
Andreas Schwab
92cf739996 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
2010-11-16 19:45:55 +00:00