-
Notifications
You must be signed in to change notification settings - Fork 139
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
If full visibility of x87 ops convert to 64bit with unsafe flags #676
Comments
@Sonicadvance1 does this still make sense now that we have reduced precision? |
While it would still be nice, it's definitely less interesting since we can just enable the low precision toggle in most options. Would still be nice for those games that actually want full precision, but we can cheese out some of the f32 and f64 operations. |
I see what you mean now... detecting operations in the stack optimization pass that can be lowered to 64bits and do those there? So lets say we have a 32/64bit store to memory of an add. Instead of performing the 80bit operation, we can do that directly in 32/64 and avoid the need to go through 128bit registers... Nice! |
I will add this to my todo list. |
Yea, since we have the stack tracking now, theoretically that can be bolted on |
I was thinking if this is actually worth it. Lets say that after the stack pass finishes we have:
We could transform |
If we have full visibility of the scope of an x87 op, we can unsafely convert to FP64.
Only enabled with unsafe flag.
Necessary for some x87 perf gains.
The text was updated successfully, but these errors were encountered: