gcc.git
11 years agoMinor tweaks
Eric Botcazou [Wed, 8 May 2013 09:51:25 +0000 (09:51 +0000)]
Minor tweaks

From-SVN: r198706

11 years agore PR tree-optimization/57200 (aggressive-loop-optimizations notes appear even when...
Paolo Carlini [Wed, 8 May 2013 09:09:52 +0000 (09:09 +0000)]
re PR tree-optimization/57200 (aggressive-loop-optimizations notes appear even when warning itself is suppressed)

2013-05-08  Paolo Carlini  <paolo.carlini@oracle.com>

PR tree-optimization/57200
* tree-ssa-loop-niter.c (do_warn_aggressive_loop_optimizations):
Only call inform if the preceding warning_at returns true.

From-SVN: r198704

11 years agoDaily bump.
GCC Administrator [Wed, 8 May 2013 00:16:44 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r198703

11 years ago2013-05-07 Han Shen <shenhan@google.com>
Han Shen [Tue, 7 May 2013 23:33:40 +0000 (23:33 +0000)]
2013-05-07  Han Shen  <shenhan@google.com>

    Added 2 missing files that should be included in the previous
    submitted patch trunk@r198699.

From-SVN: r198700

11 years agocfgexpand.c (record_or_union_type_has_array_p): New function.
Han Shen [Tue, 7 May 2013 21:33:01 +0000 (21:33 +0000)]
cfgexpand.c (record_or_union_type_has_array_p): New function.

2013-05-07  Han Shen  <shenhan@google.com>

    gcc/
    * cfgexpand.c (record_or_union_type_has_array_p): New function.
    (expand_used_vars): Add logic handling '-fstack-protector-strong'.
    * common.opt (fstack-protector-strong): New option.
    * doc/cpp.texi (__SSP_STRONG__): New builtin "__SSP_STRONG__".
    * doc/invoke.texi (Optimization Options): Document
    "-fstack-protector-strong".
    * gcc.c (LINK_SSP_SPEC): Add 'fstack-protector-strong'.

    gcc/testsuite/
    * gcc.dg/fstack-protector-strong.c: New.
    * g++.dg/fstack-protector-strong.C: New.

    gcc/c-family/
    * c-cppbuiltin.c (c_cpp_builtins): Added "__SSP_STRONG__=3".

From-SVN: r198699

11 years agounordered_base.h: New.
François Dumont [Tue, 7 May 2013 20:26:15 +0000 (20:26 +0000)]
unordered_base.h: New.

2013-05-07  François Dumont  <fdumont@gcc.gnu.org>

* include/profile/unordered_base.h: New.
* include/Makefile.am: Add new profile header.
* include/Makefile.in: Regenerate.
* include/profile/impl/profiler.h
(__profcxx_inefficient_hash_is_on): New macro.
* include/profile/unordered_map (std::profile::unordered_map<>):
Use new _Unordered_profile base class. Use default implementations
for special functions.
(std::profile::unordered_multimap<>): Likewise.
* include/profile/unordered_set (std::profile::unordered_set<>):
Likewise.
(std::profile::unordered_multiset<>): Likewise.
* testsuite/23_containers/unordered_multiset/55043.cc: Fix
MoveOnly equality operator signature.

From-SVN: r198698

11 years ago* config/mips/mips.c (mips_machine_reorg2): Return 0.
Steven Bosscher [Tue, 7 May 2013 19:34:35 +0000 (19:34 +0000)]
* config/mips/mips.c (mips_machine_reorg2): Return 0.

From-SVN: r198696

11 years agoira.c (update_equiv_regs): Add insn having equiv memory even if it is not lhs of...
Vladimir Makarov [Tue, 7 May 2013 19:29:05 +0000 (19:29 +0000)]
ira.c (update_equiv_regs): Add insn having equiv memory even if it is not lhs of the insn.

2013-05-07  Vladimir Makarov  <vmakarov@redhat.com>

* ira.c (update_equiv_regs): Add insn having equiv memory even if
it is not lhs of the insn.
(setup_reg_equiv): Remove insn having equiv memory which it is not
lhs of the insn.
* lra-constraints.c (process_address): Try to improve generation
code for address base + disp.
(lra_constraints): Make correct the code for checking insn setting
up backward equivalence.  Remove insn only if it is in the init
insn list.
* lra-eliminations.c (update_reg_eliminate): Change return value.
(lra_eliminate): Use the result.

From-SVN: r198695

11 years agosse.md (ssescalarnummask): New mode attribute.
Uros Bizjak [Tue, 7 May 2013 17:57:10 +0000 (19:57 +0200)]
sse.md (ssescalarnummask): New mode attribute.

* config/i386/sse.md (ssescalarnummask): New mode attribute.
(PEXTR_MODE, PEXTR_MODEx): New mode iterators.
(*vec_extract<mode>): Merge from *sse4_1_pextrb_memory and
*sse4_1_pextrw_memory. Handle register target operands.
(*vec_extractv8hi_sse2): New pattern.
(*vec_extractv16qi_zext): Rename from *sse4_1_pextrb_<mode>.
(*vec_extractv8hi_zext): Rename from *sse2_pextrw_<mode>.
(*vec_extract<mode>_mem): New insn and split pattern.

From-SVN: r198691

11 years agoAArch64 testcases for ANDS instruction
Ian Bolton [Tue, 7 May 2013 14:41:17 +0000 (14:41 +0000)]
AArch64 testcases for ANDS instruction

From-SVN: r198684

11 years agoarm.c (arm_asan_shadow_offset): New function.
Christophe Lyon [Tue, 7 May 2013 14:17:50 +0000 (14:17 +0000)]
arm.c (arm_asan_shadow_offset): New function.

2013-05-06  Christophe Lyon  <christophe.lyon@linaro.org>

gcc/
* config/arm/arm.c (arm_asan_shadow_offset): New function.
(TARGET_ASAN_SHADOW_OFFSET): Define.
* config/arm/linux-eabi.h (ASAN_CC1_SPEC): Define.
(LINUX_OR_ANDROID_CC): Add ASAN_CC1_SPEC.

libsanitizer/
* configure.tgt: Add ARM pattern.

testsuite/
* lib/target-supports.exp (check_effective_target_hw): New
function.
* c-c++-common/asan/clone-test-1.c: Call
check_effective_target_hw.
* c-c++-common/asan/rlimit-mmap-test-1.c: Likewise.
* c-c++-common/asan/heap-overflow-1.c: Update regexps to accept
possible decorations.
* c-c++-common/asan/null-deref-1.c: Likewise.
* c-c++-common/asan/stack-overflow-1.c: Likewise.
* c-c++-common/asan/strncpy-overflow-1.c: Likewise.
* c-c++-common/asan/use-after-free-1.c: Likewise.
* g++.dg/asan/deep-thread-stack-1.C: Likewise.
* g++.dg/asan/large-func-test-1.C: Likewise.

From-SVN: r198683

11 years agogimple-ssa-strength-reduction.c (MAX_INCR_VEC_LEN): New constant.
Bill Schmidt [Tue, 7 May 2013 14:11:21 +0000 (14:11 +0000)]
gimple-ssa-strength-reduction.c (MAX_INCR_VEC_LEN): New constant.

2013-05-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (MAX_INCR_VEC_LEN): New constant.
(incr_vec_index): Return -1 if increment not found.
(create_add_on_incoming_edge): Assert if increment not found.
(record_increment): Limit number of increments recorded.
(all_phi_incrs_profitable): Return false if an increment not found.
(replace_profitable_candidates): Don't process increments that were
not recorded.
(analyze_candidates_and_replace): Limit size of incr_vec.

From-SVN: r198682

11 years agocalls.c (special_function_p): setjmp-like functions are leaf.
Richard Biener [Tue, 7 May 2013 13:02:36 +0000 (13:02 +0000)]
calls.c (special_function_p): setjmp-like functions are leaf.

2013-05-07  Richard Biener  <rguenther@suse.de>

* calls.c (special_function_p): setjmp-like functions are leaf.
* builtins.def (BUILT_IN_SETJMP): setjmp is leaf.
* tree-inline.c (update_ssa_across_abnormal_edges): Remove assert.

From-SVN: r198681

11 years agoaarch64-simd.md (*aarch64_simd_mov<mode>): call splitter.
Sofiane Naci [Tue, 7 May 2013 12:47:18 +0000 (12:47 +0000)]
aarch64-simd.md (*aarch64_simd_mov<mode>): call splitter.

gcc/
* config/aarch64/aarch64-simd.md (*aarch64_simd_mov<mode>): call splitter.
(aarch64_simd_mov<mode>): New expander.
(aarch64_simd_mov_to_<mode>low): New instruction pattern.
(aarch64_simd_mov_to_<mode>high): Likewise.
(aarch64_simd_mov_from_<mode>low): Likewise.
(aarch64_simd_mov_from_<mode>high): Likewise.
(aarch64_dup_lane<mode>): Update.
(aarch64_dup_lanedi): New instruction pattern.
* config/aarch64/aarch64-protos.h (aarch64_split_simd_move): New prototype.
* config/aarch64/aarch64.c (aarch64_split_simd_move): New function.

testsuites/
* gcc.target/aarch64/scalar_intrinsics.c: Update.

From-SVN: r198680

11 years agogimple-ssa-strength-reduction.c (lazy_create_slsr_reg): Remove.
Bill Schmidt [Tue, 7 May 2013 12:44:50 +0000 (12:44 +0000)]
gimple-ssa-strength-reduction.c (lazy_create_slsr_reg): Remove.

2013-05-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (lazy_create_slsr_reg): Remove.
(replace_mult_candidate): Remove unnecessary argument; remove
unnecessary parameter from call to introduce_cast_before_cand.
(replace_unconditional_candidate): Remove unnecessary parameter
from call to replace_mult_candidate.
(replace_conditional_candidate): Likewise.
(insert_initializers): Use make_temp_ssa_name.
(introduce_cast_before_cand): Remove unnecessary argument; use
make_temp_ssa_name.
(replace_one_candidate): Remove unnecessary argument; remove
unnecessary parameter from calls to introduce_cast_before_cand.
(replace_profitable_candidates): Remove unnecessary parameters
from calls to replace_one_candidate.

From-SVN: r198679

11 years agogimple-ssa-strength-reduction.c (find_phi_def): Don't record a phi def as possibly...
Bill Schmidt [Tue, 7 May 2013 12:39:32 +0000 (12:39 +0000)]
gimple-ssa-strength-reduction.c (find_phi_def): Don't record a phi def as possibly hiding a basis for a CAND_ADD whose operands...

2013-05-07  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (find_phi_def): Don't record a
phi def as possibly hiding a basis for a CAND_ADD whose operands
have been commuted in the analysis.
(alloc_cand_and_find_basis): Add parms to call to find_phi_def.

From-SVN: r198678

11 years agoAArch64: Restrict the shift value in compare extended shift operation
Naveen H.S [Tue, 7 May 2013 12:20:24 +0000 (12:20 +0000)]
AArch64: Restrict the shift value in compare extended shift operation

2013-05-07  Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

* config/aarch64/aarch64.md
(cmp_swp_<optab><ALLX:mode>_shft_<GPI:mode>): Restrict the
shift value between 0-4.

From-SVN: r198677

11 years agodouble-int.h (rshift): New overload.
Richard Biener [Tue, 7 May 2013 11:26:58 +0000 (11:26 +0000)]
double-int.h (rshift): New overload.

2013-05-07  Richard Biener  <rguenther@suse.de>

* double-int.h (rshift): New overload.
* double-int.c (rshift): New function.
* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Optimize.
(create_reference_ops_from_ref): Remove.
(vn_reference_insert): Use shared ops for constructing the
reference and copy it.

From-SVN: r198676

11 years agore PR tree-optimization/57190 (verify_ssa failed: SSA_NAME_OCCURS_IN_ABNORMAL_PHI...
Richard Biener [Tue, 7 May 2013 11:23:39 +0000 (11:23 +0000)]
re PR tree-optimization/57190 (verify_ssa failed: SSA_NAME_OCCURS_IN_ABNORMAL_PHI should be set)

2013-05-07  Richard Biener  <rguenther@suse.de>

PR middle-end/57190
* tree-eh.c (sink_clobbers): Properly propagate
SSA_NAME_OCCURS_IN_ABNORMAL_PHI.

* g++.dg/torture/pr57190.C: New testcase.

From-SVN: r198675

11 years agore PR tree-optimization/57149 (wrong -Wmaybe-uninitialized warning with -Os)
Jakub Jelinek [Tue, 7 May 2013 10:30:13 +0000 (12:30 +0200)]
re PR tree-optimization/57149 (wrong -Wmaybe-uninitialized warning with -Os)

PR tree-optimization/57149
* tree-ssa-uninit.c (uninit_undefined_value_p): New inline.
(can_skip_redundant_opnd, compute_uninit_opnds_pos,
collect_phi_def_edges, execute_late_warn_uninitialized): Use
uninit_undefined_value_p instead of ssa_undefined_value_p.

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

From-SVN: r198671

11 years agore PR debug/57184 (ICE in expand_expr_real_1, at expr.c:10478)
Jakub Jelinek [Tue, 7 May 2013 08:28:01 +0000 (10:28 +0200)]
re PR debug/57184 (ICE in expand_expr_real_1, at expr.c:10478)

PR debug/57184
* expr.c (expand_expr_addr_expr_1): Handle COMPOUND_LITERAL_EXPR
for modifier == EXPAND_INITIALIZER.

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

From-SVN: r198666

11 years agore PR ada/56474 (bogus Storage_Error raised for record containing empty zero-based...
Eric Botcazou [Tue, 7 May 2013 07:59:37 +0000 (07:59 +0000)]
re PR ada/56474 (bogus Storage_Error raised for record containing empty zero-based array)

PR ada/56474
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Array_Subtype>: Use
int_const_binop to shift bounds by 1 when they are integer constants.

From-SVN: r198663

11 years agoconfigure.ac (HAVE_LD_LARGE_TOC): Use correct linker emulation for powerpc64 little...
Anton Blanchard [Tue, 7 May 2013 01:01:08 +0000 (01:01 +0000)]
configure.ac (HAVE_LD_LARGE_TOC): Use correct linker emulation for powerpc64 little endian.

* configure.ac (HAVE_LD_LARGE_TOC): Use correct linker emulation
for powerpc64 little endian.
* configure: Regenerate.

From-SVN: r198662

11 years agoDaily bump.
GCC Administrator [Tue, 7 May 2013 00:16:18 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r198661

11 years agoexpmed.c (init_expmed_rtl): Remove unused fields reg_fld...
Graham Stott [Mon, 6 May 2013 22:26:53 +0000 (22:26 +0000)]
expmed.c (init_expmed_rtl): Remove unused fields reg_fld...

2013-05-06  Graham Stott  <grahams@btinternet.com>

        * expmed.c (init_expmed_rtl): Remove unused fields reg_fld, plus_fld,
        mult_fld, sdiv_fld1, udiv_fld1, sdiv_32_fld1, smod_32_fld1,
        wide_mult_fld1, wide_lshr_fld1, shift_fld1, shift_mult_fld1,
        shift_add_fld1, shift_sub0_fld1, shift_sub1_fld1.

From-SVN: r198654

11 years ago013-05-06 Graham Stott <grahams@btinternet.com>
Graham Stott [Mon, 6 May 2013 22:08:56 +0000 (22:08 +0000)]
013-05-06  Graham Stott  <grahams@btinternet.com>

        * gensupport.c (add_predicate_code): Also exclude SCRATCH from rtx
        codes which allow non-lvalues.

From-SVN: r198653

11 years agotree.c (integer_all_onesp): Test that both components are all 1s.
Marc Glisse [Mon, 6 May 2013 21:14:59 +0000 (23:14 +0200)]
tree.c (integer_all_onesp): Test that both components are all 1s.

2013-05-06  Marc Glisse  <marc.glisse@inria.fr>

* tree.c (integer_all_onesp) <COMPLEX_CST>: Test that both
components are all 1s.
(integer_minus_onep): New function.
* tree.h (integer_minus_onep): Declare it.
* fold-const.c (fold_binary_loc) <MULT_EXPR>: Test
integer_minus_onep instead of integer_all_onesp.

From-SVN: r198649

11 years agotypeck.c (cp_build_binary_op): Call save_expr before build_vector_from_val.
Marc Glisse [Mon, 6 May 2013 21:11:24 +0000 (23:11 +0200)]
typeck.c (cp_build_binary_op): Call save_expr before build_vector_from_val.

2013-05-06  Marc Glisse  <marc.glisse@inria.fr>

gcc/cp/
* typeck.c (cp_build_binary_op): Call save_expr before
build_vector_from_val.

gcc/testsuite/
* c-c++-common/vector-scalar-2.c: New testcase.

From-SVN: r198648

11 years agore PR target/52933 (SH Target: Use div0s for integer sign comparisons)
Oleg Endo [Mon, 6 May 2013 19:59:26 +0000 (19:59 +0000)]
re PR target/52933 (SH Target: Use div0s for integer sign comparisons)

PR target/52933
* config/sh/sh.md (*cmp_div0s_0, *cmp_div0s_1, *movsicc_div0s): Add
variations of these patterns.

From-SVN: r198646

11 years agoi386.md (isa): Add x64_sse4 member.
Uros Bizjak [Mon, 6 May 2013 19:53:43 +0000 (21:53 +0200)]
i386.md (isa): Add x64_sse4 member.

* config/i386/i386.md (isa): Add x64_sse4 member.
(enabled): Handle x64_sse4.
(*movdi_internal): Add *x->?r alternative to emit pextrq $0,%xmm,%reg
instruction for 64bit SSE4_1 targets.  Update insn attributes.
(*movsi_internal): Add *x->?r alternative to emit pextrd $0,%xmm,%reg
instruction for SSE4_1 targets.  Update insn attributes.
* config/i386/sse.md (*vec_extract<ssevecmodelower>_0): Merge
with *sse4_1_pextrd and *sse4_1_pextrq having const_0 selector.
(*vec_extractv2di_1): Merge with *sse4_1_pextrq having
const_1 selector.
(*vec_extractv4si): Rename from *sse4_1_pextrd.
(*vec_extractv4si_zext): Rename from *sse4_1_pextrd_zext.
(*vec_extract<ssevecmodelower>_0 splitters): Merge splitters together.

From-SVN: r198643

11 years agore PR target/57108 ([4.7/4.8/4.9] SH internal compiler error: in int_mode_for_mode...
Oleg Endo [Mon, 6 May 2013 19:49:57 +0000 (19:49 +0000)]
re PR target/57108 ([4.7/4.8/4.9] SH internal compiler error: in int_mode_for_mode, at stor-layout.c:395)

PR target/57108
* config/sh/sh.md (tstsi_t_zero_extract_eq): Use QIHISIDI mode iterator.

From-SVN: r198642

11 years agoSupport {, } and | in assembly output
Maxim Kuznetsov [Mon, 6 May 2013 19:35:44 +0000 (19:35 +0000)]
Support {, } and | in assembly output

gcc/

2013-05-06  Maxim Kuznetsov  <maks.kuznetsov@gmail.com>

* final.c (do_assembler_dialects): Don't handle curly braces and
vertical bar escaped by % as dialect delimiters.
(output_asm_insn): Print curly braces and vertical bar if escaped
by % and ASSEMBLER_DIALECT defined.
* doc/tm.texi.in (ASSEMBLER_DIALECT): Document new standard escapes.
* doc/tm.texi: Regenerated.

gcc/testsuite/

2013-05-06  Maxim Kuznetsov  <maks.kuznetsov@gmail.com>

* gcc.target/i386/asm-dialect-2.c: New testcase.

From-SVN: r198641

11 years agomips.c: Include tree-pass.h.
Steven Bosscher [Mon, 6 May 2013 19:02:12 +0000 (19:02 +0000)]
mips.c: Include tree-pass.h.

* config/mips/mips.c: Include tree-pass.h.
(mips_reorg): Split in pre- and post-dbr_schedule parts.
(mips_machine_reorg2): Move mips_reorg post-dbr_schedule parts here.
(pass_mips_machine_reorg2): New machine specific pass.
(insert_pass_mips_machine_reorg2): New pass plugin definition.
(mips_option_override): Register the new pass.
* rtl.h (cleanup_barriers): Remove prototype.
(dbr_schedule): Likewise.
* jump.c (cleanup_barriers): Make static.
* reorg.c (dbr_schedule): Likewise.

From-SVN: r198640

11 years agore PR c++/57183 ([C++11] auto and -Wunused-variable)
Paolo Carlini [Mon, 6 May 2013 16:40:24 +0000 (16:40 +0000)]
re PR c++/57183 ([C++11] auto and -Wunused-variable)

/cp
2013-05-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57183
* decl.c (cp_finish_decl): After do_auto_deduction copy the
qualifers with cp_apply_type_quals_to_decl.

/testsuite
2013-05-06  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/57183
* g++.dg/cpp0x/auto38.C: New.

From-SVN: r198636

11 years agoChangeLog: Add my last entry.
Uros Bizjak [Mon, 6 May 2013 16:22:21 +0000 (18:22 +0200)]
ChangeLog: Add my last entry.

* ChangeLog: Add my last entry.
* testsuite/ChangLog: Ditto.

From-SVN: r198634

11 years agohashtab.c (hash_pointer): Remove conditional and avoid unexecuted shift equal to...
David Edelsohn [Mon, 6 May 2013 15:40:54 +0000 (15:40 +0000)]
hashtab.c (hash_pointer): Remove conditional and avoid unexecuted shift equal to wordsize.

2013-05-06  David Edelsohn  <dje.gcc@gmail.com>
            Peter Bergner  <bergner@vnet.ibm.com>
            Segher Boessenkool  <segher@kernel.crashing.org>
            Jakub Jelinek  <jakub@redhat.com>

        * hashtab.c (hash_pointer): Remove conditional and avoid
        unexecuted shift equal to wordsize.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
Co-Authored-By: Peter Bergner <bergner@vnet.ibm.com>
Co-Authored-By: Segher Boessenkool <segher@kernel.crashing.org>
From-SVN: r198633

11 years agore PR libgcj/57074 (libgcj regression on 32bit Power architecture)
Jakub Jelinek [Mon, 6 May 2013 15:09:41 +0000 (17:09 +0200)]
re PR libgcj/57074 (libgcj regression on 32bit Power architecture)

PR libgcj/57074
* class.c (emit_symbol_table): Use array type of the
right size for the_syms_decl and its DECL_INITIAL, instead
of symbols_array_type.  Set TREE_TYPE (the_syms_decl) to it.
(emit_assertion_table): Use array type of the right size
for table_decl and its DECL_INITIAL.

From-SVN: r198631

11 years agore PR tree-optimization/57185 (ICE: Segmentation fault in add_field_for_reduction...
Richard Biener [Mon, 6 May 2013 15:06:41 +0000 (15:06 +0000)]
re PR tree-optimization/57185 (ICE: Segmentation fault in add_field_for_reduction with -ftree-parallelize-loops=2 -fipa-pta)

2013-05-06  Richard Biener  <rguenther@suse.de>

PR tree-optimization/57185
* tree-parloops.c (add_field_for_reduction): Handle anonymous
SSA names properly.

* gcc.dg/autopar/pr57185.c: New testcase.

From-SVN: r198630

11 years agore PR target/57106 (-fcompare-debug failure with -O2 -fschedule-insns -funroll-all...
Uros Bizjak [Mon, 6 May 2013 14:53:03 +0000 (16:53 +0200)]
re PR target/57106 (-fcompare-debug failure with -O2 -fschedule-insns -funroll-all-loops)

PR target/57106
* config/i386/i386.c (add_parameter_dependencies): Add dependence
between "first_arg" and "insn", not "last" and "insn".

testsuite/ChangeLog:

PR target/57106
* gcc.target/i386/pr57106.c: New test.

From-SVN: r198629

11 years agogimple-ssa-strength-reduction.c (slsr_process_phi): Re-enable.
William Schmidt [Mon, 6 May 2013 13:31:39 +0000 (13:31 +0000)]
gimple-ssa-strength-reduction.c (slsr_process_phi): Re-enable.

gcc:

2013-05-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (slsr_process_phi): Re-enable.
(find_candidates_in_block): Re-enable slsr_process_phi.
(create_phi_basis): Fix double counting of candidate adjustment.

gcc/testsuite:

2013-05-06  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/tree-ssa/slsr-32.c: Re-enable.
* gcc.dg/tree-ssa/slsr-33.c: Likewise.
* gcc.dg/tree-ssa/slsr-34.c: Likewise.
* gcc.dg/tree-ssa/slsr-35.c: Likewise.
* gcc.dg/tree-ssa/slsr-36.c: Likewise.
* gcc.dg/tree-ssa/slsr-37.c: Likewise.
* gcc.dg/tree-ssa/slsr-38.c: Likewise.

From-SVN: r198627

11 years agore PR bootstrap/57154 (Bootstrap broken for powerpc64-unknown-linux-gnu)
Teresa Johnson [Mon, 6 May 2013 12:46:53 +0000 (12:46 +0000)]
re PR bootstrap/57154 (Bootstrap broken for powerpc64-unknown-linux-gnu)

2013-05-03  Teresa Johnson  <tejohnson@google.com>

PR bootstrap/57154
* gcc.dg/pr57154.c: New test.

From-SVN: r198626

11 years agore PR middle-end/57147 (setjmp call and if body wrongly elided (function runs off...
Richard Biener [Mon, 6 May 2013 11:27:29 +0000 (11:27 +0000)]
re PR middle-end/57147 (setjmp call and if body wrongly elided (function runs off early end))

2013-05-06  Richard Biener  <rguenther@suse.de>

PR middle-end/57147
* tree-cfg.c (gimple_purge_dead_abnormal_call_edges): If
the edge is also fallthru, preserve it and just clear the
abnormal flag.
* tree-cfgcleanup.c (remove_fallthru_edge): If the edge is
also complex, preserve that and just clear the fallthru flag.
* tree-inline.c (update_ssa_across_abnormal_edges): Also
update virtual operands.

* gcc.dg/torture/pr57147-1.c: New testcase.
* gcc.dg/torture/pr57147-2.c: Likewise.
* gcc.dg/torture/pr57147-3.c: Likewise.

From-SVN: r198625

11 years agofp-bit.c (unpack_d, pack_d): Properly preserve and restore a NaN's payload.
Thomas Schwinge [Mon, 6 May 2013 08:23:02 +0000 (10:23 +0200)]
fp-bit.c (unpack_d, pack_d): Properly preserve and restore a NaN's payload.

libgcc/
* fp-bit.c (unpack_d, pack_d): Properly preserve and restore a
NaN's payload.

From-SVN: r198622

11 years agofp-bit.h [FLOAT] (QUIET_NAN): Correct value.
Thomas Schwinge [Mon, 6 May 2013 08:22:48 +0000 (10:22 +0200)]
fp-bit.h [FLOAT] (QUIET_NAN): Correct value.

libgcc/
* fp-bit.h [FLOAT] (QUIET_NAN): Correct value.

From-SVN: r198621

11 years agolinux.h (DEFAULT_ASM_ENDIAN): Define.
Alan Modra [Mon, 6 May 2013 02:57:43 +0000 (12:27 +0930)]
linux.h (DEFAULT_ASM_ENDIAN): Define.

* config/rs6000/linux.h (DEFAULT_ASM_ENDIAN): Define.
(LINK_OS_LINUX_EMUL): Use ENDIAN_SELECT.
* config/rs6000/linux64.h (DEFAULT_ASM_ENDIAN): Define.
* config/rs6000/sysv4le.h (DEFAULT_ASM_ENDIAN): Define.
(LINK_TARGET_SPEC): Use ENDIAN_SELECT.
* config/rs6000/sysv4.h (DEFAULT_ASM_ENDIAN): Define as -mbig.

From-SVN: r198620

11 years agosysv4.h (ENDIAN_SELECT): Define, extracted from
Alan Modra [Mon, 6 May 2013 00:20:29 +0000 (09:50 +0930)]
sysv4.h (ENDIAN_SELECT): Define, extracted from

* config/rs6000/sysv4.h (ENDIAN_SELECT): Define, extracted from
(ASM_SPEC): ..here.  Emit DEFAULT_ASM_ENDIAN too.
(DEFAULT_ASM_ENDIAN): Define.
(CC1_SPEC, LINK_TARGET_SPEC): Use ENDIAN_SELECT.
* config/rs6000/linux64.h (ASM_SPEC32): Remove endian options.
Update -K PIC clause from sysv4.h.
(ASM_SPEC_COMMON): Use ENDIAN_SELECT.
(LINK_OS_LINUX_EMUL32, LINK_OS_LINUX_EMUL64): Likewise.

From-SVN: r198619

11 years agors6000.md (bswapdi 2nd splitter): Don't swap words twice for little-endian.
Alan Modra [Mon, 6 May 2013 00:19:07 +0000 (09:49 +0930)]
rs6000.md (bswapdi 2nd splitter): Don't swap words twice for little-endian.

* config/rs6000/rs6000.md (bswapdi 2nd splitter): Don't swap words
twice for little-endian.
(ashrdi3_no_power, ashrdi3): Support little-endian.

From-SVN: r198618

11 years agore PR target/55303 ([SH] Add support for clips / clipu instructions)
Oleg Endo [Mon, 6 May 2013 00:16:55 +0000 (00:16 +0000)]
re PR target/55303 ([SH] Add support for clips / clipu instructions)

PR target/55303
* config/sh/sh.c (sh_rtx_costs): Handle SMIN and SMAX cases.
* config/sh/sh.md (*clips, uminsi3, *clipu, clipu_one): New insns and
related expanders.
* config/sh/iterators.md (SMIN_SMAX): New code iterator.
* config/sh/predicates.md (arith_reg_or_0_or_1_operand,
clips_min_const_int, clips_max_const_int, clipu_max_const_int):
New predicates.

PR target/55303
* gcc.target/sh/pr55303-1.c: New.
* gcc.target/sh/pr55303-2.c: New.
* gcc.target/sh/pr55303-3.c: New.

From-SVN: r198617

11 years agoDaily bump.
GCC Administrator [Mon, 6 May 2013 00:16:24 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r198616

11 years agolibcaf.h (_gfortran_caf_critical): Add a prototype.
David Edelsohn [Sun, 5 May 2013 23:47:22 +0000 (23:47 +0000)]
libcaf.h (_gfortran_caf_critical): Add a prototype.

        * caf/libcaf.h (_gfortran_caf_critical): Add a prototype.
        (_gfortran_caf_end_critical): Same.

From-SVN: r198613

11 years agoconfig.gcc (hppa*-*-*): Remove MASK_BIG_SWITCH from CPU default.
Steven Bosscher [Sun, 5 May 2013 20:47:24 +0000 (20:47 +0000)]
config.gcc (hppa*-*-*): Remove MASK_BIG_SWITCH from CPU default.

* config.gcc (hppa*-*-*): Remove MASK_BIG_SWITCH from CPU default.
* config/pa/pa.opt: Make mbig-switch a no-op.
* config/pa/pa.h (TARGET_DEFAULT): Remove MASK_BIG_SWITCH.
(CASE_VECTOR_MODE): Always return SImode.
(ASM_OUTPUT_ADDR_VEC_ELT, ASM_OUTPUT_ADDR_DIFF_ELT): Remove code
for the !TARGET_BIG_SWITCH case.
* config/pa/pa-linux.h: Likewise.
* config/pa/pa-openbsd.h: Likewise.
* config/pa/pa-hpux.h: Define TARGET_DEFAULT to 0.
* config/pa/pa.md (short_jump): Remove define_insn.
(casesi): Remove code for the !TARGET_BIG_SWITCH case.
(casesi0): Remove define_insn.
(type): Remove btable_branch.
(pa_combine_type): Likewise.
(in_nullified_branch_delay): Likewise.
(in_call_delay): Likewise.
(define_delay): Likewise.
(define_insn_reservation "Z3"): Likewise.
(define_insn_reservation "Z4"): Likewise.
* config/pa/pa.c  (pa_reorg): Remove code for !TARGET_BIG_SWITCH.
(pa_adjust_insn_length): Remove adjustment for btable branches.
* doc/invoke.texi (HPPA Options): Delete documentation for mbig-switch
and mno-big-switch

Co-Authored-By: John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
From-SVN: r198612

11 years agosse.md (*vec_extract<ssevecmodelower>_0): Merge from sse2_stored and *sse2_storeq_rex...
Uros Bizjak [Sun, 5 May 2013 17:25:50 +0000 (19:25 +0200)]
sse.md (*vec_extract<ssevecmodelower>_0): Merge from sse2_stored and *sse2_storeq_rex64 using SWI48 mode iterator.

* config/i386/sse.md (*vec_extract<ssevecmodelower>_0): Merge
from sse2_stored and *sse2_storeq_rex64 using SWI48 mode iterator.
Add m->r,x alternatives.
(*vec_extract<ssevecmodelower>_0 splitters): Merge V2DI and V4SI
splitters using SWI48x mode iterator.
(*vec_extract_v2di_0_sse): Rename from *sse2_storeq.  Disable for
TARGET_64BIT.  Add m->x alternative.
(*vec_extractv4si_mem): Rename from *vec_ext_v4si_mem.
Add o->x alternative.  Enable for TARGET_SSE.
(sse_storeq): Remove expander.
(*vec_extractv2di_1): Enable for TARGET_SSE. Split alternatives
with memory input operand.
(*vec_extractv2di_1 splitter): New.
(*vec_extractv4sf_mem): Rename from *vec_extract_v4sf_mem.
* config/i386/i386.md (ssevecmodelower): New mode attribute.

From-SVN: r198611

11 years agoresolve.c (conformable_arrays): Avoid segfault when ar.start[i] == NULL.
Tobias Burnus [Sun, 5 May 2013 14:04:07 +0000 (16:04 +0200)]
resolve.c (conformable_arrays): Avoid segfault when ar.start[i] == NULL.

2013-05-05  Tobias Burnus  <burnus@net-b.de>

        * resolve.c (conformable_arrays): Avoid segfault
        when ar.start[i] == NULL.

2013-05-05  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/allocate_with_source_3.f90: New.

From-SVN: r198610

11 years agore PR fortran/57141 (Cannot change attributes of USE-associated intrinsic)
Tobias Burnus [Sun, 5 May 2013 14:01:38 +0000 (16:01 +0200)]
re PR fortran/57141 (Cannot change attributes of USE-associated intrinsic)

2013-05-05  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57141
        * decl.c (gfc_match_null): Permit use-associated
        NULL intrinsic.

2013-05-05  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57141
        * gfortran.dg/null_8.f90: New.

From-SVN: r198609

11 years agopt.c (convert_nontype_argument): Add missing whitespace in error message.
Paolo Carlini [Sun, 5 May 2013 11:36:27 +0000 (11:36 +0000)]
pt.c (convert_nontype_argument): Add missing whitespace in error message.

2013-05-05  Paolo Carlini  <paolo.carlini@oracle.com>

* pt.c (convert_nontype_argument): Add missing whitespace in
error message.

From-SVN: r198608

11 years agore PR c++/53745 ([C++11] Poor diagnostic for ill-formed narrowing conversion in enume...
Paolo Carlini [Sun, 5 May 2013 00:27:46 +0000 (00:27 +0000)]
re PR c++/53745 ([C++11] Poor diagnostic for ill-formed narrowing conversion in enumerator initializer)

/cp
2013-05-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53745
* decl.c (build_enumerator): Improve error message.

/testsuite
2013-05-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/53745
* g++.dg/cpp0x/enum27.C: New.
* g++.dg/cpp0x/enum_base.C: Adjust.

From-SVN: r198607

11 years agoDaily bump.
GCC Administrator [Sun, 5 May 2013 00:16:24 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r198606

11 years agoenviron.c: Include unistd.h.
David Edelsohn [Sat, 4 May 2013 21:23:11 +0000 (21:23 +0000)]
environ.c: Include unistd.h.

        * runtime/environ.c: Include unistd.h.
        * runtime/pause.c: Test HAVE_UNISTD_H.
        * runtime/stop.c: Same.
        * io/open.c: Same.
        * io/unix.c: Same.
        * io/read.c (si_max): Protect declaration of value.

From-SVN: r198603

11 years agors6000.c (INT_P): Reformat.
Segher Boessenkool [Sat, 4 May 2013 21:22:09 +0000 (23:22 +0200)]
rs6000.c (INT_P): Reformat.

        * config/rs6000/rs6000.c (INT_P): Reformat.  Delete obsolete comment.
        (INT_LOWPART): Delete.
        (extract_MB): Adjust.
        (extract_ME): Adjust.
        (print_operand): Adjust.

From-SVN: r198602

11 years agopredicates.md (reg_or_add_cint_operand, [...]): Delete "HOST_BITS_PER_WIDE_INT =...
Segher Boessenkool [Sat, 4 May 2013 21:19:08 +0000 (23:19 +0200)]
predicates.md (reg_or_add_cint_operand, [...]): Delete "HOST_BITS_PER_WIDE_INT == 32" case.

       * config/rs6000/predicates.md (reg_or_add_cint_operand,
       reg_or_sub_cint_operand): Delete "HOST_BITS_PER_WIDE_INT == 32" case.
       (reg_or_logical_cint_operand, easy_fp_constant,
       logical_const_operand): Delete "CONST_DOUBLE" case.
       * config/rs6000/rs6000.c (num_insns_constant_wide): Delete
       "HOST_BITS_PER_WIDE_INT == 64" test.
       (num_insns_constant): Ditto.  Delete CONST_DOUBLE DImode/VOIDmode
       case.
       (build_mask64_2_operands): Delete "HOST_BITS_PER_WIDE_INT >= 64" test.
       (rs6000_emit_set_const): Delete CONST_DOUBLE case.
       (rs6000_emit_set_long_const): Delete "HOST_BITS_PER_WIDE_INT >= 64"
       test.
       (includes_rldic_lshift_p, includes_rldicr_lshift_p): Delete
       CONST_DOUBLE DImode/VOIDmode case.
       (INT_P, INT_LOWPART): Delete CONST_DOUBLE case.
       (print_operand): Delete "HOST_BITS_PER_WIDE_INT == 32" case.  Delete
       CONST_DOUBLE VOIDmode case.
       (output_toc): Delete "HOST_BITS_PER_WIDE_INT == 32" case.
       (rs6000_rtx_costs): Delete CONST_DOUBLE DImode/VOIDmode case.
       * config/rs6000/rs6000.md (iordi3, xordi3, splitter for these):
       Delete CONST_DOUBLE case.
       (splitters for mov FMOVE64 const_double): Delete
       "HOST_BITS_PER_WIDE_INT == 32" case.  Delete
       "HOST_BITS_PER_WIDE_INT >= 64" test.
       (splitter for mov DI const_int): Delete "HOST_BITS_PER_WIDE_INT == 32"
       case.
       (mov DI const_double): Delete.

From-SVN: r198601

11 years agore PR tree-optimization/56205 (stdarg pass confused by jump threading)
Jakub Jelinek [Sat, 4 May 2013 18:23:46 +0000 (20:23 +0200)]
re PR tree-optimization/56205 (stdarg pass confused by jump threading)

PR tree-optimization/56205
* gcc.dg/tree-ssa/stdarg-6.c: Add cleanup-tree-dump "stdarg".

From-SVN: r198599

11 years agodecl.c (gfc_verify_c_interop_param): Permit allocatable and pointer with -std=f2008ts.
Tobias Burnus [Sat, 4 May 2013 17:49:31 +0000 (19:49 +0200)]
decl.c (gfc_verify_c_interop_param): Permit allocatable and pointer with -std=f2008ts.

2013-05-04  Tobias Burnus  <burnus@net-b.de>

        * decl.c (gfc_verify_c_interop_param): Permit allocatable
        and pointer with -std=f2008ts.

2013-05-04  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/bind_c_array_params.f03: Update dg-error.
        * gfortran.dg/bind_c_usage_27.f90: New.
        * gfortran.dg/bind_c_usage_28.f90: New.

From-SVN: r198597

11 years agoinclhack.def (aix_null): New.
David Edelsohn [Sat, 4 May 2013 14:49:59 +0000 (10:49 -0400)]
inclhack.def (aix_null): New.

        * inclhack.def (aix_null): New.
        (void_null): Update replacement definition of NULL.
        * fixincl.x: Regenerate.
        * tests/base/curses.h: Update for new fix.

From-SVN: r198596

11 years agocombine.c (combine_simplify_rtx): If nonzero_bits on op shows all bits zero in mode...
Jakub Jelinek [Sat, 4 May 2013 12:41:52 +0000 (14:41 +0200)]
combine.c (combine_simplify_rtx): If nonzero_bits on op shows all bits zero in mode of a lowpart subreg, return zero.

* combine.c (combine_simplify_rtx) <case SUBREG>: If nonzero_bits
on op shows all bits zero in mode of a lowpart subreg, return zero.

From-SVN: r198595

11 years agore PR c++/51927 ([C++0x] Cannot access non-static members in initializer)
Paolo Carlini [Sat, 4 May 2013 12:32:05 +0000 (12:32 +0000)]
re PR c++/51927 ([C++0x] Cannot access non-static members in initializer)

2013-05-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51927
* g++.dg/cpp0x/lambda/lambda-nsdmi4.C: New.

From-SVN: r198594

11 years agore PR target/57150 (GCC when targeting power7 spills long double using VSX instructions.)
Michael Meissner [Sat, 4 May 2013 05:38:47 +0000 (05:38 +0000)]
re PR target/57150 (GCC when targeting power7 spills long double using VSX instructions.)

[gcc]
2013-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/57150
* config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Use DFmode
to save TFmode registers and DImode to save TImode registers for
caller save operations.
(HARD_REGNO_CALL_PART_CLOBBERED): TFmode and TDmode do not need to
mark being partially clobbered since they only use the first
double word.

* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): TFmode
and TDmode only use the upper 64-bits of each VSX register.

[gcc/testsuite]
2013-05-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR target/57150
* gcc.target/powerpc/pr57150.c: New file.

From-SVN: r198593

11 years agogimple-ssa-strength-reduction.c (slsr_process_phi): Disable.
Bill Schmidt [Sat, 4 May 2013 04:57:32 +0000 (04:57 +0000)]
gimple-ssa-strength-reduction.c (slsr_process_phi): Disable.

gcc:

2013-05-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (slsr_process_phi): Disable.
(find_candidates_in_block): Disable slsr_process_phi.

gcc/testsuite:

2013-05-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/tree-ssa/slsr-32.c: Skip test for now.
* gcc.dg/tree-ssa/slsr-33.c: Likewise.
* gcc.dg/tree-ssa/slsr-34.c: Likewise.
* gcc.dg/tree-ssa/slsr-35.c: Likewise.
* gcc.dg/tree-ssa/slsr-36.c: Likewise.
* gcc.dg/tree-ssa/slsr-37.c: Likewise.
* gcc.dg/tree-ssa/slsr-38.c: Likewise.

From-SVN: r198592

11 years agocoverage.c (coverage_obj_init): Move the construction of gcov constructor to
Guozhi Wei [Sat, 4 May 2013 01:26:52 +0000 (01:26 +0000)]
coverage.c (coverage_obj_init): Move the construction of gcov constructor to

* coverage.c (coverage_obj_init): Move the construction of gcov
constructor to
(build_init_ctor): here.

From-SVN: r198591

11 years agoDaily bump.
GCC Administrator [Sat, 4 May 2013 00:16:17 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r198590

11 years agoRemove "\\" from scan-assembler-times
Dominique d'Humieres [Fri, 3 May 2013 20:08:19 +0000 (22:08 +0200)]
Remove "\\" from scan-assembler-times

2013-05-03  Dominique d'Humieres  <dominiq@lps.ens.fr>
p
* gcc.target/i386/sse2-init-v2di-2.c: Remove "\\" from
scan-assembler-times.

From-SVN: r198587

11 years agogimple-ssa-strength-reduction.c (cand_kind): Add CAND_PHI.
Bill Schmidt [Fri, 3 May 2013 18:56:39 +0000 (18:56 +0000)]
gimple-ssa-strength-reduction.c (cand_kind): Add CAND_PHI.

gcc:

2013-05-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gimple-ssa-strength-reduction.c (cand_kind): Add CAND_PHI.
(slsr_cand_d): Redefine def_phi.
(stride_status, phi_adjust_status, count_phis_status): New enums.
(find_phi_def): New.
(find_basis_for_base_expr): New.
(find_basis_for_candidate): Handle hidden bases.
(alloc_cand_and_find_basis): Handle phi candidates.
(slsr_process_phi): New.
(create_mul_ssa_cand): Exclude phi base candidates; use integer_onep.
(create_mul_imm_cand): Likewise.
(create_add_ssa_cand): Exclude phi base candidates.
(create_add_imm_cand): Likewise.
(slsr_process_cast): Likewise.
(slsr_process_copy): Likewise.
(find_candidates_in_block): Handle phi candidates.
(dump_candidate): Likewise.
(unconditional_cands): Delete.
(unconditional_cands_with_known_stride_p): Delete.
(phi_dependent_cand_p): New.
(cand_increment): Handle phi-dependent candidates.
(replace_dependent): Delete.
(replace_mult_candidate): New.
(replace_unconditional_candidate): New.
(incr_vec_index): Move to avoid forward reference.
(create_add_on_incoming_edge): New.
(create_phi_basis): New.
(replace_dependents): Delete.
(replace_conditional_candidate): New.
(phi_add_costs): New.
(replace_uncond_cands_and_profitable_phis): New.
(record_increment): Handle phi adjustments.
(record_phi_increments): New.
(record_increments): Handle phi adjustments.
(phi_incr_cost): New.
(lowest_cost_path): Handle phis.
(total_savings): Likewise.
(analyze_increments): Likewise.
(ncd_with_phi): New.
(ncd_of_cand_and_phis): New.
(nearest_common_dominator_for_cands): Handle phi increments.
(all_phi_incrs_profitable): New.
(replace_profitable_candidates): Handle phi-dependent candidates.
(analyze_candidates_and_replace): Likewise.

gcc/testsuite:

2013-05-03  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.dg/tree-ssa/slsr-32.c: New.
* gcc.dg/tree-ssa/slsr-33.c: New.
* gcc.dg/tree-ssa/slsr-34.c: New.
* gcc.dg/tree-ssa/slsr-35.c: New.
* gcc.dg/tree-ssa/slsr-36.c: New.
* gcc.dg/tree-ssa/slsr-37.c: New.
* gcc.dg/tree-ssa/slsr-38.c: New.

From-SVN: r198586

11 years agoAArch64 test cases for TST instruction
Ian Bolton [Fri, 3 May 2013 18:30:00 +0000 (18:30 +0000)]
AArch64 test cases for TST instruction

From-SVN: r198585

11 years agore PR bootstrap/57154 (Bootstrap broken for powerpc64-unknown-linux-gnu)
Teresa Johnson [Fri, 3 May 2013 16:48:24 +0000 (16:48 +0000)]
re PR bootstrap/57154 (Bootstrap broken for powerpc64-unknown-linux-gnu)

2013-05-03  Teresa Johnson  <tejohnson@google.com>

PR bootstrap/57154
* sched-rgn.c (compute_dom_prob_ps): Ensure accumulated probabilities
do not exceed REG_BR_PROB_BASE.

From-SVN: r198584

11 years agoFix typos in ChangeLog entries
Jeff Law [Fri, 3 May 2013 16:47:21 +0000 (10:47 -0600)]
Fix typos in ChangeLog entries

From-SVN: r198583

11 years agore PR tree-optimization/57411 (ICE: verify_ssa failed: definition in block 4 does...
Jeff Law [Fri, 3 May 2013 16:35:04 +0000 (10:35 -0600)]
re PR tree-optimization/57411 (ICE: verify_ssa failed: definition in block 4 does not dominate use in block 11 with -fno-tree-dce -ftree-vectorize)

PR tree-optimization/57411
* tree-vrp.c (simplify_cond_using_ranges): Verify the constant
operand of the condition will bit into the new type when eliminating
a cast feeding a condition.

PR tree-optimization/57411
* gcc.c-torture/execute/pr57144.c: New test.

From-SVN: r198582

11 years agore PR rtl-optimization/57130 (Incorrect "and --> extract" conversion in combine)
Jakub Jelinek [Fri, 3 May 2013 12:56:12 +0000 (14:56 +0200)]
re PR rtl-optimization/57130 (Incorrect "and --> extract" conversion in combine)

PR rtl-optimization/57130
* combine.c (make_compound_operation) <case SUBREG>: Pass
SET instead of COMPARE as in_code to the recursive call
if needed.

* gcc.c-torture/execute/pr57130.c: New test.

From-SVN: r198579

11 years agoi386.md (isa): Add x64_sse4_noavx and x64_avx members.
Uros Bizjak [Fri, 3 May 2013 12:03:29 +0000 (14:03 +0200)]
i386.md (isa): Add x64_sse4_noavx and x64_avx members.

* config/i386/i386.md (isa): Add x64_sse4_noavx and x64_avx members.
(enabled): Handle new members.
* config/i386/sse.md (*vec_concatv2si): Merge from
*vec_concatv2si_sse2 and vec_concatv2si_sse.
(vec_concatv2di): Merge with *vec_concatv2di_rex64.

testsuite/ChangeLog:

* gcc.target/i386/sse2-init-v2di-2.c: Update scan assembler string.

From-SVN: r198578

11 years agore PR tree-optimization/57027 (ICE in gimple_assign_rhs_code, at gimple.h:2022)
Joern Rennecke [Fri, 3 May 2013 11:18:37 +0000 (11:18 +0000)]
re PR tree-optimization/57027 (ICE in gimple_assign_rhs_code, at gimple.h:2022)

2013-05-03  Joern Rennecke <joern.rennecke@embecosm.com>

        PR tree-optimization/57027
        * tree-ssa-math-opts.c (convert_mult_to_fma): When checking for
        fnms opportunity, check we got the prerequisite kind of tree / gimple
        before using accessor functions.

From-SVN: r198577

11 years agodouble-int.h (lshift): New overload without precision and arith argument.
Richard Biener [Fri, 3 May 2013 11:09:59 +0000 (11:09 +0000)]
double-int.h (lshift): New overload without precision and arith argument.

2013-05-03  Richard Biener  <rguenther@suse.de>

* double-int.h (lshift): New overload without precision
and arith argument.
(operator *=, operator +=, operator -=): Move ...
* double-int.c (operator *=, operator +=, operator -=): ... here
and implement more efficiently.
(mul_double_with_sign): Remove.
(lshift_double): Adjust to take unsinged shift argument, push
dispatching code to callers.
(mul_double_wide_with_sign): Add early out for callers that
are not interested in high parts or overflow.
(lshift): New function.
(lshift, rshift, alshift, arshift, llshift, lrshift): Add
dispatch code here.
(lrotate, rrotate): Use logical shifts.
* expr.c (get_inner_reference): Use lshift.
* fixed-value.c (do_fixed_divide): Likewise.
* tree-dfa.c (get_ref_base_and_extent): Likewise.
* tree-ssa-alias.c (indirect_ref_may_alias_decl_p): Likewise.
(indirect_refs_may_alias_p): Likewise.
(stmt_kills_ref_p_1): Likewise.

From-SVN: r198576

11 years ago[AArch64] Correct simd_fabd comment text.
Vidya Praveen [Fri, 3 May 2013 10:21:16 +0000 (11:21 +0100)]
[AArch64] Correct simd_fabd comment text.

From-SVN: r198575

11 years ago[AArch64] Support scalar FABD
Vidya Praveen [Fri, 3 May 2013 10:17:57 +0000 (11:17 +0100)]
[AArch64] Support scalar FABD

gcc/ChangeLog

2013-05-02  Vidya Praveen  <vidyapraveen@arm.com>

        * config/aarch64/aarch64-simd.md (*fabd_scalar<mode>3): Support
          scalar form of FABD instruction.

gcc/testsuite/ChangeLog

2013-05-02  Vidya Praveen <vidyapraveen@arm.com>

        * gcc.target/aarch64/fabd.c: New file.

From-SVN: r198574

11 years agore PR c++/54318 ([C++11] Bogus "template instantiation depth exceeds maximum" error...
Paolo Carlini [Fri, 3 May 2013 09:35:42 +0000 (09:35 +0000)]
re PR c++/54318 ([C++11] Bogus "template instantiation depth exceeds maximum" error + segfault)

2013-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54318
* g++.dg/cpp0x/pr54318.C: New.

From-SVN: r198573

11 years agore PR c++/14283 (Diagnostic for invalid template-id could be improved)
Paolo Carlini [Fri, 3 May 2013 09:02:15 +0000 (09:02 +0000)]
re PR c++/14283 (Diagnostic for invalid template-id could be improved)

/cp
2013-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/14283
* parser.c (cp_parser_diagnose_invalid_type_name): Improve error
messages for template types and fix column numbers.

/testsuite
2013-05-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/14283
* g++.dg/parse/error51.C: New.
* g++.dg/parse/error15.C: Adjust column numbers.

From-SVN: r198572

11 years agoDaily bump.
GCC Administrator [Fri, 3 May 2013 00:16:24 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r198568

11 years agoAdd ChangeLog entry for r197770 (in boehm-gc).
Yvan Roux [Thu, 2 May 2013 19:48:45 +0000 (21:48 +0200)]
Add ChangeLog entry for r197770 (in boehm-gc).

From-SVN: r198562

11 years agolra-constraints.c (process_alt_operands): Add checking alt number to choose the best...
Vladimir Makarov [Thu, 2 May 2013 19:02:19 +0000 (19:02 +0000)]
lra-constraints.c (process_alt_operands): Add checking alt number to choose the best alternative.

2013-05-02  Vladimir Makarov  <vmakarov@redhat.com>

* lra-constraints.c (process_alt_operands): Add checking alt
number to choose the best alternative.

From-SVN: r198558

11 years agotree-eh.c (cleanup_empty_eh_merge_phis): Remove rename_virts bitmap and its handling.
Richard Biener [Thu, 2 May 2013 17:24:26 +0000 (17:24 +0000)]
tree-eh.c (cleanup_empty_eh_merge_phis): Remove rename_virts bitmap and its handling.

* tree-eh.c (cleanup_empty_eh_merge_phis): Remove rename_virts
bitmap and its handling.
(pass_cleanup_eh): Set todo_flags_finish to TODO_verify_ssa.

From-SVN: r198552

11 years agore PR fortran/57142 (SIZE/SHAPE overflow despite kind=8)
Tobias Burnus [Thu, 2 May 2013 16:29:14 +0000 (18:29 +0200)]
re PR fortran/57142 (SIZE/SHAPE overflow despite kind=8)

2013-05-02  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57142
        * simplify.c (gfc_simplify_size): Renamed from
        simplify_size; fix kind=8 handling.
        (gfc_simplify_size): New function.
        (gfc_simplify_shape): Add range check.
        * resolve.c (resolve_function): Fix handling
        for ISYM_SIZE.

2013-05-02  Tobias Burnus  <burnus@net-b.de>

        PR fortran/57142
        * gfortran.dg/size_kind_2.f90: New.
        * gfortran.dg/size_kind_3.f90: New.

From-SVN: r198549

11 years agore PR middle-end/57140 (Segmentation fault in backtrace_dwarf_add)
Richard Biener [Thu, 2 May 2013 15:46:12 +0000 (15:46 +0000)]
re PR middle-end/57140 (Segmentation fault in backtrace_dwarf_add)

2013-05-02  Richard Biener  <rguenther@suse.de>

PR middle-end/57140
* tree-inline.c (copy_loops): Properly handle removed loops.
(copy_cfg_body): Mark destination loops for fixup if source
loops needed fixup.

* g++.dg/torture/pr57140.C: New testcase.

From-SVN: r198548

11 years agore PR rtl-optimization/56732 (ICE in advance_target_bb)
Greta Yorsh [Thu, 2 May 2013 15:45:10 +0000 (16:45 +0100)]
re PR rtl-optimization/56732 (ICE in advance_target_bb)

gcc/ChangeLog

2013-05-02  Greta Yorsh  <Greta.Yorsh@arm.com>

PR target/56732
* config/arm/arm.c (arm_expand_epilogue): Check really_return before
generating simple_return for naked functions.

gcc/testsuite/ChangeLog

2013-05-02  Greta Yorsh  <Greta.Yorsh@arm.com>

PR target/56732
* gcc.target/arm/pr56732-1.c: New test.

From-SVN: r198547

11 years agore PR middle-end/56988 (ipa-cp incorrectly propagates a field of an aggregate)
Martin Jambor [Thu, 2 May 2013 14:03:02 +0000 (16:03 +0200)]
re PR middle-end/56988 (ipa-cp incorrectly propagates a field of an aggregate)

2013-05-02  Martin Jambor  <mjambor@suse.cz>

PR middle-end/56988
* ipa-prop.h (ipa_agg_replacement_value): New flag by_ref.
* ipa-cp.c (ipa_get_indirect_edge_target_1): Also check that by_ref
flags match.
(find_aggregate_values_for_callers_subset): Fill in the by_ref flag of
ipa_agg_replacement_value structures.
(known_aggs_to_agg_replacement_list): Likewise.
* ipa-prop.c (write_agg_replacement_chain): Stream by_ref flag.
(read_agg_replacement_chain): Likewise.
(ipcp_transform_function): Also check that by_ref flags match.

testsuite/
* gcc.dg/ipa/pr56988.c: New test.

From-SVN: r198540

11 years agographds.h (struct graph): Add obstack member.
Richard Biener [Thu, 2 May 2013 13:59:38 +0000 (13:59 +0000)]
graphds.h (struct graph): Add obstack member.

2013-05-02  Richard Biener  <rguenther@suse.de>

* graphds.h (struct graph): Add obstack member.
* graphds.c (new_graph): Initialize obstack and allocate
vertices from it.
(add_edge): Allocate edge from the obstack.
(free_graph): Free the obstack instead of all edges and
vertices.

From-SVN: r198539

11 years agoFollow-on patch to r197595 to complete the replacement of truncating divides in...
Teresa Johnson [Thu, 2 May 2013 13:20:47 +0000 (13:20 +0000)]
Follow-on patch to r197595 to complete the replacement of truncating divides in...

Follow-on patch to r197595 to complete the replacement of truncating divides
in profile scaling code with rounding divide equivalents using helper routines
in basic-block.h.

In addition to bootstrap and profiledbootstrap builds and tests (with and
without LTO), I built and tested performance of the SPEC cpu2006 benchmarks
with FDO on a Nehalem system. I didn't see any performance changes that
looked significant.

2013-05-02  Teresa Johnson  <tejohnson@google.com>

* loop-unswitch.c (unswitch_loop): Use helper routines with rounding
        divides.
* cfg.c (update_bb_profile_for_threading): Ditto.
* tree-inline.c (copy_bb): Ditto.
(copy_edges_for_bb): Ditto.
(initialize_cfun): Ditto.
(copy_cfg_body): Ditto.
(expand_call_inline): Ditto.
* ipa-inline-analysis.c (estimate_edge_size_and_time): Ditto.
(estimate_node_size_and_time): Ditto.
(inline_merge_summary): Ditto.
* cgraphclones.c (cgraph_clone_edge): Ditto.
(cgraph_clone_node): Ditto.
* sched-rgn.c (compute_dom_prob_ps): Ditto.
(compute_trg_info): Ditto.

From-SVN: r198532

11 years agoAArch64 fix for LDR/STR from/to S and D regs
Ian Bolton [Thu, 2 May 2013 12:54:16 +0000 (12:54 +0000)]
AArch64 fix for LDR/STR from/to S and D regs

From-SVN: r198527

11 years agoAArch64 Support for BICS in the backend
Ian Bolton [Thu, 2 May 2013 12:52:22 +0000 (12:52 +0000)]
AArch64 Support for BICS in the backend

From-SVN: r198526

11 years agotree-scalar-evolution.c (scev_info_hasher): Remove.
Richard Biener [Thu, 2 May 2013 12:23:20 +0000 (12:23 +0000)]
tree-scalar-evolution.c (scev_info_hasher): Remove.

2013-05-02  Richard Biener  <rguenther@suse.de>

* tree-scalar-evolution.c (scev_info_hasher): Remove.
(struct instantiate_cache_entry): New type.
(struct instantiate_cache_entry_hasher): New hashtable descriptor.
(struct instantiate_cache_type): New type.
(set_instantiated_value, get_instantiated_value): Remove.
(get_instantiated_value_entry): New function.
(instantiate_scev_name): Use the new cache and adjust.
(instantiate_scev_poly): Adjust.
(instantiate_scev_binary): Likewise.
(instantiate_array_ref): Likewise.
(instantiate_scev_convert): Likewise.
(instantiate_scev_not): Likewise.
(instantiate_scev_3): Likewise.
(instantiate_scev_2): Likewise.
(instantiate_scev_r): Likewise.
(instantiate_scev): Likewise.
(resolve_mixers): Likewise.

From-SVN: r198523

11 years agoconstexpr_data.cc: Move...
Paolo Carlini [Thu, 2 May 2013 12:03:30 +0000 (12:03 +0000)]
constexpr_data.cc: Move...

2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>

* testsuite/tr1/4_metaprogramming/integral_constant/requirements/
constexpr_data.cc: Move...
* testsuite/20_util/integral_constant/requirements/constexpr_data.cc:
... here.
* testsuite/20_util/integral_constant/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/integral_constant/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/integral_constant/static_definition.cc: Likewise.
* testsuite/20_util/integral_constant/true_false_type_typedefs.cc:
Likewise.
* testsuite/20_util/integral_constant/true_false_value.cc: Likewise.
* testsuite/20_util/integral_constant/operator_value_type.cc: Likewise.

From-SVN: r198521

11 years agoMove libitm ChangeLog entry to the right ChangeLog file.
Jakub Jelinek [Thu, 2 May 2013 11:32:11 +0000 (13:32 +0200)]
Move libitm ChangeLog entry to the right ChangeLog file.

From-SVN: r198519

11 years agotype_traits (is_null_pointer): Add.
Paolo Carlini [Thu, 2 May 2013 11:00:26 +0000 (11:00 +0000)]
type_traits (is_null_pointer): Add.

2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>

* include/std/type_traits (is_null_pointer): Add.
(__is_nullptr_t): Implement in terms of the latter.
(is_fundamental, is_scalar): Adjust.
* testsuite/20_util/is_null_pointer/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/is_null_pointer/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/is_null_pointer/value.cc: Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line number.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.

From-SVN: r198516

11 years agocstdio: Add comment about LWG 2249.
Paolo Carlini [Thu, 2 May 2013 09:48:07 +0000 (09:48 +0000)]
cstdio: Add comment about LWG 2249.

2013-05-02  Paolo Carlini  <paolo.carlini@oracle.com>

* include/c_global/cstdio: Add comment about LWG 2249.
* include/c_std/cstdio: Likewise.

From-SVN: r198512