Commit Graph

131275 Commits

Author SHA1 Message Date
Andreas Schwab
b7249d318f target-supports.exp (check_effective_target_arm_nothumb): Also check for __arm__.
* lib/target-supports.exp (check_effective_target_arm_nothumb):
Also check for __arm__.

From-SVN: r212978
2014-07-24 11:03:30 +00:00
Jiong Wang
8f454e9f8a [AArch64] Optimize epilogue in the presence of an outgoing args area.
From-SVN: r212976
2014-07-24 10:58:28 +00:00
Nick Clifton
8ae9698d08 rx.md (stack_push): Adjust RTL to account for the fact that operations are taking place in parallel.
* config/rx/rx.md (stack_push): Adjust RTL to account for the fact
	that operations are taking place in parallel.
	* config/rx.h (FRAME_POINTER_CFA_OFFSET): Delete.

From-SVN: r212973
2014-07-24 09:05:27 +00:00
Marek Polacek
cdc94aca13 re PR c/57653 (filename information discarded when using -imacros)
PR c/57653
	* c-opts.c (c_finish_options): If -imacros is in effect, return.

	* c-c++-common/pr57653.c: New test.
	* c-c++-common/pr57653.h: New file.
	* c-c++-common/pr57653-2.c: New test.
	* c-c++-common/pr57653-2.h: New file.

From-SVN: r212972
2014-07-24 09:00:13 +00:00
Thomas Schwinge
34f2124e5f Add missing break statement.
gcc/
	* omp-low.c (extract_omp_for_data): Add missing break statement.

From-SVN: r212971
2014-07-24 10:27:34 +02:00
Richard Biener
b4c9af965f tree-inline.h (estimate_move_cost): Add speed_p parameter.
2014-07-24  Richard Biener  <rguenther@suse.de>

	* tree-inline.h (estimate_move_cost): Add speed_p parameter.
	* tree-inline.c (estimate_move_cost): Add speed_p parameter
	and adjust MOVE_RATIO query accordingly.
	(estimate_num_insns): Adjust callers.
	* ipa-prop.c (ipa_populate_param_decls): Likewise.
	* ipa-cp.c (gather_context_independent_values,
	estimate_local_effects): Likewise.
	* ipa-split.c (consider_split): Likewise.

From-SVN: r212970
2014-07-24 08:08:26 +00:00
Trevor Saunders
997ef9e738 remove useless unused attributes in i386 code
gcc/

	* config/i386/driver-i386.c: Remove names of unused arguments and
	unnecessary unused attributes.
	* config/i386/host-mingw32.c: Likewise.
	* config/i386/i386.c: Likewise.
	* config/i386/winnt-stubs.c: Likewise.
	* config/i386/winnt.c: Likewise.

From-SVN: r212968
2014-07-24 04:56:29 +00:00
GCC Administrator
c9b1a29f6c Daily bump.
From-SVN: r212967
2014-07-24 00:16:54 +00:00
H.J. Lu
a6eb46e841 Add a blank line
From-SVN: r212964
2014-07-23 15:17:32 -07:00
H.J. Lu
2e1e91f126 Update x32 baseline_symbols.txt
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Update.

