Commit Graph

119949 Commits

Author SHA1 Message Date
Eric Botcazou df988ea3c1 * gcc-interface/Make-lang.in: Fix and clean up rules for C files.
From-SVN: r192998
2012-10-30 22:54:04 +00:00
H.J. Lu 478b77b9fa Rename pr55116.c to pr55116-1.c
* gcc.target/i386/pr55116.c: Renamed to ...
	* gcc.target/i386/pr55116-1.c: This.

From-SVN: r192997
2012-10-30 14:39:05 -07:00
H.J. Lu 75c3d92ff3 Add another testcase for PR middle-end/55116
* gcc.target/i386/pr55116-2.c: New file.

From-SVN: r192996
2012-10-30 14:35:35 -07:00
Steve Ellcey e64d0f556d mti-linux.h (SYSROOT_SUFFIX_SPEC): Change order and add mabi=64.
2012-10-30  Steve Ellcey  <sellcey@mips.com>

	* config/mips/mti-linux.h (SYSROOT_SUFFIX_SPEC): Change order
	and add mabi=64.
	(DRIVER_SELF_SPECS): Make -n32 the default on mips64* archs.
	* config/mips/t-mti-linux (MULTILIB_OPTIONS): Change order.
	(MULTILIB_DIRNAMES): Ditto.
	(MULTILIB_EXCEPTIONS): New.

From-SVN: r192995
2012-10-30 21:21:41 +00:00
Joern Rennecke 606e7d3a08 Fix ChangeLog typo.
From-SVN: r192994
2012-10-30 21:06:12 +00:00
Joern Rennecke fbebbadd9b lra-constrraints.c (check_secondary_memory_needed_p): Add ATTRIBUTE_UNUSED to parameters.
* lra-constrraints.c (check_secondary_memory_needed_p):
	Add ATTRIBUTE_UNUSED to parameters.

From-SVN: r192993
2012-10-30 21:03:03 +00:00
Richard Sandiford 08e931f3b7 defaults.h (SLOW_UNALIGNED_ACCESS): Provide default definition.
gcc/
	* defaults.h (SLOW_UNALIGNED_ACCESS): Provide default definition.
	* expmed.c (SLOW_UNALIGNED_ACCESS): Remove default definition.
	* expr.c (SLOW_UNALIGNED_ACCESS): Likewise.
	* lra-constraints.c (SLOW_UNALIGNED_ACCESS): Likewise.
	(simplify_operand_subreg): Don't check STRICT_ALIGNMENT here.

From-SVN: r192992
2012-10-30 19:07:28 +00:00
Jan Hubicka 63cf72605a * ipa-inline-analysis.c (eliminated_by_inlining_prob): Cleanup.
From-SVN: r192991
2012-10-30 16:51:12 +00:00
Jan Hubicka e152d14c2f tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter EVERY_ITERATION with implicit value of true.
* tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter
	EVERY_ITERATION with implicit value of true.
	(record_estimate): Check dominance relationship of the basic block
	we are estimating on instead of relying on UPPER to be false.
	(struct ilb_data): Drop RELIABLE.
	(idx_infer_loop_bounds): Update.
	(infer_loop_bounds_from_ref): Drop parameter RELIABLE.
	(infer_loop_bounds_from_array): Drop parameter RELIABLE.
	(infer_loop_bounds_from_undefined): Update comments and handling
	of RELIABLE.
	(estimate_numbers_of_iterations_loop): Record all bounds.

From-SVN: r192990
2012-10-30 16:50:05 +00:00
Jan Hubicka cd0f62787d tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter EVERY_ITERATION with implicit value of true.
* tree-ssa-loop-niter.c (number_of_iterations_exit): New parameter
	EVERY_ITERATION with implicit value of true.
	(record_estimate): Check dominance relationship of the basic block
	we are estimating on instead of relying on UPPER to be false.
	(struct ilb_data): Drop RELIABLE.
	(idx_infer_loop_bounds): Update.
	(infer_loop_bounds_from_ref): Drop parameter RELIABLE.
	(infer_loop_bounds_from_array): Drop parameter RELIABLE.
	(infer_loop_bounds_from_undefined): Update comments and handling
	of RELIABLE.
	(estimate_numbers_of_iterations_loop): Record all bounds.

