diff options
Diffstat (limited to 'lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp')
-rw-r--r-- | lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp b/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp index 7be3336c58..bcd584a6b5 100644 --- a/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp +++ b/lib/ExecutionEngine/Interpreter/ExternalFunctions.cpp @@ -110,9 +110,10 @@ GenericValue lle_X_print(MethodType *M, const vector<GenericValue> &ArgVals) { GenericValue lle_X_printVal(MethodType *M, const vector<GenericValue> &ArgVal) { assert(ArgVal.size() == 1 && "generic print only takes one argument!"); - // Specialize print([ubyte {x N} ] *) + // Specialize print([ubyte {x N} ] *) and print(sbyte *) if (PointerType *PTy = dyn_cast<PointerType>(M->getParamTypes()[0].get())) - if (const ArrayType *ATy = dyn_cast<ArrayType>(PTy->getValueType())) { + if (PTy->getValueType() == Type::SByteTy || + isa<ArrayType>(PTy->getValueType())) { return lle_VP_printstr(M, ArgVal); } @@ -132,4 +133,9 @@ GenericValue lle_VB_putchar(MethodType *M, const vector<GenericValue> &Args) { return GenericValue(); } +// void "__main"() +GenericValue lle_V___main(MethodType *M, const vector<GenericValue> &Args) { + return GenericValue(); +} + } // End extern "C" |