-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
X86 Prefix ordering #82
Comments
As a note: udis86 shows repne scasw in both cases: capstone pair:~ pancake$ rasm2 -a x86.cs -d 66f2af udis86 pair:~ pancake$ rasm2 -a x86 -d f266af olly disasm: pair:~ pancake$ rasm2 -a x86.olly -d f266af And I guess gnu would do something completely different here too :P Who’s right? On 18 Mar 2014, at 17:32, lintile notifications@github.com wrote:
|
Well, I can tell you that there are at least 3 different compilers on different platforms which generate this instruction, and when executed on the processor, they are equivalent. |
thanks for the report! we will work on these cases & get back to you soon. usually when there are differences, we would trust IDAPro more than others. best! On Wed, Mar 19, 2014 at 12:40 AM, radare notifications@github.com wrote:
|
IDA agrees: seg000:00000004 66 F2 AF repne scasw |
udis wins On 18 Mar 2014, at 17:58, lintile notifications@github.com wrote:
|
Lintile, this problem has been fixed in the "next" branch. can you confirm? thanks. |
this has been fixed in the "next" branch. if you still have this issue with some input, please reopen it. thanks. |
Part of PR capstone-engine#82 Adds a test to make sure that cs_insn and Insn have the same size and alignment and that conversions between them are valid.
I have found an issue with prefix ordering that causes the disassembler to ignore both the osz and the repe/repne prefixes:
% ./quickcs 66 f2 af
scasd eax, dword ptr es:[edi]
% ./quickcs f2 66 af
repne scasw ax, word ptr es:[edi]
This is currently a problem in LLVM ToT, but the prefix handling in this base is much closer to reality. Thanks!
The text was updated successfully, but these errors were encountered: