diff --git a/lib/VMCore/AsmWriter.cpp b/lib/VMCore/AsmWriter.cpp index 7bec783b0d3..21d4566a080 100644 --- a/lib/VMCore/AsmWriter.cpp +++ b/lib/VMCore/AsmWriter.cpp @@ -733,7 +733,7 @@ static void WriteConstantInternal(raw_ostream &Out, const Constant *CV, ((StrVal[0] == '-' || StrVal[0] == '+') && (StrVal[1] >= '0' && StrVal[1] <= '9'))) { // Reparse stringized version! - if (atof(StrVal.c_str()) == Val) { + if (APFloat(APFloat::IEEEdouble, StrVal).convertToDouble() == Val) { Out << StrVal.str(); return; }