diff options
| author | Thiago Macieira <thiago.macieira@intel.com> | 2024-01-22 09:56:14 -0800 |
|---|---|---|
| committer | Thiago Macieira <thiago.macieira@intel.com> | 2024-02-26 23:29:39 -0800 |
| commit | 03f1ea3dcb956c69216084d1df3a21f460c8475b (patch) | |
| tree | d1074939e7459cef9f476bbc07ca7dabade9ae24 /src/sql/doc/snippets/sqldatabase/sqldatabase.cpp | |
| parent | dc2ae08e02730ab795445bc047221aa56914f723 (diff) | |
tst_qmessagehandler: disable the backtrace tests outside of x86
As the comment says, on most RISC platforms, the return address need not
be on the stack in the first place. In fact, in all ones currently
supported by Qt, it's passed in a register to the callee, which has the
option of simply saving it in a callee-save register when calling leaf
functions. Even if it is using a frame pointer, the compiler can simply
use any register. That means unwinding the stack is not possible in the
absence of either debug information or stack-unwind information, neither
of which backtrace(3) will use.
Strictly speaking, even on x86 the compiler can use the RBP register for
any purpose and thus make getting the backtrace() impossible, but in
practice it seems to work.
Fixes: QTBUG-121389
Pick-to: 6.7
Change-Id: I5dd50a1a7ca5424d9e7afffd17acbd01ef916f5d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
Diffstat (limited to 'src/sql/doc/snippets/sqldatabase/sqldatabase.cpp')
0 files changed, 0 insertions, 0 deletions
