TESTINST3("sxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182899,
r0, r1, r2, 0);
+ printf("------------ UXTAB ------------\n");
+ TESTINST3("uxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182819,
+ r0, r1, r2, 0);
+ TESTINST3("uxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182819,
+ r0, r1, r2, 0);
+ TESTINST3("uxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182819,
+ r0, r1, r2, 0);
+ TESTINST3("uxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182819,
+ r0, r1, r2, 0);
+
+ TESTINST3("uxtab r0, r1, r2, ROR #24", 0x31415927, 0x27182899,
+ r0, r1, r2, 0);
+ TESTINST3("uxtab r0, r1, r2, ROR #16", 0x31415927, 0x27182899,
+ r0, r1, r2, 0);
+ TESTINST3("uxtab r0, r1, r2, ROR #8", 0x31415927, 0x27182899,
+ r0, r1, r2, 0);
+ TESTINST3("uxtab r0, r1, r2, ROR #0", 0x31415927, 0x27182899,
+ r0, r1, r2, 0);
+
+ printf("------------ SXTAH ------------\n");
+ TESTINST3("sxtah r0, r1, r2, ROR #24", 0x31415927, 0x27182819,
+ r0, r1, r2, 0);
+ TESTINST3("sxtah r0, r1, r2, ROR #16", 0x31415927, 0x27182819,
+ r0, r1, r2, 0);
+ TESTINST3("sxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27182819,
+ r0, r1, r2, 0);
+ TESTINST3("sxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27182819,
+ r0, r1, r2, 0);
+
+ TESTINST3("sxtah r0, r1, r2, ROR #24", 0x31415927, 0x27189819,
+ r0, r1, r2, 0);
+ TESTINST3("sxtah r0, r1, r2, ROR #16", 0x31415927, 0x27189819,
+ r0, r1, r2, 0);
+ TESTINST3("sxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27189819,
+ r0, r1, r2, 0);
+ TESTINST3("sxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27189819,
+ r0, r1, r2, 0);
+
printf("------------ UXTAH ------------\n");
TESTINST3("uxtah r0, r1, r2, ROR #24", 0x31415927, 0x27182819,
r0, r1, r2, 0);
TESTINST3("uxtah r0, r1, r2, ROR #16", 0x31415927, 0x27182819,
r0, r1, r2, 0);
- TESTINST3("uxtah r0, r1, r2, ROR #8", 0x31415927, 0x27182819,
+ TESTINST3("uxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27182819,
r0, r1, r2, 0);
- TESTINST3("uxtah r0, r1, r2, ROR #0", 0x31415927, 0x27182819,
+ TESTINST3("uxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27182819,
r0, r1, r2, 0);
- TESTINST3("uxtah r0, r1, r2, ROR #24", 0x31415927, 0x27182899,
+ TESTINST3("uxtah r0, r1, r2, ROR #24", 0x31415927, 0x27189819,
r0, r1, r2, 0);
- TESTINST3("uxtah r0, r1, r2, ROR #16", 0x31415927, 0x27182899,
+ TESTINST3("uxtah r0, r1, r2, ROR #16", 0x31415927, 0x27189819,
r0, r1, r2, 0);
- TESTINST3("uxtah r0, r1, r2, ROR #8", 0x31415927, 0x27182899,
+ TESTINST3("uxtah r0, r1, r2, ROR #8 ", 0x31415927, 0x27189819,
r0, r1, r2, 0);
- TESTINST3("uxtah r0, r1, r2, ROR #0", 0x31415927, 0x27182899,
+ TESTINST3("uxtah r0, r1, r2, ROR #0 ", 0x31415927, 0x27189819,
r0, r1, r2, 0);
printf("------------ PLD/PLDW (begin) ------------\n");
sxtab r0, r1, r2, ROR #16 :: rd 0x3141593f rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
sxtab r0, r1, r2, ROR #8 :: rd 0x3141594f rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
sxtab r0, r1, r2, ROR #0 :: rd 0x314158c0 rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
+------------ UXTAB ------------
+uxtab r0, r1, r2, ROR #24 :: rd 0x3141594e rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+uxtab r0, r1, r2, ROR #16 :: rd 0x3141593f rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+uxtab r0, r1, r2, ROR #8 :: rd 0x3141594f rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+uxtab r0, r1, r2, ROR #0 :: rd 0x31415940 rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+uxtab r0, r1, r2, ROR #24 :: rd 0x3141594e rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
+uxtab r0, r1, r2, ROR #16 :: rd 0x3141593f rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
+uxtab r0, r1, r2, ROR #8 :: rd 0x3141594f rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
+uxtab r0, r1, r2, ROR #0 :: rd 0x314159c0 rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
+------------ SXTAH ------------
+sxtah r0, r1, r2, ROR #24 :: rd 0x3141724e rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+sxtah r0, r1, r2, ROR #16 :: rd 0x3141803f rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+sxtah r0, r1, r2, ROR #8 :: rd 0x3141714f rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+sxtah r0, r1, r2, ROR #0 :: rd 0x31418140 rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+sxtah r0, r1, r2, ROR #24 :: rd 0x3141724e rm 0x31415927, rn 0x27189819, carryin 0, cpsr 0x00000000
+sxtah r0, r1, r2, ROR #16 :: rd 0x3141803f rm 0x31415927, rn 0x27189819, carryin 0, cpsr 0x00000000
+sxtah r0, r1, r2, ROR #8 :: rd 0x314171bf rm 0x31415927, rn 0x27189819, carryin 0, cpsr 0x00000000
+sxtah r0, r1, r2, ROR #0 :: rd 0x3140f140 rm 0x31415927, rn 0x27189819, carryin 0, cpsr 0x00000000
------------ UXTAH ------------
uxtah r0, r1, r2, ROR #24 :: rd 0x3141724e rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
uxtah r0, r1, r2, ROR #16 :: rd 0x3141803f rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
-uxtah r0, r1, r2, ROR #8 :: rd 0x3141714f rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
-uxtah r0, r1, r2, ROR #0 :: rd 0x31418140 rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
-uxtah r0, r1, r2, ROR #24 :: rd 0x3141f24e rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
-uxtah r0, r1, r2, ROR #16 :: rd 0x3141803f rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
-uxtah r0, r1, r2, ROR #8 :: rd 0x3141714f rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
-uxtah r0, r1, r2, ROR #0 :: rd 0x314181c0 rm 0x31415927, rn 0x27182899, carryin 0, cpsr 0x00000000
+uxtah r0, r1, r2, ROR #8 :: rd 0x3141714f rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+uxtah r0, r1, r2, ROR #0 :: rd 0x31418140 rm 0x31415927, rn 0x27182819, carryin 0, cpsr 0x00000000
+uxtah r0, r1, r2, ROR #24 :: rd 0x3141724e rm 0x31415927, rn 0x27189819, carryin 0, cpsr 0x00000000
+uxtah r0, r1, r2, ROR #16 :: rd 0x3141803f rm 0x31415927, rn 0x27189819, carryin 0, cpsr 0x00000000
+uxtah r0, r1, r2, ROR #8 :: rd 0x314171bf rm 0x31415927, rn 0x27189819, carryin 0, cpsr 0x00000000
+uxtah r0, r1, r2, ROR #0 :: rd 0x3141f140 rm 0x31415927, rn 0x27189819, carryin 0, cpsr 0x00000000
------------ PLD/PLDW (begin) ------------
pld reg +/- imm12 cases
pld reg +/- shifted reg cases