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

rsx fp/vp analyzers: Fix strict type aliasing and improve codegen #8002

Merged
merged 2 commits into from Apr 12, 2020

Conversation

elad335
Copy link
Contributor

@elad335 elad335 commented Apr 10, 2020

  • Obey strict type aliasing rule in rsx fragment/vertex program analyzers.
  • Optimize instructions reads using SSE loads instead of using references/pointers to specific instruction members at a time. (memcpy 16 bytes is compiled to unaligned 128-bit SSE2 loads and stores)
  • Remove lots of reinterpret casts, make the code easier to read.
  • Replace qword type with the much more useful v128 type which provides extra utilities such as builtin operators ==, != for instruction comparisons.

Copy link
Contributor

@kd-11 kd-11 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are some lingering concerns, but I'm already working on shaders anyway and can fix anything that crops up, there's no need to hold up the PR itself.

@kd-11 kd-11 merged commit cb14805 into RPCS3:master Apr 12, 2020
@elad335 elad335 deleted the rsx-analyze-strict branch April 13, 2020 08:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants