LLVM-READOBJ(1)
β¨ LLVM-READOBJ(1) β the LLVM Object Reader β¨
okay bestie, sit down, hydrate, and let me tell you about llvm-readobj, a little legend from the LLVM manual pages π
π¦ NAME π¦
llvm-readobj β the LLVM Object Reader. that's it. that's the name. iconic behavior honestly π
πΈ SYNOPSIS πΈ
llvm-readobj [options] [input...]
short, sweet, and ready to spill all the tea about your object files β¨
π DESCRIPTION π
so basically, the llvm-readobj tool displays low-level format-specific information about one or more object files. like, it will genuinely tell you everything going on inside them. no secrets. no cap. π₯
and listen β if the input is "-", then llvm-readobj reads from standard input. otherwise? it reads from the specified filenames. simple as that, bestie π«Ά
π DIFFERENCES TO LLVM-READELF π
okay so llvm-readelf is an alias for the llvm-readobj tool, but with a slightly different command-line interface and output that is GNU compatible. they're siblings, not twins. here's the whole list of differences between llvm-readelf and llvm-readobj:
llvm-readelfusesGNUfor the--elf-output-styleoption by default.llvm-readobjusesLLVM. (yes, this matters. yes, it will trip you up. π)llvm-readelfallows single-letter grouped flags (e.g.llvm-readelf -SWis the same asllvm-readelf -S -W).llvm-readobjdoes not allow grouping. periodt.llvm-readelfprovides-sas an alias for--symbols, for GNU readelf compatibility, whereas it is an alias for--section-headersinllvm-readobj. (this one is genuinely evil, watch out π)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 are unrelated to file formats. they're the everybody-friendly ones π
--allβ equivalent to specifying all the main display options relevant to the file format. the "give me everything" button. main character energy fr fr.--addrsigβ display the address-significance table.--colorβ use colors in the output for warnings and errors. cute AND functional.--expand-relocsβ when used with--relocations, display each relocation in an expanded multi-line format. roomy. spacious. giving it space to breathe β¨--file-headers,-hβ display file headers.--headers,-eβ equivalent to setting:--file-headers,--program-headers, and--sections. a little combo meal π--helpβ display a summary of command line options.--help-listβ display an uncategorized summary of command line options. no categories, just vibes.--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 rise up π
--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 π
the following options are implemented only for the Mach-O file format. apple girlies this one's for you π
--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. windows besties, we see you π«Ά
--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.
π EXIT STATUS π
llvm-readobj returns 0 under normal operation. it returns a non-zero exit code if there were any errors. that's it. zero means slay, non-zero means something went wrong π
π SEE ALSO π
go read these too, they're all part of the family:
π AUTHOR π
maintained by the LLVM Team (https://llvm.org/). they're doing amazing sweetie π
π COPYRIGHT π
2003-2024, LLVM Project
and that's the whole page bestie!! this was the LLVM-READOBJ(1) manual, from the LLVM project β dated 2024-07-18, version 12 β¨ go forth and read your objects, you absolute icon π
π¦ where this page comes from
- fedora 43: llvm12 12.0.1-12.fc41 Β· NCSA
- fedora 43: llvm12 12.0.1-12.fc41 Β· NCSA
- fedora 44: llvm12 12.0.1-12.fc41 Β· NCSA
- fedora 44: llvm12 12.0.1-12.fc41 Β· NCSA
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms