[PATCH] D44370: [X86] Combine vXi64 multiplies to MULDQ/MULUDQ during DAG combine instead of lowering.

Simon Pilgrim via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 28 05:40:05 PDT 2018


RKSimon added inline comments.


================
Comment at: lib/CodeGen/SelectionDAG/DAGCombiner.cpp:15070
 
+  if (SDValue V = convertBuildVecZextToZext(N))
+    return V;
----------------
Its strange that we have reduceBuildVecExtToExtBuildVec for post-legalization and this for pre-legalization. Not exactly the same I know.


================
Comment at: test/CodeGen/X86/combine-pmuldq.ll:8
 
 ; TODO - shuffle+sext are superfluous
 define <2 x i64> @combine_shuffle_sext_pmuldq(<4 x i32> %a0, <4 x i32> %a1) {
----------------
This TODO can go


================
Comment at: test/CodeGen/X86/combine-pmuldq.ll:27
 
 ; TODO - shuffle+zext are superfluous
 define <2 x i64> @combine_shuffle_zext_pmuludq(<4 x i32> %a0, <4 x i32> %a1) {
----------------
This TODO can go


https://reviews.llvm.org/D44370





More information about the llvm-commits mailing list