* gas/arm/armv1.s, arm/armv1.d, arm/fpa-mem.s, arm/fpa-mem.d

arm/fpa-monadic.s, arm/fpa-monadic.d, arm/fpa-dyadic.s,
arm/fpa-dyadic.d: New tests.
* gas/arm/le-fpconst.d (objdump): pass --section=.text
* gas/arm/arm.exp: Add new tests.  Run le-fpconst test on elf targets.
This commit is contained in:
Richard Earnshaw 2002-01-14 17:39:02 +00:00
parent 21f0f23a55
commit 50463d2af3
11 changed files with 965 additions and 1 deletions

View File

@ -1,3 +1,11 @@
2002-01-14 Richard Earnshaw <rearnsha@arm.com>
* gas/arm/armv1.s, arm/armv1.d, arm/fpa-mem.s, arm/fpa-mem.d
arm/fpa-monadic.s, arm/fpa-monadic.d, arm/fpa-dyadic.s,
arm/fpa-dyadic.d: New tests.
* gas/arm/le-fpconst.d (objdump): pass --section=.text
* gas/arm/arm.exp: Add new tests. Run le-fpconst test on elf targets.
2002-01-14 Richard Earnshaw <rearnsha@arm.com>
* gas/arm/armv1-bad.s gas/arm/armv1-bad.l: New files.

View File

@ -19,6 +19,8 @@ if {[istarget *arm*-*-*] || [istarget "xscale-*-*"]} then {
run_dump_test "ldconst"
run_dump_test "armv1"
run_errors_test "armv1-bad" "-marm1" "ARM v1 errors"
gas_test "arm3.s" "-marm3" $stdoptlist "Arm 3 instructions"
@ -39,6 +41,12 @@ if {[istarget *arm*-*-*] || [istarget "xscale-*-*"]} then {
gas_test "float.s" "" $stdoptlist "Core floating point instructions"
run_dump_test "fpa-monadic"
run_dump_test "fpa-dyadic"
run_dump_test "fpa-mem"
run_dump_test "xscale"
run_dump_test "adrl"

View File

@ -0,0 +1,70 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: ARM v1 instructions
#as: -marm1
# Test the ARM v1 instructions
.*: +file format .*arm.*
Disassembly of section .text:
0+00 <[^>]*> e0000000 ? and r0, r0, r0
0+04 <[^>]*> e0100000 ? ands r0, r0, r0
0+08 <[^>]*> e0200000 ? eor r0, r0, r0
0+0c <[^>]*> e0300000 ? eors r0, r0, r0
0+10 <[^>]*> e0400000 ? sub r0, r0, r0
0+14 <[^>]*> e0500000 ? subs r0, r0, r0
0+18 <[^>]*> e0600000 ? rsb r0, r0, r0
0+1c <[^>]*> e0700000 ? rsbs r0, r0, r0
0+20 <[^>]*> e0800000 ? add r0, r0, r0
0+24 <[^>]*> e0900000 ? adds r0, r0, r0
0+28 <[^>]*> e0a00000 ? adc r0, r0, r0
0+2c <[^>]*> e0b00000 ? adcs r0, r0, r0
0+30 <[^>]*> e0c00000 ? sbc r0, r0, r0
0+34 <[^>]*> e0d00000 ? sbcs r0, r0, r0
0+38 <[^>]*> e0e00000 ? rsc r0, r0, r0
0+3c <[^>]*> e0f00000 ? rscs r0, r0, r0
0+40 <[^>]*> e1800000 ? orr r0, r0, r0
0+44 <[^>]*> e1900000 ? orrs r0, r0, r0
0+48 <[^>]*> e1c00000 ? bic r0, r0, r0
0+4c <[^>]*> e1d00000 ? bics r0, r0, r0
0+50 <[^>]*> e1100000 ? tst r0, r0
0+54 <[^>]*> e1100000 ? tst r0, r0
0+58 <[^>]*> e110f000 ? tstp r0, r0
0+5c <[^>]*> e1300000 ? teq r0, r0
0+60 <[^>]*> e1300000 ? teq r0, r0
0+64 <[^>]*> e130f000 ? teqp r0, r0
0+68 <[^>]*> e1500000 ? cmp r0, r0
0+6c <[^>]*> e1500000 ? cmp r0, r0
0+70 <[^>]*> e150f000 ? cmpp r0, r0
0+74 <[^>]*> e1700000 ? cmn r0, r0
0+78 <[^>]*> e1700000 ? cmn r0, r0
0+7c <[^>]*> e170f000 ? cmnp r0, r0
0+80 <[^>]*> e1a00000 ? nop[ ]+\(mov r0,r0\)
0+84 <[^>]*> e1b00000 ? movs r0, r0
0+88 <[^>]*> e1e00000 ? mvn r0, r0
0+8c <[^>]*> e1f00000 ? mvns r0, r0
0+90 <[^>]*> ef000000 ? swi 0x00000000
0+94 <[^>]*> e5900000 ? ldr r0, \[r0\]
0+98 <[^>]*> e5d00000 ? ldrb r0, \[r0\]
0+9c <[^>]*> e4b10000 ? ldrt r0, \[r1\]
0+a0 <[^>]*> e4f10000 ? ldrbt r0, \[r1\]
0+a4 <[^>]*> e5800000 ? str r0, \[r0\]
0+a8 <[^>]*> e5c00000 ? strb r0, \[r0\]
0+ac <[^>]*> e4a10000 ? strt r0, \[r1\]
0+b0 <[^>]*> e4e10000 ? strbt r0, \[r1\]
0+b4 <[^>]*> e8800001 ? stmia r0, {r0}
0+b8 <[^>]*> e9800001 ? stmib r0, {r0}
0+bc <[^>]*> e8000001 ? stmda r0, {r0}
0+c0 <[^>]*> e9000001 ? stmdb r0, {r0}
0+c4 <[^>]*> e9000001 ? stmdb r0, {r0}
0+c8 <[^>]*> e9800001 ? stmib r0, {r0}
0+cc <[^>]*> e8800001 ? stmia r0, {r0}
0+d0 <[^>]*> e8000001 ? stmda r0, {r0}
0+d4 <[^>]*> e8900001 ? ldmia r0, {r0}
0+d8 <[^>]*> e9900001 ? ldmib r0, {r0}
0+dc <[^>]*> e8100001 ? ldmda r0, {r0}
0+e0 <[^>]*> e9100001 ? ldmdb r0, {r0}
0+e4 <[^>]*> e8900001 ? ldmia r0, {r0}
0+e8 <[^>]*> e8100001 ? ldmda r0, {r0}
0+ec <[^>]*> e9100001 ? ldmdb r0, {r0}
0+f0 <[^>]*> e9900001 ? ldmib r0, {r0}

View File

@ -0,0 +1,70 @@
.global entry
.text
entry:
and r0, r0, r0
ands r0, r0, r0
eor r0, r0, r0
eors r0, r0, r0
sub r0, r0, r0
subs r0, r0, r0
rsb r0, r0, r0
rsbs r0, r0, r0
add r0, r0, r0
adds r0, r0, r0
adc r0, r0, r0
adcs r0, r0, r0
sbc r0, r0, r0
sbcs r0, r0, r0
rsc r0, r0, r0
rscs r0, r0, r0
orr r0, r0, r0
orrs r0, r0, r0
bic r0, r0, r0
bics r0, r0, r0
tst r0, r0
tsts r0, r0
tstp r0, r0
teq r0, r0
teqs r0, r0
teqp r0, r0
cmp r0, r0
cmps r0, r0
cmpp r0, r0
cmn r0, r0
cmns r0, r0
cmnp r0, r0
mov r0, r0
movs r0, r0
mvn r0, r0
mvns r0, r0
swi #0
ldr r0, [r0, #-0]
ldrb r0, [r0, #-0]
ldrt r0, [r1]
ldrbt r0, [r1]
str r0, [r0, #-0]
strb r0, [r0, #-0]
strt r0, [r1]
strbt r0, [r1]
stmia r0, {r0}
stmib r0, {r0}
stmda r0, {r0}
stmdb r0, {r0}
stmfd r0, {r0}
stmfa r0, {r0}
stmea r0, {r0}
stmed r0, {r0}
ldmia r0, {r0}
ldmib r0, {r0}
ldmda r0, {r0}
ldmdb r0, {r0}
ldmfd r0, {r0}
ldmfa r0, {r0}
ldmea r0, {r0}
ldmed r0, {r0}

View File

@ -0,0 +1,166 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: FPA Dyadic instructions
#as: -mfpe-old
# Test FPA Dyadic instructions
# This test should work for both big and little-endian assembly.
.*: *file format .*arm.*
Disassembly of section .text:
0+000 <[^>]*> ee000100 ? adfs f0, f0, f0
0+004 <[^>]*> ee000120 ? adfsp f0, f0, f0
0+008 <[^>]*> ee000140 ? adfsm f0, f0, f0
0+00c <[^>]*> ee000160 ? adfsz f0, f0, f0
0+010 <[^>]*> ee000180 ? adfd f0, f0, f0
0+014 <[^>]*> ee0001a0 ? adfdp f0, f0, f0
0+018 <[^>]*> ee0001c0 ? adfdm f0, f0, f0
0+01c <[^>]*> ee0001e0 ? adfdz f0, f0, f0
0+020 <[^>]*> ee080100 ? adfe f0, f0, f0
0+024 <[^>]*> ee080120 ? adfep f0, f0, f0
0+028 <[^>]*> ee080140 ? adfem f0, f0, f0
0+02c <[^>]*> ee080160 ? adfez f0, f0, f0
0+030 <[^>]*> ee200100 ? sufs f0, f0, f0
0+034 <[^>]*> ee200120 ? sufsp f0, f0, f0
0+038 <[^>]*> ee200140 ? sufsm f0, f0, f0
0+03c <[^>]*> ee200160 ? sufsz f0, f0, f0
0+040 <[^>]*> ee200180 ? sufd f0, f0, f0
0+044 <[^>]*> ee2001a0 ? sufdp f0, f0, f0
0+048 <[^>]*> ee2001c0 ? sufdm f0, f0, f0
0+04c <[^>]*> ee2001e0 ? sufdz f0, f0, f0
0+050 <[^>]*> ee280100 ? sufe f0, f0, f0
0+054 <[^>]*> ee280120 ? sufep f0, f0, f0
0+058 <[^>]*> ee280140 ? sufem f0, f0, f0
0+05c <[^>]*> ee280160 ? sufez f0, f0, f0
0+060 <[^>]*> ee300100 ? rsfs f0, f0, f0
0+064 <[^>]*> ee300120 ? rsfsp f0, f0, f0
0+068 <[^>]*> ee300140 ? rsfsm f0, f0, f0
0+06c <[^>]*> ee300160 ? rsfsz f0, f0, f0
0+070 <[^>]*> ee300180 ? rsfd f0, f0, f0
0+074 <[^>]*> ee3001a0 ? rsfdp f0, f0, f0
0+078 <[^>]*> ee3001c0 ? rsfdm f0, f0, f0
0+07c <[^>]*> ee3001e0 ? rsfdz f0, f0, f0
0+080 <[^>]*> ee380100 ? rsfe f0, f0, f0
0+084 <[^>]*> ee380120 ? rsfep f0, f0, f0
0+088 <[^>]*> ee380140 ? rsfem f0, f0, f0
0+08c <[^>]*> ee380160 ? rsfez f0, f0, f0
0+090 <[^>]*> ee100100 ? mufs f0, f0, f0
0+094 <[^>]*> ee100120 ? mufsp f0, f0, f0
0+098 <[^>]*> ee100140 ? mufsm f0, f0, f0
0+09c <[^>]*> ee100160 ? mufsz f0, f0, f0
0+0a0 <[^>]*> ee100180 ? mufd f0, f0, f0
0+0a4 <[^>]*> ee1001a0 ? mufdp f0, f0, f0
0+0a8 <[^>]*> ee1001c0 ? mufdm f0, f0, f0
0+0ac <[^>]*> ee1001e0 ? mufdz f0, f0, f0
0+0b0 <[^>]*> ee180100 ? mufe f0, f0, f0
0+0b4 <[^>]*> ee180120 ? mufep f0, f0, f0
0+0b8 <[^>]*> ee180140 ? mufem f0, f0, f0
0+0bc <[^>]*> ee180160 ? mufez f0, f0, f0
0+0c0 <[^>]*> ee400100 ? dvfs f0, f0, f0
0+0c4 <[^>]*> ee400120 ? dvfsp f0, f0, f0
0+0c8 <[^>]*> ee400140 ? dvfsm f0, f0, f0
0+0cc <[^>]*> ee400160 ? dvfsz f0, f0, f0
0+0d0 <[^>]*> ee400180 ? dvfd f0, f0, f0
0+0d4 <[^>]*> ee4001a0 ? dvfdp f0, f0, f0
0+0d8 <[^>]*> ee4001c0 ? dvfdm f0, f0, f0
0+0dc <[^>]*> ee4001e0 ? dvfdz f0, f0, f0
0+0e0 <[^>]*> ee480100 ? dvfe f0, f0, f0
0+0e4 <[^>]*> ee480120 ? dvfep f0, f0, f0
0+0e8 <[^>]*> ee480140 ? dvfem f0, f0, f0
0+0ec <[^>]*> ee480160 ? dvfez f0, f0, f0
0+0f0 <[^>]*> ee500100 ? rdfs f0, f0, f0
0+0f4 <[^>]*> ee500120 ? rdfsp f0, f0, f0
0+0f8 <[^>]*> ee500140 ? rdfsm f0, f0, f0
0+0fc <[^>]*> ee500160 ? rdfsz f0, f0, f0
0+100 <[^>]*> ee500180 ? rdfd f0, f0, f0
0+104 <[^>]*> ee5001a0 ? rdfdp f0, f0, f0
0+108 <[^>]*> ee5001c0 ? rdfdm f0, f0, f0
0+10c <[^>]*> ee5001e0 ? rdfdz f0, f0, f0
0+110 <[^>]*> ee580100 ? rdfe f0, f0, f0
0+114 <[^>]*> ee580120 ? rdfep f0, f0, f0
0+118 <[^>]*> ee580140 ? rdfem f0, f0, f0
0+11c <[^>]*> ee580160 ? rdfez f0, f0, f0
0+120 <[^>]*> ee600100 ? pows f0, f0, f0
0+124 <[^>]*> ee600120 ? powsp f0, f0, f0
0+128 <[^>]*> ee600140 ? powsm f0, f0, f0
0+12c <[^>]*> ee600160 ? powsz f0, f0, f0
0+130 <[^>]*> ee600180 ? powd f0, f0, f0
0+134 <[^>]*> ee6001a0 ? powdp f0, f0, f0
0+138 <[^>]*> ee6001c0 ? powdm f0, f0, f0
0+13c <[^>]*> ee6001e0 ? powdz f0, f0, f0
0+140 <[^>]*> ee680100 ? powe f0, f0, f0
0+144 <[^>]*> ee680120 ? powep f0, f0, f0
0+148 <[^>]*> ee680140 ? powem f0, f0, f0
0+14c <[^>]*> ee680160 ? powez f0, f0, f0
0+150 <[^>]*> ee700100 ? rpws f0, f0, f0
0+154 <[^>]*> ee700120 ? rpwsp f0, f0, f0
0+158 <[^>]*> ee700140 ? rpwsm f0, f0, f0
0+15c <[^>]*> ee700160 ? rpwsz f0, f0, f0
0+160 <[^>]*> ee700180 ? rpwd f0, f0, f0
0+164 <[^>]*> ee7001a0 ? rpwdp f0, f0, f0
0+168 <[^>]*> ee7001c0 ? rpwdm f0, f0, f0
0+16c <[^>]*> ee7001e0 ? rpwdz f0, f0, f0
0+170 <[^>]*> ee780100 ? rpwe f0, f0, f0
0+174 <[^>]*> ee780120 ? rpwep f0, f0, f0
0+178 <[^>]*> ee780140 ? rpwem f0, f0, f0
0+17c <[^>]*> ee780160 ? rpwez f0, f0, f0
0+180 <[^>]*> ee800100 ? rmfs f0, f0, f0
0+184 <[^>]*> ee800120 ? rmfsp f0, f0, f0
0+188 <[^>]*> ee800140 ? rmfsm f0, f0, f0
0+18c <[^>]*> ee800160 ? rmfsz f0, f0, f0
0+190 <[^>]*> ee800180 ? rmfd f0, f0, f0
0+194 <[^>]*> ee8001a0 ? rmfdp f0, f0, f0
0+198 <[^>]*> ee8001c0 ? rmfdm f0, f0, f0
0+19c <[^>]*> ee8001e0 ? rmfdz f0, f0, f0
0+1a0 <[^>]*> ee880100 ? rmfe f0, f0, f0
0+1a4 <[^>]*> ee880120 ? rmfep f0, f0, f0
0+1a8 <[^>]*> ee880140 ? rmfem f0, f0, f0
0+1ac <[^>]*> ee880160 ? rmfez f0, f0, f0
0+1b0 <[^>]*> ee900100 ? fmls f0, f0, f0
0+1b4 <[^>]*> ee900120 ? fmlsp f0, f0, f0
0+1b8 <[^>]*> ee900140 ? fmlsm f0, f0, f0
0+1bc <[^>]*> ee900160 ? fmlsz f0, f0, f0
0+1c0 <[^>]*> ee900180 ? fmld f0, f0, f0
0+1c4 <[^>]*> ee9001a0 ? fmldp f0, f0, f0
0+1c8 <[^>]*> ee9001c0 ? fmldm f0, f0, f0
0+1cc <[^>]*> ee9001e0 ? fmldz f0, f0, f0
0+1d0 <[^>]*> ee980100 ? fmle f0, f0, f0
0+1d4 <[^>]*> ee980120 ? fmlep f0, f0, f0
0+1d8 <[^>]*> ee980140 ? fmlem f0, f0, f0
0+1dc <[^>]*> ee980160 ? fmlez f0, f0, f0
0+1e0 <[^>]*> eea00100 ? fdvs f0, f0, f0
0+1e4 <[^>]*> eea00120 ? fdvsp f0, f0, f0
0+1e8 <[^>]*> eea00140 ? fdvsm f0, f0, f0
0+1ec <[^>]*> eea00160 ? fdvsz f0, f0, f0
0+1f0 <[^>]*> eea00180 ? fdvd f0, f0, f0
0+1f4 <[^>]*> eea001a0 ? fdvdp f0, f0, f0
0+1f8 <[^>]*> eea001c0 ? fdvdm f0, f0, f0
0+1fc <[^>]*> eea001e0 ? fdvdz f0, f0, f0
0+200 <[^>]*> eea80100 ? fdve f0, f0, f0
0+204 <[^>]*> eea80120 ? fdvep f0, f0, f0
0+208 <[^>]*> eea80140 ? fdvem f0, f0, f0
0+20c <[^>]*> eea80160 ? fdvez f0, f0, f0
0+210 <[^>]*> eeb00100 ? frds f0, f0, f0
0+214 <[^>]*> eeb00120 ? frdsp f0, f0, f0
0+218 <[^>]*> eeb00140 ? frdsm f0, f0, f0
0+21c <[^>]*> eeb00160 ? frdsz f0, f0, f0
0+220 <[^>]*> eeb00180 ? frdd f0, f0, f0
0+224 <[^>]*> eeb001a0 ? frddp f0, f0, f0
0+228 <[^>]*> eeb001c0 ? frddm f0, f0, f0
0+22c <[^>]*> eeb001e0 ? frddz f0, f0, f0
0+230 <[^>]*> eeb80100 ? frde f0, f0, f0
0+234 <[^>]*> eeb80120 ? frdep f0, f0, f0
0+238 <[^>]*> eeb80140 ? frdem f0, f0, f0
0+23c <[^>]*> eeb80160 ? frdez f0, f0, f0
0+240 <[^>]*> eec00100 ? pols f0, f0, f0
0+244 <[^>]*> eec00120 ? polsp f0, f0, f0
0+248 <[^>]*> eec00140 ? polsm f0, f0, f0
0+24c <[^>]*> eec00160 ? polsz f0, f0, f0
0+250 <[^>]*> eec00180 ? pold f0, f0, f0
0+254 <[^>]*> eec001a0 ? poldp f0, f0, f0
0+258 <[^>]*> eec001c0 ? poldm f0, f0, f0
0+25c <[^>]*> eec001e0 ? poldz f0, f0, f0
0+260 <[^>]*> eec80100 ? pole f0, f0, f0
0+264 <[^>]*> eec80120 ? polep f0, f0, f0
0+268 <[^>]*> eec80140 ? polem f0, f0, f0
0+26c <[^>]*> eec80160 ? polez f0, f0, f0

View File

@ -0,0 +1,172 @@
.text
.globl F
F:
adfs f0, f0, f0
adfsp f0, f0, f0
adfsm f0, f0, f0
adfsz f0, f0, f0
adfd f0, f0, f0
adfdp f0, f0, f0
adfdm f0, f0, f0
adfdz f0, f0, f0
adfe f0, f0, f0
adfep f0, f0, f0
adfem f0, f0, f0
adfez f0, f0, f0
sufs f0, f0, f0
sufsp f0, f0, f0
sufsm f0, f0, f0
sufsz f0, f0, f0
sufd f0, f0, f0
sufdp f0, f0, f0
sufdm f0, f0, f0
sufdz f0, f0, f0
sufe f0, f0, f0
sufep f0, f0, f0
sufem f0, f0, f0
sufez f0, f0, f0
rsfs f0, f0, f0
rsfsp f0, f0, f0
rsfsm f0, f0, f0
rsfsz f0, f0, f0
rsfd f0, f0, f0
rsfdp f0, f0, f0
rsfdm f0, f0, f0
rsfdz f0, f0, f0
rsfe f0, f0, f0
rsfep f0, f0, f0
rsfem f0, f0, f0
rsfez f0, f0, f0
mufs f0, f0, f0
mufsp f0, f0, f0
mufsm f0, f0, f0
mufsz f0, f0, f0
mufd f0, f0, f0
mufdp f0, f0, f0
mufdm f0, f0, f0
mufdz f0, f0, f0
mufe f0, f0, f0
mufep f0, f0, f0
mufem f0, f0, f0
mufez f0, f0, f0
dvfs f0, f0, f0
dvfsp f0, f0, f0
dvfsm f0, f0, f0
dvfsz f0, f0, f0
dvfd f0, f0, f0
dvfdp f0, f0, f0
dvfdm f0, f0, f0
dvfdz f0, f0, f0
dvfe f0, f0, f0
dvfep f0, f0, f0
dvfem f0, f0, f0
dvfez f0, f0, f0
rdfs f0, f0, f0
rdfsp f0, f0, f0
rdfsm f0, f0, f0
rdfsz f0, f0, f0
rdfd f0, f0, f0
rdfdp f0, f0, f0
rdfdm f0, f0, f0
rdfdz f0, f0, f0
rdfe f0, f0, f0
rdfep f0, f0, f0
rdfem f0, f0, f0
rdfez f0, f0, f0
pows f0, f0, f0
powsp f0, f0, f0
powsm f0, f0, f0
powsz f0, f0, f0
powd f0, f0, f0
powdp f0, f0, f0
powdm f0, f0, f0
powdz f0, f0, f0
powe f0, f0, f0
powep f0, f0, f0
powem f0, f0, f0
powez f0, f0, f0
rpws f0, f0, f0
rpwsp f0, f0, f0
rpwsm f0, f0, f0
rpwsz f0, f0, f0
rpwd f0, f0, f0
rpwdp f0, f0, f0
rpwdm f0, f0, f0
rpwdz f0, f0, f0
rpwe f0, f0, f0
rpwep f0, f0, f0
rpwem f0, f0, f0
rpwez f0, f0, f0
rmfs f0, f0, f0
rmfsp f0, f0, f0
rmfsm f0, f0, f0
rmfsz f0, f0, f0
rmfd f0, f0, f0
rmfdp f0, f0, f0
rmfdm f0, f0, f0
rmfdz f0, f0, f0
rmfe f0, f0, f0
rmfep f0, f0, f0
rmfem f0, f0, f0
rmfez f0, f0, f0
fmls f0, f0, f0
fmlsp f0, f0, f0
fmlsm f0, f0, f0
fmlsz f0, f0, f0
fmld f0, f0, f0
fmldp f0, f0, f0
fmldm f0, f0, f0
fmldz f0, f0, f0
fmle f0, f0, f0
fmlep f0, f0, f0
fmlem f0, f0, f0
fmlez f0, f0, f0
fdvs f0, f0, f0
fdvsp f0, f0, f0
fdvsm f0, f0, f0
fdvsz f0, f0, f0
fdvd f0, f0, f0
fdvdp f0, f0, f0
fdvdm f0, f0, f0
fdvdz f0, f0, f0
fdve f0, f0, f0
fdvep f0, f0, f0
fdvem f0, f0, f0
fdvez f0, f0, f0
frds f0, f0, f0
frdsp f0, f0, f0
frdsm f0, f0, f0
frdsz f0, f0, f0
frdd f0, f0, f0
frddp f0, f0, f0
frddm f0, f0, f0
frddz f0, f0, f0
frde f0, f0, f0
frdep f0, f0, f0
frdem f0, f0, f0
frdez f0, f0, f0
pols f0, f0, f0
polsp f0, f0, f0
polsm f0, f0, f0
polsz f0, f0, f0
pold f0, f0, f0
poldp f0, f0, f0
poldm f0, f0, f0
poldz f0, f0, f0
pole f0, f0, f0
polep f0, f0, f0
polem f0, f0, f0
polez f0, f0, f0

View File

@ -0,0 +1,32 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: FPA memory insructions
#as: -mfpa10
# Test FPA memory instructions
# This test should work for both big and little-endian assembly.
.*: *file format .*arm.*
Disassembly of section .text:
0+00 <[^>]*> ed900100 ? ldfs f0, \[r0\]
0+04 <[^>]*> ec300101 ? ldfs f0, \[r0\], -#4
0+08 <[^>]*> ed908100 ? ldfd f0, \[r0\]
0+0c <[^>]*> ec308101 ? ldfd f0, \[r0\], -#4
0+10 <[^>]*> edd00100 ? ldfe f0, \[r0\]
0+14 <[^>]*> ec700101 ? ldfe f0, \[r0\], -#4
0+18 <[^>]*> edd08100 ? ldfp f0, \[r0\]
0+1c <[^>]*> ec708101 ? ldfp f0, \[r0\], -#4
0+20 <[^>]*> ed800100 ? stfs f0, \[r0\]
0+24 <[^>]*> ec200101 ? stfs f0, \[r0\], -#4
0+28 <[^>]*> ed808100 ? stfd f0, \[r0\]
0+2c <[^>]*> ec208101 ? stfd f0, \[r0\], -#4
0+30 <[^>]*> edc00100 ? stfe f0, \[r0\]
0+34 <[^>]*> ec600101 ? stfe f0, \[r0\], -#4
0+38 <[^>]*> edc08100 ? stfp f0, \[r0\]
0+3c <[^>]*> ec608101 ? stfp f0, \[r0\], -#4
0+40 <[^>]*> ed900200 ? lfm f0, 4, \[r0\]
0+44 <[^>]*> ed900200 ? lfm f0, 4, \[r0\]
0+48 <[^>]*> ed10020c ? lfm f0, 4, \[r0, -#48\]
0+4c <[^>]*> ed800200 ? sfm f0, 4, \[r0\]
0+50 <[^>]*> ed00020c ? sfm f0, 4, \[r0, -#48\]
0+54 <[^>]*> ed800200 ? sfm f0, 4, \[r0\]

View File

@ -0,0 +1,26 @@
.text
.globl F
F:
ldfs f0, [r0]
ldfs f0, [r0], #-4
ldfd f0, [r0]
ldfd f0, [r0], #-4
ldfe f0, [r0]
ldfe f0, [r0], #-4
ldfp f0, [r0]
ldfp f0, [r0], #-4
stfs f0, [r0]
stfs f0, [r0], #-4
stfd f0, [r0]
stfd f0, [r0], #-4
stfe f0, [r0]
stfe f0, [r0], #-4
stfp f0, [r0]
stfp f0, [r0], #-4
lfm f0, 4, [r0]
lfmfd f0, 4, [r0]
lfmea f0, 4, [r0]
sfm f0, 4, [r0]
sfmfd f0, 4, [r0]
sfmea f0, 4, [r0]

View File

@ -0,0 +1,202 @@
#objdump: -dr --prefix-addresses --show-raw-insn
#name: FPA Monadic instructions
#as: -mfpe-old
# Test FPA Monadic instructions
# This test should work for both big and little-endian assembly.
.*: *file format .*arm.*
Disassembly of section .text:
0+000 <[^>]*> ee008100 ? mvfs f0, f0
0+004 <[^>]*> ee008120 ? mvfsp f0, f0
0+008 <[^>]*> ee008140 ? mvfsm f0, f0
0+00c <[^>]*> ee008160 ? mvfsz f0, f0
0+010 <[^>]*> ee008180 ? mvfd f0, f0
0+014 <[^>]*> ee0081a0 ? mvfdp f0, f0
0+018 <[^>]*> ee0081c0 ? mvfdm f0, f0
0+01c <[^>]*> ee0081e0 ? mvfdz f0, f0
0+020 <[^>]*> ee088100 ? mvfe f0, f0
0+024 <[^>]*> ee088120 ? mvfep f0, f0
0+028 <[^>]*> ee088140 ? mvfem f0, f0
0+02c <[^>]*> ee088160 ? mvfez f0, f0
0+030 <[^>]*> ee108100 ? mnfs f0, f0
0+034 <[^>]*> ee108120 ? mnfsp f0, f0
0+038 <[^>]*> ee108140 ? mnfsm f0, f0
0+03c <[^>]*> ee108160 ? mnfsz f0, f0
0+040 <[^>]*> ee108180 ? mnfd f0, f0
0+044 <[^>]*> ee1081a0 ? mnfdp f0, f0
0+048 <[^>]*> ee1081c0 ? mnfdm f0, f0
0+04c <[^>]*> ee1081e0 ? mnfdz f0, f0
0+050 <[^>]*> ee188100 ? mnfe f0, f0
0+054 <[^>]*> ee188120 ? mnfep f0, f0
0+058 <[^>]*> ee188140 ? mnfem f0, f0
0+05c <[^>]*> ee188160 ? mnfez f0, f0
0+060 <[^>]*> ee208100 ? abss f0, f0
0+064 <[^>]*> ee208120 ? abssp f0, f0
0+068 <[^>]*> ee208140 ? abssm f0, f0
0+06c <[^>]*> ee208160 ? abssz f0, f0
0+070 <[^>]*> ee208180 ? absd f0, f0
0+074 <[^>]*> ee2081a0 ? absdp f0, f0
0+078 <[^>]*> ee2081c0 ? absdm f0, f0
0+07c <[^>]*> ee2081e0 ? absdz f0, f0
0+080 <[^>]*> ee288100 ? abse f0, f0
0+084 <[^>]*> ee288120 ? absep f0, f0
0+088 <[^>]*> ee288140 ? absem f0, f0
0+08c <[^>]*> ee288160 ? absez f0, f0
0+090 <[^>]*> ee308100 ? rnds f0, f0
0+094 <[^>]*> ee308120 ? rndsp f0, f0
0+098 <[^>]*> ee308140 ? rndsm f0, f0
0+09c <[^>]*> ee308160 ? rndsz f0, f0
0+0a0 <[^>]*> ee308180 ? rndd f0, f0
0+0a4 <[^>]*> ee3081a0 ? rnddp f0, f0
0+0a8 <[^>]*> ee3081c0 ? rnddm f0, f0
0+0ac <[^>]*> ee3081e0 ? rnddz f0, f0
0+0b0 <[^>]*> ee388100 ? rnde f0, f0
0+0b4 <[^>]*> ee388120 ? rndep f0, f0
0+0b8 <[^>]*> ee388140 ? rndem f0, f0
0+0bc <[^>]*> ee388160 ? rndez f0, f0
0+0c0 <[^>]*> ee408100 ? sqts f0, f0
0+0c4 <[^>]*> ee408120 ? sqtsp f0, f0
0+0c8 <[^>]*> ee408140 ? sqtsm f0, f0
0+0cc <[^>]*> ee408160 ? sqtsz f0, f0
0+0d0 <[^>]*> ee408180 ? sqtd f0, f0
0+0d4 <[^>]*> ee4081a0 ? sqtdp f0, f0
0+0d8 <[^>]*> ee4081c0 ? sqtdm f0, f0
0+0dc <[^>]*> ee4081e0 ? sqtdz f0, f0
0+0e0 <[^>]*> ee488100 ? sqte f0, f0
0+0e4 <[^>]*> ee488120 ? sqtep f0, f0
0+0e8 <[^>]*> ee488140 ? sqtem f0, f0
0+0ec <[^>]*> ee488160 ? sqtez f0, f0
0+0f0 <[^>]*> ee508100 ? logs f0, f0
0+0f4 <[^>]*> ee508120 ? logsp f0, f0
0+0f8 <[^>]*> ee508140 ? logsm f0, f0
0+0fc <[^>]*> ee508160 ? logsz f0, f0
0+100 <[^>]*> ee508180 ? logd f0, f0
0+104 <[^>]*> ee5081a0 ? logdp f0, f0
0+108 <[^>]*> ee5081c0 ? logdm f0, f0
0+10c <[^>]*> ee5081e0 ? logdz f0, f0
0+110 <[^>]*> ee588100 ? loge f0, f0
0+114 <[^>]*> ee588120 ? logep f0, f0
0+118 <[^>]*> ee588140 ? logem f0, f0
0+11c <[^>]*> ee588160 ? logez f0, f0
0+120 <[^>]*> ee608100 ? lgns f0, f0
0+124 <[^>]*> ee608120 ? lgnsp f0, f0
0+128 <[^>]*> ee608140 ? lgnsm f0, f0
0+12c <[^>]*> ee608160 ? lgnsz f0, f0
0+130 <[^>]*> ee608180 ? lgnd f0, f0
0+134 <[^>]*> ee6081a0 ? lgndp f0, f0
0+138 <[^>]*> ee6081c0 ? lgndm f0, f0
0+13c <[^>]*> ee6081e0 ? lgndz f0, f0
0+140 <[^>]*> ee688100 ? lgne f0, f0
0+144 <[^>]*> ee688120 ? lgnep f0, f0
0+148 <[^>]*> ee688140 ? lgnem f0, f0
0+14c <[^>]*> ee688160 ? lgnez f0, f0
0+150 <[^>]*> ee708100 ? exps f0, f0
0+154 <[^>]*> ee708120 ? expsp f0, f0
0+158 <[^>]*> ee708140 ? expsm f0, f0
0+15c <[^>]*> ee708160 ? expsz f0, f0
0+160 <[^>]*> ee708180 ? expd f0, f0
0+164 <[^>]*> ee7081a0 ? expdp f0, f0
0+168 <[^>]*> ee7081c0 ? expdm f0, f0
0+16c <[^>]*> ee7081e0 ? expdz f0, f0
0+170 <[^>]*> ee788100 ? expe f0, f0
0+174 <[^>]*> ee788120 ? expep f0, f0
0+178 <[^>]*> ee788140 ? expem f0, f0
0+17c <[^>]*> ee7081e0 ? expdz f0, f0
0+180 <[^>]*> ee808100 ? sins f0, f0
0+184 <[^>]*> ee808120 ? sinsp f0, f0
0+188 <[^>]*> ee808140 ? sinsm f0, f0
0+18c <[^>]*> ee808160 ? sinsz f0, f0
0+190 <[^>]*> ee808180 ? sind f0, f0
0+194 <[^>]*> ee8081a0 ? sindp f0, f0
0+198 <[^>]*> ee8081c0 ? sindm f0, f0
0+19c <[^>]*> ee8081e0 ? sindz f0, f0
0+1a0 <[^>]*> ee888100 ? sine f0, f0
0+1a4 <[^>]*> ee888120 ? sinep f0, f0
0+1a8 <[^>]*> ee888140 ? sinem f0, f0
0+1ac <[^>]*> ee888160 ? sinez f0, f0
0+1b0 <[^>]*> ee908100 ? coss f0, f0
0+1b4 <[^>]*> ee908120 ? cossp f0, f0
0+1b8 <[^>]*> ee908140 ? cossm f0, f0
0+1bc <[^>]*> ee908160 ? cossz f0, f0
0+1c0 <[^>]*> ee908180 ? cosd f0, f0
0+1c4 <[^>]*> ee9081a0 ? cosdp f0, f0
0+1c8 <[^>]*> ee9081c0 ? cosdm f0, f0
0+1cc <[^>]*> ee9081e0 ? cosdz f0, f0
0+1d0 <[^>]*> ee988100 ? cose f0, f0
0+1d4 <[^>]*> ee988120 ? cosep f0, f0
0+1d8 <[^>]*> ee988140 ? cosem f0, f0
0+1dc <[^>]*> ee988160 ? cosez f0, f0
0+1e0 <[^>]*> eea08100 ? tans f0, f0
0+1e4 <[^>]*> eea08120 ? tansp f0, f0
0+1e8 <[^>]*> eea08140 ? tansm f0, f0
0+1ec <[^>]*> eea08160 ? tansz f0, f0
0+1f0 <[^>]*> eea08180 ? tand f0, f0
0+1f4 <[^>]*> eea081a0 ? tandp f0, f0
0+1f8 <[^>]*> eea081c0 ? tandm f0, f0
0+1fc <[^>]*> eea081e0 ? tandz f0, f0
0+200 <[^>]*> eea88100 ? tane f0, f0
0+204 <[^>]*> eea88120 ? tanep f0, f0
0+208 <[^>]*> eea88140 ? tanem f0, f0
0+20c <[^>]*> eea88160 ? tanez f0, f0
0+210 <[^>]*> eeb08100 ? asns f0, f0
0+214 <[^>]*> eeb08120 ? asnsp f0, f0
0+218 <[^>]*> eeb08140 ? asnsm f0, f0
0+21c <[^>]*> eeb08160 ? asnsz f0, f0
0+220 <[^>]*> eeb08180 ? asnd f0, f0
0+224 <[^>]*> eeb081a0 ? asndp f0, f0
0+228 <[^>]*> eeb081c0 ? asndm f0, f0
0+22c <[^>]*> eeb081e0 ? asndz f0, f0
0+230 <[^>]*> eeb88100 ? asne f0, f0
0+234 <[^>]*> eeb88120 ? asnep f0, f0
0+238 <[^>]*> eeb88140 ? asnem f0, f0
0+23c <[^>]*> eeb88160 ? asnez f0, f0
0+240 <[^>]*> eec08100 ? acss f0, f0
0+244 <[^>]*> eec08120 ? acssp f0, f0
0+248 <[^>]*> eec08140 ? acssm f0, f0
0+24c <[^>]*> eec08160 ? acssz f0, f0
0+250 <[^>]*> eec08180 ? acsd f0, f0
0+254 <[^>]*> eec081a0 ? acsdp f0, f0
0+258 <[^>]*> eec081c0 ? acsdm f0, f0
0+25c <[^>]*> eec081e0 ? acsdz f0, f0
0+260 <[^>]*> eec88100 ? acse f0, f0
0+264 <[^>]*> eec88120 ? acsep f0, f0
0+268 <[^>]*> eec88140 ? acsem f0, f0
0+26c <[^>]*> eec88160 ? acsez f0, f0
0+270 <[^>]*> eed08100 ? atns f0, f0
0+274 <[^>]*> eed08120 ? atnsp f0, f0
0+278 <[^>]*> eed08140 ? atnsm f0, f0
0+27c <[^>]*> eed08160 ? atnsz f0, f0
0+280 <[^>]*> eed08180 ? atnd f0, f0
0+284 <[^>]*> eed081a0 ? atndp f0, f0
0+288 <[^>]*> eed081c0 ? atndm f0, f0
0+28c <[^>]*> eed081e0 ? atndz f0, f0
0+290 <[^>]*> eed88100 ? atne f0, f0
0+294 <[^>]*> eed88120 ? atnep f0, f0
0+298 <[^>]*> eed88140 ? atnem f0, f0
0+29c <[^>]*> eed88160 ? atnez f0, f0
0+2a0 <[^>]*> eee08100 ? urds f0, f0
0+2a4 <[^>]*> eee08120 ? urdsp f0, f0
0+2a8 <[^>]*> eee08140 ? urdsm f0, f0
0+2ac <[^>]*> eee08160 ? urdsz f0, f0
0+2b0 <[^>]*> eee08180 ? urdd f0, f0
0+2b4 <[^>]*> eee081a0 ? urddp f0, f0
0+2b8 <[^>]*> eee081c0 ? urddm f0, f0
0+2bc <[^>]*> eee081e0 ? urddz f0, f0
0+2c0 <[^>]*> eee88100 ? urde f0, f0
0+2c4 <[^>]*> eee88120 ? urdep f0, f0
0+2c8 <[^>]*> eee88140 ? urdem f0, f0
0+2cc <[^>]*> eee88160 ? urdez f0, f0
0+2d0 <[^>]*> eef08100 ? nrms f0, f0
0+2d4 <[^>]*> eef08120 ? nrmsp f0, f0
0+2d8 <[^>]*> eef08140 ? nrmsm f0, f0
0+2dc <[^>]*> eef08160 ? nrmsz f0, f0
0+2e0 <[^>]*> eef08180 ? nrmd f0, f0
0+2e4 <[^>]*> eef081a0 ? nrmdp f0, f0
0+2e8 <[^>]*> eef081c0 ? nrmdm f0, f0
0+2ec <[^>]*> eef081e0 ? nrmdz f0, f0
0+2f0 <[^>]*> eef88100 ? nrme f0, f0
0+2f4 <[^>]*> eef88120 ? nrmep f0, f0
0+2f8 <[^>]*> eef88140 ? nrmem f0, f0
0+2fc <[^>]*> eef88160 ? nrmez f0, f0

View File

@ -0,0 +1,210 @@
.text
.globl F
F:
mvfs f0, f0
mvfsp f0, f0
mvfsm f0, f0
mvfsz f0, f0
mvfd f0, f0
mvfdp f0, f0
mvfdm f0, f0
mvfdz f0, f0
mvfe f0, f0
mvfep f0, f0
mvfem f0, f0
mvfez f0, f0
mnfs f0, f0
mnfsp f0, f0
mnfsm f0, f0
mnfsz f0, f0
mnfd f0, f0
mnfdp f0, f0
mnfdm f0, f0
mnfdz f0, f0
mnfe f0, f0
mnfep f0, f0
mnfem f0, f0
mnfez f0, f0
abss f0, f0
abssp f0, f0
abssm f0, f0
abssz f0, f0
absd f0, f0
absdp f0, f0
absdm f0, f0
absdz f0, f0
abse f0, f0
absep f0, f0
absem f0, f0
absez f0, f0
rnds f0, f0
rndsp f0, f0
rndsm f0, f0
rndsz f0, f0
rndd f0, f0
rnddp f0, f0
rnddm f0, f0
rnddz f0, f0
rnde f0, f0
rndep f0, f0
rndem f0, f0
rndez f0, f0
sqts f0, f0
sqtsp f0, f0
sqtsm f0, f0
sqtsz f0, f0
sqtd f0, f0
sqtdp f0, f0
sqtdm f0, f0
sqtdz f0, f0
sqte f0, f0
sqtep f0, f0
sqtem f0, f0
sqtez f0, f0
logs f0, f0
logsp f0, f0
logsm f0, f0
logsz f0, f0
logd f0, f0
logdp f0, f0
logdm f0, f0
logdz f0, f0
loge f0, f0
logep f0, f0
logem f0, f0
logez f0, f0
lgns f0, f0
lgnsp f0, f0
lgnsm f0, f0
lgnsz f0, f0
lgnd f0, f0
lgndp f0, f0
lgndm f0, f0
lgndz f0, f0
lgne f0, f0
lgnep f0, f0
lgnem f0, f0
lgnez f0, f0
exps f0, f0
expsp f0, f0
expsm f0, f0
expsz f0, f0
expd f0, f0
expdp f0, f0
expdm f0, f0
expdz f0, f0
expe f0, f0
expep f0, f0
expem f0, f0
expdz f0, f0
sins f0, f0
sinsp f0, f0
sinsm f0, f0
sinsz f0, f0
sind f0, f0
sindp f0, f0
sindm f0, f0
sindz f0, f0
sine f0, f0
sinep f0, f0
sinem f0, f0
sinez f0, f0
coss f0, f0
cossp f0, f0
cossm f0, f0
cossz f0, f0
cosd f0, f0
cosdp f0, f0
cosdm f0, f0
cosdz f0, f0
cose f0, f0
cosep f0, f0
cosem f0, f0
cosez f0, f0
tans f0, f0
tansp f0, f0
tansm f0, f0
tansz f0, f0
tand f0, f0
tandp f0, f0
tandm f0, f0
tandz f0, f0
tane f0, f0
tanep f0, f0
tanem f0, f0
tanez f0, f0
asns f0, f0
asnsp f0, f0
asnsm f0, f0
asnsz f0, f0
asnd f0, f0
asndp f0, f0
asndm f0, f0
asndz f0, f0
asne f0, f0
asnep f0, f0
asnem f0, f0
asnez f0, f0
acss f0, f0
acssp f0, f0
acssm f0, f0
acssz f0, f0
acsd f0, f0
acsdp f0, f0
acsdm f0, f0
acsdz f0, f0
acse f0, f0
acsep f0, f0
acsem f0, f0
acsez f0, f0
atns f0, f0
atnsp f0, f0
atnsm f0, f0
atnsz f0, f0
atnd f0, f0
atndp f0, f0
atndm f0, f0
atndz f0, f0
atne f0, f0
atnep f0, f0
atnem f0, f0
atnez f0, f0
urds f0, f0
urdsp f0, f0
urdsm f0, f0
urdsz f0, f0
urdd f0, f0
urddp f0, f0
urddm f0, f0
urddz f0, f0
urde f0, f0
urdep f0, f0
urdem f0, f0
urdez f0, f0
nrms f0, f0
nrmsp f0, f0
nrmsm f0, f0
nrmsz f0, f0
nrmd f0, f0
nrmdp f0, f0
nrmdm f0, f0
nrmdz f0, f0
nrme f0, f0
nrmep f0, f0
nrmem f0, f0
nrmez f0, f0

View File

@ -1,4 +1,4 @@
#objdump: -s
#objdump: -s --section=.text
#as: -EL
#name: arm little-endian fpconst