From 86fd6304acde873b5a90600571e376ee64d841a1 Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Tue, 22 May 2007 06:47:11 +0000 Subject: [PATCH] simplify code git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@37280 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/AsmParser/Lexer.l | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/lib/AsmParser/Lexer.l b/lib/AsmParser/Lexer.l index 2218aa5164b..ed1f6bf4570 100644 --- a/lib/AsmParser/Lexer.l +++ b/lib/AsmParser/Lexer.l @@ -27,6 +27,7 @@ %{ #include "ParserInternals.h" #include "llvm/Module.h" +#include "llvm/Support/MathExtras.h" #include #include "llvmAsmParser.h" #include @@ -95,17 +96,7 @@ static uint64_t HexIntToVal(const char *Buffer) { // point representation of it. // static double HexToFP(const char *Buffer) { - // Behave nicely in the face of C TBAA rules... see: - // http://www.nullstone.com/htmls/category/aliastyp.htm - union { - uint64_t UI; - double FP; - } UIntToFP; - UIntToFP.UI = HexIntToVal(Buffer); - - assert(sizeof(double) == sizeof(uint64_t) && - "Data sizes incompatible on this target!"); - return UIntToFP.FP; // Cast Hex constant to double + return BitsToDouble(HexIntToVal(Buffer)); // Cast Hex constant to double } -- 2.34.1