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

Use constant generating tricks for XMVectorSplatOne, etc. #69

Open
walbourn opened this issue Apr 23, 2018 · 0 comments
Open

Use constant generating tricks for XMVectorSplatOne, etc. #69

walbourn opened this issue Apr 23, 2018 · 0 comments

Comments

@walbourn
Copy link
Member

walbourn commented Apr 23, 2018

In the original Xbox 360 implementation of xboxmath, the following functions used tricks and helper intrinsics like vec_ctf to generate constants:

  • XMVectorSplatOne
  • XMVectorSplatInfinity
  • XMVectorSplatQNaN
  • XMVectorSplatEpsilon
  • XMVectorSplatSignMask

For the SSE implementation, they are implemented as just loads from vectorized data-segment constants. It would be nice to find a way to generate the values instead to minimize data read and catch impacts.

For ARM-NEON, most of these use vdupq_n_f32 or vdupq_n_u32 which should be reasonably efficient already.

@walbourn walbourn changed the title Use constant generating tricks for XMVectorSpatOne, etc. Use constant generating tricks for XMVectorSplatOne, etc. Apr 23, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant