summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Andreas Benkard <matthias@benkard.de>2008-08-16 18:54:51 +0200
committerMatthias Andreas Benkard <matthias@benkard.de>2008-08-16 22:01:51 +0200
commit66168b73736dff38b6db98d08d8a1fbe255012a8 (patch)
treeec1e33b2e7fc77da8af0145cd21d69aae2c54478
parent82d94f911150e1c9df1d5a44aa52d85637227afa (diff)
MLKLexicalContext(MLKLLVMCompilation): Fix value types.
-rw-r--r--MLKLexicalContext-MLKLLVMCompilation.mm8
1 files changed, 6 insertions, 2 deletions
diff --git a/MLKLexicalContext-MLKLLVMCompilation.mm b/MLKLexicalContext-MLKLLVMCompilation.mm
index 2ff7ec0..9ca18e4 100644
--- a/MLKLexicalContext-MLKLLVMCompilation.mm
+++ b/MLKLexicalContext-MLKLLVMCompilation.mm
@@ -50,10 +50,14 @@ using namespace std;
-(Value *) functionCellValueForSymbol:(id)name
{
+ std::vector<const Type *> types (1, PointerType::get(Type::Int8Ty, 0));
return (new IntToPtrInst (ConstantInt::get(Type::Int64Ty,
(uint64_t)[self functionCellForSymbol:name],
false),
- PointerType::get(Type::Int8Ty, 0)));
+ PointerType::get(FunctionType::get(PointerType::get(Type::Int8Ty, 0),
+ types,
+ true),
+ 0)));
}
-(Value *) closureDataPointerValueForSymbol:(id)name
@@ -61,7 +65,7 @@ using namespace std;
return (new IntToPtrInst (ConstantInt::get(Type::Int64Ty,
(uint64_t)[self closureDataPointerForSymbol:name],
false),
- PointerType::get(Type::Int8Ty, 0)));
+ PointerType::get(PointerType::get(Type::Int8Ty, 0), 0)));
}
-(Value *) bindingValueForSymbol:(id)name