From-SVN: r212963
2014-07-23 15:16:52 -07:00
Jiong Wang
c8b2454e9c [AArch64] Prologue and epilogue test cases.
From-SVN: r212959
2014-07-23 16:45:18 +00:00
Jiong Wang
159313d9b1 [AArch64] Simplify epilogue expansion using new helper functions.
From-SVN: r212958
2014-07-23 16:34:12 +00:00
Jiong Wang
80c11907f7 [AArch64] Simplify prologue expand using new helper functions.
From-SVN: r212957
2014-07-23 16:26:10 +00:00
Jiong Wang
8ed2fc62d4 [AArch64] Split save restore path.
From-SVN: r212956
2014-07-23 16:22:17 +00:00
Jiong Wang
0ec74a1ee3 [AArch64] Unify vector and core register save/restore code.
From-SVN: r212955
2014-07-23 16:20:38 +00:00
Jiong Wang
72df5c1f62 [AArch64] Use helper functions to handle multiple modes.
From-SVN: r212954
2014-07-23 16:17:08 +00:00
Jiong Wang
64dedd72f6 [AArch64] Refactor code out into aarch64_next_callee_save
From-SVN: r212952
2014-07-23 16:14:20 +00:00
Jiong Wang
bc5f5f3695 [AArch64] Hoist calculation of register rtx.
From-SVN: r212951
2014-07-23 16:11:50 +00:00
Jiong Wang
55185278ab [AArch64] Remove useless variable 'increment'
From-SVN: r212950
2014-07-23 16:06:52 +00:00
Jiong Wang
0b4a9743a3 [AArch64] Use register offset in cfun->machine->frame.reg_offset
From-SVN: r212949
2014-07-23 16:04:39 +00:00
Bin Cheng
106d7513c6 Revert r212893:
PR target/55701
	* config/arm/arm.md (setmem): New pattern.
	* config/arm/arm-protos.h (struct tune_params): New fields.
	(arm_gen_setmem): New prototype.
	* config/arm/arm.c (arm_slowmul_tune): Initialize new fields.
	(arm_fastmul_tune, arm_strongarm_tune, arm_xscale_tune): Ditto.
	(arm_9e_tune, arm_v6t2_tune, arm_cortex_tune): Ditto.
	(arm_cortex_a8_tune, arm_cortex_a7_tune): Ditto.
	(arm_cortex_a15_tune, arm_cortex_a53_tune): Ditto.
	(arm_cortex_a57_tune, arm_cortex_a5_tune): Ditto.
	(arm_cortex_a9_tune, arm_cortex_a12_tune): Ditto.
	(arm_v7m_tune, arm_v6m_tune, arm_fa726te_tune): Ditto.
	(arm_const_inline_cost): New function.
	(arm_block_set_max_insns): New function.
	(arm_block_set_non_vect_profit_p): New function.
	(arm_block_set_vect_profit_p): New function.
	(arm_block_set_unaligned_vect): New function.
	(arm_block_set_aligned_vect): New function.
	(arm_block_set_unaligned_non_vect): New function.
	(arm_block_set_aligned_non_vect): New function.
	(arm_block_set_vect, arm_gen_setmem): New functions.

	PR target/55701
	* gcc.target/arm/memset-inline-1.c: New test.
	* gcc.target/arm/memset-inline-2.c: New test.
	* gcc.target/arm/memset-inline-3.c: New test.
	* gcc.target/arm/memset-inline-4.c: New test.
	* gcc.target/arm/memset-inline-5.c: New test.
	* gcc.target/arm/memset-inline-6.c: New test.
	* gcc.target/arm/memset-inline-7.c: New test.
	* gcc.target/arm/memset-inline-8.c: New test.
	* gcc.target/arm/memset-inline-9.c: New test.

	Revert r212892:
	* config/arm/arm.c (output_move_neon): Handle REG explicitly.

From-SVN: r212948
2014-07-23 16:02:15 +00:00
Jiong Wang
7bf7a695cc [AArch64] Remove useless parameter base_rtx.
From-SVN: r212947
2014-07-23 15:58:30 +00:00
Jiong Wang
ec01976b4f [AArch64] Remove useless local variable.
From-SVN: r212946
2014-07-23 15:57:43 +00:00
Jiong Wang
b8a404dc87 [AArch64] Consistent parameter types in prologue/epilogue generation.
From-SVN: r212945
2014-07-23 15:56:42 +00:00
Jiong Wang
a007a21c4a [AArch64] GNU-Stylize some un-formatted code.
From-SVN: r212943
2014-07-23 15:55:33 +00:00
Marius Cornea
0f8f303baf Remove redundant tests
PR libgcc/61685
	* bid128_fma.c (rounding_correction): Remove redundant tests.

From-SVN: r212942
2014-07-23 07:27:55 -07:00
Sebastian Huber
c971914821 t-rtems-eabi: Add mthumb/march=armv7-r/mfpu=vfpv3-d16/mfloat-abi=hard...
2014-07-23  Sebastian Huber  <sebastian.huber@embedded-brains.de>

	* config/arm/t-rtems-eabi: Add
	mthumb/march=armv7-r/mfpu=vfpv3-d16/mfloat-abi=hard,
	mthumb/march=armv7-m/mfpu=fpv4-sp-d16/mfloat-abi=hard,
	mbig-endian/mthumb/march=armv7-r, and
	mbig-endian/mthumb/march=armv7-r/mfpu=vfpv3-d16/mfloat-abi=hard
	multilibs.

From-SVN: r212936
2014-07-23 13:59:41 +00:00
Sebastian Huber
00020ddac1 config.gcc: Add nios2-*-rtems*.
2014-07-23  Sebastian Huber  <sebastian.huber@embedded-brains.de>
	    Chris Johns <chrisj@rtems.org>
	    Joel Sherrill <joel.sherrill@oarcorp.com>

	* config.gcc: Add nios2-*-rtems*.
	* config/nios2/rtems.h: New file.
	* gcc/config/nios2/t-rtems: New file.


Co-Authored-By: Chris Johns <chrisj@rtems.org>
Co-Authored-By: Joel Sherrill <joel.sherrill@oarcorp.com>

From-SVN: r212935
2014-07-23 13:56:25 +00:00
Marek Polacek
31e1324bf9 bounds-2.c (fn4): Adjust to check the array size in the structure.
* c-c++-common/ubsan/bounds-2.c (fn4): Adjust to check the array size
	in the structure.

From-SVN: r212933
2014-07-23 13:24:14 +00:00
Segher Boessenkool
b50a9d3894 rs6000: fix for PR61396 (wide-int fallout)
CONSTANT_P is true for more than just all kinds of constant number.
This patch undoes that part of the wide-int patches.

From-SVN: r212932
2014-07-23 14:35:16 +02:00
Nathan Sidwell
d10ee722fd gcov-tool.c (gcov_list): Declare here.
gcc/
	* gcov-tool.c (gcov_list): Declare here.
	(set_gcov_list): Remove.
	(gcov_output_files): Set gcov_list directly.

	libgcc/
	* libgcov-driver.c (set_gcov_list): Remove.
	(gcov_list): Make non-static in GCOV_TOOL.
	* libgcov.h (GCOV_TOOL_LINKAGE): Remove unused #define.

From-SVN: r212931
2014-07-23 12:08:31 +00:00
Jonathan Wakely
da03858bf0 printers.py (StdExpAnyPrinter): Convert type to string instead of using gdb.Type.name attribute.
* python/libstdcxx/v6/printers.py (StdExpAnyPrinter): Convert type
	to string instead of using gdb.Type.name attribute.

From-SVN: r212929
2014-07-23 11:45:17 +01:00
Host Schirmeier
861d14dfa6 invoke.texi: -O3 enables -ftree-loop-distribute-patterns.
2014-07-23  Host Schirmeier  <horst@schirmeier.com>

	* doc/invoke.texi: -O3 enables -ftree-loop-distribute-patterns.

From-SVN: r212928
2014-07-23 09:42:34 +00:00
Jiong Wang
47e1e86f7b [ARM] Enable arm target in ira-shrinkwrap-prep* testcases.
[gcc/]

	* config/arm/arm.c (arm_get_frame_offsets): If both r3 and other
	callee-saved registers are available for padding purpose
	and r3 is not mandatory, then prefer use those callee-saved
	instead of r3.

[gcc/testsuite]

	* gcc.dg/ira-shrinkwrap-prep-1.c (target): Add arm_nothumb.
	* gcc.dg/ira-shrinkwrap-prep-2.c (target): Likewise.
	* gcc.dg/pr10474.c (target): Likewise.

