| 1453 | } |
| 1454 | |
| 1455 | int decode_iclass_setf(context *ctx, Instruction *dec) |
| 1456 | { |
| 1457 | uint32_t sf=INSWORD>>31, op=(INSWORD>>30)&1, S=(INSWORD>>29)&1, opcode2=(INSWORD>>15)&0x3f, sz=(INSWORD>>14)&1, o3=(INSWORD>>4)&1, mask=INSWORD&15; |
| 1458 | if(!sf && !op && S && !opcode2 && !sz && !o3 && mask==13 && HasFlagM()) return SETF(ctx, dec); // -> SETF8_only_setf |
| 1459 | if(!sf && !op && S && !opcode2 && sz && !o3 && mask==13 && HasFlagM()) return SETF(ctx, dec); // -> SETF16_only_setf |
| 1460 | if(!sf && !op && S && !opcode2 && !o3 && mask!=13) UNALLOCATED(ENC_UNALLOCATED_11_SETF); |
| 1461 | if(!sf && !op && S && !opcode2 && o3) UNALLOCATED(ENC_UNALLOCATED_14_SETF); |
| 1462 | if(!sf && !op && S && opcode2) UNALLOCATED(ENC_UNALLOCATED_15_SETF); |
| 1463 | if(!sf && !op && !S) UNALLOCATED(ENC_UNALLOCATED_10_SETF); |
| 1464 | if(!sf && op) UNALLOCATED(ENC_UNALLOCATED_16_SETF); |
| 1465 | if(sf) UNALLOCATED(ENC_UNALLOCATED_17_SETF); |
| 1466 | UNMATCHED; |
| 1467 | } |
| 1468 | |
| 1469 | int decode_iclass_log_shift(context *ctx, Instruction *dec) |
| 1470 | { |