Skip to content
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

irjit: Correct another PurgeTemps case #15739

Merged
merged 2 commits into from
Jul 28, 2022

Conversation

unknownbrackets
Copy link
Collaborator

@unknownbrackets unknownbrackets commented Jul 28, 2022

I've added more comments as well to clarify what it's doing.

Only tested with GTA LCS. Closes #15736. Fixes #15735.

-[Unknown]

Although I think we skip simplify passes on breakpoints entirely, safer to
exclude these ops.
In this case:
  Mov A, B
  AndConst A, A, 1
  Load32 C, A, 0

Was still swapping the Load32 to B, not just the AndConst.

Fixes hrydgard#15735.
@unknownbrackets unknownbrackets added this to the v1.13.1 milestone Jul 28, 2022
@hrydgard
Copy link
Owner

Nice. Tekken 6 is happy with this too.

@hrydgard hrydgard merged commit 5efb04c into hrydgard:master Jul 28, 2022
@hrydgard hrydgard added the IRInterpreter Occurs with IR Interpreter but not with another CPU backend. label Jul 28, 2022
@hrydgard
Copy link
Owner

Thanks for the great commenting too, makes it far easier to follow!

@unknownbrackets unknownbrackets deleted the ir-simplify branch July 28, 2022 13:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
IRInterpreter Occurs with IR Interpreter but not with another CPU backend.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Black screen GTA Vice City Stories, Tekken 6, Gran Turismo
2 participants