[PATCH] D17691: [X86][SSE] Improve vector ZERO_EXTEND by combining to ZERO_EXTEND_VECTOR_INREG

Elena Demikhovsky via llvm-commits llvm-commits at lists.llvm.org
Sun Feb 28 06:38:53 PST 2016

delena added a comment.

I looked at the code. We combine "zext" with "select" in td file. and receive 
vpmovzxbw %xmm0, %ymm0 {%k1} {z}

Then I'm looking at lowering of ZERO_EXTEND_VECTOR_INREG : VectorLegalizer::ExpandZERO_EXTEND_VECTOR_INREG()

It goes there, right?
At the end I see:

  return DAG.getNode(ISD::BITCAST, DL, VT,
                     DAG.getVectorShuffle(SrcVT, DL, Zero, Src, ShuffleMask));

I assume that BITCAST does not allow combining  "zext" with "select" .



More information about the llvm-commits mailing list