capitalize hex value
This commit is contained in:
parent
34a8d1d052
commit
c41abe153a
3 changed files with 17 additions and 17 deletions
|
@ -650,7 +650,7 @@ void put()
|
|||
};
|
||||
for (int i = 0; i < NUM_OF_ARRAY(tbl); i++) {
|
||||
const Tbl *p = &tbl[i];
|
||||
printf("void %s(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0x%02x); }\n", p->name, p->code);
|
||||
printf("void %s(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0x%02X); }\n", p->name, p->code);
|
||||
printf("void %s(const Operand& op, uint8 imm) { opR_ModM(op, 16|32|64, %d, 0x0f, 0xba, NONE, false, 1); db(imm); }\n", p->name, p->ext);
|
||||
}
|
||||
}
|
||||
|
@ -1484,7 +1484,7 @@ void put()
|
|||
};
|
||||
for (size_t i = 0; i < NUM_OF_ARRAY(tbl); i++) {
|
||||
const Tbl& p = tbl[i];
|
||||
printf("void %s(const Xmm& x, const Operand& op) { if (!(op.isXMM() || op.isMEM())) throw Error(ERR_BAD_COMBINATION); opAVX_X_XM_IMM(x, op, MM_0F38 | PP_66, 0x%02x, true, 0); }\n", p.name, p.code);
|
||||
printf("void %s(const Xmm& x, const Operand& op) { if (!(op.isXMM() || op.isMEM())) throw Error(ERR_BAD_COMBINATION); opAVX_X_XM_IMM(x, op, MM_0F38 | PP_66, 0x%02X, true, 0); }\n", p.name, p.code);
|
||||
}
|
||||
|
||||
printf("void vextractf128(const Operand& op, const Ymm& y, uint8 imm) { opAVX_X_X_XMcvt(y, y.isXMM() ? xm0 : ym0, op, op.isXMM(), Operand::YMM, MM_0F3A | PP_66, 0x19, true, 0, imm); }\n");
|
||||
|
|
|
@ -1807,11 +1807,11 @@ public:
|
|||
{
|
||||
switch (seg.getIdx()) {
|
||||
case Segment::es: db(0x06); break;
|
||||
case Segment::cs: db(0x0e); break;
|
||||
case Segment::cs: db(0x0E); break;
|
||||
case Segment::ss: db(0x16); break;
|
||||
case Segment::ds: db(0x1e); break;
|
||||
case Segment::fs: db(0x0f); db(0xa0); break;
|
||||
case Segment::gs: db(0x0f); db(0xa8); break;
|
||||
case Segment::ds: db(0x1E); break;
|
||||
case Segment::fs: db(0x0F); db(0xA0); break;
|
||||
case Segment::gs: db(0x0F); db(0xA8); break;
|
||||
default:
|
||||
assert(0);
|
||||
}
|
||||
|
@ -1822,9 +1822,9 @@ public:
|
|||
case Segment::es: db(0x07); break;
|
||||
case Segment::cs: throw Error(ERR_BAD_COMBINATION);
|
||||
case Segment::ss: db(0x17); break;
|
||||
case Segment::ds: db(0x1f); break;
|
||||
case Segment::fs: db(0x0f); db(0xa1); break;
|
||||
case Segment::gs: db(0x0f); db(0xa9); break;
|
||||
case Segment::ds: db(0x1F); break;
|
||||
case Segment::fs: db(0x0F); db(0xA1); break;
|
||||
case Segment::gs: db(0x0F); db(0xA9); break;
|
||||
default:
|
||||
assert(0);
|
||||
}
|
||||
|
@ -1954,9 +1954,9 @@ public:
|
|||
void putSeg(const Segment& seg)
|
||||
{
|
||||
switch (seg.getIdx()) {
|
||||
case Segment::es: db(0x2e); break;
|
||||
case Segment::es: db(0x2E); break;
|
||||
case Segment::cs: db(0x36); break;
|
||||
case Segment::ss: db(0x3e); break;
|
||||
case Segment::ss: db(0x3E); break;
|
||||
case Segment::ds: db(0x26); break;
|
||||
case Segment::fs: db(0x64); break;
|
||||
case Segment::gs: db(0x65); break;
|
||||
|
@ -2136,8 +2136,8 @@ public:
|
|||
db(0xF2);
|
||||
opModRM(reg, op, op.isREG(), op.isMEM(), 0x0F, 0x38, 0xF0 | (op.isBit(8) ? 0 : 1));
|
||||
}
|
||||
void rdrand(const Reg& r) { if (r.isBit(8)) throw Error(ERR_BAD_SIZE_OF_REGISTER); opModR(Reg(6, Operand::REG, r.getBit()), r, 0x0f, 0xc7); }
|
||||
void rdseed(const Reg& r) { if (r.isBit(8)) throw Error(ERR_BAD_SIZE_OF_REGISTER); opModR(Reg(7, Operand::REG, r.getBit()), r, 0x0f, 0xc7); }
|
||||
void rdrand(const Reg& r) { if (r.isBit(8)) throw Error(ERR_BAD_SIZE_OF_REGISTER); opModR(Reg(6, Operand::REG, r.getBit()), r, 0x0F, 0xC7); }
|
||||
void rdseed(const Reg& r) { if (r.isBit(8)) throw Error(ERR_BAD_SIZE_OF_REGISTER); opModR(Reg(7, Operand::REG, r.getBit()), r, 0x0F, 0xC7); }
|
||||
void rorx(const Reg32e& r, const Operand& op, uint8 imm) { opGpr(r, op, Reg32e(0, r.getBit()), MM_0F3A | PP_F2, 0xF0, false, imm); }
|
||||
enum { NONE = 256 };
|
||||
CodeGenerator(size_t maxSize = DEFAULT_MAX_CODE_SIZE, void *userPtr = 0, Allocator *allocator = 0)
|
||||
|
|
|
@ -502,13 +502,13 @@ void xor(const Operand& op, uint32 imm) { opRM_I(op, imm, 0x30, 6); }
|
|||
#endif
|
||||
void dec(const Operand& op) { opIncDec(op, 0x48, 1); }
|
||||
void inc(const Operand& op) { opIncDec(op, 0x40, 0); }
|
||||
void bt(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0xa3); }
|
||||
void bt(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0xA3); }
|
||||
void bt(const Operand& op, uint8 imm) { opR_ModM(op, 16|32|64, 4, 0x0f, 0xba, NONE, false, 1); db(imm); }
|
||||
void bts(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0xab); }
|
||||
void bts(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0xAB); }
|
||||
void bts(const Operand& op, uint8 imm) { opR_ModM(op, 16|32|64, 5, 0x0f, 0xba, NONE, false, 1); db(imm); }
|
||||
void btr(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0xb3); }
|
||||
void btr(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0xB3); }
|
||||
void btr(const Operand& op, uint8 imm) { opR_ModM(op, 16|32|64, 6, 0x0f, 0xba, NONE, false, 1); db(imm); }
|
||||
void btc(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0xbb); }
|
||||
void btc(const Operand& op, const Reg& reg) { opModRM(reg, op, op.isREG(16|32|64) && op.getBit() == reg.getBit(), op.isMEM(), 0x0f, 0xBB); }
|
||||
void btc(const Operand& op, uint8 imm) { opR_ModM(op, 16|32|64, 7, 0x0f, 0xba, NONE, false, 1); db(imm); }
|
||||
void div(const Operand& op) { opR_ModM(op, 0, 6, 0xF6); }
|
||||
void idiv(const Operand& op) { opR_ModM(op, 0, 7, 0xF6); }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue