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

Fix missing Detection for AVX OS Support #4325

Merged
merged 1 commit into from Mar 23, 2018

Conversation

Projects
None yet
2 participants
@SelfGamer
Contributor

SelfGamer commented Mar 23, 2018

A Fix for Issue #4323, where now in addition to the CPU Capabilities, the OS Support is also queried when checking for AVX/AVX2/AVX512 availability.
This is done by an additional check to the XCR_XFEATURE Register using the xgetbv instruction. Since this is not present on some older CPU's, we first need to check for it's availability with CPUID EAX=1 for bits 26 and 27 in ECX.
Tested on my System with an i7 7800X and Win8.1 (with support for AVX/AVX2 but not for AVX512), where avx/avx2 are still enabled, but avx-512 is now correctly disabled. Might require further testing on machines where AVX512 is confirmed to work as well as on linux.

@Nekotekina Nekotekina merged commit c5caaa9 into RPCS3:master Mar 23, 2018

2 checks passed

continuous-integration/appveyor/pr AppVeyor build succeeded
Details
continuous-integration/travis-ci/pr The Travis CI build passed
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment