> For the complete documentation index, see [llms.txt](https://aup.nomi.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://aup.nomi.dev/the-aup/options.md).

# Options

### -b

Build an executable file.

{% hint style="info" %}
On Linux, require **g++** or **clang++** and source code to compile executable file.
{% endhint %}

### -c

Compile to bytecode. This option will produce a file with `.aupc` extension, which contains bytecode and metadata.

### -d

Dump generated code.

```
@main()
; k0 = 3
  000000  LDF    r1, [0]
  000001  BOOL   r2, [true]
  000002  JZ     [L5], r2
  000003  LDK    r2, k0
  000004  PRI    r2, [1]
  000005  RET
```

### -g

Enable debug mode.

{% hint style="info" %}
Debug mode helps you debug your code easily, but it makes program run slowly.
{% endhint %}

### -h

Show help.

### -O

Enable code optimization. Currently, support:

* Constant folding/SSA
* Smart register allocation

{% hint style="info" %}
If debug mode is enabled, optimization is ignored.
{% endhint %}

{% hint style="warning" %}
Optimization means program in release mode, so you cannot debug it.
{% endhint %}

### -v

Show version and build date.
