aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@qt.io>2018-10-09 15:47:00 +0200
committerErik Verbruggen <erik.verbruggen@qt.io>2018-10-15 10:12:21 +0000
commit50be4991d205bd392d6998b6fec88bb92a9e9e9a (patch)
treea00dd879534876da1cc9fdbfefdd2cf4ba5159eb
parentfaebc96e4c21275d24204848d2a97259cf0dc6c5 (diff)
Store the instruction pointer in more instructions
So backtraces will show the correct line number. Change-Id: I6e79f6b3f461956f7f6d98743aff684b894426cf Reviewed-by: Lars Knoll <lars.knoll@qt.io>
-rw-r--r--src/qml/jsruntime/qv4vme_moth.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/qml/jsruntime/qv4vme_moth.cpp b/src/qml/jsruntime/qv4vme_moth.cpp
index 77dc222df7..29814246db 100644
--- a/src/qml/jsruntime/qv4vme_moth.cpp
+++ b/src/qml/jsruntime/qv4vme_moth.cpp
@@ -890,12 +890,14 @@ QV4::ReturnedValue VME::interpret(CppStackFrame *frame, ExecutionEngine *engine,
MOTH_END_INSTR(PopContext)
MOTH_BEGIN_INSTR(GetIterator)
+ STORE_IP();
STORE_ACC();
acc = Runtime::method_getIterator(engine, accumulator, iterator);
CHECK_EXCEPTION;
MOTH_END_INSTR(GetIterator)
MOTH_BEGIN_INSTR(IteratorNext)
+ STORE_IP();
STORE_ACC();
acc = Runtime::method_iteratorNext(engine, accumulator, &STACK_VALUE(value));
STACK_VALUE(done) = acc;
@@ -903,12 +905,14 @@ QV4::ReturnedValue VME::interpret(CppStackFrame *frame, ExecutionEngine *engine,
MOTH_END_INSTR(IteratorNext)
MOTH_BEGIN_INSTR(IteratorClose)
+ STORE_IP();
STORE_ACC();
acc = Runtime::method_iteratorClose(engine, accumulator, STACK_VALUE(done));
CHECK_EXCEPTION;
MOTH_END_INSTR(IteratorClose)
MOTH_BEGIN_INSTR(DestructureRestElement)
+ STORE_IP();
STORE_ACC();
acc = Runtime::method_destructureRestElement(engine, ACC);
CHECK_EXCEPTION;