LLVM-PROFGEN(1)
π LLVM-PROFGEN β ok bestie, let's talk SPGO π
so like. this is the manual for llvm-profgen, a.k.a. the LLVM SPGO profile generation tool π, living in the LLVM manual collection. she's a command-line girlie, she takes commands and options, and she makes profiles. periodt.
β¨ SYNOPSIS β¨
llvm-profgen [commands] [options]
like, that's it. that's the whole shape of her. commands + options. go off π
πΈ DESCRIPTION πΈ
okay so the llvm-profgen utility generates a profile data file from the perf script data files you hand her β all for sample-based profile guided optimization, aka SPGO (iykyk). that's the whole vibe: you give her perf traces, she gives you back a profile. iconic behavior fr fr β¨
π«Ά COMMANDS π«Ά
heads up bestie: you need at least one of these. not zero. at least one. minimum one. she will not run on vibes alone π
--perfscript=<string[,string,...]>β the path(s) to the perf-script trace, the one made by the Linuxperftool using itsscriptcommand. lowkey important detail: that rawperf.datashould have been profiled with-b. don't skip the-b. she'll know π§--binary=<string[,string,...]>β the path(s) to the input profiled binary files. yes, plural allowed. multiple binaries, multiple paths, comma-separated, she's flexible like that π--output=<string>β the path where the output profile file goes. one string. that's where your masterpiece lands π
π₯ OPTIONS π₯
here's everything llvm-profgen supports, no gatekeeping, we don't do that here:
--format=[text|binary|extbinary|compbinary|gcc]β picks the format of the generated profile. the supported formats are exactlytext,binary,extbinary,compbinary, andgcc. for the full tea on what each of those actually means, go read thellvm-profdatadocs, she's the format authority around here π--show-mmap-eventsβ prints mmap events. that's it. that's the whole thing. mmap events, printed π--show-disassemblyβ prints disassembled code. for when you wanna see the assembly with your own two eyes π--x86-asm-syntax=[att|intel]β tells her whether to print assembly code in AT&T syntax or Intel syntax. and bestie, note this:attis the default. so if you say nothing, you get AT&T. sayintelif you want the other one π
π¦ AUTHOR π¦
maintained by the LLVM Team β you can find them at https://llvm.org/ π«Ά
β COPYRIGHT β
2003-2026, LLVM Project β that's a long-running queen, honestly ππ
quick reminder bestie: at least one command. at least one. the--perfscript,--binary, and--outputgirlies are not optional-optional, one of them has to show up. no cap. π
and that's the whole page, mwah π this was the LLVM manual page for llvm-profgen, dated 2026-07-22 β so go profile something, slay, and remember: sample-based profile guided optimization is a lifestyle, not a phase β¨π¦πΈ
π¦ where this page comes from
- epel 10: llvm21 21.1.8-8.el10_3 Β· Apache-2.0 WITH LLVM-exception OR NCSA
- fedora 43: llvm 21.1.8-6.fc43 Β· Apache-2.0 WITH LLVM-exception OR NCSA
- fedora 43: llvm 21.1.8-6.fc43 Β· Apache-2.0 WITH LLVM-exception OR NCSA
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms