We don't need to create an ISD::TRUNCATE node to return, we started with one and can return it. Also remove the call to getExtendInVec, the result is just going to be a getNode of that value passed in.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@327914
91177308-0d34-0410-b5e6-
96231b3b80d8
// Make sure we're allowed to promote 512-bits.
if (Subtarget.canExtendTo512DQ())
return DAG.getNode(ISD::TRUNCATE, DL, VT,
- getExtendInVec(X86ISD::VSEXT, DL, MVT::v16i32, In,
- DAG));
+ DAG.getNode(X86ISD::VSEXT, DL, MVT::v16i32, In));
} else {
- return DAG.getNode(ISD::TRUNCATE, DL, VT, In);
+ return Op;
}
}