Commit Graph

126494 Commits

Author SHA1 Message Date
Thomas Schwinge
76c79d3307 Makefile.in: Regenerate.
* Makefile.in: Regenerate.

Follow-up to r204173.

From-SVN: r204536
2013-11-07 19:09:31 +01:00
Joern Rennecke
9bf218f918 arc.c (arc_ifcvt): Use commutativity, e.g.: reg_a := reg_b + reg_a ==> reg_a := 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-07 17:37:11 +00:00
Jeff Law
89d3d605c3 invoke.texi (-fisolate-erroneous-paths): Document.
* 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-07 10:05:18 -07:00
Thomas Schwinge
0d40ed4302 sourcebuild.texi (Top Level): GNU ld can use linker plugins, too.
gcc/
	* doc/sourcebuild.texi (Top Level) <lto-plugin>: GNU ld can use
	linker plugins, too.

From-SVN: r204521
2013-11-07 16:08:22 +01:00
Thomas Schwinge
32e6ed9287 Makefile.tpl: Fix typo.
* Makefile.tpl: Fix typo.
	* Makefile.in: Regenerate.

From-SVN: r204520
2013-11-07 16:08:10 +01:00
Thomas Schwinge
1707a5de88 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
2013-11-07 16:07:58 +01:00
Thomas Schwinge
70f05c4362 Add missing include.
libgomp/
	* libgomp_g.h: Include <stddef.h> for size_t.

From-SVN: r204518
2013-11-07 16:07:46 +01:00
Thomas Schwinge
de14871c88 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
2013-11-07 16:07:34 +01:00
Jakub Jelinek
7190fdc190 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
2013-11-07 15:31:00 +01:00
Jakub Jelinek
d23c0a32ab 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
2013-11-07 15:28:57 +01:00
Paolo Carlini
fe79fc067e 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
2013-11-07 14:26:17 +00:00
H.J. Lu
cb9426fc9a 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
2013-11-07 05:59:22 -08:00
Yury Gribov
66aa538fc8 Fixed typo in ChangeLog.
From-SVN: r204509
2013-11-07 12:55:42 +00:00
Yury Gribov
77e83307fe 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
2013-11-07 12:04:45 +00:00
Kyrylo Tkachov
acf67b8e7c 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
2013-11-07 11:44:04 +00:00
Richard Biener
846abd0d6d 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
2013-11-07 11:33:03 +00:00
Richard Biener
b0a9217cca 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
2013-11-07 11:28:42 +00:00
H.J. Lu
d9befd1252 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
2013-11-07 01:58:05 -08:00
Bin Cheng
1a1a55342c 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
2013-11-07 08:34:02 +00:00
Bin Cheng
be8c1c8cc0 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
2013-11-07 08:12:34 +00:00
GCC Administrator
196bb3237d Daily bump.
From-SVN: r204496
2013-11-07 00:17:04 +00:00
DJ Delorie
0c249d4b1d 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
2013-11-06 18:33:33 -05:00
Dodji Seketeli
7f4d640cd9 Revert "preprocessor/58580 - preprocessor goes OOM with warning for zero literals"
This reverts commit fc3eff8854861fcd70d33d26095b17fe456fae31.

From-SVN: r204490
2013-11-06 23:51:36 +01:00
Joseph Myers
9954c743b9 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
2013-11-06 22:46:39 +00:00
Oleg Endo
3c40bae1c5 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
2013-11-06 22:33:01 +00:00
Tobias Burnus
5157b91ea3 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
2013-11-06 23:28:08 +01:00
H.J. Lu
e276866fd7 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
2013-11-06 13:52:29 -08:00
H.J. Lu
f5c36cfc4b 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
2013-11-06 13:51:41 -08:00
H.J. Lu
e45de14ec7 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
2013-11-06 13:50:42 -08:00
H.J. Lu
38693e39b6 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
2013-11-06 13:49:36 -08:00
Mike Stump
e2baa574d5 Fix spacing.
From-SVN: r204479
2013-11-06 21:03:19 +00:00
Oleg Endo
245eb55221 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
2013-11-06 20:37:45 +00:00
Oleg Endo
5b67c358c1 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
2013-11-06 20:35:55 +00:00
Jeff Law
2a9369590c gdbinit.in: Disable strict type checking.
* gdbinit.in: Disable strict type checking.

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

From-SVN: r204474
2013-11-06 13:28:03 -07:00
Oleg Endo
73afb55da8 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
2013-11-06 20:26:35 +00:00
Paolo Carlini
71b71b96f0 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
2013-11-06 20:19:10 +00:00
Ian Lance Taylor
f038dae646 libgo: Update to October 24 version of master library.
From-SVN: r204466
2013-11-06 19:49:01 +00:00
Vladimir Makarov
f20f261304 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
2013-11-06 19:46:39 +00:00
Uros Bizjak
992147ee6b 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
2013-11-06 20:37:12 +01:00
James Lemke
b6e168f33a 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
2013-11-06 18:10:34 +00:00
Joseph Myers
6dbe09581a 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
2013-11-06 16:52:47 +00:00
Ian Lance Taylor
1d2217b6ab 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
2013-11-06 15:14:28 +00:00
Richard Biener
9f2b860bed 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
2013-11-06 15:00:16 +00:00
Balaji V. Iyer
28d31e4074 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
2013-11-06 06:55:46 -08:00
Jason Merrill
3e89949e1b typo
From-SVN: r204456
2013-11-06 09:37:46 -05:00
Andrew MacLeod
7783daa76c 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
2013-11-06 13:11:14 +00:00
Richard Biener
3f5c390ddd 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
2013-11-06 13:08:06 +00:00
Dodji Seketeli
9789a91276 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
2013-11-06 12:33:52 +01:00
Eric Botcazou
6dce150ccf Fix formatting
From-SVN: r204452
2013-11-06 11:22:59 +00:00
Eric Botcazou
0dca9cd86c 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
2013-11-06 10:55:13 +00:00