mips.exp: Rewrite.

gcc/testsuite/
	* gcc.target/mips/mips.exp: Rewrite.

	* gcc.target/mips/20020620-1.c: Use dg-options instead of
	dg-mips-options.  Remove target restrictions from dg-do.
	* gcc.target/mips/mips-ps-1.c: Likewise.
	* gcc.target/mips/mips-ps-2.c: Likewise.
	* gcc.target/mips/mips-ps-3.c: Likewise.
	* gcc.target/mips/mips-ps-4.c: Likewise.
	* gcc.target/mips/mips-ps-6.c: Likewise.

	* gcc.target/mips/asm-1.c: Use dg-options instead of dg-mips-options.
	* gcc.target/mips/branch-1.c: Likewise.
	* gcc.target/mips/clear-cache-2.c: Likewise.
	* gcc.target/mips/dse-1.c: Likewise.
	* gcc.target/mips/fix-r4000-1.c: Likewise.
	* gcc.target/mips/fix-r4000-2.c: Likewise.
	* gcc.target/mips/fix-r4000-3.c: Likewise.
	* gcc.target/mips/fix-r4000-4.c: Likewise.
	* gcc.target/mips/fix-r4000-5.c: Likewise.
	* gcc.target/mips/fix-r4000-6.c: Likewise.
	* gcc.target/mips/fix-r4000-7.c: Likewise.
	* gcc.target/mips/fix-r4000-8.c: Likewise.
	* gcc.target/mips/fix-r4000-9.c: Likewise.
	* gcc.target/mips/fix-r4000-10.c: Likewise.
	* gcc.target/mips/fix-r4000-11.c: Likewise.
	* gcc.target/mips/fix-r4000-12.c: Likewise.
	* gcc.target/mips/fix-vr4130-1.c: Likewise.
	* gcc.target/mips/fix-vr4130-2.c: Likewise.
	* gcc.target/mips/fix-vr4130-3.c: Likewise.
	* gcc.target/mips/fix-vr4130-4.c: Likewise.
	* gcc.target/mips/fpcmp-1.c: Likewise.
	* gcc.target/mips/fpcmp-2.c: Likewise.
	* gcc.target/mips/fpr-moves-1.c: Likewise.
	* gcc.target/mips/fpr-moves-2.c: Likewise.
	* gcc.target/mips/fpr-moves-3.c: Likewise.
	* gcc.target/mips/fpr-moves-4.c: Likewise.
	* gcc.target/mips/fpr-moves-5.c: Likewise.
	* gcc.target/mips/fpr-moves-6.c: Likewise.
	* gcc.target/mips/gcc-have-sync-compare-and-swap-2.c: Likewise.
	* gcc.target/mips/madd-1.c: Likewise.
	* gcc.target/mips/madd-2.c: Likewise.
	* gcc.target/mips/madd-5.c: Likewise.
	* gcc.target/mips/madd-6.c: Likewise.
	* gcc.target/mips/madd-7.c: Likewise.
	* gcc.target/mips/madd-8.c: Likewise.
	* gcc.target/mips/maddu-1.c: Likewise.
	* gcc.target/mips/maddu-2.c: Likewise.
	* gcc.target/mips/memcpy-1.c: Likewise.
	* gcc.target/mips/mips-sched-madd.c: Likewise.
	* gcc.target/mips/msub-1.c: Likewise.
	* gcc.target/mips/msub-2.c: Likewise.
	* gcc.target/mips/msub-5.c: Likewise.
	* gcc.target/mips/msub-6.c: Likewise.
	* gcc.target/mips/msub-7.c: Likewise.
	* gcc.target/mips/msub-8.c: Likewise.
	* gcc.target/mips/msubu-1.c: Likewise.
	* gcc.target/mips/msubu-2.c: Likewise.
	* gcc.target/mips/neg-abs-1.c: Likewise.
	* gcc.target/mips/neg-abs-2.c: Likewise.
	* gcc.target/mips/no-smartmips-lwxs.c: Likewise.
	* gcc.target/mips/no-smartmips-ror-1.c: Likewise.
	* gcc.target/mips/octeon-baddu-1.c: Likewise.
	* gcc.target/mips/octeon-bbit-2.c: Likewise.
	* gcc.target/mips/octeon-bbit-3.c: Likewise.
	* gcc.target/mips/octeon-cins-1.c: Likewise.
	* gcc.target/mips/octeon-cins-2.c: Likewise.
	* gcc.target/mips/octeon-dmul-1.c: Likewise.
	* gcc.target/mips/octeon-dmul-2.c: Likewise.
	* gcc.target/mips/octeon-exts-1.c: Likewise.
	* gcc.target/mips/octeon-exts-2.c: Likewise.
	* gcc.target/mips/octeon-exts-3.c: Likewise.
	* gcc.target/mips/octeon-exts-4.c: Likewise.
	* gcc.target/mips/octeon-exts-5.c: Likewise.
	* gcc.target/mips/octeon-pop-1.c: Likewise.
	* gcc.target/mips/octeon-seq-1.c: Likewise.
	* gcc.target/mips/octeon-seq-2.c: Likewise.
	* gcc.target/mips/octeon-seq-3.c: Likewise.
	* gcc.target/mips/octeon-seq-4.c: Likewise.
	* gcc.target/mips/pr26765.c: Likewise.
	* gcc.target/mips/pr33256.c: Likewise.
	* gcc.target/mips/pr33635-1.c: Likewise.
	* gcc.target/mips/pr33755.c: Likewise.
	* gcc.target/mips/pr34831.c: Likewise.
	* gcc.target/mips/pr35802.c: Likewise.
	* gcc.target/mips/pr37362.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-1.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-2.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-3.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-4.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-5.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-6.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-7.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-8.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-9.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-10.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-11.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-12.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-13.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-15.c: Likewise.
	* gcc.target/mips/r3900-mult.c: Likewise.
	* gcc.target/mips/rsqrt-4.c: Likewise.
	* gcc.target/mips/sb1-1.c: Likewise.
	* gcc.target/mips/scc-2.c: Likewise.
	* gcc.target/mips/scc-4.c: Likewise.
	* gcc.target/mips/sdata-1.c: Likewise.
	* gcc.target/mips/sdata-2.c: Likewise.
	* gcc.target/mips/sdata-3.c: Likewise.
	* gcc.target/mips/sdata-4.c: Likewise.
	* gcc.target/mips/smartmips-lwxs.c: Likewise.
	* gcc.target/mips/smartmips-ror-1.c: Likewise.
	* gcc.target/mips/smartmips-ror-2.c: Likewise.
	* gcc.target/mips/smartmips-ror-3.c: Likewise.
	* gcc.target/mips/smartmips-ror-4.c: Likewise.
	* gcc.target/mips/timode-1.c: Likewise.
	* gcc.target/mips/truncate-1.c: Likewise.
	* gcc.target/mips/truncate-2.c: Likewise.
	* gcc.target/mips/vr-mult-1.c: Likewise.
	* gcc.target/mips/vr-mult-2.c: Likewise.

	* gcc.target/mips/atomic-memory-2.c: Use dg-options instead of
	dg-mips-options.  Use isa>=2 instead of -mips32.

	* gcc.target/mips/branch-cost-1.c: Use dg-options instead of
	dg-mips-options.  Use isa>=4 instead of -mips64.
	* gcc.target/mips/branch-cost-2.c: Likewise.

	* gcc.target/mips/cache-1.c: Use dg-options instead of
	dg-mips-options.  Add isa>=3 and NOMIPS16 attributes.

	* gcc.target/mips/call-saved-1.c: Use dg-options instead of
	dg-mips-options.  Replace the mips16_attribute directives with
	a (-mips16) dg-option.  Use isa_rev=0 instead of -mips2.
	* gcc.target/mips/call-saved-2.c: Likewise.
	* gcc.target/mips/call-saved-3.c: Likewise.

	* gcc.target/mips/clear-cache-1.c: Use dg-options instead of
	dg-mips-options.  Use isa_rev>=2 instead of -mips32r2.
	* gcc.target/mips/ext_ins.c: Likewise.

	* gcc.target/mips/code-readable-1.c: Use dg-options instead of
	dg-mips-options.  Replace the mips16_attribute directives with
	a (-mips16) dg-option.  Use addressing=absolute too.
	* gcc.target/mips/code-readable-2.c: Likewise.
	* gcc.target/mips/code-readable-3.c: Likewise.

	* gcc.target/mips/dmult-1.c: Use dg-options instead of
	dg-mips-options.  Remove the mips16_attribute directives.
	* gcc.target/mips/gcc-have-sync-compare-and-swap-4.c: Likewise.

	* gcc.target/mips/dpaq_sa_l_w.c: Use dg-options instead of
	dg-mips-options.  Remove target restrictions from dg-do.
	Use -mgp32 instead of -mips32r2.
	* gcc.target/mips/dpsq_sa_l_w.c: Likewise.

	* gcc.target/mips/dsp-ctrl.c: Use dg-options instead of
	dg-mips-options.  Remove target restrictions from dg-do.
	Remove the !__mips_dsp code and add -mdsp -mgp32 to dg-options
	instead.  Add NOMIPS16 attributes.

	* gcc.target/mips/dspr2-MULT.c: Use dg-options instead of
	dg-mips-options.  Replace -march=mips32r2 with -mgp32.
	* gcc.target/mips/dspr2-MULTU.c: Likewise.

	* gcc.target/mips/ext-1.c: Use dg-options instead of
	dg-mips-options.  Use isa_rev>=2 instead of -mips64r2.

	* gcc.target/mips/fix-r10000-1.c: Use dg-options instead of
	dg-mips-options.  Remove -march=mips4.  
	* gcc.target/mips/fix-r10000-2.c: Likewise.
	* gcc.target/mips/fix-r10000-3.c: Likewise.
	* gcc.target/mips/fix-r10000-4.c: Likewise.
	* gcc.target/mips/fix-r10000-5.c: Likewise.
	* gcc.target/mips/fix-r10000-6.c: Likewise.
	* gcc.target/mips/fix-r10000-7.c: Likewise.
	* gcc.target/mips/fix-r10000-8.c: Likewise.
	* gcc.target/mips/fix-r10000-9.c: Likewise.
	* gcc.target/mips/fix-r10000-10.c: Likewise.
	* gcc.target/mips/fix-r10000-11.c: Likewise.
	* gcc.target/mips/fix-r10000-12.c: Likewise.
	* gcc.target/mips/fix-r10000-13.c: Likewise.
	* gcc.target/mips/fix-r10000-14.c: Likewise.
	* gcc.target/mips/fix-r10000-15.c: Likewise.

	* gcc.target/mips/fixed-scalar-type.c: Use dg-options instead
	of dg-mips-options.  Remove target restrictions from dg-do.
	Remove -march=mips32r2.
	* gcc.target/mips/fixed-vector-type.c: Likewise.
	* gcc.target/mips/mips32-dsp-run.c: Likewise.
	* gcc.target/mips/mips32-dspr2.c: Likewise.  Add NOMIPS16 attributes.

	* gcc.target/mips/fpr-moves-7.c: Use dg-options instead of
	dg-mips-options.  Replace the mips16_attribute directives with
	a (-mips16) dg-option.  Remove -msoft-float.
	* gcc.target/mips/fpr-moves-8.c: Likewise.
	* gcc.target/mips/int-moves-1.c: Likewise.
	* gcc.target/mips/int-moves-2.c: Likewise.

	* gcc.target/mips/gcc-have-sync-compare-and-swap-1.c: Use dg-options
	instead of dg-mips-options.  Use isa>=2 instead of -mips2.
	Add -mgp32.
	* gcc.target/mips/gcc-have-sync-compare-and-swap-3.c: Likewise.

	* gcc.target/mips/ins-1.c: Use dg-options instead of
	dg-mips-options.  Use "isa_rev>=2 -mgp32" instead of -march=mips32r2.

	* gcc.target/mips/loongson-muldiv-1.c: Use dg-options instead of
	dg-mips-options.  Use isa=loongson instead of -march=loongson2e.
	* gcc.target/mips/loongson-muldiv-2.c: Likewise.

	* gcc.target/mips/loongson-simd.c: Remove mips_loongson
	target requirement and use isa=loongson instead.  Add -mhard-float,
	-mno-mips16 and -flax-vector-conversions.

	* gcc.target/mips/lazy-binding-1.c: Use dg-options instead of
	dg-mips-options.  Remove target restrictions from dg-do.
	Add NOMIPS16 attributes.

	* gcc.target/mips/long-calls-pg.c: Use dg-options instead of
	dg-mips-options.  Remove -march=mips32 and -fno-pic.
	Add NOMIPS16 attributes.

	* gcc.target/mips/madd-3.c: Use dg-options instead of
	dg-mips-options.  Use isa_rev>=1 instead of -mips32.
	* gcc.target/mips/maddu-3.c: Likewise.
	* gcc.target/mips/msub-3.c: Likewise.
	* gcc.target/mips/msubu-3.c: Likewise.

	* gcc.target/mips/madd-4.c: Use dg-options instead of
	dg-mips-options.  Remove -mips32r2.
	* gcc.target/mips/maddu-4.c: Likewise.
	* gcc.target/mips/msub-4.c: Likewise.
	* gcc.target/mips/msubu-4.c: Likewise.

	* gcc.target/mips/mips-3d-1.c: Use dg-options instead of
	dg-mips-options.  Remove target restrictions from dg-do.
	Remove -mips64, -mhard-float and -mgp64.
	* gcc.target/mips/mips-3d-2.c: Likewise.
	* gcc.target/mips/mips-3d-3.c: Likewise.
	* gcc.target/mips/mips-3d-4.c: Likewise.
	* gcc.target/mips/mips-3d-5.c: Likewise.
	* gcc.target/mips/mips-3d-6.c: Likewise.
	* gcc.target/mips/mips-3d-7.c: Likewise.
	* gcc.target/mips/mips-3d-8.c: Likewise.
	* gcc.target/mips/mips-3d-9.c: Likewise.

	* gcc.target/mips/mips-ps-5.c: Use dg-options instead of
	dg-mips-options.  Remove -mips64.
	* gcc.target/mips/mips-ps-type.c: Likewise.

	* gcc.target/mips/mips-ps-7.c: Use dg-options instead of
	dg-mips-options.  Replace -mips32r2 with -mgp32.

	* gcc.target/mips/mips-ps-type-2.c: Use dg-options instead of
	dg-mips-options.  Use "isa_rev>=2 -mgp32" instead of -mips32r2.

	* gcc.target/mips/mips16-attributes.c: Use dg-options instead of
	dg-mips-options.  Replace the mips16_attribute directives with
	a (-mips16) dg-option.
	* gcc.target/mips/mips16-attributes-2.c: Likewise.
	* gcc.target/mips/r10k-cache-barrier-14.c: Likewise.
	* gcc.target/mips/scc-3.c: Likewise.

	* gcc.target/mips/mips16-attributes-3.c: Add { dg-options "(-mips16)" }.

	* gcc.target/mips/mips16e-extends.c: Use dg-options instead of
	dg-mips-options.  Replace the mips16_attribute directives with
	a (-mips16) dg-option.  Use isa_rev>=1 instead of -march=mips32.
	Add -mlong32.

	* gcc.target/mips/mips32-dsp.c: Use dg-options instead of
	dg-mips-options.  Replace -march=mips32 with -mgp32.

	* gcc.target/mips/mips32-dsp-type.c: Use dg-options instead of
	dg-mips-options.  Remove -march=mips32.

	* gcc.target/mips/mips32-dspr2-type.c: Use dg-options instead of
	dg-mips-options.  Remove -march=mips32r2.

	* gcc.target/mips/mips32r2-mxhc1.c: Use dg-options instead of
	dg-mips-options.  Add NOMIPS16 attributes.

	* gcc.target/mips/movcc-1.c: Use dg-options instead of
	dg-mips-options.  Use isa>=4 instead of -mips4.
	* gcc.target/mips/movcc-2.c: Likewise.
	* gcc.target/mips/movcc-3.c: Likewise.

	* gcc.target/mips/octeon-bbit-1.c: Use dg-options instead of
	dg-mips-options.  Declare foo as a NOMIPS16 function.
	Use foo instead of g.

	* gcc.target/mips/near-far-1.c: Use dg-options instead of
	dg-mips-options.  Replace the nonpic directives with an
	addressing=absolute option.
	* gcc.target/mips/near-far-2.c: Likewise.
	* gcc.target/mips/near-far-3.c: Likewise.
	* gcc.target/mips/near-far-4.c: Likewise.

	* gcc.target/mips/nmadd-1.c: Use dg-options instead of
	dg-mips-options.  Use isa=4 instead of -mips4.
	* gcc.target/mips/nmadd-2.c: Likewise.
	* gcc.target/mips/nmadd-3.c: Likewise.
	* gcc.target/mips/rsqrt-1.c: Likewise.
	* gcc.target/mips/rsqrt-2.c: Likewise.
	* gcc.target/mips/rsqrt-3.c: Likewise.

	* gcc.target/mips/save-restore-1.c: Use dg-options instead of
	dg-mips-options.  Replace the mips16_attribute directives with
	a (-mips16) dg-option.  Use isa_rev>=1 instead of -mips32r2.
	* gcc.target/mips/save-restore-2.c: Likewise.
	* gcc.target/mips/save-restore-3.c: Likewise.
	* gcc.target/mips/save-restore-4.c: Likewise.
	* gcc.target/mips/save-restore-5.c: Likewise.

	* gcc.target/mips/scc-1.c: Use dg-options instead of
	dg-mips-options.  Replace the mips16_attribute directives with
	a (-mips16) dg-option.  Use isa_rev>=1 instead of -mips32.

	* gcc.target/mips/timode-2.c: Remove target restrictions from dg-do.
	Use -mgp64.

