summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp
diff options
context:
space:
mode:
authorNick Lewycky <nicholas@mxc.ca>2009-11-08 05:45:04 +0000
committerNick Lewycky <nicholas@mxc.ca>2009-11-08 05:45:04 +0000
commite0e20c2b900e63c609e5678574395386488d72da (patch)
tree3c823e9e87aebffd731d590f874ca3172bf2c2f3 /llvm/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp
parent2679a884d73b437dea417cbef28d26fbeaaa10e8 (diff)
downloadbcm5719-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.cpp9
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;
}
OpenPOWER on IntegriCloud