Commit Graph

131561 Commits

Author SHA1 Message Date
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
Tom de Vries 38303b1a3d Fix fuse-caller-save-rec.c
2014-07-21  Tom de Vries  <tom@codesourcery.com>

	PR target/61827
	* gcc.target/i386/fuse-caller-save-rec.c: Allow underscore prefix to bar
	symbol in scan-assembler-times call check.

From-SVN: r212891
2014-07-21 11:29:10 +00:00
Tom de Vries ad6e8e315f Fix fuse-caller-save test-cases
2014-07-21  Tom de Vries  <tom@codesourcery.com>

	PR target/61827
	* gcc.target/i386/fuse-caller-save-xmm.c: Allow LC0 without dot prefix
	for darwin in scan-assembler-times check.
	* gcc.target/i386/fuse-caller-save.c: Remove cfi-related
	scan-assembler-not checks.  Add checks for insns.
	(main): Remove.
	* gcc.target/i386/fuse-caller-save-rec.c: Remove cfi-related
	scan-assembler-not checks.  Copy checks from i386/fuse-caller-save.c.
	(main): Remove.

From-SVN: r212890
2014-07-21 10:54:47 +00:00
Tom de Vries 72c47e0d34 Fix fuse-caller-save-xmm.c test-case
2014-07-21  Tom de Vries  <tom@codesourcery.com>

	PR target/61827
	* gcc.target/i386/fuse-caller-save-xmm.c: Add -fomit-frame-pointer to
	dg-options.  Add checks for insns with xmm registers.  Remove
	cfi_def_cfa_offset checks.  Generalize checks containing %rsp.
	(main): Remove.

From-SVN: r212888
2014-07-21 09:11:04 +00:00
Uros Bizjak 87adf25ab9 ChangeLog: Correct PR number.
* ChangeLog: Correct PR number.
	* testsuite/ChangeLog: Ditto.

From-SVN: r212887
2014-07-21 10:53:03 +02:00
Uros Bizjak 9c3c2608ff re PR ipa/61885 (ICE: in types_same_for_odr, at ipa-devirt.c:383 with LTO)
PR target/61885
	* config/i386/avx512fintrin.h: Move constants for mantissa extraction
	out of #ifdef __OPTIMIZE__.

testsuite/ChangeLog:

	PR target/61885
	* gcc.target/i386/pr61885.c: New test.

From-SVN: r212886
2014-07-21 10:47:48 +02:00
Trevor Saunders 633e5fbb24 mklog: Run mklog as a filter.
contrib/
2014-07-21  Trevor Saunders  <tsaunders@mozilla.com>
	    Yury Gribov  <y.gribov@samsung.com>

	* mklog: Run mklog as a filter.

Co-Authored-By: Yury Gribov <y.gribov@samsung.com>

From-SVN: r212884
2014-07-21 07:45:45 +00:00
Trevor Saunders 863aa163a0 contrib/
2014-07-21  Trevor Saunders  <tsaunders@mozilla.com>

	mklog: Read name and email from git config when available.

From-SVN: r212883
2014-07-21 07:39:40 +00:00
GCC Administrator 5be1f50e6b Daily bump.
From-SVN: r212882
2014-07-21 00:17:34 +00:00
Eric Botcazou e304caa4e5 cse.c (exp_equiv_p): For GCSE...
* cse.c (exp_equiv_p) <MEM>: For GCSE, return 0 for expressions with
	different trapping status if -fnon-call-exceptions is enabled.

From-SVN: r212879
2014-07-20 21:00:51 +00:00
Eric Botcazou d6cd6e226f expr.c (store_field): Handle VOIDmode for calls that return values in multiple locations.
* expr.c (store_field): Handle VOIDmode for calls that return values
	in multiple locations.

From-SVN: r212877
2014-07-20 20:30:23 +00:00
Ian Lance Taylor f67341b624 compiler: If a variable that is only set, give not used error.
From-SVN: r212876
2014-07-20 20:26:20 +00:00
Jerry DeLisle dbb400d707 re PR fortran/61632 (Improve error locus on large format strings)
2014-07-20  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libgfortran/61632
	* io/format.c (format_error): Avoid invalid string pointer by
	using the fortran string length values to generate error string.
	(parse_format): Allocate the null terminator for the format
	string.

From-SVN: r212875
2014-07-20 20:03:41 +00:00
Bill Schmidt fbd86cc6a1 altivec.md (unspec enum): Fix typo in UNSPEC_VSLDOI.
2014-07-20  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

	* config/rs6000/altivec.md (unspec enum):  Fix typo in
	UNSPEC_VSLDOI.
	(altivec_vsldoi_<mode>): Likewise.

From-SVN: r212874
2014-07-20 19:34:11 +00:00
Ian Lance Taylor d5d0580e64 runtime: remove unused variable
This variable is unused apparently as a result of local changes.
gccgo accepts this variable declaration, but other frontends may not.

From-SVN: r212873
2014-07-20 19:20:12 +00:00