From-SVN: r142875
This commit is contained in:
Richard Sandiford 2008-12-21 21:47:38 +00:00 committed by Richard Sandiford
parent 816bc01bae
commit c05854ec7d
219 changed files with 1632 additions and 620 deletions

View File

@ -1,3 +1,325 @@
2008-12-21 Richard Sandiford <rdsandiford@googlemail.com>
* gcc.target/mips/mips.exp: Rewrite.
* gcc.target/mips/20020620-1.c: Use dg-options instead of
dg-mips-options. Remove target restrictions from dg-do.
* gcc.target/mips/mips-ps-1.c: Likewise.
* gcc.target/mips/mips-ps-2.c: Likewise.
* gcc.target/mips/mips-ps-3.c: Likewise.
* gcc.target/mips/mips-ps-4.c: Likewise.
* gcc.target/mips/mips-ps-6.c: Likewise.
* gcc.target/mips/asm-1.c: Use dg-options instead of dg-mips-options.
* gcc.target/mips/branch-1.c: Likewise.
* gcc.target/mips/clear-cache-2.c: Likewise.
* gcc.target/mips/dse-1.c: Likewise.
* gcc.target/mips/fix-r4000-1.c: Likewise.
* gcc.target/mips/fix-r4000-2.c: Likewise.
* gcc.target/mips/fix-r4000-3.c: Likewise.
* gcc.target/mips/fix-r4000-4.c: Likewise.
* gcc.target/mips/fix-r4000-5.c: Likewise.
* gcc.target/mips/fix-r4000-6.c: Likewise.
* gcc.target/mips/fix-r4000-7.c: Likewise.
* gcc.target/mips/fix-r4000-8.c: Likewise.
* gcc.target/mips/fix-r4000-9.c: Likewise.
* gcc.target/mips/fix-r4000-10.c: Likewise.
* gcc.target/mips/fix-r4000-11.c: Likewise.
* gcc.target/mips/fix-r4000-12.c: Likewise.
* gcc.target/mips/fix-vr4130-1.c: Likewise.
* gcc.target/mips/fix-vr4130-2.c: Likewise.
* gcc.target/mips/fix-vr4130-3.c: Likewise.
* gcc.target/mips/fix-vr4130-4.c: Likewise.
* gcc.target/mips/fpcmp-1.c: Likewise.
* gcc.target/mips/fpcmp-2.c: Likewise.
* gcc.target/mips/fpr-moves-1.c: Likewise.
* gcc.target/mips/fpr-moves-2.c: Likewise.
* gcc.target/mips/fpr-moves-3.c: Likewise.
* gcc.target/mips/fpr-moves-4.c: Likewise.
* gcc.target/mips/fpr-moves-5.c: Likewise.
* gcc.target/mips/fpr-moves-6.c: Likewise.
* gcc.target/mips/gcc-have-sync-compare-and-swap-2.c: Likewise.
* gcc.target/mips/madd-1.c: Likewise.
* gcc.target/mips/madd-2.c: Likewise.
* gcc.target/mips/madd-5.c: Likewise.
* gcc.target/mips/madd-6.c: Likewise.
* gcc.target/mips/madd-7.c: Likewise.
* gcc.target/mips/madd-8.c: Likewise.
* gcc.target/mips/maddu-1.c: Likewise.
* gcc.target/mips/maddu-2.c: Likewise.
* gcc.target/mips/memcpy-1.c: Likewise.
* gcc.target/mips/mips-sched-madd.c: Likewise.
* gcc.target/mips/msub-1.c: Likewise.
* gcc.target/mips/msub-2.c: Likewise.
* gcc.target/mips/msub-5.c: Likewise.
* gcc.target/mips/msub-6.c: Likewise.
* gcc.target/mips/msub-7.c: Likewise.
* gcc.target/mips/msub-8.c: Likewise.
* gcc.target/mips/msubu-1.c: Likewise.
* gcc.target/mips/msubu-2.c: Likewise.
* gcc.target/mips/neg-abs-1.c: Likewise.
* gcc.target/mips/neg-abs-2.c: Likewise.
* gcc.target/mips/no-smartmips-lwxs.c: Likewise.
* gcc.target/mips/no-smartmips-ror-1.c: Likewise.
* gcc.target/mips/octeon-baddu-1.c: Likewise.
* gcc.target/mips/octeon-bbit-2.c: Likewise.
* gcc.target/mips/octeon-bbit-3.c: Likewise.
* gcc.target/mips/octeon-cins-1.c: Likewise.
* gcc.target/mips/octeon-cins-2.c: Likewise.
* gcc.target/mips/octeon-dmul-1.c: Likewise.
* gcc.target/mips/octeon-dmul-2.c: Likewise.
* gcc.target/mips/octeon-exts-1.c: Likewise.
* gcc.target/mips/octeon-exts-2.c: Likewise.
* gcc.target/mips/octeon-exts-3.c: Likewise.
* gcc.target/mips/octeon-exts-4.c: Likewise.
* gcc.target/mips/octeon-exts-5.c: Likewise.
* gcc.target/mips/octeon-pop-1.c: Likewise.
* gcc.target/mips/octeon-seq-1.c: Likewise.
* gcc.target/mips/octeon-seq-2.c: Likewise.
* gcc.target/mips/octeon-seq-3.c: Likewise.
* gcc.target/mips/octeon-seq-4.c: Likewise.
* gcc.target/mips/pr26765.c: Likewise.
* gcc.target/mips/pr33256.c: Likewise.
* gcc.target/mips/pr33635-1.c: Likewise.
* gcc.target/mips/pr33755.c: Likewise.
* gcc.target/mips/pr34831.c: Likewise.
* gcc.target/mips/pr35802.c: Likewise.
* gcc.target/mips/pr37362.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-1.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-2.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-3.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-4.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-5.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-6.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-7.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-8.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-9.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-10.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-11.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-12.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-13.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-15.c: Likewise.
* gcc.target/mips/r3900-mult.c: Likewise.
* gcc.target/mips/rsqrt-4.c: Likewise.
* gcc.target/mips/sb1-1.c: Likewise.
* gcc.target/mips/scc-2.c: Likewise.
* gcc.target/mips/scc-4.c: Likewise.
* gcc.target/mips/sdata-1.c: Likewise.
* gcc.target/mips/sdata-2.c: Likewise.
* gcc.target/mips/sdata-3.c: Likewise.
* gcc.target/mips/sdata-4.c: Likewise.
* gcc.target/mips/smartmips-lwxs.c: Likewise.
* gcc.target/mips/smartmips-ror-1.c: Likewise.
* gcc.target/mips/smartmips-ror-2.c: Likewise.
* gcc.target/mips/smartmips-ror-3.c: Likewise.
* gcc.target/mips/smartmips-ror-4.c: Likewise.
* gcc.target/mips/timode-1.c: Likewise.
* gcc.target/mips/truncate-1.c: Likewise.
* gcc.target/mips/truncate-2.c: Likewise.
* gcc.target/mips/vr-mult-1.c: Likewise.
* gcc.target/mips/vr-mult-2.c: Likewise.
* gcc.target/mips/atomic-memory-2.c: Use dg-options instead of
dg-mips-options. Use isa>=2 instead of -mips32.
* gcc.target/mips/branch-cost-1.c: Use dg-options instead of
dg-mips-options. Use isa>=4 instead of -mips64.
* gcc.target/mips/branch-cost-2.c: Likewise.
* gcc.target/mips/cache-1.c: Use dg-options instead of
dg-mips-options. Add isa>=3 and NOMIPS16 attributes.
* gcc.target/mips/call-saved-1.c: Use dg-options instead of
dg-mips-options. Replace the mips16_attribute directives with
a (-mips16) dg-option. Use isa_rev=0 instead of -mips2.
* gcc.target/mips/call-saved-2.c: Likewise.
* gcc.target/mips/call-saved-3.c: Likewise.
* gcc.target/mips/clear-cache-1.c: Use dg-options instead of
dg-mips-options. Use isa_rev>=2 instead of -mips32r2.
* gcc.target/mips/ext_ins.c: Likewise.
* gcc.target/mips/code-readable-1.c: Use dg-options instead of
dg-mips-options. Replace the mips16_attribute directives with
a (-mips16) dg-option. Use addressing=absolute too.
* gcc.target/mips/code-readable-2.c: Likewise.
* gcc.target/mips/code-readable-3.c: Likewise.
* gcc.target/mips/dmult-1.c: Use dg-options instead of
dg-mips-options. Remove the mips16_attribute directives.
* gcc.target/mips/gcc-have-sync-compare-and-swap-4.c: Likewise.
* gcc.target/mips/dpaq_sa_l_w.c: Use dg-options instead of
dg-mips-options. Remove target restrictions from dg-do.
Use -mgp32 instead of -mips32r2.
* gcc.target/mips/dpsq_sa_l_w.c: Likewise.
* gcc.target/mips/dsp-ctrl.c: Use dg-options instead of
dg-mips-options. Remove target restrictions from dg-do.
Remove the !__mips_dsp code and add -mdsp -mgp32 to dg-options
instead. Add NOMIPS16 attributes.
* gcc.target/mips/dspr2-MULT.c: Use dg-options instead of
dg-mips-options. Replace -march=mips32r2 with -mgp32.
* gcc.target/mips/dspr2-MULTU.c: Likewise.
* gcc.target/mips/ext-1.c: Use dg-options instead of
dg-mips-options. Use isa_rev>=2 instead of -mips64r2.
* gcc.target/mips/fix-r10000-1.c: Use dg-options instead of
dg-mips-options. Remove -march=mips4.
* gcc.target/mips/fix-r10000-2.c: Likewise.
* gcc.target/mips/fix-r10000-3.c: Likewise.
* gcc.target/mips/fix-r10000-4.c: Likewise.
* gcc.target/mips/fix-r10000-5.c: Likewise.
* gcc.target/mips/fix-r10000-6.c: Likewise.
* gcc.target/mips/fix-r10000-7.c: Likewise.
* gcc.target/mips/fix-r10000-8.c: Likewise.
* gcc.target/mips/fix-r10000-9.c: Likewise.
* gcc.target/mips/fix-r10000-10.c: Likewise.
* gcc.target/mips/fix-r10000-11.c: Likewise.
* gcc.target/mips/fix-r10000-12.c: Likewise.
* gcc.target/mips/fix-r10000-13.c: Likewise.
* gcc.target/mips/fix-r10000-14.c: Likewise.
* gcc.target/mips/fix-r10000-15.c: Likewise.
* gcc.target/mips/fixed-scalar-type.c: Use dg-options instead
of dg-mips-options. Remove target restrictions from dg-do.
Remove -march=mips32r2.
* gcc.target/mips/fixed-vector-type.c: Likewise.
* gcc.target/mips/mips32-dsp-run.c: Likewise.
* gcc.target/mips/mips32-dspr2.c: Likewise. Add NOMIPS16 attributes.
* gcc.target/mips/fpr-moves-7.c: Use dg-options instead of
dg-mips-options. Replace the mips16_attribute directives with
a (-mips16) dg-option. Remove -msoft-float.
* gcc.target/mips/fpr-moves-8.c: Likewise.
* gcc.target/mips/int-moves-1.c: Likewise.
* gcc.target/mips/int-moves-2.c: Likewise.
* gcc.target/mips/gcc-have-sync-compare-and-swap-1.c: Use dg-options
instead of dg-mips-options. Use isa>=2 instead of -mips2.
Add -mgp32.
* gcc.target/mips/gcc-have-sync-compare-and-swap-3.c: Likewise.
* gcc.target/mips/ins-1.c: Use dg-options instead of
dg-mips-options. Use "isa_rev>=2 -mgp32" instead of -march=mips32r2.
* gcc.target/mips/loongson-muldiv-1.c: Use dg-options instead of
dg-mips-options. Use isa=loongson instead of -march=loongson2e.
* gcc.target/mips/loongson-muldiv-2.c: Likewise.
* gcc.target/mips/loongson-simd.c: Remove mips_loongson
target requirement and use isa=loongson instead. Add -mhard-float,
-mno-mips16 and -flax-vector-conversions.
* gcc.target/mips/lazy-binding-1.c: Use dg-options instead of
dg-mips-options. Remove target restrictions from dg-do.
Add NOMIPS16 attributes.
* gcc.target/mips/long-calls-pg.c: Use dg-options instead of
dg-mips-options. Remove -march=mips32 and -fno-pic.
Add NOMIPS16 attributes.
* gcc.target/mips/madd-3.c: Use dg-options instead of
dg-mips-options. Use isa_rev>=1 instead of -mips32.
* gcc.target/mips/maddu-3.c: Likewise.
* gcc.target/mips/msub-3.c: Likewise.
* gcc.target/mips/msubu-3.c: Likewise.
* gcc.target/mips/madd-4.c: Use dg-options instead of
dg-mips-options. Remove -mips32r2.
* gcc.target/mips/maddu-4.c: Likewise.
* gcc.target/mips/msub-4.c: Likewise.
* gcc.target/mips/msubu-4.c: Likewise.
* gcc.target/mips/mips-3d-1.c: Use dg-options instead of
dg-mips-options. Remove target restrictions from dg-do.
Remove -mips64, -mhard-float and -mgp64.
* gcc.target/mips/mips-3d-2.c: Likewise.
* gcc.target/mips/mips-3d-3.c: Likewise.
* gcc.target/mips/mips-3d-4.c: Likewise.
* gcc.target/mips/mips-3d-5.c: Likewise.
* gcc.target/mips/mips-3d-6.c: Likewise.
* gcc.target/mips/mips-3d-7.c: Likewise.
* gcc.target/mips/mips-3d-8.c: Likewise.
* gcc.target/mips/mips-3d-9.c: Likewise.
* gcc.target/mips/mips-ps-5.c: Use dg-options instead of
dg-mips-options. Remove -mips64.
* gcc.target/mips/mips-ps-type.c: Likewise.
* gcc.target/mips/mips-ps-7.c: Use dg-options instead of
dg-mips-options. Replace -mips32r2 with -mgp32.
* gcc.target/mips/mips-ps-type-2.c: Use dg-options instead of
dg-mips-options. Use "isa_rev>=2 -mgp32" instead of -mips32r2.
* gcc.target/mips/mips16-attributes.c: Use dg-options instead of
dg-mips-options. Replace the mips16_attribute directives with
a (-mips16) dg-option.
* gcc.target/mips/mips16-attributes-2.c: Likewise.
* gcc.target/mips/r10k-cache-barrier-14.c: Likewise.
* gcc.target/mips/scc-3.c: Likewise.
* gcc.target/mips/mips16-attributes-3.c: Add { dg-options "(-mips16)" }.
* gcc.target/mips/mips16e-extends.c: Use dg-options instead of
dg-mips-options. Replace the mips16_attribute directives with
a (-mips16) dg-option. Use isa_rev>=1 instead of -march=mips32.
Add -mlong32.
* gcc.target/mips/mips32-dsp.c: Use dg-options instead of
dg-mips-options. Replace -march=mips32 with -mgp32.
* gcc.target/mips/mips32-dsp-type.c: Use dg-options instead of
dg-mips-options. Remove -march=mips32.
* gcc.target/mips/mips32-dspr2-type.c: Use dg-options instead of
dg-mips-options. Remove -march=mips32r2.
* gcc.target/mips/mips32r2-mxhc1.c: Use dg-options instead of
dg-mips-options. Add NOMIPS16 attributes.
* gcc.target/mips/movcc-1.c: Use dg-options instead of
dg-mips-options. Use isa>=4 instead of -mips4.
* gcc.target/mips/movcc-2.c: Likewise.
* gcc.target/mips/movcc-3.c: Likewise.
* gcc.target/mips/octeon-bbit-1.c: Use dg-options instead of
dg-mips-options. Declare foo as a NOMIPS16 function.
Use foo instead of g.
* gcc.target/mips/near-far-1.c: Use dg-options instead of
dg-mips-options. Replace the nonpic directives with an
addressing=absolute option.
* gcc.target/mips/near-far-2.c: Likewise.
* gcc.target/mips/near-far-3.c: Likewise.
* gcc.target/mips/near-far-4.c: Likewise.
* gcc.target/mips/nmadd-1.c: Use dg-options instead of
dg-mips-options. Use isa=4 instead of -mips4.
* gcc.target/mips/nmadd-2.c: Likewise.
* gcc.target/mips/nmadd-3.c: Likewise.
* gcc.target/mips/rsqrt-1.c: Likewise.
* gcc.target/mips/rsqrt-2.c: Likewise.
* gcc.target/mips/rsqrt-3.c: Likewise.
* gcc.target/mips/save-restore-1.c: Use dg-options instead of
dg-mips-options. Replace the mips16_attribute directives with
a (-mips16) dg-option. Use isa_rev>=1 instead of -mips32r2.
* gcc.target/mips/save-restore-2.c: Likewise.
* gcc.target/mips/save-restore-3.c: Likewise.
* gcc.target/mips/save-restore-4.c: Likewise.
* gcc.target/mips/save-restore-5.c: Likewise.
* gcc.target/mips/scc-1.c: Use dg-options instead of
dg-mips-options. Replace the mips16_attribute directives with
a (-mips16) dg-option. Use isa_rev>=1 instead of -mips32.
* gcc.target/mips/timode-2.c: Remove target restrictions from dg-do.
Use -mgp64.
2008-12-21 Richard Sandiford <rdsandiford@googlemail.com>
PR target/35899

View File

@ -1,5 +1,5 @@
/* { dg-do compile { target mips64*-*-* mipsisa64*-*-* } } */
/* { dg-mips-options "-O2 -mlong64" } */
/* { dg-do compile } */
/* { dg-options "-O2 -mlong64" } */
int foo (int *x, int i)
{
return x[i] + i;

View File

@ -1,7 +1,7 @@
/* PR target/17565. GCC used to put the asm into the delay slot
of the call. */
/* { dg-do assemble } */
/* { dg-mips-options "-O" } */
/* { dg-options "-O" } */
NOMIPS16 int foo (int n)
{

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -mips32 -mabi=32" } */
/* { dg-options "-O2 isa>=2 -mabi=32" } */
/* { dg-final { scan-assembler "addiu" } } */
/* { dg-final { scan-assembler-not "subu" } } */

View File

@ -1,6 +1,6 @@
/* We should implement these "if" statements using an "andi" instruction
followed by a branch on zero. */
/* { dg-mips-options "-O2" } */
/* { dg-options "-O2" } */
void bar (void);
NOMIPS16 void f1 (int x) { if (x & 4) bar (); }

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mbranch-cost=1 -mips64 -O2" } */
/* { dg-options "-mbranch-cost=1 isa>=4 -O2" } */
NOMIPS16 int
foo (int x, int y, int z, int k)
{

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mbranch-cost=10 -mips64 -O2" } */
/* { dg-options "-mbranch-cost=10 isa>=4 -O2" } */
NOMIPS16 int
foo (int x, int y, int z, int k)
{

View File

@ -1,24 +1,24 @@
/* { dg-mips-options "-O2" } */
/* { dg-options "-O2 isa>=3" } */
void
NOMIPS16 void
f1 (int *area)
{
__builtin_mips_cache (20, area);
}
void
NOMIPS16 void
f2 (const short *area)
{
__builtin_mips_cache (24, area + 10);
}
void
NOMIPS16 void
f3 (volatile unsigned int *area, int offset)
{
__builtin_mips_cache (0, area + offset);
}
void
NOMIPS16 void
f4 (const volatile unsigned char *area)
{
__builtin_mips_cache (4, area - 80);

View File

@ -1,8 +1,6 @@
/* Check that we save all call-saved GPRs in a MIPS16 __builtin_eh_return
function. */
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mips2" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) isa_rev=0" } */
void bar (void);

View File

@ -1,7 +1,5 @@
/* Check that we save non-MIPS16 GPRs if they are explicitly clobbered. */
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mips2 -O2" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) isa_rev=0 -O2" } */
MIPS16 void
foo (void)

View File

@ -1,8 +1,6 @@
/* Check that we save all call-saved GPRs in a MIPS16 __builtin_setjmp
function. */
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mips2 -O2" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) isa_rev=0 -O2" } */
void bar (void);
extern int buf[];

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -mips32r2" } */
/* { dg-options "-O2 isa_rev>=2" } */
/* { dg-final { scan-assembler "synci" } } */
/* { dg-final { scan-assembler "jr.hb" } } */
/* { dg-final { scan-assembler-not "_flush_cache" } } */

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -mips32" } */
/* { dg-options "-O2 -mips32" } */
/* { dg-final { scan-assembler-not "synci" } } */
/* { dg-final { scan-assembler-not "jr.hb" } } */
/* { dg-final { scan-assembler "_flush_cache" } } */

View File

@ -1,6 +1,4 @@
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mcode-readable=yes -mgp32" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) -mcode-readable=yes -mgp32 addressing=absolute" } */
MIPS16 int
foo (int i)

View File

@ -1,6 +1,4 @@
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mcode-readable=pcrel -mgp32" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) -mcode-readable=pcrel -mgp32 addressing=absolute" } */
MIPS16 int
foo (int i)

View File

@ -1,6 +1,4 @@
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mcode-readable=no -mgp32" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) -mcode-readable=no -mgp32 addressing=absolute" } */
MIPS16 int
foo (int i)

View File

@ -1,6 +1,4 @@
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mips64 -mgp64" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "-mips64 -mgp64" } */
/* { dg-final { scan-assembler "\tdmult\t" } } */
/* { dg-final { scan-assembler "\tmflo\t" } } */
/* { dg-final { scan-assembler-not "\tdmul\t" } } */

View File

@ -1,5 +1,5 @@
/* { dg-do compile { target {fixed_point} } } */
/* { dg-mips-options "-O2 -mips32r2 -mdsp" } */
/* { dg-do compile } */
/* { dg-options "-O2 -mgp32 -mdsp" } */
/* { dg-final { scan-assembler-times "\tdpaq_sa.l.w\t\\\$ac" 3 } } */
NOMIPS16 _Sat long long _Fract

View File

@ -1,5 +1,5 @@
/* { dg-do compile { target {fixed_point} } } */
/* { dg-mips-options "-O2 -mips32r2 -mdsp" } */
/* { dg-do compile } */
/* { dg-options "-O2 -mgp32 -mdsp" } */
/* { dg-final { scan-assembler-times "\tdpsq_sa.l.w\t\\\$ac" 2 } } */
NOMIPS16 _Sat long long _Fract

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-mgp64 -O" } */
/* { dg-options "-mgp64 -O" } */
#define TEST(ID, TYPE1, TYPE2) \
union u##ID { \

View File

@ -1,31 +1,30 @@
/* { dg-do run { target mips*-*-* } } */
/* { dg-options "-O2" } */
/* { dg-do run } */
/* { dg-options "-O2 -mdsp -mgp32" } */
extern void abort (void);
extern void exit (int);
#if __mips_dsp
void __attribute__ ((noinline))
NOMIPS16 void __attribute__ ((noinline))
test1 (int i)
{
__builtin_mips_wrdsp (i, 63);
}
void __attribute__ ((noinline))
NOMIPS16 void __attribute__ ((noinline))
test2 ()
{
long long a = 0;
__builtin_mips_extpdp (a, 3);
}
void __attribute__ ((noinline))
NOMIPS16 void __attribute__ ((noinline))
test3 (int i)
{
long long a = 0;
__builtin_mips_extpdp (a, i);
}
void __attribute__ ((noinline))
NOMIPS16 void __attribute__ ((noinline))
test4 ()
{
long long a = 0;
@ -33,7 +32,7 @@ test4 ()
__builtin_mips_mthlip (a, i);
}
int
NOMIPS16 int
main ()
{
int cntl;
@ -68,13 +67,3 @@ main ()
exit (0);
}
#else
int
main ()
{
exit (0);
}
#endif

View File

@ -1,6 +1,6 @@
/* Test MIPS32 DSP REV 2 MULT instruction */
/* { dg-do compile } */
/* { dg-mips-options "-march=mips32r2 -mdspr2 -O2 -ffixed-hi -ffixed-lo" } */
/* { dg-options "-mgp32 -mdspr2 -O2 -ffixed-hi -ffixed-lo" } */
/* { dg-final { scan-assembler "\tmult\t" } } */
/* { dg-final { scan-assembler "ac1" } } */

