6#include <assembler/MacroAssemblerCodeRef.h>
8#include <QtCore/qdebug.h>
73 codeRef->executableMemory()->exceptionHandlerStart());
77 record->info.SizeOfProlog = 4;
78 record->info.CountOfUnwindCodes = 2;
80 record->info.FrameRegisterOffset = 0;
88 const quintptr codeSize = codeRef->size();
94 if (!RtlAddFunctionTable(&
record->handler, 1, DWORD64(
record))) {
95 const unsigned int errorCode = GetLastError();
96 qWarning() <<
"Failed to install win64 unwind hook. Error code:" << errorCode;
102 ExceptionHandlerRecord *
record =
reinterpret_cast<ExceptionHandlerRecord *
>(
103 codeRef->executableMemory()->exceptionHandlerStart());
104 if (!RtlDeleteFunctionTable(&
record->handler)) {
105 const unsigned int errorCode = GetLastError();
106 qWarning() <<
"Failed to remove win64 unwind hook. Error code:" << errorCode;
112 return sizeof(ExceptionHandlerRecord);
Combined button and popup list for selecting options.
\qmltype Particle \inqmlmodule QtQuick.Particles
size_t exceptionHandlerSize()
void generateFunctionTable(Function *function, JSC::MacroAssemblerCodeRef *codeRef)
void destroyFunctionTable(Function *function, JSC::MacroAssemblerCodeRef *codeRef)
GLenum GLuint GLintptr offset
QFileInfo info(fileName)
[8]
UnwindCode(UINT8 offset, UnwindOpcode operation, Register info)
UnwindCode UnwindCodes[2]
UINT8 FrameRegisterOffset