aboutsummaryrefslogtreecommitdiffstats
path: root/qv4ir_p.h
diff options
context:
space:
mode:
authorRoberto Raggi <roberto.raggi@nokia.com>2012-05-31 17:32:49 +0200
committerRoberto Raggi <roberto.raggi@nokia.com>2012-05-31 17:32:49 +0200
commitd65f9ddff1fd9c1aac037bb1163c6fbc7e9a637c (patch)
tree6d88cc36fd94b3db95d3a9fbc05ad0351b1fd82c /qv4ir_p.h
parent8ccb1e0e683b8c047a7ccfa068392873d72ca6c4 (diff)
Generalized instruction selection.
This will simplify the instruction selection pass for different architectures.
Diffstat (limited to 'qv4ir_p.h')
-rw-r--r--qv4ir_p.h36
1 files changed, 18 insertions, 18 deletions
diff --git a/qv4ir_p.h b/qv4ir_p.h
index c60c5def4b..31914265cb 100644
--- a/qv4ir_p.h
+++ b/qv4ir_p.h
@@ -171,28 +171,28 @@ const char *typeName(IR::Type t);
struct ExprVisitor {
virtual ~ExprVisitor() {}
- virtual void visitConst(Const *) {}
- virtual void visitString(String *) {}
- virtual void visitName(Name *) {}
- virtual void visitTemp(Temp *) {}
- virtual void visitClosure(Closure *) {}
- virtual void visitUnop(Unop *) {}
- virtual void visitBinop(Binop *) {}
- virtual void visitCall(Call *) {}
- virtual void visitNew(New *) {}
- virtual void visitSubscript(Subscript *) {}
- virtual void visitMember(Member *) {}
+ virtual void visitConst(Const *) = 0;
+ virtual void visitString(String *) = 0;
+ virtual void visitName(Name *) = 0;
+ virtual void visitTemp(Temp *) = 0;
+ virtual void visitClosure(Closure *) = 0;
+ virtual void visitUnop(Unop *) = 0;
+ virtual void visitBinop(Binop *) = 0;
+ virtual void visitCall(Call *) = 0;
+ virtual void visitNew(New *) = 0;
+ virtual void visitSubscript(Subscript *) = 0;
+ virtual void visitMember(Member *) = 0;
};
struct StmtVisitor {
virtual ~StmtVisitor() {}
- virtual void visitExp(Exp *) {}
- virtual void visitEnter(Enter *) {}
- virtual void visitLeave(Leave *) {}
- virtual void visitMove(Move *) {}
- virtual void visitJump(Jump *) {}
- virtual void visitCJump(CJump *) {}
- virtual void visitRet(Ret *) {}
+ virtual void visitExp(Exp *) = 0;
+ virtual void visitEnter(Enter *) = 0;
+ virtual void visitLeave(Leave *) = 0;
+ virtual void visitMove(Move *) = 0;
+ virtual void visitJump(Jump *) = 0;
+ virtual void visitCJump(CJump *) = 0;
+ virtual void visitRet(Ret *) = 0;
};
struct Expr {