llvm-addr2line - a drop-in replacement for addr2line


llvm-addr2line [options]


llvm-addr2line is an alias for the llvm-symbolizer(1) tool with different defaults. The goal is to make it a drop-in replacement for GNU’s 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.