LLVM-READOBJ(1)

๐Ÿ’… LLVM-READOBJ(1) โ€” the LLVM Object Reader, explained by your local Unix bestie

okay so first things first: this whole vibe is from the LLVM manual, and the tool is llvm-readobj, and honestly? she's that girl who opens up an object file and reads you its whole diary. let's go ๐Ÿซถ

โœจ NAME โœจ

llvm-readobj โ€” the LLVM Object Reader. that's it, that's the name, and yes she ate ๐Ÿ’…

๐ŸŒธ SYNOPSIS ๐ŸŒธ

llvm-readobj [options] [input...]

๐Ÿฆ‹ DESCRIPTION ๐Ÿฆ‹

so the llvm-readobj tool shows you low-level, format-specific information about one or more object files. like, the deep nerdy details, not the surface-level stuff. it's giving x-ray vision, fr fr.

if input is -, then llvm-readobj reads from standard input. otherwise it reads from the filenames you specified. simple as that ๐Ÿ’–

๐ŸŽ€ DIFFERENCES TO LLVM-READELF ๐ŸŽ€

okay so llvm-readelf is an alias for the llvm-readobj <llvm-readobj.html> tool, but with a slightly different command-line interface and GNU-compatible output. here's the full rundown of how they differ, no cap:

  • llvm-readelf uses GNU for the --elf-output-style option by default. llvm-readobj uses LLVM.
  • llvm-readelf allows single-letter grouped flags (e.g. llvm-readelf -SW is the same as llvm-readelf -S -W). llvm-readobj does not allow grouping. she said one at a time pls ๐Ÿ™ˆ
  • llvm-readelf provides -s as an alias for --symbols, for GNU readelf compatibility, whereas in llvm-readobj it's an alias for --section-headers. literally the same letter, different personality ๐Ÿ’€
  • llvm-readobj provides -t as an alias for --symbols. llvm-readelf does not.
  • llvm-readobj provides --sr, --sd, --st and --dt as aliases for --section-relocations, --section-data, --section-symbols and --dyn-symbols respectively. llvm-readelf does not provide these aliases, to avoid conflicting with grouped flags. iconic precaution tbh ๐Ÿ‘‘

โญ GENERAL AND MULTI-FORMAT OPTIONS โญ

these options apply to more than one file format, or honestly aren't related to file formats at all. they're the social butterflies of the option list ๐Ÿฆ‹

  • --addrsig โ€” Display the address-significance table.
  • --all โ€” Equivalent to specifying all the main display options relevant to the file format. she does the most, on purpose โœจ
  • --decompress, -z โ€” Dump decompressed section content when used with -x or -p. If the section(s) are not compressed, they are displayed as is.
  • --demangle, -C โ€” Display demangled symbol names in the output. This option is only for ELF and XCOFF file formats.
  • --expand-relocs โ€” When used with --relocs, display each relocation in an expanded multi-line format. roomy ๐Ÿ’…
  • --file-header, -h โ€” Display file headers.
  • --headers, -e โ€” Equivalent to setting: --file-header, --program-headers, and --sections.
  • --help โ€” Display a summary of command line options.
  • --hex-dump=<section[,section,...]>, -x โ€” Display the specified section(s) as hexadecimal bytes. section may be a section index or section name.
  • --needed-libs โ€” Display the needed libraries.
  • --no-demangle โ€” Do not demangle symbol names in the output. This option is only for ELF and XCOFF file formats. The option is enabled by default.
  • --offloading โ€” Display list of HIP offload bundles.
  • --relocations, --relocs, -r โ€” Display the relocation entries in the file.
  • --section-data, --sd โ€” When used with --sections, display section data for each section shown. This option has no effect for GNU style output.
  • --section-relocations, --sr โ€” When used with --sections, display relocations for each section shown. This option has no effect for GNU style output.
  • --sections, --section-headers, -S โ€” Display all sections.
  • --section-symbols, --st โ€” When used with --sections, display symbols for each section shown. This option has no effect for GNU style output.
  • --sort-symbols=<sort_key[,sort_key]> โ€” Specify the keys to sort symbols before displaying symtab. Valid values for sort_key are name and type.
  • --stackmap โ€” Display contents of the stackmap section.
  • --string-dump=<section[,section,...]>, -p โ€” Display the specified section(s) as a list of strings. section may be a section index or section name.
  • --string-table โ€” Display contents of the string table.
  • --symbols, --syms, -s โ€” Display the symbol table.
  • --unwind, -u โ€” Display unwind information.
  • --version โ€” Display the version of the llvm-readobj executable.
  • @<FILE> โ€” Read command-line options from response file <FILE>.

๐Ÿ’œ ELF SPECIFIC OPTIONS ๐Ÿ’œ

these ones are implemented only for the ELF file format. ELF girlies, this is your moment ๐ŸŒˆ

  • --arch-specific, -A โ€” Display architecture-specific information, e.g. the ARM attributes section on ARM.
  • --bb-addr-map โ€” Display the contents of the basic block address map section(s), which contain the address of each function, along with the relative offset of each basic block.

When pgo analysis maps are present, all analyses are printed as their raw value.

  • --call-graph-info โ€” Display the call graph section entries i.e. for each function its identifying information, each of its direct callees' information and for each indirect callee a 64-bit number representing the callee's function signature. This information can be used to reconstruct the program call graph. the whole friend group tree, rendered ๐Ÿ”ฅ
  • --cg-profile โ€” Display the callgraph profile section.
  • --dependent-libraries โ€” Display the dependent libraries section.
  • --dynamic-table, --dynamic, -d โ€” Display the dynamic table.
  • --dyn-relocations โ€” Display the dynamic relocation entries.
  • --dyn-symbols, --dyn-syms, --dt โ€” Display the dynamic symbol table.
  • --elf-linker-options โ€” Display the linker options section.
  • --elf-output-style=<value> โ€” Format ELF information in the specified style. Valid options are LLVM, GNU, and JSON. LLVM output (the default) is an expanded and structured format. GNU output mimics the equivalent GNU readelf output. JSON is JSON formatted output intended for machine consumption.
  • --gnu-hash-table โ€” Display the GNU hash table for dynamic symbols.
  • --hash-symbols โ€” Display the expanded hash table with dynamic symbol data.
  • --hash-table โ€” Display the hash table for dynamic symbols.
  • --histogram, -I โ€” Display a bucket list histogram for dynamic symbol hash tables.
  • --memtag โ€” Display information about memory tagging present in the binary. This includes various dynamic entries, decoded global descriptor sections, and decoded Android-specific ELF notes.
  • --notes, -n โ€” Display all notes.
  • --pretty-pgo-analysis-map โ€” When pgo analysis maps are present in the basic block address map section(s), analyses with special formats (i.e. BlockFrequency, BranchProbability, etc) are printed using the same format as their respective analysis pass.

Requires --bb-addr-map to have an effect. like, she literally does nothing without her friend, no cap ๐Ÿซถ

  • --pretty-print โ€” When used with --elf-output-style, JSON output will be formatted in a more readable format. glow-up for your eyeballs โœจ
  • --program-headers, --segments, -l โ€” Display the program headers.
  • --section-groups, -g โ€” Display section groups.
  • --section-mapping โ€” Display the section to segment mapping.
  • --stack-sizes โ€” Display 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.
  • --version-info, -V โ€” Display version sections.

๐Ÿ“ MACH-O SPECIFIC OPTIONS ๐Ÿ“

these ones are implemented only for the Mach-O file format. apple girlies rise ๐ŸŽ

  • --macho-data-in-code โ€” Display the Data in Code command.
  • --macho-dsymtab โ€” Display the Dsymtab command.
  • --macho-indirect-symbols โ€” Display indirect symbols.
  • --macho-linker-options โ€” Display the Mach-O-specific linker options.
  • --macho-segment โ€” Display the Segment command.
  • --macho-version-min โ€” Display the version min command.

๐Ÿงš PE/COFF SPECIFIC OPTIONS ๐Ÿงš

these ones are implemented only for the PE/COFF file format. windows besties, this is your era ๐Ÿ’–

  • --codeview โ€” Display CodeView debug information.
  • --codeview-ghash โ€” Enable global hashing for CodeView type stream de-duplication.
  • --codeview-merged-types โ€” Display the merged CodeView type stream.
  • --codeview-subsection-bytes โ€” Dump raw contents of CodeView debug sections and records.
  • --coff-basereloc โ€” Display the .reloc section.
  • --coff-debug-directory โ€” Display the debug directory.
  • --coff-directives โ€” Display the .drectve section.
  • --coff-exports โ€” Display the export table.
  • --coff-imports โ€” Display the import table.
  • --coff-load-config โ€” Display the load config.
  • --coff-resources โ€” Display the .rsrc section.
  • --coff-tls-directory โ€” Display the TLS directory.

๐ŸŒบ XCOFF SPECIFIC OPTIONS ๐ŸŒบ

these ones are implemented only for the XCOFF file format. rare and mysterious, we stan ๐Ÿ‘‘

  • --auxiliary-header โ€” Display XCOFF Auxiliary header.
  • --exception-section โ€” Display XCOFF exception section entries.
  • --loader-section-header โ€” Display XCOFF loader section header.
  • --loader-section-relocations โ€” Display relocation entries of loader section.
  • --loader-section-symbols โ€” Display symbol table of loader section.

๐Ÿซถ EXIT STATUS ๐Ÿซถ

llvm-readobj returns 0 under normal operation. It returns a non-zero exit code if there were any errors. so if you get a non-zero, something went wrong, and that's your sign to go look ๐Ÿ˜ญ

๐Ÿ”ฅ SEE ALSO ๐Ÿ”ฅ

llvm-nm(1) <llvm-nm.html>, llvm-objdump(1) <llvm-objdump.html>, llvm-readelf(1) <llvm-readelf.html> โ€” go read those too, they're the rest of the friend group, iykyk ๐Ÿ’œ

๐Ÿ‘‘ Author ๐Ÿ‘‘

Maintained by the LLVM Team (https://llvm.org/).

2003-2026, LLVM Project


and that's the whole page, bestie ๐ŸŽ€ this was page 23 of the LLVM manual, dated 2026-10-20, and you read it all the way through โ€” genuinely main character energy, obsessed with you fr fr ๐Ÿ’–โœจ

๐Ÿ“ฆ where this page comes from
  • arch rolling: llvm 23.1.4-1 ยท Apache-2.0 WITH LLVM-exception
  • ๐Ÿ’– girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms