1 1.1 christos # arm testcase for add 2 1.1 christos # mach: all 3 1.1 christos 4 1.1 christos # ??? Unfinished, more tests needed. 5 1.1 christos 6 1.1 christos .include "testutils.inc" 7 1.1 christos 8 1.1 christos start 9 1.1 christos 10 1.1 christos # add$cond${set-cc?} $rd,$rn,$imm12 11 1.1 christos 12 1.1 christos .global add_imm 13 1.1 christos add_imm: 14 1.1 christos mvi_h_gr r4,1 15 1.1 christos mvi_h_cnvz 0,0,0,0 16 1.1 christos add r5,r4,#1 17 1.1 christos test_h_cnvz 0,0,0,0 18 1.1 christos test_h_gr r5,2 19 1.1 christos 20 1.1 christos # add$cond${set-cc?} $rd,$rn,$rm,${operand2-shifttype} ${operand2-shiftimm} 21 1.1 christos 22 1.1 christos .global add_reg_imm_shift 23 1.1 christos add_reg_imm_shift: 24 1.1 christos mvi_h_gr r4,1 25 1.1 christos mvi_h_gr r5,1 26 1.1 christos mvi_h_cnvz 0,0,0,0 27 1.1 christos add r6,r4,r5,lsl #2 28 1.1 christos test_h_cnvz 0,0,0,0 29 1.1 christos test_h_gr r6,5 30 1.1 christos 31 1.1 christos # add$cond${set-cc?} $rd,$rn,$rm,${operand2-shifttype} ${operand2-shiftreg} 32 1.1 christos 33 1.1 christos .global add_reg_reg_shift 34 1.1 christos add_reg_reg_shift: 35 1.1 christos mvi_h_gr r4,1 36 1.1 christos mvi_h_gr r5,1 37 1.1 christos mvi_h_gr r6,2 38 1.1 christos mvi_h_cnvz 0,0,0,0 39 1.1 christos add r7,r4,r5,lsl r6 40 1.1 christos test_h_cnvz 0,0,0,0 41 1.1 christos test_h_gr r7,5 42 1.1 christos 43 1.1 christos pass 44