| Option | Description |
-o <path> | Output file path. Default depends on mode: a.exe (link), a.obj (compile-only), a.asm (assembly). |
-c | Compile only — produce a .o COFF object file without linking. |
-S | Emit assembly only — output .asm text file instead of binary. Includes comment header with compiler version and command line. |
--asm:<path> | Save generated assembly to file, then continue compiling and linking (unlike -S which stops). Assembly includes comment header. |
--dump-tokens | Dump the lexer token stream to stdout. Useful for debugging lexer behavior. |
--dump-ast, --emit-ast | Dump the abstract syntax tree to stdout after parsing. |
--dump-ir, --emit-ir | Dump the intermediate representation to stdout after IR lowering. |
-O0 | No optimization (default). Fastest compilation, no transforms applied. |
-O1 | Basic optimization — enables simple peephole and local transforms. |
-O2 | Aggressive optimization — enables all available optimization passes. |
-O3 | Maximum optimization — highest optimization level. |
-v, --verbose | Verbose output — prints additional diagnostic information during compilation. |
-h, --help | Show the help message and exit. |
--version | Show version banner and exit. |