webrtc/system_wrappers
Gustaf Ullberg 8b8d0b5eac Check for BMI2 support before enabling AVX2 code paths
With MSVC, compiling with AVX2 support will also result in the
generation of BMI2 instructions. Some early Haswell CPUs reportedly support AVX2 but not BMI2. We have seen crashes (illegal instruction)
on these CPUs in our AVX2 code paths on MULX instructions (part of BMI2).

Including a check for BMI2 when checking for AVX2 support is
expected to solve the issue.

Please see the bug referenced below for more background on this issue.

Bug: chromium:1315519
Change-Id: I3a0a9838f1f632704ba505ecbb81a6f8b1889319
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/260323
Commit-Queue: Gustaf Ullberg <gustaf@webrtc.org>
Reviewed-by: Sam Zackrisson <saza@webrtc.org>
Reviewed-by: Henrik Andreasson <henrika@google.com>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#36701}
2022-04-29 08:41:52 +00:00
..
include Switch to absl::string_view in field_trial::FindFullName() 2022-03-22 10:35:15 +00:00
source Check for BMI2 support before enabling AVX2 code paths 2022-04-29 08:41:52 +00:00
BUILD.gn Remove dependency on rtc_base_approved from most targets 2022-04-25 12:15:30 +00:00
DEPS Moving src/webrtc into src/. 2017-09-15 04:25:06 +00:00
OWNERS Remove wildcard ownership for build files. 2020-02-19 14:05:46 +00:00