summaryrefslogtreecommitdiff
path: root/gas/testsuite/gas/m68hc11/insns.s
diff options
context:
space:
mode:
Diffstat (limited to 'gas/testsuite/gas/m68hc11/insns.s')
-rw-r--r--gas/testsuite/gas/m68hc11/insns.s60
1 files changed, 60 insertions, 0 deletions
diff --git a/gas/testsuite/gas/m68hc11/insns.s b/gas/testsuite/gas/m68hc11/insns.s
new file mode 100644
index 0000000000..2b2f9716a0
--- /dev/null
+++ b/gas/testsuite/gas/m68hc11/insns.s
@@ -0,0 +1,60 @@
+# Test for correct generation of 68HC11 insns.
+
+ .globl _start
+ .sect .text
+
+_start:
+ lds #stack+1024
+ ldx #1
+Loop:
+ jsr test
+ dex
+ bne Loop
+Stop:
+
+ .byte 0xcd
+ .byte 3
+ bra _start
+
+test:
+ ldd #2
+ jsr test2
+ rts
+
+B_low = 12
+A_low = 44
+D_low = 50
+value = 23
+
+ .globl test2
+test2:
+ ldx value,y
+ std value,x
+ ldd ,x
+ sty ,y
+ stx ,y
+ brclr 6,x,#4,test2
+ brclr 12,x #8 test2
+ ldd *ZD1
+ ldx *ZD1+2
+ clr *ZD2
+ clr *ZD2+1
+ bne .-4
+ beq .+2
+ bclr *ZD1+1, #32
+ brclr *ZD2+2, #40, test2
+ ldy #24+_start-44
+ ldd B_low,y
+ addd A_low,y
+ addd D_low,y
+ subd A_low
+ subd #A_low
+ jmp Stop
+L1:
+ anda #%lo(test2)
+ andb #%hi(test2)
+ rts
+
+ .sect .data
+
+.comm stack, 1024