platform/upstream/gcc.git
10 years agolibgomp: Prepare for testcases without -fopenmp.
Thomas Schwinge [Thu, 7 Nov 2013 15:07:58 +0000 (16:07 +0100)]
libgomp: Prepare for testcases without -fopenmp.

libgomp/
* testsuite/lib/libgomp.exp (libgomp_init): Don't add -fopenmp to
ALWAYS_CFLAGS.
* testsuite/libgomp.c++/c++.exp (ALWAYS_CFLAGS): Add -fopenmp.
* testsuite/libgomp.c/c.exp (ALWAYS_CFLAGS): Likewise.
* testsuite/libgomp.fortran/fortran.exp (ALWAYS_CFLAGS): Likewise.
* testsuite/libgomp.graphite/graphite.exp (ALWAYS_CFLAGS):
Likewise.

From-SVN: r204519

10 years agoAdd missing include.
Thomas Schwinge [Thu, 7 Nov 2013 15:07:46 +0000 (16:07 +0100)]
Add missing include.

libgomp/
* libgomp_g.h: Include <stddef.h> for size_t.

From-SVN: r204518

10 years agoGenerally link to libgomp for -ftree-parallelize-loops=*.
Thomas Schwinge [Thu, 7 Nov 2013 15:07:34 +0000 (16:07 +0100)]
Generally link to libgomp for -ftree-parallelize-loops=*.

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

10 years agotree-ssa-loop-niter.c: Include tree-ssanames.h.
Jakub Jelinek [Thu, 7 Nov 2013 14:31:00 +0000 (15:31 +0100)]
tree-ssa-loop-niter.c: Include tree-ssanames.h.

* 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

10 years agotree-vrp.c (find_assert_locations): Pre-seed live bitmaps for loop latches from heade...
Jakub Jelinek [Thu, 7 Nov 2013 14:28:57 +0000 (15:28 +0100)]
tree-vrp.c (find_assert_locations): Pre-seed live bitmaps for loop latches 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

10 years agore PR c++/58176 (ICE in output_constant, at varasm.c:4658)
Paolo Carlini [Thu, 7 Nov 2013 14:26:17 +0000 (14:26 +0000)]
re PR c++/58176 (ICE in output_constant, at varasm.c:4658)

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

10 years agoDon't set misaligned_prologue_used twice
H.J. Lu [Thu, 7 Nov 2013 13:59:22 +0000 (13:59 +0000)]
Don't set misaligned_prologue_used twice

* config/i386/i386.c (ix86_expand_set_or_movmem): Don't set
misaligned_prologue_used when it has been set.

From-SVN: r204512

10 years agoFixed typo in ChangeLog.
Yury Gribov [Thu, 7 Nov 2013 12:55:42 +0000 (12:55 +0000)]
Fixed typo in ChangeLog.

From-SVN: r204509

10 years agoAllow integer literals as addresses in instrumented builtins.
Yury Gribov [Thu, 7 Nov 2013 12:04:45 +0000 (12:04 +0000)]
Allow integer literals as addresses in instrumented builtins.

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

10 years agoaarch64.c (aarch64_legitimize_reload_address): Explain why plus_constant is not used.
Kyrylo Tkachov [Thu, 7 Nov 2013 11:44:04 +0000 (11:44 +0000)]
aarch64.c (aarch64_legitimize_reload_address): Explain why plus_constant is not used.

* config/aarch64/aarch64.c (aarch64_legitimize_reload_address):
Explain why plus_constant is not used.

From-SVN: r204507

10 years agotree-ssa-ccp.c (canonicalize_float_value): Rename to ...
Richard Biener [Thu, 7 Nov 2013 11:33:03 +0000 (11:33 +0000)]
tree-ssa-ccp.c (canonicalize_float_value): Rename to ...

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

10 years agotree-dfa.c (get_ref_base_and_extent): Fix casting.
Richard Biener [Thu, 7 Nov 2013 11:28:42 +0000 (11:28 +0000)]
tree-dfa.c (get_ref_base_and_extent): Fix casting.

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

* tree-dfa.c (get_ref_base_and_extent): Fix casting.

From-SVN: r204505

10 years agoUse Pmode with stack_pointer_rtx
H.J. Lu [Thu, 7 Nov 2013 09:58:05 +0000 (09:58 +0000)]
Use Pmode with stack_pointer_rtx

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

10 years agotree-ssa-loop-ivopts.c (get_shiftadd_cost): Check equality using operand_equal_p.
Bin Cheng [Thu, 7 Nov 2013 08:34:02 +0000 (08:34 +0000)]
tree-ssa-loop-ivopts.c (get_shiftadd_cost): Check equality using operand_equal_p.

* tree-ssa-loop-ivopts.c (get_shiftadd_cost): Check equality
using operand_equal_p.

From-SVN: r204498

10 years agotree-ssa-loop-ivopts.c (alloc_iv): Lower address expressions.
Bin Cheng [Thu, 7 Nov 2013 08:12:34 +0000 (08:12 +0000)]
tree-ssa-loop-ivopts.c (alloc_iv): Lower address expressions.

* 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

10 years agoDaily bump.
GCC Administrator [Thu, 7 Nov 2013 00:17:04 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r204496

10 years agoc-decl.c (locate_old_decl): If a previous conflicting decl is both explicit and built...
DJ Delorie [Wed, 6 Nov 2013 23:33:33 +0000 (18:33 -0500)]
c-decl.c (locate_old_decl): If a previous conflicting decl is both explicit 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

10 years agoRevert "preprocessor/58580 - preprocessor goes OOM with warning for zero literals"
Dodji Seketeli [Wed, 6 Nov 2013 22:51:36 +0000 (23:51 +0100)]
Revert "preprocessor/58580 - preprocessor goes OOM with warning for zero literals"

This reverts commit fc3eff8854861fcd70d33d26095b17fe456fae31.

From-SVN: r204490

10 years agofloat128-cmp-invalid.c, [...]: New tests.
Joseph Myers [Wed, 6 Nov 2013 22:46:39 +0000 (22:46 +0000)]
float128-cmp-invalid.c, [...]: New tests.

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

10 years agopr51244-11.c: Remove target line.
Oleg Endo [Wed, 6 Nov 2013 22:33:01 +0000 (22:33 +0000)]
pr51244-11.c: Remove target line.

* 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

10 years agomacro.c (_cpp_builtin_macro_text): Correct wording of two warnings.
Tobias Burnus [Wed, 6 Nov 2013 22:28:08 +0000 (23:28 +0100)]
macro.c (_cpp_builtin_macro_text): Correct wording of two warnings.

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

10 years agoCheck __x86_64__ for FPU state
H.J. Lu [Wed, 6 Nov 2013 21:52:29 +0000 (21:52 +0000)]
Check __x86_64__ for FPU state

PR sanitizer/59018
* sanitizer_common/sanitizer_platform_limits_posix.cc
(struct_user_fpxregs_struct_sz): Initialize to 0 if __x86_64__ is
defined.

From-SVN: r204483

10 years agoUse 64-bit system types for x86-64
H.J. Lu [Wed, 6 Nov 2013 21:51:41 +0000 (21:51 +0000)]
Use 64-bit system types for x86-64

PR sanitizer/59018
* sanitizer_common/sanitizer_platform_limits_linux.cc
(struct_kernel_stat64_sz): Initialize to 0 if __x86_64__ is
defined.
* sanitizer_common/sanitizer_platform_limits_posix.h
(__sanitizer_dirent): Use 64-bit d_ino/d_off if __x86_64__ is
defined.
(__sanitizer___kernel_uid_t): Typedef as unsigned if __x86_64__
is defined.
(__sanitizer___kernel_gid_t): Likewise.
(__sanitizer___kernel_off_t): Typedef as long long if __x86_64__
is defined.

From-SVN: r204482

10 years agoFix internal_clone for x32
H.J. Lu [Wed, 6 Nov 2013 21:50:42 +0000 (21:50 +0000)]
Fix internal_clone for x32

PR sanitizer/59018
* sanitizer_common/sanitizer_linux.cc (internal_clone): Allocate
2 64-bit integers to save and restore fn and arg.  Properly load
newtls/child_tidptr into r8/r10.

From-SVN: r204481

10 years agoCast pointers to uptr for 64-bit syscalls
H.J. Lu [Wed, 6 Nov 2013 21:49:36 +0000 (21:49 +0000)]
Cast pointers to uptr for 64-bit syscalls

PR sanitizer/59018
* sanitizer_common/sanitizer_linux.cc (internal_mmap,
internal_munmap, internal_open, internal_read, internal_write,
internal_stat, internal_lstat, internal_fstat, internal_readlink,
internal_unlink, internal_execve, NanoTime, BlockingMutex::Lock,
BlockingMutex::Unlock, internal_ptrace, internal_getdents,
internal_sigaltstack): Cast pointers to uptr for 64-bit syscalls.

From-SVN: r204480

10 years agoFix spacing.
Mike Stump [Wed, 6 Nov 2013 21:03:19 +0000 (21:03 +0000)]
Fix spacing.

From-SVN: r204479

10 years agosh.md (addsf3, [...]): Use fp_arith_reg_operand instead of arith_reg_operand.
Oleg Endo [Wed, 6 Nov 2013 20:37:45 +0000 (20:37 +0000)]
sh.md (addsf3, [...]): Use fp_arith_reg_operand instead of arith_reg_operand.

* 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

10 years agosh.md (adddi3): Remove empty constraints.
Oleg Endo [Wed, 6 Nov 2013 20:35:55 +0000 (20:35 +0000)]
sh.md (adddi3): Remove empty constraints.

* 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

10 years agogdbinit.in: Disable strict type checking.
Jeff Law [Wed, 6 Nov 2013 20:28:03 +0000 (13:28 -0700)]
gdbinit.in: Disable strict type checking.

       * gdbinit.in: Disable strict type checking.

Co-Authored-By: Tom Tromey <tromey@redhat.com>
From-SVN: r204474

10 years agore PR rtl-optimization/30807 (postreload bug (might be generic in trunk))
Oleg Endo [Wed, 6 Nov 2013 20:26:35 +0000 (20:26 +0000)]
re PR rtl-optimization/30807 (postreload bug (might be generic in trunk))

PR target/30807
* gcc.target/sh/torture/pr30807.c: New.

From-SVN: r204473

10 years agore PR c++/11006 ([CNI] ICE with use of __java_boolean)
Paolo Carlini [Wed, 6 Nov 2013 20:19:10 +0000 (20:19 +0000)]
re PR c++/11006 ([CNI] ICE with use of __java_boolean)

/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

10 years agolibgo: Update to October 24 version of master library.
Ian Lance Taylor [Wed, 6 Nov 2013 19:49:01 +0000 (19:49 +0000)]
libgo: Update to October 24 version of master library.

From-SVN: r204466

10 years agotree-pass.h (make_pass_live_range_shrinkage): New external.
Vladimir Makarov [Wed, 6 Nov 2013 19:46:39 +0000 (19:46 +0000)]
tree-pass.h (make_pass_live_range_shrinkage): New external.

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

10 years agore PR target/59021 (new vzeroupper instructions generated with -mavx)
Uros Bizjak [Wed, 6 Nov 2013 19:37:12 +0000 (20:37 +0100)]
re PR target/59021 (new vzeroupper instructions generated with -mavx)

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

10 years agogcc-defs.exp (dg-additional-files-options): Extend regsub for dg-additional-files...
James Lemke [Wed, 6 Nov 2013 18:10:34 +0000 (18:10 +0000)]
gcc-defs.exp (dg-additional-files-options): Extend regsub for 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

10 years agoc-opts.c (c_common_post_options): Set -ffp-contract=off in C standards modes.
Joseph Myers [Wed, 6 Nov 2013 16:52:47 +0000 (16:52 +0000)]
c-opts.c (c_common_post_options): Set -ffp-contract=off in C standards modes.

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

10 years agogo-lang.c (go_langhook_post_options): If -fisolate-erroneous-paths was turned on...
Ian Lance Taylor [Wed, 6 Nov 2013 15:14:28 +0000 (15:14 +0000)]
go-lang.c (go_langhook_post_options): If -fisolate-erroneous-paths was 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

10 years agore PR tree-optimization/58653 (wrong code (segfaults) at -O3 on x86_64-linux-gnu...
Richard Biener [Wed, 6 Nov 2013 15:00:16 +0000 (15:00 +0000)]
re PR tree-optimization/58653 (wrong code (segfaults) at -O3 on 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

10 years agofib.c: Reduced the iteration from 40 to 30.
Balaji V. Iyer [Wed, 6 Nov 2013 14:55:46 +0000 (14:55 +0000)]
fib.c: Reduced the iteration from 40 to 30.

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

10 years agotypo
Jason Merrill [Wed, 6 Nov 2013 14:37:46 +0000 (09:37 -0500)]
typo

From-SVN: r204456

10 years agogimple.h (block_in_transaction): Move to basic-block.h and rename.
Andrew MacLeod [Wed, 6 Nov 2013 13:11:14 +0000 (13:11 +0000)]
gimple.h (block_in_transaction): Move to basic-block.h and rename.

* 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

10 years agotree.c (drop_tree_overflow): New function.
Richard Biener [Wed, 6 Nov 2013 13:08:06 +0000 (13:08 +0000)]
tree.c (drop_tree_overflow): New function.

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

10 years agopreprocessor/58580 - preprocessor goes OOM with warning for zero literals
Dodji Seketeli [Wed, 6 Nov 2013 11:33:52 +0000 (11:33 +0000)]
preprocessor/58580 - preprocessor goes OOM with warning for zero literals

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

10 years agoFix formatting
Eric Botcazou [Wed, 6 Nov 2013 11:22:59 +0000 (11:22 +0000)]
Fix formatting

From-SVN: r204452

10 years agoi386.c (ix86_expand_prologue): Optimize stack checking for leaf functions without...
Eric Botcazou [Wed, 6 Nov 2013 10:55:13 +0000 (10:55 +0000)]
i386.c (ix86_expand_prologue): Optimize stack checking for leaf functions 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

10 years agoregex_automaton.h (_S_opcode_word_boundry): Rename to _S_opcode_word_boundary.
Jonathan Wakely [Wed, 6 Nov 2013 09:47:51 +0000 (09:47 +0000)]
regex_automaton.h (_S_opcode_word_boundry): Rename to _S_opcode_word_boundary.

* include/bits/regex_automaton.h (_S_opcode_word_boundry): Rename to
_S_opcode_word_boundary.
* include/bits/regex_automaton.tcc: Likewise.
* include/bits/regex_executor.h (__detail::_Executor::_M_word_boundry):
Rename to _M_word_boundary.
* include/bits/regex_executor.tcc: Likewise.

From-SVN: r204449

10 years ago[AArch64] Fix size of memory store for the vst<n>_lane intrinsics
James Greenhalgh [Wed, 6 Nov 2013 09:23:30 +0000 (09:23 +0000)]
[AArch64] Fix size of memory store for the vst<n>_lane intrinsics

gcc/
* config/aarch64/arm_neon.h
(__ST2_LANE_FUNC): Better model data size.
(__ST3_LANE_FUNC): Likewise.
(__ST4_LANE_FUNC): Likewise.

From-SVN: r204448

10 years agomsp430.h (TARGET_CPU_CPP_BUILTINS): Define the name returned by msp430_mcu_name.
Nick Clifton [Wed, 6 Nov 2013 09:03:35 +0000 (09:03 +0000)]
msp430.h (TARGET_CPU_CPP_BUILTINS): Define the name returned by msp430_mcu_name.

* 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

10 years agogcc.c (do_spec_1): Do not insert a space after a %* substitution unless...
Nick Clifton [Wed, 6 Nov 2013 08:52:57 +0000 (08:52 +0000)]
gcc.c (do_spec_1): Do not insert a space after a %* substitution unless...

* 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

10 years agosh-mem.cc (sh_expand_cmpnstr, [...]): Factorize probabilities...
Christian Bruel [Wed, 6 Nov 2013 08:49:15 +0000 (09:49 +0100)]
sh-mem.cc (sh_expand_cmpnstr, [...]): Factorize probabilities...

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

10 years agore PR middle-end/58970 (internal compiler error: in get_bit_range, at expr.c:4562)
Jakub Jelinek [Wed, 6 Nov 2013 07:48:50 +0000 (08:48 +0100)]
re PR middle-end/58970 (internal compiler error: in get_bit_range, at 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

10 years ago* gfortran.texi: Fix typo.
Francois-Xavier Coudert [Wed, 6 Nov 2013 07:04:12 +0000 (07:04 +0000)]
* gfortran.texi: Fix typo.

From-SVN: r204443

10 years agoscheduler improvements for BD architectures
Ganesh Gopalasubramanian [Wed, 6 Nov 2013 05:38:09 +0000 (05:38 +0000)]
scheduler improvements for BD architectures

From-SVN: r204442

10 years agors6000.c (rs6000_option_override_internal): Remove restriction against use of VSX...
Bill Schmidt [Wed, 6 Nov 2013 03:32:01 +0000 (03:32 +0000)]
rs6000.c (rs6000_option_override_internal): Remove restriction against use of VSX instructions when...

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

* config/rs6000/rs6000.c (rs6000_option_override_internal):
Remove restriction against use of VSX instructions when generating
code for little endian mode.

From-SVN: r204441

10 years agoaltivec.md (mulv4si3): Ensure we generate vmulouh for both big and little endian.
Bill Schmidt [Wed, 6 Nov 2013 03:29:44 +0000 (03:29 +0000)]
altivec.md (mulv4si3): Ensure we generate vmulouh for both big and little endian.

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

* config/rs6000/altivec.md (mulv4si3): Ensure we generate vmulouh
for both big and little endian.
(mulv8hi3): Swap input operands for merge high and merge low
instructions for little endian.

From-SVN: r204440

10 years agoaltivec.md (vec_widen_umult_even_v16qi): Change define_insn to define_expand that...
Bill Schmidt [Wed, 6 Nov 2013 03:27:20 +0000 (03:27 +0000)]
altivec.md (vec_widen_umult_even_v16qi): Change define_insn to define_expand that uses even patterns for big endian and...

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

* config/rs6000/altivec.md (vec_widen_umult_even_v16qi): Change
define_insn to define_expand that uses even patterns for big
endian and odd patterns for little endian.
(vec_widen_smult_even_v16qi): Likewise.
(vec_widen_umult_even_v8hi): Likewise.
(vec_widen_smult_even_v8hi): Likewise.
(vec_widen_umult_odd_v16qi): Likewise.
(vec_widen_smult_odd_v16qi): Likewise.
(vec_widen_umult_odd_v8hi): Likewise.
(vec_widen_smult_odd_v8hi): Likewise.
(altivec_vmuleub): New define_insn.
(altivec_vmuloub): Likewise.
(altivec_vmulesb): Likewise.
(altivec_vmulosb): Likewise.
(altivec_vmuleuh): Likewise.
(altivec_vmulouh): Likewise.
(altivec_vmulesh): Likewise.
(altivec_vmulosh): Likewise.

From-SVN: r204439

10 years agore PR regression/58985 (gcc.dg/pr57518.c scan-rtl-dump-not ira REG_EQUIV...)
Wei Mi [Wed, 6 Nov 2013 02:46:17 +0000 (02:46 +0000)]
re PR regression/58985 (gcc.dg/pr57518.c scan-rtl-dump-not ira REG_EQUIV...)

2013-11-05  Wei Mi  <wmi@google.com>

        PR regression/58985
        * testsuite/gcc.dg/pr57518.c: Add subreg in regexp pattern.

From-SVN: r204438

10 years ago* Makefile.in (mostlyclean): Remove c-family objects.
Mike Stump [Wed, 6 Nov 2013 02:34:02 +0000 (02:34 +0000)]
* Makefile.in (mostlyclean): Remove c-family objects.

From-SVN: r204437

10 years agosync.md (atomic_compare_and_swap<dwi>_doubleword): If possible, add .cfi directives...
Ian Lance Taylor [Wed, 6 Nov 2013 01:03:57 +0000 (01:03 +0000)]
sync.md (atomic_compare_and_swap<dwi>_doubleword): If possible, add .cfi directives to record change to bx.

* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
If possible, add .cfi directives to record change to bx.
* config/i386/i386.c (ix86_emit_cfi): New function.
* config/i386/i386-protos.h (ix86_emit_cfi): Declare.

From-SVN: r204433

10 years agoDaily bump.
GCC Administrator [Wed, 6 Nov 2013 00:17:05 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r204430

10 years agoN3655 C++1y TransformationTraits Redux
Jonathan Wakely [Tue, 5 Nov 2013 22:57:36 +0000 (22:57 +0000)]
N3655 C++1y TransformationTraits Redux

N3655 C++1y TransformationTraits Redux
* include/std/type_traits (remove_const_t, remove_volatile_t,
remove_cv_t, add_const_t, add_volatile_t, add_cv_t, remove_reference_t,
add_lvalue_reference_t, add_rvalue_reference_t, make_signed_t,
make_unsigned_t, remove_extent_t, remove_all_extents_t,
remove_pointer_t, add_pointer_t, aligned_storage_t, decay_t,
enable_if_t, conditional_t, common_type_t, underlying_type_t,
result_of_t): Define.
* doc/xml/manual/status_cxx2014.xml: Update.
* testsuite/20_util/add_lvalue_reference/requirements/typedefs-3.cc:
New.
* testsuite/20_util/add_rvalue_reference/requirements/typedefs-3.cc:
New.
* testsuite/20_util/common_type/requirements/typedefs-3.cc: New.
* testsuite/20_util/conditional/requirements/typedefs-2.cc: New.
* testsuite/20_util/decay/requirements/typedefs-2.cc: New.
* testsuite/20_util/enable_if/requirements/typedefs-2.cc: New.
* testsuite/20_util/make_signed/requirements/typedefs-3.cc: New.
* testsuite/20_util/make_unsigned/requirements/typedefs-3.cc: New.
* testsuite/20_util/remove_reference/requirements/typedefs.cc: New.
* testsuite/20_util/result_of/requirements/typedefs.cc: New.
* testsuite/20_util/underlying_type/requirements/typedefs-3.cc: New.
* testsuite/20_util/common_type/requirements/typedefs-2.cc: Change to
compile-only test.
* testsuite/20_util/decay/requirements/typedefs.cc: Likewise.
* testsuite/20_util/make_signed/requirements/typedefs-1.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: r204426

10 years agortlanal.c (tablejump_p): Expect a JUMP_TABLE_DATA to always follow immediately after...
Steven Bosscher [Tue, 5 Nov 2013 21:57:45 +0000 (21:57 +0000)]
rtlanal.c (tablejump_p): Expect a JUMP_TABLE_DATA to always follow immediately after a label for a...

* rtlanal.c (tablejump_p): Expect a JUMP_TABLE_DATA to always follow
immediately after a label for a tablejump pattern.

* config/arm/arm.c (is_jump_table): Remove.
(create_fix_barrier): Use tablejump_p instead.
(arm_reorg): Likewise.
(thumb1_output_casesi): Expect JUMP_TABLE_DATA to always be NEXT_INSN.
(thumb2_output_casesi): Likewise.
* config/aarch64/aarch64.c (aarch64_output_casesi): Likewise.
* config/sh/sh.md (casesi_worker_1, casesi_worker_2,
casesi_shift_media, casesi_load_media): Likewise.
* config/iq2000/iq2000.md: Likewise (in anonymous define_insn).
* config/microblaze/microblaze.md: Likewise.

From-SVN: r204424

10 years agoc.opt (-Wdate-time): New option
Tobias Burnus [Tue, 5 Nov 2013 20:27:22 +0000 (21:27 +0100)]
c.opt (-Wdate-time): New option

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

gcc/c-family/
        * c.opt (-Wdate-time): New option
        * c-opts.c (sanitize_cpp_opts): Pass on to libcpp.

gcc/
        * doc/invoke.texi (-Wdate-time): Document.

gcc/fortran
        * lang.opt (-Wdate-time): New option
        * cpp.c (gfc_cpp_option_data): Add warn_date_time.
        (gfc_cpp_init_options, gfc_cpp_handle_option,
        gfc_cpp_post_options): Handle it and pass on to libcpp.

gcc/testsuite/
        * g++.dg/warn/wdate-time.C: New.
        * gcc.dg/wdate-time.c: New.
        * gfortran.dg/wdate-time.F90: New.

libcpp/
        * include/cpplib.h (CPP_W_DATE_TIME): Added.
        (cpp_options): Add warn_date_time.
        * init.c (cpp_create_reader): Init it.
        * macro.c (_cpp_builtin_macro_text): Warn when
        __DATE__/__TIME__/__TIMESTAMP__ is used.

From-SVN: r204420

10 years agore PR fortran/58989 (internal compiler error when using reshape function)
Steven G. Kargl [Tue, 5 Nov 2013 20:02:43 +0000 (20:02 +0000)]
re PR fortran/58989 (internal compiler error when using reshape function)

2013-11-05  Steven G. Kargl <kargl@gcc.gnu.org>

PR fortran/58989
* check.c (gfc_check_reshape): ensure that shape is a constant
expression.

2013-11-05  Steven G. Kargl <kargl@gcc.gnu.org>

PR fortran/58989
* gfortran.dg/reshape_6.f90: New test.

From-SVN: r204419

10 years agostatus_cxx2011.xml: Document aligned_union as missing.
Jonathan Wakely [Tue, 5 Nov 2013 19:59:21 +0000 (19:59 +0000)]
status_cxx2011.xml: Document aligned_union as missing.

* doc/xml/manual/status_cxx2011.xml: Document aligned_union as
missing.

From-SVN: r204416

10 years agodouble-int.c (lshift_double, [...]): Remove SHIFT_COUNT_TRUNCATED handling.
Richard Sandiford [Tue, 5 Nov 2013 19:58:12 +0000 (19:58 +0000)]
double-int.c (lshift_double, [...]): Remove SHIFT_COUNT_TRUNCATED handling.

gcc/
* double-int.c (lshift_double, rshift_double): Remove
SHIFT_COUNT_TRUNCATED handling.

From-SVN: r204415

10 years agoMakefile.in (OBJS): Add gimple-ssa-isolate-paths.o
Jeff Law [Tue, 5 Nov 2013 19:47:44 +0000 (12:47 -0700)]
Makefile.in (OBJS): Add gimple-ssa-isolate-paths.o

* Makefile.in (OBJS): Add gimple-ssa-isolate-paths.o
* common.opt (-fisolate-erroneous-paths): Add option and
documentation.
* gimple-ssa-isolate-paths.c: New file.
* gimple.c (check_loadstore): New function.
(infer_nonnull_range): Moved into gimple.c from tree-vrp.c
Verify OP is in the argument list and the argument corresponding
to OP is a pointer type.  Use operand_equal_p rather than
pointer equality when testing if OP is on the nonnull list.
Use check_loadstore rather than count_ptr_derefs.  Handle
GIMPLE_RETURN statements.
* tree-vrp.c (infer_nonnull_range): Remove.
* gimple.h (infer_nonnull_range): Declare.
* opts.c (default_options_table): Add
* OPT_fisolate_erroneous_paths.
* passes.def: Add pass_isolate_erroneous_paths.
* timevar.def (TV_ISOLATE_ERRONEOUS_PATHS): New timevar.
* tree-pass.h (make_pass_isolate_erroneous_paths): Declare.
* tree-ssa.c (struct count_ptr_d): Remove.
(count_ptr_derefs, count_uses_and_derefs): Remove.
* tree-ssa.h (count_uses_and_derefs): Remove.

* gcc.dg/pr38984.c: Add -fno-isolate-erroneous-paths.
* gcc.dg/tree-ssa/isolate-1.c: New test.
* gcc.dg/tree-ssa/isolate-2.c: New test.
* gcc.dg/tree-ssa/isolate-3.c: New test.
* gcc.dg/tree-ssa/isolate-4.c: New test.

From-SVN: r204414

10 years agore PR rtl-optimization/58997 (ICE on valid code at -O3 on x86_64-linux-gnu (affecting...
Jakub Jelinek [Tue, 5 Nov 2013 19:37:51 +0000 (20:37 +0100)]
re PR rtl-optimization/58997 (ICE on valid code at -O3 on x86_64-linux-gnu (affecting gcc trunk and 4.8.2))

PR rtl-optimization/58997
* loop-iv.c (iv_subreg): For IV_UNKNOWN_EXTEND, expect
get_iv_value to be in iv->mode rather than iv->extend_mode.
(iv_extend): Likewise.  Otherwise, if iv->extend != extend,
use lowpart_subreg on get_iv_value before calling simplify_gen_unary.
* loop-unswitch.c (may_unswitch_on): Make sure op[i] is in the right
mode.

* gcc.c-torture/compile/pr58997.c: New test.

From-SVN: r204413

10 years agogimple.h: Move some prototypes to gimple-expr.h and add to include list.
Andrew MacLeod [Tue, 5 Nov 2013 19:26:07 +0000 (19:26 +0000)]
gimple.h: Move some prototypes to gimple-expr.h and add to include list.

* gimple.h: Move some prototypes to gimple-expr.h and add to include
list.
(extract_ops_from_tree, gimple_call_addr_fndecl, is_gimple_reg_type):
Move to gimple-expr.h.
* gimple-expr.h: New file.  Relocate some prototypes from gimple.h.
(types_compatible_p, is_gimple_reg_type, is_gimple_variable,
is_gimple_id, virtual_operand_p, is_gimple_addressable,
is_gimple_constant, extract_ops_from_tree, gimple_call_addr_fndecl):
Relocate here.
* gimple.c (extract_ops_from_tree_1, gimple_cond_get_ops_from_tree,
gimple_set_body, gimple_body, gimple_has_body_p, is_gimple_lvalue,
is_gimple_condexpr, is_gimple_addressable, is_gimple_constant,
is_gimple_address, is_gimple_invariant_address,
is_gimple_ip_invariant_address, is_gimple_min_invariant,
is_gimple_ip_invariant, is_gimple_variable, is_gimple_id,
virtual_operand_p, is_gimple_reg, is_gimple_val, is_gimple_asm_val,
is_gimple_min_lval, is_gimple_call_addr, is_gimple_mem_ref_addr,
gimple_decl_printable_name, useless_type_conversion_p,
types_compatible_p, gimple_can_coalesce_p, copy_var_decl): Move to
gimple-expr.[ch].
* gimple-expr.c: New File.
(useless_type_conversion_p, gimple_set_body, gimple_body,
gimple_has_body_p, gimple_decl_printable_name, copy_var_decl,
gimple_can_coalesce_p, extract_ops_from_tree_1,
gimple_cond_get_ops_from_tree, is_gimple_lvalue, is_gimple_condexpr,
is_gimple_address, is_gimple_invariant_address,
is_gimple_ip_invariant_address, is_gimple_min_invariant,
is_gimple_ip_invariant, is_gimple_reg, is_gimple_val,
is_gimple_asm_val, is_gimple_min_lval, is_gimple_call_addr,
is_gimple_mem_ref_addr): Relocate here.
* Makefile.in (OBJS): Add gimple-expr.o.

From-SVN: r204412

10 years agoSupport empty structs in gengtype
David Malcolm [Tue, 5 Nov 2013 18:55:22 +0000 (18:55 +0000)]
Support empty structs in gengtype

gcc/
* gengtype-parse.c (struct_field_seq): Support empty structs.

From-SVN: r204411

10 years agot-rtems (MULTILIB_MATCHES): Fix option typos.
Uros Bizjak [Tue, 5 Nov 2013 18:22:12 +0000 (19:22 +0100)]
t-rtems (MULTILIB_MATCHES): Fix option typos.

* config/i386/t-rtems (MULTILIB_MATCHES): Fix option typos.

From-SVN: r204407

10 years agore PR c++/58868 (ICE: in count_type_elements, at expr.c:5495 with -std=gnu++0x)
Jason Merrill [Tue, 5 Nov 2013 18:03:03 +0000 (13:03 -0500)]
re PR c++/58868 (ICE: in count_type_elements, at expr.c:5495 with -std=gnu++0x)

PR c++/58868
* decl.c (check_initializer): Don't use build_vec_init for arrays
of trivial type.

From-SVN: r204406

10 years agoi386-c.c (ix86_target_macros): Define _SOFT_FLOAT for !TARGET_80387.
Uros Bizjak [Tue, 5 Nov 2013 16:08:30 +0000 (17:08 +0100)]
i386-c.c (ix86_target_macros): Define _SOFT_FLOAT for !TARGET_80387.

gcc/

* config/i386/i386-c.c (ix86_target_macros): Define _SOFT_FLOAT
for !TARGET_80387.
* config/i386/rtemself.h (TARGET_OS_CPP_BUILTINS): Do not define
_SOFT_FLOAT here.
(LONG_DOUBLE_TYPE_SIZE): New define.
(LIBGCC2_LONG_DOUBLE_TYPE_SIZE): Ditto.

libgcc/

* config/i386/32/sfp-machine.h (_FP_MUL_MEAT_S): Define.
(_FP_MUL_MEAT_D): Ditto.
(_FP_DIV_MEAT_S): Ditto.
(_FP_DIV_MEAT_D): Ditto.
* config.host (i[34567]86-*-rtems*): Remove i386/t-softfp, add
t-softfp-sfdf and t-softfp to tmake_file.

M    gcc/config/i386/i386-c.c
M    gcc/config/i386/rtemself.h
M    gcc/ChangeLog
M    libgcc/ChangeLog
M    libgcc/config.host
M    libgcc/config/i386/32/sfp-machine.h

From-SVN: r204404

10 years agooptional: Use __and_<> and __not_<> in conditions.
Jonathan Wakely [Tue, 5 Nov 2013 15:24:08 +0000 (15:24 +0000)]
optional: Use __and_<> and __not_<> in conditions.

2013-11-05  Jonathan Wakely  <jwakely.gcc@gmail.com>
    Paolo Carlini  <paolo.carlini@oracle.com>

* include/experimental/optional: Use __and_<> and __not_<> in
conditions. Style fixes.
(__constexpr_addressof, swap): Make inline.
* testsuite/experimental/optional/cons/copy.cc: Adjust constants for
32-bit targets.
* testsuite/experimental/optional/cons/move.cc: Likewise.
* testsuite/experimental/optional/cons/value.cc: Likewise.
* testsuite/experimental/optional/constexpr/cons/value.cc: Likewise.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r204402

10 years agore PR c++/58724 (ICE with attribute [[gnu::visibility("default")]] on namespace)
Paolo Carlini [Tue, 5 Nov 2013 15:22:36 +0000 (15:22 +0000)]
re PR c++/58724 (ICE with attribute [[gnu::visibility("default")]] on namespace)

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

PR c++/58724
* doc/extend.texi [visibility ("visibility_type")]: Add example
about visibility attribute on namespace declaration.

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

PR c++/58724
* name-lookup.c (handle_namespace_attrs): Use get_attribute_name.

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

PR c++/58724
* g++.dg/cpp0x/gen-attrs-56.C: New.

From-SVN: r204401

10 years agore PR ipa/58492 (ICE: verify_flow_info failed)
Richard Biener [Tue, 5 Nov 2013 15:09:40 +0000 (15:09 +0000)]
re PR ipa/58492 (ICE: verify_flow_info failed)

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

PR ipa/58492
* passes.def (all_passes): Start with pass_fixup_cfg again.

* gcc.dg/ipa/pr58492.c: New testcase.

From-SVN: r204399

10 years agore PR tree-optimization/58955 (wrong code at -O3 on x86_64-linux-gnu)
Richard Biener [Tue, 5 Nov 2013 15:08:43 +0000 (15:08 +0000)]
re PR tree-optimization/58955 (wrong code at -O3 on x86_64-linux-gnu)

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

PR tree-optimization/58955
* tree-loop-distribution.c (pg_add_dependence_edges): Fix
edge direction.

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

From-SVN: r204398

10 years agoDisable libcilkrts when C++ is not used.
Balaji V. Iyer [Tue, 5 Nov 2013 14:43:37 +0000 (14:43 +0000)]
Disable libcilkrts when C++ is not used.

2013-11-04  Balaji V. Iyer  <balaji.v.iyer@intel.com>

        * configure.ac: Added libcilkrts to noconfig list when C++ is not
        supported.
        * configure: Regenerated.

From-SVN: r204396

10 years agovector.md (vec_pack_sfix_trunc_v2df): Adjust for little endian.
Bill Schmidt [Tue, 5 Nov 2013 14:27:17 +0000 (14:27 +0000)]
vector.md (vec_pack_sfix_trunc_v2df): Adjust for little endian.

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

* config/rs6000/vector.md (vec_pack_sfix_trunc_v2df): Adjust for
little endian.
(vec_pack_ufix_trunc_v2df): Likewise.

From-SVN: r204395

10 years agoDon't use mode wider than Pmode for size in movmem/setmem
H.J. Lu [Tue, 5 Nov 2013 14:17:33 +0000 (14:17 +0000)]
Don't use mode wider than Pmode for size in movmem/setmem

gcc/

PR middle-end/58981
* doc/md.texi (@code{movmem@var{m}}): Specify Pmode as mode of
pattern, instead of word_mode.

* expr.c (emit_block_move_via_movmem): Don't use mode wider than
Pmode for size.
(set_storage_via_setmem): Likewise.

gcc/testsuite/

PR middle-end/58981
* gcc.dg/pr58981.c: New test.

From-SVN: r204394

10 years agotree-outof-ssa.c (queue_phi_copy_p): Combine phi_ssa_name_p from gimple.h and the...
Andrew MacLeod [Tue, 5 Nov 2013 14:13:56 +0000 (14:13 +0000)]
tree-outof-ssa.c (queue_phi_copy_p): Combine phi_ssa_name_p from gimple.h and the rest of the condition in...

2013-11-05  Andrew MacLeod  <amacleod@redhat.com>

* tree-outof-ssa.c (queue_phi_copy_p): Combine phi_ssa_name_p from
gimple.h and the rest of the condition in eliminate_build.
(eliminate_build): Call new routine.
* gimple.h (phi_ssa_name_p): Delete.

From-SVN: r204393

10 years agodon't try and free what must be a null vector when reserving 0 elements
Trevor Saunders [Tue, 5 Nov 2013 13:51:32 +0000 (13:51 +0000)]
don't try and free what must be a null vector when reserving 0 elements
in va_heap::reserve

2013-11-05  Trevor Saunders  <tsaunders@mozilla.com>

* vec.c (vec_prefix::calculate_allocation): Don't try to handle the
case of no prefix and reserving zero slots, because when that's the
case we'll never get here.
* vec.h (va_heap::reserve): Don't try and handle
vec_prefix::calculate_allocation returning zero because that should
never happen.

From-SVN: r204392

10 years agore PR middle-end/58941 (value modification on zero-length array optimized away)
Richard Biener [Tue, 5 Nov 2013 13:24:13 +0000 (13:24 +0000)]
re PR middle-end/58941 (value modification on zero-length array optimized away)

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

PR middle-end/58941
* tree-dfa.c (get_ref_base_and_extent): Merge common code
in MEM_REF and TARGET_MEM_REF handling.  Make sure to
process trailing array detection before diving into the
view-converted object (and possibly apply some extra offset).

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

From-SVN: r204391

10 years agoi386.c (ix86_float_exceptions_rounding_supported_p): New function.
Joseph Myers [Tue, 5 Nov 2013 13:21:36 +0000 (13:21 +0000)]
i386.c (ix86_float_exceptions_rounding_supported_p): New function.

* config/i386/i386.c (ix86_float_exceptions_rounding_supported_p):
New function.
(TARGET_FLOAT_EXCEPTIONS_ROUNDING_SUPPORTED_P): Define.

c-family:
* c-cppbuiltin.c (cpp_iec_559_value): Test
flag_excess_precision_cmdline not flag_excess_precision.

From-SVN: r204390

10 years agore PR tree-optimization/58958 (Wrong aliasing info for variable index)
Marc Glisse [Tue, 5 Nov 2013 13:01:06 +0000 (14:01 +0100)]
re PR tree-optimization/58958 (Wrong aliasing info for variable index)

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

PR tree-optimization/58958
gcc/
* tree-ssa-alias.c (ao_ref_init_from_ptr_and_size): Use
get_addr_base_and_unit_offset instead of get_ref_base_and_extent.

gcc/testsuite/
* gcc.dg/tree-ssa/pr58958.c: New file.

From-SVN: r204389

10 years agotree-ssa-alias.h (ranges_overlap_p): Handle negative offsets.
Marc Glisse [Tue, 5 Nov 2013 12:38:00 +0000 (13:38 +0100)]
tree-ssa-alias.h (ranges_overlap_p): Handle negative offsets.

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

gcc/
* tree-ssa-alias.h (ranges_overlap_p): Handle negative offsets.
* tree-ssa-alias.c (ao_ref_init_from_ptr_and_size): Likewise.

gcc/testsuite/
* gcc.dg/tree-ssa/alias-26.c: New file.

From-SVN: r204388

10 years agore PR tree-optimization/58984 (wrong code at -Os and above on x86_64-linux-gnu in...
Jakub Jelinek [Tue, 5 Nov 2013 12:05:37 +0000 (13:05 +0100)]
re PR tree-optimization/58984 (wrong code at -Os and above on x86_64-linux-gnu in 64-bit mode)

PR tree-optimization/58984
* ipa-prop.c (ipa_load_from_parm_agg_1): Add SIZE_P argument,
set *SIZE_P if non-NULL on success.
(ipa_load_from_parm_agg, ipa_analyze_indirect_call_uses): Adjust
callers.
(ipcp_transform_function): Likewise.  Punt if size of access
is different from TYPE_SIZE on v->value's type.

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

From-SVN: r204385

10 years ago* g++.dg/ext/sync-4.C: Require sync_long_long_runtime support.
Andreas Schwab [Tue, 5 Nov 2013 10:02:48 +0000 (10:02 +0000)]
* g++.dg/ext/sync-4.C: Require sync_long_long_runtime support.

From-SVN: r204383

10 years agoinvoke.texi (-fopenmp-simd): Document new option.
Tobias Burnus [Tue, 5 Nov 2013 07:29:47 +0000 (08:29 +0100)]
invoke.texi (-fopenmp-simd): Document new option.

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

gcc/
        * doc/invoke.texi (-fopenmp-simd): Document new option.
        * gimplify.c (gimplify_body): Accept -fopenmp-simd.
        * omp-low.c (execute_expand_omp, execute_lower_omp): Ditto.
        * tree.c (attribute_value_equal): Ditto.

gcc/fortran/
        * lang.opt (fopenmp-simd): New option.
        * gfortran.h (gfc_option_t): Add gfc_flag_openmp_simd.
        * options.c (gfc_handle_option): Handle it.

gcc/c-family/
        * c.opt (fopenmp-simd): New option.
        * c-pragma.c (omp_pragmas): Move pragmas which can contain simd
        * to ...
        (omp_pragmas): ... this new struct.
        (c_pp_lookup_pragma): Also walk omp_pragmas.
        (init_pragma): Init pragmas for -fopenmp-simd.

gcc/c
        * c-parser.c (c_parser_omp_for, c_parser_omp_parallel,
        c_parser_omp_distribute, c_parser_omp_teams,
        c_parser_omp_target, c_parser_omp_declare): Handle
        -fopenmp-simd.

gcc/cp
        * parser.c (cp_parser_omp_for, cp_parser_omp_parallel,
        cp_parser_omp_distribute, cp_parser_omp_teams,
cp_parser_omp_target,
        cp_parser_omp_declare): Handle
        -fopenmp-simd.

gcc/testsuite/
        * g++.dg/gomp/openmp-simd-1.C: New.
        * g++.dg/gomp/openmp-simd-2.C: New.
        * gcc.dg/gomp/openmp-simd-1.c: New.
        * gcc.dg/gomp/openmp-simd-2.c: New.

From-SVN: r204382

10 years agofix for PR bootstrap/58951 +2013-11-04 Balaji V.
Balaji V. Iyer [Tue, 5 Nov 2013 04:12:53 +0000 (04:12 +0000)]
fix for PR bootstrap/58951 +2013-11-04 Balaji V.

fix for PR bootstrap/58951
+2013-11-04  Balaji V. Iyer  <balaji.v.iyer@intel.com>
+
+       PR bootstrap/58951
+       * Makefile.am (AM_LDFLAGS): Removed -ldl flag.
+       * Makefile.in: Regenerate.
+

From-SVN: r204381

10 years agosuperblock.c: Require scheduling support.
Senthil Kumar Selvaraj [Tue, 5 Nov 2013 00:19:43 +0000 (00:19 +0000)]
superblock.c: Require scheduling support.

2013-11-04  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>

* gcc.dg/superblock.c: Require scheduling support.

From-SVN: r204376

10 years agoDaily bump.
GCC Administrator [Tue, 5 Nov 2013 00:16:26 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r204375

10 years ago* f95-lang.c (ATTR_LEAF_LIST): Define.
Ian Lance Taylor [Mon, 4 Nov 2013 22:08:56 +0000 (22:08 +0000)]
* f95-lang.c (ATTR_LEAF_LIST): Define.

From-SVN: r204372

10 years agosched-rgn.c (add_branch_dependences): Keep insns in a SCHED_GROUP at the end of BB...
Wei Mi [Mon, 4 Nov 2013 21:45:05 +0000 (21:45 +0000)]
sched-rgn.c (add_branch_dependences): Keep insns in a SCHED_GROUP at the end of BB to remain their location.

2013-11-04  Wei Mi  <wmi@google.com>

        * sched-rgn.c (add_branch_dependences): Keep insns in
        a SCHED_GROUP at the end of BB to remain their location.

From-SVN: r204371

10 years agoi386.c (memory_address_length): Extract a part of code to rip_relative_addr_p.
Wei Mi [Mon, 4 Nov 2013 21:41:48 +0000 (21:41 +0000)]
i386.c (memory_address_length): Extract a part of code to rip_relative_addr_p.

2013-11-04  Wei Mi  <wmi@google.com>

* gcc/config/i386/i386.c (memory_address_length): Extract a part
of code to rip_relative_addr_p.
(rip_relative_addr_p): New Function.
(ix86_macro_fusion_p): Ditto.
(ix86_macro_fusion_pair_p): Ditto.
* gcc/config/i386/i386.h: Add new tune features about macro-fusion.
* gcc/config/i386/x86-tune.def (DEF_TUNE): Ditto.
* gcc/doc/tm.texi: Generated.
* gcc/doc/tm.texi.in: Ditto.
* gcc/haifa-sched.c (try_group_insn): New Function.
(group_insns_for_macro_fusion): Ditto.
(sched_init): Call group_insns_for_macro_fusion.
* gcc/target.def: Add two hooks: macro_fusion_p and
macro_fusion_pair_p.

From-SVN: r204369

10 years agolibsanitizer merge from upstream r191666
Kostya Serebryany [Mon, 4 Nov 2013 21:33:31 +0000 (21:33 +0000)]
libsanitizer merge from upstream r191666

This may break gcc-asan on Mac, will follow up separately.

From-SVN: r204368

10 years agoi386-c.c (ix86_target_macros_internal): Separate PROCESSOR_COREI7_AVX out from PROCES...
Wei Mi [Mon, 4 Nov 2013 21:31:07 +0000 (21:31 +0000)]
i386-c.c (ix86_target_macros_internal): Separate PROCESSOR_COREI7_AVX out from PROCESSOR_COREI7.

2013-11-04  Wei Mi  <wmi@google.com>

        * gcc/config/i386/i386-c.c (ix86_target_macros_internal): Separate
        PROCESSOR_COREI7_AVX out from PROCESSOR_COREI7.
        * gcc/config/i386/i386.c (ix86_option_override_internal): Ditto.
        (ix86_issue_rate): Ditto.
        (ix86_adjust_cost): Ditto.
        (ia32_multipass_dfa_lookahead): Ditto.
        (ix86_sched_init_global): Ditto.
        (get_builtin_code_for_version): Ditto.
        * gcc/config/i386/i386.h (enum target_cpu_default): Ditto.
        (enum processor_type): Ditto.
        * gcc/config/i386/x86-tune.def (DEF_TUNE): Ditto.

From-SVN: r204367

10 years agore PR rtl-optimization/58967 (Powerpc -mlra cannot compile quadrature_lib.cc in Spec2...
Vladimir Makarov [Mon, 4 Nov 2013 21:09:12 +0000 (21:09 +0000)]
re PR rtl-optimization/58967 (Powerpc -mlra cannot compile quadrature_lib.cc in Spec2006 with -O3 -ffast-math -funroll-loops -m32)

2013-11-04  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/58967
* config/rs6000/rs6000.c (legitimate_lo_sum_address_p): Remove
!lra_in_progress for mode sizes bigger word.

From-SVN: r204365

10 years agoaltivec.md (vec_widen_umult_hi_v16qi): Swap arguments to merge instruction for little...
Bill Schmidt [Mon, 4 Nov 2013 20:44:14 +0000 (20:44 +0000)]
altivec.md (vec_widen_umult_hi_v16qi): Swap arguments to merge instruction for little endian.

2013-11-04  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/altivec.md (vec_widen_umult_hi_v16qi): Swap
arguments to merge instruction for little endian.
(vec_widen_umult_lo_v16qi): Likewise.
(vec_widen_smult_hi_v16qi): Likewise.
(vec_widen_smult_lo_v16qi): Likewise.
(vec_widen_umult_hi_v8hi): Likewise.
(vec_widen_umult_lo_v8hi): Likewise.
(vec_widen_smult_hi_v8hi): Likewise.
(vec_widen_smult_lo_v8hi): Likewise.

From-SVN: r204363

10 years agobuiltins.def (ATTR_NOTHROWCALL_LEAF_LIST): Define.
Ian Lance Taylor [Mon, 4 Nov 2013 20:29:36 +0000 (20:29 +0000)]
builtins.def (ATTR_NOTHROWCALL_LEAF_LIST): Define.

gcc/:
* builtins.def (ATTR_NOTHROWCALL_LEAF_LIST): Define.
* sync-builtins.def: Use ATTR_NOTHROWCALL_LEAF_LIST for all sync
builtins that take pointers.
* lto-opts.c (lto_write_options): Write -fnon-call-exceptions
if set.
* lto-wrapper.c (merge_and_complain): Collect
OPT_fnon_call_exceptions.
(run_gcc): Pass -fnon-call-exceptions.
gcc/testsuite/:
* g++.dg/ext/sync-4.C: New test.

From-SVN: r204360