[llvm] r345613 - [InstCombine] use getFltSemantics() instead of duplicating it; NFC

Sanjay Patel via llvm-commits llvm-commits at lists.llvm.org
Tue Oct 30 09:21:56 PDT 2018


Author: spatel
Date: Tue Oct 30 09:21:56 2018
New Revision: 345613

URL: http://llvm.org/viewvc/llvm-project?rev=345613&view=rev
Log:
[InstCombine] use getFltSemantics() instead of duplicating it; NFC

Modified:
    llvm/trunk/lib/Transforms/InstCombine/InstCombineCompares.cpp

Modified: llvm/trunk/lib/Transforms/InstCombine/InstCombineCompares.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/InstCombine/InstCombineCompares.cpp?rev=345613&r1=345612&r2=345613&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/InstCombine/InstCombineCompares.cpp (original)
+++ llvm/trunk/lib/Transforms/InstCombine/InstCombineCompares.cpp Tue Oct 30 09:21:56 2018
@@ -5368,33 +5368,17 @@ Instruction *InstCombiner::visitFCmpInst
         if (!RHSF)
           break;
 
-        const fltSemantics *Sem;
-        // FIXME: This shouldn't be here.
-        if (LHSExt->getSrcTy()->isHalfTy())
-          Sem = &APFloat::IEEEhalf();
-        else if (LHSExt->getSrcTy()->isFloatTy())
-          Sem = &APFloat::IEEEsingle();
-        else if (LHSExt->getSrcTy()->isDoubleTy())
-          Sem = &APFloat::IEEEdouble();
-        else if (LHSExt->getSrcTy()->isFP128Ty())
-          Sem = &APFloat::IEEEquad();
-        else if (LHSExt->getSrcTy()->isX86_FP80Ty())
-          Sem = &APFloat::x87DoubleExtended();
-        else if (LHSExt->getSrcTy()->isPPC_FP128Ty())
-          Sem = &APFloat::PPCDoubleDouble();
-        else
-          break;
-
+        const fltSemantics &FPSem = LHSExt->getSrcTy()->getFltSemantics();
         bool Lossy;
         APFloat F = RHSF->getValueAPF();
-        F.convert(*Sem, APFloat::rmNearestTiesToEven, &Lossy);
+        F.convert(FPSem, APFloat::rmNearestTiesToEven, &Lossy);
 
         // Avoid lossy conversions and denormals. Zero is a special case
         // that's OK to convert.
         APFloat Fabs = F;
         Fabs.clearSign();
         if (!Lossy &&
-            ((Fabs.compare(APFloat::getSmallestNormalized(*Sem)) !=
+            ((Fabs.compare(APFloat::getSmallestNormalized(FPSem)) !=
                  APFloat::cmpLessThan) || Fabs.isZero()))
 
           return new FCmpInst(Pred, LHSExt->getOperand(0),




More information about the llvm-commits mailing list