u8 EncodeDisp(u32 disp,x86_mrm_t* to,u8 flags) { //[reg+sdisp8] or [reg+sdisp32] //sdisp32 support only for now , sdisp8 for later if (flags&1) { if (IsS8(disp)) { to->flags|=2; to->disp=disp; if (flags&4) return 0; else return make_modrm(1,0); } } if (flags&2) { to->flags|=4; to->disp=disp; if (flags&4) return 0; else return make_modrm(2,0); } verify(false); return 0; }
inline Modrm make_modrm (const PtrData& r,const UntypedRegister& r2) { return make_modrm(r,r2.get_code()) ; }