From-SVN: r212927
2014-07-23 09:24:58 +00:00
Richard Biener
e9a8fc239e params.def (PARAM_MAX_COMBINE_INSNS): New.
2014-07-23  Richard Biener  <rguenther@suse.de>

	* params.def (PARAM_MAX_COMBINE_INSNS): New.
	* combine.c: Include statistics.h and params.h.
	(combine_instructions): Guard three and four insn combines
	with max-combine-insns value.  Record statistics for combines
	performed.
	* doc/invoke.texi (max-combine-insns): Document new param.

From-SVN: r212923
2014-07-23 09:10:37 +00:00
Roman Gareev
322a0b39c8 gcc/
* graphite-isl-ast-to-gimple.c:
	(translate_isl_ast_node_block): New function.
	(translate_isl_ast): Add calling of translate_isl_ast_node_block.

	gcc/testsuite/gcc.dg/graphite/
	* isl-ast-gen-blocks-1.c: New testcase.
	* isl-ast-gen-blocks-2.c: New testcase.

From-SVN: r212922
2014-07-23 07:05:00 +00:00
Roman Gareev
fb3764d13a gcc/
* graphite-isl-ast-to-gimple.c:
	(get_max_schedule_dimensions): New function.
	(extend_schedule): Likewise.
	(generate_isl_schedule): Add calling of extend_schedule and
	get_max_schedule_dimensions.

From-SVN: r212921
2014-07-23 06:52:14 +00:00
GCC Administrator
8d720481c8 Daily bump.
From-SVN: r212919
2014-07-23 00:16:29 +00:00
Martin Jambor
a3dfa4984a re PR ipa/61160 (wrong code with -O3 (or ICE: verify_cgraph_node failed: edge points to wrong declaration))
2014-07-22  Martin Jambor  <mjambor@suse.cz>

	PR ipa/61160
	* g++.dg/ipa/pr61160-3.C (main): Return zero.

From-SVN: r212915
2014-07-22 18:20:25 +02:00
Alan Lawrence
d8a7c72cba Fix vext[us]64_1.c test on ARM by unsharing test body.
* gcc.target/arm/simd/vexts64_1.c: Remove #include, inline test body.
	* gcc.target/arm/simd/vextu64_1.c: Likewise.
	* gcc.target/aarch64/simd/ext_s64_1.c: Likewise.
	* gcc.target/aarch64/simd/ext_u64_1.c: Likewise.
	* gcc.target/aarch64/simd/ext_s64.x: Remove.
	* gcc.target/aarch64/simd/ext_u64.x: Remove.

From-SVN: r212914
2014-07-22 16:02:32 +00:00
Kyrylo Tkachov
781aeb73bc [AArch64][2/2] Add rtx cost function handling of clz, clrsb, rbit.
* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle CLRSB, CLZ.
	(case UNSPEC): Handle UNSPEC_RBIT.

From-SVN: r212913
2014-07-22 13:39:16 +00:00
Kyrylo Tkachov
dfc98d99b6 [AArch64][1/2] Remove UNSPEC_CLS and use clrsb RTL code in its' place.
* config/aarch64/aarch64.md: Delete UNSPEC_CLS.
	(clrsb<mode>2): Use clrsb RTL code instead of UNSPEC_CLS.

From-SVN: r212912
2014-07-22 13:35:42 +00:00
Yuri Rumyantsev
9f1da4c35a re PR tree-optimization/61822 (gcc.dg/vect/vect-cond-reduc-1.c FAILs)
gcc/testsuite

        PR tree-optimization/61822
        * gcc.dg/vect/cond-reduc-1.c: Add missed dg directive.

From-SVN: r212911
2014-07-22 12:53:04 +00:00
Kyrylo Tkachov
0ce0459ec9 [AArch64] Implement vbsl_f64 arm_neon.h intrinsic.
[gcc/]
	* config/aarch64/arm_neon.h (vbsl_f64): New intrinsic.

[testsuite/]
	* gcc.target/aarch64/simd/vbsl_f64_1.c: New test.

From-SVN: r212910
2014-07-22 12:33:51 +00:00
Uros Bizjak
317db6f80f fuse-caller-save-xmm.c (dg-options): Use -msse2 -mno-avx instead of -msse.
* gcc.target/i386/fuse-caller-save-xmm.c (dg-options): Use
	-msse2 -mno-avx instead of -msse.

