summaryrefslogtreecommitdiff
path: root/MLKLLVMCompiler.mm
diff options
context:
space:
mode:
Diffstat (limited to 'MLKLLVMCompiler.mm')
-rw-r--r--MLKLLVMCompiler.mm4
1 files changed, 3 insertions, 1 deletions
diff --git a/MLKLLVMCompiler.mm b/MLKLLVMCompiler.mm
index 4a672a0..b40d4d0 100644
--- a/MLKLLVMCompiler.mm
+++ b/MLKLLVMCompiler.mm
@@ -518,6 +518,8 @@ static Constant
args.begin(),
args.end(),
[MLKPrintToString(_head) UTF8String]);
+ call->setCallingConv(CallingConv::C);
+ call->setTailCall(true);
// XXX
if ([_context functionIsInline:_head])
@@ -539,7 +541,7 @@ static Constant
FunctionType *ftype = FunctionType::get (PointerTy, argtypes, true);
Function *function = Function::Create (ftype,
Function::InternalLinkage,
- "",
+ "a_lisp_closure_body",
module);
Function::arg_iterator args = function->arg_begin();