Commit Graph

135959 Commits

Author SHA1 Message Date
Alan Hayward 2d8c6dc1d9 aarch64-protos.h (aarch64_simd_disambiguate_copy): Declare.
gcc/
	* config/aarch64/aarch64-protos.h (aarch64_simd_disambiguate_copy):
	Declare.
	* config/aarch64/aarch64.c (aarch64_classify_address): Allow extra
	addressing modes for BE.
	(aarch64_print_operand): Add 'R' specifier.
	(aarch64_simd_disambiguate_copy): Delete.
	(aarch64_simd_emit_reg_reg_move): New function.
	* config/aarch64/aarch64-simd.md: Use aarch64_simd_emit_reg_reg_move
	in define_splits for structural moves.
	(mov<mode>): Use less restrictive predicates.
	(*aarch64_mov<mode>): Simplify and only allow for LE.
	(*aarch64_be_movoi, *aarch64_be_movci, *aarch64_be_movxi): New.

From-SVN: r219958
2015-01-21 17:53:31 +00:00
Alan Hayward 9ab41c76dd rtlanal.c (subreg_get_info): Exit early for simple and common cases.
gcc/
2015-01-25  Alan Hayward  <alan.hayward@arm.com>

	* rtlanal.c (subreg_get_info): Exit early for simple and common
	cases.

From-SVN: r219957
2015-01-21 17:53:04 +00:00
Andrew Waterman 122a5d603b Avoid misaligned atomic operations
Andrew Waterman <waterman@cs.berkeley.edu>

 * fop_n.c (libat_fetch_op): Align address to word boundary.
 (libat_op_fetch): Likewise.

From-SVN: r219954
2015-01-21 09:17:03 -08:00
Jonathan Wakely f81f49c180 * config/abi/pre/gnu.ver: Use [jmy] for size_t parameters.
From-SVN: r219953
2015-01-21 16:17:31 +00:00
Jonathan Wakely deff1f4105 * testsuite/29_atomics/atomic/64658.cc: Test stored value.
From-SVN: r219952
2015-01-21 16:17:17 +00:00
Richard Henderson 4005b96a70 re PR target/64669 (aarch64-linux profiledbootstrap failure)
PR target/64669

 * ccmp.c (used_in_cond_stmt_p): Remove.
 (expand_ccmp_expr): Don't use it.

From-SVN: r219951
2015-01-21 07:47:49 -08:00
Christophe Lyon 6fdbf71325 [ARM/AArch64][testsuite] Add vqdmull_n tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vqdmull_n.c: New file.

From-SVN: r219950
2015-01-21 12:32:32 +01:00
Christophe Lyon 9b84f8f53a [ARM/AArch64][testsuite] Add vqdmull_lane tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vqdmull_lane.c: New file.

From-SVN: r219949
2015-01-21 12:31:20 +01:00
Christophe Lyon 993cb72001 [ARM/AArch64][testsuite] Add vqdmull tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vqdmull.c: New file.

From-SVN: r219948
2015-01-21 12:30:16 +01:00
Christophe Lyon c6c3bdce8c [ARM/AArch64][testsuite] Add vqdmulh_n tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vqdmulh_n.c: New file.

From-SVN: r219947
2015-01-21 12:28:55 +01:00
Christophe Lyon 4925848234 [ARM/AArch64][testsuite] Add vqdmulh_lane tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vqdmulh_lane.c: New file.

From-SVN: r219946
2015-01-21 12:26:06 +01:00
Christophe Lyon 77566bc748 [ARM/AArch64][testsuite] Add vqdmulh tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vqdmulh.c: New file.

From-SVN: r219945
2015-01-21 12:25:11 +01:00
Christophe Lyon 94b9215c87 [ARM/AArch64][testsuite] Add vmull_n tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmull_n.c: New file.

From-SVN: r219944
2015-01-21 12:23:31 +01:00
Christophe Lyon 43da1074f8 [ARM/AArch64][testsuite] Add vmull_lane tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmull_lane.c: New file.

From-SVN: r219943
2015-01-21 12:21:53 +01:00
Christophe Lyon e5584668dc [ARM/AArch64][testsuite] Add vmull tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmull.c: New file.

