summaryrefslogtreecommitdiff
path: root/MLKLLVMCompiler.mm
diff options
context:
space:
mode:
authorMatthias Benkard <mulk@minimulk.mst-plus>2008-08-28 18:28:25 +0200
committerMatthias Benkard <mulk@minimulk.mst-plus>2008-08-28 18:28:25 +0200
commitcad01f32f911f1129675063cf0f1f57049c40116 (patch)
treed0a7f7e832d58187926c5fa3469df89cd33eb372 /MLKLLVMCompiler.mm
parent5f0f8e7c29b6812c1f7a2696d345a5dc7b1a217a (diff)
Listener: Execute code after reading it.
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();