summaryrefslogtreecommitdiffstats
path: root/binutils-2.25/gas/testsuite/gas/epiphany/sample.s
diff options
context:
space:
mode:
Diffstat (limited to 'binutils-2.25/gas/testsuite/gas/epiphany/sample.s')
-rwxr-xr-xbinutils-2.25/gas/testsuite/gas/epiphany/sample.s123
1 files changed, 123 insertions, 0 deletions
diff --git a/binutils-2.25/gas/testsuite/gas/epiphany/sample.s b/binutils-2.25/gas/testsuite/gas/epiphany/sample.s
new file mode 100755
index 00000000..91f39406
--- /dev/null
+++ b/binutils-2.25/gas/testsuite/gas/epiphany/sample.s
@@ -0,0 +1,123 @@
+ .data
+foodata: .hword 42
+ .text
+footext:
+ .text
+
+ .macro test nm:req, args:vararg
+\nm: \nm \args
+ .global \nm
+ .endm
+
+;;; Basic Instruction Tests
+1: ; All branches
+ test beq,1b
+ test bne,1b
+ test bgtu,1b
+ test bgteu,1b
+ test blteu,1b
+ test bltu,1b
+ test bgt,1b
+ test bgte,1b
+ test blt,1b
+ test blte,1b
+
+ test bbeq,1b
+ test bbne,1b
+ test bblt,1b
+ test b,1b
+ test bl,1b
+
+;;; jumps
+ test jr,r1
+ jr r31
+
+ test jalr,r1
+ jalr r31
+
+
+ .macro test3i nm:req
+ test \nm,r1,r2,r3
+ \nm r32,r33,r34
+ \nm r1,r2,#3
+ \nm r11,r2,#16
+ .endm
+ test3i add
+ test3i sub
+ test3i asr
+ test3i lsr
+ test3i lsl
+
+ .macro test3 nm:req
+ test \nm,r1,r2,r3
+ \nm r11,r12,r13
+ .endm
+
+ test3 orr
+ test3 and
+ test3 eor
+
+ .macro testmem nm:req
+ \nm r0,[r1,#3]
+ \nm r10,[r1,#255]
+ \nm r0,[r1,r2]
+ \nm r0,[r1,r11]
+ \nm r0,[r3],r2
+ \nm r10,[r12],r13
+ .endm
+
+ testmem ldrb
+ testmem ldrh
+ testmem ldr
+ testmem ldrd
+
+
+ testmem strb
+ testmem strh
+ testmem str
+ testmem strd
+
+ test mov,r6,#255
+ mov r31,#65535
+ mov r0,#4098
+
+ .macro testmov cond:req
+ mov\cond r1,r2
+ mov\cond r11,r12
+ .endm
+
+ testmov eq
+ testmov ne
+ testmov gtu
+ testmov gteu
+ testmov lteu
+ testmov ltu
+ testmov gt
+ testmov gte
+ testmov lt
+ testmov lte
+ testmov beq
+ testmov bne
+ testmov blt
+ testmov blte
+ mov r1,r2
+ mov r11,r12
+
+ test nop
+ test idle
+ test bkpt
+
+ test3 fadd
+ test3 fsub
+ test3 fmul
+ test3 fmadd
+ test3 fmsub
+
+ movts config,r1
+ movts status,r31
+
+ movfs r1,imask
+ movfs r31,pc
+
+ test trap,#0 ; write syscall for simulator.
+ rti ; dummy instruction