From-SVN: r219942
2015-01-21 12:18:57 +01:00
Christophe Lyon 8afb62ac1c [[ARM/AArch64][testsuite] 24/36] Add vmul_n tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmul_n.c: New file.

From-SVN: r219941
2015-01-21 12:17:34 +01:00
Christophe Lyon ad9b853c30 [ARM/AArch64][testsuite] Add vmul_lane tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmul_lane.c: New file.

From-SVN: r219940
2015-01-21 12:16:23 +01:00
Christophe Lyon d048f8c339 [ARM/AArch64][testsuite] Add vmovn tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmovn.c: New file.

From-SVN: r219939
2015-01-21 12:14:57 +01:00
Christophe Lyon 84722ccab1 [ARM/AArch64][testsuite] Add vsubw tests, putting most of the code in common with vaddw through vXXWw.inc.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vXXXw.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vsubw.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vaddw.c: Use code from
	vXXXw.inc.

From-SVN: r219938
2015-01-21 12:13:21 +01:00
Christophe Lyon 9ba0832112 [ARM/AArch64][testsuite] Add vsubl tests, put most of the code in common with vaddl in vXXXl.inc.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vXXXl.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vsubl.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vaddl.c: Use code from
	vXXXl.inc.

From-SVN: r219937
2015-01-21 12:11:47 +01:00
Andre Vehreschild 09b9cd1f18 * MAINTAINER: Added myself.
From-SVN: r219936
2015-01-21 11:54:37 +01:00
Renlin Li 8f478ee6e3 [PATCH]Skip g++.dg/tls testes on target using status wrapper
/testsuite
2015-01-21 Renlin Li <renlin.li@arm.com>

	* g++.dg/tls/thread_local5.C: Skip when dejagnu wrapper is used.
	* g++.dg/tls/thread_local5g.C: Likewise.
	* g++.dg/tls/thread_local6g.C: Likewise.

From-SVN: r219935
2015-01-21 10:25:42 +00:00
Christophe Lyon d9355320f1 [ARM/AArch64][testsuite] Add vsli_n and vsri_n tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vsXi_n.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vsli_n.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vsri_n.c: New file.

From-SVN: r219934
2015-01-21 11:23:42 +01:00
Matthias Klose c18b73e1d0 libtool-version: Bump soversion.
2015-01-21  Matthias Klose  <doko@ubuntu.com>

        * libtool-version: Bump soversion.

From-SVN: r219933
2015-01-21 10:17:59 +00:00
Christophe Lyon dc60142a88 [ARM/AArch64][testsuite] Add vqdmlal_n and vqdmlsl_n tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vqdmlXl_n.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlal_n.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlsl_n.c: New file.

From-SVN: r219932
2015-01-21 11:15:13 +01:00
Christophe Lyon e6ad0b153e [ARM/AArch64][testsuite] Add vqdmlal_lane and vqdmlsl_lane tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vqdmlXl_lane.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlal_lane.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlsl_lane.c: New file.

From-SVN: r219931
2015-01-21 11:13:47 +01:00
Christophe Lyon 7378039064 [ARM/AArch64][testsuite] Add vqdmlal and vqdmlsl tests.
2015-01-21  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vqdmlXl.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlal.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vqdmlsl.c: New file.

From-SVN: r219930
2015-01-21 11:11:44 +01:00
Nick Clifton cf836bd3d6 rl78.c (rl78_calculate_death_notes): Look inside PARALLELs.
* config/rl78/rl78.c (rl78_calculate_death_notes): Look inside
	PARALLELs.

From-SVN: r219929
2015-01-21 09:34:38 +00:00
Richard Biener cbf5d0e70c re PR middle-end/64313 (gcc.dg/torture/builtin-explog-1.c fails on bare-metal targets)
2015-01-21  Richard Biener  <rguenther@suse.de>

	PR middle-end/64313
	* tree-core.h (builtin_info, builtin_info_type): Turn from
	an object with two arrays into an array of an object with
	decl and two flags, implicit_p and declared_p.
	* tree.h (builtin_decl_explicit, builtin_decl_implicit,
	set_builtin_decl, set_builtin_decl_implicit_p,
	builtin_decl_explicit_p, builtin_decl_implicit_p): Adjust.
	(set_builtin_decl_declared_p, builtin_decl_declared_p): New functions.
	* builtins.c (builtin_info): Adjust.
	* gimplify.c (gimplify_addr_expr): References to builtins
	that have been declared by the user makes them eligible for
	use by the compiler.  Call set_builtin_decl_implicit_p on them.

	c/
	* c-decl.c (merge_decls): Call set_builtin_decl_declared_p
	for builtins the user declared correctly.

	cp/
	* decl.c (duplicate_decls): Call set_builtin_decl_declared_p
	for builtins the user declared correctly.

