Commit Graph

106171 Commits

Author SHA1 Message Date
Richard Guenther
3bc27de7f1 re PR tree-optimization/47365 (wrong code with -O -ftree-pre)
2011-01-21  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/47365
	* tree-ssa-sccvn.h (vn_lookup_kind): Declare.
	(vn_reference_lookup_pieces): Adjust.
	(vn_reference_lookup): Likewise.
	* tree-ssa-sccvn.c (vn_walk_kind): New static global.
	(vn_reference_lookup_3): Only look through kills if in
	VN_WALKREWRITE mode.
	(vn_reference_lookup_pieces): Adjust.
	(vn_reference_lookup): Likewise.
	(visit_reference_op_load): Likewise.
	(visit_reference_op_store): Likewise.
	* tree-ssa-pre.c (phi_translate_1): Use VN_WALK mode.
	(compute_avail): Likewise.
	(eliminate): Likewise.

	* gcc.dg/torture/pr47365.c: New testcase.
	* gcc.dg/tree-ssa/pr47392.c: Likewise.

From-SVN: r169089
2011-01-21 14:02:41 +00:00
Andreas Schwab
33e39b6685 configure.ac: Use AS_HELP_STRING throughout.
* configure.ac: Use AS_HELP_STRING throughout.
* configure: Regenerate.

From-SVN: r169088
2011-01-21 13:18:23 +00:00
Rainer Orth
5a8ab623a9 * g++.dg/other/anon5.C: Skip on mips-sgi-irix*.
From-SVN: r169085
2011-01-21 13:02:39 +00:00
Jakub Jelinek
3a2df83199 re PR tree-optimization/47391 (read from const volatile incorrectly eliminated)
PR tree-optimization/47391
	* varpool.c (const_value_known_p): Return false if
	decl is volatile.

	* gcc.dg/pr47391.c: New test.

From-SVN: r169084
2011-01-21 13:57:52 +01:00
Jakub Jelinek
d8debb1d8a tree-ssa-live.c (remove_unused_scope_block_p): Don't remove DECL_IGNORED_P non-reg vars if they are used.
* tree-ssa-live.c (remove_unused_scope_block_p): Don't remove
	DECL_IGNORED_P non-reg vars if they are used.

From-SVN: r169083
2011-01-21 13:51:18 +01:00
Rainer Orth
f316861a04 * g++.dg/template/char1.C: Use signed char.
From-SVN: r169082
2011-01-21 11:36:53 +00:00
Kai Tietz
1dd584a2d7 re PR bootstrap/47215 (Failed to bootstrap)
2011-01-21  Kai Tietz  <kai.tietz@onevision.com>

        PR bootstrap/47215
        * decl.c (java_init_decl_processing): Remove
        va_list_type_node related type initializations.

2011-01-21  Kai Tietz  <kai.tietz@onevision.com>

	PR bootstrap/47215
	* config/i386/i386.c (ix86_local_alignment): Handle
	case for va_list_type_node is nil.
	(ix86_canonical_va_list_type): Likewise.

From-SVN: r169080
2011-01-21 10:05:14 +01:00
Tobias Burnus
7f1f7ffb49 re PR fortran/47377 (internal compiler error: in fold_convert_loc, at fold-const.c:1906)
2011-01-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47377
        * expr.c (gfc_check_pointer_assign): Reject expr data-targets
        without pointer attribute.

2011-01-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/47377
        * gfortran.dg/pointer_target_4.f90: New.

From-SVN: r169079
2011-01-21 08:11:05 +01:00
Mike Stump
4312bb184c Fix typo in comment.
From-SVN: r169078
2011-01-21 05:03:44 +00:00
Alan Modra
7f9f095e3a rs6000-c.c (rs6000_cpu_cpp_builtins): Add builtin_define __CMODEL_MEDIUM__ and __CMODEL_LARGE__.
* config/rs6000/rs6000-c.c (rs6000_cpu_cpp_builtins): Add
	builtin_define __CMODEL_MEDIUM__ and __CMODEL_LARGE__.

From-SVN: r169077
2011-01-21 12:43:52 +10:30
GCC Administrator
437aabed9c Daily bump.
From-SVN: r169076
2011-01-21 00:18:42 +00:00
Benjamin Kosnik
bddd662631 re PR libstdc++/36104 (gnu-versioned-namespace is broken)
2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/36104
	* acinclude.m4 (LIBGOMP_ENABLE_SYMVERS): Accept gnu variants.

From-SVN: r169072
2011-01-20 23:41:24 +00:00
Ramana Radhakrishnan
837b01f66f Rename f_load to f_fpa_loads patch
2011-01-20  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

	* config/arm/arm.md (define_attr type): Rename f_load
	and f_store to f_fpa_load and f_fpa_store. Update.
	(write_conflict): Deal with rename fallout.
	(*push_fp_multi): Likewise.
	* config/arm/fpa.md (f_load): Use f_fpa_load.
	(f_store): Use f_fpa_store.
	(*movsf_fpa): Likewise.
	(*movdf_fpa): Likewise.
	(*movxf_fpa): Likewise.
	(*thumb2_movsf_fpa): Likewise.
	(*thumb2_movdf_fpa): Likewise.
	(*thumb2_movxf_fpa): Likewise.
	* config/arm/vfp.md (*thumb2_movdf_vfp): Fix attribute to
	f_loadd and f_stored.
	(*thumb2_movdi_vfp): Likewise.
	(*thumb2_movsf_vfp): Fix attribute to f_loads.
	(*thumb2_movsi_vfp): Likewise.
	* config/arm/cortex-m4-fpu.md (cortex_m4_f_load):
	Use f_loads instead of f_load.
	* config/arm/cortex-a5.md (cortex_a5_f_loads): Remove f_load.

From-SVN: r169071
2011-01-20 22:03:29 +00:00
Michael Meissner
aaab40fa2a Refix test for PR47251
From-SVN: r169067
2011-01-20 21:19:30 +00:00
Jonathan Wakely
f22ee6896d re PR libstdc++/47380 (concept checking and incomplete types)
2011-01-20  Jonathan Wakely  <jwakely.gcc@gmail.com>

        PR libstdc++/47380
	* doc/xml/manual/diagnostics.xml: Replace note about C++0x concepts.

From-SVN: r169064
2011-01-20 20:18:29 +00:00
Benjamin Kosnik
9b690d8cc3 PR libstdc++/36104 part three
2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/36104 part three
	* src/hashtable_c++0x.cc: Adjust namespace macros.
	* testsuite/util/testsuite_rvalref.h: Don't forward declare hash.
	* config/abi/pre/gnu-versioned-namespace.ver: Update.

From-SVN: r169063
2011-01-20 20:04:25 +00:00
Benjamin Kosnik
191e7a3000 hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
2011-01-20  Benjamin Kosnik  <bkoz@redhat.com>

	* include/ext/pb_ds/detail/resize_policy/
	hash_load_check_resize_trigger_imp.hpp: Adjust assert condition.
	* include/ext/pb_ds/detail/pat_trie_/
	constructors_destructor_fn_imps.hpp: Same.
	* include/ext/pb_ds/detail/binary_heap_/erase_fn_imps.hpp: Format.
	* include/ext/pb_ds/detail/ov_tree_map_/debug_fn_imps.hpp: Same.
	* include/ext/pb_ds/detail/debug_map_base.hpp: Use never_adjustor.

	* testsuite/ext/pb_ds/regression/hash_data_map_rand.cc: Adjust
	iterations downward when testing in debug mode.
	* testsuite/ext/pb_ds/regression/trie_data_map_rand.cc: Same.
	* testsuite/ext/pb_ds/regression/tree_no_data_map_rand.cc: Same.
	* testsuite/ext/pb_ds/regression/hash_no_data_map_rand.cc: Same.
	* testsuite/ext/pb_ds/regression/tree_data_map_rand.cc: Same.
	* testsuite/ext/pb_ds/regression/trie_no_data_map_rand.cc: Same.
	* testsuite/ext/pb_ds/example/hash_illegal_resize.cc: Use SIZE,
	reduce in debug mode.

From-SVN: r169061
2011-01-20 18:26:33 +00:00
Anatoly Sokolov
a1a7976864 xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
* config/xtensa/xtensa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Remove.
	* config/xtensa/xtensa-protos.h (constantpool_address_p): Remove.
	* config/xtensa/xtensa.c (TARGET_MODE_DEPENDENT_ADDRESS_P): Define.
	(xtensa_mode_dependent_address_p): New function.
	(constantpool_address_p): Make static. Change return type to bool.
	Change argument type to const_rtx. Use CONST_INT_P predicate.

From-SVN: r169060
2011-01-20 20:37:13 +03:00
Alexandre Oliva
427f6cec9c re PR tree-optimization/46583 (-fcompare-debug failure with -O -fno-inline -fipa-cp -fipa-cp-clone)
gcc/ChangeLog:
PR debug/46583
* tree-ssa-live.c (remove_unused_scope_block_p): Keep type decls.
gcc/testsuite/ChangeLog:
PR debug/46583
* g++.dg/debug/pr46583.C: New.

From-SVN: r169058
2011-01-20 16:56:25 +00:00
Jakub Jelinek
583ac69ceb re PR debug/47283 (ICE in refs_may_alias_p_1, at tree-ssa-alias.c)
PR debug/47283
	* cfgexpand.c (expand_debug_expr): Instead of generating
	(mem (debug_implicit_ptr)) for MEM_REFs use COMPONENT_REF
	etc. handling.

	* g++.dg/debug/pr47283.C: New test.

From-SVN: r169057
2011-01-20 17:40:36 +01:00
Jakub Jelinek
55429b8eb7 re PR testsuite/47371 (FAIL: gcc.target/i386/headmerge-[12].c)
PR testsuite/47371
	* gcc.target/i386/headmerge-1.c: Tighten up scan-assembler regex.
	* gcc.target/i386/headmerge-2.c: Likewise.

From-SVN: r169056
2011-01-20 17:37:28 +01:00
Richard Guenther
93e452edc6 re PR middle-end/47370 (error: invalid first operand of MEM_REF)
2011-01-20  Richard Guenther  <rguenther@suse.de>

	PR middle-end/47370
	* tree-inline.c (remap_gimple_op_r): Recurse manually for
	the pointer operand of MEM_REFs.

	* gcc.dg/torture/pr47370.c: New testcase.

From-SVN: r169055
2011-01-20 14:42:20 +00:00
Jakub Jelinek
28fc44f389 re PR tree-optimization/46130 (ICE: SIGSEGV in walk_stmt_load_store_addr_ops (gimple.c:4894) with -O2 -fno-tree-dce)
PR tree-optimization/46130
	* ipa-split.c (consider_split): If return_bb contains non-virtual
	PHIs other than for retval or if split_function would not adjust it,
	refuse to split.

	* gcc.dg/pr46130-1.c: New test.
	* gcc.dg/pr46130-2.c: New test.

From-SVN: r169052
2011-01-20 13:02:33 +01:00
Richard Guenther
ddd268f2e9 re PR other/47167 (Performance regression in numerical code)
2011-01-20  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/47167
	* tree-ssa-copyrename.c (copy_rename_partition_coalesce):
	Revert previous change, only avoid enumeral type changes.

From-SVN: r169050
2011-01-20 10:33:15 +00:00
Mike Stump
525d13b031 tm.texi.in (BRANCH_COST): Englishify.
* doc/tm.texi.in (BRANCH_COST): Englishify.
	* doc/tm.texi (BRANCH_COST): Likewise.

From-SVN: r169043
2011-01-20 00:19:07 +00:00
GCC Administrator
34d2545c34 Daily bump.
From-SVN: r169042
2011-01-20 00:18:46 +00:00
Mike Stump
1081731791 Fixup formatting.
From-SVN: r169038
2011-01-19 23:52:57 +00:00
Ian Lance Taylor
15049fa5af libgo/Makefile.am: Fix typo naming socket_bsd.go.
From-SVN: r169037
2011-01-19 23:03:33 +00:00
Dodji Seketeli
7edb6247b8 re PR c++/47291 (ICE: SIGSEGV in size_binop_loc (fold-const.c:1427) with -g)
Fix PR c++/47291

gcc/
	PR c++/47291
	* dwarf2out.c (generic_type_p, schedule_generic_params_dies_gen)
	(gen_scheduled_generic_parms_dies): New functions.
	(gen_struct_or_union_type_die): Schedule template parameters DIEs
	generation for the end of CU compilation.
	(dwarf2out_finish): Generate template parameters DIEs here.

gcc/testsuite/

	PR c++/47291
	* g++.dg/debug/dwarf2/template-params-10.C: New test.

From-SVN: r169036
2011-01-19 23:57:47 +01:00
Alexandre Oliva
23d5ed5dcf re PR debug/46240 (ice in maybe_register_def)
gcc/ChangeLog:
PR debug/46240
* tree-into-ssa.c (maybe_register_def): Do not attempt to add
debug bind stmt on merge edges.
gcc/testsuite/ChangeLog:
PR debug/46240
* g++.dg/debug/pr46240.cc: New.

From-SVN: r169035
2011-01-19 22:07:14 +00:00
Alexandre Oliva
37d6a488a4 re PR debug/47079 (FAIL: gcc.dg/guality/nrv-1.c)
PR debug/47079
PR debug/46724
* function.c (instantiate_expr): Instantiate incoming rtl of
implicit arguments, and recurse on VALUE_EXPRs.
(instantiate_decls): Instantiate rtl and VALUE_EXPR of result.
* var-tracking.c (adjust_mems): Reject virtual_incoming_args_rtx.

From-SVN: r169034
2011-01-19 22:00:00 +00:00
Alexandre Oliva
689f2c8206 c-parser.c (c_parser_for_statement): Initialize collection_expression.
* c-parser.c (c_parser_for_statement): Initialize
collection_expression.

From-SVN: r169033
2011-01-19 21:59:47 +00:00
Ian Lance Taylor
966082b6c4 Remember erroneous type when creating GENERIC for named type.
From-SVN: r169030
2011-01-19 20:54:30 +00:00
Joseph Myers
03029de43d * config/spu/spu-elf.h (ASM_SPEC): Remove %{w:-W}.
From-SVN: r169028
2011-01-19 20:51:32 +00:00
Ian Lance Taylor
e76efdbd96 Don't crash on reference to field with erroneous type.
From-SVN: r169027
2011-01-19 20:47:21 +00:00
Joseph Myers
3e03217e07 sysv4.h (LINK_PATH_SPEC): Remove.
* config/rs6000/sysv4.h (LINK_PATH_SPEC): Remove.
	(LINK_SHLIB_SPEC): Don't use %(link_path).
	(SUBTARGET_EXTRA_SPECS): Remove link_path.

From-SVN: r169026
2011-01-19 20:45:30 +00:00
Joseph Myers
5bbe9b3f48 sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
* config/rs6000/sysv4.h (SHARED_LIB_SUPPORT): Remove conditional.
	(NO_SHARED_LIB_SUPPORT): Remove.
	(LINK_SHLIB_SPEC): Remove one conditional definition.

