3 %Tree = type %struct.tree*
4 %struct.tree = type { int, double, double, %Tree, %Tree, %Tree, %Tree }
6 implementation ; Functions:
8 void %reverse(%Tree %t) {
10 %cast219 = cast %Tree %t to sbyte*** ; <sbyte***> [#uses=7]
11 %cond220 = seteq sbyte*** %cast219, null ; <bool> [#uses=1]
12 br bool %cond220, label %bb5, label %bb2
15 %reg2221 = getelementptr sbyte*** %cast219, uint 6 ; <sbyte***> [#uses=1]
16 %reg108 = load sbyte*** %reg2221 ; <sbyte**> [#uses=3]
17 %reg2251 = getelementptr sbyte** %reg108, uint 5 ; <sbyte**> [#uses=1]
18 store sbyte* null, sbyte** %reg2251
19 %reg2281 = getelementptr sbyte*** %cast219, uint 6 ; <sbyte***> [#uses=1]
20 store sbyte** null, sbyte*** %reg2281
21 %reg2311 = getelementptr sbyte*** %cast219, uint 5 ; <sbyte***> [#uses=1]
22 %reg114 = load sbyte*** %reg2311, uint 0 ; <sbyte**> [#uses=2]
23 %cond234 = seteq sbyte** %reg114, null ; <bool> [#uses=1]
24 br bool %cond234, label %bb4, label %bb3
27 %reg115 = phi sbyte*** [ %cast117, %bb3 ], [ %cast219, %bb2 ] ; <sbyte***> [#uses=2]
28 %reg116 = phi sbyte** [ %cast118, %bb3 ], [ %reg114, %bb2 ] ; <sbyte**> [#uses=4]
29 %reg236 = getelementptr sbyte** %reg116, uint 5 ; <sbyte**> [#uses=1]
30 %reg110 = load sbyte** %reg236 ; <sbyte*> [#uses=1]
31 %reg239 = getelementptr sbyte** %reg116, uint 5 ; <sbyte**> [#uses=1]
32 %cast241 = cast sbyte*** %reg115 to sbyte* ; <sbyte*> [#uses=1]
33 store sbyte* %cast241, sbyte** %reg239
34 %reg242 = getelementptr sbyte*** %reg115, uint 6 ; <sbyte***> [#uses=1]
35 store sbyte** %reg116, sbyte*** %reg242
36 %cast117 = cast sbyte** %reg116 to sbyte*** ; <sbyte***> [#uses=1]
37 %cast118 = cast sbyte* %reg110 to sbyte** ; <sbyte**> [#uses=2]
38 %cond245 = setne sbyte** %cast118, null ; <bool> [#uses=1]
39 br bool %cond245, label %bb3, label %bb4
42 %reg247 = getelementptr sbyte*** %cast219, uint 5 ; <sbyte***> [#uses=1]
43 store sbyte** %reg108, sbyte*** %reg247
44 %reg250 = getelementptr sbyte** %reg108, uint 6 ; <sbyte**> [#uses=2]
45 cast sbyte** %reg250 to sbyte**** ; <sbyte****>:0 [#uses=0]
46 %cast252 = cast sbyte*** %cast219 to sbyte* ; <sbyte*> [#uses=1]
47 store sbyte* %cast252, sbyte** %reg250