| # llvm-addr2line - a drop-in replacement for addr2line | |
| ```{program} llvm-addr2line | |
| ``` | |
| ## SYNOPSIS | |
| {program}`llvm-addr2line` \[*options*\] | |
| ## DESCRIPTION | |
| {program}`llvm-addr2line` is an alias for the {manpage}`llvm-symbolizer(1)` | |
| tool with different defaults. The goal is to make it a drop-in replacement for | |
| GNU's {program}`addr2line`. | |
| Here are some of those differences: | |
| - `llvm-addr2line` interprets all addresses as hexadecimal and ignores an | |
| optional `0x` prefix, whereas `llvm-symbolizer` attempts to determine | |
| the base from the literal's prefix and defaults to decimal if there is no | |
| prefix. | |
| - `llvm-addr2line` defaults not to print function names. Use `-f` to enable | |
| that. | |
| - `llvm-addr2line` defaults not to demangle function names. Use `-C` to | |
| switch the demangling on. | |
| - `llvm-addr2line` defaults not to print inlined frames. Use `-i` to show | |
| inlined frames for a source code location in an inlined function. | |
| - `llvm-addr2line` uses `--output-style=GNU` by default. | |
| - `llvm-addr2line` parses options from the environment variable | |
| `LLVM_ADDR2LINE_OPTS` instead of from `LLVM_SYMBOLIZER_OPTS`. | |
| - `llvm-addr2line` accepts an address with a '+' prefix, e.g. `+0x00777fff`. | |
| This is treated as a symbol name by `llvm-symbolizer`. | |
| ## SEE ALSO | |
| {manpage}`llvm-symbolizer(1)` | |
| [--output-style=gnu]: llvm-symbolizer.html#llvm-symbolizer-opt-output-style | |
| [-c]: llvm-symbolizer.html#llvm-symbolizer-opt-c | |
| [-f]: llvm-symbolizer.html#llvm-symbolizer-opt-f | |
| [-i]: llvm-symbolizer.html#llvm-symbolizer-opt-i |