[PATCH] D58858: [msan] Instrument x86 BMI intrinsics.

Jonas Hahnfeld via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Mar 15 03:19:14 PDT 2019


Hahnfeld marked an inline comment as done.
Hahnfeld added a comment.

Okay, the test failure is related to my Intel Westmere system (yeah, that's old, I know) where I see:

  b = 0x13c0
  kBmi12Mask = 0x108

Even the "corrected" code only checked that at least one bit is set :-(

Apologies for running into the wrong direction!



================
Comment at: lib/msan/tests/msan_test.cc:4653
+  const U4 kBmi12Mask = (1U<<3) | (1U<<8);
+  return b | kBmi12Mask;
+#else
----------------
eugenis wrote:
> Hahnfeld wrote:
> > Shouldn't this be `return b & kBmi12Mask`? The current expression should always cast to `true`...
> Of course! Will fix.
Actually the code was still wrong: I've changed this to `return (b & kBmi12Mask) == kBmi12Mask` in rL356242 which fixes my test failures.


Repository:
  rCRT Compiler Runtime

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

https://reviews.llvm.org/D58858





More information about the llvm-commits mailing list