From-SVN: r219928
2015-01-21 09:04:53 +00:00
Jeff Law 1f36fbf4a8 re PR target/59946 (-mpcrel -O2 produces illegal asm code)
2015-01-20  Jeff Law  <law@redhat.com>

	PR target/59946
	* config/m68k/m68k.md (Comparison expanders and patterns): Do not
	allow pc-relative addresses in operand predicates or constraints.

	PR target/59946
	* gcc.target/m68k/pr59946.c: New test.

From-SVN: r219927
2015-01-20 23:17:50 -07:00
Bin Cheng 18092bec58 arm.c (arm_cortex_a53_tune, [...]): Prefer neon on aarch32 processors for stringops.
* config/arm/arm.c (arm_cortex_a53_tune, arm_cortex_a57_tune): Prefer
	neon on aarch32 processors for stringops.

From-SVN: r219926
2015-01-21 05:57:05 +00:00
GCC Administrator b7d2b8da5d Daily bump.
From-SVN: r219925
2015-01-21 00:16:57 +00:00
Christophe Lyon 07cdd01e28 [ARM/AArch64][testsuite] Add vmlal_n and vmlsl_n tests.
2015-01-20  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmlXl_n.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmlal_n.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmlsl_n.c: New file.

From-SVN: r219922
2015-01-21 00:25:37 +01:00
Christophe Lyon e20a3d0f5c [ARM/AArch64][testsuite] Add vmlal_lane and vmlsl_lane tests.
2015-01-20  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmlXl_lane.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmlal_lane.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmlsl_lane.c: New file.

From-SVN: r219921
2015-01-21 00:23:44 +01:00
Christophe Lyon 8e4a8e54ae [ARM/AArch64][testsuite] Add vmlal and vmlsl tests.
2015-01-20  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmlXl.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmlal.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmlsl.c: New file.

From-SVN: r219920
2015-01-21 00:21:35 +01:00
Christophe Lyon 8df0f8aad2 [ARM/AArch64][testsuite] Add vtrn tests. Refactor vzup and vzip tests.
2015-01-20  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vshuffle.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vtrn.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vuzp.c: Use code from
	vshuffle.inc.
	* gcc.target/aarch64/advsimd-intrinsics/vzip.c: Use code from
	vshuffle.inc.

From-SVN: r219919
2015-01-21 00:19:12 +01:00
Christophe Lyon 1a1345f4e8 [ARM/AArch64][testsuite] Add vmla_lane and vmls_lane tests.
2015-01-20  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmlX_lane.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmla_lane.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmls_lane.c: New file.

From-SVN: r219918
2015-01-20 23:21:56 +01:00
Christophe Lyon 84c8a10b6f [ARM/AArch64][testsuite] Add vmla and vmls tests.
2015-01-20  Christophe Lyon  <christophe.lyon@linaro.org>

	* gcc.target/aarch64/advsimd-intrinsics/vmlX.inc: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmla.c: New file.
	* gcc.target/aarch64/advsimd-intrinsics/vmls.c: New file.

From-SVN: r219917
2015-01-20 22:44:51 +01:00
Ian Lance Taylor 2d8536f614 compiler: Do not mark unused variables as used inside closures.
Fixes golang/go#6415.

