summaryrefslogtreecommitdiff
path: root/vaporize/tests/Factorial.vaporm
diff options
context:
space:
mode:
Diffstat (limited to 'vaporize/tests/Factorial.vaporm')
-rw-r--r--vaporize/tests/Factorial.vaporm40
1 files changed, 0 insertions, 40 deletions
diff --git a/vaporize/tests/Factorial.vaporm b/vaporize/tests/Factorial.vaporm
deleted file mode 100644
index a7e981c..0000000
--- a/vaporize/tests/Factorial.vaporm
+++ /dev/null
@@ -1,40 +0,0 @@
-const vmt_Fac
- :Fac.ComputeFac
-
-func Main [in 0, out 0, local 0]
- $t0 = HeapAllocZ(4)
- [$t0] = :vmt_Fac
- if $t0 goto :null1
- Error("null pointer")
-null1:
- $t1 = [$t0]
- $t1 = [$t1]
- $a0 = $t0
- $a1 = 10
- call $t1
- $t1 = $v0
- PrintIntS($t1)
- ret
-
-func Fac.ComputeFac [in 0, out 0, local 1]
- local[0] = $s0
- $t0 = $a0
- $s0 = $a1
- $t1 = LtS($s0 1)
- if0 $t1 goto :if1_else
- $t1 = 1
- goto :if1_end
-if1_else:
- $t2 = [$t0]
- $t2 = [$t2]
- $t3 = Sub($s0 1)
- $a0 = $t0
- $a1 = $t3
- call $t2
- $t3 = $v0
- $t1 = MulS($s0 $t3)
-if1_end:
- $v0 = $t1
- $s0 = local[0]
- ret
-