From-SVN: r192989
2012-10-30 16:12:16 +00:00
Richard Sandiford baa061be44 lra-eliminations.c (lra_eliminate_regs_1): Use simplify_gen_subreg rather than gen_rtx_SUBREG.
gcc/
	* lra-eliminations.c (lra_eliminate_regs_1): Use simplify_gen_subreg
	rather than gen_rtx_SUBREG.

From-SVN: r192988
2012-10-30 14:33:48 +00:00
Richard Biener c12d924229 gimple.h (gimple_store_p): New predicate.
2012-10-30  Richard Biener  <rguenther@suse.de>

	* gimple.h (gimple_store_p): New predicate.
	(gimple_assign_load_p): Likewise.
	* tree-inline.c (estimate_num_insns): Use it.

	* gcc.dg/vect/slp-perm-2.c: Adjust.

From-SVN: r192987
2012-10-30 14:14:04 +00:00
Marc Glisse 2e2e628b24 fold-const.c (fold_binary_op_with_conditional_arg): Handle vectors.
2012-10-30  Marc Glisse  <marc.glisse@inria.fr>

	* fold-const.c (fold_binary_op_with_conditional_arg): Handle vectors.
	(fold_binary_loc): call it for VEC_COND_EXPR.

From-SVN: r192986
2012-10-30 12:56:47 +00:00
James Greenhalgh 4fda1ad1dc 2012-10-30 James Greenhalgh <james.greenhalgh@arm.com>
Tejas Belagod  <tejas.belagod@arm.com>

	* config/aarch64/aarch64-simd.md
	(aarch64_simd_bsl<mode>_internal): New pattern.
	(aarch64_simd_bsl<mode>): Likewise.
	(aarch64_vcond_internal<mode>): Likewise.
	(vcondu<mode><mode>): Likewise.
	(vcond<mode><mode>): Likewise.
	* config/aarch64/iterators.md (UNSPEC_BSL): Add to define_constants.


Co-Authored-By: Tejas Belagod <tejas.belagod@arm.com>

From-SVN: r192985
2012-10-30 12:31:49 +00:00
Richard Biener c96cab6e77 re PR tree-optimization/55111 (ICE: tree check: expected ssa_name, have integer_cst in live_on_edge, at tree-vrp.c:89)
2012-10-30  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/55111
	* tree-ssa-pre.c (eliminate_insert): Properly fold the built
	stmt.

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

From-SVN: r192984
2012-10-30 12:02:39 +00:00
Oleg Endo 01850a764f re PR target/54963 (Wrong code generated for libgfortran/generated/eoshift3_8.c on SH)
PR target/54963
	* config/sh/iterators.md (SIDI): New mode iterator.
	* config/sh/sh.md (negdi2): Use parallel around operation and T_REG
	clobber in expander.
	(*negdi2): Mark output operand as early clobbered.  Add T_REG clobber.
	Split after reload.  Simplify split code.
	(abssi2, absdi2): Fold expanders into abs<mode>2.
	(*abssi2, *absdi2): Fold into *abs<mode>2 insn_and_split.  Split insns
	before reload.
	(*negabssi2, *negabsdi2): Fold into *negabs<mode>2.  Add T_REG clobber.
	Split insns before reload.
	(negsi_cond): Reformat.  Use emit_move_insn instead of
	gen_movesi.
	(negdi_cond): Reformat.  Use emit_move_insn instead of a pair
	of gen_movsi.  Split insn before reload.

From-SVN: r192983
2012-10-30 09:22:14 +00:00
Oleg Endo 197ddd06a0 re PR c++/54988 (fpmath=sse target pragma causes inlining failure because of target specific option mismatch)
PR target/54988
	* config/sh/sh.md (tstqi_t_zero): Rename to *tstqi_t_zero.
	(*tst<mode>_t_zero): New insns.
	* config/sh/iterators.md (lowpart_be, lowpart_le): New mode attributes.

	PR target/54988
	* gcc.target/sh/pr53988.c: New.

