@@ -1030,7 +1030,7 @@ void GISelValueTracking::computeKnownFPClass(Register R,
10301030 //
10311031 if ((Known.KnownFPClasses & fcZero) != fcNone &&
10321032 !Known.isKnownNeverSubnormal ()) {
1033- DenormalMode Mode = MF->getDenormalMode (getFltSemanticForLLT (DstTy));
1033+ DenormalMode Mode = MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () ));
10341034 if (Mode != DenormalMode::getIEEE ())
10351035 Known.KnownFPClasses |= fcZero;
10361036 }
@@ -1092,8 +1092,8 @@ void GISelValueTracking::computeKnownFPClass(Register R,
10921092
10931093 // If the parent function flushes denormals, the canonical output cannot
10941094 // be a denormal.
1095- LLT Ty = MRI.getType (Val);
1096- const fltSemantics &FPType = getFltSemanticForLLT (Ty. getScalarType () );
1095+ LLT Ty = MRI.getType (Val). getScalarType () ;
1096+ const fltSemantics &FPType = getFltSemanticForLLT (Ty);
10971097 DenormalMode DenormMode = MF->getDenormalMode (FPType);
10981098 if (DenormMode == DenormalMode::getIEEE ()) {
10991099 if (KnownSrc.isKnownNever (fcPosZero))
@@ -1203,8 +1203,8 @@ void GISelValueTracking::computeKnownFPClass(Register R,
12031203 if (KnownSrc.isKnownNeverNaN () && KnownSrc.cannotBeOrderedLessThanZero ())
12041204 Known.knownNot (fcNan);
12051205
1206- LLT Ty = MRI.getType (Val);
1207- const fltSemantics &FltSem = getFltSemanticForLLT (Ty. getScalarType () );
1206+ LLT Ty = MRI.getType (Val). getScalarType () ;
1207+ const fltSemantics &FltSem = getFltSemanticForLLT (Ty);
12081208 DenormalMode Mode = MF->getDenormalMode (FltSem);
12091209
12101210 if (KnownSrc.isKnownNeverLogicalZero (Mode))
@@ -1323,18 +1323,18 @@ void GISelValueTracking::computeKnownFPClass(Register R,
13231323
13241324 // (fadd x, 0.0) is guaranteed to return +0.0, not -0.0.
13251325 if ((KnownLHS.isKnownNeverLogicalNegZero (
1326- MF->getDenormalMode (getFltSemanticForLLT (DstTy))) ||
1326+ MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () ))) ||
13271327 KnownRHS.isKnownNeverLogicalNegZero (
1328- MF->getDenormalMode (getFltSemanticForLLT (DstTy)))) &&
1328+ MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () )))) &&
13291329 // Make sure output negative denormal can't flush to -0
13301330 outputDenormalIsIEEEOrPosZero (*MF, DstTy))
13311331 Known.knownNot (fcNegZero);
13321332 } else {
13331333 // Only fsub -0, +0 can return -0
13341334 if ((KnownLHS.isKnownNeverLogicalNegZero (
1335- MF->getDenormalMode (getFltSemanticForLLT (DstTy))) ||
1335+ MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () ))) ||
13361336 KnownRHS.isKnownNeverLogicalPosZero (
1337- MF->getDenormalMode (getFltSemanticForLLT (DstTy)))) &&
1337+ MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () )))) &&
13381338 // Make sure output negative denormal can't flush to -0
13391339 outputDenormalIsIEEEOrPosZero (*MF, DstTy))
13401340 Known.knownNot (fcNegZero);
@@ -1381,10 +1381,10 @@ void GISelValueTracking::computeKnownFPClass(Register R,
13811381
13821382 if ((KnownRHS.isKnownNeverInfinity () ||
13831383 KnownLHS.isKnownNeverLogicalZero (
1384- MF->getDenormalMode (getFltSemanticForLLT (DstTy)))) &&
1384+ MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () )))) &&
13851385 (KnownLHS.isKnownNeverInfinity () ||
13861386 KnownRHS.isKnownNeverLogicalZero (
1387- MF->getDenormalMode (getFltSemanticForLLT (DstTy)))))
1387+ MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () )))))
13881388 Known.knownNot (fcNan);
13891389
13901390 break ;
@@ -1437,9 +1437,9 @@ void GISelValueTracking::computeKnownFPClass(Register R,
14371437 (KnownLHS.isKnownNeverInfinity () ||
14381438 KnownRHS.isKnownNeverInfinity ()) &&
14391439 ((KnownLHS.isKnownNeverLogicalZero (
1440- MF->getDenormalMode (getFltSemanticForLLT (DstTy)))) ||
1440+ MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () )))) ||
14411441 (KnownRHS.isKnownNeverLogicalZero (
1442- MF->getDenormalMode (getFltSemanticForLLT (DstTy)))))) {
1442+ MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () )))))) {
14431443 Known.knownNot (fcNan);
14441444 }
14451445
@@ -1453,7 +1453,7 @@ void GISelValueTracking::computeKnownFPClass(Register R,
14531453 if (KnownLHS.isKnownNeverNaN () && KnownRHS.isKnownNeverNaN () &&
14541454 KnownLHS.isKnownNeverInfinity () &&
14551455 KnownRHS.isKnownNeverLogicalZero (
1456- MF->getDenormalMode (getFltSemanticForLLT (DstTy)))) {
1456+ MF->getDenormalMode (getFltSemanticForLLT (DstTy. getScalarType () )))) {
14571457 Known.knownNot (fcNan);
14581458 }
14591459
@@ -1478,10 +1478,10 @@ void GISelValueTracking::computeKnownFPClass(Register R,
14781478 // Infinity, nan and zero propagate from source.
14791479 computeKnownFPClass (R, DemandedElts, InterestedClasses, Known, Depth + 1 );
14801480
1481- LLT DstTy = MRI.getType (Dst);
1482- const fltSemantics &DstSem = getFltSemanticForLLT (DstTy. getScalarType () );
1483- LLT SrcTy = MRI.getType (Src);
1484- const fltSemantics &SrcSem = getFltSemanticForLLT (SrcTy. getScalarType () );
1481+ LLT DstTy = MRI.getType (Dst). getScalarType () ;
1482+ const fltSemantics &DstSem = getFltSemanticForLLT (DstTy);
1483+ LLT SrcTy = MRI.getType (Src). getScalarType () ;
1484+ const fltSemantics &SrcSem = getFltSemanticForLLT (SrcTy);
14851485
14861486 // All subnormal inputs should be in the normal range in the result type.
14871487 if (APFloat::isRepresentableAsNormalIn (SrcSem, DstSem)) {
0 commit comments