aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/compiler/qv4instr_moth_p.h
diff options
context:
space:
mode:
authorLars Knoll <lars.knoll@qt.io>2017-08-16 14:45:25 +0200
committerErik Verbruggen <erik.verbruggen@qt.io>2017-08-25 11:56:05 +0000
commit69a1018c9737751c2cc7daae2c03882dc81bd104 (patch)
treec0aa531dafbffcf0421454229a6bcd7f0aa828ee /src/qml/compiler/qv4instr_moth_p.h
parent29e1531252ef435086a2b84e20a8e83304ca30bc (diff)
Add optimized branch instructions for comparisons with ints
Change-Id: Ib5d5dc3b0e4a67b950ca9804edd3b6434fcdf9d1 Reviewed-by: Erik Verbruggen <erik.verbruggen@qt.io>
Diffstat (limited to 'src/qml/compiler/qv4instr_moth_p.h')
-rw-r--r--src/qml/compiler/qv4instr_moth_p.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/src/qml/compiler/qv4instr_moth_p.h b/src/qml/compiler/qv4instr_moth_p.h
index cb55e84442..c7e999e2e1 100644
--- a/src/qml/compiler/qv4instr_moth_p.h
+++ b/src/qml/compiler/qv4instr_moth_p.h
@@ -142,6 +142,8 @@ QT_BEGIN_NAMESPACE
F(JumpNe, jumpNe) \
F(CmpJmpEqNull, cmpJmpEqNull) \
F(CmpJmpNeNull, cmpJmpNeNull) \
+ F(CmpJmpEqInt, cmpJmpEqInt) \
+ F(CmpJmpNeInt, cmpJmpNeInt) \
F(CmpJmpEq, cmpJmpEq) \
F(CmpJmpNe, cmpJmpNe) \
F(CmpJmpGt, cmpJmpGt) \
@@ -580,6 +582,16 @@ union Instr
MOTH_INSTR_HEADER
ptrdiff_t offset;
};
+ struct instr_cmpJmpEqInt {
+ MOTH_INSTR_HEADER
+ int lhs;
+ ptrdiff_t offset;
+ };
+ struct instr_cmpJmpNeInt {
+ MOTH_INSTR_HEADER
+ int lhs;
+ ptrdiff_t offset;
+ };
struct instr_cmpJmpEq {
MOTH_INSTR_HEADER
StackSlot lhs;
@@ -800,6 +812,8 @@ union Instr
instr_jumpNe jumpNe;
instr_cmpJmpEqNull cmpJmpEqNull;
instr_cmpJmpNeNull cmpJmpNeNull;
+ instr_cmpJmpEqInt cmpJmpEqInt;
+ instr_cmpJmpNeInt cmpJmpNeInt;
instr_cmpJmpEq cmpJmpEq;
instr_cmpJmpNe cmpJmpNe;
instr_cmpJmpGt cmpJmpGt;