# arm testcase for b$cond $offset24 # mach: all # ??? Still need to test edge cases. .include "testutils.inc" start .global b b: # b foo b balways1 fail balways1: # beq foo mvi_h_gr r4,4 mvi_h_gr r5,4 cmp r4,r5 beq beq1 fail beq1: mvi_h_gr r5,5 cmp r4,r5 beq beq2 b beq3 beq2: fail beq3: # bne foo mvi_h_gr r4,4 mvi_h_gr r5,5 cmp r4,r5 bne bne1 fail bne1: mvi_h_gr r5,4 cmp r4,r5 bne bne2 b bne3 bne2: fail bne3: # bcs foo mvi_h_cnvz 1,0,0,0 bcs bcs1 fail bcs1: mvi_h_cnvz 0,0,0,0 bcs bcs2 b bcs3 bcs2: fail bcs3: # bcc foo mvi_h_cnvz 0,0,0,0 bcc bcc1 fail bcc1: mvi_h_cnvz 1,0,0,0 bcc bcc2 b bcc3 bcc2: fail bcc3: # bmi foo mvi_h_cnvz 0,1,0,0 bmi bmi1 fail bmi1: mvi_h_cnvz 0,0,0,0 bmi bmi2 b bmi3 bmi2: fail bmi3: # bpl foo mvi_h_cnvz 0,0,0,0 bpl bpl1 fail bpl1: mvi_h_cnvz 0,1,0,0 bpl bpl2 b bpl3 bpl2: fail bpl3: # bvs foo mvi_h_cnvz 0,0,1,0 bvs bvs1 fail bvs1: mvi_h_cnvz 0,0,0,0 bvs bvs2 b bvs3 bvs2: fail bvs3: # bvc foo mvi_h_cnvz 0,0,0,0 bvc bvc1 fail bvc1: mvi_h_cnvz 0,0,1,0 bvc bvc2 b bvc3 bvc2: fail bvc3: # bhi foo mvi_h_gr r4,5 mvi_h_gr r5,4 cmp r4,r5 bhi bhi1 fail bhi1: mvi_h_gr r5,5 cmp r4,r5 bhi bhi2 b bhi3 bhi2: fail bhi3: mvi_h_gr r5,6 cmp r4,r5 bhi bhi4 b bhi5 bhi4: fail bhi5: # bls foo mvi_h_gr r4,4 mvi_h_gr r5,5 cmp r4,r5 bls bls1 fail bls1: mvi_h_gr r5,4 cmp r4,r5 bls bls2 fail bls2: mvi_h_gr r5,3 cmp r4,r5 bls bls3 b bls4 bls3: fail bls4: # bge foo mvi_h_gr r4,4 mvi_h_gr r5,4 cmp r4,r5 bge bge1 fail bge1: mvi_h_gr r5,3 cmp r4,r5 bge bge2 fail bge2: mvi_h_gr r5,5 cmp r4,r5 bge bge3 b bge4 bge3: fail bge4: # blt foo mvi_h_gr r4,4 mvi_h_gr r5,5 cmp r4,r5 blt blt1 fail blt1: mvi_h_gr r5,4 cmp r4,r5 blt blt2 b blt3 blt2: fail blt3: mvi_h_gr r5,3 cmp r4,r5 blt blt4 b blt5 blt4: fail blt5: # bgt foo mvi_h_gr r4,4 mvi_h_gr r5,3 cmp r4,r5 bgt bgt1 fail bgt1: mvi_h_gr r5,4 cmp r4,r5 bgt bgt2 b bgt3 bgt2: fail bgt3: mvi_h_gr r5,5 cmp r4,r5 bgt bgt4 b bgt5 bgt4: fail bgt5: # ble foo mvi_h_gr r4,4 mvi_h_gr r5,4 cmp r4,r5 ble ble1 fail ble1: mvi_h_gr r5,5 cmp r4,r5 ble ble2 fail ble2: mvi_h_gr r5,3 cmp r4,r5 ble ble3 b ble4 ble3: fail ble4: pass