forked from OSchip/llvm-project
[LegalizeTypes] Don't use PromoteTargetBoolean in WidenVecOp_SETCC.
Similar to r374970, but I don't have a test for this. PromoteTargetBoolean is intended to be use for legalizing an operand that needs to be promoted. It picks its type based on the return from getSetccResultType and is intended to be used when we have freedom to pick the new type. But the return type we need for WidenVecOp_SETCC is completely determined by the type of the input node. llvm-svn: 374972
This commit is contained in:
parent
1e3e77e0b6
commit
8995daafa0
|
@ -4574,7 +4574,10 @@ SDValue DAGTypeLegalizer::WidenVecOp_SETCC(SDNode *N) {
|
|||
ISD::EXTRACT_SUBVECTOR, dl, ResVT, WideSETCC,
|
||||
DAG.getConstant(0, dl, TLI.getVectorIdxTy(DAG.getDataLayout())));
|
||||
|
||||
return PromoteTargetBoolean(CC, VT);
|
||||
EVT OpVT = N->getOperand(0).getValueType();
|
||||
ISD::NodeType ExtendCode =
|
||||
TargetLowering::getExtendForContent(TLI.getBooleanContents(OpVT));
|
||||
return DAG.getNode(ExtendCode, dl, VT, CC);
|
||||
}
|
||||
|
||||
SDValue DAGTypeLegalizer::WidenVecOp_VECREDUCE(SDNode *N) {
|
||||
|
|
Loading…
Reference in New Issue