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
Add remaining possible uses of MOVBE #303
Conversation
|
LGTM if user testing does not find any weird bug. @JMC47 |
|
I instantly get a Backpatch error with this. |
|
Fixed 32 bit, haven't looked into the Backpatch error yet. |
|
Fixed. |
|
Works for me and LGTM. |
|
Will you be available in the next few days to fix crashes on a short notice? If not, would appreciate some basic user testing from both people who have Haswell and people who have not. Leaving a forum thread for a day should probably be enough. |
|
I have tested a few games for a few minutes each and couldn't find a noticeable issue on my end for now. |
|
So... backpatching assumes there are at least 5 bytes to replace with a call instruction. Usually the BSWAP was enough for this, but for 8-bit loads and stores two NOP bytes are added. However, some MOVBE instructions seem to be 4 bytes: Is this taken care of somewhere? |
|
@comex: No, but all our backpatched MOVBEs use memory references. Good catch though. EDIT: OK, what I just said doesn't make any sense. I'll have a look. |
|
Should still be fine, we always have a SIB byte or an offset. |
Also fixes a missing 'break' statement in DisassembleMov().
|
Squashed. |
Add remaining possible uses of MOVBE
|
Please try and monitor forums for issues that could be caused by this :) |
Ceterum autem censeo x86-32 esse delendam.