Previously we only looked at the si_signo field, so you got:
(lldb) bt * thread #1, name = 'a.out.mte', stop reason = signal SIGSEGV * frame #0: 0x00000000004007f4
This patch adds si_code so we can show:
(lldb) bt * thread #1, name = 'a.out.mte', stop reason = signal SIGSEGV: sync tag check fault * frame #0: 0x00000000004007f4
The format matches that generated by Plugins/Process/POSIX/CrashReason,
which is used in native code. However we do not include the fault address
because (at least on Linux) the corefile doesn't include it.
The order of errno and code was incorrect in ElfLinuxSigInfo::Parse.
It was the order that a "swapped" siginfo arch would use, which for Linux,
is only MIPS. We removed MIPS Linux support some time ago.
I've only added the two memory tagging fault types so far but
this can be expanded to any signal easily.
clang-format not found in user’s local PATH; not linting file.