LLVM-READOBJ(1)
π LLVM-READOBJ(1) π
okay bestie, welcome to the LLVM manual page for llvm-readobj β yes, lowercase, yes it's an executable, no you cannot call it readobj and expect the vibes to carry you. sit down, grab a strawberry something π, and let's get into it.
β¨ NAME β¨
llvm-readobj β the LLVM Object Reader, aka the girl who looks inside your object files and tells you everything she sees π
β¨ SYNOPSIS β¨
llvm-readobj [options] [input...]
β¨ DESCRIPTION β¨
so basically, llvm-readobj shows you low-level, format-specific info about one or more object files. like it's not giving you the summary, it's giving you the receipts. π
if input is - or you just⦠don't give it anything, llvm-readobj reads from standard input. otherwise it reads from the filenames you specified. no cap.
β¨ DIFFERENCES TO LLVM-READELF β¨
llvm-readelf is literally an alias for the llvm-readobj tool, but with a slightly different command-line interface and output that's GNU compatible. here's the tea on how they differ β:
llvm-readelfdefaults to GNU for the--elf-output-styleoption.llvm-readobjdefaults to LLVM.llvm-readelflets you do single-letter grouped flags (likellvm-readelf -SWis the same asllvm-readelf -S -W).llvm-readobjdoes not allow grouping. grouping is not her thing, periodt.llvm-readelfgives you-sas an alias for--symbols, for GNU readelf compatibility. but inllvm-readobj,-sis an alias for--section-headers. yes, they're different. no, this is not a drill. πllvm-readobjgives you-tas an alias for--symbols.llvm-readelfdoes not.llvm-readobjgives you--sr,--sd,--stand--dtas aliases for--section-relocations,--section-data,--section-symbolsand--dyn-symbolsrespectively.llvm-readelfdoesn't provide these aliases, because they'd conflict with grouped flags.
β¨ GENERAL AND MULTI-FORMAT OPTIONS β¨
these options work for more than one file format, or honestly are just unrelated to file formats entirely. icons who don't pick sides π«Ά
--allβ equivalent to specifying all the main display options relevant to the file format. it's the "give me everything" of flags π--addrsigβ display the address-significance table.--colorβ use colors in the output for warnings and errors. π--expand-relocsβ when used with--relocations, display each relocation in an expanded multi-line format.--file-headers,-hβ display file headers.--headers,-eβ equivalent to setting:--file-headers,--program-headers, and--sections.--helpβ display a summary of command line options.--help-listβ display an uncategorized 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.--relocations,--relocs,-rβ display the relocation entries in the file.--sections,--section-headers,-s,-Sβ display all sections.--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.--section-symbols,--stβ when used with--sections, display symbols for each section shown. this option has no effect for GNU style output.--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.--symbols,--syms,-tβ 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 section is for you π
--arch-specific,-Aβ display architecture-specific information, e.g. the ARM attributes section on ARM.--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.--elf-hash-histogram,--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 areLLVMandGNU.LLVMoutput (the default) is an expanded and structured format, whilstGNUoutput mimics the equivalent GNU readelf output.--elf-section-groups,--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.--notes,-nβ display all notes.--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 β¨
these ones are implemented only for the Mach-O file format. mach-o besties 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 β¨
and these? implemented only for the PE/COFF file format. windows girlies, this is your moment π
--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-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.
β¨ EXIT STATUS β¨
llvm-readobj returns 0 under normal operation. she returns a non-zero exit code if there were any errors β so if the number isn't zero, something went wrong, and that's your sign π
β¨ SEE ALSO β¨
llvm-nm(1), llvm-objdump(1), llvm-readelf(1)
β¨ AUTHOR β¨
maintained by the LLVM Team (<https://llvm.org/>). π
β¨ COPYRIGHT β¨
2003-2024, LLVM Project
and that's the whole page bestie!! this one's from the LLVM manual, version 11, dated 2024-07-18, and it's literally iconic. go read some object files, you ate π«Άβ¨π
π¦ where this page comes from
- fedora 43: llvm11 11.1.0-14.fc41 Β· NCSA
- fedora 43: llvm11 11.1.0-14.fc41 Β· NCSA
- fedora 44: llvm11 11.1.0-14.fc41 Β· NCSA
- fedora 44: llvm11 11.1.0-14.fc41 Β· NCSA
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms