Commit Graph

133987 Commits

Author SHA1 Message Date
Jan Hubicka
fe8dd12e20 re PR bootstrap/63573 (libgo: ICE building libgo on powerpc-linux-gnu)
PR bootstrap/63573
	* calls.c (initialize_argument_information): When emitting thunk call
	use original memory placement of the argument.

From-SVN: r217307
2014-11-10 19:14:17 +00:00
Andreas Tobler
be8118c57b fshort-wchar.c: Use arm_eabi instead of arm*-*-*eabi*.
2014-11-10  Andreas Tobler  <andreast@gcc.gnu.org>

    * gcc.dg/fshort-wchar.c: Use arm_eabi instead of arm*-*-*eabi*.
    * gcc.target/arm/aapcs/neon-vect1.c: Likewise.
    * gcc.target/arm/aapcs/neon-vect2.c: Likewise.
    * gcc.target/arm/aapcs/neon-vect3.c: Likewise.
    * gcc.target/arm/aapcs/neon-vect4.c: Likewise.
    * gcc.target/arm/aapcs/neon-vect5.c: Likewise.
    * gcc.target/arm/aapcs/neon-vect6.c: Likewise.
    * gcc.target/arm/aapcs/neon-vect7.c: Likewise.
    * gcc.target/arm/aapcs/neon-vect8.c: Likewise.
    * gcc.target/arm/aapcs/vfp1.c: Likewise.
    * gcc.target/arm/aapcs/vfp2.c: Likewise.
    * gcc.target/arm/aapcs/vfp3.c: Likewise.
    * gcc.target/arm/aapcs/vfp4.c: Likewise.
    * gcc.target/arm/aapcs/vfp5.c: Likewise.
    * gcc.target/arm/aapcs/vfp6.c: Likewise.
    * gcc.target/arm/aapcs/vfp7.c: Likewise.
    * gcc.target/arm/aapcs/vfp8.c: Likewise.
    * gcc.target/arm/aapcs/vfp9.c: Likewise.
    * gcc.target/arm/aapcs/vfp10.c: Likewise.
    * gcc.target/arm/aapcs/vfp11.c: Likewise.
    * gcc.target/arm/aapcs/vfp12.c: Likewise.
    * gcc.target/arm/aapcs/vfp13.c: Likewise.
    * gcc.target/arm/aapcs/vfp14.c: Likewise.
    * gcc.target/arm/aapcs/vfp15.c: Likewise.
    * gcc.target/arm/aapcs/vfp16.c: Likewise.
    * gcc.target/arm/aapcs/vfp17.c: Likewise.

From-SVN: r217306
2014-11-10 19:32:45 +01:00
H.J. Lu
b488ccab79 Add a testcase for PR tree-optimization/63778
PR tree-optimization/63778
	* gfortran.dg/pr63778.f: New test.

From-SVN: r217304
2014-11-10 10:08:00 -08:00
Renlin Li
202d59415f [PATCH] Partially fix PR61529, bound basic block frequency
2014-11-10  Renlin Li <Renlin.Li@arm.com>

  PR middle-end/61529

  gcc/
    * tree-ssa-threadupdate.c (compute_path_counts): Bound path_in_freq.

  gcc/testsuite/
    * gcc.dg/pr61529.c: New.

From-SVN: r217303
2014-11-10 17:53:21 +00:00
Thomas Preud'homme
a25efea086 expmed.c (expand_shift_1): Expand 8 bit rotate of 16 bit value to bswaphi if available.
2014-11-10  Thomas Preud'homme  <thomas.preudhomme@arm.com>

    * expmed.c (expand_shift_1): Expand 8 bit rotate of 16 bit value to
    bswaphi if available.

From-SVN: r217302
2014-11-10 17:18:23 +00:00
Bernd Schmidt
02ff56e68a ptx testsuite fix for return addresses.
* lib/target-supports.exp (check_effective_target_return_address):
	New function.
	* gcc.c-torture/execute/20010122-1.c: Require return_address.
	* gcc.c-torture/execute/20030323-1.c: Likewise.
	* gcc.c-torture/execute/20030811-1.c: Likewise.
	* gcc.c-torture/execute/eeprof-1.c: Likewise.
	* gcc.c-torture/execute/frame-address.c: Likewise.
	* gcc.c-torture/execute/pr17377.c: Likewise.

From-SVN: r217301
2014-11-10 16:31:10 +00:00
Bernd Schmidt
5ea6b1bdc1 Random testsuite tweaks for ptx.
* gcc.c-torture/compile/920625-2.c: Add return type to
	freeReturnStruct.
	* gcc.c-torture/execute/20091229-1.c: Declare main properly.
	* gcc.c-torture/execute/pr61375.c: Likewise.
	* gcc.c-torture/execute/20111208-1.c: Use __SIZE_TYPE__ for size_t.
	* gcc.dg/pr30904.c: Remove extern from declaration of t.