From-SVN: r212909
2014-07-22 13:27:49 +02:00
Uros Bizjak
339c5a7ff7 imm-devirt-2.C (dg-final): Improve einline dump string.
* g++.dg/ipa/imm-devirt-2.C (dg-final): Improve einline dump string.
	* gcc.dg/pr44024.c (dg-options): Add -O1.
	(dg-final): Check for the condition.
	* gcc.dg/vect/pr61680.c (dg-final): Cleanup vect tree dump.

From-SVN: r212905
2014-07-22 09:23:56 +02:00
Roman Gareev
5493d3130c graphite-isl-ast-to-gimple.c: Add inclusion of gimple-ssa.h, tree-into-ssa.h.
gcc/
	* graphite-isl-ast-to-gimple.c:
	Add inclusion of gimple-ssa.h, tree-into-ssa.h.
	(ivs_params_clear):
	(build_iv_mapping): New function.
	(translate_isl_ast_node_user): Likewise.
	(translate_isl_ast): Add calling of translate_isl_ast_node_user.

	gcc/testsuite/gcc.dg/graphite/
	* isl-ast-gen-single-loop-1.c: New testcase.
	* isl-ast-gen-single-loop-2.c: New testcase.
	* isl-ast-gen-single-loop-3.c: New testcase.

From-SVN: r212904
2014-07-22 06:59:34 +00:00
GCC Administrator
ff9fdab693 Daily bump.
From-SVN: r212903
2014-07-22 00:16:55 +00:00
Bin Cheng
62e79a48df re PR target/55701 (Inline some instances of memset for ARM)
PR target/55701
	* config/arm/arm.md (setmem): New pattern.
	* config/arm/arm-protos.h (struct tune_params): New fields.
	(arm_gen_setmem): New prototype.
	* config/arm/arm.c (arm_slowmul_tune): Initialize new fields.
	(arm_fastmul_tune, arm_strongarm_tune, arm_xscale_tune): Ditto.
	(arm_9e_tune, arm_v6t2_tune, arm_cortex_tune): Ditto.
	(arm_cortex_a8_tune, arm_cortex_a7_tune): Ditto.
	(arm_cortex_a15_tune, arm_cortex_a53_tune): Ditto.
	(arm_cortex_a57_tune, arm_cortex_a5_tune): Ditto.
	(arm_cortex_a9_tune, arm_cortex_a12_tune): Ditto.
	(arm_v7m_tune, arm_v6m_tune, arm_fa726te_tune): Ditto.
	(arm_const_inline_cost): New function.
	(arm_block_set_max_insns): New function.
	(arm_block_set_non_vect_profit_p): New function.
	(arm_block_set_vect_profit_p): New function.
	(arm_block_set_unaligned_vect): New function.
	(arm_block_set_aligned_vect): New function.
	(arm_block_set_unaligned_non_vect): New function.
	(arm_block_set_aligned_non_vect): New function.
	(arm_block_set_vect, arm_gen_setmem): New functions.

	* gcc.target/arm/memset-inline-1.c: New test.
	* gcc.target/arm/memset-inline-2.c: New test.
	* gcc.target/arm/memset-inline-3.c: New test.
	* gcc.target/arm/memset-inline-4.c: New test.
	* gcc.target/arm/memset-inline-5.c: New test.
	* gcc.target/arm/memset-inline-6.c: New test.
	* gcc.target/arm/memset-inline-7.c: New test.
	* gcc.target/arm/memset-inline-8.c: New test.
	* gcc.target/arm/memset-inline-9.c: New test.

From-SVN: r212893
2014-07-21 12:24:06 +00:00
Bin Cheng
8cde4e713a arm.c (output_move_neon): Handle REG explicitly.
* config/arm/arm.c (output_move_neon): Handle REG explicitly.

From-SVN: r212892
2014-07-21 12:10:34 +00:00