From 252b5132c753830d5fd56823373aed85f2a0db63 Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Mon, 3 May 1999 07:29:11 +0000 Subject: 19990502 sourceware import --- gas/testsuite/gas/arm/inst.s | 189 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 189 insertions(+) create mode 100644 gas/testsuite/gas/arm/inst.s (limited to 'gas/testsuite/gas/arm/inst.s') diff --git a/gas/testsuite/gas/arm/inst.s b/gas/testsuite/gas/arm/inst.s new file mode 100644 index 00000000000..ff092c9256b --- /dev/null +++ b/gas/testsuite/gas/arm/inst.s @@ -0,0 +1,189 @@ +@ Test file for ARM/GAS -- basic instructions + +.text +.align + mov r0, #0 + mov r1, r2 + mov r3, r4, lsl #3 + mov r5, r6, lsr r7 + mov r8, r9, asr r10 + mov r11, r12, asl r13 + mov r14, r15, rrx + moval r1, r2 + moveq r2, r3 + movne r4, r5 + movlt r6, r7 + movge r8, r9 + movle r10, r11 + movgt r12, r13 + movcc r1, r2 + movcs r1, r3 + movmi r3, r6 + movpl r7, r9 + movvs r1, r8 + movvc r9, r1, lsr #31 + movhi r8, r15 + movls r15, r14 + movhs r9, r8 + movul r1, r3 + movs r0, r8 + movuls r0, r7 + + add r0, r1, #10 + add r2, r3, r4 + add r5, r6, r7, asl #5 + add r1, r2, r3, lsl r1 + + and r0, r1, #10 + and r2, r3, r4 + and r5, r6, r7, asl #5 + and r1, r2, r3, lsl r1 + + eor r0, r1, #10 + eor r2, r3, r4 + eor r5, r6, r7, asl #5 + eor r1, r2, r3, lsl r1 + + sub r0, r1, #10 + sub r2, r3, r4 + sub r5, r6, r7, asl #5 + sub r1, r2, r3, lsl r1 + + adc r0, r1, #10 + adc r2, r3, r4 + adc r5, r6, r7, asl #5 + adc r1, r2, r3, lsl r1 + + sbc r0, r1, #10 + sbc r2, r3, r4 + sbc r5, r6, r7, asl #5 + sbc r1, r2, r3, lsl r1 + + rsb r0, r1, #10 + rsb r2, r3, r4 + rsb r5, r6, r7, asl #5 + rsb r1, r2, r3, lsl r1 + + rsc r0, r1, #10 + rsc r2, r3, r4 + rsc r5, r6, r7, asl #5 + rsc r1, r2, r3, lsl r1 + + orr r0, r1, #10 + orr r2, r3, r4 + orr r5, r6, r7, asl #5 + orr r1, r2, r3, lsl r1 + + bic r0, r1, #10 + bic r2, r3, r4 + bic r5, r6, r7, asl #5 + bic r1, r2, r3, lsl r1 + + mvn r0, #10 + mvn r2, r4 + mvn r5, r7, asl #5 + mvn r1, r3, lsl r1 + + tst r0, #10 + tst r2, r4 + tst r5, r7, asl #5 + tst r1, r3, lsl r1 + + teq r0, #10 + teq r2, r4 + teq r5, r7, asl #5 + teq r1, r3, lsl r1 + + cmp r0, #10 + cmp r2, r4 + cmp r5, r7, asl #5 + cmp r1, r3, lsl r1 + + cmn r0, #10 + cmn r2, r4 + cmn r5, r7, asl #5 + cmn r1, r3, lsl r1 + + teqp r0, #10 + teqp r2, r4 + teqp r5, r7, asl #5 + teqp r1, r3, lsl r1 + + cmnp r0, #10 + cmnp r2, r4 + cmnp r5, r7, asl #5 + cmnp r1, r3, lsl r1 + + cmpp r0, #10 + cmpp r2, r4 + cmpp r5, r7, asl #5 + cmpp r1, r3, lsl r1 + + tstp r0, #10 + tstp r2, r4 + tstp r5, r7, asl #5 + tstp r1, r3, lsl r1 + + mul r0, r1, r2 + muls r1, r2, r3 + mulne r0, r1, r0 + mullss r9, r8, r7 + + mla r1, r9, r10, r11 + mlas r3, r4, r9, r12 + mlalt r9, r8, r7, r13 + mlages r4, r1, r3, r14 + + ldr r0, [r1] + ldr r1, [r1, r2] + ldr r2, [r3, r4]! + ldr r2, [r2, #32] + ldr r2, [r3, r4, lsr #8] + ldreq r4, [r5, r4, asl #9]! + ldrne r4, [r5], #6 + ldrt r1, [r2], r3 + ldr r2, [r4], r5, lsr #8 +foo: + ldr r0, foo + ldrb r3, [r4] + ldrnebt r5, [r8] + + str r0, [r1] + str r1, [r1, r2] + str r3, [r3, r4]! + str r2, [r2, #32] + str r2, [r3, r4, lsr #8] + streq r4, [r5, r4, asl #9]! + strne r4, [r5], #6 + str r1, [r2], r3 + strt r2, [r4], r5, lsr #8 + str r1, bar +bar: + stralb r1, [r7] + strbt r2, [r0] + + ldmia r0, {r1} + ldmeqib r2, {r3, r4, r5} + ldmalda r3, {r0-r15}^ + ldmdb r11!, {r0-r8, r10} + ldmed r1, {r0, r1, r2}|0xf0 + ldmfd r2, {r3, r4}+{r5, r6, r7, r8} + ldmea r3, 3 + ldmfa r4!, {r8, r9}^ + + stmia r0, {r1} + stmeqib r2, {r3, r4, r5} + stmalda r3, {r0-r15}^ + stmdb r10!, {r0-r8, r10} + stmed r1, {r0, r1, r2} + stmfd r2, {r3, r4} + stmea r3, 3 + stmfa r4!, {r8, r9}^ + + swi 0x123456 + swihs 0x33 + + bl _wombat + blpl bar + b _wibble + ble testerfunc -- cgit v1.2.1