LLVM-READOBJ(1)
π LLVM-READOBJ(1) β the llvm-readobj manual, but make it make sense π«Ά
okay so bestie, welcome to the LLVM Object Reader page (that's the llvm-readobj manual, from the LLVM fam π). Grab a snack, we're reading object files' whole aura. β¨
πΈ SYNOPSIS πΈ
llvm-readobj [options] [input...]
π¦ DESCRIPTION π¦
So llvm-readobj is that girl who lifts the lid on one or more object files and shows you all the low-level, format-specific tea inside. Literally format-specific info, no cap. π
If an input is "-", llvm-readobj reads from standard input. Otherwise, it reads from the filenames you gave it. Simple as that, fr fr. π
β¨ DIFFERENCES TO LLVM-READELF β¨
Okay so llvm-readelf is basically an alias for the llvm-readobj tool, but with a slightly different command-line interface and GNU-compatible output. Here's the full rundown of how the two differ, no skips:
llvm-readelfusesGNUfor the--elf-output-styleoption by default.llvm-readobjusesLLVM.llvm-readelfallows single-letter grouped flags (e.g.llvm-readelf -SWis the same asllvm-readelf -S -W).llvm-readobjdoes not allow grouping.llvm-readelfprovides-sas an alias for--symbols, for GNU readelf compatibility, whereas inllvm-readobj-sis an alias for--section-headers.llvm-readobjprovides-tas an alias for--symbols.llvm-readelfdoes not.llvm-readobjprovides--sr,--sd,--stand--dtas aliases for--section-relocations,--section-data,--section-symbolsand--dyn-symbolsrespectively.llvm-readelfdoes not provide these aliases, to avoid conflicting with grouped flags. π
π GENERAL AND MULTI-FORMAT OPTIONS π
These options are applicable to more than one file format, or they're just plain not about file formats at all. Iconic, flexible, multi-format main character energy. π
--allβ Equivalent to specifying all the main display options relevant to the file format. The "give me everything" button. π--addrsigβ Display the address-significance table.--expand-relocsβ When used with--relocs, display each relocation in an expanded multi-line format. More lines, more room to vibe. β¨--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.--memtagβ Display information about memory tagging present in the binary. This includes various memtag-specific dynamic entries, decoded global descriptor sections, and decoded Android-specific ELF notes.
--needed-libsβ Display the needed libraries.--relocations,--relocs,-rβ Display the relocation entries in the file.--sections,--section-headers,-Sβ Display all sections.--section-data,--sdβ When used with--sections, display section data for each section shown. Heads up: 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.--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 arenameandtype. Sorting the symtab? she's organized. π--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 thellvm-readobjexecutable.@<FILE>β Read command-line options from response file <FILE>.
π ELF SPECIFIC OPTIONS π
The following options are implemented only for the ELF file format. ELF girlies, this is your section. π§
--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.--demangle,-Cβ Display demangled symbol names in the output.--dependent-librariesβ Display the dependent libraries section.--dyn-relocationsβ Display the dynamic relocation entries.--dyn-symbols,--dyn-syms,--dtβ Display the dynamic symbol table.--dynamic-table,--dynamic,-dβ Display the dynamic table.--cg-profileβ Display the callgraph profile section.--histogram,-Iβ Display a bucket list histogram for dynamic symbol hash tables.--elf-linker-optionsβ Display the linker options section.--elf-output-style=<value>β Format ELF information in the specified style. Valid options areLLVM,GNU, andJSON.LLVMoutput (the default) is an expanded and structured format.GNUoutput mimics the equivalent GNUreadelfoutput.JSONis JSON formatted output intended for machine consumption.--section-groups,-gβ Display section groups.--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.--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-printβ When used with--elf-output-style, JSON output will be formatted in a more readable format. Glow-up for your JSON. β¨--program-headers,--segments,-lβ Display the program headers.--raw-relrβ Do not decode relocations in RELR relocation sections when displaying them.--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 π
The following options are implemented only for the Mach-O file format.
--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 π₯
The following options are implemented only for the PE/COFF file format.
--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.relocsection.--coff-debug-directoryβ Display the debug directory.--coff-tls-directoryβ Display the TLS directory.--coff-directivesβ Display the.drectvesection.--coff-exportsβ Display the export table.--coff-importsβ Display the import table.--coff-load-configβ Display the load config.--coff-resourcesβ Display the.rsrcsection.
β XCOFF SPECIFIC OPTIONS β
The following options are implemented only for the XCOFF file format.
--auxiliary-headerβ Display XCOFF Auxiliary header.--exception-sectionβ Display XCOFF exception section entries.--loader-section-headerβ Display XCOFF loader section header.--loader-section-symbolsβ Display symbol table of loader section.--loader-section-relocationsβ Display relocation entries 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 like, zero means we ate, non-zero means something went off. π
π«Ά SEE ALSO π«Ά
llvm-nm(1), llvm-objdump(1), llvm-readelf(1) β go say hi to the rest of the friend group. π
π AUTHOR π
Maintained by the LLVM Team (https://llvm.org/).
π COPYRIGHT π
2003-2023, LLVM Project
ngl bestie, that's the whole page β every flag, every alias, every "no effect for GNU style output", all of it. Nothing skipped, periodt. π
okay and for the cute sign-off: this one's the 17 release, dated 2023-12-01, and it's the LLVM project's page π β that's the footer tea, absorbed into the vibe. Bye bestie, go read some object files ππ¦
π¦ where this page comes from
- opensuse-leap 16.0: llvm17 17.0.6-160000.3.1 Β· Apache-2.0 WITH LLVM-exception AND NCSA
- opensuse-leap 16.0: llvm17 17.0.6-160000.3.1 Β· Apache-2.0 WITH LLVM-exception AND NCSA
- opensuse-leap 16.0: llvm17 17.0.6-160000.3.1 Β· Apache-2.0 WITH LLVM-exception AND NCSA
- opensuse-leap 16.0: llvm17 17.0.6-160000.3.1 Β· Apache-2.0 WITH LLVM-exception AND NCSA
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms