mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-12-19 01:19:41 +08:00
We have a target board cc-with-gdb-index that uses the gdb-add-index script to add a .gdb_index index to an exec. There is however an alternative way of adding a .gdb_index: the index-cache. Add a new target board cc-with-index-cache. This is not superfluous for two reasons: - there is functionality that gdb-add-index doesn't support, but the index-cache does: the index-cache can add an index to an exec with a .gnu_debugaltlink (note that when using the cc-with-gdb-index board this case is quietly ignored), and - using the index-cache is excercised in only a few test-cases, and having this target board extends the test coverage to the entire test suite. This is for instance relevant because the index-cache is written by a worker thread in the background, so we can check more thoroughly for data races (see PR symtab/30837). Tested on x86_64-linux. Shell script changes checked with shellcheck. Approved-By: Tom Tromey <tom@tromey.com>
This is a collection of boards for GDB. The file gdb/testsuite/boards/README contains an overview of the boards. The idea is to group similar boards together, and have one line to describe a board. # Modify gdb default flags. readnow.exp Run gdb with -readnow. # Post-process executable. cc-with-gdb-index.exp Use gdb to create .gdb_index section. cc-with-debug-names.exp Use gdb to create .debug_names section. cc-with-dwz.exp Use dwz to compress debug info in executable. cc-with-dwz-m.exp Use dwz to compress debug info in executable, optionally moving debug info to a separate file. cc-with-gnu-debuglink.exp Use strip to move the debug info from executable to a separate file, and add a .gnu_debuglink to it. cc-with-tweaks.exp Base board used by all boards in this section, but can be used by itself, f.i. do more than one type of post-processing. # Modify debug_flags. debug-types.exp Add -fdebug-types-section. dwarf64.exp Add -gdwarf64. gold.exp Add -fuse-ld=gold. gold-gdb-index.exp Add -fuse-ld=gold -Wl,--gdb-index -ggnu-pubnames stabs.exp Add -gstabs+. # Test -gsplit-dwarf. fission.exp Set debug_flags to -gdwarf-4 -gsplit-dwarf -ggnu-pubnames -fdebug-types-section -Wl,--gdb-index -fuse-ld=gold. fission-dwp.exp As fission.exp, but also post-process executables to generate a .dwp file. # Test various things at the same time. dwarf4-gdb-index.exp Set debug_flags to -gdwarf-4 -fdebug-types-section, and post-process executable using gdb to create .gdb_index section. # [is_remote host] == 0 && [is_remote target] == 0. native-gdbserver.exp Test gdbserver using gdb_protocol remote. native-extended-gdbserver.exp Test gdbserver using gdb_protocol extended-remote. native-stdio-gdbserver.exp Test gdbserver using stdio connection. # [is_remote host] == 0 && [is_remote target] == 1. remote-gdbserver-on-localhost.exp Run gdbserver on remote target. remote-stdio-gdbserver.exp Run gdbserver on remote target, using stdio connection. # [is_remote host] == 1 && [is_remote target] == 0. # Note: need to pass the board with --host_board instead of --target_board. local-remote-host-notty.exp Run gdb on remote host in pseudo-terminal with "set editing off". local-remote-host.exp Run gdb on remote host in pseudo-terminal. # [is_remote host] == 1 && [is_remote target] == 1. # Note: need to pass the board with both --target_board and --host_board. local-remote-host-native.exp Run gdb on remote host, run gdbserver on remote target, with host == target. # Target-specific. simavr.exp Use simavr as target. # Base boards, mostly to be included by other boards, so no individual # description. stdio-gdbserver-base.exp gdbserver-base.exp local-board.exp