diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2018-11-08 18:09:21 +0100 |
---|---|---|
committer | Ulf Hermann <ulf.hermann@qt.io> | 2018-12-03 08:28:36 +0000 |
commit | 74d23ca548b47c85c4b8cdde5fd5a9026e4eb08c (patch) | |
tree | caf94cffe04b7c6235ccfd5f117b17187733752b /src/3rdparty/masm/stubs | |
parent | faf99c36d29bfad629fb6ec541ccc2f61ef93443 (diff) |
V4: Generate function tables on 64bit windows
In order for global exception handlers to be called reliably, the runtime
needs to unwind through JIT-generated code. This can be facilitated by
installing a "function table" for each JITed function that specifies "use
the frame pointer".
Also make sure to generate a function table for JIT'ed regular
expressions. Those were forgotten also in the linux case.
Fixes: QTBUG-50061
Change-Id: Ib0b8ae9356ed80afe1cab017e36efa4ccbe73f90
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/3rdparty/masm/stubs')
-rw-r--r-- | src/3rdparty/masm/stubs/ExecutableAllocator.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/src/3rdparty/masm/stubs/ExecutableAllocator.h b/src/3rdparty/masm/stubs/ExecutableAllocator.h index 156b24b4e8..a439c53827 100644 --- a/src/3rdparty/masm/stubs/ExecutableAllocator.h +++ b/src/3rdparty/masm/stubs/ExecutableAllocator.h @@ -82,6 +82,7 @@ struct ExecutableMemoryHandle : public RefCounted<ExecutableMemoryHandle> { inline bool isManaged() const { return true; } + void *exceptionHandler() { return m_allocation->exceptionHandler(); } void *start() { return m_allocation->start(); } size_t sizeInBytes() { return m_size; } |