<div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Mar 31, 2014 at 11:48 PM, Jun Koi <span dir="ltr"><<a href="mailto:junkoi2004@gmail.com" target="_blank">junkoi2004@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><div>Hi,<br><br>In file X86DisassemblerDecoder.c, we have function readPrefixes() with below code:<br>

<br>.....<br>  } else if (insn->mode == MODE_32BIT) {<br>    insn->registerSize       = (hasOpSize ? 2 : 4);<br>
    insn->addressSize        = (hasAdSize ? 2 : 4);<br>    insn->displacementSize   = (hasAdSize ? 2 : 4);<br>    insn->immediateSize      = (hasOpSize ? 2 : 4);<br>  } <br>....<br><br></div>This is confused to me: so we have registerSize to be either 2 or 4 bytes.<br>


</div>But we might have instruction like:<br><br>     adc    al, 0x89<br><div><div><br></div><div>This case we should have registerSize = 1 for AL. So is this a bug, or I am misunderstanding the meaning of this "registerSize" ??<br>


<br></div></div></div></blockquote><div><br></div><div>any help please?<br><br>thanks.<br></div></div></div></div>