From 50be4991d205bd392d6998b6fec88bb92a9e9e9a Mon Sep 17 00:00:00 2001 From: Erik Verbruggen Date: Tue, 9 Oct 2018 15:47:00 +0200 Subject: Store the instruction pointer in more instructions So backtraces will show the correct line number. Change-Id: I6e79f6b3f461956f7f6d98743aff684b894426cf Reviewed-by: Lars Knoll --- src/qml/jsruntime/qv4vme_moth.cpp | 4 ++++ 1 file changed, 4 insertions(+) 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; -- cgit v1.2.3