summaryrefslogtreecommitdiff
path: root/vaporize/tests/LinearSearch.names.vaporm
diff options
context:
space:
mode:
Diffstat (limited to 'vaporize/tests/LinearSearch.names.vaporm')
-rw-r--r--vaporize/tests/LinearSearch.names.vaporm182
1 files changed, 0 insertions, 182 deletions
diff --git a/vaporize/tests/LinearSearch.names.vaporm b/vaporize/tests/LinearSearch.names.vaporm
deleted file mode 100644
index 7dbe0c8..0000000
--- a/vaporize/tests/LinearSearch.names.vaporm
+++ /dev/null
@@ -1,182 +0,0 @@
-const vmt_LS
- :LS.Start
- :LS.Print
- :LS.Search
- :LS.Init
-
-func Main [in 0, out 0, local 0]
- $t0{t.0} = HeapAllocZ(12)
- [$t0{t.0}] = :vmt_LS
- if $t0{t.0} goto :null1
- Error("null pointer")
-null1:
- $t1{t.1} = [$t0{t.0}]
- $t1{t.1} = [$t1{t.1}]
- $a0 = $t0{t.0}
- $a1 = 10
- call $t1{t.1}
- $t1{t.2} = $v0
- PrintIntS($t1{t.2})
- ret
-
-func LS.Start [in 0, out 0, local 1]
- local[0] = $s0
- $s0{this} = $a0
- $t0{sz} = $a1
- $t1{t.0} = [$s0{this}]
- $t1{t.0} = [$t1{t.0}+12]
- $a0 = $s0{this}
- $a1 = $t0{sz}
- call $t1{t.0}
- $t1{t.1} = [$s0{this}]
- $t1{t.1} = [$t1{t.1}+4]
- $a0 = $s0{this}
- call $t1{t.1}
- PrintIntS(9999)
- $t1{t.2} = [$s0{this}]
- $t1{t.2} = [$t1{t.2}+8]
- $a0 = $s0{this}
- $a1 = 8
- call $t1{t.2}
- $t1{t.3} = $v0
- PrintIntS($t1{t.3})
- $t1{t.4} = [$s0{this}]
- $t1{t.4} = [$t1{t.4}+8]
- $a0 = $s0{this}
- $a1 = 12
- call $t1{t.4}
- $t1{t.5} = $v0
- PrintIntS($t1{t.5})
- $t1{t.6} = [$s0{this}]
- $t1{t.6} = [$t1{t.6}+8]
- $a0 = $s0{this}
- $a1 = 17
- call $t1{t.6}
- $t1{t.7} = $v0
- PrintIntS($t1{t.7})
- $t1{t.8} = [$s0{this}]
- $t1{t.8} = [$t1{t.8}+8]
- $a0 = $s0{this}
- $a1 = 50
- call $t1{t.8}
- $t1{t.9} = $v0
- PrintIntS($t1{t.9})
- $v0 = 55
- $s0 = local[0]
- ret
-
-func LS.Print [in 0, out 0, local 0]
- $t0{this} = $a0
- $t1{j} = 1
-while1_top:
- $t2{t.0} = [$t0{this}+8]
- $t2{t.1} = LtS($t1{j} $t2{t.0})
- if0 $t2{t.1} goto :while1_end
- $t2{t.2} = [$t0{this}+4]
- if $t2{t.2} goto :null2
- Error("null pointer")
-null2:
- $t3{t.3} = [$t2{t.2}]
- $t3{t.3} = Lt($t1{j} $t3{t.3})
- if $t3{t.3} goto :bounds1
- Error("array index out of bounds")
-bounds1:
- $t3{t.3} = MulS($t1{j} 4)
- $t3{t.3} = Add($t3{t.3} $t2{t.2})
- $t3{t.4} = [$t3{t.3}+4]
- PrintIntS($t3{t.4})
- $t1{j} = Add($t1{j} 1)
- goto :while1_top
-while1_end:
- $v0 = 0
- ret
-
-func LS.Search [in 0, out 0, local 0]
- $t0{this} = $a0
- $t1{num} = $a1
- $t2{j} = 1
- $t3{ifound} = 0
-while2_top:
- $t4{t.0} = [$t0{this}+8]
- $t4{t.1} = LtS($t2{j} $t4{t.0})
- if0 $t4{t.1} goto :while2_end
- $t4{t.2} = [$t0{this}+4]
- if $t4{t.2} goto :null3
- Error("null pointer")
-null3:
- $t5{t.3} = [$t4{t.2}]
- $t5{t.3} = Lt($t2{j} $t5{t.3})
- if $t5{t.3} goto :bounds2
- Error("array index out of bounds")
-bounds2:
- $t5{t.3} = MulS($t2{j} 4)
- $t5{t.3} = Add($t5{t.3} $t4{t.2})
- $t5{aux01} = [$t5{t.3}+4]
- $t4{aux02} = Add($t1{num} 1)
- $t6{t.4} = LtS($t5{aux01} $t1{num})
- if0 $t6{t.4} goto :if1_else
- goto :if1_end
-if1_else:
- $t4{t.5} = LtS($t5{aux01} $t4{aux02})
- $t4{t.6} = Sub(1 $t4{t.5})
- if0 $t4{t.6} goto :if2_else
- goto :if2_end
-if2_else:
- $t3{ifound} = 1
- $t2{j} = [$t0{this}+8]
-if2_end:
-if1_end:
- $t2{j} = Add($t2{j} 1)
- goto :while2_top
-while2_end:
- $v0 = $t3{ifound}
- ret
-
-func LS.Init [in 0, out 0, local 1]
- local[0] = $s0
- $s0{this} = $a0
- $t0{sz} = $a1
- [$s0{this}+8] = $t0{sz}
- $a0 = $t0{sz}
- call :AllocArray
- $t0{t.0} = $v0
- [$s0{this}+4] = $t0{t.0}
- $t0{j} = 1
- $t1{t.1} = [$s0{this}+8]
- $t1{k} = Add($t1{t.1} 1)
-while3_top:
- $t2{t.2} = [$s0{this}+8]
- $t2{t.3} = LtS($t0{j} $t2{t.2})
- if0 $t2{t.3} goto :while3_end
- $t2{aux01} = MulS(2 $t0{j})
- $t3{aux02} = Sub($t1{k} 3)
- $t4{t.4} = [$s0{this}+4]
- if $t4{t.4} goto :null4
- Error("null pointer")
-null4:
- $t5{t.5} = [$t4{t.4}]
- $t5{t.5} = Lt($t0{j} $t5{t.5})
- if $t5{t.5} goto :bounds3
- Error("array index out of bounds")
-bounds3:
- $t5{t.5} = MulS($t0{j} 4)
- $t5{t.5} = Add($t5{t.5} $t4{t.4})
- $t3{t.6} = Add($t2{aux01} $t3{aux02})
- [$t5{t.5}+4] = $t3{t.6}
- $t0{j} = Add($t0{j} 1)
- $t1{k} = Sub($t1{k} 1)
- goto :while3_top
-while3_end:
- $v0 = 0
- $s0 = local[0]
- ret
-
-func AllocArray [in 0, out 0, local 0]
- $t0{size} = $a0
- $t1{bytes} = MulS($t0{size} 4)
- $t1{bytes} = Add($t1{bytes} 4)
- $t1{v} = HeapAllocZ($t1{bytes})
- [$t1{v}] = $t0{size}
- $v0 = $t1{v}
- ret
-