diff options
author | Nick Lewycky <nicholas@mxc.ca> | 2009-11-08 05:45:04 +0000 |
---|---|---|
committer | Nick Lewycky <nicholas@mxc.ca> | 2009-11-08 05:45:04 +0000 |
commit | e0e20c2b900e63c609e5678574395386488d72da (patch) | |
tree | 3c823e9e87aebffd731d590f874ca3172bf2c2f3 /llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp | |
parent | 2679a884d73b437dea417cbef28d26fbeaaa10e8 (diff) | |
download | bcm5719-llvm-e0e20c2b900e63c609e5678574395386488d72da.tar.gz bcm5719-llvm-e0e20c2b900e63c609e5678574395386488d72da.zip |
We don't need to byteswap, the interpreter assumes the program is running
native anyways. This fixes a crash using %d and similar in a scanf statement.
llvm-svn: 86440
Diffstat (limited to 'llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp')
-rw-r--r-- | llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp | 9 |
1 files changed, 1 insertions, 8 deletions
diff --git a/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp b/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp index 8c45a36b56a..68f70b5208b 100644 --- a/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp +++ b/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp @@ -468,8 +468,7 @@ static void ByteswapSCANFResults(LLVMContext &C, } break; - case 'e': case 'g': case 'E': - case 'f': + case 'e': case 'g': case 'E': case 'f': if (Long || LongLong) { Size = 8; Ty = Type::getDoubleTy(C); } else { @@ -508,9 +507,6 @@ GenericValue lle_X_sscanf(const FunctionType *FT, GenericValue GV; GV.IntVal = APInt(32, sscanf(Args[0], Args[1], Args[2], Args[3], Args[4], Args[5], Args[6], Args[7], Args[8], Args[9])); - ByteswapSCANFResults(FT->getContext(), - Args[1], Args[2], Args[3], Args[4], - Args[5], Args[6], Args[7], Args[8], Args[9], 0); return GV; } @@ -526,9 +522,6 @@ GenericValue lle_X_scanf(const FunctionType *FT, GenericValue GV; GV.IntVal = APInt(32, scanf( Args[0], Args[1], Args[2], Args[3], Args[4], Args[5], Args[6], Args[7], Args[8], Args[9])); - ByteswapSCANFResults(FT->getContext(), - Args[0], Args[1], Args[2], Args[3], Args[4], - Args[5], Args[6], Args[7], Args[8], Args[9]); return GV; } |