<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><br></div>Hi Craig,<div><br></div><div>I added another type to MODRMTYPES:</div><div><div> * MODRM_SPLITMISC- If the ModR/M byte is between 0x00 and 0xbf, ModR/M byte</div><div> *                  divided by 8 is used to select instruction; otherwise, each</div><div> *                  value of the ModR/M byte could correspond to a different</div><div> *                  instruction.</div><div><br></div><div>This can reduce number of entries in modRMTable from 43k to 26k.</div><div>Let me know what you think,</div><div><br></div><div>I also noticed that there are a lot of InstructionContexts (69 out of 186)  where the entries all point to the EmptyTable. </div><div>Is it a good idea to add a separate table to say whether all entries are empty for a given Instruction Context and to specify the index if it is not?</div><div><br></div><div>I don't quite get why using opcode as the first index and context decisions as the second will save us space unless we use two tables instead of a big (256x31) table.</div><div><br></div><div>Thanks,</div><div>Manman</div><div><br></div><div></div></div></body></html>