In preparation to running these tests against regular MIPS instructions.
gas/
* testsuite/gas/mips/mips16e-save.d: Rename to...
* testsuite/gas/mips/save.d: ... this.
* testsuite/gas/mips/mips16e-save-err.d: Update the
`error-output' option and rename to...
* testsuite/gas/mips/save-err.d: ... this.
* testsuite/gas/mips/mips16e-save-err.l: Rename to...
* testsuite/gas/mips/save-err.l: ... this.
* testsuite/gas/mips/mips16e-save.s: Rename to...
* testsuite/gas/mips/save.s: ... this.
* testsuite/gas/mips/mips16e-save-err.s: Rename to...
* testsuite/gas/mips/save-err.s: ... this.
* testsuite/gas/mips/mips.exp: Rename `mips16e-save' and
`mips16e-save-err' invocations to `save' and `save-err'
respectively and reorder these tests away from MIPS16 tests.
+2017-06-27 Maciej W. Rozycki <macro@imgtec.com>
+
+ * testsuite/gas/mips/mips16e-save.d: Rename to...
+ * testsuite/gas/mips/save.d: ... this.
+ * testsuite/gas/mips/mips16e-save-err.d: Update the
+ `error-output' option and rename to...
+ * testsuite/gas/mips/save-err.d: ... this.
+ * testsuite/gas/mips/mips16e-save-err.l: Rename to...
+ * testsuite/gas/mips/save-err.l: ... this.
+ * testsuite/gas/mips/mips16e-save.s: Rename to...
+ * testsuite/gas/mips/save.s: ... this.
+ * testsuite/gas/mips/mips16e-save-err.s: Rename to...
+ * testsuite/gas/mips/save-err.s: ... this.
+ * testsuite/gas/mips/mips.exp: Rename `mips16e-save' and
+ `mips16e-save-err' invocations to `save' and `save-err'
+ respectively and reorder these tests away from MIPS16 tests.
+
2017-06-27 Maciej W. Rozycki <macro@imgtec.com>
* testsuite/gas/mips/mips16e-save.d: Remove `-mmips:isa32
run_dump_test "mips64-dsp"
run_dump_test "mips32-mt"
+ run_dump_test_arches "save" [mips_arch_list_matching mips16e-32]
+ run_dump_test_arches "save-err" [mips_arch_list_matching mips16e-32]
+
run_dump_test "mips16-dwarf2"
if $has_newabi {
run_dump_test "mips16-dwarf2-n32"
run_dump_test "mips16-stabs"
run_dump_test "mips16e-jrc"
- run_dump_test_arches "mips16e-save" [mips_arch_list_matching mips16e-32]
- run_dump_test_arches "mips16e-save-err" \
- [mips_arch_list_matching mips16e-32]
run_dump_test "mips16e2-lui"
run_dump_test "mips16-intermix"
+++ /dev/null
-#name: MIPS16e SAVE/RESTORE errors
-#as: -32
-#error-output: mips16e-save-err.l
+++ /dev/null
-.*: Assembler messages:
-.*:2: Error: invalid operands `save \$3,100'
-.*:3: Error: missing frame size `save \$4'
-.*:4: Error: frame size specified twice `save \$4,100,200'
-.*:5: Error: operand 2 must be constant `save \$4,foo'
-.*:7: Error: invalid frame size `save \$4,1'
-.*:8: Error: invalid frame size `save \$4,7'
-.*:10: Error: invalid frame size `save \$4,12'
-.*:11: Error: invalid frame size `save \$4,2048'
-.*:12: Error: invalid frame size `save \$4,2052'
-.*:14: Error: invalid operands `save \$4,\$6,0'
-.*:15: Error: invalid operands `save 0,\$5,\$7'
-.*:18: Error: invalid operands `save \$16,\$18,\$20,0'
+++ /dev/null
-
- save $3,100 # error
- save $4 # error
- save $4,100,200 # error
- save $4,foo # error
- save $4,0 # OK
- save $4,1 # error
- save $4,7 # error
- save $4,8 # OK
- save $4,12 # error
- save $4,2048 # OK
- save $4,2052 # error
- save $4,0,$7 # error
- save $4,$6,0 # error
- save 0,$5,$7 # error
- save $16,$18,0 # OK
- save $16,$18,$19,0 # OK
- save $16,$18,$20,0 # error
+++ /dev/null
-#objdump: -dr
-#as: -32
-#name: MIPS16e SAVE/RESTORE
-
-.*: +file format .*mips.*
-
-Disassembly of section .text:
-00000000 <func>:
- 0:[ ]+6481[ ]+save[ ]+8
- 2:[ ]+64c2[ ]+save[ ]+16,ra
- 4:[ ]+64a3[ ]+save[ ]+24,s0
- 6:[ ]+6494[ ]+save[ ]+32,s1
- 8:[ ]+64b5[ ]+save[ ]+40,s0-s1
- a:[ ]+64e6[ ]+save[ ]+48,ra,s0
- c:[ ]+64d7[ ]+save[ ]+56,ra,s1
- e:[ ]+64f8[ ]+save[ ]+64,ra,s0-s1
- 10:[ ]+64f9[ ]+save[ ]+72,ra,s0-s1
- 12:[ ]+64fa[ ]+save[ ]+80,ra,s0-s1
- 14:[ ]+64fb[ ]+save[ ]+88,ra,s0-s1
- 16:[ ]+64f0[ ]+save[ ]+128,ra,s0-s1
- 18:[ ]+f010 6481[ ]+save[ ]+136
- 1c:[ ]+f010 64c2[ ]+save[ ]+144,ra
- 20:[ ]+f010 64b3[ ]+save[ ]+152,s0-s1
- 24:[ ]+f100 6488[ ]+save[ ]+64,s2
- 28:[ ]+f600 6489[ ]+save[ ]+72,s2-s7
- 2c:[ ]+f700 648a[ ]+save[ ]+80,s2-s8
- 30:[ ]+f700 64bb[ ]+save[ ]+88,s0-s8
- 34:[ ]+f001 6488[ ]+save[ ]+64,a3
- 38:[ ]+f012 6480[ ]+save[ ]+128,a2-a3
- 3c:[ ]+f02b 6480[ ]+save[ ]+256,a0-a3
- 40:[ ]+f024 6480[ ]+save[ ]+a0,256
- 44:[ ]+f018 6480[ ]+save[ ]+a0-a1,128
- 48:[ ]+f00e 6488[ ]+save[ ]+a0-a3,64
- 4c:[ ]+f015 6480[ ]+save[ ]+a0,128,a3
- 50:[ ]+f017 6480[ ]+save[ ]+a0,128,a1-a3
- 54:[ ]+f01a 6480[ ]+save[ ]+a0-a1,128,a2-a3
- 58:[ ]+f01d 6480[ ]+save[ ]+a0-a2,128,a3
- 5c:[ ]+f71a 64f0[ ]+save[ ]+a0-a1,128,ra,s0-s8,a2-a3
- 60:[ ]+6470[ ]+restore[ ]+128,ra,s0-s1
- 62:[ ]+f010 6441[ ]+restore[ ]+136,ra
- 66:[ ]+f100 6408[ ]+restore[ ]+64,s2
- 6a:[ ]+f71a 6470[ ]+restore[ ]+a0-a1,128,ra,s0-s8,a2-a3
- 6e:[ ]+6500[ ]+nop
+++ /dev/null
-# Test the generation of the mips16e save instruction
-
- .text
-func:
-# Un-extended version
- save 8
- save $31,16
- save $16,24
- save $17,32
- save $16-$17,40
- save $31,$16,48
- save $31,$17,56
- save $31,$16,$17,64
- save $31,$16-$17,72
- save 80,$31,$16-$17
- save $31,88,$16,$17
- save $31,$17,128,$16
-
-# Extended version
- save 136
- save $31,144
- save $16-$17,152
-
- # sreg
- save $18,64
- save $18-$23,72
- save $18-$23,$30,80
- save $16-$23,$30,88
-
- # static areg
- save 64,$7
- save 128,$7,$6
- save 256,$7,$6,$5,$4
-
- # areg
- save $4,256
- save $4,$5,128
- save $4,$5,$6,$7,64
-
- # mix areg and static areg
- save $4,128,$7
- save $4,128,$7,$6,$5
- save $4,$5,128,$7,$6
- save $4,$5,$6,128,$7
-
- save $4-$5,$16-$23,$30-$31,128,$6-$7
-
- restore $16,$17,$31,128
- restore $31,136
- restore $18,64
- restore $4-$5,$16-$23,$30-$31,128,$6-$7
-
- .p2align 4
-
--- /dev/null
+#name: MIPS16e SAVE/RESTORE errors
+#as: -32
+#error-output: save-err.l
--- /dev/null
+.*: Assembler messages:
+.*:2: Error: invalid operands `save \$3,100'
+.*:3: Error: missing frame size `save \$4'
+.*:4: Error: frame size specified twice `save \$4,100,200'
+.*:5: Error: operand 2 must be constant `save \$4,foo'
+.*:7: Error: invalid frame size `save \$4,1'
+.*:8: Error: invalid frame size `save \$4,7'
+.*:10: Error: invalid frame size `save \$4,12'
+.*:11: Error: invalid frame size `save \$4,2048'
+.*:12: Error: invalid frame size `save \$4,2052'
+.*:14: Error: invalid operands `save \$4,\$6,0'
+.*:15: Error: invalid operands `save 0,\$5,\$7'
+.*:18: Error: invalid operands `save \$16,\$18,\$20,0'
--- /dev/null
+
+ save $3,100 # error
+ save $4 # error
+ save $4,100,200 # error
+ save $4,foo # error
+ save $4,0 # OK
+ save $4,1 # error
+ save $4,7 # error
+ save $4,8 # OK
+ save $4,12 # error
+ save $4,2048 # OK
+ save $4,2052 # error
+ save $4,0,$7 # error
+ save $4,$6,0 # error
+ save 0,$5,$7 # error
+ save $16,$18,0 # OK
+ save $16,$18,$19,0 # OK
+ save $16,$18,$20,0 # error
--- /dev/null
+#objdump: -dr
+#as: -32
+#name: MIPS16e SAVE/RESTORE
+
+.*: +file format .*mips.*
+
+Disassembly of section .text:
+00000000 <func>:
+ 0:[ ]+6481[ ]+save[ ]+8
+ 2:[ ]+64c2[ ]+save[ ]+16,ra
+ 4:[ ]+64a3[ ]+save[ ]+24,s0
+ 6:[ ]+6494[ ]+save[ ]+32,s1
+ 8:[ ]+64b5[ ]+save[ ]+40,s0-s1
+ a:[ ]+64e6[ ]+save[ ]+48,ra,s0
+ c:[ ]+64d7[ ]+save[ ]+56,ra,s1
+ e:[ ]+64f8[ ]+save[ ]+64,ra,s0-s1
+ 10:[ ]+64f9[ ]+save[ ]+72,ra,s0-s1
+ 12:[ ]+64fa[ ]+save[ ]+80,ra,s0-s1
+ 14:[ ]+64fb[ ]+save[ ]+88,ra,s0-s1
+ 16:[ ]+64f0[ ]+save[ ]+128,ra,s0-s1
+ 18:[ ]+f010 6481[ ]+save[ ]+136
+ 1c:[ ]+f010 64c2[ ]+save[ ]+144,ra
+ 20:[ ]+f010 64b3[ ]+save[ ]+152,s0-s1
+ 24:[ ]+f100 6488[ ]+save[ ]+64,s2
+ 28:[ ]+f600 6489[ ]+save[ ]+72,s2-s7
+ 2c:[ ]+f700 648a[ ]+save[ ]+80,s2-s8
+ 30:[ ]+f700 64bb[ ]+save[ ]+88,s0-s8
+ 34:[ ]+f001 6488[ ]+save[ ]+64,a3
+ 38:[ ]+f012 6480[ ]+save[ ]+128,a2-a3
+ 3c:[ ]+f02b 6480[ ]+save[ ]+256,a0-a3
+ 40:[ ]+f024 6480[ ]+save[ ]+a0,256
+ 44:[ ]+f018 6480[ ]+save[ ]+a0-a1,128
+ 48:[ ]+f00e 6488[ ]+save[ ]+a0-a3,64
+ 4c:[ ]+f015 6480[ ]+save[ ]+a0,128,a3
+ 50:[ ]+f017 6480[ ]+save[ ]+a0,128,a1-a3
+ 54:[ ]+f01a 6480[ ]+save[ ]+a0-a1,128,a2-a3
+ 58:[ ]+f01d 6480[ ]+save[ ]+a0-a2,128,a3
+ 5c:[ ]+f71a 64f0[ ]+save[ ]+a0-a1,128,ra,s0-s8,a2-a3
+ 60:[ ]+6470[ ]+restore[ ]+128,ra,s0-s1
+ 62:[ ]+f010 6441[ ]+restore[ ]+136,ra
+ 66:[ ]+f100 6408[ ]+restore[ ]+64,s2
+ 6a:[ ]+f71a 6470[ ]+restore[ ]+a0-a1,128,ra,s0-s8,a2-a3
+ 6e:[ ]+6500[ ]+nop
--- /dev/null
+# Test the generation of the mips16e save instruction
+
+ .text
+func:
+# Un-extended version
+ save 8
+ save $31,16
+ save $16,24
+ save $17,32
+ save $16-$17,40
+ save $31,$16,48
+ save $31,$17,56
+ save $31,$16,$17,64
+ save $31,$16-$17,72
+ save 80,$31,$16-$17
+ save $31,88,$16,$17
+ save $31,$17,128,$16
+
+# Extended version
+ save 136
+ save $31,144
+ save $16-$17,152
+
+ # sreg
+ save $18,64
+ save $18-$23,72
+ save $18-$23,$30,80
+ save $16-$23,$30,88
+
+ # static areg
+ save 64,$7
+ save 128,$7,$6
+ save 256,$7,$6,$5,$4
+
+ # areg
+ save $4,256
+ save $4,$5,128
+ save $4,$5,$6,$7,64
+
+ # mix areg and static areg
+ save $4,128,$7
+ save $4,128,$7,$6,$5
+ save $4,$5,128,$7,$6
+ save $4,$5,$6,128,$7
+
+ save $4-$5,$16-$23,$30-$31,128,$6-$7
+
+ restore $16,$17,$31,128
+ restore $31,136
+ restore $18,64
+ restore $4-$5,$16-$23,$30-$31,128,$6-$7
+
+ .p2align 4
+