mirror of
https://chromium.googlesource.com/libyuv/libyuv
synced 2026-04-30 19:09:18 +08:00
Fix 'ghost AVX512' detection on Alder Lake CPUs
Adds a check for the AVX512F feature bit (cpu_info7[1] & 0x00010000) before enabling AVX512 features. Alder Lake CPUs can report OS support for YMM/ZMM but not actually support AVX512F, leading to incorrect capability detection and crashes. Bug: libyuv:500318522 Change-Id: I84167ee3fcfc7a2572afba148bbb275bd3ccb1e5 Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/7746229 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
This commit is contained in:
parent
4f4e1ac553
commit
5b5a2f6b92
@ -428,7 +428,7 @@ static SAFEBUFFERS int GetCpuFlags(void) {
|
||||
cpu_info |= ((cpu_amdinfo21[0] & 0x00008000) ? kCpuHasERMS : 0);
|
||||
|
||||
// Detect AVX512bw
|
||||
if ((GetXCR0() & 0xe0) == 0xe0) {
|
||||
if ((GetXCR0() & 0xe0) == 0xe0 && (cpu_info7[1] & 0x00010000)) {
|
||||
cpu_info |= ((cpu_info7[1] & 0x40000000) ? kCpuHasAVX512BW : 0) |
|
||||
((cpu_info7[1] & 0x80000000) ? kCpuHasAVX512VL : 0) |
|
||||
((cpu_info7[2] & 0x00000002) ? kCpuHasAVX512VBMI : 0) |
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user