[PATCH] D155145: [X86] Add AVX-VNNI-INT16 instructions.

Anna Thomas via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 2 10:36:50 PDT 2023


anna added a comment.

> Can you capture the values of EAX, EBX, ECX, and EDX after the two calls to getX86CpuIDAndInfoEx that have 0x7 as the first argument? Maybe there's a bug in CPUID on Sandy Bridge.

Sure, on the original code before the patch you suggested right?
The two calls are:

   bool HasLeaf7 =
          MaxLevel >= 7 && !getX86CpuIDAndInfoEx(0x7, 0x0, &EAX, &EBX, &ECX, &EDX);
  +   llvm::errs() << "Before setting fsgsbase the value for EAX: " << EAX
  +                     << " EBX: " << EBX << " ECX: " << ECX << "  EDX: " << EDX
  +                     << "\n";
    
      Features["fsgsbase"]   = HasLeaf7 && ((EBX >>  0) & 1);
  ....
  bool HasLeaf7Subleaf1 =
          MaxLevel >= 7 && !getX86CpuIDAndInfoEx(0x7, 0x1, &EAX, &EBX, &ECX, &EDX);
  +   llvm::errs() << "Before setting sha512 the value for EAX: " << EAX
  +                     << " EBX: " << EBX << " ECX: " << ECX << "  EDX: " << EDX
  +                     << "\n";
      Features["sha512"]     = HasLeaf7Subleaf1 && ((EAX >> 0) & 1);
  ...
  we set avxvnniint16 after this

Takes a while to get a build on this machine, should have the output soon.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D155145/new/

https://reviews.llvm.org/D155145



More information about the llvm-commits mailing list