Fix TProgram.Uses reserved-word clash (renamed to UsedUnits), nested brace-comment in uParser.pas, and missing uAST in Blaise.pas uses clause. Vendor QBE 1.2 source in vendor/qbe/ (built locally with make; binary excluded via .gitignore). End-to-end pipeline confirmed: Blaise compiles Hello World and Calc (6*7=42) to native x86_64 Linux binaries. 71/71 FPCUnit tests passing.
34 lines
403 B
Plaintext
34 lines
403 B
Plaintext
# a moderately complex test for
|
|
# dominators computation from
|
|
# the dragon book
|
|
# because branching is limited to
|
|
# two, I had to split some blocks
|
|
|
|
function $dragon() {
|
|
@start
|
|
@b1
|
|
jnz 0, @b2, @b3
|
|
@b2
|
|
jmp @b3
|
|
@b3
|
|
jmp @b4.1
|
|
@b4.1
|
|
jnz 0, @b3, @b4.2
|
|
@b4.2
|
|
jnz 0, @b5, @b6
|
|
@b5
|
|
jmp @b7
|
|
@b6
|
|
jmp @b7
|
|
@b7
|
|
jnz 0, @b8.1, @b4.1
|
|
@b8.1
|
|
jnz 0, @b3, @b8.2
|
|
@b8.2
|
|
jnz 0, @b9, @b10
|
|
@b9
|
|
jmp @b1
|
|
@b10
|
|
jmp @b7
|
|
}
|