[PATCH] D124871: Handle instrumentation of scalar single-precision (_ss) intrinsics

Vitaly Buka via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sat May 7 22:30:02 PDT 2022


vitalybuka added a comment.

Please rebase the patch. I added tests, it should fail with your patch, so they need to be updated.
As is compiler crashes after that patch.



================
Comment at: llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp:3232-3236
+    SmallVector<int, 16> Mask;
+    Mask.push_back(Width);
+    for (int i = 1; i < Width; i++) {
+      Mask.push_back(i);
+    }
----------------



================
Comment at: llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp:3512
     case Intrinsic::x86_sse41_round_sd:
-      handleUnarySdIntrinsic(I);
+    case Intrinsic::x86_sse41_round_ss:
+    case Intrinsic::x86_sse_rcp_ss:
----------------
sse41_round_sd and Intrinsic::x86_sse41_round_ss have 3 operands
rcp and rsqrt have 2 operands, and Value *Second = getShadow(&I, 1); is not vector


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D124871



More information about the llvm-commits mailing list