From-SVN: r217300
2014-11-10 16:31:00 +00:00
Bernd Schmidt
631da28efe ptx testsuite fixes for issues like indirect jumps and jump labels.
* lib/target-supports.exp (check_effective_target_indirect_jumps):
	New function.
	(check_effective_target_nonlocal_goto): New function.
	(check_effective_target_label_values): New function.
	* gcc.c-torture/execute/20071220-2.c: Require label_values.
	* gcc.c-torture/compile/labels-2.c: Likewise.
	* gcc.c-torture/compile/20000518-1.c: Likewise.
	* gcc.c-torture/compile/20021108-1.c: Likewise.
	* gcc.c-torture/compile/981006-1.c: Likewise.
	* gcc.c-torture/execute/20040302-1.c: Likewise.
	* gcc.dg/torture/pr33848.c: Likewise.

	* gcc.c-torture/compile/pr46107.c: Require indirect jumps and
	label values.
	* gcc.c-torture/compile/pr32919.c: Likewise.
	* gcc.c-torture/compile/pr17913.c: Likewise.
	* gcc.c-torture/compile/pr51495.c: Likewise.
	* gcc.c-torture/compile/pr25224.c: Likewise.
	* gcc.c-torture/compile/labels-3.c: Likewise.
	* gcc.c-torture/compile/pr27863.c: Likewise.
	* gcc.c-torture/compile/20050510-1.c: Likewise.
	* gcc.c-torture/compile/pr28489.c: Likewise.
	* gcc.c-torture/compile/pr29128.c: Likewise.
	* gcc.c-torture/compile/pr21356: Likewise.
	* gcc.c-torture/execute/20071210-1.c: Likewise.
	* gcc.c-torture/execute/200701220-1.c: Likewise.
	* gcc.c-torture/execute/pr51447.c: Likewise.
	* gcc.c-torture/execute/comp-goto-1.c: Likewise.
	* gcc.c-torture/execute/comp-goto-2.c: Likewise.
	* gcc.dg/20021029-1.c: Likewise.
	* gcc.dg/pr43379.c: Likewise.
	* gcc.dg/pr45259.c: Likewise.
	* gcc.dg/torture/pr53695.c: Likewise.
	* gcc.dg/torture/pr57584.c: Likewise.

	* gcc.c-torture/execute/980526-1.c: Skip if -O0 and neither label_values
	or indirect_jumps are available.
	* gcc.c-torture/compile/920415-1.c: Likewise.  Remove NO_LABEL_VALUES
	test.
	* gcc.c-torture/compile/920428-3.c: Likewise.
	* gcc.c-torture/compile/950613-1.c: Likewise.

	* gcc.c-torture/compile/pr30984.c: Require indirect jumps.
	* gcc.c-torture/compile/991213-3.c: Likewise.
	* gcc.c-torture/compile/920825-1.c: Likewise.
	* gcc.c-torture/compile/20011029-1.c: Likewise.
	* gcc.c-torture/compile/complex-6.c: Likewise.
	* gcc.c-torture/compile/pr27127.c: Likewise.
	* gcc.c-torture/compile/pr58164.c: Likewise.
	* gcc.c-torture/compile/20041214-1.c: Likewise.
	* gcc.c-torture/execute/built-in-setjmp.c: Likewise.
	* gcc.c-torture/execute/pr56982.c: Likewise.
	* gcc.c-torture/execute/pr60003.c: Likewise.
	* gcc.c-torture/execute/pr26983.c: Likewise.
	* gcc.dg/pr57287-2.c: Likewise.
	* gcc.dg/pr59920-1.c: Likewise.
	* gcc.dg/pr59920-2.c: Likewise.
	* gcc.dg/pr59920-3.c: Likewise.
	* gcc.dg/setjmp-3.c: Likewise.
	* gcc.dg/setjmp-4.c: Likewise.
	* gcc.dg/setjmp-5.c: Likewise.
	* gcc.dg/torture/pr48542.c: Likewise.
	* gcc.dg/torture/pr57147-2.c: Likewise.
	* gcc.dg/torture/pr59993.c: Likewise.

	* gcc.dg/torture/stackalign/non-local-goto-1.c: Require nonlocal_goto.
	* gcc.dg/torture/stackalign/non-local-goto-2.c: Likewise.
	* gcc.dg/torture/stackalign/non-local-goto-3.c: Likewise.
	* gcc.dg/torture/stackalign/non-local-goto-4.c: Likewise.
	* gcc.dg/torture/stackalign/non-local-goto-5.c: Likewise.
	* gcc.dg/torture/stackalign/setjmp-1.c: Likewise.
	* gcc.dg/torture/stackalign/setjmp-3.c: Likewise.
	* gcc.dg/torture/stackalign/setjmp-4.c: Likewise.
	* gcc.dg/non-local-goto-1.c: Likewise.
	* gcc.dg/non-local-goto-2.c: Likewise.
	* gcc.dg/pr49994-1.c: Likewise.
	* gcc.dg/torture/pr57036-2.c: Likewise.

	* gcc.c-torture/compile/20040614-1.c: Require label_values.  Remove
	NO_LABEL_VALUES test.
	* gcc.c-torture/compile/920831-1.c: Likewise.
	* gcc.c-torture/compile/920502-1.c: Likewise.
	* gcc.c-torture/compile/920501-7.c: Likewise.
	* gcc.dg/pr52139.c: Likewise.

From-SVN: r217299
2014-11-10 16:30:50 +00:00
Bernd Schmidt
fb61af8ba8 XFAILs and such for ptx.
* lib/target-supports.exp (check_effective_target_trampolines,
	check_profiling_available, check_effective_target_lto,
	check_effective_target_vect_natural): False for nvptx-*-*.
	* gcc.c-torture/compile/limits-fndefn.c: Skip for nvptx-*-*.
	* gcc.c-torture/compile/pr34334.c: Likewise.
	* gcc.c-torture/compile/pr37056.c: Likewise.
	* gcc.c-torture/compile/pr39423-1.c: Likewise.
	* gcc.c-torture/compile/pr46534.c: Likewise.
	* gcc.c-torture/compile/pr49049.c: Likewise.
	* gcc.c-torture/compile/pr59417.c: Likewise.
	* gcc.c-torture/compile/20080721-1.c: Likewise.
	* gcc.c-torture/compile/920501-4.c: Likewise.
	* gcc.c-torture/compile/921011-1.c: Likewise.
	* gcc.dg/20040813-1.c: Likewise.
	* gcc.dg/pr28755.c: Likewise.
	* gcc.dg/pr44194-1.c: Likewise.
	* gcc.c-torture/compile/pr42717.c: Xfail for nvptx-*-*.
	* gcc.c-torture/compile/pr61684.c: Likewise.
	* gcc.c-torture/compile/pr20601-1.c: Likewise.
	* gcc.c-torture/compile/pr59221.c: Likewise.
	* gcc.c-torture/compile/20060208-1.c: Likewise.
	* gcc.c-torture/execute/pr52129.c: Likewise.
	* gcc.c-torture/execute/20020310-1.c: Likewise.
	* gcc.c-torture/execute/20101011-1.c: Define DO_TEST to 0 for nvptx.
	* gcc.c-torture/execute20020312-2.c: Add case for for nvptx.
	* gcc.c-torture/compile/pr60655-1.c: Don't add -fdata-sections
	for nvptx-*-*.
	* gcc.dg/pr36400.c: Xfail scan-assembler test on nvptx-*-*.
	* gcc.dg/const-elim-2.c: Likewise.

From-SVN: r217298
2014-11-10 16:30:33 +00:00
Bernd Schmidt
c445c02a65 Testsuite untyped assembly fixes for ptx.
* lib/target-supports.exp
	(check_effective_target_untyped_assembly): New function.
	* gcc.c-torture/compile/20091215-1.c: Require untyped_assembly.
	* gcc.c-torture/compile/920917-1.c: Likewise.
	* gcc.c-torture/compile/930120-1.c: Likewise.
	* gcc.c-torture/compile/930411-1.c: Likewise.
	* gcc.c-torture/compile/930529-1.c: Likewise.
	* gcc.c-torture/compile/930623-1.c: Likewise.
	* gcc.c-torture/compile/950329-1.c: Likewise.
	* gcc.c-torture/compile/calls.c: Likewise.
	* gcc.c-torture/compile/pr37258.c: Likewise.
	* gcc.c-torture/compile/pr37327.c: Likewise.
	* gcc.c-torture/compile/pr38360.c: Likewise.
	* gcc.c-torture/compile/pr43635.c: Likewise.
	* gcc.c-torture/compile/pr47428.c: Likewise.
	* gcc.c-torture/compile/pr47967.c: Likewise.
	* gcc.c-torture/compile/pr49145.c: Likewise.
	* gcc.c-torture/compile/pr51694.c: Likewise.
	* gcc.c-torture/compile/pr53411.c: Likewise.
	* gcc.c-torture/execute/20001101.c: Likewise.
	* gcc.c-torture/execute/20051012-1.c: Likewise.
	* gcc.c-torture/execute/920501-1.c: Likewise.
	* gcc.c-torture/execute/921202-1.c: Likewise.
	* gcc.c-torture/execute/921208-2.c: Likewise.
	* gcc.c-torture/execute/call-trap-1.c: Likewise.
	* gcc.c-torture/compile/20010525-1.c: Likewise.
	* gcc.c-torture/compile/20021015-2.c: Likewise.
	* gcc.c-torture/compile/20031023-1.c: Likewise.
	* gcc.c-torture/compile/20031023-2.c: Likewise.
	* gcc.c-torture/compile/pr49206.c: Likewise.
	* gcc.c-torture/execute/pr47237.c: Likewise.
	* gcc.dg/torture/stackalign/builtin-apply-1.c: Likewise.
	* gcc.dg/torture/stackalign/builtin-apply-2.c: Likewise.
	* gcc.dg/torture/stackalign/builtin-apply-3.c: Likewise.
	* gcc.dg/torture/stackalign/builtin-apply-4.c: Likewise.
	* gcc.dg/torture/stackalign/builtin-return-1.c: Likewise.
	* gcc.dg/builtin-apply1.c: Likewise.
	* gcc.dg/builtin-apply2.c: Likewise.
	* gcc.dg/builtin-apply3.c: Likewise.
	* gcc.dg/builtin-apply4.c: Likewise.
	* gcc.dg/pr38338.c: Likewise.
	* gcc.dg/torture/pr41993.c: Likewise.
	* gcc.c-torture/compile/386.c: Likewise.
	* gcc.c-torture/compile/cmpsi386.c: Likewise.
	* gcc.c-torture/compile/consec.c: Likewise.
	* gcc.c-torture/compile/ex.c: Likewise.
	* gcc.c-torture/compile/pass.c: Likewise.
	* gcc.c-torture/compile/scal.c: Likewise.
	* gcc.c-torture/compile/uuarg.c: Likewise.
	* gcc.c-torture/compile/conv_tst.c: Likewise.

From-SVN: r217297
2014-11-10 16:30:22 +00:00
Bernd Schmidt
e2acc079ff Testsuite alloca fixes for ptx.
* lib/target-supports.exp (check_effective_target_alloca): New function.
	* gcc.c-torture/execute/20010209-1.c: Require alloca.
	* gcc.c-torture/execute/20020314-1.c: Likewise.
	* gcc.c-torture/execute/20020412-1.c: Likewise.
	* gcc.c-torture/execute/20021113-1.c: Likewise.
	* gcc.c-torture/execute/20040223-1.c: Likewise.
	* gcc.c-torture/execute/20040308-1.c: Likewise.
	* gcc.c-torture/execute/20040811-1.c: Likewise.
	* gcc.c-torture/execute/20070824-1.c: Likewise.
	* gcc.c-torture/execute/20070919-1.c: Likewise.
	* gcc.c-torture/execute/built-in-setjmp.c: Likewise.
	* gcc.c-torture/execute/pr22061-1.c: Likewise.
	* gcc.c-torture/execute/pr22061-4.c: Likewise.
	* gcc.c-torture/execute/pr43220.c: Likewise.
	* gcc.c-torture/execute/vla-dealloc-1.c: Likewise.
	* gcc.dg/torture/stackalign/alloca-1.c: Likewise.
	* gcc.dg/torture/stackalign/vararg-1.c: Likewise.
	* gcc.dg/torture/stackalign/vararg-2.c: Likewise.
	* gcc.c-torture/compile/20000923-1.c: Likewise.
	* gcc.c-torture/compile/20030224-1.c: Likewise.
	* gcc.c-torture/compile/20071108-1.c: Likewise.
	* gcc.c-torture/compile/20071117-1.c: Likewise.
	* gcc.c-torture/compile/900313-1.c: Likewise.
	* gcc.c-torture/compile/pr17397.c: Likewise.
	* gcc.c-torture/compile/pr35006.c: Likewise.
	* gcc.c-torture/compile/pr42956.c: Likewise.
	* gcc.c-torture/compile/pr51354.c: Likewise.
	* gcc.c-torture/compile/pr55851.c: Likewise.
	* gcc.c-torture/compile/vla-const-1.c: Likewise.
	* gcc.c-torture/compile/vla-const-2.c: Likewise.
	* gcc.c-torture/compile/pr31507-1.c: Likewise.
	* gcc.c-torture/compile/pr52714.c: Likewise.
	* gcc.dg/20001012-2.c: Likewise.
	* gcc.dg/auto-type-1.c: Likewise.
	* gcc.dg/builtin-object-size-1.c: Likewise.
	* gcc.dg/builtin-object-size-2.c: Likewise.
	* gcc.dg/builtin-object-size-3.c: Likewise.
	* gcc.dg/builtin-object-size-4.c: Likewise.
	* gcc.dg/packed-vla.c: Likewise.
	* gcc.c-torture/compile/parms.c: Likewise.
	* gcc.c-torture/execute/920721-2.c: Skip -O0 unless alloca is available.
	* gcc.c-torture/execute/920929-1.c: Likewise.
	* gcc.c-torture/execute/921017-1.c: Likewise.
	* gcc.c-torture/execute/941202-1.c: Likewise.
	* gcc.c-torture/execute/align-nest.c: Likewise.
	* gcc.c-torture/execute/alloca-1.c: Likewise.
	* gcc.c-torture/execute/pr36321.c: Likewise.
	* gcc.c-torture/compile/20001221-1.c: Likewise.
	* gcc.c-torture/compile/20020807-1.c: Likewise.
	* gcc.c-torture/compile/20050801-2.c: Likewise.
	* gcc.c-torture/compile/920428-4.c: Likewise.
	* gcc.c-torture/compile/debugvlafunction-1.c.c: Likewise.
	* gcc.c-torture/compile/pr41469.c: Likewise.
	* gcc.dg/torture/pr48953.c: Likewise.
	* gcc.dg/torture/pr8081.c: Likewise.
	* gcc.dg/torture/stackalign/inline-1.c: Skip if nvptx-*-*.
	* gcc.dg/torture/stackalign/inline-2.c: Likewise.
	* gcc.dg/torture/stackalign/nested-1.c: Likewise.
	* gcc.dg/torture/stackalign/nested-2.c: Likewise.
	* gcc.dg/torture/stackalign/nested-3.c: Likewise.
	* gcc.dg/torture/stackalign/nested-4.c: Likewise.
	* gcc.dg/torture/stackalign/nested-1.c: Likewise.
	* gcc.dg/torture/stackalign/global-1.c: Likewise.
	* gcc.dg/torture/stackalign/pr16660-1.c: Likewise.
	* gcc.dg/torture/stackalign/pr16660-2.c: Likewise.
	* gcc.dg/torture/stackalign/pr16660-3.c: Likewise.
	* gcc.dg/torture/stackalign/ret-struct-1.c: Likewise.
	* gcc.dg/torture/stackalign/struct-1.c: Likewise.

