Fix crash when running QtCore: Stack is misaligned on x86-64
When our ELF entry point function is started by the kernel, the stack is aligned at 16 bytes. However, the stack is expected to be off by 8, due to a preceding CALL instruction which didn't exist. This cauases a crash further down as the compiler may generate aligned stack access. Change-Id: I1496b069cc534f1a838dfffd15c9dc4ef9e3869e Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
This commit is contained in:
parent
5aa13ea144
commit
9328058071
@ -709,10 +709,14 @@ QT_END_NAMESPACE
|
||||
|
||||
#include "private/qcoreapplication_p.h"
|
||||
|
||||
QT_WARNING_DISABLE_GCC("-Wattributes")
|
||||
QT_WARNING_DISABLE_CLANG("-Wattributes")
|
||||
QT_WARNING_DISABLE_INTEL(2621)
|
||||
|
||||
extern const char qt_core_interpreter[] __attribute__((section(".interp")))
|
||||
= ELF_INTERPRETER;
|
||||
|
||||
extern "C" void qt_core_boilerplate();
|
||||
extern "C" void qt_core_boilerplate() __attribute__((force_align_arg_pointer));
|
||||
void qt_core_boilerplate()
|
||||
{
|
||||
printf("This is the QtCore library version " QT_BUILD_STR "\n"
|
||||
|
Loading…
x
Reference in New Issue
Block a user