diff options
author | David Robillard <d@drobilla.net> | 2010-12-27 22:48:00 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2010-12-27 22:48:00 +0000 |
commit | cce4f16e87870eae8a1c3f430c9617cefd55fe54 (patch) | |
tree | 79dbeec5b3368045b36719b63d24ea1bc9ef150f /src/llvm.cpp | |
parent | 1a8107c0156e1615fbdbe009f30d8e66cb280c03 (diff) | |
download | resp-cce4f16e87870eae8a1c3f430c9617cefd55fe54.tar.gz resp-cce4f16e87870eae8a1c3f430c9617cefd55fe54.tar.bz2 resp-cce4f16e87870eae8a1c3f430c9617cefd55fe54.zip |
Remove weird __tag_is form by adding a T_LITSYM type and using = operator.
Step towards having first class symbols...
git-svn-id: http://svn.drobilla.net/resp/resp@362 ad02d1e2-f140-0410-9f75-f8b11f17cedd
Diffstat (limited to 'src/llvm.cpp')
-rw-r--r-- | src/llvm.cpp | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/src/llvm.cpp b/src/llvm.cpp index 6ef25bb..f6874d7 100644 --- a/src/llvm.cpp +++ b/src/llvm.cpp @@ -67,7 +67,6 @@ struct LLVMEngine : public Engine { CVal compileGlobalSet(CEnv& cenv, const string& s, CVal v, const AST* t); CVal compileGlobalGet(CEnv& cenv, const string& s, CVal v); CVal compileIf(CEnv& cenv, const AST* cond, const AST* then, const AST* aelse); - CVal compileIsA(CEnv& cenv, CVal rtti, CVal tag); CVal compileLiteral(CEnv& cenv, const AST* lit); CVal compilePrimitive(CEnv& cenv, const ATuple* prim); CVal compileString(CEnv& cenv, const char* str); @@ -365,15 +364,6 @@ LLVMEngine::compileIf(CEnv& cenv, const AST* cond, const AST* then, const AST* a } CVal -LLVMEngine::compileIsA(CEnv& cenv, CVal rtti, CVal tag) -{ - LLVMEngine* engine = reinterpret_cast<LLVMEngine*>(cenv.engine()); - Value* typeV = llVal(tag); - - return engine->builder.CreateICmp(CmpInst::ICMP_EQ, llVal(rtti), typeV); -} - -CVal LLVMEngine::compilePrimitive(CEnv& cenv, const ATuple* prim) { ATuple::const_iterator i = prim->iter_at(1); |