3 void "test function"(int %i0, int %j0)
6 Startup: ; Basic block #0
9 %x = setle int %i1, %j1
10 br bool %x, label %Increment, label %Decrement
12 Merge: ; Basic block #3
13 %i4 = phi int [%i2, %Increment], [%i3,%Decrement] ; Forward ref vars...
14 %j2 = add int %j1, %i4
17 Increment: ; Basic block #1
21 Decrement: ; Basic block #2
27 ; Test "stripped" format where nothing is symbolic... this is how the bytecode
28 ; format looks anyways (except for negative vs positive offsets)...
30 void "void"(int, int) ; Def %0, %1
34 add int %0, %1 ; Def 4
35 sub int %4, %3 ; Def 5
36 setle int %5, %2 ; Def 0 - bool plane
37 br bool %0, label %1, label %0
39 add int %0, %1 ; Def 6
40 sub int %4, %3 ; Def 7
41 setle int %7, %2 ; Def 1 - bool plane
45 ; This function always returns zero
47 uint 4000000000 ; Def 0 - uint plane
48 int 0 ; Def 0 - int plane