blob: 99721206c37c791d451db66b4ae7df35c0f35a1f [file] [view] [edit]
# 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