From: Chris Lattner Date: Sat, 22 Dec 2007 22:45:38 +0000 (+0000) Subject: fix strict-aliasing violation X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=d3ada751c3e5f4e0de419c83e0f7975a050f893e;p=oota-llvm.git fix strict-aliasing violation git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45324 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/lib/Target/CellSPU/SPUISelDAGToDAG.cpp b/lib/Target/CellSPU/SPUISelDAGToDAG.cpp index 59de205f945..b3c910a3d74 100644 --- a/lib/Target/CellSPU/SPUISelDAGToDAG.cpp +++ b/lib/Target/CellSPU/SPUISelDAGToDAG.cpp @@ -143,9 +143,7 @@ namespace { { MVT::ValueType vt = FPN->getValueType(0); if (vt == MVT::f32) { - const APFloat &apf = FPN->getValueAPF(); - float fval = apf.convertToFloat(); - int val = *((int *) &fval); + int val = FloatToBits(FPN->getValueAPF().convertToFloat()); int sval = (int) ((val << 16) >> 16); Imm = (short) val; return val == sval;