@@ -546,7 +546,6 @@ namespace {
546
546
SDValue visitFP_TO_FP16(SDNode *N);
547
547
SDValue visitFP16_TO_FP(SDNode *N);
548
548
SDValue visitFP_TO_BF16(SDNode *N);
549
- SDValue visitBF16_TO_FP(SDNode *N);
550
549
SDValue visitVECREDUCE(SDNode *N);
551
550
SDValue visitVPOp(SDNode *N);
552
551
SDValue visitGET_FPENV_MEM(SDNode *N);
@@ -2049,7 +2048,7 @@ SDValue DAGCombiner::visit(SDNode *N) {
2049
2048
case ISD::FP_TO_FP16: return visitFP_TO_FP16(N);
2050
2049
case ISD::FP16_TO_FP: return visitFP16_TO_FP(N);
2051
2050
case ISD::FP_TO_BF16: return visitFP_TO_BF16(N);
2052
- case ISD::BF16_TO_FP: return visitBF16_TO_FP (N);
2051
+ case ISD::BF16_TO_FP: return visitFP16_TO_FP (N);
2053
2052
case ISD::FREEZE: return visitFREEZE(N);
2054
2053
case ISD::GET_FPENV_MEM: return visitGET_FPENV_MEM(N);
2055
2054
case ISD::SET_FPENV_MEM: return visitSET_FPENV_MEM(N);
@@ -26147,7 +26146,7 @@ SDValue DAGCombiner::visitFP16_TO_FP(SDNode *N) {
26147
26146
if (!TLI.shouldKeepZExtForFP16Conv() && N0->getOpcode() == ISD::AND) {
26148
26147
ConstantSDNode *AndConst = getAsNonOpaqueConstant(N0.getOperand(1));
26149
26148
if (AndConst && AndConst->getAPIntValue() == 0xffff) {
26150
- return DAG.getNode(ISD::FP16_TO_FP , SDLoc(N), N->getValueType(0),
26149
+ return DAG.getNode(N->getOpcode() , SDLoc(N), N->getValueType(0),
26151
26150
N0.getOperand(0));
26152
26151
}
26153
26152
}
@@ -26165,21 +26164,6 @@ SDValue DAGCombiner::visitFP_TO_BF16(SDNode *N) {
26165
26164
return SDValue();
26166
26165
}
26167
26166
26168
- SDValue DAGCombiner::visitBF16_TO_FP(SDNode *N) {
26169
- SDValue N0 = N->getOperand(0);
26170
-
26171
- // fold bf16_to_fp(op & 0xffff) -> bf16_to_fp(op)
26172
- if (!TLI.shouldKeepZExtForFP16Conv() && N0->getOpcode() == ISD::AND) {
26173
- ConstantSDNode *AndConst = getAsNonOpaqueConstant(N0.getOperand(1));
26174
- if (AndConst && AndConst->getAPIntValue() == 0xffff) {
26175
- return DAG.getNode(ISD::BF16_TO_FP, SDLoc(N), N->getValueType(0),
26176
- N0.getOperand(0));
26177
- }
26178
- }
26179
-
26180
- return SDValue();
26181
- }
26182
-
26183
26167
SDValue DAGCombiner::visitVECREDUCE(SDNode *N) {
26184
26168
SDValue N0 = N->getOperand(0);
26185
26169
EVT VT = N0.getValueType();
0 commit comments