aboutsummaryrefslogtreecommitdiffstats
path: root/qv4isel_llvm_p.h
diff options
context:
space:
mode:
authorRoberto Raggi <roberto.raggi@nokia.com>2012-06-05 12:15:41 +0200
committerRoberto Raggi <roberto.raggi@nokia.com>2012-06-05 12:28:58 +0200
commit9551c6527abb7da3ed72034b1e9eb366e334b940 (patch)
tree4478a0c4d9c676e037aae3d469a51fee5fae8fb8 /qv4isel_llvm_p.h
parentbf46892ccd34d161fc7053799bd8682cb9711197 (diff)
Some more work on the LLVM-based AOT compiler.
Diffstat (limited to 'qv4isel_llvm_p.h')
-rw-r--r--qv4isel_llvm_p.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/qv4isel_llvm_p.h b/qv4isel_llvm_p.h
index 8c0a5af28f..02eb25e151 100644
--- a/qv4isel_llvm_p.h
+++ b/qv4isel_llvm_p.h
@@ -22,6 +22,7 @@ public:
llvm::Value *getLLVMValue(IR::Expr *expr);
llvm::Value *getLLVMCondition(IR::Expr *expr);
llvm::Value *getLLVMTemp(IR::Temp *temp);
+ llvm::Value *getStringPtr(const QString &s);
virtual void visitExp(IR::Exp *);
virtual void visitEnter(IR::Enter *);
@@ -49,13 +50,15 @@ private:
llvm::Value *_llvmValue;
llvm::Type *_numberTy;
llvm::Type *_valueTy;
- llvm::Type *_contextTy;
+ llvm::Type *_contextPtrTy;
+ llvm::Type *_stringPtrTy;
llvm::FunctionType *_functionTy;
IR::Function *_function;
IR::BasicBlock *_block;
QHash<IR::Function *, llvm::Function *> _functionMap;
QHash<IR::BasicBlock *, llvm::BasicBlock *> _blockMap;
QVector<llvm::Value *> _tempMap;
+ QHash<QString, llvm::Value *> _stringMap;
};
} // end of namespace QQmlJS