clang-16 refuses to compile code that uses certain extensions that were before implicitly enabled. g++ also rejects it. add the required extensions to compile the vectorised code with runtime detection. the code already does this, but these -Xclang args don't work for some reason -- --- a/src/3rdparty/chromium/third_party/crc32c/BUILD.gn +++ b/src/3rdparty/chromium/third_party/crc32c/BUILD.gn @@ -109,19 +109,7 @@ if (current_cpu == "arm64") { if (is_clang) { cflags = [ - "-march=armv8-a", - - # Some builds set -march to a different value from the above. - # The specific feature flags below enable the instructions we need - # in these cases. See https://crbug.com/934016 for example. - "-Xclang", - "-target-feature", - "-Xclang", - "+crc", - "-Xclang", - "-target-feature", - "-Xclang", - "+crypto", + "-march=armv8-a+crc+crypto", ] } else { cflags = [ "-march=armv8-a+crc+crypto" ]