diff options
Diffstat (limited to 'lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp')
-rw-r--r-- | lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp b/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp index eced4824c1..f53be1b11b 100644 --- a/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp +++ b/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp @@ -571,6 +571,12 @@ GenericValue lle_X_memset(FunctionType *M, const vector<GenericValue> &Args) { return PTOGV(memset(GVTOP(Args[0]), Args[1].IntVal, Args[2].UIntVal)); } +// void *memcpy(void *Dest, void *src, size_t Size); +GenericValue lle_X_memcpy(FunctionType *M, const vector<GenericValue> &Args) { + assert(Args.size() == 3); + return PTOGV(memcpy((char*)GVTOP(Args[0]), (char*)GVTOP(Args[1]), + Args[2].UIntVal)); +} //===----------------------------------------------------------------------===// // IO Functions... @@ -798,6 +804,7 @@ void Interpreter::initializeExternalMethods() { FuncNames["lle_X_strcpy"] = lle_X_strcpy; FuncNames["lle_X_strlen"] = lle_X_strlen; FuncNames["lle_X_memset"] = lle_X_memset; + FuncNames["lle_X_memcpy"] = lle_X_memcpy; FuncNames["lle_X_fopen"] = lle_X_fopen; FuncNames["lle_X_fclose"] = lle_X_fclose; |