aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2013-11-07pdp11.c: Include dbxout.h.Mike Stump3-0/+7
* config/pdp11/pdp11.c: Include dbxout.h. * config/picochip/picochip.c: Likewise. From-SVN: r204539
2013-11-07re PR tree-optimization/56764 (vect_prune_runtime_alias_test_list not smart ↵Cong Hou6-176/+386
enough) 2013-11-07 Cong Hou <congh@google.com> PR tree-optimization/56764 * tree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Combine alias checks if it is possible to amortize the runtime overhead. Return the number of alias checks after merging. * tree-vect-data-refs.c (vect_prune_runtime_alias_test_list): Use the function vect_create_cond_for_alias_checks () to check the number of alias checks. 2013-11-07 Cong Hou <congh@google.com> * gcc.dg/vect/vect-alias-check.c: New. From-SVN: r204538
2013-11-07* varpool.c (ctor_for_folding): Fix typo in comment.Jeff Law2-1/+5
From-SVN: r204537
2013-11-07arc.c (arc_ifcvt): Use commutativity, e.g.: reg_a := reg_b + reg_a ==> reg_a ↵Joern Rennecke2-0/+29
:= reg_a + reg_b * config/arc/arc.c (arc_ifcvt): Use commutativity, e.g.: reg_a := reg_b + reg_a ==> reg_a := reg_a + reg_b From-SVN: r204534
2013-11-07invoke.texi (-fisolate-erroneous-paths): Document.Jeff Law5-3/+23
* doc/invoke.texi (-fisolate-erroneous-paths): Document. * gimple-ssa-isolate-paths.c (gate_isolate_erroneous_paths): No longer check if we have __builtin_trap, assume it's available. java/ * builtins.c (initialize_builtins): Provide __builtin_trap. From-SVN: r204533
2013-11-07sourcebuild.texi (Top Level): GNU ld can use linker plugins, too.Thomas Schwinge2-1/+4
gcc/ * doc/sourcebuild.texi (Top Level) <lto-plugin>: GNU ld can use linker plugins, too. From-SVN: r204521
2013-11-07Generally link to libgomp for -ftree-parallelize-loops=*.Thomas Schwinge6-10/+28
gcc/ * config/arc/arc.h (LINK_COMMAND_SPEC): For -ftree-parallelize-loops=*, link to libgomp and its dependencies. * config/ia64/hpux.h (LIB_SPEC): Likewise. * config/pa/pa-hpux11.h (LIB_SPEC): Likewise. * config/pa/pa64-hpux.h (LIB_SPEC): Likewise. * gcc.c (GOMP_SELF_SPECS): Update comment about libgomp's dependencies. libgomp/ * libgomp.spec.in: Update comment about libgomp's dependencies. * configure.ac: Likewise. * configure: Regenerate. From-SVN: r204517
2013-11-07tree-ssa-loop-niter.c: Include tree-ssanames.h.Jakub Jelinek4-4/+107
* tree-ssa-loop-niter.c: Include tree-ssanames.h. (determine_value_range): Add loop argument. Use get_range_info to improve range. (bound_difference): Adjust caller. * gcc.dg/tree-ssa/loop-39.c: New test. From-SVN: r204516
2013-11-07tree-vrp.c (find_assert_locations): Pre-seed live bitmaps for loop latches ↵Jakub Jelinek8-4/+82
from header PHI arguments from the latch... * tree-vrp.c (find_assert_locations): Pre-seed live bitmaps for loop latches from header PHI arguments from the latch edge. * gcc.dg/unroll_1.c: Add -fno-tree-vrp to dg-options. * gcc.dg/unroll_2.c: Likewise. * gcc.dg/unroll_3.c: Likewise. * gcc.dg/unroll_4.c: Likewise. * gcc.dg/vrp90.c: New test. From-SVN: r204515
2013-11-07re PR c++/58176 (ICE in output_constant, at varasm.c:4658)Paolo Carlini4-0/+51
2013-11-07 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58176 * varasm.c (output_constant): Handle NULLPTR_TYPE. /testsuite 2013-11-07 Paolo Carlini <paolo.carlini@oracle.com> PR c++/58176 * g++.dg/cpp0x/nullptr30.C: New. From-SVN: r204514
2013-11-07Don't set misaligned_prologue_used twiceH.J. Lu2-1/+5
* config/i386/i386.c (ix86_expand_set_or_movmem): Don't set misaligned_prologue_used when it has been set. From-SVN: r204512
2013-11-07Fixed typo in ChangeLog.Yury Gribov1-1/+1
From-SVN: r204509
2013-11-07Allow integer literals as addresses in instrumented builtins.Yury Gribov4-1/+21
gcc/ PR sanitizer/59029 * gcc/asan.c (get_mem_refs_of_builtin_call): Allow integer literals as addresses in instrumented builtins. gcc-testsuite/ PR sanitizer/59029 * c-c++-common/asan/pr59029.c: New test. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r204508
2013-11-07aarch64.c (aarch64_legitimize_reload_address): Explain why plus_constant is ↵Kyrylo Tkachov2-1/+10
not used. * config/aarch64/aarch64.c (aarch64_legitimize_reload_address): Explain why plus_constant is not used. From-SVN: r204507
2013-11-07tree-ssa-ccp.c (canonicalize_float_value): Rename to ...Richard Biener4-8/+29
2013-11-07 Richard Biener <rguenther@suse.de> * tree-ssa-ccp.c (canonicalize_float_value): Rename to ... (canonicalize_value): ... this. Also handle stripping of TREE_OVERFLOW. (get_value, set_lattice_value, get_value_for_expr): Adjust. * gimple-fold.c (canonicalize_constructor_val): Strip TREE_OVERFLOW. * tree-ssa-threadedge.c (set_ssa_name_value): Likewise. From-SVN: r204506
2013-11-07tree-dfa.c (get_ref_base_and_extent): Fix casting.Richard Biener2-2/+7
2013-11-07 Richard Biener <rguenther@suse.de> * tree-dfa.c (get_ref_base_and_extent): Fix casting. From-SVN: r204505
2013-11-07Use Pmode with stack_pointer_rtxH.J. Lu5-2/+34
gcc/ PR target/59034 * config/i386/i386.md (push peepholer/splitter): Use Pmode with stack_pointer_rtx. gcc/testsuite/ PR target/59034 * gcc.target/i386/pr59034-1.c: New test. * gcc.target/i386/pr59034-2.c: Likewise. From-SVN: r204501
2013-11-07tree-ssa-loop-ivopts.c (get_shiftadd_cost): Check equality using ↵Bin Cheng2-2/+11
operand_equal_p. * tree-ssa-loop-ivopts.c (get_shiftadd_cost): Check equality using operand_equal_p. From-SVN: r204498
2013-11-07tree-ssa-loop-ivopts.c (alloc_iv): Lower address expressions.Bin Cheng8-9/+44
* tree-ssa-loop-ivopts.c (alloc_iv): Lower address expressions. * tree-affine.c (get_inner_reference_aff): Return base. * tree-affine.h (get_inner_reference_aff): Change prototype. * gcc.dg/tree-ssa/loop-2.c: Refine check condition. * gcc.dg/tree-ssa/ivopt_infer_2.c: Ditto. * gcc.dg/tree-ssa/ivopt_mult_3.c: Ditto. From-SVN: r204497
2013-11-07Daily bump.GCC Administrator1-1/+1
From-SVN: r204496
2013-11-06c-decl.c (locate_old_decl): If a previous conflicting decl is both explicit ↵DJ Delorie4-1/+33
and builtin... * c-decl.c (locate_old_decl): If a previous conflicting decl is both explicit and builtin, print the location of the explicit one. * gcc.dg/mismatch-decl-1.c: New test. From-SVN: r204491
2013-11-06Revert "preprocessor/58580 - preprocessor goes OOM with warning for zero ↵Dodji Seketeli6-127/+34
literals" This reverts commit fc3eff8854861fcd70d33d26095b17fe456fae31. From-SVN: r204490
2013-11-06float128-cmp-invalid.c, [...]: New tests.Joseph Myers5-0/+88
gcc/testsuite: * gcc.dg/torture/float128-cmp-invalid.c, gcc.dg/torture/float128-div-underflow.c, gcc.dg/torture/float128-extend-nan.c, gcc.dg/torture/fp-int-convert-float128-timode-3.c: New tests. libgcc: * soft-fp/README: Update. * soft-fp/adddf3.c: Update from glibc. * soft-fp/addsf3.c: Likewise. * soft-fp/addtf3.c: Likewise. * soft-fp/divdf3.c: Likewise. * soft-fp/divsf3.c: Likewise. * soft-fp/divtf3.c: Likewise. * soft-fp/double.h: Likewise. * soft-fp/eqdf2.c: Likewise. * soft-fp/eqsf2.c: Likewise. * soft-fp/eqtf2.c: Likewise. * soft-fp/extenddftf2.c: Likewise. * soft-fp/extended.h: Likewise. * soft-fp/extendsfdf2.c: Likewise. * soft-fp/extendsftf2.c: Likewise. * soft-fp/extendxftf2.c: Likewise. * soft-fp/fixdfdi.c: Likewise. * soft-fp/fixdfsi.c: Likewise. * soft-fp/fixdfti.c: Likewise. * soft-fp/fixsfdi.c: Likewise. * soft-fp/fixsfsi.c: Likewise. * soft-fp/fixsfti.c: Likewise. * soft-fp/fixtfdi.c: Likewise. * soft-fp/fixtfsi.c: Likewise. * soft-fp/fixtfti.c: Likewise. * soft-fp/fixunsdfdi.c: Likewise. * soft-fp/fixunsdfsi.c: Likewise. * soft-fp/fixunsdfti.c: Likewise. * soft-fp/fixunssfdi.c: Likewise. * soft-fp/fixunssfsi.c: Likewise. * soft-fp/fixunssfti.c: Likewise. * soft-fp/fixunstfdi.c: Likewise. * soft-fp/fixunstfsi.c: Likewise. * soft-fp/fixunstfti.c: Likewise. * soft-fp/floatdidf.c: Likewise. * soft-fp/floatdisf.c: Likewise. * soft-fp/floatditf.c: Likewise. * soft-fp/floatsidf.c: Likewise. * soft-fp/floatsisf.c: Likewise. * soft-fp/floatsitf.c: Likewise. * soft-fp/floattidf.c: Likewise. * soft-fp/floattisf.c: Likewise. * soft-fp/floattitf.c: Likewise. * soft-fp/floatundidf.c: Likewise. * soft-fp/floatundisf.c: Likewise. * soft-fp/floatunditf.c: Likewise. * soft-fp/floatunsidf.c: Likewise. * soft-fp/floatunsisf.c: Likewise. * soft-fp/floatunsitf.c: Likewise. * soft-fp/floatuntidf.c: Likewise. * soft-fp/floatuntisf.c: Likewise. * soft-fp/floatuntitf.c: Likewise. * soft-fp/gedf2.c: Likewise. * soft-fp/gesf2.c: Likewise. * soft-fp/getf2.c: Likewise. * soft-fp/ledf2.c: Likewise. * soft-fp/lesf2.c: Likewise. * soft-fp/letf2.c: Likewise. * soft-fp/muldf3.c: Likewise. * soft-fp/mulsf3.c: Likewise. * soft-fp/multf3.c: Likewise. * soft-fp/negdf2.c: Likewise. * soft-fp/negsf2.c: Likewise. * soft-fp/negtf2.c: Likewise. * soft-fp/op-1.h: Likewise. * soft-fp/op-2.h: Likewise. * soft-fp/op-4.h: Likewise. * soft-fp/op-8.h: Likewise. * soft-fp/op-common.h: Likewise. * soft-fp/quad.h: Likewise. * soft-fp/single.h: Likewise. * soft-fp/soft-fp.h: Likewise. * soft-fp/subdf3.c: Likewise. * soft-fp/subsf3.c: Likewise. * soft-fp/subtf3.c: Likewise. * soft-fp/truncdfsf2.c: Likewise. * soft-fp/trunctfdf2.c: Likewise. * soft-fp/trunctfsf2.c: Likewise. * soft-fp/trunctfxf2.c: Likewise. * soft-fp/unorddf2.c: Likewise. * soft-fp/unordsf2.c: Likewise. * soft-fp/unordtf2.c: Likewise. From-SVN: r204489
2013-11-06pr51244-11.c: Remove target line.Oleg Endo144-143/+289
* gcc.target/sh/pr51244-11.c: Remove target line. * gcc.target/sh/sh4a-sincosf.c: Likewise. * gcc.target/sh/attr-isr-trap_exit.c: Likewise. * gcc.target/sh/pr51244-15.c: Likewise. * gcc.target/sh/pr51244-19.c: Likewise. * gcc.target/sh/cmpstr.c: Likewise. * gcc.target/sh/pr33135-3.c: Likewise. * gcc.target/sh/pr53512-2.c: Likewise. * gcc.target/sh/pr54602-2.c: Likewise. * gcc.target/sh/pr52483-1.c: Likewise. * gcc.target/sh/pr21255-2-ml.c: Likewise. * gcc.target/sh/pr54760-4.c: Likewise. * gcc.target/sh/pr52483-5.c: Likewise. * gcc.target/sh/pr54089-2.c: Likewise. * gcc.target/sh/pr56547-2.c: Likewise. * gcc.target/sh/pr54089-6.c: Likewise. * gcc.target/sh/pr51244-20.c: Likewise. * gcc.target/sh/pr50749-sf-predec-4.c: Likewise. * gcc.target/sh/sh4a-fsrra.c: Likewise. * gcc.target/sh/pr50749-qihisi-predec-1.c: Likewise. * gcc.target/sh/pr50749-sf-postinc-2.c: Likewise. * gcc.target/sh/pr55303-2.c: Likewise. * gcc.target/sh/sh2a-resbank.c: Likewise. * gcc.target/sh/sp-switch.c: Likewise. * gcc.target/sh/pr51244-3.c: Likewise. * gcc.target/sh/pr50751-3.c: Likewise. * gcc.target/sh/pr51244-7.c: Likewise. * gcc.target/sh/struct-arg-dw2.c: Likewise. * gcc.target/sh/pr50751-7.c: Likewise. * gcc.target/sh/pr49468-di.c: Likewise. * gcc.target/sh/pr50749-qihisi-postinc-4.c: Likewise. * gcc.target/sh/pr49880-3.c: Likewise. * gcc.target/sh/pr51244-12.c: Likewise. * gcc.target/sh/pr53988.c: Likewise. * gcc.target/sh/pr6526.c: Likewise. * gcc.target/sh/sh2a-bxor.c: Likewise. * gcc.target/sh/pr51244-16.c: Likewise. * gcc.target/sh/sh2a-bclrmem.c: Likewise. * gcc.target/sh/sh2a-bor.c: Likewise. * gcc.target/sh/pr53511-1.c: Likewise. * gcc.target/sh/pr21255-3.c: Likewise. * gcc.target/sh/pr53512-3.c: Likewise. * gcc.target/sh/pr33135-4.c: Likewise. * gcc.target/sh/pr54602-3.c: Likewise. * gcc.target/sh/pr54760-1.c: Likewise. * gcc.target/sh/pr52483-2.c: Likewise. * gcc.target/sh/sh2a-bsetmem.c: Likewise. * gcc.target/sh/pr54680.c: Likewise. * gcc.target/sh/pr54386.c: Likewise. * gcc.target/sh/pr51244-20-sh2a.c: Likewise. * gcc.target/sh/pr54089-3.c: Likewise. * gcc.target/sh/pr50749-sf-predec-1.c: Likewise. * gcc.target/sh/pr54089-7.c: Likewise. * gcc.target/sh/strlen.c: Likewise. * gcc.target/sh/pr50749-sf-postinc-3.c: Likewise. * gcc.target/sh/pr50749-qihisi-predec-2.c: Likewise. * gcc.target/sh/pr55303-3.c: Likewise. * gcc.target/sh/pr51244-4.c: Likewise. * gcc.target/sh/pr50751-4.c: Likewise. * gcc.target/sh/pr39423-1.c: Likewise. * gcc.target/sh/pr51244-8.c: Likewise. * gcc.target/sh/pr55146.c: Likewise. * gcc.target/sh/pr50751-8.c: Likewise. * gcc.target/sh/sh2a-bset.c: Likewise. * gcc.target/sh/pr50749-qihisi-postinc-1.c: Likewise. * gcc.target/sh/sh2a-movi20s.c: Likewise. * gcc.target/sh/20080410-1.c: Likewise. * gcc.target/sh/pr49880-4.c: Likewise. * gcc.target/sh/pr51244-13.c: Likewise. * gcc.target/sh/sh2a-movrt.c: Likewise. * gcc.target/sh/pr51244-17.c: Likewise. * gcc.target/sh/pr21255-2-mb.c: Likewise. * gcc.target/sh/sh2a-bclr.c: Likewise. * gcc.target/sh/pr33135-1.c: Likewise. * gcc.target/sh/pr53512-4.c: Likewise. * gcc.target/sh/pr54602-4.c: Likewise. * gcc.target/sh/sh4a-bitmovua.c: Likewise. * gcc.target/sh/pr54760-2.c: Likewise. * gcc.target/sh/pr52483-3.c: Likewise. * gcc.target/sh/sh2a-bld.c: Likewise. * gcc.target/sh/pr54089-4.c: Likewise. * gcc.target/sh/pr54685.c: Likewise. * gcc.target/sh/pr50749-sf-predec-2.c: Likewise. * gcc.target/sh/pr54089-8.c: Likewise. * gcc.target/sh/pragma-isr-trap-exit.c: Likewise. * gcc.target/sh/pr50749-qihisi-predec-3.c: Likewise. * gcc.target/sh/pr50749-sf-postinc-4.c: Likewise. * gcc.target/sh/pr51244-1.c: Likewise. * gcc.target/sh/pr50751-1.c: Likewise. * gcc.target/sh/pr55160.c: Likewise. * gcc.target/sh/pr51244-5.c: Likewise. * gcc.target/sh/pr54236-1.c: Likewise. * gcc.target/sh/pr50751-5.c: Likewise. * gcc.target/sh/pr52933-1.c: Likewise. * gcc.target/sh/pr39423-2.c: Likewise. * gcc.target/sh/pr51244-9.c: Likewise. * gcc.target/sh/pr49263.c: Likewise. * gcc.target/sh/pr50749-qihisi-postinc-2.c: Likewise. * gcc.target/sh/pr49880-1.c: Likewise. * gcc.target/sh/sh2a-band.c: Likewise. * gcc.target/sh/pr51244-10.c: Likewise. * gcc.target/sh/pr49880-5.c: Likewise. * gcc.target/sh/prefetch.c: Likewise. * gcc.target/sh/pr51244-14.c: Likewise. * gcc.target/sh/rte-delay-slot.c: Likewise. * gcc.target/sh/fpul-usage-1.c: Likewise. * gcc.target/sh/pr51244-18.c: Likewise. * gcc.target/sh/pr21255-1.c: Likewise. * gcc.target/sh/pr33135-2.c: Likewise. * gcc.target/sh/pr53512-1.c: Likewise. * gcc.target/sh/pr54602-1.c: Likewise. * gcc.target/sh/sh2a-rtsn.c: Likewise. * gcc.target/sh/torture/pragma-isr.c: Likewise. * gcc.target/sh/torture/pragma-isr2.c: Likewise. * gcc.target/sh/torture/pr58314.c: Likewise. * gcc.target/sh/torture/pr34777.c: Likewise. * gcc.target/sh/torture/pr58475.c: Likewise. * gcc.target/sh/pr54760-3.c: Likewise. * gcc.target/sh/sh4a-cosf.c: Likewise. * gcc.target/sh/pr52483-4.c: Likewise. * gcc.target/sh/mfmovd.c: Likewise. * gcc.target/sh/pr54089-1.c: Likewise. * gcc.target/sh/pr56547-1.c: Likewise. * gcc.target/sh/pr54089-5.c: Likewise. * gcc.target/sh/pr50749-sf-predec-3.c: Likewise. * gcc.target/sh/pr54089-9.c: Likewise. * gcc.target/sh/sh2a-jsrn.c: Likewise. * gcc.target/sh/pr49468-si.c: Likewise. * gcc.target/sh/pr50749-sf-postinc-1.c: Likewise. * gcc.target/sh/pr50749-qihisi-predec-4.c: Likewise. * gcc.target/sh/pr55303-1.c: Likewise. * gcc.target/sh/pr51244-2.c: Likewise. * gcc.target/sh/pr50751-2.c: Likewise. * gcc.target/sh/pr54236-2.c: Likewise. * gcc.target/sh/pr51244-6.c: Likewise. * gcc.target/sh/cmpstrn.c: Likewise. * gcc.target/sh/pr50751-6.c: Likewise. * gcc.target/sh/pr52933-2.c: Likewise. * gcc.target/sh/pr53568-1.c: Likewise. * gcc.target/sh/pr50749-qihisi-postinc-3.c: Likewise. * gcc.target/sh/sh2a-tbr-jump.c: Likewise. * gcc.target/sh/sh4a-sinf.c: Likewise. * gcc.target/sh/pr49880-2.c: Likewise. From-SVN: r204487
2013-11-06macro.c (_cpp_builtin_macro_text): Correct wording of two warnings.Tobias Burnus8-10/+25
libcpp/ 2013-11-06 Tobias Burnus <burnus@net-b.de> * macro.c (_cpp_builtin_macro_text): Correct wording of two warnings. gcc/c-family/ 2013-11-06 Tobias Burnus <burnus@net-b.de> * c-common.c (reason_option_codes_t): Add CPP_W_DATE_TIME. gcc/ 2013-11-06 Tobias Burnus <burnus@net-b.de> * doc/invoke.texi (Wdate-time): Fix typo. gcc/testsuite/ 2013-11-06 Tobias Burnus <burnus@net-b.de> * g++.dg/warn/wdate-time.C: Update dg-error pattern. * gcc.dg/wdate-time.c: Ditto. * gfortran.dg/wdate-time.F90: Ditto. From-SVN: r204486
2013-11-06Fix spacing.Mike Stump1-2/+0
From-SVN: r204479
2013-11-06sh.md (addsf3, [...]): Use fp_arith_reg_operand instead of arith_reg_operand.Oleg Endo2-24/+29
* config/sh/sh.md (addsf3, divsf3, divsf3_i, rsqrtsf2, cmpgtdf_t, cmpeqdf_t, *ieee_ccmpeqdf_t, negdf2, sqrtdf2, absdf2): Use fp_arith_reg_operand instead of arith_reg_operand. From-SVN: r204478
2013-11-06sh.md (adddi3): Remove empty constraints.Oleg Endo2-30/+35
* config/sh/sh.md (adddi3): Remove empty constraints. Remove can_create_pseudo_p and arith_reg_operand check. (adddi3_compact, subdi3_compact, *negdi2): Remove constraints. Split before reload. From-SVN: r204477
2013-11-06gdbinit.in: Disable strict type checking.Jeff Law2-0/+10
* gdbinit.in: Disable strict type checking. Co-Authored-By: Tom Tromey <tromey@redhat.com> From-SVN: r204474
2013-11-06re PR rtl-optimization/30807 (postreload bug (might be generic in trunk))Oleg Endo2-0/+223
PR target/30807 * gcc.target/sh/torture/pr30807.c: New. From-SVN: r204473
2013-11-06re PR c++/11006 ([CNI] ICE with use of __java_boolean)Paolo Carlini4-1/+26
/cp 2013-11-06 Paolo Carlini <paolo.carlini@oracle.com> PR c++/11006 * init.c (build_new_1): Don't call build_java_class_ref on non-class types. /testsuite 2013-11-06 Paolo Carlini <paolo.carlini@oracle.com> PR c++/11006 * g++.dg/other/java3.C: New. From-SVN: r204469
2013-11-06tree-pass.h (make_pass_live_range_shrinkage): New external.Vladimir Makarov11-16/+160
2013-11-06 Vladimir Makarov <vmakarov@redhat.com> * tree-pass.h (make_pass_live_range_shrinkage): New external. * timevar.def (TV_LIVE_RANGE_SHRINKAGE): New. * sched-rgn.c (gate_handle_live_range_shrinkage): New. (rest_of_handle_live_range_shrinkage): Ditto (class pass_live_range_shrinkage): Ditto. (pass_data_live_range_shrinkage): Ditto. (make_pass_live_range_shrinkage): Ditto. * sched-int.h (initialize_live_range_shrinkage): New prototype. (finish_live_range_shrinkage): Ditto. * sched-deps.c (create_insn_reg_set): Make void return value. * passes.def: Add pass_live_range_shrinkage. * ira.c (update_equiv_regs): Don't move if flag_live_range_shrinkage. * haifa-sched.c (live_range_shrinkage_p): New. (initialize_live_range_shrinkage, finish_live_range_shrinkage): New functions. (rank_for_schedule): Add code for pressure relief through live range shrinkage. (schedule_insn): Print more debug info. (sched_init): Setup SCHED_PRESSURE_WEIGHTED for pressure relief through live range shrinkage. * doc/invoke.texi (-flive-range-shrinkage): New. * common.opt (flive-range-shrinkage): New. From-SVN: r204465
2013-11-06re PR target/59021 (new vzeroupper instructions generated with -mavx)Uros Bizjak4-11/+45
PR target/59021 * config/i386/i386.c (ix86_avx_u128_mode_needed): Require AVX_U128_DIRTY mode for call_insn RTXes that use AVX256 registers. (ix86_avx_u128_mode_needed): Return AVX_U128_DIRTY mode for call_insn RTXes that return in AVX256 register. testsuite/ChangeLog: PR target/59021 * gcc.target/i386/pr59021.c: New test. From-SVN: r204464
2013-11-06gcc-defs.exp (dg-additional-files-options): Extend regsub for ↵James Lemke2-1/+6
dg-additional-files to also match BOL. 2013-11-06 James Lemke <jwlemke@codesourcery.com> * lib/gcc-defs.exp (dg-additional-files-options): Extend regsub for dg-additional-files to also match BOL. From-SVN: r204462
2013-11-06c-opts.c (c_common_post_options): Set -ffp-contract=off in C standards modes.Joseph Myers5-5/+49
c-family: * c-opts.c (c_common_post_options): Set -ffp-contract=off in C standards modes. * c-cppbuiltin.c (cpp_iec_559_value): Consider -ffp-contract=fast to mean lack of IEEE 754 support. testsuite: * gcc.dg/torture/c99-contract-1.c: New test. From-SVN: r204460
2013-11-06go-lang.c (go_langhook_post_options): If -fisolate-erroneous-paths was ↵Ian Lance Taylor2-0/+12
turned on by an optimization option, turn it off. * go-lang.c (go_langhook_post_options): If -fisolate-erroneous-paths was turned on by an optimization option, turn it off. From-SVN: r204459
2013-11-06re PR tree-optimization/58653 (wrong code (segfaults) at -O3 on ↵Richard Biener5-88/+67
x86_64-linux-gnu in 64-bit mode (affecting gcc 4.6 to trunk)) 2013-11-06 Richard Biener <rguenther@suse.de> PR tree-optimization/58653 * tree-predcom.c (ref_at_iteration): Rewrite to generate a MEM_REF. (prepare_initializers_chain): Adjust. * gcc.dg/tree-ssa/predcom-6.c: New testcase. * gcc.dg/tree-ssa/predcom-7.c: Likewise. From-SVN: r204458
2013-11-06fib.c: Reduced the iteration from 40 to 30.Balaji V. Iyer6-89/+89
2013-11-05 Balaji V. Iyer <balaji.v.iyer@intel.com> * c-c++-common/cilk-plus/CK/fib.c: Reduced the iteration from 40 to 30. Replaced iteration variable with a #define. Instead of returning non-zero value for error, called __builtin_abort (). Fixed a bug of calling fib_serial in serial case instead of fib. * c-c++-common/cilk-plus/CK/fib_init_expr_xy.c: Likewise. * c-c++-common/cilk-plus/CK/fib_no_return.c: Likewise. * c-c++-common/cilk-plus/CK/fib_no_sync.c: Likewise. * gcc.dg/cilk-plus/cilk-plus.exp: Removed duplicate/un-necessary compiler flag testing. From-SVN: r204457
2013-11-06typoJason Merrill1-1/+1
From-SVN: r204456
2013-11-06gimple.h (block_in_transaction): Move to basic-block.h and rename.Andrew MacLeod4-10/+17
* gimple.h (block_in_transaction): Move to basic-block.h and rename. (gimple_in_transaction): Use bb_in_transaction. * basic-block.h (bb_in_transaction): Relocate here and rename. * tree-ssa-loop-im.c (execute_sm): Use bb_in_transaction. From-SVN: r204455
2013-11-06tree.c (drop_tree_overflow): New function.Richard Biener5-21/+53
2013-11-06 Richard Biener <rguenther@suse.de> * tree.c (drop_tree_overflow): New function. * tree.h (drop_tree_overflow): Declare. * gimplify.c (gimplify_expr): Drop TREE_OVERFLOW. * tree-vrp.c (range_int_cst_singleton_p): Use is_overflow_infinity instead of testing TREE_OVERFLOW. (extract_range_from_assert): Likewise. (zero_nonzero_bits_from_vr): Likewise. (extract_range_basic): Likewise. (register_new_assert_for): Use drop_tree_overflow. (vrp_visit_phi_node): Likewise. From-SVN: r204454
2013-11-06preprocessor/58580 - preprocessor goes OOM with warning for zero literalsDodji Seketeli6-34/+127
In this problem report, the compiler is fed a (bogus) translation unit in which some literals contain bytes whose value is zero. The preprocessor detects that and proceeds to emit diagnostics for that king of bogus literals. But then when the diagnostics machinery re-reads the input file again to display the bogus literals with a caret, it attempts to calculate the length of each of the lines it got using fgets. The line length calculation is done using strlen. But that doesn't work well when the content of the line can have several zero bytes. The result is that the read_line never sees the end of the line because strlen repeatedly reports that the line ends before the end-of-line character; so read_line thinks its buffer for reading the line is too small; it thus increases the buffer, leading to a huge memory consumption, pain and disaster. The patch below introduces a new get_line function that returns the next line of a file and return the length of that line even if the line contains zero bytes. That get_line function has been adapted from the getline function from the GNU C Library because getline being a GNU extension it is not necessarily supported on all platforms. read_line is then modified to return the length of the line along with the line itself, as the line can now contain zero bytes. Callers of read_line are adjusted consequently. diagnostic_show_locus() is modified to consider that a line can have characters of value zero, and so just shows a white space when instructed to display one of these characters. gcc/ChangeLog: * input.h (location_get_source_line): Take an additional line_size parameter. * input.c (get_line): New static function definition. (read_line): Take an additional line_length output parameter to be set to the size of the line. Use the new get_line function do the actual line reading. (location_get_source_line): Take an additional output line_len parameter. Update the use of read_line to pass it the line_len parameter. * diagnostic.c (adjust_line): Take an additional input parameter for the length of the line, rather than calculating it with strlen. (diagnostic_show_locus): Adjust the use of location_get_source_line and adjust_line with respect to their new signature. While displaying a line now, do not stop at the first null byte. Rather, display the zero byte as a space and keep going until we reach the size of the line. gcc/testsuite/ChangeLog: * c-c++-common/cpp/warning-zero-in-literals-1.c: New test file. From-SVN: r204453
2013-11-06Fix formattingEric Botcazou1-3/+1
From-SVN: r204452
2013-11-06i386.c (ix86_expand_prologue): Optimize stack checking for leaf functions ↵Eric Botcazou6-93/+169
without dynamic stack allocation. * config/i386/i386.c (ix86_expand_prologue): Optimize stack checking for leaf functions without dynamic stack allocation. * config/ia64/ia64.c (ia64_emit_probe_stack_range): Adjust. (ia64_expand_prologue): Likewise. * config/mips/mips.c (mips_expand_prologue): Likewise. * config/rs6000/rs6000.c (rs6000_emit_prologue): Likewise. * config/sparc/sparc.c (sparc_expand_prologue): Likewise. (sparc_flat_expand_prologue): Likewise. From-SVN: r204450
2013-11-06[AArch64] Fix size of memory store for the vst<n>_lane intrinsicsJames Greenhalgh2-9/+25
gcc/ * config/aarch64/arm_neon.h (__ST2_LANE_FUNC): Better model data size. (__ST3_LANE_FUNC): Likewise. (__ST4_LANE_FUNC): Likewise. From-SVN: r204448
2013-11-06msp430.h (TARGET_CPU_CPP_BUILTINS): Define the name returned by msp430_mcu_name.Nick Clifton5-58/+108
* config/msp430/msp430.h (TARGET_CPU_CPP_BUILTINS): Define the name returned by msp430_mcu_name. (LIB_SPEC): If a -T option has not been specified then set a default, mcu-specific, linker script. * config/msp430/t-msp430 (MULTILIB_MATCHES): Add more mcu names. * config/msp430/msp430.c (msp430x_names): Likewise. Alpha sort the names for ease of comparison. (msp430_mcu_name): New function: Returns a string suitable for use as a C preprocessor symbol based upon the name of the MCU being targeted. (msp430_option_override): Accept msp430x and msp430xv2 as generic mcu names. * config/msp430/msp430-protos.h (msp430_mcu_name): Prototype. From-SVN: r204447
2013-11-06gcc.c (do_spec_1): Do not insert a space after a %* substitution unless...Nick Clifton3-10/+58
* gcc.c (do_spec_1): Do not insert a space after a %* substitution unless it is the last part of a spec substring. * doc/invoke.texi (Spec Files): Document space insertion behaviour of %*. From-SVN: r204446
2013-11-06sh-mem.cc (sh_expand_cmpnstr, [...]): Factorize probabilities...Christian Bruel6-61/+187
2013-11-06 Christian Bruel <christian.bruel@st.com> * gcc/config/sh/sh-mem.cc (sh_expand_cmpnstr, sh_expand_cmpstr): Factorize probabilities, Use adjust_address instead of adjust_automodify_address when possible. Enable for optimize. (sh_expand_strlen): New function. * gcc/config/sh/sh-protos.h (sh_expand_strlen): Declare. * gcc/config/sh/sh.md (strlensi): New pattern. (UNSPEC_BUILTIN_STRLEN): Define. From-SVN: r204445
2013-11-06re PR middle-end/58970 (internal compiler error: in get_bit_range, at ↵Jakub Jelinek5-7/+50
expr.c:4562) PR middle-end/58970 * expr.c (get_bit_range): Handle *offset == NULL_TREE. (expand_assignment): If *bitpos is negative, set *offset and adjust *bitpos, so that it is not negative. * gcc.c-torture/compile/pr58970.c: New test. From-SVN: r204444
2013-11-06* gfortran.texi: Fix typo.Francois-Xavier Coudert2-1/+5
From-SVN: r204443