PIE (Position Independent Executables) support status
Jan Kratochvil
jan.kratochvil@redhat.com
Thu Jan 14 21:59:00 GMT 2010
Hi,
checked-in the major part of PIE which (should) have no regressions.
There are some remaining parts still not checked-in to improve/complete the
PIE support in various corner cases:
64bit debugger -> 32bit inferior PIE support is now broken, specific patchset
will depend on the resolution of
[01/03] Update target_gdbarch for current inferior
http://sourceware.org/ml/gdb-patches/2010-01/msg00228.html
for
[03/03] Make breakpoint_address_match gdbarch_addr_bit-aware
http://sourceware.org/ml/gdb-patches/2010-01/msg00230.html
+ some unsubmitted parts.
For keeping breakpoints disabled after re-run even for PIEs:
[patch] objfile_relocate: Keep multi-loc bpts disabled
http://sourceware.org/ml/gdb-patches/2010-01/msg00238.html
gdb.base/reread.exp may not work well enough for PIEs but the GDB code was not
currect even for non-PIE cases; I have to recheck it now after Tristan
Gingold's changes of the GDB code. I have some additional local Fedora
patches for it but they do not look right enough for a submit.
FIELD_LOC_KIND_PHYSADDR is currently not properly relocated by
objfile_relocate (as it even cannot enumerate such fields). But current FSF
GDB does not use it (except in some IMO rare Java case I do not understand).
It is used for Fortran common blocks support (command `info common') but that
patch is not yet submitted.
I run regularly the whole testsuite for both /-m64 and cross-arch /-m32 with
check//unix/-fPIE/-pie although the new testcase gdb.base/break-interp.exp
should be testing the PIE support well enough even during the default
testsuite options run.
Thanks,
Jan
More information about the Gdb
mailing list