summaryrefslogtreecommitdiff
path: root/output/QuickSort.vaporm
diff options
context:
space:
mode:
Diffstat (limited to 'output/QuickSort.vaporm')
-rw-r--r--output/QuickSort.vaporm576
1 files changed, 576 insertions, 0 deletions
diff --git a/output/QuickSort.vaporm b/output/QuickSort.vaporm
index e69de29..3338b43 100644
--- a/output/QuickSort.vaporm
+++ b/output/QuickSort.vaporm
@@ -0,0 +1,576 @@
+const functable_QS
+ :QS_Start
+ :QS_Sort
+ :QS_Print
+ :QS_Init
+func Main [in 0, out 0, local 17]
+ local[0] = $s0
+ local[1] = $s1
+ local[2] = $s2
+ local[3] = $s3
+ local[4] = $s4
+ local[5] = $s5
+ local[6] = $s6
+ local[7] = $s7
+ $s7 = HeapAllocZ(24 )
+ [$s7+0] = :functable_QS
+ $s6 = $s7
+ $s7 = [$s6+0]
+ $s5 = [$s7+0]
+ $s7 = 10
+ local[8] = $t0
+ local[9] = $t1
+ local[10] = $t2
+ local[11] = $t3
+ local[12] = $t4
+ local[13] = $t5
+ local[14] = $t6
+ local[15] = $t7
+ local[16] = $t8
+ $a0 = $s6
+ $a1 = $s7
+ call $s5
+ $s4 = $v0
+ $t0 = local[8]
+ $t1 = local[9]
+ $t2 = local[10]
+ $t3 = local[11]
+ $t4 = local[12]
+ $t5 = local[13]
+ $t6 = local[14]
+ $t7 = local[15]
+ $t8 = local[16]
+ $s7 = $s4
+ PrintIntS($s7 )
+ $s0 = local[0]
+ $s1 = local[1]
+ $s2 = local[2]
+ $s3 = local[3]
+ $s4 = local[4]
+ $s5 = local[5]
+ $s6 = local[6]
+ $s7 = local[7]
+ ret
+func QS_Start [in 0, out 0, local 17]
+ local[0] = $s0
+ local[1] = $s1
+ local[2] = $s2
+ local[3] = $s3
+ local[4] = $s4
+ local[5] = $s5
+ local[6] = $s6
+ local[7] = $s7
+ $s6 = $a0
+ $s7 = $a1
+ $s5 = [$s6+0]
+ $s4 = $s7
+ $s5 = [$s5+12]
+ local[8] = $t0
+ local[9] = $t1
+ local[10] = $t2
+ local[11] = $t3
+ local[12] = $t4
+ local[13] = $t5
+ local[14] = $t6
+ local[15] = $t7
+ local[16] = $t8
+ $a0 = $s6
+ $a1 = $s4
+ call $s5
+ $s7 = $v0
+ $t0 = local[8]
+ $t1 = local[9]
+ $t2 = local[10]
+ $t3 = local[11]
+ $t4 = local[12]
+ $t5 = local[13]
+ $t6 = local[14]
+ $t7 = local[15]
+ $t8 = local[16]
+ $s4 = $s7
+ $s7 = [$s6+0]
+ $s7 = [$s7+8]
+ local[8] = $t0
+ local[9] = $t1
+ local[10] = $t2
+ local[11] = $t3
+ local[12] = $t4
+ local[13] = $t5
+ local[14] = $t6
+ local[15] = $t7
+ local[16] = $t8
+ $a0 = $s6
+ call $s7
+ $s5 = $v0
+ $t0 = local[8]
+ $t1 = local[9]
+ $t2 = local[10]
+ $t3 = local[11]
+ $t4 = local[12]
+ $t5 = local[13]
+ $t6 = local[14]
+ $t7 = local[15]
+ $t8 = local[16]
+ $s4 = $s5
+ $s5 = 9999
+ PrintIntS($s5 )
+ $s5 = [$s6+20]
+ $s7 = 1
+ $s3 = Sub($s5 $s7 )
+ $s4 = $s3
+ $s3 = [$s6+0]
+ $s7 = 0
+ $s5 = $s4
+ $s3 = [$s3+4]
+ local[8] = $t0
+ local[9] = $t1
+ local[10] = $t2
+ local[11] = $t3
+ local[12] = $t4
+ local[13] = $t5
+ local[14] = $t6
+ local[15] = $t7
+ local[16] = $t8
+ $a0 = $s6
+ $a1 = $s7
+ $a2 = $s5
+ call $s3
+ $s2 = $v0
+ $t0 = local[8]
+ $t1 = local[9]
+ $t2 = local[10]
+ $t3 = local[11]
+ $t4 = local[12]
+ $t5 = local[13]
+ $t6 = local[14]
+ $t7 = local[15]
+ $t8 = local[16]
+ $s4 = $s2
+ $s2 = [$s6+0]
+ $s2 = [$s2+8]
+ local[8] = $t0
+ local[9] = $t1
+ local[10] = $t2
+ local[11] = $t3
+ local[12] = $t4
+ local[13] = $t5
+ local[14] = $t6
+ local[15] = $t7
+ local[16] = $t8
+ $a0 = $s6
+ call $s2
+ $s5 = $v0
+ $t0 = local[8]
+ $t1 = local[9]
+ $t2 = local[10]
+ $t3 = local[11]
+ $t4 = local[12]
+ $t5 = local[13]
+ $t6 = local[14]
+ $t7 = local[15]
+ $t8 = local[16]
+ $s4 = $s5
+ $s5 = 0
+ $v0 = $s5
+ $s0 = local[0]
+ $s1 = local[1]
+ $s2 = local[2]
+ $s3 = local[3]
+ $s4 = local[4]
+ $s5 = local[5]
+ $s6 = local[6]
+ $s7 = local[7]
+ ret
+func QS_Sort [in 0, out 0, local 17]
+ local[0] = $s0
+ local[1] = $s1
+ local[2] = $s2
+ local[3] = $s3
+ local[4] = $s4
+ local[5] = $s5
+ local[6] = $s6
+ local[7] = $s7
+ $s5 = $a0
+ $s6 = $a1
+ $s7 = $a2
+ $s4 = 0
+ $s3 = $s6
+ $s2 = $s7
+ $s1 = LtS($s3 $s2 )
+ $s2 = $s1
+ if0 $s2 goto :if22_else
+if22_body:
+ $s2 = [$s5+16]
+ $s1 = MulS($s7 4 )
+ $s1 = Add($s1 4 )
+ $s1 = Add($s2 $s1 )
+ $s2 = [$s1+0]
+ $s1 = $s2
+ $s2 = $s6
+ $s3 = 1
+ $s0 = Sub($s2 $s3 )
+ $s3 = $s0
+ $s0 = $s7
+ $s2 = 1
+while32_test:
+ $t7 = $s2
+ if0 $t7 goto :while32_end
+while32_body:
+ $t7 = 1
+while34_test:
+ $t6 = $t7
+ if0 $t6 goto :while34_end
+while34_body:
+ $t6 = $s3
+ $t5 = 1
+ $t4 = Add($t6 $t5 )
+ $s3 = $t4
+ $t4 = [$s5+16]
+ $t5 = MulS($s3 4 )
+ $t5 = Add($t5 4 )
+ $t5 = Add($t4 $t5 )
+ $t4 = [$t5+0]
+ $t5 = $t4
+ $t4 = $t5
+ $t6 = $s1
+ $t3 = LtS($t4 $t6 )
+ $t6 = Eq($t3 0 )
+ $t3 = $t6
+ if0 $t3 goto :if42_else
+if42_body:
+ $t7 = 0
+ goto :if42_end
+if42_else:
+ $t7 = 1
+if42_end:
+ goto :while34_test
+while34_end:
+ $t7 = 1
+while47_test:
+ $t3 = $t7
+ if0 $t3 goto :while47_end
+while47_body:
+ $t3 = $s0
+ $t6 = 1
+ $t4 = Sub($t3 $t6 )
+ $s0 = $t4
+ $t4 = [$s5+16]
+ $t6 = MulS($s0 4 )
+ $t6 = Add($t6 4 )
+ $t6 = Add($t4 $t6 )
+ $t4 = [$t6+0]
+ $t5 = $t4
+ $t4 = $s1
+ $s1 = $t5
+ $t5 = LtS($t4 $s1 )
+ $s1 = Eq($t5 0 )
+ $t5 = $s1
+ if0 $t5 goto :if55_else
+if55_body:
+ $t7 = 0
+ goto :if55_end
+if55_else:
+ $t7 = 1
+if55_end:
+ goto :while47_test
+while47_end:
+ $t7 = [$s5+16]
+ $t5 = MulS($s3 4 )
+ $t5 = Add($t5 4 )
+ $t5 = Add($t7 $t5 )
+ $t7 = [$t5+0]
+ $s4 = $t7
+ $t7 = [$s5+16]
+ $t5 = MulS($s3 4 )
+ $t5 = Add($t5 4 )
+ $t5 = Add($t7 $t5 )
+ $t7 = [$s5+16]
+ $s1 = MulS($s0 4 )
+ $s1 = Add($s1 4 )
+ $s1 = Add($t7 $s1 )
+ $t7 = [$s1+0]
+ [$t5+0] = $t7
+ $t7 = [$s5+16]
+ $t5 = MulS($s0 4 )
+ $t5 = Add($t5 4 )
+ $t5 = Add($t7 $t5 )
+ [$t5+0] = $s4
+ $t5 = $s0
+ $t7 = $s3
+ $s1 = 1
+ $t4 = Add($t7 $s1 )
+ $s1 = $t4
+ $t4 = LtS($t5 $s1 )
+ $s1 = $t4
+ if0 $s1 goto :if70_else
+if70_body:
+ $s2 = 0
+ goto :if70_end
+if70_else:
+ $s2 = 1
+if70_end:
+ goto :while32_test
+while32_end:
+ $s2 = [$s5+16]
+ $s1 = MulS($s0 4 )
+ $s1 = Add($s1 4 )
+ $s1 = Add($s2 $s1 )
+ $s2 = [$s5+16]
+ $s0 = MulS($s3 4 )
+ $s0 = Add($s0 4 )
+ $s0 = Add($s2 $s0 )
+ $s2 = [$s0+0]
+ [$s1+0] = $s2
+ $s2 = [$s5+16]
+ $s1 = MulS($s3 4 )
+ $s1 = Add($s1 4 )
+ $s1 = Add($s2 $s1 )
+ $s2 = [$s5+16]
+ $s0 = MulS($s7 4 )
+ $s0 = Add($s0 4 )
+ $s0 = Add($s2 $s0 )
+ $s2 = [$s0+0]
+ [$s1+0] = $s2
+ $s2 = [$s5+16]
+ $s1 = MulS($s7 4 )
+ $s1 = Add($s1 4 )
+ $s1 = Add($s2 $s1 )
+ [$s1+0] = $s4
+ $s1 = [$s5+0]
+ $s4 = $s3
+ $s2 = 1
+ $s0 = Sub($s4 $s2 )
+ $s4 = $s6
+ $s4 = $s0
+ $s1 = [$s1+4]
+ local[8] = $t0
+ local[9] = $t1
+ local[10] = $t2
+ local[11] = $t3
+ local[12] = $t4
+ local[13] = $t5
+ local[14] = $t6
+ local[15] = $t7
+ local[16] = $t8
+ $a0 = $s5
+ $a1 = $s2
+ $a2 = $s4
+ call $s1
+ $s0 = $v0
+ $t0 = local[8]
+ $t1 = local[9]
+ $t2 = local[10]
+ $t3 = local[11]
+ $t4 = local[12]
+ $t5 = local[13]
+ $t6 = local[14]
+ $t7 = local[15]
+ $t8 = local[16]
+ $s4 = $s0
+ $s0 = [$s5+0]
+ $s2 = $s3
+ $s3 = 1
+ $s1 = Add($s2 $s3 )
+ $s3 = $s1
+ $s1 = $s7
+ $s0 = [$s0+4]
+ local[8] = $t0
+ local[9] = $t1
+ local[10] = $t2
+ local[11] = $t3
+ local[12] = $t4
+ local[13] = $t5
+ local[14] = $t6
+ local[15] = $t7
+ local[16] = $t8
+ $a0 = $s5
+ $a1 = $s3
+ $a2 = $s1
+ call $s0
+ $s7 = $v0
+ $t0 = local[8]
+ $t1 = local[9]
+ $t2 = local[10]
+ $t3 = local[11]
+ $t4 = local[12]
+ $t5 = local[13]
+ $t6 = local[14]
+ $t7 = local[15]
+ $t8 = local[16]
+ $s4 = $s7
+ goto :if22_end
+if22_else:
+ $s4 = 0
+if22_end:
+ $s4 = 0
+ $v0 = $s4
+ $s0 = local[0]
+ $s1 = local[1]
+ $s2 = local[2]
+ $s3 = local[3]
+ $s4 = local[4]
+ $s5 = local[5]
+ $s6 = local[6]
+ $s7 = local[7]
+ ret
+func QS_Print [in 0, out 0, local 17]
+ local[0] = $s0
+ local[1] = $s1
+ local[2] = $s2
+ local[3] = $s3
+ local[4] = $s4
+ local[5] = $s5
+ local[6] = $s6
+ local[7] = $s7
+ $s6 = $a0
+ $s7 = 0
+while104_test:
+ $s5 = $s7
+ $s4 = [$s6+20]
+ $s3 = LtS($s5 $s4 )
+ $s4 = $s3
+ if0 $s4 goto :while104_end
+while104_body:
+ $s4 = [$s6+16]
+ $s6 = MulS($s7 4 )
+ $s6 = Add($s6 4 )
+ $s6 = Add($s4 $s6 )
+ $s4 = [$s6+0]
+ $s6 = $s4
+ PrintIntS($s6 )
+ $s6 = $s7
+ $s4 = 1
+ $s3 = Add($s6 $s4 )
+ $s7 = $s3
+ goto :while104_test
+while104_end:
+ $s3 = 0
+ $v0 = $s3
+ $s0 = local[0]
+ $s1 = local[1]
+ $s2 = local[2]
+ $s3 = local[3]
+ $s4 = local[4]
+ $s5 = local[5]
+ $s6 = local[6]
+ $s7 = local[7]
+ ret
+func QS_Init [in 0, out 0, local 17]
+ local[0] = $s0
+ local[1] = $s1
+ local[2] = $s2
+ local[3] = $s3
+ local[4] = $s4
+ local[5] = $s5
+ local[6] = $s6
+ local[7] = $s7
+ $s6 = $a0
+ $s7 = $a1
+ [$s6+20] = $s7
+ local[8] = $t0
+ local[9] = $t1
+ local[10] = $t2
+ local[11] = $t3
+ local[12] = $t4
+ local[13] = $t5
+ local[14] = $t6
+ local[15] = $t7
+ local[16] = $t8
+ $a0 = $s7
+ call :AllocArray
+ $s5 = $v0
+ $t0 = local[8]
+ $t1 = local[9]
+ $t2 = local[10]
+ $t3 = local[11]
+ $t4 = local[12]
+ $t5 = local[13]
+ $t6 = local[14]
+ $t7 = local[15]
+ $t8 = local[16]
+ [$s6+16] = $s5
+ $s5 = [$s6+16]
+ $s7 = MulS(0 4 )
+ $s7 = Add($s7 4 )
+ $s7 = Add($s5 $s7 )
+ [$s7+0] = 20
+ $s7 = [$s6+16]
+ $s5 = MulS(1 4 )
+ $s5 = Add($s5 4 )
+ $s5 = Add($s7 $s5 )
+ [$s5+0] = 7
+ $s5 = [$s6+16]
+ $s7 = MulS(2 4 )
+ $s7 = Add($s7 4 )
+ $s7 = Add($s5 $s7 )
+ [$s7+0] = 12
+ $s7 = [$s6+16]
+ $s5 = MulS(3 4 )
+ $s5 = Add($s5 4 )
+ $s5 = Add($s7 $s5 )
+ [$s5+0] = 18
+ $s5 = [$s6+16]
+ $s7 = MulS(4 4 )
+ $s7 = Add($s7 4 )
+ $s7 = Add($s5 $s7 )
+ [$s7+0] = 2
+ $s7 = [$s6+16]
+ $s5 = MulS(5 4 )
+ $s5 = Add($s5 4 )
+ $s5 = Add($s7 $s5 )
+ [$s5+0] = 11
+ $s5 = [$s6+16]
+ $s7 = MulS(6 4 )
+ $s7 = Add($s7 4 )
+ $s7 = Add($s5 $s7 )
+ [$s7+0] = 6
+ $s7 = [$s6+16]
+ $s5 = MulS(7 4 )
+ $s5 = Add($s5 4 )
+ $s5 = Add($s7 $s5 )
+ [$s5+0] = 9
+ $s5 = [$s6+16]
+ $s7 = MulS(8 4 )
+ $s7 = Add($s7 4 )
+ $s7 = Add($s5 $s7 )
+ [$s7+0] = 19
+ $s7 = [$s6+16]
+ $s6 = MulS(9 4 )
+ $s6 = Add($s6 4 )
+ $s6 = Add($s7 $s6 )
+ [$s6+0] = 5
+ $s6 = 0
+ $v0 = $s6
+ $s0 = local[0]
+ $s1 = local[1]
+ $s2 = local[2]
+ $s3 = local[3]
+ $s4 = local[4]
+ $s5 = local[5]
+ $s6 = local[6]
+ $s7 = local[7]
+ ret
+func AllocArray [in 0, out 0, local 17]
+ local[0] = $s0
+ local[1] = $s1
+ local[2] = $s2
+ local[3] = $s3
+ local[4] = $s4
+ local[5] = $s5
+ local[6] = $s6
+ local[7] = $s7
+ $s7 = $a0
+ $s6 = MulS($s7 4 )
+ $s6 = Add($s6 4 )
+ $s5 = HeapAllocZ($s6 )
+ [$s5+0] = $s7
+ $v0 = $s5
+ $s0 = local[0]
+ $s1 = local[1]
+ $s2 = local[2]
+ $s3 = local[3]
+ $s4 = local[4]
+ $s5 = local[5]
+ $s6 = local[6]
+ $s7 = local[7]
+ ret