LLVM-MC(1)
π NAME π
llvm-mc β the manual page for llvm-mc 15, bestie. That's it, that's the name section, periodt. π
β¨ DESCRIPTION β¨
OVERVIEW: it's literally a llvm machine code playground π β¨ (that's the official vibe, I'm not making it up)
USAGE:
llvm-mc [options] <input file>
OPTIONS: okay so here comes the whole menu. And yes, we're going through every single one β no skimming, no "you get the gist", none of that π ββοΈπ
π Color Options π
--colorβ use colors in output, obviously, we love a pop of color. Default isautodetectβ she figures it out herself, main character energy.
π¦ Generic Options π¦
--helpβ display available options. There's also--help-hiddenif you want more, because of course there is. π--help-listβ display a list of available options. And yup,--help-list-hiddenexists too for the extra ones.--versionβ display the version of this program. slay, know thyself.
π MC Options π
-I<directory>β directory of include files. Where your little include besties live π-M<string>β disassembler options.--arch=<string>β target arch to assemble for. Not sure which targets exist? Run-version, she'll tell you. π
πΈ Action to perform: πΈ
--as-lexβ lex tokens from a.sfile. Just vibing with the tokens, no assembling π--assembleβ assemble a.sfile. This is the default, so if you don't pick anything, this is what you get π«Ά--disassembleβ disassemble strings of hex bytes. Reverse uno card π--mdisβ marked up disassembly of strings of hex bytes. Same thing but with the β¨aestheticβ¨
π Back to the MC Options π
--compress-debug-sections=<value>β choose DWARF debug sections compression. The options are:=noneβ no compression. Raw, unfiltered, iconic.=zlibβ use zlib compression. Squish it ποΈ
--defsym=<string>β defines a symbol to be an integer constant.--fdebug-compilation-dir=<string>β specifies the debug info's compilation dir.--fdebug-prefix-map=<= separated key-value pairs>β map file source paths in debug info.--filetype=<value>β choose an output file type. Your choices, bestie:=asmβ emit an assembly (.s) file=nullβ don't emit anything at all. For timing purposes only, so like... a little experiment, not a lifestyle π=objβ emit a native object (.o) file
-gβ generate dwarf debugging info for assembly source files. Debug girlies rise π§--large-code-modelβ create cfi directives that assume the code might be more than 2gb away. She's thinking big.--main-file-name=<string>β specifies the name we should consider the input file.--masm-hexfloatsβ enable MASM-style hex float initializers (3F800000r).--masm-integersβ enable binary and hex masm integers (0b110and0ABCh).--mattr=<a1,+a2,-a3,...>β target specific attributes. Need the tea? Use-mattr=helpfor details.--mcpu=<cpu-name>β target a specific cpu type. Again,-mcpu=helpfor details, she's helpful like that π--motorola-integersβ enable binary and hex Motorola integers (%110and$ABC).-nβ don't assume the assembly file starts in the text section. Rude to assume, honestly.--no-exec-stackβ file doesn't need an exec stack.-o<filename>β output filename.--output-asm-variant=<uint>β syntax variant to use for output printing.--position-independentβ position independent. She doesn't need anybody π¦--preserve-commentsβ preserve comments in outputted assembly. Respect the author's notes, fr fr π--print-imm-hexβ prefer hex format for immediate values.--relax-relocationsβ emitR_X86_64_GOTPCRELXinstead ofR_X86_64_GOTPCREL. Very specific, very cunty, we love her for it.--save-temp-labelsβ don't discard temporary labels. Keep the little guys π₯Ί--show-encodingβ show instruction encodings.--show-instβ show internal instruction representation.--show-inst-operandsβ show instructions operands as parsed. (Yep, that's the exact wording, I'm not touching it π)--split-dwarf-file=<filename>β DWO output filename.--triple=<string>β target triple to assemble for. Wanna know what's available?-version, always-versionβ¨
okay so real talk, bestie: this whole page is from llvm-mc 15, dated July 2023, and the man page itself answers to LLVM-MC(1). That's the footer, and I'm folding it into a little goodbye kiss instead of a boring line π
mwah π thanks for reading the whole thing, you ate that. now go assemble something iconic π
π¦ where this page comes from
- ubuntu jammy: llvm-15 1:15.0.7-0ubuntu0.22.04.3 Β· APACHE-2-LLVM-EXCEPTIONS
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms