gcc/
* combine.c (simplify_comparison): If BITS_BIG_ENDIAN, always assume
that zero_extracts of const_ints are doing word-sized extractions.
From-SVN: r193026
gcc/
* expmed.c (store_bit_field_1): Move generation of MEM insvs
to the MEM_P block.
(extract_bit_field_1): Likewise extvs and extzvs.
From-SVN: r193024
gcc/
* expmed.c (store_bit_field_1): Use OP_MODE to check whether an
insv pattern is available. Remove redundant checks for OP_MODE
being MAX_MACHINE_MODE.
(extract_bit_field_1): Remove redundant checks for EXT_MODE being
MAX_MACHINE_MODE.
From-SVN: r193022
PR debug/54551
PR debug/54693
* valtrack.c (dead_debug_promote_uses): Assert-check that
global used bit was clear and initialize entry
unconditionally.
From-SVN: r193003
* 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
* 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 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
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
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
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-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