diff --git a/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp b/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp index 1ad8e8025854..8ffdf63df988 100644 --- a/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp +++ b/llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp @@ -4150,9 +4150,9 @@ SDOperand SelectionDAGLegalize::ExpandEXTRACT_VECTOR_ELT(SDOperand Op) { if (MVT::getSizeInBits(Idx.getValueType()) > MVT::getSizeInBits(TLI.getPointerTy())) - Idx = DAG.getNode(ISD::TRUNCATE, TLI.getPointerTy(), StackPtr); + Idx = DAG.getNode(ISD::TRUNCATE, TLI.getPointerTy(), Idx); else - Idx = DAG.getNode(ISD::ZERO_EXTEND, TLI.getPointerTy(), StackPtr); + Idx = DAG.getNode(ISD::ZERO_EXTEND, TLI.getPointerTy(), Idx); StackPtr = DAG.getNode(ISD::ADD, Idx.getValueType(), Idx, StackPtr);