[PATCH] D31393: [X86][LLVM] Converting __mm{|256|512}_movm_epi{8|16|32|64} LLVMIR call into generic intrinsics.

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 27 10:38:29 PDT 2017


craig.topper added inline comments.


================
Comment at: lib/IR/AutoUpgrade.cpp:237
       Name.startswith("avx512.mask.move.s") || // Added in 4.0
+      Name.startswith("avx512.cvtmask2") ||
       (Name.startswith("xop.vpcom") && // Added in 3.2
----------------
Please add "// Added in 5.0" to the end of this line so we can audit for removal in the future.


================
Comment at: lib/IR/AutoUpgrade.cpp:803
+    MaskVec = Builder.CreateShuffleVector(MaskVec, MaskVec,
+                                          makeArrayRef(Indices), "extract");
+  }
----------------
You shouldn't need makeArrayRef if you're just converting from a SmallVector it will implicitly convert.


Is this function any different than getX86MaskVec that already exists?


================
Comment at: test/CodeGen/X86/avx512dqvl-intrinsics.ll:739
 
-declare <4 x i32> @llvm.x86.avx512.cvtmask2d.128(i8)
-
----------------
These test cases should be moved to avx512dqvl-intrinsics-upgrade.ll


https://reviews.llvm.org/D31393





More information about the llvm-commits mailing list