From-SVN: r169025
2011-01-19 20:41:37 +00:00
Joseph Myers
368e0b3934 linux64.h (LINK_SPEC): Remove %{non_shared} %{call_shared}.
* config/mips/linux64.h (LINK_SPEC): Remove %{non_shared}
	%{call_shared}.
	* config/mips/mips.h (LINK_SPEC): Remove %{non_shared}.
	* config/mips/netbsd.h (LINK_SPEC): Remove %{call_shared}.
	* config/mips/openbsd.h (LINK_SPEC): Remove %{non_shared}
	%{call_shared} and conditionals on these options not being passed.
	* config/mips/sde.h (LINK_SPEC): Remove %{non_shared}
	%{call_shared}.

From-SVN: r169024
2011-01-19 20:39:09 +00:00
Ian Lance Taylor
5ee9259f75 Generate an init function if any global variable needs a preinit.
From-SVN: r169023
2011-01-19 20:37:50 +00:00
Benjamin Kosnik
e9dd48d91d PR libstdc++/36104 part two
2011-01-19  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/36104 part two
	* include/bits/hashtable.h: Revert to non-nested macro usage.
	* include/bits/hashtable_policy.h: Same.

From-SVN: r169021
2011-01-19 20:00:47 +00:00
Jakub Jelinek
6845790106 ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge, simplify.
* ipa-split.c (find_return_bb): Use single_pred_p/single_pred_edge,
	simplify.

From-SVN: r169020
2011-01-19 20:58:37 +01:00
Jakub Jelinek
ed7656f693 * ipa-split.c: Spelling fixes.
From-SVN: r169019
2011-01-19 20:57:54 +01:00
Richard Henderson
27098b6b41 mn10300: Add support in longlong.h.
This greatly helps out the DImode division, and to a lesser
extent the DImode multiplication routines in libgcc2.c.

From-SVN: r169018
2011-01-19 11:36:42 -08:00
Richard Henderson
e0d1958fc3 mn10300: Use reg_or_am33_const_operand in mulsi3.
From-SVN: r169017
2011-01-19 11:33:44 -08:00
Ulrich Weigand
d6be7c36ac * config/spu/spu.h (MOVE_RATIO): Return 4 in the !speed case.
From-SVN: r169015
2011-01-19 19:05:14 +00:00
Richard Henderson
4421782341 mn10300: Implement adddi3, subdi3.
Via expander, pre- and post-reload patterns.  The pre-reload
pattern is defined to allow lower_subregs totally split the
DImode values.

From-SVN: r169014
2011-01-19 10:55:12 -08:00
Richard Henderson
37a185d79e mn10300: Emit retf instruction
Now that we properly track the life of MDR, we can emit
the RETF instruction if MDR has not been modified.  This
insn is 3-4 cycles faster since the return address is
already loaded.

From-SVN: r169013
2011-01-19 10:50:52 -08:00
Richard Henderson
040c575701 mn10300: tidy pic address loading
There's little reason to greatly complicate things by splitting
the pic_load patterns and using complex rtl to make it work out.
Instead, use the %= marker to generate unique numbers and emit
the entire load_pic sequence at once.

At the same time, collect all references to outgoing_args_size
into mn10300_frame_size, and all computations of register save
area size into mn10300_initial_offset.

From-SVN: r169012
2011-01-19 10:46:30 -08:00
Richard Henderson
bad4152123 mn10300: Cleanup all arithmetic.
For addition and logicals, define an operation-plus-flags update pattern
in preparation for compare elimination.  In addition, clean up the way
we compare and validate CC_MODEs.  Define NEG in terms of NOT; this is
smaller and allows a non-clobbering destination alternative.

From-SVN: r169010
2011-01-19 10:38:56 -08:00
Richard Henderson
9efb4993cb mn10300: Explicitly represent MDR in multiply and divide.
Note that the mulsidi3_internal pattern is structured so
as to let the lower-subregs pass fully split the result.

From-SVN: r169008
2011-01-19 09:27:58 -08:00