const functable_QS :QS_Start :QS_Sort :QS_Print :QS_Init func Main [in 0, out 0, local 14] 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] = $t3 local[9] = $t4 local[10] = $t5 local[11] = $t6 local[12] = $t7 local[13] = $t8 $a0 = $s6 $a1 = $s7 call $s5 $t3 = local[8] $t4 = local[9] $t5 = local[10] $t6 = local[11] $t7 = local[12] $t8 = local[13] $s4 = $v0 $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 14] 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] = $t3 local[9] = $t4 local[10] = $t5 local[11] = $t6 local[12] = $t7 local[13] = $t8 $a0 = $s6 $a1 = $s4 call $s5 $t3 = local[8] $t4 = local[9] $t5 = local[10] $t6 = local[11] $t7 = local[12] $t8 = local[13] $s7 = $v0 $s4 = $s7 $s7 = [$s6+0] $s7 = [$s7+8] local[8] = $t3 local[9] = $t4 local[10] = $t5 local[11] = $t6 local[12] = $t7 local[13] = $t8 $a0 = $s6 call $s7 $t3 = local[8] $t4 = local[9] $t5 = local[10] $t6 = local[11] $t7 = local[12] $t8 = local[13] $s5 = $v0 $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] = $t3 local[9] = $t4 local[10] = $t5 local[11] = $t6 local[12] = $t7 local[13] = $t8 $a0 = $s6 $a1 = $s7 $a2 = $s5 call $s3 $t3 = local[8] $t4 = local[9] $t5 = local[10] $t6 = local[11] $t7 = local[12] $t8 = local[13] $s4 = $v0 $s4 = $s4 $s4 = [$s6+0] $s4 = [$s4+8] local[8] = $t3 local[9] = $t4 local[10] = $t5 local[11] = $t6 local[12] = $t7 local[13] = $t8 $a0 = $s6 call $s4 $t3 = local[8] $t4 = local[9] $t5 = local[10] $t6 = local[11] $t7 = local[12] $t8 = local[13] $s5 = $v0 $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 14] 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 $t6 = $t5 $t5 = LtS($t4 $t6 ) $t6 = Eq($t5 0 ) $t5 = $t6 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] $t6 = MulS($s0 4 ) $t6 = Add($t6 4 ) $t6 = Add($t7 $t6 ) $t7 = [$t6+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 $t6 = 1 $t4 = Add($t7 $t6 ) $t6 = $t4 $t4 = LtS($t5 $t6 ) $t6 = $t4 if0 $t6 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] = $t3 local[9] = $t4 local[10] = $t5 local[11] = $t6 local[12] = $t7 local[13] = $t8 $a0 = $s5 $a1 = $s2 $a2 = $s4 call $s1 $t3 = local[8] $t4 = local[9] $t5 = local[10] $t6 = local[11] $t7 = local[12] $t8 = local[13] $s0 = $v0 $s4 = $s0 $s4 = [$s5+0] $s0 = $s3 $s3 = 1 $s2 = Add($s0 $s3 ) $s3 = $s2 $s2 = $s7 $s4 = [$s4+4] local[8] = $t3 local[9] = $t4 local[10] = $t5 local[11] = $t6 local[12] = $t7 local[13] = $t8 $a0 = $s5 $a1 = $s3 $a2 = $s2 call $s4 $t3 = local[8] $t4 = local[9] $t5 = local[10] $t6 = local[11] $t7 = local[12] $t8 = local[13] $s7 = $v0 $s4 = $s7 goto :if22_end if22_else: $s4 = 0 if22_end: $s7 = 0 $v0 = $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_Print [in 0, out 0, local 14] 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] $s3 = MulS($s7 4 ) $s3 = Add($s3 4 ) $s3 = Add($s4 $s3 ) $s4 = [$s3+0] $s3 = $s4 PrintIntS($s3 ) $s3 = $s7 $s4 = 1 $s5 = Add($s3 $s4 ) $s7 = $s5 goto :while104_test while104_end: $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 QS_Init [in 0, out 0, local 14] 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] = $t3 local[9] = $t4 local[10] = $t5 local[11] = $t6 local[12] = $t7 local[13] = $t8 $a0 = $s7 call :AllocArray $t3 = local[8] $t4 = local[9] $t5 = local[10] $t6 = local[11] $t7 = local[12] $t8 = local[13] $s5 = $v0 [$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 14] 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