aboutsummaryrefslogtreecommitdiff
path: root/gdb/jit.c
diff options
context:
space:
mode:
authorChristina Schimpe <christina.schimpe@intel.com>2022-12-15 08:50:21 +0100
committerSchimpe, Christina <christina.schimpe@intel.com>2024-11-18 13:35:52 +0000
commit86bb38cee9399c4092e6fc5f280d296fab7e3327 (patch)
tree14b8b3182dd8f6404e429db18a25ff03f52af62a /gdb/jit.c
parent335cb88259f60a50b96da84c90559ec6a149eb04 (diff)
downloadbinutils-86bb38cee9399c4092e6fc5f280d296fab7e3327.zip
binutils-86bb38cee9399c4092e6fc5f280d296fab7e3327.tar.gz
binutils-86bb38cee9399c4092e6fc5f280d296fab7e3327.tar.bz2
gdb: Make tagged pointer support configurable.
The gdbarch function gdbarch_remove_non_address_bits adjusts addresses to enable debugging of programs with tagged pointers on Linux, for instance for ARM's feature top byte ignore (TBI). Once the function is implemented for an architecture, it adjusts addresses for memory access, breakpoints and watchpoints. Linear address masking (LAM) is Intel's (R) implementation of tagged pointer support. It requires certain adaptions to GDB's tagged pointer support due to the following: - LAM supports address tagging for data accesses only. Thus, specifying breakpoints on tagged addresses is not a valid use case. - In contrast to the implementation for ARM's TBI, the Linux kernel supports tagged pointers for memory access. This patch makes GDB's tagged pointer support configurable such that it is possible to enable the address adjustment for a specific feature only (e.g memory access, breakpoints or watchpoints). This way, one can make sure that addresses are only adjusted when necessary. In case of LAM, this avoids unnecessary parsing of the /proc/<pid>/status file to get the untag mask. Reviewed-By: Felix Willgerodt <felix.willgerodt@intel.com> (AArch64) Tested-By: Luis Machado <luis.machado@arm.com> Approved-By: Luis Machado <luis.machado@arm.com>
Diffstat (limited to 'gdb/jit.c')
0 files changed, 0 insertions, 0 deletions