LLVM-ADDR2LINE(1)

🌸 NAME 🌸

okay bestie, say hi to llvm-addr2line β€” it's literally a drop-in replacement for addr2line. that's the whole vibe. πŸ’–


πŸŽ€ SYNOPSIS πŸŽ€

llvm-addr2line [options]

✨ DESCRIPTION ✨

so here's the tea πŸ«–: llvm-addr2line is an alias for the llvm-symbolizer(1) tool, except it rolls with a different set of defaults. the entire goal of this thing? to be a drop-in replacement for GNU's addr2line. no cap. it just slots in and goes. πŸ‘‘

here are some of those differences, and yes you need all of them:

  • llvm-addr2line reads all addresses as hexadecimal and ignores an optional 0x prefix β€” meanwhile llvm-symbolizer tries to figure out the base from whatever prefix the literal is wearing, and if there's no prefix at all it just defaults to decimal. 😭 (yes really)
  • llvm-addr2line defaults to not printing function names. want them? pass -f. that's it. πŸ’…
  • llvm-addr2line defaults to not demangling function names. flip the demangling on with -C. πŸ¦‹
  • llvm-addr2line defaults to not printing inlined frames. use -i to show inlined frames for a source code location inside an inlined function. 🧚
  • llvm-addr2line uses --output-style=GNU by default. periodt.
  • llvm-addr2line pulls its options from the environment variable LLVM_ADDR2LINE_OPTS β€” not from LLVM_SYMBOLIZER_OPTS. different env var, bestie, don't mix them up. πŸ™ˆ

πŸ‘€ SEE ALSO πŸ‘€


πŸ’œ AUTHOR πŸ’œ

Maintained by the LLVM Team (<https://llvm.org/>). iconic behavior fr fr. 🫢


2003-2025, LLVM Project


okay that's the whole page, you ate it up bestie ✨ this was the LLVM 20 edition, dated 2025-09-03 β€” go forth and symbolize, mwah πŸ’‹πŸŽ€

πŸ“¦ where this page comes from