aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/compiler/qv4instr_moth_p.h
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@digia.com>2013-10-29 15:28:17 +0100
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-10-30 08:29:49 +0100
commit53a6d572e5ded9f559a7287e42a65328b4e8ba1b (patch)
tree8b45ebec1ae68a9fce78e0e907ec02650e7dbce7 /src/qml/compiler/qv4instr_moth_p.h
parent906d5c5c40183468f9521277c6244a6c46730de6 (diff)
Moth: Inline a couple of binops
This gives another 10-15% for v8-bench Change-Id: Iaea90402179813af23008c35d344fa7f5353cf5f Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Diffstat (limited to 'src/qml/compiler/qv4instr_moth_p.h')
-rw-r--r--src/qml/compiler/qv4instr_moth_p.h48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/qml/compiler/qv4instr_moth_p.h b/src/qml/compiler/qv4instr_moth_p.h
index f0b8983038..8dac616a2a 100644
--- a/src/qml/compiler/qv4instr_moth_p.h
+++ b/src/qml/compiler/qv4instr_moth_p.h
@@ -100,6 +100,12 @@ QT_BEGIN_NAMESPACE
F(Increment, increment) \
F(Decrement, decrement) \
F(Binop, binop) \
+ F(Add, add) \
+ F(BitAnd, bitAnd) \
+ F(BitOr, bitOr) \
+ F(BitXor, bitXor) \
+ F(Mul, mul) \
+ F(Sub, sub) \
F(BinopContext, binopContext) \
F(AddNumberParams, addNumberParams) \
F(MulNumberParams, mulNumberParams) \
@@ -474,6 +480,42 @@ union Instr
Param rhs;
Param result;
};
+ struct instr_add {
+ MOTH_INSTR_HEADER
+ Param lhs;
+ Param rhs;
+ Param result;
+ };
+ struct instr_bitAnd {
+ MOTH_INSTR_HEADER
+ Param lhs;
+ Param rhs;
+ Param result;
+ };
+ struct instr_bitOr {
+ MOTH_INSTR_HEADER
+ Param lhs;
+ Param rhs;
+ Param result;
+ };
+ struct instr_bitXor {
+ MOTH_INSTR_HEADER
+ Param lhs;
+ Param rhs;
+ Param result;
+ };
+ struct instr_mul {
+ MOTH_INSTR_HEADER
+ Param lhs;
+ Param rhs;
+ Param result;
+ };
+ struct instr_sub {
+ MOTH_INSTR_HEADER
+ Param lhs;
+ Param rhs;
+ Param result;
+ };
struct instr_binopContext {
MOTH_INSTR_HEADER
QV4::BinOpContext alu;
@@ -560,6 +602,12 @@ union Instr
instr_increment increment;
instr_decrement decrement;
instr_binop binop;
+ instr_add add;
+ instr_bitAnd bitAnd;
+ instr_bitOr bitOr;
+ instr_bitXor bitXor;
+ instr_mul mul;
+ instr_sub sub;
instr_binopContext binopContext;
instr_addNumberParams addNumberParams;
instr_mulNumberParams mulNumberParams;