diff options
author | Lars Knoll <lars.knoll@digia.com> | 2013-10-29 15:28:17 +0100 |
---|---|---|
committer | The Qt Project <gerrit-noreply@qt-project.org> | 2013-10-30 08:29:49 +0100 |
commit | 53a6d572e5ded9f559a7287e42a65328b4e8ba1b (patch) | |
tree | 8b45ebec1ae68a9fce78e0e907ec02650e7dbce7 /src/qml/compiler/qv4instr_moth_p.h | |
parent | 906d5c5c40183468f9521277c6244a6c46730de6 (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.h | 48 |
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; |