Fix CPU architecture guards for x86 and x64 on MSVC #8
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I noticed that rust-aegis runs very slow when I build it with the MSVC toolchain on Windows. From what my online searches turned up, it looks like MSVC uses
_M_IX86
and_M_AMD64
for CPU architecture guards instead of__i386__
and__x86_64__
1.This causes
libaegis
never to select any hardware accelerated implementations when built this way. I have created a simple test program that demonstrates the effect:Footnotes
See:
https://sourceforge.net/p/predef/wiki/Architectures/
http://web.archive.org/web/20240211072249/https://sourceforge.net/p/predef/wiki/Architectures/
https://archive.is/jRq9r ↩