llvm-project
d8e86a5c - [dsymutil] Add option to filter debug map objects by allow/disallow-list (#182083)

Commit
46 days ago
[dsymutil] Add option to filter debug map objects by allow/disallow-list (#182083) # Motivation When using `dsymutil` to generate dSYM for large binaries, sometimes we want to keep only some of the object files. This has the benefits of reduced dSYM size and improved performance of LLDB and other tools which consume the dSYM. The current way to achieve this is to use YAML input (the `dsymutil -y` option). However, it doesn't really solve the problem: 1. The whole debug map has to be parsed somewhere else first, before filtered down to the wanted parts. 2. Said info is written then read by `dsymutil`. The I/O is redundant. # Change This patch propose a new way, by adding new options (`dsymutil --allow <path>` and `--disallow <path>`), which will only process object files that pass the allow/disallow list. Important details: * The input file is YAML. See test files for format. * Currently, only object files are filtered. The design allows to extend the filtering to other aspects of the debug map in the future (e.g. functions). * If `--oso-prepend-path` is specified, it applies to the entries in the input file. I.e. Entries in the input file should exact match that of N_OSO entries.
Author
Parents
Loading