func Main() t.4 = HeapAllocZ(16) [t.4+0] = :functable_A t.5 = t.4 t.6 = t.5 t.3 = t.6 t.8 = t.3 t.3 = t.8 t.9 = [t.3+0] t.10 = [t.9+4] t.12 = 0 t.13 = 1 t.11 = Sub(t.12 t.13) t.14 = t.11 t.15 = 400 t.16 = t.15 t.18 = 6 t.19 = 7 t.17 = MulS(t.18 t.19) t.20 = t.17 t.7 = call t.10(t.3 t.14 t.16 t.20) t.21 = t.7 t.22 = t.21 PrintIntS(t.22) t.24 = t.3 t.3 = t.24 t.25 = [t.3+0] t.26 = [t.25+0] t.28 = 0 t.29 = 1 t.27 = Add(t.28 t.29) t.30 = t.27 t.31 = 400 t.32 = t.31 t.23 = call t.26(t.3 t.30 t.32) t.33 = t.23 t.34 = t.33 PrintIntS(t.34) ret const functable_A :A_foo :A_bar func A_foo(this t.0 t.1 ) t.2 = 3 t.3 = t.2 [this+8] = t.3 t.4 = 22 t.5 = t.4 t.6 = t.5 ret t.6 func A_bar(this t.0 t.1 t.2 ) t.3 = 6 t.4 = t.3 t.5 = t.4 ret t.5 func AllocArray(size) bytes = MulS(size 4) bytes = Add(bytes 4) v = HeapAllocZ(bytes) [v] = size ret v