Changes in directory llvm/lib/ExecutionEngine/Interpreter:
Execution.cpp updated: 1.180 -> 1.181 --- Log message: Bitcast all the bits of a floating point value, not just one. The zero extension is needed because the constructor for the Destination value causes the APInt to have a bit width of 1. Patch by Guoling Han. --- Diffs of the changes: (+2 -0) Execution.cpp | 2 ++ 1 files changed, 2 insertions(+) Index: llvm/lib/ExecutionEngine/Interpreter/Execution.cpp diff -u llvm/lib/ExecutionEngine/Interpreter/Execution.cpp:1.180 llvm/lib/ExecutionEngine/Interpreter/Execution.cpp:1.181 --- llvm/lib/ExecutionEngine/Interpreter/Execution.cpp:1.180 Thu Apr 26 13:19:35 2007 +++ llvm/lib/ExecutionEngine/Interpreter/Execution.cpp Thu May 3 22:37:38 2007 @@ -1087,8 +1087,10 @@ Dest.PointerVal = Src.PointerVal; } else if (DstTy->isInteger()) { if (SrcTy == Type::FloatTy) { + Dest.IntVal.zext(sizeof(Src.FloatVal) * 8); Dest.IntVal.floatToBits(Src.FloatVal); } else if (SrcTy == Type::DoubleTy) { + Dest.IntVal.zext(sizeof(Src.DoubleVal) * 8); Dest.IntVal.doubleToBits(Src.DoubleVal); } else if (SrcTy->isInteger()) { Dest.IntVal = Src.IntVal; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits