Commit Graph

130276 Commits

Author SHA1 Message Date
Kai Tietz 6041d142c4 re PR target/61377 (Bootstrap failure on x86_64-apple-darwin13)
PR target/61377
	* constrains.md (define_constrain): New 'Bs' constraint.
	* i386.md (sibcall_insn_operand): Use Bs instead of m constraint.

From-SVN: r211112
2014-06-01 12:36:55 +02:00
Kai Tietz 4a065d4a62 re PR target/61377 (Bootstrap failure on x86_64-apple-darwin13)
PR target/61377
	* gcc.target/i386/sibcall-6.c: New test.

From-SVN: r211111
2014-06-01 12:35:19 +02:00
GCC Administrator 9406c7d0b7 Daily bump.
From-SVN: r211110
2014-06-01 00:17:25 +00:00
Andreas Schwab aef1bf3b55 Summary: m68k: add missing early clobber in beq0_di, bne0_di patterns
* config/m68k/m68k.md (beq0_di, bne0_di): Make the "o" constraint
a separate alternative where the scratch operand 2 is marked as
early clobber.

From-SVN: r211104
2014-05-31 12:08:25 +00:00
Kugan Vivekanandarajah f10743d3f7 arm.c (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New define.
gcc/

2014-05-31  Kugan Vivekanandarajah  <kuganv@linaro.org>

	* config/arm/arm.c (TARGET_ATOMIC_ASSIGN_EXPAND_FENV): New define.
	(arm_builtins) : Add ARM_BUILTIN_GET_FPSCR and ARM_BUILTIN_SET_FPSCR.
	(bdesc_2arg) : Add description for builtins __builtins_arm_set_fpscr
	and __builtins_arm_get_fpscr.
	(arm_init_builtins) : Initialize builtins __builtins_arm_set_fpscr and
	__builtins_arm_get_fpscr.
	(arm_expand_builtin) : Expand builtins __builtins_arm_set_fpscr and
	__builtins_arm_ldfpscr.
	(arm_atomic_assign_expand_fenv): New function.
	* config/arm/vfp.md (set_fpscr): New pattern.
	(get_fpscr) : Likewise.
	* config/arm/unspecs.md (unspecv): Add VUNSPEC_GET_FPSCR and
	VUNSPEC_SET_FPSCR.
	* doc/extend.texi (AARCH64 Built-in Functions) : Document
	__builtins_arm_set_fpscr, __builtins_arm_get_fpscr.

From-SVN: r211103
2014-05-31 09:27:52 +00:00
Paolo Carlini cab421f485 DR 1227 PR c++/57543
/cp
2014-05-31  Paolo Carlini  <paolo.carlini@oracle.com>

	DR 1227
	PR c++/57543
	* cp-tree.h (TYPE_HAS_LATE_RETURN_TYPE): Add.
	* pt.c (tsubst_function_type): Inject the this parameter; do the
	substitutions in the order mandated by the DR.
	(copy_default_args_to_explicit_spec): Copy TYPE_HAS_LATE_RETURN_TYPE.
	* decl.c (grokdeclarator): Maybe set TYPE_HAS_LATE_RETURN_TYPE.
	(static_fn_type): Copy it.
	* decl2.c (build_memfn_type, change_return_type,
	cp_reconstruct_complex_type): Likewise.
	* parser.c (cp_parser_lambda_declarator_opt): Likewise.
	* tree.c (strip_typedefs): Likewise.
	* typeck.c (merge_types): Likewise.

/testsuite
2014-05-31  Paolo Carlini  <paolo.carlini@oracle.com>

	DR 1227
	PR c++/57543
	* g++.dg/cpp0x/pr57543-1.C: New.
	* g++.dg/cpp0x/pr57543-2.C: Likewise.
	* g++.dg/cpp0x/pr57543-3.C: Likewise.
	* g++.dg/cpp0x/decltype59.C: Likewise.

From-SVN: r211102
2014-05-31 08:51:20 +00:00
GCC Administrator f5fb306951 Daily bump.
From-SVN: r211101
2014-05-31 00:17:15 +00:00
Tom de Vries fb26e9e5e3 Add missing closing brace
2014-05-31  Tom de Vries  <tom@codesourcery.com>

	* gcc.target/i386/sibcall-4.c: Add missing closing brace.

From-SVN: r211097
2014-05-30 22:58:46 +00:00
Jonathan Wakely 8e43535e17 appendix_contributing.xml (list.copyright): Add Paolo's address too.
* doc/xml/manual/appendix_contributing.xml (list.copyright): Add
	Paolo's address too.

From-SVN: r211095
2014-05-30 20:26:15 +01:00
Jason Merrill b6bb89777e re PR c++/56947 (Bogus 'XX' was not declared in this scope)
PR c++/56947
	* pt.c (instantiate_decl): Check that defer_ok is not set for
	local class members.

From-SVN: r211094
2014-05-30 14:55:56 -04:00
Jakub Jelinek 51db86a829 target-libpath.exp (set_gcc_exec_prefix_env_var, [...]): New procedures.
* lib/target-libpath.exp (set_gcc_exec_prefix_env_var,
	restore_gcc_exec_prefix_env_var): New procedures.
	(set_ld_library_path_env_vars,
	restore_ld_library_path_env_vars): Use them.
	* lib/c-compat.exp: Load target-libpath.exp.
	(compat-use-alt-compiler): Call restore_gcc_exec_prefix_env_var.
	(compat-use-tst-compiler): Call set_gcc_exec_prefix_env_var.
	* g++.dg/compat/compat.exp (compat-use-alt-compiler): Call
	restore_gcc_exec_prefix_env_var.
	* g++.dg/compat/struct-layout-1.exp (compat-use-alt-compiler):
	Likewise.

From-SVN: r211093
2014-05-30 20:40:20 +02:00
Jakub Jelinek b3f1051b11 asan.c (report_error_func): Add SLOW_P argument, use BUILT_IN_ASAN_*_N if set.
* asan.c (report_error_func): Add SLOW_P argument, use
	BUILT_IN_ASAN_*_N if set.
	(build_check_stmt): Likewise.
	(instrument_derefs): If T has insufficient alignment,
	force same handling as for odd sizes.

	* c-c++-common/asan/misalign-1.c: New test.
	* c-c++-common/asan/misalign-2.c: New test.

From-SVN: r211092
2014-05-30 20:37:59 +02:00
Jakub Jelinek 40f9f6bb0e sanitizer.def (BUILT_IN_ASAN_REPORT_LOAD_N, [...]): New.
* sanitizer.def (BUILT_IN_ASAN_REPORT_LOAD_N,
	BUILT_IN_ASAN_REPORT_STORE_N): New.
	* asan.c (struct asan_mem_ref): Change access_size type to
	HOST_WIDE_INT.
	(asan_mem_ref_init, asan_mem_ref_new, get_mem_refs_of_builtin_call,
	update_mem_ref_hash_table): Likewise.
	(asan_mem_ref_hasher::hash): Hash in a HWI.
	(report_error_func): Change size_in_bytes argument to HWI.
	Use *_N builtins if size_in_bytes is larger than 16 or not power of
	two.
	(build_shadow_mem_access): New function.
	(build_check_stmt): Use it.  Change size_in_bytes argument to HWI.
	Handle size_in_bytes not power of two or larger than 16.
	(instrument_derefs): Don't give up if size_in_bytes is not
	power of two or is larger than 16.

From-SVN: r211091
2014-05-30 20:37:05 +02:00
Jakub Jelinek 8465be9f1d asan_test.C: Add -std=c++11 and -DSANITIZER_USE_DEJAGNU_GTEST=1 to dg-options...
* g++.dg/asan/asan_test.C: Add -std=c++11 and
	-DSANITIZER_USE_DEJAGNU_GTEST=1 to dg-options, remove
	-DASAN_USE_DEJAGNU_GTEST=1.
	* g++.dg/asan/asan_mem_test.cc: Updated from upstream
	r209283.
	* g++.dg/asan/asan_oob_test.cc: Likewise.
	* g++.dg/asan/sanitizer_test_utils.h: Likewise.
	* g++.dg/asan/asan_str_test.cc: Likewise.
	* g++.dg/asan/asan_test_utils.h: Likewise.
	* g++.dg/asan/sanitizer_test_config.h: Likewise.
	* g++.dg/asan/asan_test.cc: Likewise.  Allow size 12
	for long double.
	* g++.dg/asan/sanitizer_pthread_wrappers.h: New file.
	Imported from upstream r209283.
	* g++.dg/asan/asan_test_config.h: Likewise.

From-SVN: r211090
2014-05-30 20:36:24 +02:00
Kai Tietz cb10592208 re PR target/60104 (load not folded into indirect branch on x86-64)
PR target/60104
	* config/i386/i386.c (x86_output_mi_thunk): Add memory case
	for sibling-tail-calls.
	* config/i386/i386.md (sibcall_insn_operand): Add memory-constrain
	to its use.
	* config/i386/predicates.md (sibcall_memory_operand): New predicate.
	(sibcall_insn_operand): Add check for sibcall_memory_operand.

	PR target/60104
	* gcc.target/i386/sibcall-1.c: New test.
	* gcc.target/i386/sibcall-2.c: New test.
	* gcc.target/i386/sibcall-3.c: New test.
	* gcc.target/i386/sibcall-4.c: New test.

From-SVN: r211089
2014-05-30 20:00:11 +02:00
Jonathan Wakely 1007a55ca4 re PR libstdc++/61011 (libstdc++-v3 should be target-libstdc++-v3 in top level configure)
PR libstdc++/61011
	* configure.ac (--disable-libstdcxx): Set noconfigdirs correctly.
	Disable libcilkrts, libitm, libsanitizer when not building libstdc++.
	* configure: Regenerate.

From-SVN: r211087
2014-05-30 18:16:14 +01:00
Jonathan Wakely 2c9363445d appendix_contributing.xml (list.copyright): Replace Benjamin's old email address.
* doc/xml/manual/appendix_contributing.xml (list.copyright): Replace
	Benjamin's old email address.

From-SVN: r211086
2014-05-30 17:58:58 +01:00
Pitchumani Sivanupandi 150e063915 avr-mcus.def: Change ATA6289 ISA to AVR4
* config/avr/avr-mcus.def: Change ATA6289 ISA to AVR4
	* config/avr/avr-tables.opt: Regenerate.
	* config/avr/t-multilib: Regenerate.
	* doc/avr-mmcu.texi: Regenerate.

From-SVN: r211085
2014-05-30 20:36:05 +04:00
Jason Merrill d1a902a2d5 re PR c++/60992 (ICE in tsubst_copy, at cp/pt.c:12637)
PR c++/60992
	* pt.c (tsubst_init): Split out from...
	(tsubst_expr) [DECL_EXPR]: Here.
	(tsubst_copy) [VAR_DECL]: Use it.
	* semantics.c (finish_id_expression): Return the decl for static/const.

From-SVN: r211084
2014-05-30 11:09:40 -04:00
Ian Lance Taylor 7480a39b77 runtime: Use _mm_pause rather than __builtin_ia32_pause.
Based on a patch from Peter Collingbourne.

From-SVN: r211081
2014-05-30 13:53:58 +00:00
Jakub Jelinek ecd5543ffa sanitizer_stacktrace.cc: Cherry pick upstream r209879.
* sanitizer_common/sanitizer_stacktrace.cc: Cherry pick upstream
	r209879.
	* sanitizer_common/sanitizer_common.h: Likewise.
	* asan/asan_mapping.h: Likewise.
	* asan/asan_linux.cc: Likewise.
	* tsan/tsan_mman.cc: Cherry pick upstream r209744.
	* sanitizer_common/sanitizer_allocator.h: Likewise.

From-SVN: r211080
2014-05-30 15:48:22 +02:00
Ian Lance Taylor f9a8f6d9cb xmmintrin.h (_mm_pause): Move out of scope of pragma target("sse").
gcc/:
	* config/i386/xmmintrin.h (_mm_pause): Move out of scope of pragma
	target("sse").
testsuite/:
	* gcc.target/i386/pause-2.c: New test.

From-SVN: r211079
2014-05-30 13:11:05 +00:00
Tom de Vries 5028356f89 -fuse-caller-save - Enable for i386
2014-05-30  Tom de Vries  <tom@codesourcery.com>

	* config/i386/i386.c (TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS):
	Redefine as true.

	* gcc.target/i386/fuse-caller-save.c: New test.
	* gcc.dg/ira-shrinkwrap-prep-1.c: Run with -fno-use-caller-save.
	* gcc.dg/ira-shrinkwrap-prep-2.c: Same.

From-SVN: r211078
2014-05-30 11:39:49 +00:00
Jonathan Wakely 29f0952140 libstdc++.exp (libstdc++_init): Adjust regexp to work with previous versions of Tcl.
* testsuite/lib/libstdc++.exp (libstdc++_init): Adjust regexp to
	work with previous versions of Tcl.

From-SVN: r211077
2014-05-30 12:11:15 +01:00
Jonathan Wakely 269cf22b9a * generate_libstdcxx_web_docs: New script.
From-SVN: r211076
2014-05-30 12:11:10 +01:00
Alan Lawrence a523dac2ee Add execution tests of ARM REV intrinsics.
gcc.target/arm/simd/vrev16p8_1.c: New file.
	gcc.target/arm/simd/vrev16qp8_1.c: New file.
	gcc.target/arm/simd/vrev16qs8_1.c: New file.
	gcc.target/arm/simd/vrev16qu8_1.c: New file.
	gcc.target/arm/simd/vrev16s8_1.c: New file.
	gcc.target/arm/simd/vrev16u8_1.c: New file.
	gcc.target/arm/simd/vrev32p16_1.c: New file.
	gcc.target/arm/simd/vrev32p8_1.c: New file.
	gcc.target/arm/simd/vrev32qp16_1.c: New file.
	gcc.target/arm/simd/vrev32qp8_1.c: New file.
	gcc.target/arm/simd/vrev32qs16_1.c: New file.
	gcc.target/arm/simd/vrev32qs8_1.c: New file.
	gcc.target/arm/simd/vrev32qu16_1.c: New file.
	gcc.target/arm/simd/vrev32qu8_1.c: New file.
	gcc.target/arm/simd/vrev32s16_1.c: New file.
	gcc.target/arm/simd/vrev32s8_1.c: New file.
	gcc.target/arm/simd/vrev32u16_1.c: New file.
	gcc.target/arm/simd/vrev32u8_1.c: New file.
	gcc.target/arm/simd/vrev64f32_1.c: New file.
	gcc.target/arm/simd/vrev64p16_1.c: New file.
	gcc.target/arm/simd/vrev64p8_1.c: New file.
	gcc.target/arm/simd/vrev64qf32_1.c: New file.
	gcc.target/arm/simd/vrev64qp16_1.c: New file.
	gcc.target/arm/simd/vrev64qp8_1.c: New file.
	gcc.target/arm/simd/vrev64qs16_1.c: New file.
	gcc.target/arm/simd/vrev64qs32_1.c: New file.
	gcc.target/arm/simd/vrev64qs8_1.c: New file.
	gcc.target/arm/simd/vrev64qu16_1.c: New file.
	gcc.target/arm/simd/vrev64qu32_1.c: New file.
	gcc.target/arm/simd/vrev64qu8_1.c: New file.
	gcc.target/arm/simd/vrev64s16_1.c: New file.
	gcc.target/arm/simd/vrev64s32_1.c: New file.
	gcc.target/arm/simd/vrev64s8_1.c: New file.
	gcc.target/arm/simd/vrev64u16_1.c: New file.
	gcc.target/arm/simd/vrev64u32_1.c: New file.
	gcc.target/arm/simd/vrev64u8_1.c: New file.

From-SVN: r211075
2014-05-30 09:49:49 +00:00
Tom de Vries 10e1bdb272 -fuse-caller-save - Support in lra
2014-05-30  Tom de Vries  <tom@codesourcery.com>

	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
	* lra.c (initialize_lra_reg_info_element): Add init of
	actual_call_used_reg_set field.
	(lra): Call lra_create_live_ranges before lra_inheritance for
	-fuse-caller-save.
	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
	-fuse-caller-save.
	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
	instead of call_used_reg_set for -fuse-caller-save.
	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

From-SVN: r211074
2014-05-30 08:43:05 +00:00
Kyrylo Tkachov 569120372d [ARM] Use mov_imm type for movw operations consistently
* config/arm/thumb2.md (*thumb2_movhi_insn): Set type of movw
	to mov_imm.
	* config/arm/vfp.md (*thumb2_movsi_vfp): Likewise.

From-SVN: r211073
2014-05-30 08:31:38 +00:00
Richard Sandiford 98f2f031af ira.c (ira_get_dup_out_num): Check for output operands at the start of the loop.
gcc/
	* ira.c (ira_get_dup_out_num): Check for output operands at
	the start of the loop.  Handle cases where an included alternative
	follows an excluded one.

From-SVN: r211072
2014-05-30 07:35:47 +00:00
GCC Administrator 3901578cd6 Daily bump.
From-SVN: r211071
2014-05-30 00:17:10 +00:00
Mike Stump 79abf19fb6 re PR target/61352 (gcc 4.9.0 fails to execute dsymutil when linking executables on darwin)
PR debug/61352
	* collect2.c (maybe_run_lto_and_relink): Be sure to always run
	post ld passes when lto is used.

From-SVN: r211067
2014-05-29 23:20:39 +00:00
Ian Lance Taylor 9a85ed03da runtime: add the --without-libatomic configure option
This adds the --without-libatomic configure option, which is useful for building libgo
with a non-gcc compiler.

It disables libgo's dependency on libatomic. This
is useful for platforms where it is known that the libatomic runtime
functions are not required, or where the compiler automatically
provides an implementation of them.

From-SVN: r211065
2014-05-29 20:22:27 +00:00
Vladimir Makarov cc8849a159 re PR rtl-optimization/61325 (aarch64_be build fails)
2014-05-29  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/61325
	* lra-constraints.c (process_address): Rename to
	process_address_1.
	(process_address): New function.

2014-05-29  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/61325
	* gcc.target/aarch64/pr61325.c: New.

From-SVN: r211061
2014-05-29 17:37:23 +00:00
Alan Lawrence e4c03722c5 Add execution tests of ARM EXT intrinsics
gcc.target/arm/simd/vextQf32_1.c: New file.
	gcc.target/arm/simd/vextQp16_1.c: New file.
	gcc.target/arm/simd/vextQp8_1.c: New file.
	gcc.target/arm/simd/vextQs16_1.c: New file.
	gcc.target/arm/simd/vextQs32_1.c: New file.
	gcc.target/arm/simd/vextQs64_1.c: New file.
	gcc.target/arm/simd/vextQs8_1.c: New file.
	gcc.target/arm/simd/vextQu16_1.c: New file.
	gcc.target/arm/simd/vextQu32_1.c: New file.
	gcc.target/arm/simd/vextQu64_1.c: New file.
	gcc.target/arm/simd/vextQu8_1.c: New file.
	gcc.target/arm/simd/vextQp64_1.c: New file.
	gcc.target/arm/simd/vextf32_1.c: New file.
	gcc.target/arm/simd/vextp16_1.c: New file.
	gcc.target/arm/simd/vextp8_1.c: New file.
	gcc.target/arm/simd/vexts16_1.c: New file.
	gcc.target/arm/simd/vexts32_1.c: New file.
	gcc.target/arm/simd/vexts64_1.c: New file.
	gcc.target/arm/simd/vexts8_1.c: New file.
	gcc.target/arm/simd/vextu16_1.c: New file.
	gcc.target/arm/simd/vextu32_1.c: New file.
	gcc.target/arm/simd/vextu64_1.c: New file.
	gcc.target/arm/simd/vextu8_1.c: New file.
	gcc.target/arm/simd/vextp64_1.c: New file.

From-SVN: r211059
2014-05-29 17:24:34 +00:00
Alan Lawrence ae0533da54 Detect EXT patterns to vec_perm_const, use for EXT intrinsics
* config/aarch64/aarch64-builtins.c (aarch64_types_binopv_qualifiers,
        TYPES_BINOPV): New static data.
        * config/aarch64/aarch64-simd-builtins.def (im_lane_bound): New builtin.
        * config/aarch64/aarch64-simd.md (aarch64_ext, aarch64_im_lane_boundsi):
        New patterns.
        * config/aarch64/aarch64.c (aarch64_expand_vec_perm_const_1): Match
        patterns for EXT.
        (aarch64_evpc_ext): New function.

        * config/aarch64/iterators.md (UNSPEC_EXT): New enum element.

        * config/aarch64/arm_neon.h (vext_f32, vext_f64, vext_p8, vext_p16,
        vext_s8, vext_s16, vext_s32, vext_s64, vext_u8, vext_u16, vext_u32,
        vext_u64, vextq_f32, vextq_f64, vextq_p8, vextq_p16, vextq_s8,
        vextq_s16, vextq_s32, vextq_s64, vextq_u8, vextq_u16, vextq_u32,
        vextq_u64): Replace __asm with __builtin_shuffle and im_lane_boundsi.

From-SVN: r211058
2014-05-29 16:57:42 +00:00
Tom de Vries ed00b1fb97 Fix rtl-check build
2014-05-29  Tom de Vries  <tom@codesourcery.com>

	* rtl.h (BLOCK_SYMBOL_CHECK): Use SYMBOL_REF_FLAGS.

From-SVN: r211057
2014-05-29 16:32:16 +00:00
Jonathan Wakely 710d672b08 bool_set: Use UTF-8 for accented characters.
* include/tr2/bool_set: Use UTF-8 for accented characters.
	* scripts/run_doxygen: Handle Doxygen 1.8.x change.
	* doc/doxygen/user.cfg.in: Update to Doxygen 1.8.6 format. Set
	QUIET=YES, remove obsolete SYMBOL_CACHE_SIZE tag.

From-SVN: r211053
2014-05-29 15:04:43 +01:00
David Wohlferd 2556511ee0 extend.texi: Rewrite inline asm page / re-org asm-related pages.
2014-05-09  David Wohlferd <LimeGreenSocks@yahoo.com>
	Andrew Haley <aph@redhat.com>
	Richard Sandiford <rdsandiford@googlemail.com>

	* doc/extend.texi: Rewrite inline asm page / re-org asm-related
	pages.

From-SVN: r211051
2014-05-29 11:50:22 +00:00
Richard Earnshaw 004d38098c iterators.md (shiftable_ops): New code iterator.
* arm/iterators.md (shiftable_ops): New code iterator.
        (t2_binop0, arith_shift_insn): New code attributes.
	* arm/predicates.md (shift_nomul_operator): New predicate.
        * arm/arm.md (insn_enabled): Delete.
        (enabled): Remove insn_enabled test.
        (*arith_shiftsi): Delete.  Replace with ...
        (*<arith_shift_insn>_multsi): ... new pattern.
	(*<arith_shift_insn>_shiftsi): ... new pattern.
	* config/arm/arm.c (arm_print_operand): Handle operand format 'b'.

Co-Authored-By: Richard Sandiford <rdsandiford@googlemail.com>

From-SVN: r211050
2014-05-29 09:39:07 +00:00
Radovan Obradovic c2db3f3d39 -fuse-caller-save - Enable for MIPS
2014-05-29  Radovan Obradovic  <robradovic@mips.com>
            Tom de Vries  <tom@codesourcery.com>

	* config/mips/mips.h (POST_CALL_TMP_REG): Define.
	* config/mips/mips.c (mips_emit_call_insn): Add POST_CALL_TMP_REG
	clobber.
	(mips_split_call): Use POST_CALL_TMP_REG.
	(TARGET_CALL_FUSAGE_CONTAINS_NON_CALLEE_CLOBBERS): Redefine to true.

	* gcc.target/mips/mips.exp: Add use-caller-save to -ffoo/-fno-foo
	options.
	* gcc.target/mips/fuse-caller-save.h: New include file.
	* gcc.target/mips/fuse-caller-save.c: New test.
	* gcc.target/mips/fuse-caller-save-mips16.c: Same.
	* gcc.target/mips/fuse-caller-save-micromips.c: Same.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>

From-SVN: r211049
2014-05-29 08:59:08 +00:00
Evgeny Stupachenko 41455f8918 pr52252-ld.c: Fix target and options for the test.
gcc/testsuite/
        * gcc.dg/vect/pr52252-ld.c: Fix target and options for the test.

From-SVN: r211048
2014-05-29 08:53:02 +00:00
Tom de Vries 4b29b96587 Fix bootstrap on powerpc64le-linux-gnu
2014-05-29  Tom de Vries  <tom@codesourcery.com>

	* final.c (collect_fn_hard_reg_usage): Guard variable declaration
	with #ifdef STACK_REGS.

From-SVN: r211047
2014-05-29 08:25:05 +00:00
Jan Hubicka 726f0774e0 varasm.c (get_variable_section): Walk aliases.
* varasm.c (get_variable_section): Walk aliases.
	(place_block_symbol): Walk aliases.

From-SVN: r211045
2014-05-29 06:14:52 +00:00
GCC Administrator 886508277f Daily bump.
From-SVN: r211041
2014-05-29 00:16:57 +00:00
Ian Lance Taylor d76a1885bd runtime: disable split stacks for runtime_printf function under Clang
LLVM's code generator does not currently support split stacks for vararg
functions, so we disable split stacks for the only function that uses this
feature under Clang. This appears to be OK as long as:
- this function only calls non-inlined, internal-linkage (hence no dynamic
  loader) functions compiled with split stacks (i.e. go_vprintf), which can
  allocate more stack space as required;
- this function itself does not occupy more than BACKOFF bytes of stack space
  (see libgcc/config/i386/morestack.S).
These conditions are currently known to be satisfied by Clang on x86-32 and
x86-64. Note that signal handlers receive slightly less stack space than they
would normally do if they happen to be called while this function is being
run. If this turns out to be a problem we could consider increasing BACKOFF.

From-SVN: r211037
2014-05-29 00:03:30 +00:00
Ian Lance Taylor 93c521ea9c runtime: fix misc gcc-isms and undefined behavior
This includes the use of __complex and __builtin_ functions where
unprefixed entities would suffice, and the use of a union for
bit-casting between types.

From-SVN: r211036
2014-05-28 23:10:47 +00:00
Pedro Alves bc2eed9a8e Fix demangler testsuite crashes with CP_DEMANGLE_DEBUG defined
Running the demangler's testsuite with CP_DEMANGLE_DEBUG defined
crashes, with:

 Program received signal SIGSEGV, Segmentation fault.
 0x000000000040a8c3 in d_dump (dc=0x1, indent=12) at ../../src/libiberty/cp-demangle.c:567
 567       switch (dc->type)

 (gdb) bt 3
 #0  0x000000000040a8c3 in d_dump (dc=0x1, indent=12) at ../../src/libiberty/cp-demangle.c:567
 #1  0x000000000040ae47 in d_dump (dc=0x7fffffffd098, indent=10) at ../../src/libiberty/cp-demangle.c:787
 #2  0x000000000040ae47 in d_dump (dc=0x7fffffffd0c8, indent=8) at ../../src/libiberty/cp-demangle.c:787

Note dc=0x1, which is obviously a bogus pointer.  This is the end of
d_dump recursing for a component type that that doesn't actually have
subtrees:

 787       d_dump (d_left (dc), indent + 2);
 788       d_dump (d_right (dc), indent + 2);

This fixes the two cases the testsuite currently trips on.

libiberty/
2014-05-28  Pedro Alves  <palves@redhat.com>

	* cp-demangle.c (d_dump): Handle DEMANGLE_COMPONENT_FUNCTION_PARAM
	and DEMANGLE_COMPONENT_NUMBER.

From-SVN: r211035
2014-05-28 21:55:41 +00:00
Pedro Alves fd9ed1ae2d Add myself to MAINTAINERS.
2014-05-28  Pedro Alves  <palves@redhat.com>

	* MAINTAINERS (Write After Approval): Add myself.

From-SVN: r211034
2014-05-28 21:51:47 +00:00
Tom de Vries ea0b381f6e revert: lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
2014-05-28  Tom de Vries  <tom@codesourcery.com>

	Revert:
	2014-05-28  Tom de Vries  <tom@codesourcery.com>

	* lra-int.h (struct lra_reg): Add field actual_call_used_reg_set.
	* lra.c (initialize_lra_reg_info_element): Add init of
	actual_call_used_reg_set field.
	(lra): Call lra_create_live_ranges before lra_inheritance for
	-fuse-caller-save.
	* lra-assigns.c (lra_assign): Allow call_used_regs to cross calls for
	-fuse-caller-save.
	* lra-constraints.c (need_for_call_save_p): Use actual_call_used_reg_set
	instead of call_used_reg_set for -fuse-caller-save.
	* lra-lives.c (process_bb_lives): Calculate actual_call_used_reg_set.

From-SVN: r211033
2014-05-28 21:50:28 +00:00
Richard Sandiford 73f793e3bb md.texi: Document that the % constraint character must be at the beginning of the string.
gcc/
	* doc/md.texi: Document that the % constraint character must
	be at the beginning of the string.
	* genoutput.c (validate_insn_alternatives): Check that '=',
	'+' and '%' only appear at the beginning of a constraint.
	* ira.c (commutative_constraint_p): Delete.
	(ira_get_dup_out_num): Expect the '%' commutativity marker to be
	at the start of the string.
	* config/alpha/alpha.md (*movmemdi_1, *clrmemdi_1): Remove
	duplicate '='s.
	* config/arm/neon.md (bicdi3_neon): Likewise.
	* config/iq2000/iq2000.md (addsi3_internal, subsi3_internal, sgt_si)
	(slt_si, sltu_si): Likewise.
	* config/vax/vax.md (sbcdi3): Likewise.
	* config/h8300/h8300.md (*cmpstz): Remove duplicate '+'.
	* config/arc/arc.md (mulsi_600, mulsidi_600, umulsidi_600)
	(mul64): Move '%' to beginning of constraint.
	* config/arm/arm.md (*xordi3_insn): Likewise.
	* config/nds32/nds32.md (add<mode>3, mulsi3, andsi3, iorsi3)
	(xorsi3): Likewise.

From-SVN: r211031
2014-05-28 19:49:18 +00:00