diff options
Diffstat (limited to 'src/qml/jit/qv4assemblercommon_p.h')
-rw-r--r-- | src/qml/jit/qv4assemblercommon_p.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/qml/jit/qv4assemblercommon_p.h b/src/qml/jit/qv4assemblercommon_p.h index c17fdd3a23..3e70457bd8 100644 --- a/src/qml/jit/qv4assemblercommon_p.h +++ b/src/qml/jit/qv4assemblercommon_p.h @@ -587,7 +587,7 @@ public: Address loadCompilationUnitPtr(RegisterID target) { Address addr = loadFunctionPtr(target); - addr.offset = offsetof(QV4::Function, compilationUnit); + addr.offset = offsetof(QV4::FunctionData, compilationUnit); loadPtr(addr, target); return Address(target); } @@ -670,7 +670,8 @@ public: void addLabelForOffset(int offset) { - labelForOffset.insert(offset, label()); + if (!labelForOffset.contains(offset)) + labelForOffset.insert(offset, label()); } void addJumpToOffset(const Jump &jump, int offset) @@ -699,6 +700,7 @@ public: void passAddressAsArg(Address addr, int arg); void passCppFrameAsArg(int arg); void passInt32AsArg(int value, int arg); + void passPointerAsArg(void *ptr, int arg); void callRuntime(const char *functionName, const void *funcPtr); void callRuntimeUnchecked(const char *functionName, const void *funcPtr); void tailCallRuntime(const char *functionName, const void *funcPtr); |