LLVM-OBJDUMP(1)

πŸ“¦
version 13.0.1 Β· 5 versions
, in ubuntu jammy

🌸 NAME 🌸

okay bestie, welcome to the manual page for llvm-objdump 13 β€” the iconic object file dumper that's literally about to be your new fave πŸ’–. this is the LLVM-OBJDUMP(1) page, and it's giving main character energy for all your object file needs.

πŸ’– DESCRIPTION πŸ’–

OVERVIEW: llvm object file dumper β€” that's the whole vibe, no cap.

here's the usage, bestie:

USAGE: llvm-objdump [options] <input object files>

like, you give it options and input object files, and it dumps. iconic.

πŸ› οΈ OPTIONS πŸ› οΈ

  • --adjust-vma=offset β€” bump the displayed address by the offset you give it β€” literally shifting the address vibe ✨
  • --all-headers β€” show every single header detail it can find β€” all the headers, all the tea πŸ’…
  • --arch-name=<value> β€” pick the target architecture to disassemble for; run --version to see what targets are available 🎯
  • --archive-headers β€” dump the archive header info β€” archive vibes only πŸ“¦
  • -a β€” alias for --archive-headers β€” same energy, fewer keystrokes 🫢
  • -C β€” alias for --demangle β€” because who has time for mangled names? 😭
  • --debug-vars-indent=<value> β€” how far to indent the source-level variable display from the start of the disassembly β€” literally setting the spacing vibe 🌸
  • --debug-vars β€” show where your source-level variables live (in registers or memory) right next to the disassembly β€” big detective energy πŸ”
  • --demangle β€” un-mangle those symbol names so they're actually readable β€” slay ✨
  • --disassemble-all β€” show assembler mnemonics for the machine instructions β€” all of them, no skips πŸ’…
  • --disassemble-symbols=<value> β€” give it a list of symbols to disassemble; if you use --demangle, it takes demangled names, otherwise it wants the mangled ones β€” read the room πŸŽ€
  • --disassemble-zeroes β€” don't skip blocks of zeroes when disassembling β€” zeroes deserve love too πŸ₯Ί
  • --disassembler-options=options β€” pass target-specific disassembler options straight through β€” custom vibes only πŸ› οΈ
  • --disassemble β€” show assembler mnemonics for the machine instructions β€” the classic disassemble moment πŸ’«
  • --dwarf=<value> β€” dump the DWARF debug sections β€” debug info but make it dwarfcore πŸ§™
  • --dynamic-reloc β€” show the dynamic relocation entries in the file β€” dynamic relocation realness πŸ”„
  • --dynamic-syms β€” display what's in the dynamic symbol table β€” symbol table but dynamic πŸ’ƒ
  • -D β€” alias for --disassemble-all β€” the short king πŸ‘‘
  • -d β€” alias for --disassemble β€” lowercase d for the win πŸ’–
  • --fault-map-section β€” show the contents of the faultmap section β€” fault map, not fault vibes πŸ—ΊοΈ
  • --file-headers β€” dump the overall file header contents β€” file header supremacy πŸ“„
  • --full-contents β€” show the content of every single section β€” full contents, full send πŸš€
  • -f β€” alias for --file-headers β€” f for file headers, fr fr 🫢
  • --headers β€” alias for --section-headers β€” headers but make it section headers πŸ’…
  • --help β€” show available options; use --help-hidden for the secret extra ones β€” hidden gems only ✨
  • -h β€” alias for --section-headers β€” h for headers, iconic 🌸
  • -j <value> β€” alias for --section β€” j for section, don't ask 😭
  • --line-numbers β€” show source line numbers alongside the disassembly; this implies disassemble object β€” line numbers but make it cute πŸŽ€
  • -l β€” alias for --line-numbers β€” l for lines, lowkey useful πŸ’œ
  • --macho β€” use the MachO-specific object file parser β€” MachO mode activated 🍎
  • --mattr=a1,+a2,-a3,... β€” target-specific attributes; run --mattr=help for the details β€” attribute girlies rise πŸ› οΈ
  • --mcpu=cpu-name β€” target a specific CPU type; --mcpu=help has the details β€” CPU core πŸ’»
  • -M <value> β€” alias for --disassembler-options= β€” M for machine options, iykyk πŸ”§
  • -m β€” alias for --macho β€” m for MachO, simple as that 🍏
  • --no-leading-addr β€” don't print the leading address β€” no leading addr, no problem πŸ™…β€β™€οΈ
  • --no-print-imm-hex β€” don't use hex format for immediate values β€” this is the default, so it's giving default behavior πŸ’…
  • --no-show-raw-insn β€” when disassembling, skip printing the instruction bytes β€” raw insn? not today 🚫
  • --prefix-strip <value> β€” strip initial directories from absolute paths; does literally nothing without --prefix β€” no prefix, no effect, periodt πŸ’€
  • --prefix <value> β€” add a prefix to absolute paths β€” prefix it up πŸŽ€
  • --print-imm-hex β€” use hex format for immediate values β€” hex girl summer πŸ”₯
  • --private-headers β€” show format-specific file headers β€” private headers, private vibes 🀫
  • -p β€” alias for --private-headers β€” p for private, obviously πŸ’…
  • --raw-clang-ast β€” dump the raw binary contents of the clang AST section β€” raw AST, no filter 🧠
  • --reloc β€” show the relocation entries in the file β€” relocation station πŸš‰
  • -R β€” alias for --dynamic-reloc β€” capital R for dynamic relocation πŸ’–
  • -r β€” alias for --reloc β€” lowercase r for relocation 🫢
  • --section-headers β€” show summaries of the headers for each section β€” section header summaries, slay πŸ“Š
  • --section=<value> β€” only operate on the sections you specify; with --macho, it dumps segment,section β€” targeted section energy 🎯
  • --show-lma β€” show the LMA column when dumping ELF section headers β€” LMA column, loaded πŸš€
  • --source β€” show source inlined with the disassembly; this implies disassemble object β€” source code meets assembly, cute πŸ₯°
  • --start-address=address β€” start disassembling at this address β€” begin at the address, bestie 🏁
  • --stop-address=address β€” stop disassembling at this address β€” stop right there, address πŸ›‘
  • --symbol-description β€” add symbol descriptions to the disassembly; this one's only for XCOFF files β€” XCOFF exclusive πŸ’…
  • --symbolize-operands β€” symbolize the instruction operands when disassembling β€” operands but make them symbolic ✨
  • --syms β€” display the symbol table β€” syms the word πŸ“–
  • -S β€” alias for --source β€” capital S for source 🫢
  • -s β€” alias for --full-contents β€” lowercase s for full contents πŸ’–
  • --triple=<value> β€” pick the target triple to disassemble for; --version shows available targets β€” triple threat 🎯
  • -T β€” alias for --dynamic-syms β€” capital T for dynamic syms πŸ’…
  • -t β€” alias for --syms β€” lowercase t for syms 🫢
  • --unwind-info β€” show unwind information β€” unwind and relax 🧘
  • -u β€” alias for --unwind-info β€” u for unwind πŸ’œ
  • --version β€” show the version of this program β€” version check, iconic πŸ’«
  • -v β€” alias for --version β€” v for version, obviously πŸŽ€
  • --wide β€” ignored, but it's there for compatibility with GNU objdump β€” wide but not doing anything, respect πŸ’€
  • --x86-asm-syntax=att β€” emit AT&T-style disassembly β€” AT&T syntax, classic πŸ“ž
  • --x86-asm-syntax=intel β€” emit Intel-style disassembly β€” Intel syntax, iconic πŸ’»
  • -x β€” alias for --all-headers β€” x for all headers, why not 🫢
  • -z β€” alias for --disassemble-zeroes β€” z for zeroes, cute πŸ₯Ί

🍎 llvm-objdump MachO Specific Options 🍎

  • --arch=<value> β€” architecture(s) from a Mach-O file to dump β€” pick your arch, bestie πŸ—οΈ
  • --archive-member-offsets β€” print the offset to each archive member for Mach-O archives; requires --macho and --archive-headers β€” member offsets, got it πŸ“¦
  • --bind β€” display Mach-O binding info β€” bind it up πŸ”—
  • --data-in-code β€” print the data in code table for Mach-O objects; requires --macho β€” data in code, literally πŸ“Š
  • --dis-symname <value> β€” disassemble just this one symbol's instructions; requires --macho β€” one symbol at a time 🎯
  • --dsym=<value> β€” use a .dSYM file for debug info β€” dSYM for the win 🐞
  • --dylib-id β€” print the shared library's ID for the dylib Mach-O file; requires --macho β€” dylib ID, iconic πŸ’…
  • --dylibs-used β€” print the shared libraries used for linked Mach-O files; requires --macho β€” dylibs used, got it πŸ“š
  • --exports-trie β€” display Mach-O exported symbols β€” exports trie, export queen πŸ‘‘
  • --full-leading-addr β€” print the full leading address β€” full address, no cuts πŸ’―
  • --function-starts β€” print the function starts table for Mach-O objects; requires --macho β€” function starts, let's go 🏁
  • -g β€” print line information from debug info if it's available β€” debug lines, cute πŸ›
  • --indirect-symbols β€” print the indirect symbol table for Mach-O objects; requires --macho β€” indirect symbols, indirect vibes πŸ”„
  • --info-plist β€” print the info plist section as strings for Mach-O objects; requires --macho β€” plist but make it strings πŸ“
  • --lazy-bind β€” display Mach-O lazy binding info β€” lazy bind, but make it informative 😴
  • --link-opt-hints β€” print the linker optimization hints for Mach-O objects; requires --macho β€” link opt hints, optimized πŸ’‘
  • --no-leading-headers β€” don't print leading headers β€” no leading headers, periodt 🚫
  • --no-symbolic-operands β€” don't symbolize operands when disassembling; requires --macho β€” no symbolic operands, okay 🚫
  • --non-verbose β€” print Mach-O object info in non-verbose or numeric form; requires --macho β€” non-verbose, keep it brief πŸ’¬
  • --objc-meta-data β€” print the Objective-C runtime metadata for Mach-O files; requires --macho β€” ObjC metadata, iconic 🍎
  • --private-header β€” display only the first format-specific file header β€” just the first one, bestie πŸ₯‡
  • --rebase β€” display Mach-O rebasing info β€” rebase and chill πŸ”„
  • --rpaths β€” print the runtime search paths for the Mach-O file; requires --macho β€” rpaths, runtime paths, got it πŸ›€οΈ
  • --universal-headers β€” print Mach-O universal headers; requires --macho β€” universal headers, universal slay 🌍
  • --weak-bind β€” display Mach-O weak binding info β€” weak bind, strong info πŸ’ͺ

oh and btw, you can pass @FILE as an argument to read options from FILE β€” file-based options, cute πŸ“


πŸ’– and that's the whole manual, bestie! this page is from llvm-objdump 13, dated July 2023, and it's literally the LLVM-OBJDUMP(1) manual β€” now go dump some objects and slay βœ¨πŸ‘‘

πŸ“¦ where this page comes from