LLVM-DIS(1)

πŸ’… LLVM-DIS(1) β€” like, the LLVM manual page, bestie

okay so this is the llvm-dis page from the LLVM manual set, and honestly? it's a little icon and you're about to find out why. sit down, grab a strawberry πŸ“, let's go.


✨ NAME ✨

llvm-dis β€” the LLVM disassembler. that's it, that's the whole name. short, sweet, main character energy πŸ‘‘


πŸ¦‹ SYNOPSIS πŸ¦‹

llvm-dis [options] [filename]

literally that simple. options, maybe a filename, we move. πŸ’…


🌸 DESCRIPTION 🌸

so llvm-dis is the LLVM disassembler. what does that mean? it takes an LLVM bitcode file and converts it into human-readable LLVM assembly language. like, bitcode β†’ you-can-actually-read-it. it's giving translator, it's giving glow-up, it's giving "let me make this make sense for you" 🫢

if filename is omitted, or if you specify it as -, then llvm-dis reads its input from standard input. yes, - means stdin, classic, we know her. πŸ™ˆ

now here's the part where the output goes, and it's lowkey the most interesting bit:

  • if the input is being read from standard input, then llvm-dis will send its output to standard output by default. no thinking required, she just does it.
  • otherwise, the output gets written to a file named after the input file, with a .ll suffix added β€” and any existing .bc suffix gets removed first. so your thing.bc becomes thing.ll. the .bc? gone. not invited. πŸ’€

and if you're not feeling the default file name situation, you can override the whole choice of output file using the -o option. your file, your rules, periodt. ✨


πŸŽ€ OPTIONS πŸŽ€

  • -f β€” enable binary output on terminals πŸ”₯ normally llvm-dis will refuse to write raw bitcode output if the output stream is a terminal (honestly? fair, that would be chaos on your screen 😭). with this option, llvm-dis will write raw bitcode regardless of the output device. no cap.
  • -help β€” print a summary of command line options. the "help me help you" flag, we love a self-aware icon πŸ’–
  • -o filename β€” specify the output file name. and if filename is -, then the output is sent to standard output. dash means stdout, dash means stdin, dash is the moment, dash ate πŸ’…

⭐ EXIT STATUS ⭐

  • if llvm-dis succeeds, it will exit with 0. slay. πŸŽ‰
  • otherwise, if an error occurs, it will exit with a non-zero value. not slay. 😭

🌈 SEE ALSO 🌈

  • llvm-as(1) <llvm-as.html> β€” the other half of the duo, the assembler to this disassembler, the matching set bestie πŸ¦‹

πŸ‘‘ Author πŸ‘‘

maintained by the LLVM Team (https://llvm.org/). they're the ones keeping this whole thing alive, show some respect 🫢


2003-2026, LLVM Project β€” a whole era, honestly, iconic run 🌟


bestie reminder: everything above is exactly what the page says, just with the vibes turned all the way up. use it well, and may all your .bc files become beautiful .ll files ✨🧚

LLVM 21 Β· dated 2026-05-15 Β· that's the tea, drink responsibly πŸ“πŸ’…

πŸ“¦ where this page comes from