summaryrefslogtreecommitdiff
path: root/vaporize/tests/TreeVisitor.vaporm
diff options
context:
space:
mode:
Diffstat (limited to 'vaporize/tests/TreeVisitor.vaporm')
-rw-r--r--vaporize/tests/TreeVisitor.vaporm1174
1 files changed, 0 insertions, 1174 deletions
diff --git a/vaporize/tests/TreeVisitor.vaporm b/vaporize/tests/TreeVisitor.vaporm
deleted file mode 100644
index 392cf0c..0000000
--- a/vaporize/tests/TreeVisitor.vaporm
+++ /dev/null
@@ -1,1174 +0,0 @@
-const vmt_TV
- :TV.Start
-
-const vmt_Tree
- :Tree.Init
- :Tree.SetRight
- :Tree.SetLeft
- :Tree.GetRight
- :Tree.GetLeft
- :Tree.GetKey
- :Tree.SetKey
- :Tree.GetHas_Right
- :Tree.GetHas_Left
- :Tree.SetHas_Left
- :Tree.SetHas_Right
- :Tree.Compare
- :Tree.Insert
- :Tree.Delete
- :Tree.Remove
- :Tree.RemoveRight
- :Tree.RemoveLeft
- :Tree.Search
- :Tree.Print
- :Tree.RecPrint
- :Tree.accept
-
-const vmt_Visitor
- :Visitor.visit
-
-const vmt_MyVisitor
- :MyVisitor.visit
-
-func Main [in 0, out 0, local 0]
- $t0 = HeapAllocZ(4)
- [$t0] = :vmt_TV
- if $t0 goto :null1
- Error("null pointer")
-null1:
- $t1 = [$t0]
- $t1 = [$t1]
- $a0 = $t0
- call $t1
- $t1 = $v0
- PrintIntS($t1)
- ret
-
-func TV.Start [in 0, out 0, local 1]
- local[0] = $s0
- $t0 = HeapAllocZ(28)
- [$t0] = :vmt_Tree
- $s0 = $t0
- if $s0 goto :null2
- Error("null pointer")
-null2:
- $t0 = [$s0]
- $t0 = [$t0]
- $a0 = $s0
- $a1 = 16
- call $t0
- if $s0 goto :null3
- Error("null pointer")
-null3:
- $t0 = [$s0]
- $t0 = [$t0+72]
- $a0 = $s0
- call $t0
- PrintIntS(100000000)
- if $s0 goto :null4
- Error("null pointer")
-null4:
- $t0 = [$s0]
- $t0 = [$t0+48]
- $a0 = $s0
- $a1 = 8
- call $t0
- if $s0 goto :null5
- Error("null pointer")
-null5:
- $t0 = [$s0]
- $t0 = [$t0+48]
- $a0 = $s0
- $a1 = 24
- call $t0
- if $s0 goto :null6
- Error("null pointer")
-null6:
- $t0 = [$s0]
- $t0 = [$t0+48]
- $a0 = $s0
- $a1 = 4
- call $t0
- if $s0 goto :null7
- Error("null pointer")
-null7:
- $t0 = [$s0]
- $t0 = [$t0+48]
- $a0 = $s0
- $a1 = 12
- call $t0
- if $s0 goto :null8
- Error("null pointer")
-null8:
- $t0 = [$s0]
- $t0 = [$t0+48]
- $a0 = $s0
- $a1 = 20
- call $t0
- if $s0 goto :null9
- Error("null pointer")
-null9:
- $t0 = [$s0]
- $t0 = [$t0+48]
- $a0 = $s0
- $a1 = 28
- call $t0
- if $s0 goto :null10
- Error("null pointer")
-null10:
- $t0 = [$s0]
- $t0 = [$t0+48]
- $a0 = $s0
- $a1 = 14
- call $t0
- if $s0 goto :null11
- Error("null pointer")
-null11:
- $t0 = [$s0]
- $t0 = [$t0+72]
- $a0 = $s0
- call $t0
- PrintIntS(100000000)
- $t0 = HeapAllocZ(12)
- [$t0] = :vmt_MyVisitor
- $t0 = $t0
- PrintIntS(50000000)
- if $s0 goto :null12
- Error("null pointer")
-null12:
- $t1 = [$s0]
- $t1 = [$t1+80]
- $a0 = $s0
- $a1 = $t0
- call $t1
- PrintIntS(100000000)
- if $s0 goto :null13
- Error("null pointer")
-null13:
- $t1 = [$s0]
- $t1 = [$t1+68]
- $a0 = $s0
- $a1 = 24
- call $t1
- $t1 = $v0
- PrintIntS($t1)
- if $s0 goto :null14
- Error("null pointer")
-null14:
- $t1 = [$s0]
- $t1 = [$t1+68]
- $a0 = $s0
- $a1 = 12
- call $t1
- $t1 = $v0
- PrintIntS($t1)
- if $s0 goto :null15
- Error("null pointer")
-null15:
- $t1 = [$s0]
- $t1 = [$t1+68]
- $a0 = $s0
- $a1 = 16
- call $t1
- $t1 = $v0
- PrintIntS($t1)
- if $s0 goto :null16
- Error("null pointer")
-null16:
- $t1 = [$s0]
- $t1 = [$t1+68]
- $a0 = $s0
- $a1 = 50
- call $t1
- $t1 = $v0
- PrintIntS($t1)
- if $s0 goto :null17
- Error("null pointer")
-null17:
- $t1 = [$s0]
- $t1 = [$t1+68]
- $a0 = $s0
- $a1 = 12
- call $t1
- $t1 = $v0
- PrintIntS($t1)
- if $s0 goto :null18
- Error("null pointer")
-null18:
- $t1 = [$s0]
- $t1 = [$t1+52]
- $a0 = $s0
- $a1 = 12
- call $t1
- if $s0 goto :null19
- Error("null pointer")
-null19:
- $t1 = [$s0]
- $t1 = [$t1+72]
- $a0 = $s0
- call $t1
- if $s0 goto :null20
- Error("null pointer")
-null20:
- $t1 = [$s0]
- $t1 = [$t1+68]
- $a0 = $s0
- $a1 = 12
- call $t1
- $t1 = $v0
- PrintIntS($t1)
- $v0 = 0
- $s0 = local[0]
- ret
-
-func Tree.Init [in 0, out 0, local 0]
- $t0 = $a0
- $t1 = $a1
- [$t0+12] = $t1
- [$t0+16] = 0
- [$t0+20] = 0
- $v0 = 1
- ret
-
-func Tree.SetRight [in 0, out 0, local 0]
- $t0 = $a0
- $t1 = $a1
- [$t0+8] = $t1
- $v0 = 1
- ret
-
-func Tree.SetLeft [in 0, out 0, local 0]
- $t0 = $a0
- $t1 = $a1
- [$t0+4] = $t1
- $v0 = 1
- ret
-
-func Tree.GetRight [in 0, out 0, local 0]
- $t0 = $a0
- $t0 = [$t0+8]
- $v0 = $t0
- ret
-
-func Tree.GetLeft [in 0, out 0, local 0]
- $t0 = $a0
- $t0 = [$t0+4]
- $v0 = $t0
- ret
-
-func Tree.GetKey [in 0, out 0, local 0]
- $t0 = $a0
- $t0 = [$t0+12]
- $v0 = $t0
- ret
-
-func Tree.SetKey [in 0, out 0, local 0]
- $t0 = $a0
- $t1 = $a1
- [$t0+12] = $t1
- $v0 = 1
- ret
-
-func Tree.GetHas_Right [in 0, out 0, local 0]
- $t0 = $a0
- $t0 = [$t0+20]
- $v0 = $t0
- ret
-
-func Tree.GetHas_Left [in 0, out 0, local 0]
- $t0 = $a0
- $t0 = [$t0+16]
- $v0 = $t0
- ret
-
-func Tree.SetHas_Left [in 0, out 0, local 0]
- $t0 = $a0
- $t1 = $a1
- [$t0+16] = $t1
- $v0 = 1
- ret
-
-func Tree.SetHas_Right [in 0, out 0, local 0]
- $t0 = $a0
- $t1 = $a1
- [$t0+20] = $t1
- $v0 = 1
- ret
-
-func Tree.Compare [in 0, out 0, local 0]
- $t0 = $a1
- $t1 = $a2
- $t2 = Add($t1 1)
- $t1 = LtS($t0 $t1)
- if0 $t1 goto :if1_else
- $t1 = 0
- goto :if1_end
-if1_else:
- $t2 = LtS($t0 $t2)
- $t2 = Sub(1 $t2)
- if0 $t2 goto :if2_else
- $t1 = 0
- goto :if2_end
-if2_else:
- $t1 = 1
-if2_end:
-if1_end:
- $v0 = $t1
- ret
-
-func Tree.Insert [in 0, out 0, local 4]
- local[0] = $s0
- local[1] = $s1
- local[2] = $s2
- local[3] = $s3
- $s0 = $a0
- $s1 = $a1
- $t0 = HeapAllocZ(28)
- [$t0] = :vmt_Tree
- $s2 = $t0
- if $s2 goto :null21
- Error("null pointer")
-null21:
- $t0 = [$s2]
- $t0 = [$t0]
- $a0 = $s2
- $a1 = $s1
- call $t0
- $s0 = $s0
- $s3 = 1
-while1_top:
- if0 $s3 goto :while1_end
- if $s0 goto :null22
- Error("null pointer")
-null22:
- $t0 = [$s0]
- $t0 = [$t0+20]
- $a0 = $s0
- call $t0
- $t0 = $v0
- $t0 = LtS($s1 $t0)
- if0 $t0 goto :if3_else
- if $s0 goto :null23
- Error("null pointer")
-null23:
- $t0 = [$s0]
- $t0 = [$t0+32]
- $a0 = $s0
- call $t0
- $t0 = $v0
- if0 $t0 goto :if4_else
- if $s0 goto :null24
- Error("null pointer")
-null24:
- $t0 = [$s0]
- $t0 = [$t0+16]
- $a0 = $s0
- call $t0
- $s0 = $v0
- goto :if4_end
-if4_else:
- $s3 = 0
- if $s0 goto :null25
- Error("null pointer")
-null25:
- $t0 = [$s0]
- $t0 = [$t0+36]
- $a0 = $s0
- $a1 = 1
- call $t0
- if $s0 goto :null26
- Error("null pointer")
-null26:
- $t0 = [$s0]
- $t0 = [$t0+8]
- $a0 = $s0
- $a1 = $s2
- call $t0
-if4_end:
- goto :if3_end
-if3_else:
- if $s0 goto :null27
- Error("null pointer")
-null27:
- $t0 = [$s0]
- $t0 = [$t0+28]
- $a0 = $s0
- call $t0
- $t0 = $v0
- if0 $t0 goto :if5_else
- if $s0 goto :null28
- Error("null pointer")
-null28:
- $t0 = [$s0]
- $t0 = [$t0+12]
- $a0 = $s0
- call $t0
- $s0 = $v0
- goto :if5_end
-if5_else:
- $s3 = 0
- if $s0 goto :null29
- Error("null pointer")
-null29:
- $t0 = [$s0]
- $t0 = [$t0+40]
- $a0 = $s0
- $a1 = 1
- call $t0
- if $s0 goto :null30
- Error("null pointer")
-null30:
- $t0 = [$s0]
- $t0 = [$t0+4]
- $a0 = $s0
- $a1 = $s2
- call $t0
-if5_end:
-if3_end:
- goto :while1_top
-while1_end:
- $v0 = 1
- $s0 = local[0]
- $s1 = local[1]
- $s2 = local[2]
- $s3 = local[3]
- ret
-
-func Tree.Delete [in 0, out 0, local 7]
- local[0] = $s0
- local[1] = $s1
- local[2] = $s2
- local[3] = $s3
- local[4] = $s4
- local[5] = $s5
- local[6] = $s6
- $s0 = $a0
- $s1 = $a1
- $s2 = $s0
- $s3 = $s0
- $s4 = 1
- $s5 = 0
- $s6 = 1
-while2_top:
- if0 $s4 goto :while2_end
- if $s2 goto :null31
- Error("null pointer")
-null31:
- $t0 = [$s2]
- $t0 = [$t0+20]
- $a0 = $s2
- call $t0
- $t0 = $v0
- $t1 = LtS($s1 $t0)
- if0 $t1 goto :if6_else
- if $s2 goto :null32
- Error("null pointer")
-null32:
- $t1 = [$s2]
- $t1 = [$t1+32]
- $a0 = $s2
- call $t1
- $t1 = $v0
- if0 $t1 goto :if7_else
- $s3 = $s2
- if $s2 goto :null33
- Error("null pointer")
-null33:
- $t1 = [$s2]
- $t1 = [$t1+16]
- $a0 = $s2
- call $t1
- $s2 = $v0
- goto :if7_end
-if7_else:
- $s4 = 0
-if7_end:
- goto :if6_end
-if6_else:
- $t0 = LtS($t0 $s1)
- if0 $t0 goto :if8_else
- if $s2 goto :null34
- Error("null pointer")
-null34:
- $t0 = [$s2]
- $t0 = [$t0+28]
- $a0 = $s2
- call $t0
- $t0 = $v0
- if0 $t0 goto :if9_else
- $s3 = $s2
- if $s2 goto :null35
- Error("null pointer")
-null35:
- $t0 = [$s2]
- $t0 = [$t0+12]
- $a0 = $s2
- call $t0
- $s2 = $v0
- goto :if9_end
-if9_else:
- $s4 = 0
-if9_end:
- goto :if8_end
-if8_else:
- if0 $s6 goto :if10_else
- if $s2 goto :null36
- Error("null pointer")
-null36:
- $t0 = [$s2]
- $t0 = [$t0+28]
- $a0 = $s2
- call $t0
- $t0 = $v0
- $t0 = Sub(1 $t0)
- if0 $t0 goto :ss1_else
- if $s2 goto :null37
- Error("null pointer")
-null37:
- $t0 = [$s2]
- $t0 = [$t0+32]
- $a0 = $s2
- call $t0
- $t0 = $v0
- $t0 = Sub(1 $t0)
- goto :ss1_end
-ss1_else:
- $t0 = 0
-ss1_end:
- if0 $t0 goto :if11_else
- goto :if11_end
-if11_else:
- $t0 = [$s0]
- $t0 = [$t0+56]
- $a0 = $s0
- $a1 = $s3
- $a2 = $s2
- call $t0
-if11_end:
- goto :if10_end
-if10_else:
- $t0 = [$s0]
- $t0 = [$t0+56]
- $a0 = $s0
- $a1 = $s3
- $a2 = $s2
- call $t0
-if10_end:
- $s5 = 1
- $s4 = 0
-if8_end:
-if6_end:
- $s6 = 0
- goto :while2_top
-while2_end:
- $v0 = $s5
- $s0 = local[0]
- $s1 = local[1]
- $s2 = local[2]
- $s3 = local[3]
- $s4 = local[4]
- $s5 = local[5]
- $s6 = local[6]
- ret
-
-func Tree.Remove [in 0, out 0, local 3]
- local[0] = $s0
- local[1] = $s1
- local[2] = $s2
- $s0 = $a0
- $s1 = $a1
- $s2 = $a2
- if $s2 goto :null38
- Error("null pointer")
-null38:
- $t0 = [$s2]
- $t0 = [$t0+32]
- $a0 = $s2
- call $t0
- $t0 = $v0
- if0 $t0 goto :if12_else
- $t0 = [$s0]
- $t0 = [$t0+64]
- $a0 = $s0
- $a1 = $s1
- $a2 = $s2
- call $t0
- goto :if12_end
-if12_else:
- if $s2 goto :null39
- Error("null pointer")
-null39:
- $t0 = [$s2]
- $t0 = [$t0+28]
- $a0 = $s2
- call $t0
- $t0 = $v0
- if0 $t0 goto :if13_else
- $t0 = [$s0]
- $t0 = [$t0+60]
- $a0 = $s0
- $a1 = $s1
- $a2 = $s2
- call $t0
- goto :if13_end
-if13_else:
- if $s2 goto :null40
- Error("null pointer")
-null40:
- $t0 = [$s2]
- $t0 = [$t0+20]
- $a0 = $s2
- call $t0
- $s2 = $v0
- if $s1 goto :null41
- Error("null pointer")
-null41:
- $t0 = [$s1]
- $t0 = [$t0+16]
- $a0 = $s1
- call $t0
- $t0 = $v0
- if $t0 goto :null42
- Error("null pointer")
-null42:
- $t1 = [$t0]
- $t1 = [$t1+20]
- $a0 = $t0
- call $t1
- $t1 = $v0
- $t0 = [$s0]
- $t0 = [$t0+44]
- $a0 = $s0
- $a1 = $s2
- $a2 = $t1
- call $t0
- $t0 = $v0
- if0 $t0 goto :if14_else
- if $s1 goto :null43
- Error("null pointer")
-null43:
- $t0 = [$s1]
- $t0 = [$t0+8]
- $t1 = [$s0+24]
- $a0 = $s1
- $a1 = $t1
- call $t0
- if $s1 goto :null44
- Error("null pointer")
-null44:
- $t1 = [$s1]
- $t1 = [$t1+36]
- $a0 = $s1
- $a1 = 0
- call $t1
- goto :if14_end
-if14_else:
- if $s1 goto :null45
- Error("null pointer")
-null45:
- $t1 = [$s1]
- $t1 = [$t1+4]
- $t0 = [$s0+24]
- $a0 = $s1
- $a1 = $t0
- call $t1
- if $s1 goto :null46
- Error("null pointer")
-null46:
- $t0 = [$s1]
- $t0 = [$t0+40]
- $a0 = $s1
- $a1 = 0
- call $t0
-if14_end:
-if13_end:
-if12_end:
- $v0 = 1
- $s0 = local[0]
- $s1 = local[1]
- $s2 = local[2]
- ret
-
-func Tree.RemoveRight [in 0, out 0, local 4]
- local[0] = $s0
- local[1] = $s1
- local[2] = $s2
- local[3] = $s3
- $s0 = $a0
- $s1 = $a1
- $s2 = $a2
-while3_top:
- if $s2 goto :null47
- Error("null pointer")
-null47:
- $t0 = [$s2]
- $t0 = [$t0+28]
- $a0 = $s2
- call $t0
- $t0 = $v0
- if0 $t0 goto :while3_end
- if $s2 goto :null48
- Error("null pointer")
-null48:
- $s3 = [$s2]
- $s3 = [$s3+24]
- if $s2 goto :null49
- Error("null pointer")
-null49:
- $t0 = [$s2]
- $t0 = [$t0+12]
- $a0 = $s2
- call $t0
- $t0 = $v0
- if $t0 goto :null50
- Error("null pointer")
-null50:
- $t1 = [$t0]
- $t1 = [$t1+20]
- $a0 = $t0
- call $t1
- $t1 = $v0
- $a0 = $s2
- $a1 = $t1
- call $s3
- $s1 = $s2
- if $s2 goto :null51
- Error("null pointer")
-null51:
- $t1 = [$s2]
- $t1 = [$t1+12]
- $a0 = $s2
- call $t1
- $s2 = $v0
- goto :while3_top
-while3_end:
- if $s1 goto :null52
- Error("null pointer")
-null52:
- $t1 = [$s1]
- $t1 = [$t1+4]
- $t0 = [$s0+24]
- $a0 = $s1
- $a1 = $t0
- call $t1
- if $s1 goto :null53
- Error("null pointer")
-null53:
- $t0 = [$s1]
- $t0 = [$t0+40]
- $a0 = $s1
- $a1 = 0
- call $t0
- $v0 = 1
- $s0 = local[0]
- $s1 = local[1]
- $s2 = local[2]
- $s3 = local[3]
- ret
-
-func Tree.RemoveLeft [in 0, out 0, local 4]
- local[0] = $s0
- local[1] = $s1
- local[2] = $s2
- local[3] = $s3
- $s0 = $a0
- $s1 = $a1
- $s2 = $a2
-while4_top:
- if $s2 goto :null54
- Error("null pointer")
-null54:
- $t0 = [$s2]
- $t0 = [$t0+32]
- $a0 = $s2
- call $t0
- $t0 = $v0
- if0 $t0 goto :while4_end
- if $s2 goto :null55
- Error("null pointer")
-null55:
- $s3 = [$s2]
- $s3 = [$s3+24]
- if $s2 goto :null56
- Error("null pointer")
-null56:
- $t0 = [$s2]
- $t0 = [$t0+16]
- $a0 = $s2
- call $t0
- $t0 = $v0
- if $t0 goto :null57
- Error("null pointer")
-null57:
- $t1 = [$t0]
- $t1 = [$t1+20]
- $a0 = $t0
- call $t1
- $t1 = $v0
- $a0 = $s2
- $a1 = $t1
- call $s3
- $s1 = $s2
- if $s2 goto :null58
- Error("null pointer")
-null58:
- $t1 = [$s2]
- $t1 = [$t1+16]
- $a0 = $s2
- call $t1
- $s2 = $v0
- goto :while4_top
-while4_end:
- if $s1 goto :null59
- Error("null pointer")
-null59:
- $t1 = [$s1]
- $t1 = [$t1+8]
- $t0 = [$s0+24]
- $a0 = $s1
- $a1 = $t0
- call $t1
- if $s1 goto :null60
- Error("null pointer")
-null60:
- $t0 = [$s1]
- $t0 = [$t0+36]
- $a0 = $s1
- $a1 = 0
- call $t0
- $v0 = 1
- $s0 = local[0]
- $s1 = local[1]
- $s2 = local[2]
- $s3 = local[3]
- ret
-
-func Tree.Search [in 0, out 0, local 4]
- local[0] = $s0
- local[1] = $s1
- local[2] = $s2
- local[3] = $s3
- $t0 = $a0
- $s0 = $a1
- $s1 = $t0
- $s2 = 1
- $s3 = 0
-while5_top:
- if0 $s2 goto :while5_end
- if $s1 goto :null61
- Error("null pointer")
-null61:
- $t0 = [$s1]
- $t0 = [$t0+20]
- $a0 = $s1
- call $t0
- $t0 = $v0
- $t1 = LtS($s0 $t0)
- if0 $t1 goto :if15_else
- if $s1 goto :null62
- Error("null pointer")
-null62:
- $t1 = [$s1]
- $t1 = [$t1+32]
- $a0 = $s1
- call $t1
- $t1 = $v0
- if0 $t1 goto :if16_else
- if $s1 goto :null63
- Error("null pointer")
-null63:
- $t1 = [$s1]
- $t1 = [$t1+16]
- $a0 = $s1
- call $t1
- $s1 = $v0
- goto :if16_end
-if16_else:
- $s2 = 0
-if16_end:
- goto :if15_end
-if15_else:
- $t0 = LtS($t0 $s0)
- if0 $t0 goto :if17_else
- if $s1 goto :null64
- Error("null pointer")
-null64:
- $t0 = [$s1]
- $t0 = [$t0+28]
- $a0 = $s1
- call $t0
- $t0 = $v0
- if0 $t0 goto :if18_else
- if $s1 goto :null65
- Error("null pointer")
-null65:
- $t0 = [$s1]
- $t0 = [$t0+12]
- $a0 = $s1
- call $t0
- $s1 = $v0
- goto :if18_end
-if18_else:
- $s2 = 0
-if18_end:
- goto :if17_end
-if17_else:
- $s3 = 1
- $s2 = 0
-if17_end:
-if15_end:
- goto :while5_top
-while5_end:
- $v0 = $s3
- $s0 = local[0]
- $s1 = local[1]
- $s2 = local[2]
- $s3 = local[3]
- ret
-
-func Tree.Print [in 0, out 0, local 0]
- $t0 = $a0
- $t1 = $t0
- $t2 = [$t0]
- $t2 = [$t2+76]
- $a0 = $t0
- $a1 = $t1
- call $t2
- $v0 = 1
- ret
-
-func Tree.RecPrint [in 0, out 0, local 3]
- local[0] = $s0
- local[1] = $s1
- local[2] = $s2
- $s0 = $a0
- $s1 = $a1
- if $s1 goto :null66
- Error("null pointer")
-null66:
- $t0 = [$s1]
- $t0 = [$t0+32]
- $a0 = $s1
- call $t0
- $t0 = $v0
- if0 $t0 goto :if19_else
- $s2 = [$s0]
- $s2 = [$s2+76]
- if $s1 goto :null67
- Error("null pointer")
-null67:
- $t0 = [$s1]
- $t0 = [$t0+16]
- $a0 = $s1
- call $t0
- $t0 = $v0
- $a0 = $s0
- $a1 = $t0
- call $s2
- goto :if19_end
-if19_else:
-if19_end:
- if $s1 goto :null68
- Error("null pointer")
-null68:
- $t0 = [$s1]
- $t0 = [$t0+20]
- $a0 = $s1
- call $t0
- $t0 = $v0
- PrintIntS($t0)
- if $s1 goto :null69
- Error("null pointer")
-null69:
- $t0 = [$s1]
- $t0 = [$t0+28]
- $a0 = $s1
- call $t0
- $t0 = $v0
- if0 $t0 goto :if20_else
- $s2 = [$s0]
- $s2 = [$s2+76]
- if $s1 goto :null70
- Error("null pointer")
-null70:
- $t0 = [$s1]
- $t0 = [$t0+12]
- $a0 = $s1
- call $t0
- $t0 = $v0
- $a0 = $s0
- $a1 = $t0
- call $s2
- goto :if20_end
-if20_else:
-if20_end:
- $v0 = 1
- $s0 = local[0]
- $s1 = local[1]
- $s2 = local[2]
- ret
-
-func Tree.accept [in 0, out 0, local 0]
- $t0 = $a0
- $t1 = $a1
- PrintIntS(333)
- if $t1 goto :null71
- Error("null pointer")
-null71:
- $t2 = [$t1]
- $t2 = [$t2]
- $a0 = $t1
- $a1 = $t0
- call $t2
- $v0 = 0
- ret
-
-func Visitor.visit [in 0, out 0, local 2]
- local[0] = $s0
- local[1] = $s1
- $s0 = $a0
- $s1 = $a1
- if $s1 goto :null72
- Error("null pointer")
-null72:
- $t0 = [$s1]
- $t0 = [$t0+28]
- $a0 = $s1
- call $t0
- $t0 = $v0
- if0 $t0 goto :if21_else
- if $s1 goto :null73
- Error("null pointer")
-null73:
- $t0 = [$s1]
- $t0 = [$t0+12]
- $a0 = $s1
- call $t0
- $t0 = $v0
- [$s0+8] = $t0
- $t0 = [$s0+8]
- if $t0 goto :null74
- Error("null pointer")
-null74:
- $t1 = [$t0]
- $t1 = [$t1+80]
- $a0 = $t0
- $a1 = $s0
- call $t1
- goto :if21_end
-if21_else:
-if21_end:
- if $s1 goto :null75
- Error("null pointer")
-null75:
- $t1 = [$s1]
- $t1 = [$t1+32]
- $a0 = $s1
- call $t1
- $t1 = $v0
- if0 $t1 goto :if22_else
- if $s1 goto :null76
- Error("null pointer")
-null76:
- $t1 = [$s1]
- $t1 = [$t1+16]
- $a0 = $s1
- call $t1
- $t1 = $v0
- [$s0+4] = $t1
- $t1 = [$s0+4]
- if $t1 goto :null77
- Error("null pointer")
-null77:
- $t0 = [$t1]
- $t0 = [$t0+80]
- $a0 = $t1
- $a1 = $s0
- call $t0
- goto :if22_end
-if22_else:
-if22_end:
- $v0 = 0
- $s0 = local[0]
- $s1 = local[1]
- ret
-
-func MyVisitor.visit [in 0, out 0, local 2]
- local[0] = $s0
- local[1] = $s1
- $s0 = $a0
- $s1 = $a1
- if $s1 goto :null78
- Error("null pointer")
-null78:
- $t0 = [$s1]
- $t0 = [$t0+28]
- $a0 = $s1
- call $t0
- $t0 = $v0
- if0 $t0 goto :if23_else
- if $s1 goto :null79
- Error("null pointer")
-null79:
- $t0 = [$s1]
- $t0 = [$t0+12]
- $a0 = $s1
- call $t0
- $t0 = $v0
- [$s0+8] = $t0
- $t0 = [$s0+8]
- if $t0 goto :null80
- Error("null pointer")
-null80:
- $t1 = [$t0]
- $t1 = [$t1+80]
- $a0 = $t0
- $a1 = $s0
- call $t1
- goto :if23_end
-if23_else:
-if23_end:
- if $s1 goto :null81
- Error("null pointer")
-null81:
- $t1 = [$s1]
- $t1 = [$t1+20]
- $a0 = $s1
- call $t1
- $t1 = $v0
- PrintIntS($t1)
- if $s1 goto :null82
- Error("null pointer")
-null82:
- $t1 = [$s1]
- $t1 = [$t1+32]
- $a0 = $s1
- call $t1
- $t1 = $v0
- if0 $t1 goto :if24_else
- if $s1 goto :null83
- Error("null pointer")
-null83:
- $t1 = [$s1]
- $t1 = [$t1+16]
- $a0 = $s1
- call $t1
- $t1 = $v0
- [$s0+4] = $t1
- $t1 = [$s0+4]
- if $t1 goto :null84
- Error("null pointer")
-null84:
- $t0 = [$t1]
- $t0 = [$t0+80]
- $a0 = $t1
- $a1 = $s0
- call $t0
- goto :if24_end
-if24_else:
-if24_end:
- $v0 = 0
- $s0 = local[0]
- $s1 = local[1]
- ret
-