From-SVN: r219916
2015-01-20 21:29:28 +00:00
Richard Henderson 039ad4c2f4 re PR libffi/64581 (libffi/testsuite/libffi.special/special.exp doesn't use newly built GCC)
PR libffi/64581

 * testsuite/lib/libffi.exp (libffi_target_compile): Don't switch
 to C++ mode when compiling C++ source code.

From-SVN: r219915
2015-01-20 13:26:04 -08:00
Christophe Lyon a5504e99e1 [ARM/AArch64][testsuite] Add vldX_dup test.
* gcc.target/aarch64/advsimd-intrinsics/vldX_dup.c: New file.

From-SVN: r219914
2015-01-20 22:03:49 +01:00
Jakub Jelinek d302f41d4e * gcc.dg/guality/pr49888.c (v): Add __attribute__((used)).
From-SVN: r219913
2015-01-20 21:41:04 +01:00
Jakub Jelinek 3ea3641880 re PR sanitizer/64632 (runtime error: member call on address 0x0000004318a8 which does not point to an object of type 'ios_base')
PR sanitizer/64632
	* ubsan/ubsan_type_hash.cc: Cherry pick upstream r224972.

	* g++.dg/ubsan/pr64632.C: New test.

From-SVN: r219912
2015-01-20 21:39:52 +01:00
Jan Hubicka befb1f36a7 re PR ipa/63576 (ICE : in ipa_merge_profiles, at ipa-utils.c:540 during Firefox LTO/PGO build)
PR ipa/63576
	* ipa-utils.c (ipa_merge_profiles): Merge speculative edges.

From-SVN: r219910
2015-01-20 20:03:23 +00:00
Jan Hubicka bb1e543c64 re PR lto/45375 ([meta-bug] Issues with building Mozilla (i.e. Firefox) with LTO)
PR lto/45375
	* ipa-inline.c: Include lto-streamer.h
	(report_inline_failed_reason): Output source file differences and
	flags on optimization/target node mismatch.
	(can_inline_edge_p): Consider caller to be the outer inline function;
	be less restrictive about matching opimize and optimize_size attributes.
	(inline_account_function_p): Break out from ...
	(inline_small_functions): ... here.
	* ipa-inline-transform.c (clone_inlined_nodes): Use
	inline_account_function_p.
	(inline_call): Use optimize attribution; use inline_account_function_p.
	(inline_transform): Use opt_for_fn.
	* ipa-inline.h (inline_account_function_p): Declare.

From-SVN: r219909
2015-01-20 19:48:59 +00:00
Jakub Jelinek 17cb42833c re PR debug/64663 (ICE at -O1 and above with -g enabled on x86_64-linux-gnu)
PR debug/64663
	* dwarf2out.c (decl_piece_node): Don't put bitsize into
	mode if bitsize <= 0.
	(decl_piece_bitsize, adjust_piece_list, add_var_loc_to_decl,
	dw_sra_loc_expr): Use HOST_WIDE_INT instead of int for bit
	sizes and positions.

	* gcc.dg/pr64663.c: New test.

From-SVN: r219906
2015-01-20 19:29:58 +01:00
Ian Lance Taylor 73cb399d51 re PR go/64683 (FAIL: runtime/pprof -- testing.go:278: The entry did not match)
PR go/64683
runtime/pprof: Let memory profiler test pass if value not collected.

Since gccgo's GC is not precise, the transient value may not
be collected.  Let the regexp match that case as well.

From-SVN: r219900
2015-01-20 16:11:36 +00:00
Chung-Lin Tang a9ce4e4a70 nios2.c (nios2_asm_file_end): Implement TARGET_ASM_FILE_END hook for adding .note.GNU-stack section when needed.
2015-01-20  Chung-Lin Tang  <cltang@codesourcery.com>

	gcc/
	* config/nios2/nios2.c (nios2_asm_file_end): Implement
	TARGET_ASM_FILE_END hook for adding .note.GNU-stack section when
	needed.
	(TARGET_ASM_FILE_END): Define.

	libgcc/
	* config/nios2/linux-unwind.h (nios2_fallback_frame_state):
	Update rt_sigframe format and address for current Nios II
	Linux conventions.

From-SVN: r219898
2015-01-20 14:49:51 +00:00
Paolo Carlini 3b6444f0aa re PR c++/64383 (missed warning for unused variable.)
2015-01-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/64383
	* g++.dg/warn/Wunused-var-23.C: New.

From-SVN: r219896
2015-01-20 14:19:32 +00:00
Paolo Carlini 67ee3e618e re PR c++/59937 ([constexpr] bogus diagnostic "used in its own initializer")
2015-01-20  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/59937
	* g++.dg/cpp0x/constexpr-59937-1.C: New.
	* g++.dg/cpp0x/constexpr-59937-2.C: Likewise.

From-SVN: r219894
2015-01-20 13:39:10 +00:00