From-SVN: r192982
2012-10-30 09:07:08 +00:00
H.J. Lu 3a8ebb9268 Remove alloca from dump_gimple_bb_header
* gimple-pretty-print.c (dump_gimple_bb_header): Avoid alloca.

From-SVN: r192981
2012-10-30 01:38:11 -07:00
Ganesh Gopalasubramanian 7e0575b082 Add myself to MAINTAINERS
From-SVN: r192980
2012-10-30 08:30:21 +00:00
Jakub Jelinek 85d874975a re PR debug/54953 (New sra-1.c FAILs on powerpc)
PR debug/54953
	* valtrack.h (DEBUG_TEMP_AFTER_WITH_REG_FORCE): New.
	* valtrack.c (dead_debug_insert_temp): Use emit_debug_insn_after
	even for where == DEBUG_TEMP_AFTER_WITH_REG_FORCE.
	* dce.c (word_dce_process_block, dce_process_block): Pass
	DEBUG_TEMP_AFTER_WITH_REG_FORCE if insn is needed and therefore
	not going to be eliminated.

From-SVN: r192978
2012-10-30 09:08:01 +01:00
Bin Cheng d863d14312 re PR target/54989 (FAIL: gcc.dg/hoist-register-pressure.c scan-rtl-dump hoist "PRE/HOIST: end of bb .* copying expression" on darwin)
PR target/54989
	* gcc.dg/hoist-register-pressure-1.c: Rename from
	hoist-register-pressure.c. Add nonpic condition.
	* gcc.dg/hoist-register-pressure-2.c: New testcase.

From-SVN: r192976
2012-10-30 02:17:50 +00:00
GCC Administrator c46cf1fa13 Daily bump.
From-SVN: r192975
2012-10-30 00:17:58 +00:00
Lawrence Crowl f61e445a74 This patch implements the unification of the *bitmap interfaces as discussed.
Essentially, we rename ebitmap and sbitmap functions to use the same names
as the bitmap functions.  This rename works because we can now overload
on the bitmap type.  Some macros now become inline functions to enable
that overloading.

The sbitmap non-bool returning bitwise operations have been merged with
the bool versions.  Sometimes this merge involved modifying the non-bool
version to compute the bool value, and sometimes modifying bool version to
add additional work from the non-bool version.  The redundant routines have
been removed.

The allocation functions have not been renamed, because we often do not
have an argument on which to overload.  The cardinality functions have not
been renamed, because they have different parameters, and are thus not
interchangable.  The iteration functions have not been renamed, because
they are functionally different.

Tested on x86_64, contrib/config-list.mk testing passed.


Index: gcc/ChangeLog

