blob: 249fb845de2a5c570e7f4c53453b8e8ecbcc60f7 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
the reference compiler for the [Crowbar](https://sr.ht/~boringcactus/crowbar-lang/) language.
requirements:
* [QBE](https://c9x.me/compile/) installed somewhere on your PATH
* gcc
usage (i probably will forget to update this so [check directly](https://git.sr.ht/~boringcactus/crowbar-reference-compiler/tree/main/crowbar_reference_compiler/__init__.py)):
```
usage: crowbarc-reference [-h] [-V] [-g] [--stop-at-parse-tree]
[--stop-at-qbe-ssa] [-S] [-c] [-D DEFINE_CONSTANT]
[-I INCLUDE_DIR] [-o OUT]
input
The reference compiler for the Crowbar programming language
positional arguments:
input input file
optional arguments:
-h, --help show this help message and exit
-V, --version show program's version number and exit
-g, --include-debug-info
--stop-at-parse-tree
--stop-at-qbe-ssa
-S, --stop-at-assembly
-c, --stop-at-object
-D DEFINE_CONSTANT, --define-constant DEFINE_CONSTANT
define a constant with some literal value
-I INCLUDE_DIR, --include-dir INCLUDE_DIR
folder to look for included headers within
-o OUT, --out OUT output file
```
|