From-SVN: r217296
2014-11-10 16:30:09 +00:00
Bernd Schmidt
738f25224b Add the nvptx port.
* configure.ac: Handle nvptx-*-*.
	* configure: Regenerate.

	gcc/
	* config/nvptx/nvptx.c: New file.
	* config/nvptx/nvptx.h: New file.
	* config/nvptx/nvptx-protos.h: New file.
	* config/nvptx/nvptx.md: New file.
	* config/nvptx/t-nvptx: New file.
	* config/nvptx/nvptx.opt: New file.
	* common/config/nvptx/nvptx-common.c: New file.
	* config.gcc: Handle nvptx-*-*.

	libgcc/
	* config.host: Handle nvptx-*-*.
	* shared-object.mk (as-flags-$o): Define.
	($(base)$(objext), $(base)_s$(objext)): Use it instead of
	-xassembler-with-cpp.
	* static-object.mk: Identical changes.
	* config/nvptx/t-nvptx: New file.
	* config/nvptx/crt0.s: New file.
	* config/nvptx/free.asm: New file.
	* config/nvptx/malloc.asm: New file.
	* config/nvptx/realloc.c: New file.

From-SVN: r217295
2014-11-10 16:12:42 +00:00
Bernd Schmidt
c81b4a0e83 Make thread_prologue_and_epilogue_insns callable from backends.
* function.c (thread_prologue_and_epilogue_insns): No longer static.
	* function.h (thread_prologue_and_epilogue_insns): Declare.

From-SVN: r217294
2014-11-10 16:12:30 +00:00
Bernd Schmidt
0d4b5b86f2 Add a target hook for assembling undeclared decls.
* target.def (assemble_undefined_decl): New hooks.
	* hooks.c (hook_void_FILEptr_constcharptr_const_tree): New function.
	* hooks.h (hook_void_FILEptr_constcharptr_const_tree): Declare.
	* doc/tm.texi.in (TARGET_ASM_ASSEMBLE_UNDEFINED_DECL): Add.
	* doc/tm.texi: Regenerate.
	* output.h (assemble_undefined_decl): Declare.
	(get_fnname_from_decl): Declare.
	* varasm.c (assemble_undefined_decl): New function.
	(get_fnname_from_decl): New function.
	* final.c (rest_of_handle_final): Use it.
	* varpool.c (varpool_output_variables): Call assemble_undefined_decl
	for nodes without a definition.

From-SVN: r217293
2014-11-10 16:12:21 +00:00
Edward Smith-Rowland
42fd12b1e7 cpplib.h (cpp_callbacks): Add has_attribute.
libcpp:

2014-11-10  Edward Smith-Rowland  <3dw4rd@verizon.net>

	* include/cpplib.h (cpp_callbacks): Add has_attribute.
	* internal.h (lexer_state): Add in__has_attribute__.
	* directives.c (lex_macro_node): Prevent use of __has_attribute__
	as a macro.
	* expr.c (parse_has_attribute): New function; (eval_token): Look for
	__has_attribute__ and route to parse_has_attribute.
	* identifiers.c (_cpp_init_hashtable): Initialize n__has_attribute__.
	* pch.c (cpp_read_state): Initialize n__has_attribute__.
	* traditional.c (enum ls): Add ls_has_attribute, ls_has_attribute_close;
	(_cpp_scan_out_logical_line): Attend to __has_attribute__.


gcc/c-family:

2014-11-10  Edward Smith-Rowland  <3dw4rd@verizon.net>

	* c-cppbuiltin.c (__has_attribute, __has_cpp_attribute): New macros;
	(__cpp_rtti, __cpp_exceptions): New macros for C++98;
	(__cpp_range_based_for, __cpp_initializer_lists,
	__cpp_delegating_constructors, __cpp_nsdmi,
	__cpp_inheriting_constructors, __cpp_ref_qualifiers): New macros
	for C++11; (__cpp_attribute_deprecated): Remove in favor of
	__has_cpp_attribute.
	* c-lex.c (cb_has_attribute): New callback CPP function;
	(init_c_lex): Set has_attribute callback.


gcc/testsuite:

2014-11-10  Edward Smith-Rowland  <3dw4rd@verizon.net>

	* g++.dg/cpp1y/feat-cxx11.C: Test new feature macros for C++98
	and C++11; Test existence of __has_cpp_attribute;  Test C++11
	attributes.
	* g++.dg/cpp1y/feat-cxx11-neg.C: Ditto.
	* g++.dg/cpp1y/feat-cxx14.C: Ditto and test for C++14 attributes.
	* g++.dg/cpp1y/feat-cxx98.C: Test new feature macros for C++98.
	* g++.dg/cpp1y/feat-cxx98-neg.C: Ditto.
	* g++.dg/cpp1y/feat-neg.C: Test that __cpp_rtti, _cpp_exceptions
	will be undefined for -fno-rtti -fno-exceptions.

From-SVN: r217292
2014-11-10 15:53:12 +00:00
Richard Biener
6d64f20c8d tree-ssa-operands.c (finalize_ssa_uses): Properly put released operands on the free list.
2014-11-10  Richard Biener  <rguenther@suse.de>

	* tree-ssa-operands.c (finalize_ssa_uses): Properly put
	released operands on the free list.

From-SVN: r217291
2014-11-10 15:46:23 +00:00
Richard Biener
a25454eae3 match.pd: Implement pattern from simplify_mult.
2014-11-10  Richard Biener  <rguenther@suse.de>

	* match.pd: Implement pattern from simplify_mult.
	* tree-ssa-forwprop.c (simplify_mult): Remove.
	(pass_forwprop::execute): Do not call simplify_mult.

From-SVN: r217290
2014-11-10 15:45:55 +00:00
Richard Biener
6be4c4ece5 re PR tree-optimization/63800 (ICE on valid code at -O3 on x86_64-linux-gnu)
2014-11-10  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/63800
	* tree-ssa-pre.c (eliminate_push_avail): Push in a way so
	we can restore the previous availability in after_dom_children.
	(eliminate_dom_walker::after_dom_children): Restore
	previous availability.

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

From-SVN: r217288
2014-11-10 14:31:31 +00:00
Richard Biener
3090fa556b re PR tree-optimization/63798 (FAIL: gcc.target/powerpc/ppc-fmadd-1.c scan-assembler-not f(add|sub|mul|neg))
2014-11-10  Richard Biener  <rguenther@suse.de>

	PR middle-end/63798
	* expr.c (expand_expr_real_2): When expanding FMA_EXPRs
	properly treat the embedded multiplication as commutative
	when looking for feeding negates.

From-SVN: r217287
2014-11-10 14:06:56 +00:00
Joern Rennecke
27be769ce5 * config/avr/avr.h (CPLUSPLUS_CPP_SPEC): Define.
From-SVN: r217286
2014-11-10 13:06:22 +00:00
Martin Liska
7325afd46f ICF is disabled for the test because of default char signedness on powerpc64 target.
From-SVN: r217285
2014-11-10 12:21:50 +00:00
Richard Biener
ea2042ba81 match.pd: Implement pattern from simplify_conversion_from_bitmask.
2014-11-10  Richard Biener  <rguenther@suse.de>

	* match.pd: Implement pattern from simplify_conversion_from_bitmask.
	* tree-ssa-forwprop.c (simplify_conversion_from_bitmask): Remove.
	(pass_forwprop::execute): Do not call simplify_conversion_from_bitmask.

From-SVN: r217284
2014-11-10 11:47:53 +00:00
Marek Polacek
bb60d646c1 align-7.c: Skip for -flto -fno-fat-lto-objects.
* c-c++-common/ubsan/align-7.c: Skip for -flto -fno-fat-lto-objects.
	* c-c++-common/ubsan/align-8.c: Likewise.
	* g++.dg/ubsan/null-4.C: Likewise.
	* g++.dg/ubsan/null-5.C: Likewise.

From-SVN: r217282
2014-11-10 10:07:34 +00:00
Richard Biener
1f00c1b9cd match.pd: Move rest of the conversion combining patterns from tree-ssa-forwprop.c.
2014-11-10  Richard Biener  <rguenther@suse.de>

	* match.pd: Move rest of the conversion combining patterns
	from tree-ssa-forwprop.c.
	* tree-ssa-forwprop.c (combine_conversions): Remove.
	(pass_forwprop::execute): Do not call it.

From-SVN: r217279
2014-11-10 08:58:24 +00:00
Eric Botcazou
67b6981474 gimple-low.c (lower_function_body): Clear the location of the first inserted representative return if...
* gimple-low.c (lower_function_body): Clear the location of the first
	inserted representative return if it also fills in for the fallthru.

From-SVN: r217278
2014-11-10 08:53:16 +00:00
Yuri Rumyantsev
bf42631e52 tree-if-conv.c (add_to_predicate_list): Check unconditionally that bb is always executed to early exit.
gcc/

	* tree-if-conv.c (add_to_predicate_list): Check unconditionally
	that bb is always executed to early exit. Use predicate of
	cd-equivalent block for join blocks if it exists.
	(if_convertible_loop_p_1): Recompute POST_DOMINATOR tree.
	(tree_if_conversion): Free post-dominance information.

gcc/testsuite/

	* gcc.dg/tree-ssa/ifc-cd.c: New test.

From-SVN: r217277
2014-11-10 07:46:45 +00:00
Jason Merrill
6d1301f28c DR 799
DR 799
	* typeck.c (build_reinterpret_cast_1): reinterpret_cast to the
	same scalar type is an rvalue.

From-SVN: r217276
2014-11-10 00:00:05 -05:00
Jason Merrill
e19264356f DR 2007
DR 2007
	* call.c (build_new_op_1): Don't do non-class lookup for =, -> or [].

From-SVN: r217275
2014-11-10 00:00:00 -05:00
Jason Merrill
9ab4c07add avx512vldqintrin.h (_mm256_broadcast_f32x2): __mmask8.
* config/i386/avx512vldqintrin.h (_mm256_broadcast_f32x2): __mmask8.
	* config/i386/avx512vlintrin.h (_mm256_mask_cvtepi32_storeu_epi16)
	(_mm_mask_cvtusepi32_storeu_epi16)
	(_mm_mask_cvtsepi64_storeu_epi32): Return void.

From-SVN: r217274
2014-11-09 23:59:54 -05:00
Janne Blomqvist
9cbecd06be PR 47007 and 61847 Locale failures in libgfortran.
2014-11-10  Janne Blomqvist  <jb@gcc.gnu.org>

	PR libfortran/47007
	PR libfortran/61847
	* config.h.in: Regenerated.
	* configure: Regenerated.
	* configure.ac (AC_CHECK_HEADERS_ONCE): Check for xlocale.h.
	(AC_CHECK_FUNCS_ONCE): Check for newlocale, freelocale, uselocale,
	strerror_l.
	* io/io.h (locale.h): Include.
	(xlocale.h): Include if present.
	(c_locale): New variable.
	(old_locale): New variable.
	(old_locale_ctr): New variable.
	(old_locale_lock): New variable.
	(st_parameter_dt): Add old_locale member.
	* io/transfer.c (data_transfer_init): Set locale to "C" if doing
	formatted transfer.
	(finalize_transfer): Reset locale to previous.
	* io/unit.c (c_locale): New variable.
	(old_locale): New variable.
	(old_locale_ctr): New variable.
	(old_locale_lock): New variable.
	(init_units): Init c_locale, init old_locale_lock.
	(close_units): Free c_locale.
	* runtime/error.c (locale.h): Include.
	(xlocale.h): Include if present.
	(gf_strerror): Use strerror_l if available. Reset locale to
	LC_GLOBAL_LOCALE for strerror_r branch.

2014-11-10  Janne Blomqvist  <jb@gcc.gnu.org>

	PR libfortran/47007
	PR libfortran/61847
	* gfortran.texi: Add note about locale issues to thread-safety
	section.

From-SVN: r217273
2014-11-10 02:17:16 +02:00
GCC Administrator
f8df4b4e2b Daily bump.
From-SVN: r217272
2014-11-10 00:16:28 +00:00
H.J. Lu
29588bc09c Correct ChangeLog
From-SVN: r217268
2014-11-09 09:56:51 -08:00
H.J. Lu
233e9daff5 Fix buffer overflow in avx256-unaligned-{load|store}-7.c
* testsuite/63305
	* gcc.target/i386/avx256-unaligned-load-7.c (avx_test): Fix
	buffer overflow.
	* gcc.target/i386/avx256-unaligned-store-7.c (avx_test): Likewise.

From-SVN: r217267
2014-11-09 09:54:54 -08:00
Joern Rennecke
5966ff9f17 * config/avr/predicates.md (low_io_address_operand): Fix typo.
From-SVN: r217266
2014-11-09 17:06:50 +00:00
Vladimir Makarov
8160cd3ee4 re PR rtl-optimization/63620 (RELOAD lost SET_GOT dependency on Darwin)
2014-11-09  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/63620
	* lra-constraints.c (substitute_pseudo): Add prefix lra_ to the
	name.  Move to lra.c.  Make it external.
	(substitute_pseudo_within_insn): Ditto.
	(inherit_reload_reg, split_reg, remove_inheritance_pseudos): Use
	the new names.
	(undo_optional_reloads): Ditto.
	* lra-int.h (lra_dump_bitmap_with_title, lra_substitute_pseudo):
	New prototypes.
	(lra_substitute_pseudo_within_insn): Ditto.
	* lra-lives.c (bb_killed_pseudos, bb_gen_pseudos): New.
	(mark_regno_live): Add parameter.  Update bb_gen_pseudos.
	(mark_regno_dead): Add parameter.  Update bb_gen_pseudos and
	bb_killed_pseudos.
	(struct bb_data, bb_data_t, bb_data): New.
	(get_bb_data, get_bb_data_by_index): Ditto.
	(all_hard_regs_bitmap): New.
	(live_trans_fun, live_con_fun_0, live_con_fun_n, all_blocks): New.
	(initiate_live_solver, finish_live_solver): New.
	(process_bb_lives): Change return type.  Add code updating local
	live data and removing dead insns.  Pass new argument to
	mark_regno_live and mark_regno_dead.  Check changing bb pseudo
	life info.  Return the result.
	(lra_create_live_ranges): Add code to do global pseudo live
	analysis.
	(lra_live_ranges_init): Call initiate_live_solver.
	(lra_live_ranges_finish): Call finish_live_solver.
	* lra.c (lra_dump_bitmap_with_title): New.
	(lra_substitute_pseudo, lra_substitute_pseudo_within_insn): Move
	from lra-constraints.c.