View File

@ -1,6 +1,6 @@
/* Test MIPS32 DSP REV 2 MULTU instruction */
/* { dg-do compile } */
/* { dg-mips-options "-march=mips32r2 -mdspr2 -O2 -ffixed-hi -ffixed-lo" } */
/* { dg-options "-mgp32 -mdspr2 -O2 -ffixed-hi -ffixed-lo" } */
/* { dg-final { scan-assembler "\tmultu\t" } } */
/* { dg-final { scan-assembler "ac1" } } */

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O -mips64r2 -mgp64" } */
/* { dg-options "-O isa_rev>=2 -mgp64" } */
/* { dg-final { scan-assembler "\tdext\t" } } */
/* { dg-final { scan-assembler-not "and" } } */

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-march=mips32r2" } */
/* { dg-options "isa_rev>=2" } */
/* { dg-final { scan-assembler "ext" } } */
/* { dg-final { scan-assembler "ins" } } */

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
/* { dg-message "note: '__sync_nand_and_fetch' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
/* { dg-message "note: '__sync_fetch_and_nand' changed semantics in GCC 4.4" "" { target *-*-* } 0 } */

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=mips4 -mfix-r10000" } */
/* { dg-options "-O2 -mfix-r10000" } */
/* { dg-final { scan-assembler-times "\tbeql\t" 3 } } */
NOMIPS16 int

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-march=r4000 -mfix-r4000 -O2 -dp" } */
/* { dg-options "-march=r4000 -mfix-r4000 -O2 -dp" } */
typedef int int32_t;
typedef int uint32_t;
int32_t foo (int32_t x, int32_t y) { return x * y; }

View File

@ -1,7 +1,7 @@
/* ??? At the moment, lower-subreg.c decomposes the copy of the multiplication
result to $2, which prevents the register allocators from storing the
multiplication result in $2. */
/* { dg-mips-options "-mips3 -mfix-r4000 -mgp64 -O2 -fno-split-wide-types -dp -EL" } */
/* { dg-options "-mips3 -mfix-r4000 -mgp64 -O2 -fno-split-wide-types -dp -EL" } */
typedef unsigned long long uint64_t;
typedef unsigned int uint128_t __attribute__((mode(TI)));
uint128_t foo (uint64_t x, uint64_t y) { return (uint128_t) x * y; }

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-march=r4000 -mfix-r4000 -mgp64 -O2 -dp" } */
/* { dg-options "-march=r4000 -mfix-r4000 -mgp64 -O2 -dp" } */
typedef long long int64_t;
int64_t foo (int64_t x) { return x / 11993; }
/* { dg-final { scan-assembler "[concat {\tdmult\t\$4,\$[0-9]+[^\n]+smuldi3_highpart[^\n]+\n\tmfhi\t\$[0-9]+\n}]" } } */

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-march=r4000 -mfix-r4000 -mgp64 -O2 -dp" } */
/* { dg-options "-march=r4000 -mfix-r4000 -mgp64 -O2 -dp" } */
typedef unsigned long long uint64_t;
uint64_t foo (uint64_t x) { return x / 11993; }
/* { dg-final { scan-assembler "[concat {\tdmultu\t\$4,\$[0-9]+[^\n]+umuldi3_highpart[^\n]+\n\tmfhi\t\$[0-9]+\n}]" } } */

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mips1 -mfix-r4000 -O2 -dp -EB" } */
/* { dg-options "-mips1 -mfix-r4000 -O2 -dp -EB" } */
typedef int int32_t;
typedef long long int64_t;
int32_t foo (int32_t x, int32_t y) { return ((int64_t) x * y) >> 32; }

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mips1 -mfix-r4000 -O2 -dp -EB" } */
/* { dg-options "-mips1 -mfix-r4000 -O2 -dp -EB" } */
typedef unsigned int uint32_t;
typedef unsigned long long uint64_t;
uint32_t foo (uint32_t x, uint32_t y) { return ((uint64_t) x * y) >> 32; }

View File

@ -1,7 +1,7 @@
/* ??? At the moment, lower-subreg.c decomposes the copy of the multiplication
result to $2, which prevents the register allocators from storing the
multiplication result in $2. */
/* { dg-mips-options "-mips1 -mfix-r4000 -O2 -fno-split-wide-types -dp -EL" } */
/* { dg-options "-mips1 -mfix-r4000 -O2 -fno-split-wide-types -dp -EL" } */
typedef int int32_t;
typedef long long int64_t;
int64_t foo (int32_t x, int32_t y) { return (int64_t) x * y; }

View File

