[PATCH] D82398: [MSAN] Handle x86 {round,min,max}sd intrinsics

Evgenii Stepanov via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 23 11:48:41 PDT 2020


eugenis added a comment.

The test should be in LLVM, under  test/Instrumentation/MemorySanitizer



================
Comment at: llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp:3077
+    Value *LowShadow = IRB.CreateOr(LowA, LowB);
+    Value *Shadow = IRB.CreateInsertElement(Second, LowShadow, IRB.getInt32(0));
+
----------------
You probably want to insert in First, not Second.

Is the generated code any better if you OR the vectors, and then shuffle to put the top element of First into the top element of the output? That's what LLVM generates if I express this logic in C.




Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D82398





More information about the llvm-commits mailing list