From-SVN: r217265
2014-11-09 16:45:15 +00:00
Andreas Schwab
205e926891 * gcc.target/powerpc/pr51623.c: Fix implicit declarations.
From-SVN: r217264
2014-11-09 12:46:27 +00:00
Richard Biener
1e51d0a29d match.pd: Add patterns convering two conversions in a row from fold-const.c.
2014-11-09  Richard Biener  <rguenther@suse.de>

	* match.pd: Add patterns convering two conversions in a row
	from fold-const.c.
	* fold-const.c (fold_unary_loc): Remove them here.
	* tree-ssa-forwprop.c (combine_conversions): Likewise.
	* genmatch.c (dt_node::gen_kids): Check whether we may
	follow SSA use-def chains.

	* g++.dg/cpp0x/constexpr-reinterpret1.C: XFAIL.
	* gcc.dg/tree-ssa/pr21031.c: XFAIL.

From-SVN: r217260
2014-11-09 11:27:00 +00:00
GCC Administrator
8dcd07febc Daily bump.
From-SVN: r217259
2014-11-09 00:16:26 +00:00
Richard Sandiford
e7de8563da aarch64.c: Include rtl-iter.h.
gcc/
	* config/aarch64/aarch64.c: Include rtl-iter.h.
	(aarch64_tls_operand_p_1): Delete.
	(aarch64_tls_operand_p): Use FOR_EACH_SUBRTX.

From-SVN: r217256
2014-11-08 11:25:32 +00:00
Richard Sandiford
f959dcbba2 arm.c (arm_note_pic_base): Delete.
gcc/
	* config/arm/arm.c (arm_note_pic_base): Delete.
	(arm_cannot_copy_insn_p): Use FOR_EACH_SUBRTX.

From-SVN: r217255
2014-11-08 11:25:24 +00:00
Richard Sandiford
8ee963a298 arm.c: Include rtl-iter.h.
gcc/
	* config/arm/arm.c: Include rtl-iter.h.
	(arm_tls_referenced_p_1): Delete.
	(arm_tls_referenced_p): Use FOR_EACH_SUBRTX.

From-SVN: r217254
2014-11-08 11:25:17 +00:00
Richard Sandiford
d9aa82f10c aarch-common.c: Include rtl-iter.h.
gcc/
	* config/arm/aarch-common.c: Include rtl-iter.h.
	(search_term, arm_find_sub_rtx_with_search_term): Delete.
	(arm_find_sub_rtx_with_code): Use FOR_EACH_SUBRTX_VAR.
	(arm_get_set_operands): Pass the insn pattern rather than the
	insn itself.
	(arm_no_early_store_addr_dep): Likewise.

From-SVN: r217253
2014-11-08 11:25:10 +00:00
Eric Botcazou
d1b0433b1a arm.c (arm_set_return_address): Mark the store as frame related, if any.
* config/arm/arm.c (arm_set_return_address): Mark the store as frame
	related, if any.
	(thumb_set_return_address): Likewise.

From-SVN: r217251
2014-11-08 09:17:23 +00:00
Jason Merrill
31cb2db0b2 DR 1558
DR 1558
	* pt.c (dependent_alias_template_spec_p): New.
	(dependent_type_p_r): Handle dependent alias template specialization.
	(template_args_equal): A dependent alias template specializations
	is not equal to its underlying type as a template argument.
	* tree.c (strip_typedefs): Don't strip a dependent alias
	template-id.

From-SVN: r217250
2014-11-08 01:06:42 -05:00
GCC Administrator
967064a13f Daily bump.
From-SVN: r217245
2014-11-08 00:16:20 +00:00
Andrew Pinski
9a8f1fe40f 20141107-1.c: New testcase.
2014-11-07  Andrew Pinski  <apinski@cavium.com>

	* gcc.c-torture/execute/20141107-1.c: New testcase.

From-SVN: r217242
2014-11-07 15:08:43 -08:00
Jason Merrill
04af98c61b parser.c (cp_parser_unqualified_id): Handle __func__ here.
* parser.c (cp_parser_unqualified_id): Handle __func__ here.
	(cp_parser_primary_expression): Not here.

From-SVN: r217241
2014-11-07 18:01:09 -05:00
Jeff Law
15babd13d6 Fix typo and line wrap in ChangeLog
From-SVN: r217240
2014-11-07 15:59:40 -07:00
Jeff Law
f38ce9361f re PR tree-optimization/61515 (Extremely long compile time for generated code)
PR tree-optimization/61515
	* tree-ssa-threadedge.c (invalidate_equivalences): Walk the unwinding stack
	rather than looking at ever SSA_NAME's value.

From-SVN: r217239
2014-11-07 15:55:00 -07:00
Richard Biener
382ad5ce1b re PR tree-optimization/63605 (wrong code at -O3 on x86_64-linux-gnu)
2014-11-07  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/63605
	* fold-const.c (fold_binary_loc): Properly use element_precision
	for types that may not be scalar.

	* gcc.dg/vect/pr63605.c: New testcase.

From-SVN: r217238
2014-11-07 20:57:01 +00:00