[all-commits] [llvm/llvm-project] 761cd1: [X86] Correct the implementation of the testFeatur...

topperc via All-commits all-commits at lists.llvm.org
Wed Aug 26 08:27:53 PDT 2020


  Branch: refs/heads/release/11.x
  Home:   https://github.com/llvm/llvm-project
  Commit: 761cd1ce23769b459d8f111e1448ff1e9807b90e
      https://github.com/llvm/llvm-project/commit/761cd1ce23769b459d8f111e1448ff1e9807b90e
  Author: Craig Topper <craig.topper at intel.com>
  Date:   2020-08-26 (Wed, 26 Aug 2020)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model.c

  Log Message:
  -----------
  [X86] Correct the implementation of the testFeature macro in getIntelProcessorTypeAndSubtype to do a proper bit test.

Instead of ANDing with a one hot mask representing the bit to
be tested, we were ANDing with just the bit number. This tests
multiple bits none of them the correct one.

This caused skylake-avx512, cascadelake and cooperlake to all
be misdetected. Based on experiments with the Intel SDE, it seems
that all of these CPUs are being detected as being cooperlake.
This is bad since its the newest CPU of the 3.

(cherry picked from commit df9a9bb7beb7bc04ca4188fe0e527baac2900ff1)




More information about the All-commits mailing list