[Ltrace-devel] [RFC][PATCH] Add support for mips64 n32/n64
Faraz Shahbazker
faraz.shahbazker at imgtec.com
Mon May 18 15:40:07 UTC 2015
Test PASS/FAIL counts:
o32 ltrace | o32 tests: 198 / 160
n32 ltrace | n32 tests: 187 / 159
n32 ltrace | o32 tests: 185 / 162
n64 ltrace | n64 tests: 160 / 185
n64 ltrace | n32 tests: 166 / 179
n64 ltrace | o32 tests: 164 / 181
Results were almost identical for PLT/no-PLT modes.
Some of the failures were due to deficiences of my test machine. For example, I couldn't get demangling & preload tests to build correctly in 64-bit mode due to link issues. However, the biggest cause of failures is lack of the new-style fetch backend - aggregate types over dword-size trigger an assert failure in many tests. A second would be lack of proper floating-point support.
Other known issues, due to features currently missing in the mips toolchain:
1. IFUNC support
2. Access to r_debug structure in PIE mode
Please review & comment.
Regards,
Faraz Shahbazker (1):
Add support for mips64 n32/n64
backend.h | 8 +
ltrace-elf.c | 12 ++
proc.h | 1 +
sysdeps/linux-gnu/mips/Makefile.am | 1 +
sysdeps/linux-gnu/mips/abi.c | 64 +++++++
sysdeps/linux-gnu/mips/arch.h | 24 ++-
sysdeps/linux-gnu/mips/plt.c | 68 +++++--
sysdeps/linux-gnu/mips/signalent1.h | 52 ++++++
sysdeps/linux-gnu/mips/syscallent1.h | 328 ++++++++++++++++++++++++++++++++++
sysdeps/linux-gnu/mips/trace.c | 241 +++++++++++++++++++------
sysdeps/linux-gnu/mksyscallent_mips | 9 +-
11 files changed, 728 insertions(+), 80 deletions(-)
create mode 100644 sysdeps/linux-gnu/mips/abi.c
create mode 100644 sysdeps/linux-gnu/mips/signalent1.h
create mode 100644 sysdeps/linux-gnu/mips/syscallent1.h
-- 1.7.9.5
More information about the Ltrace-devel
mailing list