Home | History | Annotate | Download | only in epiphany
      1  .data
      2 foodata: .hword 42
      3  .text
      4 footext:
      5 	.text
      6 
      7 	.macro test nm:req, args:vararg
      8 \nm:	\nm \args
      9 	.global \nm
     10 	.endm
     11 
     12 ;;; Basic Instruction Tests
     13 1:				; All branches
     14         test beq,1b
     15         test bne,1b
     16         test bgtu,1b
     17 	test bgteu,1b
     18 	test blteu,1b
     19         test bltu,1b
     20 	test bgt,1b
     21 	test bgte,1b
     22 	test blt,1b
     23 	test blte,1b
     24 
     25 	test bbeq,1b
     26 	test bbne,1b
     27 	test bblt,1b
     28 	test b,1b
     29 	test bl,1b
     30 
     31 ;;; jumps
     32 	test jr,r1
     33 	jr	r31
     34 
     35 	test jalr,r1
     36 	jalr r31
     37 
     38 
     39 	.macro test3i nm:req
     40 	test \nm,r1,r2,r3
     41 	\nm	r32,r33,r34
     42 	\nm	r1,r2,#3
     43 	\nm	r11,r2,#16
     44 	.endm
     45 	test3i add
     46 	test3i sub
     47 	test3i asr
     48 	test3i lsr
     49 	test3i lsl
     50 
     51 	.macro test3 nm:req
     52 	test \nm,r1,r2,r3
     53 	\nm	r11,r12,r13
     54 	.endm
     55 
     56 	test3 orr
     57 	test3 and
     58 	test3 eor
     59 
     60 	.macro testmem  nm:req
     61         \nm	r0,[r1,#3]
     62 	\nm	r10,[r1,#255]
     63 	\nm	r0,[r1,r2]
     64 	\nm	r0,[r1,r11]
     65 	\nm	r0,[r3],r2
     66 	\nm	r10,[r12],r13
     67 	.endm
     68 
     69 	testmem ldrb
     70 	testmem ldrh
     71 	testmem ldr
     72 	testmem	ldrd
     73 
     74 
     75 	testmem strb
     76 	testmem strh
     77 	testmem str
     78 	testmem	strd
     79 
     80 	test mov,r6,#255
     81 	mov	r31,#65535
     82 	mov	r0,#4098
     83 
     84 	.macro testmov cond:req
     85 	mov\cond r1,r2
     86 	mov\cond r11,r12
     87 	.endm
     88 
     89 	testmov eq
     90 	testmov	ne
     91 	testmov	gtu
     92 	testmov gteu
     93 	testmov lteu
     94 	testmov ltu
     95 	testmov	gt
     96 	testmov gte
     97 	testmov	lt
     98 	testmov	lte
     99 	testmov beq
    100 	testmov bne
    101 	testmov blt
    102 	testmov blte
    103 	mov	r1,r2
    104 	mov	r11,r12
    105 
    106 	test	nop
    107 	test	idle
    108 	test	bkpt
    109 
    110 	test3	fadd
    111 	test3	fsub
    112 	test3	fmul
    113 	test3	fmadd
    114 	test3	fmsub
    115 
    116 	movts	config,r1
    117 	movts	status,r31
    118 
    119 	movfs	r1,imask
    120 	movfs	r31,pc
    121 
    122 	test trap,#0		; write syscall for simulator.
    123         rti     		; dummy instruction
    124