LLVM-READELF(1)

πŸ“¦
version 12.0.1 Β· 4 versions
, in fedora 43, fedora 44

πŸ’– NAME πŸ’–

llvm-readelf β€” bestie, it's the GNU-style LLVM Object Reader πŸŽ€

Like, it reads object files and tells you everything about them. Obsessed.


✨ SYNOPSIS ✨

llvm-readelf [options] [input...]

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so. llvm-readelf is the tool that spills ALL the tea about one or more object files β€” it shows you low-level, format-specific info. low-level as in deep in the bytes, bestie, not "kinda basic" πŸ’…

And if input is -, it just reads straight from standard input like a little icon. Otherwise? It reads from the filenames you gave it. Simple as that. ✨


🌸 OPTIONS 🌸

  • --all β€” literally the "give me everything" button. Equivalent to specifying all the main display options. ate. πŸ‘‘
  • --addrsig β€” shows the address-significance table.
  • --arch-specific, -A β€” shows architecture-specific info, like the ARM attributes section on ARM. iykyk 🧚
  • --color β€” colors in the output for warnings and errors. pretty and useful, no cap.
  • --demangle, -C β€” shows demangled symbol names in the output, so your eyes don't suffer 😭
  • --dyn-relocations β€” shows the dynamic relocation entries.
  • --dyn-symbols, --dyn-syms β€” shows the dynamic symbol table.
  • --dynamic-table, --dynamic, -d β€” shows the dynamic table.
  • --cg-profile β€” shows the callgraph profile section.
  • --elf-hash-histogram, --histogram, -I β€” shows a bucket list histogram for dynamic symbol hash tables.
  • --elf-linker-options β€” shows the linker options section.
  • --elf-output-style=<value> β€” formats ELF info in the style you pick. Valid options are LLVM and GNU. LLVM output is an expanded and structured format, whilst GNU (the default, bestie β€” that's the one you get if you say nothing) mimics the equivalent GNU readelf output.
  • --elf-section-groups, --section-groups, -g β€” shows section groups.
  • --expand-relocs β€” when you use it with --relocations, it shows each relocation in an expanded multi-line format. roomy. 🌈
  • --file-headers, -h β€” shows file headers.
  • --gnu-hash-table β€” shows the GNU hash table for dynamic symbols.
  • --hash-symbols β€” shows the expanded hash table with dynamic symbol data.
  • --hash-table β€” shows the hash table for dynamic symbols.
  • --headers, -e β€” Equivalent to setting: --file-headers, --program-headers, and --sections. three-for-one deal, slay πŸ’…
  • --help β€” shows a summary of command line options.
  • --help-list β€” shows an uncategorized summary of command line options.
  • --hex-dump=<section[,section,...]>, -x β€” shows the specified section(s) as hexadecimal bytes. section may be a section index or section name. yes you can comma-separate them, go off πŸ“
  • --needed-libs β€” shows the needed libraries.
  • --notes, -n β€” shows all notes.
  • --program-headers, --segments, -l β€” shows the program headers.
  • --raw-relr β€” do NOT decode relocations in RELR relocation sections when displaying them. it's giving raw, unprocessed, feral πŸ’€
  • --relocations, --relocs, -r β€” shows the relocation entries in the file.
  • --sections, --section-headers, -S β€” shows all sections.
  • --section-data β€” when you use it with --sections, it shows section data for each section shown. ⚠️ heads up bestie: this option has no effect for GNU style output.
  • --section-details, -t β€” shows all section details. used as an alternative to --sections.
  • --section-mapping β€” shows the section to segment mapping.
  • --section-relocations β€” when you use it with --sections, it shows relocations for each section shown. ⚠️ again: this option has no effect for GNU style output.
  • --section-symbols β€” when you use it with --sections, it shows symbols for each section shown. ⚠️ and once more: this option has no effect for GNU style output.
  • --stackmap β€” shows contents of the stackmap section.
  • --stack-sizes β€” shows the contents of the stack sizes section(s), i.e. pairs of function names and the size of their stack frames. Currently only implemented for GNU style output. πŸ‘‘
  • --string-dump=<section[,section,...]>, -p β€” shows the specified section(s) as a list of strings. section may be a section index or section name.
  • --symbols, --syms, -s β€” shows the symbol table.
  • --unwind, -u β€” shows unwind information.
  • --version β€” shows the version of the llvm-readelf executable.
  • --version-info, -V β€” shows version sections.
  • @<FILE> β€” reads command-line options from response file <FILE>. cute little shortcut, we love her 🫢

πŸ”₯ EXIT STATUS πŸ”₯

llvm-readelf returns 0 under normal operation. It returns a non-zero exit code if there were any errors. so if it's not 0, something went sideways, bestie 😭


🌈 SEE ALSO 🌈

llvm-nm(1), llvm-objdump(1), llvm-readobj(1)

the whole friend group fr fr πŸ’œ


πŸ‘‘ AUTHOR πŸ‘‘

Maintained by the LLVM Team (https://llvm.org/). iconic behavior, no notes.


2003-2024, LLVM Project


okay that's the whole page, bestie!! this was LLVM, dated 2024-07-18, page 12 energy only πŸ’– mwah, go read some object files βœ¨πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from