diff options
author | Dale Johannesen <dalej@apple.com> | 2007-09-11 18:32:33 +0000 |
---|---|---|
committer | Dale Johannesen <dalej@apple.com> | 2007-09-11 18:32:33 +0000 |
commit | 1616e90a14e8df92adb026ceb047141056862de9 (patch) | |
tree | cb752d4a86ec5c5dd783cfc421e30d0cf7600e87 /lib/Target/MSIL | |
parent | d7b1fc63e2d2af03f122d0eeeda0f6a47586122f (diff) | |
download | external_llvm-1616e90a14e8df92adb026ceb047141056862de9.tar.gz external_llvm-1616e90a14e8df92adb026ceb047141056862de9.tar.bz2 external_llvm-1616e90a14e8df92adb026ceb047141056862de9.zip |
Add APInt interfaces to APFloat (allows directly
access to bits). Use them in place of float and
double interfaces where appropriate.
First bits of x86 long double constants handling
(untested, probably does not work).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41858 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/MSIL')
-rw-r--r-- | lib/Target/MSIL/MSILWriter.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/lib/Target/MSIL/MSILWriter.cpp b/lib/Target/MSIL/MSILWriter.cpp index 71789703ff..cd67df17a6 100644 --- a/lib/Target/MSIL/MSILWriter.cpp +++ b/lib/Target/MSIL/MSILWriter.cpp @@ -428,10 +428,10 @@ void MSILWriter::printConstLoad(const Constant* C) { uint64_t X; unsigned Size; if (FP->getType()->getTypeID()==Type::FloatTyID) { - X = FloatToBits(FP->getValueAPF().convertToFloat()); + X = (uint32_t)*FP->getValueAPF().convertToAPInt().getRawData(); Size = 4; } else { - X = DoubleToBits(FP->getValueAPF().convertToDouble()); + X = *FP->getValueAPF().convertToAPInt().getRawData(); Size = 8; } Out << "\tldc.r" << Size << "\t( " << utohexstr(X) << ')'; @@ -1473,10 +1473,10 @@ void MSILWriter::printStaticConstant(const Constant* C, uint64_t& Offset) { const ConstantFP* FP = cast<ConstantFP>(C); if (Ty->getTypeID() == Type::FloatTyID) Out << "int32 (" << - FloatToBits(FP->getValueAPF().convertToFloat()) << ')'; + (uint32_t)*FP->getValueAPF().convertToAPInt().getRawData() << ')'; else Out << "int64 (" << - DoubleToBits(FP->getValueAPF().convertToDouble()) << ')'; + *FP->getValueAPF().convertToAPInt().getRawData() << ')'; break; } case Type::ArrayTyID: |