2012-10-29  Lawrence Crowl  <crowl@google.com>

	* sbitmap.h (sbitmap_copy): Rename bitmap_copy.
	(sbitmap_copy_n): Rename bitmap_copy_n.
	(sbitmap_equal): Rename bitmap_equal_p.
	(sbitmap_empty_p): Rename bitmap_empty_p.
	(sbitmap_range_empty_p): Rename bitmap_range_empty_p.
	(sbitmap_zero): Rename bitmap_clear.
	(sbitmap_ones): Rename bitmap_ones.
	(sbitmap_vector_zero): Rename bitmap_vector_clear.
	(sbitmap_vector_ones): Rename bitmap_vector_ones.
	(sbitmap_not): Rename bitmap_not.
	(sbitmap_a_and_b_cg): Commented out.
	(sbitmap_a_and_b): Rename bitmap_and.  Add bool return.
	(sbitmap_difference): Rename bitmap_and_compl.
	(sbitmap_a_or_b_cg): Commented out.
	(sbitmap_a_or_b): Rename bitmap_xor.  Add bool return.
	(sbitmap_a_xor_b_cg): Commented out.
	(sbitmap_a_xor_b): Rename bitmap_xor.  Add bool return.
	(sbitmap_a_and_b_or_c_cg): Rename bitmap_and_or.
	(sbitmap_a_and_b_or_c): Commented out.
	(sbitmap_a_or_b_and_c_cg): Rename bitmap_or_and.
	(sbitmap_a_or_b_and_c): Commented out.
	(sbitmap_union_of_diff_cg): Rename bitmap_ior_and_compl.
	(sbitmap_union_of_diff): Commented out.
	(dump_sbitmap): Rename dump_bitmap.
	(dump_sbitmap_file): Rename dump_bitmap_file.
	(debug_sbitmap): Rename debug_bitmap.
	(dump_sbitmap_vector): Rename dump_bitmap_vector.
	(sbitmap_first_set_bit): Rename bitmap_first_set_bit.
	(sbitmap_last_set_bit): Rename bitmap_last_set_bit.
	(sbitmap_a_subset_b_p): Rename bitmap_subset_p.
	(sbitmap_any_common_bits): Rename bitmap_intersect_p.
	(#define sbitmap_free): Reimplement as inline function.
	(#define sbitmap_vector_free): Reimplement as inline function.
	* bitmap.h (#define bitmap_zero): Remove as redundant.
	(#define bitmap_empty_p): Reimplement as inline function.
	(#define dump_bitmap): Reimplement as inline function.

From-SVN: r192969
2012-10-30 00:02:55 +00:00
Jonathan Wakely 880661a48b re PR c++/54930 (Add warning switch for "returning reference to temporary" and similar)
gcc/c-family:
	PR c++/54930
	* c.opt (Wreturn_local_addr): Define new option.

gcc/c:
	PR c++/54930
	* c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.

gcc/cp:
	PR c++/54930
	* typeck.c (maybe_warn_about_returning_address_of_local): Use
	OPT_Wreturn_local_addr.

gcc:
	PR c++/54930
	* doc/invoke.texi (Warning Options): Document -Wno-return-local-addr.

gcc/testsuite:
	PR c++/54930
	* gcc.dg/Wreturn-local-addr.c: New.
	* g++.dg/warn/Wno-return-local-addr.C: New.
	* g++.dg/warn/Wreturn-local-addr.C: New.

From-SVN: r192968
2012-10-29 23:21:35 +00:00
H.J. Lu 2adaa795e4 Add a testcase for PR middle-end/55116
PR middle-end/55116
	* gcc.target/i386/pr55116.c: New file.

From-SVN: r192967
2012-10-29 16:09:03 -07:00
H.J. Lu f4eafc3059 Remove trailing white spaces
* lra-assigns.c: Remove trailing white spaces.
	* lra-coalesce.c: Likewise.
	* lra-constraints.c: Likewise.
	* lra-eliminations.c: Likewise.
	* lra-int.h: Likewise.
	* lra-spills.c: Likewise.
	* lra.c: Likewise.

From-SVN: r192966
2012-10-29 14:56:35 -07:00
Jonathan Wakely 1ea58d3499 re PR libstdc++/55123 ([C++11] Construction of shared_ptr<const T> from unique_ptr<const T> fails)
PR libstdc++/55123
	* include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
	Do not instantiate allocator with element_type.
	* testsuite/20_util/shared_ptr/cons/55123.cc: New.

From-SVN: r192964
2012-10-29 21:49:19 +00:00
Manuel López-Ibáñez 077d1abec1 re PR c/53066 (Wshadow should not warn for shadowing an extern function)
2012-10-29  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	PR c/53066
c/
	* c-decl.c (warn_if_shadowing): Do not warn if a variable
	shadows a function, unless the variable is a function or a
	pointer-to-function.
gcc/
	* tree.h (FUNCTION_POINTER_TYPE_P): New.
testsuite/
	* gcc.dg/Wshadow-4.c: New.
	* gcc.dg/Wshadow-4.h: New.

From-SVN: r192963
2012-10-29 20:17:23 +00:00
Alexandre Oliva 36290bb4d5 re PR debug/54693 (VTA guality issues with loops)
PR debug/54693
* gcc/valtrack.c (dead_debug_insert_temp): Defer rescan of
newly-emitted debug insn.

From-SVN: r192962
2012-10-29 19:37:25 +00:00
Alexandre Oliva 61dc0ea735 re PR debug/54693 (VTA guality issues with loops)
gcc/ChangeLog:
PR debug/54693
* tree-ssa-threadedge.c (thread_around_empty_block): Copy
debug temps from predecessor before threading.
gcc/testsuite/ChangeLog:
PR debug/54693
* gcc.dg/guality/pr54693.c: New.

From-SVN: r192961
2012-10-29 19:36:47 +00:00
Diego Novillo 6119d95c67 * testsuite-management/x86_64-unknown-linux-gnu.xfail: Update.
From-SVN: r192960
2012-10-29 15:35:35 -04:00
Alexandre Oliva 0e45ec206c re PR debug/54551 (DF resets some DEBUG_INSNs unnecessarily)
PR debug/54551
PR debug/54693
* valtrack.c (dead_debug_global_find): Accept NULL dtemp.
(dead_debug_global_insert): Return new entry.
(dead_debug_global_replace_temp): Return early if REG is no
longer in place, or if dtemp was already substituted.
(dead_debug_promote_uses): Insert for all defs and replace all
debug uses at once.
(dead_debug_local_finish): Release used after promotion.
(dead_debug_insert_temp): Stop if dtemp is NULL.

From-SVN: r192959
2012-10-29 19:27:31 +00:00
Alexandre Oliva 8efb4b35f3 re PR debug/54693 (VTA guality issues with loops)
PR debug/54693
* loop-unroll.c (loop_exit_at_end_p): Skip debug insns.

From-SVN: r192958
2012-10-29 19:27:09 +00:00
Alexandre Oliva 2718e70e99 re PR debug/54693 (VTA guality issues with loops)
PR debug/54693
* config/i386/i386.c (add_parameter_dependencies): Stop
backward scan at the insn before the incoming head.
(ix86_dependencies_evaluation_hook): Skip debug insns.  Stop
if first_arg is head.

From-SVN: r192957
2012-10-29 19:26:16 +00:00
Ian Lance Taylor 8fe91dea4f mmap.c (backtrace_vector_release): Correct last patch: add aligned, not size.
* mmap.c (backtrace_vector_release): Correct last patch: add
	aligned, not size.

From-SVN: r192956
2012-10-29 18:42:05 +00:00
Andrew Pinski a5bc806c95 aarch64-protos.h (aarch64_load_tp): New proto.
2012-10-29  Andrew Pinski  <apinski@cavium.com>

        * config/aarch64/aarch64-protos.h (aarch64_load_tp): New proto.
        * config/aarch64/aarch64.c (aarch64_load_tp): Export.
        (aarch64_init_builtins): Don't add __builtin_thread_pointer builtin.
        * config/aarch64/aarch64.h (aarch64_builtins): Delete

From-SVN: r192955
2012-10-29 10:31:52 -07:00
Marc Glisse b72bdd9037 re PR middle-end/55027 (simplify vector multiplication by 1)
2012-10-29  Marc Glisse  <marc.glisse@inria.fr>

	PR middle-end/55027

gcc/
	* tree.c (real_zerop, real_onep, real_twop, real_minus_onep):
	Handle VECTOR_CST.

testsuite/
	* gcc.dg/pr55027.c: New testcase.

From-SVN: r192954
2012-10-29 17:16:51 +00:00
Bruce Korb fa547b393c It is October, not September. :)
From-SVN: r192953
2012-10-29 16:58:16 +00:00
Bruce Korb 7e41654136 Omit testing wrap and replacement fixes during testing.
This exposes a missing result and tests a test that got hidden before.

From-SVN: r192952
2012-10-29 16:44:34 +00:00
Vladimir Makarov 99a0106fa7 rtlanal.c (strip_address_mutation): Use SUBREG_REG instead of XEXP.
2012-10-29  Vladimir Makarov  <vmakarov@redhat.com>

	* rtlanal.c (strip_address_mutation): Use SUBREG_REG instead of
	XEXP.

From-SVN: r192951
2012-10-29 16:44:01 +00:00
Uros Bizjak e34e52073e i386.c (ix86_decompose_address): Use simplify_gen_subreg for all addresses, zero-extended with AND.
* config/i386/i386.c (ix86_decompose_address): Use simplify_gen_subreg
	for all addresses, zero-extended with AND.

From-SVN: r192950
2012-10-29 17:41:41 +01:00
Vladimir Makarov 163497f1a3 re PR middle-end/55116 (LRA failed to decompose ASHIFT)
2012-10-29  Vladimir Makarov  <vmakarov@redhat.com>

	PR middle-end/55116
	* rtlanal.c (strip_address_mutation): Add SUBREG case.

From-SVN: r192949
2012-10-29 16:36:57 +00:00
Arnaud Charlet 186db6a0f1 * gcc-interface/Makefile.in (s-oscons.ads): Adjust call to xoscons.
From-SVN: r192947
2012-10-29 17:27:14 +01:00
Jan Hubicka 100411f860 ipa-inline.c (want_inline_function_called_once_p): Rename to ...
* ipa-inline.c (want_inline_function_called_once_p): Rename to ...
	(want_inline_function_to_all_callers_p): check also functions with
	multiple callers.
	(ipa_inline): Handle inlining for size into multiple callers.

From-SVN: r192946
2012-10-29 15:48:21 +00:00
Ian Lance Taylor 8277de3441 mmap.c (backtrace_vector_release): Make sure freed block is aligned on 8-byte boundary.
* mmap.c (backtrace_vector_release): Make sure freed block is
	aligned on 8-byte boundary.

From-SVN: r192945
2012-10-29 15:43:37 +00:00
Vladimir Makarov 13a6a8d23f re PR rtl-optimization/55106 (ice: Maximum number of LRA constraint passes is achieved (15))
2012-10-29  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/55106
	* g++.dg/pr55106.C: New.

From-SVN: r192944
2012-10-29 14:42:05 +00:00
Richard Guenther 9dcbb3806d re PR middle-end/53695 (ICE: in dfs_enumerate_from, at cfganal.c:1221 with -O2 -ftracer and labels/gotos)
2012-10-29  Richard Guenther  <rguenther@suse.de>

	PR middle-end/53695
	* tracer.c (tracer): Fixup loop structure.
	* cfgloopmanip.c (force_single_succ_latches): Add assert.
	(fix_loop_structure): Re-compute loop latches and disambiguate
	loops with multiple latches if required.

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

From-SVN: r192943
2012-10-29 14:25:22 +00:00
Arnaud Charlet 5f41168186 [multiple changes]
2012-10-29  Pascal Obry  <obry@adacore.com>

	* xoscons.adb, Make-generated.in; The template used by xoscons is now
	given as parameter.
	* gcc-interface/Make-lang.in: Update dependencies.

2012-10-29  Yannick Moy  <moy@adacore.com>

	* exp_dbug.adb (Qualify_Entity_Name): Only do renaming in formal
	verification mode when there is a homonym.

From-SVN: r192942
2012-10-29 12:56:46 +01:00
James Greenhalgh 29dd4e883e MAINTAINERS (Write After Approval): Add myself.
2012-10-26  James Greenhalgh  <james.greenhalgh@arm.com>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r192941
2012-10-29 11:56:03 +00:00
Arnaud Charlet 269428bb41 [multiple changes]
2012-10-29  Thomas Quinot  <quinot@adacore.com>

	* xoscons.adb: Minor reformatting.

2012-10-29  Yannick Moy  <moy@adacore.com>

	* exp_alfa.adb (Expand_Alfa): Backtrack change that removed
	qualification of names in formal verification mode. Instead,
	the qualification should be modified.
	* exp_dbug.adb (Qualify_Entity_Name): Modify qualification in formal
	verification mode, so that only a suffix is added to distinguish
	homonyms from the same scope.

From-SVN: r192940
2012-10-29 12:42:17 +01:00