@ -1,7 +1,7 @@
/* ??? At the moment, lower-subreg.c decomposes the copy of the multiplication
result to $2, which prevents the register allocators from storing the
multiplication result in $2. */
/* { dg-mips-options "-mips1 -mfix-r4000 -O2 -fno-split-wide-types -dp -EL" } */
/* { dg-options "-mips1 -mfix-r4000 -O2 -fno-split-wide-types -dp -EL" } */
typedef unsigned int uint32_t;
typedef unsigned long long uint64_t;
uint64_t foo (uint32_t x, uint32_t y) { return (uint64_t) x * y; }

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-march=r4000 -mfix-r4000 -mgp64 -O2 -dp" } */
/* { dg-options "-march=r4000 -mfix-r4000 -mgp64 -O2 -dp" } */
typedef long long int64_t;
typedef unsigned long long uint64_t;
int64_t foo (int64_t x, int64_t y) { return x * y; }

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-march=r4000 -mfix-r4000 -O2 -mgp64 -dp -EB" } */
/* { dg-options "-march=r4000 -mfix-r4000 -O2 -mgp64 -dp -EB" } */
typedef long long int64_t;
typedef int int128_t __attribute__((mode(TI)));
int64_t foo (int64_t x, int64_t y) { return ((int128_t) x * y) >> 64; }

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-march=r4000 -mfix-r4000 -O2 -mgp64 -dp -EB" } */
/* { dg-options "-march=r4000 -mfix-r4000 -O2 -mgp64 -dp -EB" } */
typedef unsigned long long uint64_t;
typedef unsigned int uint128_t __attribute__((mode(TI)));
uint64_t foo (uint64_t x, uint64_t y) { return ((uint128_t) x * y) >> 64; }

View File

@ -1,7 +1,7 @@
/* ??? At the moment, lower-subreg.c decomposes the copy of the multiplication
result to $2, which prevents the register allocators from storing the
multiplication result in $2. */
/* { dg-mips-options "-mips3 -mfix-r4000 -mgp64 -O2 -fno-split-wide-types -dp -EL" } */
/* { dg-options "-mips3 -mfix-r4000 -mgp64 -O2 -fno-split-wide-types -dp -EL" } */
typedef long long int64_t;
typedef int int128_t __attribute__((mode(TI)));
int128_t foo (int64_t x, int64_t y) { return (int128_t) x * y; }

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-march=vr4130 -mfix-vr4130" } */
/* { dg-options "-march=vr4130 -mfix-vr4130" } */
NOMIPS16 unsigned int
foo (unsigned int x, unsigned int y)
{

View File

@ -1,4 +1,4 @@
/* { dg-do compile } */
/* { dg-mips-options "-march=vr4130 -mfix-vr4130" } */
/* { dg-options "-march=vr4130 -mfix-vr4130" } */
NOMIPS16 int foo (void) { int r; asm ("# foo" : "=l" (r)); return r; }
/* { dg-final { scan-assembler "\tmacc\t" } } */

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-march=vr4130 -mgp64 -mfix-vr4130" } */
/* { dg-options "-march=vr4130 -mgp64 -mfix-vr4130" } */
NOMIPS16 unsigned long long
foo (unsigned long long x, unsigned long long y)
{

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-march=vr4130 -mgp64 -mfix-vr4130" } */
/* { dg-options "-march=vr4130 -mgp64 -mfix-vr4130" } */
NOMIPS16 long long
foo (void)
{

View File

@ -1,6 +1,6 @@
/* Test scalar fixed-point instructions */
/* { dg-do compile { target {fixed_point} } } */
/* { dg-mips-options "-march=mips32r2 -mdspr2 -O2" } */
/* { dg-do compile } */
/* { dg-options "-mdspr2 -O2" } */
/* { dg-final { scan-assembler-times "\taddu\t" 10 } } */
/* { dg-final { scan-assembler-times "\tsubu\t" 10 } } */
/* { dg-final { scan-assembler "\taddu_s.qb\t" } } */

View File

@ -1,6 +1,6 @@
/* Test vector fixed-point instructions */
/* { dg-do compile { target {fixed_point} } } */
/* { dg-mips-options "-march=mips32r2 -mdspr2 -O2" } */
/* { dg-do compile } */
/* { dg-options "-mdspr2 -O2" } */
/* { dg-final { scan-assembler-times "\taddq_s.ph\t" 2 } } */
/* { dg-final { scan-assembler-times "\tsubq_s.ph\t" 2 } } */
/* { dg-final { scan-assembler-times "\taddu_s.qb\t" 1 } } */

View File

@ -1,5 +1,5 @@
/* We used to use c.lt.fmt instead of c.ule.fmt here. */
/* { dg-mips-options "-mhard-float -O2" } */
/* { dg-options "-mhard-float -O2" } */
NOMIPS16 int f1 (float x, float y) { return __builtin_isless (x, y); }
NOMIPS16 int f2 (double x, double y) { return __builtin_isless (x, y); }
/* { dg-final { scan-assembler "c\\.ule\\.s" } } */

View File

@ -1,5 +1,5 @@
/* We used to use c.le.fmt instead of c.ult.fmt here. */
/* { dg-mips-options "-mhard-float -O2" } */
/* { dg-options "-mhard-float -O2" } */
NOMIPS16 int f1 (float x, float y) { return __builtin_islessequal (x, y); }
NOMIPS16 int f2 (double x, double y) { return __builtin_islessequal (x, y); }
/* { dg-final { scan-assembler "c\\.ult\\.s" } } */

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mabi=32 -mhard-float -mips1 -O2 -EL" } */
/* { dg-options "-mabi=32 -mhard-float -mips1 -O2 -EL" } */
NOMIPS16 void
foo (double d, double *x)

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mabi=32 -mhard-float -mips1 -O2 -EB" } */
/* { dg-options "-mabi=32 -mhard-float -mips1 -O2 -EB" } */
NOMIPS16 void
foo (double d, double *x)

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mabi=32 -mfp64 -O2 -EL" } */
/* { dg-options "-mabi=32 -mfp64 -O2 -EL" } */
NOMIPS16 double
foo (double d)

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mabi=32 -mfp64 -O2 -EB" } */
/* { dg-options "-mabi=32 -mfp64 -O2 -EB" } */
NOMIPS16 double
foo (double d)

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mabi=64 -mhard-float -O2 -EL" } */
/* { dg-options "-mabi=64 -mhard-float -O2 -EL" } */
NOMIPS16 void
foo (long double d, long double *x)

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-mabi=64 -mhard-float -O2 -EB" } */
/* { dg-options "-mabi=64 -mhard-float -O2 -EB" } */
NOMIPS16 void
foo (long double d, long double *x)

View File

@ -1,6 +1,4 @@
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mabi=64 -msoft-float -O2 -EL" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) -mabi=64 -O2 -EL" } */
extern long double g[16];
extern unsigned char gstuff[0x10000];

View File

@ -1,6 +1,4 @@
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mabi=64 -msoft-float -O2 -EB" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) -mabi=64 -O2 -EB" } */
extern long double g[16];
extern unsigned char gstuff[0x10000];

View File

@ -1,5 +1,5 @@
/* { dg-do preprocess } */
/* { dg-mips-options "-mips2" } */
/* { dg-options "isa>=2 -mgp32" } */
#ifndef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1
#error nonono

View File

@ -1,5 +1,5 @@
/* { dg-do preprocess } */
/* { dg-mips-options "-mgp64" } */
/* { dg-options "-mgp64" } */
#ifndef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1
#error nonono

View File

@ -1,6 +1,4 @@
/* { dg-do preprocess { target mips16_attribute } } */
/* { dg-mips-options "-mips2 -mips16" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "isa>=2 -mgp32 -mips16" } */
#ifndef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1
#error nonono

View File

@ -1,6 +1,4 @@
/* { dg-do preprocess { target mips16_attribute } } */
/* { dg-mips-options "-mgp64 -mips16" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "-mgp64 -mips16" } */
#ifndef __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1
#error nonono

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O -march=mips32r2" } */
/* { dg-options "-O isa_rev>=2 -mgp32" } */
/* { dg-final { scan-assembler "\tins\t" } } */
struct

View File

@ -1,6 +1,4 @@
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mgp64 -msoft-float -O2 -EL" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) -mgp64 -O2 -EL" } */
typedef unsigned uint128_t __attribute__((mode(TI)));

View File

@ -1,6 +1,4 @@
/* { dg-do compile { target mips16_attribute } } */
/* { dg-mips-options "-mgp64 -msoft-float -O2 -EB" } */
/* { dg-add-options mips16_attribute } */
/* { dg-options "(-mips16) -mgp64 -O2 -EB" } */
typedef unsigned uint128_t __attribute__((mode(TI)));

View File

@ -1,9 +1,9 @@
/* { dg-do compile { target nomips16 } } */
/* { dg-mips-options "-mabicalls -mshared -mexplicit-relocs -O2 -fno-delayed-branch" } */
/* { dg-do compile } */
/* { dg-options "-mabicalls -mshared -mexplicit-relocs -O2 -fno-delayed-branch" } */
void bar (void);
void
NOMIPS16 void
foo (int n)
{
while (n--)

View File

@ -1,7 +1,7 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -mabi=32 -march=mips32 -fno-pic -pg -mno-abicalls -mlong-calls" } */
/* { dg-options "-O2 -mabi=32 -pg -mno-abicalls -mlong-calls" } */
/* { dg-final { scan-assembler-not "\tjal\t_mcount" } } */
void
NOMIPS16 void
foo (void)
{
}

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-O2 -march=loongson2e" } */
/* { dg-options "-O2 isa=loongson" } */
typedef int st;
typedef unsigned int ut;

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-O2 -march=loongson2e -mgp64" } */
/* { dg-options "-O2 isa=loongson -mgp64" } */
typedef long long st;
typedef unsigned long long ut;

View File

@ -19,7 +19,10 @@ along with GCC; see the file COPYING3. If not see
<http://www.gnu.org/licenses/>. */
/* { dg-do run } */
/* { dg-require-effective-target mips_loongson } */
/* loongson.h does not handle or check for MIPS16ness. There doesn't
seem any good reason for it to, given that the Loongson processors
do not support MIPS16. */
/* { dg-options "isa=loongson -mhard-float -mno-mips16 -flax-vector-conversions" } */
#include "loongson.h"
#include <stdio.h>

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=vr4130 -mgp32" } */
/* { dg-options "-O2 -march=vr4130 -mgp32" } */
/* { dg-final { scan-assembler-times "\tmacc\t\\\$1," 3 } } */
NOMIPS16 long long

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=vr5500 -mgp32" } */
/* { dg-options "-O2 -march=vr5500 -mgp32" } */
/* { dg-final { scan-assembler-times "\tmadd\t" 3 } } */
NOMIPS16 long long

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -mips32 -mgp32" } */
/* { dg-options "-O2 isa_rev>=1 -mgp32" } */
/* { dg-final { scan-assembler-times "\tmadd\t" 3 } } */
NOMIPS16 long long

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -mips32r2 -mdspr2 -mgp32" } */
/* { dg-options "-O2 -mdspr2 -mgp32" } */
/* { dg-final { scan-assembler-times "\tmadd\t\\\$ac" 3 } } */
NOMIPS16 long long

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-O2 -march=5kc" } */
/* { dg-options "-O2 -march=5kc" } */
/* { dg-final { scan-assembler-times "\tmadd\t" 4 } } */
/* { dg-final { scan-assembler-not "\tmtlo\t" } } */
/* { dg-final { scan-assembler-times "\tmflo\t" 3 } } */

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-O2 -march=5kc" } */
/* { dg-options "-O2 -march=5kc" } */
/* { dg-final { scan-assembler-not "\tmadd\t" } } */
/* { dg-final { scan-assembler "\tmul\t" } } */
/* { dg-final { scan-assembler "\taddu\t" } } */

View File

@ -1,5 +1,5 @@
/* -mlong32 added because of PR target/38598. */
/* { dg-mips-options "-O2 -march=5kc -mlong32" } */
/* { dg-options "-O2 -march=5kc -mlong32" } */
/* { dg-final { scan-assembler-not "\tmul\t" } } */
/* { dg-final { scan-assembler "\tmadd\t" } } */

View File

@ -1,4 +1,4 @@
/* { dg-mips-options "-O2 -march=5kc" } */
/* { dg-options "-O2 -march=5kc" } */
/* { dg-final { scan-assembler "\tmul\t" } } */
/* { dg-final { scan-assembler-not "\tmadd\t" } } */
/* { dg-final { scan-assembler-not "\tmtlo\t" } } */

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=vr4130 -mgp32" } */
/* { dg-options "-O2 -march=vr4130 -mgp32" } */
/* { dg-final { scan-assembler-times "\tmaccu\t\\\$1," 3 } } */
typedef unsigned int ui;

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -march=vr5500 -mgp32" } */
/* { dg-options "-O2 -march=vr5500 -mgp32" } */
/* { dg-final { scan-assembler-times "\tmaddu\t" 3 } } */
typedef unsigned int ui;

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -mips32 -mgp32" } */
/* { dg-options "-O2 isa_rev>=1 -mgp32" } */
/* { dg-final { scan-assembler-times "\tmaddu\t" 3 } } */
typedef unsigned int ui;

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2 -mips32r2 -mdspr2 -mgp32" } */
/* { dg-options "-O2 -mdspr2 -mgp32" } */
/* { dg-final { scan-assembler-times "\tmaddu\t\\\$ac" 3 } } */
typedef unsigned int ui;

View File

@ -1,5 +1,5 @@
/* { dg-do compile } */
/* { dg-mips-options "-O2" } */
/* { dg-options "-O2" } */
/* { dg-final { scan-assembler-not "\tlbu\t" } } */
#include <string.h>

View File

@ -1,5 +1,5 @@
/* { dg-do run { target mipsisa64*-*-* } } */
/* { dg-mips-options "-mips64 -O2 -mips3d -mhard-float -mgp64" } */
/* { dg-do run } */
/* { dg-options "-O2 -mips3d" } */
/* Test MIPS-3D builtin functions */
#include <stdlib.h>

View File

@ -1,5 +1,5 @@
/* { dg-do run { target mipsisa64*-*-* } } */
/* { dg-mips-options "-mips64 -O2 -mips3d -mhard-float -mgp64" } */
/* { dg-do run } */
/* { dg-options "-O2 -mips3d" } */
/* Test MIPS-3D branch-if-any-two builtin functions */
#include <stdlib.h>

View File

@ -1,5 +1,5 @@
/* { dg-do run { target mipsisa64*-*-* } } */
/* { dg-mips-options "-mips64 -O2 -mips3d -mhard-float -mgp64" } */
/* { dg-do run } */
/* { dg-options "-O2 -mips3d" } */
/* Test MIPS-3D absolute compare builtin functions */
#include <stdlib.h>

View File

@ -1,5 +1,5 @@
/* { dg-do run { target mipsisa64*-*-* } } */
/* { dg-mips-options "-mips64 -O2 -mips3d -mhard-float -mgp64" } */
/* { dg-do run } */
/* { dg-options "-O2 -mips3d" } */
/* Test MIPS-3D branch-if-any-four builtin functions */
#include <stdlib.h>

View File

@ -1,5 +1,5 @@
/* { dg-do run { target mipsisa64*-*-* } } */
/* { dg-mips-options "-mips64 -O2 -mips3d -mhard-float -mgp64" } */
/* { dg-do run } */
/* { dg-options "-O2 -mips3d" } */
/* Test MIPS-3D absolute-compare & branch-if-any-four builtin functions */
#include <stdlib.h>

View File

@ -1,5 +1,5 @@
/* { dg-do run { target mipsisa64*-*-* } } */
/* { dg-mips-options "-mips64 -O2 -mips3d -mhard-float -mgp64" } */
/* { dg-do run } */
/* { dg-options "-O2 -mips3d" } */
/* Test MIPS-3D absolute compare (floats) builtin functions */
#include <stdlib.h>

View File

@ -1,5 +1,5 @@
/* { dg-do run { target mipsisa64*-*-* } } */
/* { dg-mips-options "-mips64 -O2 -mips3d -mhard-float -mgp64" } */
/* { dg-do run } */
/* { dg-options "-O2 -mips3d" } */
/* Test MIPS-3D absolute compare (doubles) builtin functions */
#include <stdlib.h>

Some files were not shown because too many files have changed in this diff Show More