diff --git a/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp b/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp index 5bad84ca896..b956ff33f0f 100644 --- a/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp +++ b/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp @@ -232,6 +232,14 @@ GenericValue lle_X_pow(MethodType *M, const vector &Args) { return GV; } +// double exp(double) +GenericValue lle_X_exp(MethodType *M, const vector &Args) { + assert(Args.size() == 1); + GenericValue GV; + GV.DoubleVal = exp(Args[0].DoubleVal); + return GV; +} + // double sqrt(double) GenericValue lle_X_sqrt(MethodType *M, const vector &Args) { assert(Args.size() == 1); @@ -398,6 +406,7 @@ void Interpreter::initializeExternalMethods() { FuncNames["lle_X_free"] = lle_X_free; FuncNames["lle_X_atoi"] = lle_X_atoi; FuncNames["lle_X_pow"] = lle_X_pow; + FuncNames["lle_X_exp"] = lle_X_exp; FuncNames["lle_X_log"] = lle_X_log; FuncNames["lle_X_floor"] = lle_X_floor; FuncNames["lle_X_srand"] = lle_X_srand;