detached 49bede1

purego: add support for linux/386 (#403)

Adds the required assembly for linux/386.

Closes #369
commit
49bede11a66085d4400e4a257e4c77c9604c791a
author
George Adams · · 2026-01-30 03:11 UTC
committer
GitHub · · 2026-01-30 03:11 UTC
parent
df7b1ee
signature
GPG UnverifiedB5690EEEBB952194 The key is unknown
refs
tag: v0.10.0-alpha.4
17 files · +4617 -35
M .github/workflows/test.yml +1 -0
@@ -121,6 +121,7 @@ jobs:
121121 sudo apt-get update
122122 sudo apt-get install gcc-multilib
123123 sudo apt-get install g++-multilib
124+ env CGO_ENABLED=0 GOARCH=386 go test -shuffle=on -v -count=10 ./...
124125 env CGO_ENABLED=1 GOARCH=386 go test -shuffle=on -v -count=10 ./...
125126
126127 - name: go test (Linux arm)
M README.md +1 -1
@@ -42,7 +42,7 @@ Tier 2 platforms are supported by PureGo on a best-effort basis. Critical bugs o
4242
4343 - **Android**: 386<sup>1</sup>, arm<sup>1</sup>
4444 - **FreeBSD**: amd64<sup>2</sup>, arm64<sup>2</sup>
45-- **Linux**: 386<sup>1</sup>, arm, loong64, riscv64
45+- **Linux**: 386, arm, loong64, riscv64
4646 - **Windows**: 386<sup>3</sup>, arm<sup>3,4</sup>
4747
4848 #### Support Notes
M callback_test.go +1 -1
@@ -1,7 +1,7 @@
11 // SPDX-License-Identifier: Apache-2.0
22 // SPDX-FileCopyrightText: 2023 The Ebitengine Authors
33
4-//go:build darwin || (linux && (amd64 || arm || arm64 || loong64 || riscv64))
4+//go:build darwin || (linux && (386 || amd64 || arm || arm64 || loong64 || riscv64))
55
66 package purego_test
77
M func.go +33 -9
@@ -133,7 +133,7 @@ func RegisterFunc(fptr any, cfn uintptr) {
133133 panic("purego: cfn is nil")
134134 }
135135 if ty.NumOut() == 1 && (ty.Out(0).Kind() == reflect.Float32 || ty.Out(0).Kind() == reflect.Float64) &&
136- runtime.GOARCH != "arm" && runtime.GOARCH != "arm64" && runtime.GOARCH != "amd64" && runtime.GOARCH != "loong64" && runtime.GOARCH != "riscv64" {
136+ runtime.GOARCH != "arm" && runtime.GOARCH != "arm64" && runtime.GOARCH != "386" && runtime.GOARCH != "amd64" && runtime.GOARCH != "loong64" && runtime.GOARCH != "riscv64" {
137137 panic("purego: float returns are not supported")
138138 }
139139 {
@@ -167,10 +167,7 @@ func RegisterFunc(fptr any, cfn uintptr) {
167167 stack++
168168 }
169169 case reflect.Float32, reflect.Float64:
170- if is32bit && runtime.GOARCH != "arm" {
171- panic("purego: floats only supported on 64bit platforms")
172- }
173- if floats < numOfFloatRegisters {
170+ if floats < numOfFloatRegisters() {
174171 floats++
175172 } else {
176173 stack++
@@ -227,7 +224,10 @@ func RegisterFunc(fptr any, cfn uintptr) {
227224
228225 v := reflect.MakeFunc(ty, func(args []reflect.Value) (results []reflect.Value) {
229226 var sysargs [maxArgs]uintptr
230- var floats [numOfFloatRegisters]uintptr
227+ // Use maxArgs instead of numOfFloatRegisters() to keep this code path allocation-free,
228+ // since numOfFloatRegisters() is a function call, not a constant.
229+ // maxArgs is always greater than or equal to numOfFloatRegisters() so this is safe.
230+ var floats [maxArgs]uintptr
231231 var numInts int
232232 var numFloats int
233233 var numStack int
@@ -247,7 +247,7 @@ func RegisterFunc(fptr any, cfn uintptr) {
247247 }
248248 }
249249 addFloat = func(x uintptr) {
250- if numFloats < numOfFloatRegisters {
250+ if numFloats < numOfFloatRegisters() {
251251 floats[numFloats] = x
252252 numFloats++
253253 } else {
@@ -358,7 +358,12 @@ func RegisterFunc(fptr any, cfn uintptr) {
358358 case reflect.Float32:
359359 // NOTE: syscall.r2 is only the floating return value on 64bit platforms.
360360 // On 32bit platforms syscall.r2 is the upper part of a 64bit return.
361- v.SetFloat(float64(math.Float32frombits(uint32(syscall.f1))))
361+ // On 386, x87 FPU returns floats as float64 in ST(0), so we read as float64 and convert.
362+ if runtime.GOARCH == "386" {
363+ v.SetFloat(math.Float64frombits(uint64(syscall.f1) | (uint64(syscall.f2) << 32)))
364+ } else {
365+ v.SetFloat(float64(math.Float32frombits(uint32(syscall.f1))))
366+ }
362367 case reflect.Float64:
363368 // NOTE: syscall.r2 is only the floating return value on 64bit platforms.
364369 // On 32bit platforms syscall.r2 is the upper part of a 64bit return.
@@ -479,6 +484,22 @@ func roundUpTo8(val uintptr) uintptr {
479484 return (val + align8ByteMask) &^ align8ByteMask
480485 }
481486
487+func numOfFloatRegisters() int {
488+ switch runtime.GOARCH {
489+ case "amd64", "arm64", "loong64", "riscv64":
490+ return 8
491+ case "arm":
492+ return 16
493+ case "386":
494+ // i386 SysV ABI passes all arguments on the stack, including floats
495+ return 0
496+ default:
497+ // since this platform isn't supported and can therefore only access
498+ // integer registers it is safest to return 8
499+ return 8
500+ }
501+}
502+
482503 func numOfIntegerRegisters() int {
483504 switch runtime.GOARCH {
484505 case "arm64", "loong64", "riscv64":
@@ -487,6 +508,9 @@ func numOfIntegerRegisters() int {
487508 return 6
488509 case "arm":
489510 return 4
511+ case "386":
512+ // i386 SysV ABI passes all arguments on the stack
513+ return 0
490514 default:
491515 // since this platform isn't supported and can therefore only access
492516 // integer registers it is fine to return the maxArgs
@@ -508,7 +532,7 @@ func estimateStackBytes(ty reflect.Type) int {
508532 usesInt := arg.Kind() != reflect.Float32 && arg.Kind() != reflect.Float64
509533 if usesInt && numInts < numOfIntegerRegisters() {
510534 numInts++
511- } else if !usesInt && numFloats < numOfFloatRegisters {
535+ } else if !usesInt && numFloats < numOfFloatRegisters() {
512536 numFloats++
513537 } else {
514538 // Goes to stack - accumulate total bytes
M func_test.go +7 -4
@@ -50,7 +50,7 @@ func TestRegisterFunc(t *testing.T) {
5050 }
5151
5252 func Test_qsort(t *testing.T) {
53- if runtime.GOARCH != "arm" && runtime.GOARCH != "arm64" && runtime.GOARCH != "amd64" && runtime.GOARCH != "loong64" && runtime.GOARCH != "riscv64" {
53+ if runtime.GOARCH != "arm" && runtime.GOARCH != "arm64" && runtime.GOARCH != "386" && runtime.GOARCH != "amd64" && runtime.GOARCH != "loong64" && runtime.GOARCH != "riscv64" {
5454 t.Skip("Platform doesn't support Floats")
5555 return
5656 }
@@ -79,10 +79,13 @@ func Test_qsort(t *testing.T) {
7979 }
8080
8181 func TestRegisterFunc_Floats(t *testing.T) {
82- if runtime.GOARCH != "arm" && runtime.GOARCH != "arm64" && runtime.GOARCH != "amd64" && runtime.GOARCH != "loong64" && runtime.GOARCH != "riscv64" {
82+ if runtime.GOARCH != "arm" && runtime.GOARCH != "arm64" && runtime.GOARCH != "386" && runtime.GOARCH != "amd64" && runtime.GOARCH != "loong64" && runtime.GOARCH != "riscv64" {
8383 t.Skip("Platform doesn't support Floats")
8484 return
8585 }
86+ if runtime.GOOS == "windows" && runtime.GOARCH == "386" {
87+ t.Skip("need a 32bit gcc to run this test") // TODO: find 32bit gcc for test
88+ }
8689 library, err := getSystemLibrary()
8790 if err != nil {
8891 t.Fatalf("couldn't get system library: %s", err)
@@ -118,7 +121,7 @@ func TestRegisterFunc_Floats(t *testing.T) {
118121 }
119122
120123 func TestRegisterLibFunc_Bool(t *testing.T) {
121- if runtime.GOARCH != "arm" && runtime.GOARCH != "arm64" && runtime.GOARCH != "amd64" && runtime.GOARCH != "loong64" && runtime.GOARCH != "riscv64" {
124+ if runtime.GOARCH != "arm" && runtime.GOARCH != "arm64" && runtime.GOARCH != "386" && runtime.GOARCH != "amd64" && runtime.GOARCH != "loong64" && runtime.GOARCH != "riscv64" {
122125 t.Skip("Platform doesn't support callbacks")
123126 return
124127 }
@@ -373,7 +376,7 @@ func TestABI_ArgumentPassing(t *testing.T) {
373376 if tt.name == "20_int32" && (runtime.GOOS != "darwin" || runtime.GOARCH != "arm64") {
374377 t.Skip("20 int32 arguments only supported on Darwin ARM64 with smart stack checking")
375378 }
376- if tt.name == "10_float32" && (runtime.GOARCH == "386" || runtime.GOARCH == "arm" || runtime.GOARCH == "loong64" || runtime.GOARCH == "riscv64") {
379+ if tt.name == "10_float32" && (runtime.GOARCH == "loong64" || runtime.GOARCH == "riscv64") {
377380 t.Skip("float32 stack arguments not yet supported on this platform")
378381 }
379382 // Struct tests require Darwin ARM64 or AMD64
M internal/cgo/syscall_cgo_unix.go +1 -1
@@ -1,7 +1,7 @@
11 // SPDX-License-Identifier: Apache-2.0
22 // SPDX-FileCopyrightText: 2022 The Ebitengine Authors
33
4-//go:build freebsd || (linux && !(amd64 || arm || arm64 || loong64 || riscv64)) || netbsd
4+//go:build freebsd || (linux && !(386 || amd64 || arm || arm64 || loong64 || riscv64)) || netbsd
55
66 package cgo
77
A internal/fakecgo/asm_386.s +29 -0
@@ -0,0 +1,29 @@
1+// Copyright 2009 The Go Authors. All rights reserved.
2+// Use of this source code is governed by a BSD-style
3+// license that can be found in the LICENSE file.
4+
5+#include "textflag.h"
6+
7+// Called by C code generated by cmd/cgo.
8+// func crosscall2(fn, a unsafe.Pointer, n int32, ctxt uintptr)
9+// Saves C callee-saved registers and calls cgocallback with three arguments.
10+// fn is the PC of a func(a unsafe.Pointer) function.
11+TEXT crosscall2(SB), NOSPLIT, $28-16
12+ MOVL BP, 24(SP)
13+ MOVL BX, 20(SP)
14+ MOVL SI, 16(SP)
15+ MOVL DI, 12(SP)
16+
17+ MOVL ctxt+12(FP), AX
18+ MOVL AX, 8(SP)
19+ MOVL a+4(FP), AX
20+ MOVL AX, 4(SP)
21+ MOVL fn+0(FP), AX
22+ MOVL AX, 0(SP)
23+ CALL runtime·cgocallback(SB)
24+
25+ MOVL 12(SP), DI
26+ MOVL 16(SP), SI
27+ MOVL 20(SP), BX
28+ MOVL 24(SP), BP
29+ RET
A internal/fakecgo/trampolines_386.s +107 -0
@@ -0,0 +1,107 @@
1+// SPDX-License-Identifier: Apache-2.0
2+// SPDX-FileCopyrightText: 2026 The Ebitengine Authors
3+
4+//go:build !cgo && (freebsd || linux)
5+
6+#include "textflag.h"
7+#include "go_asm.h"
8+
9+// These trampolines map the gcc ABI to Go ABI0 and then call into the Go equivalent functions.
10+// On i386, both GCC and Go use stack-based calling conventions.
11+//
12+// When C calls a function, the stack looks like:
13+// 0(SP) = return address
14+// 4(SP) = arg1
15+// 8(SP) = arg2
16+// ...
17+//
18+// When we declare a Go function with frame size $N-0, Go's prologue
19+// effectively does SUB $N, SP, so the C arguments shift up by N bytes:
20+// N+0(SP) = return address
21+// N+4(SP) = arg1
22+// N+8(SP) = arg2
23+//
24+// Go ABI0 on 386 expects arguments starting at 0(FP) which equals N+4(SP)
25+// after the prologue (where N is the local frame size).
26+
27+TEXT x_cgo_init_trampoline(SB), NOSPLIT, $8-0
28+ // C args at 12(SP) and 16(SP) after frame setup (8 bytes local + 4 bytes ret addr)
29+ // Go function expects args at 0(SP) and 4(SP) in local frame
30+ MOVL 12(SP), AX // first C arg
31+ MOVL 16(SP), BX // second C arg
32+ MOVL AX, 0(SP) // Go arg 1
33+ MOVL BX, 4(SP) // Go arg 2
34+ MOVL ·x_cgo_init_call(SB), CX
35+ MOVL (CX), CX
36+ CALL CX
37+ RET
38+
39+TEXT x_cgo_thread_start_trampoline(SB), NOSPLIT, $4-0
40+ // C args at 8(SP) after frame setup (4 bytes local + 4 bytes ret addr)
41+ MOVL 8(SP), AX // first C arg
42+ MOVL AX, 0(SP) // Go arg 1
43+ MOVL ·x_cgo_thread_start_call(SB), CX
44+ MOVL (CX), CX
45+ CALL CX
46+ RET
47+
48+TEXT x_cgo_setenv_trampoline(SB), NOSPLIT, $4-0
49+ MOVL 8(SP), AX // first C arg
50+ MOVL AX, 0(SP) // Go arg 1
51+ MOVL ·x_cgo_setenv_call(SB), CX
52+ MOVL (CX), CX
53+ CALL CX
54+ RET
55+
56+TEXT x_cgo_unsetenv_trampoline(SB), NOSPLIT, $4-0
57+ MOVL 8(SP), AX // first C arg
58+ MOVL AX, 0(SP) // Go arg 1
59+ MOVL ·x_cgo_unsetenv_call(SB), CX
60+ MOVL (CX), CX
61+ CALL CX
62+ RET
63+
64+TEXT x_cgo_notify_runtime_init_done_trampoline(SB), NOSPLIT, $0-0
65+ CALL ·x_cgo_notify_runtime_init_done(SB)
66+ RET
67+
68+TEXT x_cgo_bindm_trampoline(SB), NOSPLIT, $0
69+ CALL ·x_cgo_bindm(SB)
70+ RET
71+
72+// func setg_trampoline(setg uintptr, g uintptr)
73+// This is called from Go, so args are at normal FP positions
74+TEXT ·setg_trampoline(SB), NOSPLIT, $4-8
75+ MOVL g+4(FP), AX
76+ MOVL setg+0(FP), BX
77+
78+ // setg expects g in 0(SP)
79+ MOVL AX, 0(SP)
80+ CALL BX
81+ RET
82+
83+TEXT threadentry_trampoline(SB), NOSPLIT, $4-0
84+ MOVL 8(SP), AX // first C arg
85+ MOVL AX, 0(SP) // Go arg 1
86+ MOVL ·threadentry_call(SB), CX
87+ MOVL (CX), CX
88+ CALL CX
89+ RET
90+
91+TEXT ·call5(SB), NOSPLIT, $20-28
92+ MOVL fn+0(FP), AX
93+ MOVL a1+4(FP), BX
94+ MOVL a2+8(FP), CX
95+ MOVL a3+12(FP), DX
96+ MOVL a4+16(FP), SI
97+ MOVL a5+20(FP), DI
98+
99+ // Place arguments on local stack frame for C calling convention
100+ MOVL BX, 0(SP) // a1
101+ MOVL CX, 4(SP) // a2
102+ MOVL DX, 8(SP) // a3
103+ MOVL SI, 12(SP) // a4
104+ MOVL DI, 16(SP) // a5
105+ CALL AX
106+ MOVL AX, r1+24(FP)
107+ RET
M struct_arm64.go +6 -6
@@ -78,8 +78,8 @@ func addStruct(v reflect.Value, numInts, numFloats, numStack *int, addInt, addFl
7878 if hva, hfa, size := isHVA(v.Type()), isHFA(v.Type()), v.Type().Size(); hva || hfa || size <= 16 {
7979 // if this doesn't fit entirely in registers then
8080 // each element goes onto the stack
81- if hfa && *numFloats+v.NumField() > numOfFloatRegisters {
82- *numFloats = numOfFloatRegisters
81+ if hfa && *numFloats+v.NumField() > numOfFloatRegisters() {
82+ *numFloats = numOfFloatRegisters()
8383 } else if hva && *numInts+v.NumField() > numOfIntegerRegisters() {
8484 *numInts = numOfIntegerRegisters()
8585 }
@@ -365,7 +365,7 @@ func shouldBundleStackArgs(v reflect.Value, numInts, numFloats int) bool {
365365 isInt := !isFloat && kind != reflect.Struct
366366 primitiveOnStack :=
367367 (isInt && numInts >= numOfIntegerRegisters()) ||
368- (isFloat && numFloats >= numOfFloatRegisters)
368+ (isFloat && numFloats >= numOfFloatRegisters())
369369 if primitiveOnStack {
370370 return true
371371 }
@@ -382,7 +382,7 @@ func shouldBundleStackArgs(v reflect.Value, numInts, numFloats int) bool {
382382
383383 if hfa {
384384 need := v.NumField()
385- return numFloats+need > numOfFloatRegisters
385+ return numFloats+need > numOfFloatRegisters()
386386 }
387387
388388 if hva {
@@ -407,7 +407,7 @@ func structFitsInRegisters(val reflect.Value, tempNumInts, tempNumFloats int) (b
407407
408408 if hfa {
409409 // HFA: check if elements fit in float registers
410- if tempNumFloats+val.NumField() <= numOfFloatRegisters {
410+ if tempNumFloats+val.NumField() <= numOfFloatRegisters() {
411411 return true, tempNumInts, tempNumFloats + val.NumField()
412412 }
413413 } else if hva {
@@ -451,7 +451,7 @@ func collectStackArgs(args []reflect.Value, startIdx int, numInts, numFloats int
451451 // Primitive argument
452452 isFloat := val.Kind() == reflect.Float32 || val.Kind() == reflect.Float64
453453 if isFloat {
454- fitsInRegister = tempNumFloats < numOfFloatRegisters
454+ fitsInRegister = tempNumFloats < numOfFloatRegisters()
455455 newNumFloats = tempNumFloats + 1
456456 newNumInts = tempNumInts
457457 } else {
A sys_386.s +147 -0
@@ -0,0 +1,147 @@
1+// SPDX-License-Identifier: Apache-2.0
2+// SPDX-FileCopyrightText: 2026 The Ebitengine Authors
3+
4+//go:build linux
5+
6+#include "textflag.h"
7+#include "go_asm.h"
8+#include "funcdata.h"
9+
10+#define STACK_SIZE 160
11+#define PTR_ADDRESS (STACK_SIZE - 4)
12+
13+// syscall15X calls a function in libc on behalf of the syscall package.
14+// syscall15X takes a pointer to a struct like:
15+// struct {
16+// fn uintptr
17+// a1 uintptr
18+// ...
19+// a32 uintptr
20+// f1 uintptr
21+// ...
22+// f16 uintptr
23+// arm64_r8 uintptr
24+// }
25+// syscall15X must be called on the g0 stack with the
26+// C calling convention (use libcCall).
27+//
28+// On i386 System V ABI, all arguments are passed on the stack.
29+// Return value is in EAX (and EDX for 64-bit values).
30+GLOBL ·syscall15XABI0(SB), NOPTR|RODATA, $4
31+DATA ·syscall15XABI0(SB)/4, $syscall15X(SB)
32+TEXT syscall15X(SB), NOSPLIT|NOFRAME, $0-0
33+ // Called via C calling convention: argument pointer at 4(SP)
34+ // NOT via Go calling convention
35+ // On i386, the first argument is at 4(SP) after CALL pushes return address
36+ MOVL 4(SP), AX // get pointer to syscall15Args
37+
38+ // Save callee-saved registers
39+ PUSHL BP
40+ PUSHL BX
41+ PUSHL SI
42+ PUSHL DI
43+
44+ MOVL AX, BX // save args pointer in BX
45+
46+ // Allocate stack space for C function arguments
47+ // i386 SysV: all 32 args on stack = 32 * 4 = 128 bytes
48+ // Plus 16 bytes for alignment and local storage
49+ SUBL $STACK_SIZE, SP
50+ MOVL BX, PTR_ADDRESS(SP) // save args pointer
51+
52+ // Load function pointer
53+ MOVL syscall15Args_fn(BX), AX
54+ MOVL AX, (PTR_ADDRESS-4)(SP) // save fn pointer
55+
56+ // Push all integer arguments onto the stack (a1-a32)
57+ // i386 SysV ABI: arguments pushed right-to-left, but we're
58+ // setting up the stack from low to high addresses
59+ MOVL syscall15Args_a1(BX), AX
60+ MOVL AX, 0(SP)
61+ MOVL syscall15Args_a2(BX), AX
62+ MOVL AX, 4(SP)
63+ MOVL syscall15Args_a3(BX), AX
64+ MOVL AX, 8(SP)
65+ MOVL syscall15Args_a4(BX), AX
66+ MOVL AX, 12(SP)
67+ MOVL syscall15Args_a5(BX), AX
68+ MOVL AX, 16(SP)
69+ MOVL syscall15Args_a6(BX), AX
70+ MOVL AX, 20(SP)
71+ MOVL syscall15Args_a7(BX), AX
72+ MOVL AX, 24(SP)
73+ MOVL syscall15Args_a8(BX), AX
74+ MOVL AX, 28(SP)
75+ MOVL syscall15Args_a9(BX), AX
76+ MOVL AX, 32(SP)
77+ MOVL syscall15Args_a10(BX), AX
78+ MOVL AX, 36(SP)
79+ MOVL syscall15Args_a11(BX), AX
80+ MOVL AX, 40(SP)
81+ MOVL syscall15Args_a12(BX), AX
82+ MOVL AX, 44(SP)
83+ MOVL syscall15Args_a13(BX), AX
84+ MOVL AX, 48(SP)
85+ MOVL syscall15Args_a14(BX), AX
86+ MOVL AX, 52(SP)
87+ MOVL syscall15Args_a15(BX), AX
88+ MOVL AX, 56(SP)
89+ MOVL syscall15Args_a16(BX), AX
90+ MOVL AX, 60(SP)
91+ MOVL syscall15Args_a17(BX), AX
92+ MOVL AX, 64(SP)
93+ MOVL syscall15Args_a18(BX), AX
94+ MOVL AX, 68(SP)
95+ MOVL syscall15Args_a19(BX), AX
96+ MOVL AX, 72(SP)
97+ MOVL syscall15Args_a20(BX), AX
98+ MOVL AX, 76(SP)
99+ MOVL syscall15Args_a21(BX), AX
100+ MOVL AX, 80(SP)
101+ MOVL syscall15Args_a22(BX), AX
102+ MOVL AX, 84(SP)
103+ MOVL syscall15Args_a23(BX), AX
104+ MOVL AX, 88(SP)
105+ MOVL syscall15Args_a24(BX), AX
106+ MOVL AX, 92(SP)
107+ MOVL syscall15Args_a25(BX), AX
108+ MOVL AX, 96(SP)
109+ MOVL syscall15Args_a26(BX), AX
110+ MOVL AX, 100(SP)
111+ MOVL syscall15Args_a27(BX), AX
112+ MOVL AX, 104(SP)
113+ MOVL syscall15Args_a28(BX), AX
114+ MOVL AX, 108(SP)
115+ MOVL syscall15Args_a29(BX), AX
116+ MOVL AX, 112(SP)
117+ MOVL syscall15Args_a30(BX), AX
118+ MOVL AX, 116(SP)
119+ MOVL syscall15Args_a31(BX), AX
120+ MOVL AX, 120(SP)
121+ MOVL syscall15Args_a32(BX), AX
122+ MOVL AX, 124(SP)
123+
124+ // Call the C function
125+ MOVL (PTR_ADDRESS-4)(SP), AX
126+ CALL AX
127+
128+ // Get args pointer back and save results
129+ MOVL PTR_ADDRESS(SP), BX
130+ MOVL AX, syscall15Args_a1(BX) // return value r1
131+ MOVL DX, syscall15Args_a2(BX) // return value r2 (for 64-bit returns)
132+
133+ // Save x87 FPU return value (ST0) to f1 field
134+ // On i386 System V ABI, float/double returns are in ST(0)
135+ // We save as float64 (8 bytes) to preserve precision
136+ FMOVDP F0, syscall15Args_f1(BX)
137+
138+ // Clean up stack
139+ ADDL $STACK_SIZE, SP
140+
141+ // Restore callee-saved registers
142+ POPL DI
143+ POPL SI
144+ POPL BX
145+ POPL BP
146+
147+ RET
A sys_unix_386.s +226 -0
@@ -0,0 +1,226 @@
1+// SPDX-License-Identifier: Apache-2.0
2+// SPDX-FileCopyrightText: 2026 The Ebitengine Authors
3+
4+//go:build linux
5+
6+#include "textflag.h"
7+#include "go_asm.h"
8+#include "funcdata.h"
9+
10+// callbackasm1 is the second part of the callback trampoline.
11+// On entry:
12+// - CX contains the callback index (set by callbackasm)
13+// - 0(SP) contains the return address to C caller
14+// - 4(SP), 8(SP), ... contain C arguments (cdecl convention)
15+//
16+// i386 cdecl calling convention:
17+// - All arguments passed on stack
18+// - Return value in EAX (and EDX for 64-bit)
19+// - Caller cleans the stack
20+// - Callee must preserve: EBX, ESI, EDI, EBP
21+TEXT callbackasm1(SB), NOSPLIT|NOFRAME, $0
22+ NO_LOCAL_POINTERS
23+
24+ // Save the return address
25+ MOVL 0(SP), AX
26+
27+ // Allocate stack frame (must be done carefully to preserve args access)
28+ // Layout:
29+ // 0-15: saved callee-saved registers (BX, SI, DI, BP)
30+ // 16-19: saved callback index
31+ // 20-23: saved return address
32+ // 24-35: callbackArgs struct (12 bytes)
33+ // 36-291: copy of C arguments (256 bytes for 64 args, matching callbackMaxFrame)
34+ // Total: 292 bytes, round up to 304 for alignment
35+ SUBL $304, SP
36+
37+ // Save callee-saved registers
38+ MOVL BX, 0(SP)
39+ MOVL SI, 4(SP)
40+ MOVL DI, 8(SP)
41+ MOVL BP, 12(SP)
42+
43+ // Save callback index and return address
44+ MOVL CX, 16(SP)
45+ MOVL AX, 20(SP)
46+
47+ // Copy C arguments from original stack location to our frame
48+ // Original args start at 304+4(SP) = 308(SP) (past our frame + original return addr)
49+ // Copy to our frame at 36(SP)
50+ // Copy 64 arguments (256 bytes, matching callbackMaxFrame = 64 * ptrSize)
51+ MOVL 308(SP), AX
52+ MOVL AX, 36(SP)
53+ MOVL 312(SP), AX
54+ MOVL AX, 40(SP)
55+ MOVL 316(SP), AX
56+ MOVL AX, 44(SP)
57+ MOVL 320(SP), AX
58+ MOVL AX, 48(SP)
59+ MOVL 324(SP), AX
60+ MOVL AX, 52(SP)
61+ MOVL 328(SP), AX
62+ MOVL AX, 56(SP)
63+ MOVL 332(SP), AX
64+ MOVL AX, 60(SP)
65+ MOVL 336(SP), AX
66+ MOVL AX, 64(SP)
67+ MOVL 340(SP), AX
68+ MOVL AX, 68(SP)
69+ MOVL 344(SP), AX
70+ MOVL AX, 72(SP)
71+ MOVL 348(SP), AX
72+ MOVL AX, 76(SP)
73+ MOVL 352(SP), AX
74+ MOVL AX, 80(SP)
75+ MOVL 356(SP), AX
76+ MOVL AX, 84(SP)
77+ MOVL 360(SP), AX
78+ MOVL AX, 88(SP)
79+ MOVL 364(SP), AX
80+ MOVL AX, 92(SP)
81+ MOVL 368(SP), AX
82+ MOVL AX, 96(SP)
83+ MOVL 372(SP), AX
84+ MOVL AX, 100(SP)
85+ MOVL 376(SP), AX
86+ MOVL AX, 104(SP)
87+ MOVL 380(SP), AX
88+ MOVL AX, 108(SP)
89+ MOVL 384(SP), AX
90+ MOVL AX, 112(SP)
91+ MOVL 388(SP), AX
92+ MOVL AX, 116(SP)
93+ MOVL 392(SP), AX
94+ MOVL AX, 120(SP)
95+ MOVL 396(SP), AX
96+ MOVL AX, 124(SP)
97+ MOVL 400(SP), AX
98+ MOVL AX, 128(SP)
99+ MOVL 404(SP), AX
100+ MOVL AX, 132(SP)
101+ MOVL 408(SP), AX
102+ MOVL AX, 136(SP)
103+ MOVL 412(SP), AX
104+ MOVL AX, 140(SP)
105+ MOVL 416(SP), AX
106+ MOVL AX, 144(SP)
107+ MOVL 420(SP), AX
108+ MOVL AX, 148(SP)
109+ MOVL 424(SP), AX
110+ MOVL AX, 152(SP)
111+ MOVL 428(SP), AX
112+ MOVL AX, 156(SP)
113+ MOVL 432(SP), AX
114+ MOVL AX, 160(SP)
115+ MOVL 436(SP), AX
116+ MOVL AX, 164(SP)
117+ MOVL 440(SP), AX
118+ MOVL AX, 168(SP)
119+ MOVL 444(SP), AX
120+ MOVL AX, 172(SP)
121+ MOVL 448(SP), AX
122+ MOVL AX, 176(SP)
123+ MOVL 452(SP), AX
124+ MOVL AX, 180(SP)
125+ MOVL 456(SP), AX
126+ MOVL AX, 184(SP)
127+ MOVL 460(SP), AX
128+ MOVL AX, 188(SP)
129+ MOVL 464(SP), AX
130+ MOVL AX, 192(SP)
131+ MOVL 468(SP), AX
132+ MOVL AX, 196(SP)
133+ MOVL 472(SP), AX
134+ MOVL AX, 200(SP)
135+ MOVL 476(SP), AX
136+ MOVL AX, 204(SP)
137+ MOVL 480(SP), AX
138+ MOVL AX, 208(SP)
139+ MOVL 484(SP), AX
140+ MOVL AX, 212(SP)
141+ MOVL 488(SP), AX
142+ MOVL AX, 216(SP)
143+ MOVL 492(SP), AX
144+ MOVL AX, 220(SP)
145+ MOVL 496(SP), AX
146+ MOVL AX, 224(SP)
147+ MOVL 500(SP), AX
148+ MOVL AX, 228(SP)
149+ MOVL 504(SP), AX
150+ MOVL AX, 232(SP)
151+ MOVL 508(SP), AX
152+ MOVL AX, 236(SP)
153+ MOVL 512(SP), AX
154+ MOVL AX, 240(SP)
155+ MOVL 516(SP), AX
156+ MOVL AX, 244(SP)
157+ MOVL 520(SP), AX
158+ MOVL AX, 248(SP)
159+ MOVL 524(SP), AX
160+ MOVL AX, 252(SP)
161+ MOVL 528(SP), AX
162+ MOVL AX, 256(SP)
163+ MOVL 532(SP), AX
164+ MOVL AX, 260(SP)
165+ MOVL 536(SP), AX
166+ MOVL AX, 264(SP)
167+ MOVL 540(SP), AX
168+ MOVL AX, 268(SP)
169+ MOVL 544(SP), AX
170+ MOVL AX, 272(SP)
171+ MOVL 548(SP), AX
172+ MOVL AX, 276(SP)
173+ MOVL 552(SP), AX
174+ MOVL AX, 280(SP)
175+ MOVL 556(SP), AX
176+ MOVL AX, 284(SP)
177+ MOVL 560(SP), AX
178+ MOVL AX, 288(SP)
179+
180+ // Set up callbackArgs struct at 24(SP)
181+ // struct callbackArgs {
182+ // index uintptr // offset 0
183+ // args *byte // offset 4
184+ // result uintptr // offset 8
185+ // }
186+ MOVL 16(SP), AX // callback index
187+ MOVL AX, 24(SP) // callbackArgs.index
188+ LEAL 36(SP), AX // pointer to copied arguments
189+ MOVL AX, 28(SP) // callbackArgs.args
190+ MOVL $0, 32(SP) // callbackArgs.result = 0
191+
192+ // Call crosscall2(fn, frame, 0, ctxt)
193+ // crosscall2 expects arguments on stack:
194+ // 0(SP) = fn
195+ // 4(SP) = frame (pointer to callbackArgs)
196+ // 8(SP) = ignored (was n)
197+ // 12(SP) = ctxt
198+ SUBL $16, SP
199+
200+ MOVL ·callbackWrap_call(SB), AX
201+ MOVL (AX), AX // fn = *callbackWrap_call
202+ MOVL AX, 0(SP) // fn
203+ LEAL (24+16)(SP), AX // &callbackArgs (adjusted for SUB $16)
204+ MOVL AX, 4(SP) // frame
205+ MOVL $0, 8(SP) // 0
206+ MOVL $0, 12(SP) // ctxt
207+
208+ CALL crosscall2(SB)
209+
210+ ADDL $16, SP
211+
212+ // Get result from callbackArgs.result
213+ MOVL 32(SP), AX
214+
215+ // Restore callee-saved registers
216+ MOVL 0(SP), BX
217+ MOVL 4(SP), SI
218+ MOVL 8(SP), DI
219+ MOVL 12(SP), BP
220+
221+ // Restore return address and clean up
222+ MOVL 20(SP), CX // get return address
223+ ADDL $304, SP // remove our frame
224+ MOVL CX, 0(SP) // put return address back
225+
226+ RET
M syscall.go +2 -3
@@ -1,7 +1,7 @@
11 // SPDX-License-Identifier: Apache-2.0
22 // SPDX-FileCopyrightText: 2022 The Ebitengine Authors
33
4-//go:build !arm && (darwin || freebsd || linux || netbsd || windows)
4+//go:build !386 && !arm && (darwin || freebsd || linux || netbsd || windows)
55
66 package purego
77
@@ -13,8 +13,7 @@ package purego
1313 type CDecl struct{}
1414
1515 const (
16- maxArgs = 15
17- numOfFloatRegisters = 8 // arm64 and amd64 both have 8 float registers
16+ maxArgs = 15
1817 )
1918
2019 type syscall15Args struct {
M syscall_32bit.go +2 -3
@@ -1,7 +1,7 @@
11 // SPDX-License-Identifier: Apache-2.0
22 // SPDX-FileCopyrightText: 2022 The Ebitengine Authors
33
4-//go:build arm && (freebsd || linux || netbsd || windows)
4+//go:build (386 || arm) && (freebsd || linux || netbsd || windows)
55
66 package purego
77
@@ -13,8 +13,7 @@ package purego
1313 type CDecl struct{}
1414
1515 const (
16- maxArgs = 32
17- numOfFloatRegisters = 16
16+ maxArgs = 32
1817 )
1918
2019 type syscall15Args struct {
M syscall_cgo_linux.go +2 -2
@@ -1,7 +1,7 @@
11 // SPDX-License-Identifier: Apache-2.0
22 // SPDX-FileCopyrightText: 2022 The Ebitengine Authors
33
4-//go:build cgo && !(amd64 || arm || arm64 || loong64 || riscv64)
4+//go:build cgo && !(386 || amd64 || arm || arm64 || loong64 || riscv64)
55
66 package purego
77
@@ -17,5 +17,5 @@ func syscall_syscall15X(fn, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, a11, a12, a
1717 }
1818
1919 func NewCallback(_ any) uintptr {
20- panic("purego: NewCallback on Linux is only supported on amd64/arm64/arm/loong64/riscv64")
20+ panic("purego: NewCallback on Linux is only supported on 386/amd64/arm64/arm/loong64/riscv64")
2121 }
M syscall_sysv.go +9 -5
@@ -1,7 +1,7 @@
11 // SPDX-License-Identifier: Apache-2.0
22 // SPDX-FileCopyrightText: 2022 The Ebitengine Authors
33
4-//go:build darwin || freebsd || (linux && (amd64 || arm || arm64 || loong64 || riscv64)) || netbsd
4+//go:build darwin || freebsd || (linux && (386 || amd64 || arm || arm64 || loong64 || riscv64)) || netbsd
55
66 package purego
77
@@ -152,7 +152,7 @@ func callbackWrap(a *callbackArgs) {
152152 var intsN int
153153 // stackSlot points to the index into frame of the current stack element.
154154 // The stack begins after the float and integer registers.
155- stackSlot := numOfIntegerRegisters() + numOfFloatRegisters
155+ stackSlot := numOfIntegerRegisters() + numOfFloatRegisters()
156156 // stackByteOffset tracks the byte offset within the stack area for Darwin ARM64
157157 // tight packing. On Darwin ARM64, C passes small types packed on the stack.
158158 stackByteOffset := uintptr(0)
@@ -163,7 +163,7 @@ func callbackWrap(a *callbackArgs) {
163163 switch inType.Kind() {
164164 case reflect.Float32, reflect.Float64:
165165 slots = int((fnType.In(i).Size() + ptrSize - 1) / ptrSize)
166- if floatsN+slots > numOfFloatRegisters {
166+ if floatsN+slots > numOfFloatRegisters() {
167167 if runtime.GOOS == "darwin" && runtime.GOARCH == "arm64" {
168168 // Darwin ARM64: read from packed stack with proper alignment
169169 args[i] = callbackArgFromStack(a.args, stackSlot, &stackByteOffset, inType)
@@ -190,7 +190,7 @@ func callbackWrap(a *callbackArgs) {
190190 }
191191 } else {
192192 // the integers begin after the floats in frame
193- pos := intsN + numOfFloatRegisters
193+ pos := intsN + numOfFloatRegisters()
194194 args[i] = reflect.NewAt(inType, unsafe.Pointer(&frame[pos])).Elem()
195195 }
196196 intsN += slots
@@ -256,8 +256,12 @@ func callbackasmAddr(i int) uintptr {
256256 switch runtime.GOARCH {
257257 default:
258258 panic("purego: unsupported architecture")
259- case "386", "amd64":
259+ case "amd64":
260+ // On amd64, each callback entry is just a CALL instruction (5 bytes)
260261 entrySize = 5
262+ case "386":
263+ // On 386, each callback entry is MOVL $imm, CX (5 bytes) + JMP (5 bytes)
264+ entrySize = 10
261265 case "arm", "arm64", "loong64", "riscv64":
262266 // On ARM, ARM64, Loong64, and RISCV64, each entry is a MOV instruction
263267 // followed by a branch instruction
M wincallback.go +29 -0
@@ -17,6 +17,34 @@ import (
1717
1818 const maxCallback = 2000
1919
20+func genasm386() {
21+ var buf bytes.Buffer
22+
23+ buf.WriteString(`// Code generated by wincallback.go using 'go generate'. DO NOT EDIT.
24+
25+//go:build linux
26+
27+// External code calls into callbackasm at an offset corresponding
28+// to the callback index. Callbackasm is a table of MOVL and JMP instructions.
29+// The MOVL instruction loads CX with the callback index, and the
30+// JMP instruction branches to callbackasm1.
31+// callbackasm1 takes the callback index from CX and
32+// indexes into an array that stores information about each callback.
33+// It then calls the Go implementation for that callback.
34+#include "textflag.h"
35+
36+TEXT callbackasm(SB), NOSPLIT|NOFRAME, $0
37+`)
38+ for i := 0; i < maxCallback; i++ {
39+ fmt.Fprintf(&buf, "\tMOVL $%d, CX\n", i)
40+ buf.WriteString("\tJMP callbackasm1(SB)\n")
41+ }
42+ if err := os.WriteFile("zcallback_386.s", buf.Bytes(), 0644); err != nil {
43+ fmt.Fprintf(os.Stderr, "wincallback: %s\n", err)
44+ os.Exit(2)
45+ }
46+}
47+
2048 func genasmAmd64() {
2149 var buf bytes.Buffer
2250
@@ -166,6 +194,7 @@ TEXT callbackasm(SB), NOSPLIT|NOFRAME, $0
166194 }
167195
168196 func main() {
197+ genasm386()
169198 genasmAmd64()
170199 genasmArm()
171200 genasmArm64()
A zcallback_386.s +4014 -0
@@ -0,0 +1,4014 @@
1+// Code generated by wincallback.go using 'go generate'. DO NOT EDIT.
2+
3+//go:build linux
4+
5+// External code calls into callbackasm at an offset corresponding
6+// to the callback index. Callbackasm is a table of MOVL and JMP instructions.
7+// The MOVL instruction loads CX with the callback index, and the
8+// JMP instruction branches to callbackasm1.
9+// callbackasm1 takes the callback index from CX and
10+// indexes into an array that stores information about each callback.
11+// It then calls the Go implementation for that callback.
12+#include "textflag.h"
13+
14+TEXT callbackasm(SB), NOSPLIT|NOFRAME, $0
15+ MOVL $0, CX
16+ JMP callbackasm1(SB)
17+ MOVL $1, CX
18+ JMP callbackasm1(SB)
19+ MOVL $2, CX
20+ JMP callbackasm1(SB)
21+ MOVL $3, CX
22+ JMP callbackasm1(SB)
23+ MOVL $4, CX
24+ JMP callbackasm1(SB)
25+ MOVL $5, CX
26+ JMP callbackasm1(SB)
27+ MOVL $6, CX
28+ JMP callbackasm1(SB)
29+ MOVL $7, CX
30+ JMP callbackasm1(SB)
31+ MOVL $8, CX
32+ JMP callbackasm1(SB)
33+ MOVL $9, CX
34+ JMP callbackasm1(SB)
35+ MOVL $10, CX
36+ JMP callbackasm1(SB)
37+ MOVL $11, CX
38+ JMP callbackasm1(SB)
39+ MOVL $12, CX
40+ JMP callbackasm1(SB)
41+ MOVL $13, CX
42+ JMP callbackasm1(SB)
43+ MOVL $14, CX
44+ JMP callbackasm1(SB)
45+ MOVL $15, CX
46+ JMP callbackasm1(SB)
47+ MOVL $16, CX
48+ JMP callbackasm1(SB)
49+ MOVL $17, CX
50+ JMP callbackasm1(SB)
51+ MOVL $18, CX
52+ JMP callbackasm1(SB)
53+ MOVL $19, CX
54+ JMP callbackasm1(SB)
55+ MOVL $20, CX
56+ JMP callbackasm1(SB)
57+ MOVL $21, CX
58+ JMP callbackasm1(SB)
59+ MOVL $22, CX
60+ JMP callbackasm1(SB)
61+ MOVL $23, CX
62+ JMP callbackasm1(SB)
63+ MOVL $24, CX
64+ JMP callbackasm1(SB)
65+ MOVL $25, CX
66+ JMP callbackasm1(SB)
67+ MOVL $26, CX
68+ JMP callbackasm1(SB)
69+ MOVL $27, CX
70+ JMP callbackasm1(SB)
71+ MOVL $28, CX
72+ JMP callbackasm1(SB)
73+ MOVL $29, CX
74+ JMP callbackasm1(SB)
75+ MOVL $30, CX
76+ JMP callbackasm1(SB)
77+ MOVL $31, CX
78+ JMP callbackasm1(SB)
79+ MOVL $32, CX
80+ JMP callbackasm1(SB)
81+ MOVL $33, CX
82+ JMP callbackasm1(SB)
83+ MOVL $34, CX
84+ JMP callbackasm1(SB)
85+ MOVL $35, CX
86+ JMP callbackasm1(SB)
87+ MOVL $36, CX
88+ JMP callbackasm1(SB)
89+ MOVL $37, CX
90+ JMP callbackasm1(SB)
91+ MOVL $38, CX
92+ JMP callbackasm1(SB)
93+ MOVL $39, CX
94+ JMP callbackasm1(SB)
95+ MOVL $40, CX
96+ JMP callbackasm1(SB)
97+ MOVL $41, CX
98+ JMP callbackasm1(SB)
99+ MOVL $42, CX
100+ JMP callbackasm1(SB)
101+ MOVL $43, CX
102+ JMP callbackasm1(SB)
103+ MOVL $44, CX
104+ JMP callbackasm1(SB)
105+ MOVL $45, CX
106+ JMP callbackasm1(SB)
107+ MOVL $46, CX
108+ JMP callbackasm1(SB)
109+ MOVL $47, CX
110+ JMP callbackasm1(SB)
111+ MOVL $48, CX
112+ JMP callbackasm1(SB)
113+ MOVL $49, CX
114+ JMP callbackasm1(SB)
115+ MOVL $50, CX
116+ JMP callbackasm1(SB)
117+ MOVL $51, CX
118+ JMP callbackasm1(SB)
119+ MOVL $52, CX
120+ JMP callbackasm1(SB)
121+ MOVL $53, CX
122+ JMP callbackasm1(SB)
123+ MOVL $54, CX
124+ JMP callbackasm1(SB)
125+ MOVL $55, CX
126+ JMP callbackasm1(SB)
127+ MOVL $56, CX
128+ JMP callbackasm1(SB)
129+ MOVL $57, CX
130+ JMP callbackasm1(SB)
131+ MOVL $58, CX
132+ JMP callbackasm1(SB)
133+ MOVL $59, CX
134+ JMP callbackasm1(SB)
135+ MOVL $60, CX
136+ JMP callbackasm1(SB)
137+ MOVL $61, CX
138+ JMP callbackasm1(SB)
139+ MOVL $62, CX
140+ JMP callbackasm1(SB)
141+ MOVL $63, CX
142+ JMP callbackasm1(SB)
143+ MOVL $64, CX
144+ JMP callbackasm1(SB)
145+ MOVL $65, CX
146+ JMP callbackasm1(SB)
147+ MOVL $66, CX
148+ JMP callbackasm1(SB)
149+ MOVL $67, CX
150+ JMP callbackasm1(SB)
151+ MOVL $68, CX
152+ JMP callbackasm1(SB)
153+ MOVL $69, CX
154+ JMP callbackasm1(SB)
155+ MOVL $70, CX
156+ JMP callbackasm1(SB)
157+ MOVL $71, CX
158+ JMP callbackasm1(SB)
159+ MOVL $72, CX
160+ JMP callbackasm1(SB)
161+ MOVL $73, CX
162+ JMP callbackasm1(SB)
163+ MOVL $74, CX
164+ JMP callbackasm1(SB)
165+ MOVL $75, CX
166+ JMP callbackasm1(SB)
167+ MOVL $76, CX
168+ JMP callbackasm1(SB)
169+ MOVL $77, CX
170+ JMP callbackasm1(SB)
171+ MOVL $78, CX
172+ JMP callbackasm1(SB)
173+ MOVL $79, CX
174+ JMP callbackasm1(SB)
175+ MOVL $80, CX
176+ JMP callbackasm1(SB)
177+ MOVL $81, CX
178+ JMP callbackasm1(SB)
179+ MOVL $82, CX
180+ JMP callbackasm1(SB)
181+ MOVL $83, CX
182+ JMP callbackasm1(SB)
183+ MOVL $84, CX
184+ JMP callbackasm1(SB)
185+ MOVL $85, CX
186+ JMP callbackasm1(SB)
187+ MOVL $86, CX
188+ JMP callbackasm1(SB)
189+ MOVL $87, CX
190+ JMP callbackasm1(SB)
191+ MOVL $88, CX
192+ JMP callbackasm1(SB)
193+ MOVL $89, CX
194+ JMP callbackasm1(SB)
195+ MOVL $90, CX
196+ JMP callbackasm1(SB)
197+ MOVL $91, CX
198+ JMP callbackasm1(SB)
199+ MOVL $92, CX
200+ JMP callbackasm1(SB)
201+ MOVL $93, CX
202+ JMP callbackasm1(SB)
203+ MOVL $94, CX
204+ JMP callbackasm1(SB)
205+ MOVL $95, CX
206+ JMP callbackasm1(SB)
207+ MOVL $96, CX
208+ JMP callbackasm1(SB)
209+ MOVL $97, CX
210+ JMP callbackasm1(SB)
211+ MOVL $98, CX
212+ JMP callbackasm1(SB)
213+ MOVL $99, CX
214+ JMP callbackasm1(SB)
215+ MOVL $100, CX
216+ JMP callbackasm1(SB)
217+ MOVL $101, CX
218+ JMP callbackasm1(SB)
219+ MOVL $102, CX
220+ JMP callbackasm1(SB)
221+ MOVL $103, CX
222+ JMP callbackasm1(SB)
223+ MOVL $104, CX
224+ JMP callbackasm1(SB)
225+ MOVL $105, CX
226+ JMP callbackasm1(SB)
227+ MOVL $106, CX
228+ JMP callbackasm1(SB)
229+ MOVL $107, CX
230+ JMP callbackasm1(SB)
231+ MOVL $108, CX
232+ JMP callbackasm1(SB)
233+ MOVL $109, CX
234+ JMP callbackasm1(SB)
235+ MOVL $110, CX
236+ JMP callbackasm1(SB)
237+ MOVL $111, CX
238+ JMP callbackasm1(SB)
239+ MOVL $112, CX
240+ JMP callbackasm1(SB)
241+ MOVL $113, CX
242+ JMP callbackasm1(SB)
243+ MOVL $114, CX
244+ JMP callbackasm1(SB)
245+ MOVL $115, CX
246+ JMP callbackasm1(SB)
247+ MOVL $116, CX
248+ JMP callbackasm1(SB)
249+ MOVL $117, CX
250+ JMP callbackasm1(SB)
251+ MOVL $118, CX
252+ JMP callbackasm1(SB)
253+ MOVL $119, CX
254+ JMP callbackasm1(SB)
255+ MOVL $120, CX
256+ JMP callbackasm1(SB)
257+ MOVL $121, CX
258+ JMP callbackasm1(SB)
259+ MOVL $122, CX
260+ JMP callbackasm1(SB)
261+ MOVL $123, CX
262+ JMP callbackasm1(SB)
263+ MOVL $124, CX
264+ JMP callbackasm1(SB)
265+ MOVL $125, CX
266+ JMP callbackasm1(SB)
267+ MOVL $126, CX
268+ JMP callbackasm1(SB)
269+ MOVL $127, CX
270+ JMP callbackasm1(SB)
271+ MOVL $128, CX
272+ JMP callbackasm1(SB)
273+ MOVL $129, CX
274+ JMP callbackasm1(SB)
275+ MOVL $130, CX
276+ JMP callbackasm1(SB)
277+ MOVL $131, CX
278+ JMP callbackasm1(SB)
279+ MOVL $132, CX
280+ JMP callbackasm1(SB)
281+ MOVL $133, CX
282+ JMP callbackasm1(SB)
283+ MOVL $134, CX
284+ JMP callbackasm1(SB)
285+ MOVL $135, CX
286+ JMP callbackasm1(SB)
287+ MOVL $136, CX
288+ JMP callbackasm1(SB)
289+ MOVL $137, CX
290+ JMP callbackasm1(SB)
291+ MOVL $138, CX
292+ JMP callbackasm1(SB)
293+ MOVL $139, CX
294+ JMP callbackasm1(SB)
295+ MOVL $140, CX
296+ JMP callbackasm1(SB)
297+ MOVL $141, CX
298+ JMP callbackasm1(SB)
299+ MOVL $142, CX
300+ JMP callbackasm1(SB)
301+ MOVL $143, CX
302+ JMP callbackasm1(SB)
303+ MOVL $144, CX
304+ JMP callbackasm1(SB)
305+ MOVL $145, CX
306+ JMP callbackasm1(SB)
307+ MOVL $146, CX
308+ JMP callbackasm1(SB)
309+ MOVL $147, CX
310+ JMP callbackasm1(SB)
311+ MOVL $148, CX
312+ JMP callbackasm1(SB)
313+ MOVL $149, CX
314+ JMP callbackasm1(SB)
315+ MOVL $150, CX
316+ JMP callbackasm1(SB)
317+ MOVL $151, CX
318+ JMP callbackasm1(SB)
319+ MOVL $152, CX
320+ JMP callbackasm1(SB)
321+ MOVL $153, CX
322+ JMP callbackasm1(SB)
323+ MOVL $154, CX
324+ JMP callbackasm1(SB)
325+ MOVL $155, CX
326+ JMP callbackasm1(SB)
327+ MOVL $156, CX
328+ JMP callbackasm1(SB)
329+ MOVL $157, CX
330+ JMP callbackasm1(SB)
331+ MOVL $158, CX
332+ JMP callbackasm1(SB)
333+ MOVL $159, CX
334+ JMP callbackasm1(SB)
335+ MOVL $160, CX
336+ JMP callbackasm1(SB)
337+ MOVL $161, CX
338+ JMP callbackasm1(SB)
339+ MOVL $162, CX
340+ JMP callbackasm1(SB)
341+ MOVL $163, CX
342+ JMP callbackasm1(SB)
343+ MOVL $164, CX
344+ JMP callbackasm1(SB)
345+ MOVL $165, CX
346+ JMP callbackasm1(SB)
347+ MOVL $166, CX
348+ JMP callbackasm1(SB)
349+ MOVL $167, CX
350+ JMP callbackasm1(SB)
351+ MOVL $168, CX
352+ JMP callbackasm1(SB)
353+ MOVL $169, CX
354+ JMP callbackasm1(SB)
355+ MOVL $170, CX
356+ JMP callbackasm1(SB)
357+ MOVL $171, CX
358+ JMP callbackasm1(SB)
359+ MOVL $172, CX
360+ JMP callbackasm1(SB)
361+ MOVL $173, CX
362+ JMP callbackasm1(SB)
363+ MOVL $174, CX
364+ JMP callbackasm1(SB)
365+ MOVL $175, CX
366+ JMP callbackasm1(SB)
367+ MOVL $176, CX
368+ JMP callbackasm1(SB)
369+ MOVL $177, CX
370+ JMP callbackasm1(SB)
371+ MOVL $178, CX
372+ JMP callbackasm1(SB)
373+ MOVL $179, CX
374+ JMP callbackasm1(SB)
375+ MOVL $180, CX
376+ JMP callbackasm1(SB)
377+ MOVL $181, CX
378+ JMP callbackasm1(SB)
379+ MOVL $182, CX
380+ JMP callbackasm1(SB)
381+ MOVL $183, CX
382+ JMP callbackasm1(SB)
383+ MOVL $184, CX
384+ JMP callbackasm1(SB)
385+ MOVL $185, CX
386+ JMP callbackasm1(SB)
387+ MOVL $186, CX
388+ JMP callbackasm1(SB)
389+ MOVL $187, CX
390+ JMP callbackasm1(SB)
391+ MOVL $188, CX
392+ JMP callbackasm1(SB)
393+ MOVL $189, CX
394+ JMP callbackasm1(SB)
395+ MOVL $190, CX
396+ JMP callbackasm1(SB)
397+ MOVL $191, CX
398+ JMP callbackasm1(SB)
399+ MOVL $192, CX
400+ JMP callbackasm1(SB)
401+ MOVL $193, CX
402+ JMP callbackasm1(SB)
403+ MOVL $194, CX
404+ JMP callbackasm1(SB)
405+ MOVL $195, CX
406+ JMP callbackasm1(SB)
407+ MOVL $196, CX
408+ JMP callbackasm1(SB)
409+ MOVL $197, CX
410+ JMP callbackasm1(SB)
411+ MOVL $198, CX
412+ JMP callbackasm1(SB)
413+ MOVL $199, CX
414+ JMP callbackasm1(SB)
415+ MOVL $200, CX
416+ JMP callbackasm1(SB)
417+ MOVL $201, CX
418+ JMP callbackasm1(SB)
419+ MOVL $202, CX
420+ JMP callbackasm1(SB)
421+ MOVL $203, CX
422+ JMP callbackasm1(SB)
423+ MOVL $204, CX
424+ JMP callbackasm1(SB)
425+ MOVL $205, CX
426+ JMP callbackasm1(SB)
427+ MOVL $206, CX
428+ JMP callbackasm1(SB)
429+ MOVL $207, CX
430+ JMP callbackasm1(SB)
431+ MOVL $208, CX
432+ JMP callbackasm1(SB)
433+ MOVL $209, CX
434+ JMP callbackasm1(SB)
435+ MOVL $210, CX
436+ JMP callbackasm1(SB)
437+ MOVL $211, CX
438+ JMP callbackasm1(SB)
439+ MOVL $212, CX
440+ JMP callbackasm1(SB)
441+ MOVL $213, CX
442+ JMP callbackasm1(SB)
443+ MOVL $214, CX
444+ JMP callbackasm1(SB)
445+ MOVL $215, CX
446+ JMP callbackasm1(SB)
447+ MOVL $216, CX
448+ JMP callbackasm1(SB)
449+ MOVL $217, CX
450+ JMP callbackasm1(SB)
451+ MOVL $218, CX
452+ JMP callbackasm1(SB)
453+ MOVL $219, CX
454+ JMP callbackasm1(SB)
455+ MOVL $220, CX
456+ JMP callbackasm1(SB)
457+ MOVL $221, CX
458+ JMP callbackasm1(SB)
459+ MOVL $222, CX
460+ JMP callbackasm1(SB)
461+ MOVL $223, CX
462+ JMP callbackasm1(SB)
463+ MOVL $224, CX
464+ JMP callbackasm1(SB)
465+ MOVL $225, CX
466+ JMP callbackasm1(SB)
467+ MOVL $226, CX
468+ JMP callbackasm1(SB)
469+ MOVL $227, CX
470+ JMP callbackasm1(SB)
471+ MOVL $228, CX
472+ JMP callbackasm1(SB)
473+ MOVL $229, CX
474+ JMP callbackasm1(SB)
475+ MOVL $230, CX
476+ JMP callbackasm1(SB)
477+ MOVL $231, CX
478+ JMP callbackasm1(SB)
479+ MOVL $232, CX
480+ JMP callbackasm1(SB)
481+ MOVL $233, CX
482+ JMP callbackasm1(SB)
483+ MOVL $234, CX
484+ JMP callbackasm1(SB)
485+ MOVL $235, CX
486+ JMP callbackasm1(SB)
487+ MOVL $236, CX
488+ JMP callbackasm1(SB)
489+ MOVL $237, CX
490+ JMP callbackasm1(SB)
491+ MOVL $238, CX
492+ JMP callbackasm1(SB)
493+ MOVL $239, CX
494+ JMP callbackasm1(SB)
495+ MOVL $240, CX
496+ JMP callbackasm1(SB)
497+ MOVL $241, CX
498+ JMP callbackasm1(SB)
499+ MOVL $242, CX
500+ JMP callbackasm1(SB)
501+ MOVL $243, CX
502+ JMP callbackasm1(SB)
503+ MOVL $244, CX
504+ JMP callbackasm1(SB)
505+ MOVL $245, CX
506+ JMP callbackasm1(SB)
507+ MOVL $246, CX
508+ JMP callbackasm1(SB)
509+ MOVL $247, CX
510+ JMP callbackasm1(SB)
511+ MOVL $248, CX
512+ JMP callbackasm1(SB)
513+ MOVL $249, CX
514+ JMP callbackasm1(SB)
515+ MOVL $250, CX
516+ JMP callbackasm1(SB)
517+ MOVL $251, CX
518+ JMP callbackasm1(SB)
519+ MOVL $252, CX
520+ JMP callbackasm1(SB)
521+ MOVL $253, CX
522+ JMP callbackasm1(SB)
523+ MOVL $254, CX
524+ JMP callbackasm1(SB)
525+ MOVL $255, CX
526+ JMP callbackasm1(SB)
527+ MOVL $256, CX
528+ JMP callbackasm1(SB)
529+ MOVL $257, CX
530+ JMP callbackasm1(SB)
531+ MOVL $258, CX
532+ JMP callbackasm1(SB)
533+ MOVL $259, CX
534+ JMP callbackasm1(SB)
535+ MOVL $260, CX
536+ JMP callbackasm1(SB)
537+ MOVL $261, CX
538+ JMP callbackasm1(SB)
539+ MOVL $262, CX
540+ JMP callbackasm1(SB)
541+ MOVL $263, CX
542+ JMP callbackasm1(SB)
543+ MOVL $264, CX
544+ JMP callbackasm1(SB)
545+ MOVL $265, CX
546+ JMP callbackasm1(SB)
547+ MOVL $266, CX
548+ JMP callbackasm1(SB)
549+ MOVL $267, CX
550+ JMP callbackasm1(SB)
551+ MOVL $268, CX
552+ JMP callbackasm1(SB)
553+ MOVL $269, CX
554+ JMP callbackasm1(SB)
555+ MOVL $270, CX
556+ JMP callbackasm1(SB)
557+ MOVL $271, CX
558+ JMP callbackasm1(SB)
559+ MOVL $272, CX
560+ JMP callbackasm1(SB)
561+ MOVL $273, CX
562+ JMP callbackasm1(SB)
563+ MOVL $274, CX
564+ JMP callbackasm1(SB)
565+ MOVL $275, CX
566+ JMP callbackasm1(SB)
567+ MOVL $276, CX
568+ JMP callbackasm1(SB)
569+ MOVL $277, CX
570+ JMP callbackasm1(SB)
571+ MOVL $278, CX
572+ JMP callbackasm1(SB)
573+ MOVL $279, CX
574+ JMP callbackasm1(SB)
575+ MOVL $280, CX
576+ JMP callbackasm1(SB)
577+ MOVL $281, CX
578+ JMP callbackasm1(SB)
579+ MOVL $282, CX
580+ JMP callbackasm1(SB)
581+ MOVL $283, CX
582+ JMP callbackasm1(SB)
583+ MOVL $284, CX
584+ JMP callbackasm1(SB)
585+ MOVL $285, CX
586+ JMP callbackasm1(SB)
587+ MOVL $286, CX
588+ JMP callbackasm1(SB)
589+ MOVL $287, CX
590+ JMP callbackasm1(SB)
591+ MOVL $288, CX
592+ JMP callbackasm1(SB)
593+ MOVL $289, CX
594+ JMP callbackasm1(SB)
595+ MOVL $290, CX
596+ JMP callbackasm1(SB)
597+ MOVL $291, CX
598+ JMP callbackasm1(SB)
599+ MOVL $292, CX
600+ JMP callbackasm1(SB)
601+ MOVL $293, CX
602+ JMP callbackasm1(SB)
603+ MOVL $294, CX
604+ JMP callbackasm1(SB)
605+ MOVL $295, CX
606+ JMP callbackasm1(SB)
607+ MOVL $296, CX
608+ JMP callbackasm1(SB)
609+ MOVL $297, CX
610+ JMP callbackasm1(SB)
611+ MOVL $298, CX
612+ JMP callbackasm1(SB)
613+ MOVL $299, CX
614+ JMP callbackasm1(SB)
615+ MOVL $300, CX
616+ JMP callbackasm1(SB)
617+ MOVL $301, CX
618+ JMP callbackasm1(SB)
619+ MOVL $302, CX
620+ JMP callbackasm1(SB)
621+ MOVL $303, CX
622+ JMP callbackasm1(SB)
623+ MOVL $304, CX
624+ JMP callbackasm1(SB)
625+ MOVL $305, CX
626+ JMP callbackasm1(SB)
627+ MOVL $306, CX
628+ JMP callbackasm1(SB)
629+ MOVL $307, CX
630+ JMP callbackasm1(SB)
631+ MOVL $308, CX
632+ JMP callbackasm1(SB)
633+ MOVL $309, CX
634+ JMP callbackasm1(SB)
635+ MOVL $310, CX
636+ JMP callbackasm1(SB)
637+ MOVL $311, CX
638+ JMP callbackasm1(SB)
639+ MOVL $312, CX
640+ JMP callbackasm1(SB)
641+ MOVL $313, CX
642+ JMP callbackasm1(SB)
643+ MOVL $314, CX
644+ JMP callbackasm1(SB)
645+ MOVL $315, CX
646+ JMP callbackasm1(SB)
647+ MOVL $316, CX
648+ JMP callbackasm1(SB)
649+ MOVL $317, CX
650+ JMP callbackasm1(SB)
651+ MOVL $318, CX
652+ JMP callbackasm1(SB)
653+ MOVL $319, CX
654+ JMP callbackasm1(SB)
655+ MOVL $320, CX
656+ JMP callbackasm1(SB)
657+ MOVL $321, CX
658+ JMP callbackasm1(SB)
659+ MOVL $322, CX
660+ JMP callbackasm1(SB)
661+ MOVL $323, CX
662+ JMP callbackasm1(SB)
663+ MOVL $324, CX
664+ JMP callbackasm1(SB)
665+ MOVL $325, CX
666+ JMP callbackasm1(SB)
667+ MOVL $326, CX
668+ JMP callbackasm1(SB)
669+ MOVL $327, CX
670+ JMP callbackasm1(SB)
671+ MOVL $328, CX
672+ JMP callbackasm1(SB)
673+ MOVL $329, CX
674+ JMP callbackasm1(SB)
675+ MOVL $330, CX
676+ JMP callbackasm1(SB)
677+ MOVL $331, CX
678+ JMP callbackasm1(SB)
679+ MOVL $332, CX
680+ JMP callbackasm1(SB)
681+ MOVL $333, CX
682+ JMP callbackasm1(SB)
683+ MOVL $334, CX
684+ JMP callbackasm1(SB)
685+ MOVL $335, CX
686+ JMP callbackasm1(SB)
687+ MOVL $336, CX
688+ JMP callbackasm1(SB)
689+ MOVL $337, CX
690+ JMP callbackasm1(SB)
691+ MOVL $338, CX
692+ JMP callbackasm1(SB)
693+ MOVL $339, CX
694+ JMP callbackasm1(SB)
695+ MOVL $340, CX
696+ JMP callbackasm1(SB)
697+ MOVL $341, CX
698+ JMP callbackasm1(SB)
699+ MOVL $342, CX
700+ JMP callbackasm1(SB)
701+ MOVL $343, CX
702+ JMP callbackasm1(SB)
703+ MOVL $344, CX
704+ JMP callbackasm1(SB)
705+ MOVL $345, CX
706+ JMP callbackasm1(SB)
707+ MOVL $346, CX
708+ JMP callbackasm1(SB)
709+ MOVL $347, CX
710+ JMP callbackasm1(SB)
711+ MOVL $348, CX
712+ JMP callbackasm1(SB)
713+ MOVL $349, CX
714+ JMP callbackasm1(SB)
715+ MOVL $350, CX
716+ JMP callbackasm1(SB)
717+ MOVL $351, CX
718+ JMP callbackasm1(SB)
719+ MOVL $352, CX
720+ JMP callbackasm1(SB)
721+ MOVL $353, CX
722+ JMP callbackasm1(SB)
723+ MOVL $354, CX
724+ JMP callbackasm1(SB)
725+ MOVL $355, CX
726+ JMP callbackasm1(SB)
727+ MOVL $356, CX
728+ JMP callbackasm1(SB)
729+ MOVL $357, CX
730+ JMP callbackasm1(SB)
731+ MOVL $358, CX
732+ JMP callbackasm1(SB)
733+ MOVL $359, CX
734+ JMP callbackasm1(SB)
735+ MOVL $360, CX
736+ JMP callbackasm1(SB)
737+ MOVL $361, CX
738+ JMP callbackasm1(SB)
739+ MOVL $362, CX
740+ JMP callbackasm1(SB)
741+ MOVL $363, CX
742+ JMP callbackasm1(SB)
743+ MOVL $364, CX
744+ JMP callbackasm1(SB)
745+ MOVL $365, CX
746+ JMP callbackasm1(SB)
747+ MOVL $366, CX
748+ JMP callbackasm1(SB)
749+ MOVL $367, CX
750+ JMP callbackasm1(SB)
751+ MOVL $368, CX
752+ JMP callbackasm1(SB)
753+ MOVL $369, CX
754+ JMP callbackasm1(SB)
755+ MOVL $370, CX
756+ JMP callbackasm1(SB)
757+ MOVL $371, CX
758+ JMP callbackasm1(SB)
759+ MOVL $372, CX
760+ JMP callbackasm1(SB)
761+ MOVL $373, CX
762+ JMP callbackasm1(SB)
763+ MOVL $374, CX
764+ JMP callbackasm1(SB)
765+ MOVL $375, CX
766+ JMP callbackasm1(SB)
767+ MOVL $376, CX
768+ JMP callbackasm1(SB)
769+ MOVL $377, CX
770+ JMP callbackasm1(SB)
771+ MOVL $378, CX
772+ JMP callbackasm1(SB)
773+ MOVL $379, CX
774+ JMP callbackasm1(SB)
775+ MOVL $380, CX
776+ JMP callbackasm1(SB)
777+ MOVL $381, CX
778+ JMP callbackasm1(SB)
779+ MOVL $382, CX
780+ JMP callbackasm1(SB)
781+ MOVL $383, CX
782+ JMP callbackasm1(SB)
783+ MOVL $384, CX
784+ JMP callbackasm1(SB)
785+ MOVL $385, CX
786+ JMP callbackasm1(SB)
787+ MOVL $386, CX
788+ JMP callbackasm1(SB)
789+ MOVL $387, CX
790+ JMP callbackasm1(SB)
791+ MOVL $388, CX
792+ JMP callbackasm1(SB)
793+ MOVL $389, CX
794+ JMP callbackasm1(SB)
795+ MOVL $390, CX
796+ JMP callbackasm1(SB)
797+ MOVL $391, CX
798+ JMP callbackasm1(SB)
799+ MOVL $392, CX
800+ JMP callbackasm1(SB)
801+ MOVL $393, CX
802+ JMP callbackasm1(SB)
803+ MOVL $394, CX
804+ JMP callbackasm1(SB)
805+ MOVL $395, CX
806+ JMP callbackasm1(SB)
807+ MOVL $396, CX
808+ JMP callbackasm1(SB)
809+ MOVL $397, CX
810+ JMP callbackasm1(SB)
811+ MOVL $398, CX
812+ JMP callbackasm1(SB)
813+ MOVL $399, CX
814+ JMP callbackasm1(SB)
815+ MOVL $400, CX
816+ JMP callbackasm1(SB)
817+ MOVL $401, CX
818+ JMP callbackasm1(SB)
819+ MOVL $402, CX
820+ JMP callbackasm1(SB)
821+ MOVL $403, CX
822+ JMP callbackasm1(SB)
823+ MOVL $404, CX
824+ JMP callbackasm1(SB)
825+ MOVL $405, CX
826+ JMP callbackasm1(SB)
827+ MOVL $406, CX
828+ JMP callbackasm1(SB)
829+ MOVL $407, CX
830+ JMP callbackasm1(SB)
831+ MOVL $408, CX
832+ JMP callbackasm1(SB)
833+ MOVL $409, CX
834+ JMP callbackasm1(SB)
835+ MOVL $410, CX
836+ JMP callbackasm1(SB)
837+ MOVL $411, CX
838+ JMP callbackasm1(SB)
839+ MOVL $412, CX
840+ JMP callbackasm1(SB)
841+ MOVL $413, CX
842+ JMP callbackasm1(SB)
843+ MOVL $414, CX
844+ JMP callbackasm1(SB)
845+ MOVL $415, CX
846+ JMP callbackasm1(SB)
847+ MOVL $416, CX
848+ JMP callbackasm1(SB)
849+ MOVL $417, CX
850+ JMP callbackasm1(SB)
851+ MOVL $418, CX
852+ JMP callbackasm1(SB)
853+ MOVL $419, CX
854+ JMP callbackasm1(SB)
855+ MOVL $420, CX
856+ JMP callbackasm1(SB)
857+ MOVL $421, CX
858+ JMP callbackasm1(SB)
859+ MOVL $422, CX
860+ JMP callbackasm1(SB)
861+ MOVL $423, CX
862+ JMP callbackasm1(SB)
863+ MOVL $424, CX
864+ JMP callbackasm1(SB)
865+ MOVL $425, CX
866+ JMP callbackasm1(SB)
867+ MOVL $426, CX
868+ JMP callbackasm1(SB)
869+ MOVL $427, CX
870+ JMP callbackasm1(SB)
871+ MOVL $428, CX
872+ JMP callbackasm1(SB)
873+ MOVL $429, CX
874+ JMP callbackasm1(SB)
875+ MOVL $430, CX
876+ JMP callbackasm1(SB)
877+ MOVL $431, CX
878+ JMP callbackasm1(SB)
879+ MOVL $432, CX
880+ JMP callbackasm1(SB)
881+ MOVL $433, CX
882+ JMP callbackasm1(SB)
883+ MOVL $434, CX
884+ JMP callbackasm1(SB)
885+ MOVL $435, CX
886+ JMP callbackasm1(SB)
887+ MOVL $436, CX
888+ JMP callbackasm1(SB)
889+ MOVL $437, CX
890+ JMP callbackasm1(SB)
891+ MOVL $438, CX
892+ JMP callbackasm1(SB)
893+ MOVL $439, CX
894+ JMP callbackasm1(SB)
895+ MOVL $440, CX
896+ JMP callbackasm1(SB)
897+ MOVL $441, CX
898+ JMP callbackasm1(SB)
899+ MOVL $442, CX
900+ JMP callbackasm1(SB)
901+ MOVL $443, CX
902+ JMP callbackasm1(SB)
903+ MOVL $444, CX
904+ JMP callbackasm1(SB)
905+ MOVL $445, CX
906+ JMP callbackasm1(SB)
907+ MOVL $446, CX
908+ JMP callbackasm1(SB)
909+ MOVL $447, CX
910+ JMP callbackasm1(SB)
911+ MOVL $448, CX
912+ JMP callbackasm1(SB)
913+ MOVL $449, CX
914+ JMP callbackasm1(SB)
915+ MOVL $450, CX
916+ JMP callbackasm1(SB)
917+ MOVL $451, CX
918+ JMP callbackasm1(SB)
919+ MOVL $452, CX
920+ JMP callbackasm1(SB)
921+ MOVL $453, CX
922+ JMP callbackasm1(SB)
923+ MOVL $454, CX
924+ JMP callbackasm1(SB)
925+ MOVL $455, CX
926+ JMP callbackasm1(SB)
927+ MOVL $456, CX
928+ JMP callbackasm1(SB)
929+ MOVL $457, CX
930+ JMP callbackasm1(SB)
931+ MOVL $458, CX
932+ JMP callbackasm1(SB)
933+ MOVL $459, CX
934+ JMP callbackasm1(SB)
935+ MOVL $460, CX
936+ JMP callbackasm1(SB)
937+ MOVL $461, CX
938+ JMP callbackasm1(SB)
939+ MOVL $462, CX
940+ JMP callbackasm1(SB)
941+ MOVL $463, CX
942+ JMP callbackasm1(SB)
943+ MOVL $464, CX
944+ JMP callbackasm1(SB)
945+ MOVL $465, CX
946+ JMP callbackasm1(SB)
947+ MOVL $466, CX
948+ JMP callbackasm1(SB)
949+ MOVL $467, CX
950+ JMP callbackasm1(SB)
951+ MOVL $468, CX
952+ JMP callbackasm1(SB)
953+ MOVL $469, CX
954+ JMP callbackasm1(SB)
955+ MOVL $470, CX
956+ JMP callbackasm1(SB)
957+ MOVL $471, CX
958+ JMP callbackasm1(SB)
959+ MOVL $472, CX
960+ JMP callbackasm1(SB)
961+ MOVL $473, CX
962+ JMP callbackasm1(SB)
963+ MOVL $474, CX
964+ JMP callbackasm1(SB)
965+ MOVL $475, CX
966+ JMP callbackasm1(SB)
967+ MOVL $476, CX
968+ JMP callbackasm1(SB)
969+ MOVL $477, CX
970+ JMP callbackasm1(SB)
971+ MOVL $478, CX
972+ JMP callbackasm1(SB)
973+ MOVL $479, CX
974+ JMP callbackasm1(SB)
975+ MOVL $480, CX
976+ JMP callbackasm1(SB)
977+ MOVL $481, CX
978+ JMP callbackasm1(SB)
979+ MOVL $482, CX
980+ JMP callbackasm1(SB)
981+ MOVL $483, CX
982+ JMP callbackasm1(SB)
983+ MOVL $484, CX
984+ JMP callbackasm1(SB)
985+ MOVL $485, CX
986+ JMP callbackasm1(SB)
987+ MOVL $486, CX
988+ JMP callbackasm1(SB)
989+ MOVL $487, CX
990+ JMP callbackasm1(SB)
991+ MOVL $488, CX
992+ JMP callbackasm1(SB)
993+ MOVL $489, CX
994+ JMP callbackasm1(SB)
995+ MOVL $490, CX
996+ JMP callbackasm1(SB)
997+ MOVL $491, CX
998+ JMP callbackasm1(SB)
999+ MOVL $492, CX
1000+ JMP callbackasm1(SB)
1001+ MOVL $493, CX
1002+ JMP callbackasm1(SB)
1003+ MOVL $494, CX
1004+ JMP callbackasm1(SB)
1005+ MOVL $495, CX
1006+ JMP callbackasm1(SB)
1007+ MOVL $496, CX
1008+ JMP callbackasm1(SB)
1009+ MOVL $497, CX
1010+ JMP callbackasm1(SB)
1011+ MOVL $498, CX
1012+ JMP callbackasm1(SB)
1013+ MOVL $499, CX
1014+ JMP callbackasm1(SB)
1015+ MOVL $500, CX
1016+ JMP callbackasm1(SB)
1017+ MOVL $501, CX
1018+ JMP callbackasm1(SB)
1019+ MOVL $502, CX
1020+ JMP callbackasm1(SB)
1021+ MOVL $503, CX
1022+ JMP callbackasm1(SB)
1023+ MOVL $504, CX
1024+ JMP callbackasm1(SB)
1025+ MOVL $505, CX
1026+ JMP callbackasm1(SB)
1027+ MOVL $506, CX
1028+ JMP callbackasm1(SB)
1029+ MOVL $507, CX
1030+ JMP callbackasm1(SB)
1031+ MOVL $508, CX
1032+ JMP callbackasm1(SB)
1033+ MOVL $509, CX
1034+ JMP callbackasm1(SB)
1035+ MOVL $510, CX
1036+ JMP callbackasm1(SB)
1037+ MOVL $511, CX
1038+ JMP callbackasm1(SB)
1039+ MOVL $512, CX
1040+ JMP callbackasm1(SB)
1041+ MOVL $513, CX
1042+ JMP callbackasm1(SB)
1043+ MOVL $514, CX
1044+ JMP callbackasm1(SB)
1045+ MOVL $515, CX
1046+ JMP callbackasm1(SB)
1047+ MOVL $516, CX
1048+ JMP callbackasm1(SB)
1049+ MOVL $517, CX
1050+ JMP callbackasm1(SB)
1051+ MOVL $518, CX
1052+ JMP callbackasm1(SB)
1053+ MOVL $519, CX
1054+ JMP callbackasm1(SB)
1055+ MOVL $520, CX
1056+ JMP callbackasm1(SB)
1057+ MOVL $521, CX
1058+ JMP callbackasm1(SB)
1059+ MOVL $522, CX
1060+ JMP callbackasm1(SB)
1061+ MOVL $523, CX
1062+ JMP callbackasm1(SB)
1063+ MOVL $524, CX
1064+ JMP callbackasm1(SB)
1065+ MOVL $525, CX
1066+ JMP callbackasm1(SB)
1067+ MOVL $526, CX
1068+ JMP callbackasm1(SB)
1069+ MOVL $527, CX
1070+ JMP callbackasm1(SB)
1071+ MOVL $528, CX
1072+ JMP callbackasm1(SB)
1073+ MOVL $529, CX
1074+ JMP callbackasm1(SB)
1075+ MOVL $530, CX
1076+ JMP callbackasm1(SB)
1077+ MOVL $531, CX
1078+ JMP callbackasm1(SB)
1079+ MOVL $532, CX
1080+ JMP callbackasm1(SB)
1081+ MOVL $533, CX
1082+ JMP callbackasm1(SB)
1083+ MOVL $534, CX
1084+ JMP callbackasm1(SB)
1085+ MOVL $535, CX
1086+ JMP callbackasm1(SB)
1087+ MOVL $536, CX
1088+ JMP callbackasm1(SB)
1089+ MOVL $537, CX
1090+ JMP callbackasm1(SB)
1091+ MOVL $538, CX
1092+ JMP callbackasm1(SB)
1093+ MOVL $539, CX
1094+ JMP callbackasm1(SB)
1095+ MOVL $540, CX
1096+ JMP callbackasm1(SB)
1097+ MOVL $541, CX
1098+ JMP callbackasm1(SB)
1099+ MOVL $542, CX
1100+ JMP callbackasm1(SB)
1101+ MOVL $543, CX
1102+ JMP callbackasm1(SB)
1103+ MOVL $544, CX
1104+ JMP callbackasm1(SB)
1105+ MOVL $545, CX
1106+ JMP callbackasm1(SB)
1107+ MOVL $546, CX
1108+ JMP callbackasm1(SB)
1109+ MOVL $547, CX
1110+ JMP callbackasm1(SB)
1111+ MOVL $548, CX
1112+ JMP callbackasm1(SB)
1113+ MOVL $549, CX
1114+ JMP callbackasm1(SB)
1115+ MOVL $550, CX
1116+ JMP callbackasm1(SB)
1117+ MOVL $551, CX
1118+ JMP callbackasm1(SB)
1119+ MOVL $552, CX
1120+ JMP callbackasm1(SB)
1121+ MOVL $553, CX
1122+ JMP callbackasm1(SB)
1123+ MOVL $554, CX
1124+ JMP callbackasm1(SB)
1125+ MOVL $555, CX
1126+ JMP callbackasm1(SB)
1127+ MOVL $556, CX
1128+ JMP callbackasm1(SB)
1129+ MOVL $557, CX
1130+ JMP callbackasm1(SB)
1131+ MOVL $558, CX
1132+ JMP callbackasm1(SB)
1133+ MOVL $559, CX
1134+ JMP callbackasm1(SB)
1135+ MOVL $560, CX
1136+ JMP callbackasm1(SB)
1137+ MOVL $561, CX
1138+ JMP callbackasm1(SB)
1139+ MOVL $562, CX
1140+ JMP callbackasm1(SB)
1141+ MOVL $563, CX
1142+ JMP callbackasm1(SB)
1143+ MOVL $564, CX
1144+ JMP callbackasm1(SB)
1145+ MOVL $565, CX
1146+ JMP callbackasm1(SB)
1147+ MOVL $566, CX
1148+ JMP callbackasm1(SB)
1149+ MOVL $567, CX
1150+ JMP callbackasm1(SB)
1151+ MOVL $568, CX
1152+ JMP callbackasm1(SB)
1153+ MOVL $569, CX
1154+ JMP callbackasm1(SB)
1155+ MOVL $570, CX
1156+ JMP callbackasm1(SB)
1157+ MOVL $571, CX
1158+ JMP callbackasm1(SB)
1159+ MOVL $572, CX
1160+ JMP callbackasm1(SB)
1161+ MOVL $573, CX
1162+ JMP callbackasm1(SB)
1163+ MOVL $574, CX
1164+ JMP callbackasm1(SB)
1165+ MOVL $575, CX
1166+ JMP callbackasm1(SB)
1167+ MOVL $576, CX
1168+ JMP callbackasm1(SB)
1169+ MOVL $577, CX
1170+ JMP callbackasm1(SB)
1171+ MOVL $578, CX
1172+ JMP callbackasm1(SB)
1173+ MOVL $579, CX
1174+ JMP callbackasm1(SB)
1175+ MOVL $580, CX
1176+ JMP callbackasm1(SB)
1177+ MOVL $581, CX
1178+ JMP callbackasm1(SB)
1179+ MOVL $582, CX
1180+ JMP callbackasm1(SB)
1181+ MOVL $583, CX
1182+ JMP callbackasm1(SB)
1183+ MOVL $584, CX
1184+ JMP callbackasm1(SB)
1185+ MOVL $585, CX
1186+ JMP callbackasm1(SB)
1187+ MOVL $586, CX
1188+ JMP callbackasm1(SB)
1189+ MOVL $587, CX
1190+ JMP callbackasm1(SB)
1191+ MOVL $588, CX
1192+ JMP callbackasm1(SB)
1193+ MOVL $589, CX
1194+ JMP callbackasm1(SB)
1195+ MOVL $590, CX
1196+ JMP callbackasm1(SB)
1197+ MOVL $591, CX
1198+ JMP callbackasm1(SB)
1199+ MOVL $592, CX
1200+ JMP callbackasm1(SB)
1201+ MOVL $593, CX
1202+ JMP callbackasm1(SB)
1203+ MOVL $594, CX
1204+ JMP callbackasm1(SB)
1205+ MOVL $595, CX
1206+ JMP callbackasm1(SB)
1207+ MOVL $596, CX
1208+ JMP callbackasm1(SB)
1209+ MOVL $597, CX
1210+ JMP callbackasm1(SB)
1211+ MOVL $598, CX
1212+ JMP callbackasm1(SB)
1213+ MOVL $599, CX
1214+ JMP callbackasm1(SB)
1215+ MOVL $600, CX
1216+ JMP callbackasm1(SB)
1217+ MOVL $601, CX
1218+ JMP callbackasm1(SB)
1219+ MOVL $602, CX
1220+ JMP callbackasm1(SB)
1221+ MOVL $603, CX
1222+ JMP callbackasm1(SB)
1223+ MOVL $604, CX
1224+ JMP callbackasm1(SB)
1225+ MOVL $605, CX
1226+ JMP callbackasm1(SB)
1227+ MOVL $606, CX
1228+ JMP callbackasm1(SB)
1229+ MOVL $607, CX
1230+ JMP callbackasm1(SB)
1231+ MOVL $608, CX
1232+ JMP callbackasm1(SB)
1233+ MOVL $609, CX
1234+ JMP callbackasm1(SB)
1235+ MOVL $610, CX
1236+ JMP callbackasm1(SB)
1237+ MOVL $611, CX
1238+ JMP callbackasm1(SB)
1239+ MOVL $612, CX
1240+ JMP callbackasm1(SB)
1241+ MOVL $613, CX
1242+ JMP callbackasm1(SB)
1243+ MOVL $614, CX
1244+ JMP callbackasm1(SB)
1245+ MOVL $615, CX
1246+ JMP callbackasm1(SB)
1247+ MOVL $616, CX
1248+ JMP callbackasm1(SB)
1249+ MOVL $617, CX
1250+ JMP callbackasm1(SB)
1251+ MOVL $618, CX
1252+ JMP callbackasm1(SB)
1253+ MOVL $619, CX
1254+ JMP callbackasm1(SB)
1255+ MOVL $620, CX
1256+ JMP callbackasm1(SB)
1257+ MOVL $621, CX
1258+ JMP callbackasm1(SB)
1259+ MOVL $622, CX
1260+ JMP callbackasm1(SB)
1261+ MOVL $623, CX
1262+ JMP callbackasm1(SB)
1263+ MOVL $624, CX
1264+ JMP callbackasm1(SB)
1265+ MOVL $625, CX
1266+ JMP callbackasm1(SB)
1267+ MOVL $626, CX
1268+ JMP callbackasm1(SB)
1269+ MOVL $627, CX
1270+ JMP callbackasm1(SB)
1271+ MOVL $628, CX
1272+ JMP callbackasm1(SB)
1273+ MOVL $629, CX
1274+ JMP callbackasm1(SB)
1275+ MOVL $630, CX
1276+ JMP callbackasm1(SB)
1277+ MOVL $631, CX
1278+ JMP callbackasm1(SB)
1279+ MOVL $632, CX
1280+ JMP callbackasm1(SB)
1281+ MOVL $633, CX
1282+ JMP callbackasm1(SB)
1283+ MOVL $634, CX
1284+ JMP callbackasm1(SB)
1285+ MOVL $635, CX
1286+ JMP callbackasm1(SB)
1287+ MOVL $636, CX
1288+ JMP callbackasm1(SB)
1289+ MOVL $637, CX
1290+ JMP callbackasm1(SB)
1291+ MOVL $638, CX
1292+ JMP callbackasm1(SB)
1293+ MOVL $639, CX
1294+ JMP callbackasm1(SB)
1295+ MOVL $640, CX
1296+ JMP callbackasm1(SB)
1297+ MOVL $641, CX
1298+ JMP callbackasm1(SB)
1299+ MOVL $642, CX
1300+ JMP callbackasm1(SB)
1301+ MOVL $643, CX
1302+ JMP callbackasm1(SB)
1303+ MOVL $644, CX
1304+ JMP callbackasm1(SB)
1305+ MOVL $645, CX
1306+ JMP callbackasm1(SB)
1307+ MOVL $646, CX
1308+ JMP callbackasm1(SB)
1309+ MOVL $647, CX
1310+ JMP callbackasm1(SB)
1311+ MOVL $648, CX
1312+ JMP callbackasm1(SB)
1313+ MOVL $649, CX
1314+ JMP callbackasm1(SB)
1315+ MOVL $650, CX
1316+ JMP callbackasm1(SB)
1317+ MOVL $651, CX
1318+ JMP callbackasm1(SB)
1319+ MOVL $652, CX
1320+ JMP callbackasm1(SB)
1321+ MOVL $653, CX
1322+ JMP callbackasm1(SB)
1323+ MOVL $654, CX
1324+ JMP callbackasm1(SB)
1325+ MOVL $655, CX
1326+ JMP callbackasm1(SB)
1327+ MOVL $656, CX
1328+ JMP callbackasm1(SB)
1329+ MOVL $657, CX
1330+ JMP callbackasm1(SB)
1331+ MOVL $658, CX
1332+ JMP callbackasm1(SB)
1333+ MOVL $659, CX
1334+ JMP callbackasm1(SB)
1335+ MOVL $660, CX
1336+ JMP callbackasm1(SB)
1337+ MOVL $661, CX
1338+ JMP callbackasm1(SB)
1339+ MOVL $662, CX
1340+ JMP callbackasm1(SB)
1341+ MOVL $663, CX
1342+ JMP callbackasm1(SB)
1343+ MOVL $664, CX
1344+ JMP callbackasm1(SB)
1345+ MOVL $665, CX
1346+ JMP callbackasm1(SB)
1347+ MOVL $666, CX
1348+ JMP callbackasm1(SB)
1349+ MOVL $667, CX
1350+ JMP callbackasm1(SB)
1351+ MOVL $668, CX
1352+ JMP callbackasm1(SB)
1353+ MOVL $669, CX
1354+ JMP callbackasm1(SB)
1355+ MOVL $670, CX
1356+ JMP callbackasm1(SB)
1357+ MOVL $671, CX
1358+ JMP callbackasm1(SB)
1359+ MOVL $672, CX
1360+ JMP callbackasm1(SB)
1361+ MOVL $673, CX
1362+ JMP callbackasm1(SB)
1363+ MOVL $674, CX
1364+ JMP callbackasm1(SB)
1365+ MOVL $675, CX
1366+ JMP callbackasm1(SB)
1367+ MOVL $676, CX
1368+ JMP callbackasm1(SB)
1369+ MOVL $677, CX
1370+ JMP callbackasm1(SB)
1371+ MOVL $678, CX
1372+ JMP callbackasm1(SB)
1373+ MOVL $679, CX
1374+ JMP callbackasm1(SB)
1375+ MOVL $680, CX
1376+ JMP callbackasm1(SB)
1377+ MOVL $681, CX
1378+ JMP callbackasm1(SB)
1379+ MOVL $682, CX
1380+ JMP callbackasm1(SB)
1381+ MOVL $683, CX
1382+ JMP callbackasm1(SB)
1383+ MOVL $684, CX
1384+ JMP callbackasm1(SB)
1385+ MOVL $685, CX
1386+ JMP callbackasm1(SB)
1387+ MOVL $686, CX
1388+ JMP callbackasm1(SB)
1389+ MOVL $687, CX
1390+ JMP callbackasm1(SB)
1391+ MOVL $688, CX
1392+ JMP callbackasm1(SB)
1393+ MOVL $689, CX
1394+ JMP callbackasm1(SB)
1395+ MOVL $690, CX
1396+ JMP callbackasm1(SB)
1397+ MOVL $691, CX
1398+ JMP callbackasm1(SB)
1399+ MOVL $692, CX
1400+ JMP callbackasm1(SB)
1401+ MOVL $693, CX
1402+ JMP callbackasm1(SB)
1403+ MOVL $694, CX
1404+ JMP callbackasm1(SB)
1405+ MOVL $695, CX
1406+ JMP callbackasm1(SB)
1407+ MOVL $696, CX
1408+ JMP callbackasm1(SB)
1409+ MOVL $697, CX
1410+ JMP callbackasm1(SB)
1411+ MOVL $698, CX
1412+ JMP callbackasm1(SB)
1413+ MOVL $699, CX
1414+ JMP callbackasm1(SB)
1415+ MOVL $700, CX
1416+ JMP callbackasm1(SB)
1417+ MOVL $701, CX
1418+ JMP callbackasm1(SB)
1419+ MOVL $702, CX
1420+ JMP callbackasm1(SB)
1421+ MOVL $703, CX
1422+ JMP callbackasm1(SB)
1423+ MOVL $704, CX
1424+ JMP callbackasm1(SB)
1425+ MOVL $705, CX
1426+ JMP callbackasm1(SB)
1427+ MOVL $706, CX
1428+ JMP callbackasm1(SB)
1429+ MOVL $707, CX
1430+ JMP callbackasm1(SB)
1431+ MOVL $708, CX
1432+ JMP callbackasm1(SB)
1433+ MOVL $709, CX
1434+ JMP callbackasm1(SB)
1435+ MOVL $710, CX
1436+ JMP callbackasm1(SB)
1437+ MOVL $711, CX
1438+ JMP callbackasm1(SB)
1439+ MOVL $712, CX
1440+ JMP callbackasm1(SB)
1441+ MOVL $713, CX
1442+ JMP callbackasm1(SB)
1443+ MOVL $714, CX
1444+ JMP callbackasm1(SB)
1445+ MOVL $715, CX
1446+ JMP callbackasm1(SB)
1447+ MOVL $716, CX
1448+ JMP callbackasm1(SB)
1449+ MOVL $717, CX
1450+ JMP callbackasm1(SB)
1451+ MOVL $718, CX
1452+ JMP callbackasm1(SB)
1453+ MOVL $719, CX
1454+ JMP callbackasm1(SB)
1455+ MOVL $720, CX
1456+ JMP callbackasm1(SB)
1457+ MOVL $721, CX
1458+ JMP callbackasm1(SB)
1459+ MOVL $722, CX
1460+ JMP callbackasm1(SB)
1461+ MOVL $723, CX
1462+ JMP callbackasm1(SB)
1463+ MOVL $724, CX
1464+ JMP callbackasm1(SB)
1465+ MOVL $725, CX
1466+ JMP callbackasm1(SB)
1467+ MOVL $726, CX
1468+ JMP callbackasm1(SB)
1469+ MOVL $727, CX
1470+ JMP callbackasm1(SB)
1471+ MOVL $728, CX
1472+ JMP callbackasm1(SB)
1473+ MOVL $729, CX
1474+ JMP callbackasm1(SB)
1475+ MOVL $730, CX
1476+ JMP callbackasm1(SB)
1477+ MOVL $731, CX
1478+ JMP callbackasm1(SB)
1479+ MOVL $732, CX
1480+ JMP callbackasm1(SB)
1481+ MOVL $733, CX
1482+ JMP callbackasm1(SB)
1483+ MOVL $734, CX
1484+ JMP callbackasm1(SB)
1485+ MOVL $735, CX
1486+ JMP callbackasm1(SB)
1487+ MOVL $736, CX
1488+ JMP callbackasm1(SB)
1489+ MOVL $737, CX
1490+ JMP callbackasm1(SB)
1491+ MOVL $738, CX
1492+ JMP callbackasm1(SB)
1493+ MOVL $739, CX
1494+ JMP callbackasm1(SB)
1495+ MOVL $740, CX
1496+ JMP callbackasm1(SB)
1497+ MOVL $741, CX
1498+ JMP callbackasm1(SB)
1499+ MOVL $742, CX
1500+ JMP callbackasm1(SB)
1501+ MOVL $743, CX
1502+ JMP callbackasm1(SB)
1503+ MOVL $744, CX
1504+ JMP callbackasm1(SB)
1505+ MOVL $745, CX
1506+ JMP callbackasm1(SB)
1507+ MOVL $746, CX
1508+ JMP callbackasm1(SB)
1509+ MOVL $747, CX
1510+ JMP callbackasm1(SB)
1511+ MOVL $748, CX
1512+ JMP callbackasm1(SB)
1513+ MOVL $749, CX
1514+ JMP callbackasm1(SB)
1515+ MOVL $750, CX
1516+ JMP callbackasm1(SB)
1517+ MOVL $751, CX
1518+ JMP callbackasm1(SB)
1519+ MOVL $752, CX
1520+ JMP callbackasm1(SB)
1521+ MOVL $753, CX
1522+ JMP callbackasm1(SB)
1523+ MOVL $754, CX
1524+ JMP callbackasm1(SB)
1525+ MOVL $755, CX
1526+ JMP callbackasm1(SB)
1527+ MOVL $756, CX
1528+ JMP callbackasm1(SB)
1529+ MOVL $757, CX
1530+ JMP callbackasm1(SB)
1531+ MOVL $758, CX
1532+ JMP callbackasm1(SB)
1533+ MOVL $759, CX
1534+ JMP callbackasm1(SB)
1535+ MOVL $760, CX
1536+ JMP callbackasm1(SB)
1537+ MOVL $761, CX
1538+ JMP callbackasm1(SB)
1539+ MOVL $762, CX
1540+ JMP callbackasm1(SB)
1541+ MOVL $763, CX
1542+ JMP callbackasm1(SB)
1543+ MOVL $764, CX
1544+ JMP callbackasm1(SB)
1545+ MOVL $765, CX
1546+ JMP callbackasm1(SB)
1547+ MOVL $766, CX
1548+ JMP callbackasm1(SB)
1549+ MOVL $767, CX
1550+ JMP callbackasm1(SB)
1551+ MOVL $768, CX
1552+ JMP callbackasm1(SB)
1553+ MOVL $769, CX
1554+ JMP callbackasm1(SB)
1555+ MOVL $770, CX
1556+ JMP callbackasm1(SB)
1557+ MOVL $771, CX
1558+ JMP callbackasm1(SB)
1559+ MOVL $772, CX
1560+ JMP callbackasm1(SB)
1561+ MOVL $773, CX
1562+ JMP callbackasm1(SB)
1563+ MOVL $774, CX
1564+ JMP callbackasm1(SB)
1565+ MOVL $775, CX
1566+ JMP callbackasm1(SB)
1567+ MOVL $776, CX
1568+ JMP callbackasm1(SB)
1569+ MOVL $777, CX
1570+ JMP callbackasm1(SB)
1571+ MOVL $778, CX
1572+ JMP callbackasm1(SB)
1573+ MOVL $779, CX
1574+ JMP callbackasm1(SB)
1575+ MOVL $780, CX
1576+ JMP callbackasm1(SB)
1577+ MOVL $781, CX
1578+ JMP callbackasm1(SB)
1579+ MOVL $782, CX
1580+ JMP callbackasm1(SB)
1581+ MOVL $783, CX
1582+ JMP callbackasm1(SB)
1583+ MOVL $784, CX
1584+ JMP callbackasm1(SB)
1585+ MOVL $785, CX
1586+ JMP callbackasm1(SB)
1587+ MOVL $786, CX
1588+ JMP callbackasm1(SB)
1589+ MOVL $787, CX
1590+ JMP callbackasm1(SB)
1591+ MOVL $788, CX
1592+ JMP callbackasm1(SB)
1593+ MOVL $789, CX
1594+ JMP callbackasm1(SB)
1595+ MOVL $790, CX
1596+ JMP callbackasm1(SB)
1597+ MOVL $791, CX
1598+ JMP callbackasm1(SB)
1599+ MOVL $792, CX
1600+ JMP callbackasm1(SB)
1601+ MOVL $793, CX
1602+ JMP callbackasm1(SB)
1603+ MOVL $794, CX
1604+ JMP callbackasm1(SB)
1605+ MOVL $795, CX
1606+ JMP callbackasm1(SB)
1607+ MOVL $796, CX
1608+ JMP callbackasm1(SB)
1609+ MOVL $797, CX
1610+ JMP callbackasm1(SB)
1611+ MOVL $798, CX
1612+ JMP callbackasm1(SB)
1613+ MOVL $799, CX
1614+ JMP callbackasm1(SB)
1615+ MOVL $800, CX
1616+ JMP callbackasm1(SB)
1617+ MOVL $801, CX
1618+ JMP callbackasm1(SB)
1619+ MOVL $802, CX
1620+ JMP callbackasm1(SB)
1621+ MOVL $803, CX
1622+ JMP callbackasm1(SB)
1623+ MOVL $804, CX
1624+ JMP callbackasm1(SB)
1625+ MOVL $805, CX
1626+ JMP callbackasm1(SB)
1627+ MOVL $806, CX
1628+ JMP callbackasm1(SB)
1629+ MOVL $807, CX
1630+ JMP callbackasm1(SB)
1631+ MOVL $808, CX
1632+ JMP callbackasm1(SB)
1633+ MOVL $809, CX
1634+ JMP callbackasm1(SB)
1635+ MOVL $810, CX
1636+ JMP callbackasm1(SB)
1637+ MOVL $811, CX
1638+ JMP callbackasm1(SB)
1639+ MOVL $812, CX
1640+ JMP callbackasm1(SB)
1641+ MOVL $813, CX
1642+ JMP callbackasm1(SB)
1643+ MOVL $814, CX
1644+ JMP callbackasm1(SB)
1645+ MOVL $815, CX
1646+ JMP callbackasm1(SB)
1647+ MOVL $816, CX
1648+ JMP callbackasm1(SB)
1649+ MOVL $817, CX
1650+ JMP callbackasm1(SB)
1651+ MOVL $818, CX
1652+ JMP callbackasm1(SB)
1653+ MOVL $819, CX
1654+ JMP callbackasm1(SB)
1655+ MOVL $820, CX
1656+ JMP callbackasm1(SB)
1657+ MOVL $821, CX
1658+ JMP callbackasm1(SB)
1659+ MOVL $822, CX
1660+ JMP callbackasm1(SB)
1661+ MOVL $823, CX
1662+ JMP callbackasm1(SB)
1663+ MOVL $824, CX
1664+ JMP callbackasm1(SB)
1665+ MOVL $825, CX
1666+ JMP callbackasm1(SB)
1667+ MOVL $826, CX
1668+ JMP callbackasm1(SB)
1669+ MOVL $827, CX
1670+ JMP callbackasm1(SB)
1671+ MOVL $828, CX
1672+ JMP callbackasm1(SB)
1673+ MOVL $829, CX
1674+ JMP callbackasm1(SB)
1675+ MOVL $830, CX
1676+ JMP callbackasm1(SB)
1677+ MOVL $831, CX
1678+ JMP callbackasm1(SB)
1679+ MOVL $832, CX
1680+ JMP callbackasm1(SB)
1681+ MOVL $833, CX
1682+ JMP callbackasm1(SB)
1683+ MOVL $834, CX
1684+ JMP callbackasm1(SB)
1685+ MOVL $835, CX
1686+ JMP callbackasm1(SB)
1687+ MOVL $836, CX
1688+ JMP callbackasm1(SB)
1689+ MOVL $837, CX
1690+ JMP callbackasm1(SB)
1691+ MOVL $838, CX
1692+ JMP callbackasm1(SB)
1693+ MOVL $839, CX
1694+ JMP callbackasm1(SB)
1695+ MOVL $840, CX
1696+ JMP callbackasm1(SB)
1697+ MOVL $841, CX
1698+ JMP callbackasm1(SB)
1699+ MOVL $842, CX
1700+ JMP callbackasm1(SB)
1701+ MOVL $843, CX
1702+ JMP callbackasm1(SB)
1703+ MOVL $844, CX
1704+ JMP callbackasm1(SB)
1705+ MOVL $845, CX
1706+ JMP callbackasm1(SB)
1707+ MOVL $846, CX
1708+ JMP callbackasm1(SB)
1709+ MOVL $847, CX
1710+ JMP callbackasm1(SB)
1711+ MOVL $848, CX
1712+ JMP callbackasm1(SB)
1713+ MOVL $849, CX
1714+ JMP callbackasm1(SB)
1715+ MOVL $850, CX
1716+ JMP callbackasm1(SB)
1717+ MOVL $851, CX
1718+ JMP callbackasm1(SB)
1719+ MOVL $852, CX
1720+ JMP callbackasm1(SB)
1721+ MOVL $853, CX
1722+ JMP callbackasm1(SB)
1723+ MOVL $854, CX
1724+ JMP callbackasm1(SB)
1725+ MOVL $855, CX
1726+ JMP callbackasm1(SB)
1727+ MOVL $856, CX
1728+ JMP callbackasm1(SB)
1729+ MOVL $857, CX
1730+ JMP callbackasm1(SB)
1731+ MOVL $858, CX
1732+ JMP callbackasm1(SB)
1733+ MOVL $859, CX
1734+ JMP callbackasm1(SB)
1735+ MOVL $860, CX
1736+ JMP callbackasm1(SB)
1737+ MOVL $861, CX
1738+ JMP callbackasm1(SB)
1739+ MOVL $862, CX
1740+ JMP callbackasm1(SB)
1741+ MOVL $863, CX
1742+ JMP callbackasm1(SB)
1743+ MOVL $864, CX
1744+ JMP callbackasm1(SB)
1745+ MOVL $865, CX
1746+ JMP callbackasm1(SB)
1747+ MOVL $866, CX
1748+ JMP callbackasm1(SB)
1749+ MOVL $867, CX
1750+ JMP callbackasm1(SB)
1751+ MOVL $868, CX
1752+ JMP callbackasm1(SB)
1753+ MOVL $869, CX
1754+ JMP callbackasm1(SB)
1755+ MOVL $870, CX
1756+ JMP callbackasm1(SB)
1757+ MOVL $871, CX
1758+ JMP callbackasm1(SB)
1759+ MOVL $872, CX
1760+ JMP callbackasm1(SB)
1761+ MOVL $873, CX
1762+ JMP callbackasm1(SB)
1763+ MOVL $874, CX
1764+ JMP callbackasm1(SB)
1765+ MOVL $875, CX
1766+ JMP callbackasm1(SB)
1767+ MOVL $876, CX
1768+ JMP callbackasm1(SB)
1769+ MOVL $877, CX
1770+ JMP callbackasm1(SB)
1771+ MOVL $878, CX
1772+ JMP callbackasm1(SB)
1773+ MOVL $879, CX
1774+ JMP callbackasm1(SB)
1775+ MOVL $880, CX
1776+ JMP callbackasm1(SB)
1777+ MOVL $881, CX
1778+ JMP callbackasm1(SB)
1779+ MOVL $882, CX
1780+ JMP callbackasm1(SB)
1781+ MOVL $883, CX
1782+ JMP callbackasm1(SB)
1783+ MOVL $884, CX
1784+ JMP callbackasm1(SB)
1785+ MOVL $885, CX
1786+ JMP callbackasm1(SB)
1787+ MOVL $886, CX
1788+ JMP callbackasm1(SB)
1789+ MOVL $887, CX
1790+ JMP callbackasm1(SB)
1791+ MOVL $888, CX
1792+ JMP callbackasm1(SB)
1793+ MOVL $889, CX
1794+ JMP callbackasm1(SB)
1795+ MOVL $890, CX
1796+ JMP callbackasm1(SB)
1797+ MOVL $891, CX
1798+ JMP callbackasm1(SB)
1799+ MOVL $892, CX
1800+ JMP callbackasm1(SB)
1801+ MOVL $893, CX
1802+ JMP callbackasm1(SB)
1803+ MOVL $894, CX
1804+ JMP callbackasm1(SB)
1805+ MOVL $895, CX
1806+ JMP callbackasm1(SB)
1807+ MOVL $896, CX
1808+ JMP callbackasm1(SB)
1809+ MOVL $897, CX
1810+ JMP callbackasm1(SB)
1811+ MOVL $898, CX
1812+ JMP callbackasm1(SB)
1813+ MOVL $899, CX
1814+ JMP callbackasm1(SB)
1815+ MOVL $900, CX
1816+ JMP callbackasm1(SB)
1817+ MOVL $901, CX
1818+ JMP callbackasm1(SB)
1819+ MOVL $902, CX
1820+ JMP callbackasm1(SB)
1821+ MOVL $903, CX
1822+ JMP callbackasm1(SB)
1823+ MOVL $904, CX
1824+ JMP callbackasm1(SB)
1825+ MOVL $905, CX
1826+ JMP callbackasm1(SB)
1827+ MOVL $906, CX
1828+ JMP callbackasm1(SB)
1829+ MOVL $907, CX
1830+ JMP callbackasm1(SB)
1831+ MOVL $908, CX
1832+ JMP callbackasm1(SB)
1833+ MOVL $909, CX
1834+ JMP callbackasm1(SB)
1835+ MOVL $910, CX
1836+ JMP callbackasm1(SB)
1837+ MOVL $911, CX
1838+ JMP callbackasm1(SB)
1839+ MOVL $912, CX
1840+ JMP callbackasm1(SB)
1841+ MOVL $913, CX
1842+ JMP callbackasm1(SB)
1843+ MOVL $914, CX
1844+ JMP callbackasm1(SB)
1845+ MOVL $915, CX
1846+ JMP callbackasm1(SB)
1847+ MOVL $916, CX
1848+ JMP callbackasm1(SB)
1849+ MOVL $917, CX
1850+ JMP callbackasm1(SB)
1851+ MOVL $918, CX
1852+ JMP callbackasm1(SB)
1853+ MOVL $919, CX
1854+ JMP callbackasm1(SB)
1855+ MOVL $920, CX
1856+ JMP callbackasm1(SB)
1857+ MOVL $921, CX
1858+ JMP callbackasm1(SB)
1859+ MOVL $922, CX
1860+ JMP callbackasm1(SB)
1861+ MOVL $923, CX
1862+ JMP callbackasm1(SB)
1863+ MOVL $924, CX
1864+ JMP callbackasm1(SB)
1865+ MOVL $925, CX
1866+ JMP callbackasm1(SB)
1867+ MOVL $926, CX
1868+ JMP callbackasm1(SB)
1869+ MOVL $927, CX
1870+ JMP callbackasm1(SB)
1871+ MOVL $928, CX
1872+ JMP callbackasm1(SB)
1873+ MOVL $929, CX
1874+ JMP callbackasm1(SB)
1875+ MOVL $930, CX
1876+ JMP callbackasm1(SB)
1877+ MOVL $931, CX
1878+ JMP callbackasm1(SB)
1879+ MOVL $932, CX
1880+ JMP callbackasm1(SB)
1881+ MOVL $933, CX
1882+ JMP callbackasm1(SB)
1883+ MOVL $934, CX
1884+ JMP callbackasm1(SB)
1885+ MOVL $935, CX
1886+ JMP callbackasm1(SB)
1887+ MOVL $936, CX
1888+ JMP callbackasm1(SB)
1889+ MOVL $937, CX
1890+ JMP callbackasm1(SB)
1891+ MOVL $938, CX
1892+ JMP callbackasm1(SB)
1893+ MOVL $939, CX
1894+ JMP callbackasm1(SB)
1895+ MOVL $940, CX
1896+ JMP callbackasm1(SB)
1897+ MOVL $941, CX
1898+ JMP callbackasm1(SB)
1899+ MOVL $942, CX
1900+ JMP callbackasm1(SB)
1901+ MOVL $943, CX
1902+ JMP callbackasm1(SB)
1903+ MOVL $944, CX
1904+ JMP callbackasm1(SB)
1905+ MOVL $945, CX
1906+ JMP callbackasm1(SB)
1907+ MOVL $946, CX
1908+ JMP callbackasm1(SB)
1909+ MOVL $947, CX
1910+ JMP callbackasm1(SB)
1911+ MOVL $948, CX
1912+ JMP callbackasm1(SB)
1913+ MOVL $949, CX
1914+ JMP callbackasm1(SB)
1915+ MOVL $950, CX
1916+ JMP callbackasm1(SB)
1917+ MOVL $951, CX
1918+ JMP callbackasm1(SB)
1919+ MOVL $952, CX
1920+ JMP callbackasm1(SB)
1921+ MOVL $953, CX
1922+ JMP callbackasm1(SB)
1923+ MOVL $954, CX
1924+ JMP callbackasm1(SB)
1925+ MOVL $955, CX
1926+ JMP callbackasm1(SB)
1927+ MOVL $956, CX
1928+ JMP callbackasm1(SB)
1929+ MOVL $957, CX
1930+ JMP callbackasm1(SB)
1931+ MOVL $958, CX
1932+ JMP callbackasm1(SB)
1933+ MOVL $959, CX
1934+ JMP callbackasm1(SB)
1935+ MOVL $960, CX
1936+ JMP callbackasm1(SB)
1937+ MOVL $961, CX
1938+ JMP callbackasm1(SB)
1939+ MOVL $962, CX
1940+ JMP callbackasm1(SB)
1941+ MOVL $963, CX
1942+ JMP callbackasm1(SB)
1943+ MOVL $964, CX
1944+ JMP callbackasm1(SB)
1945+ MOVL $965, CX
1946+ JMP callbackasm1(SB)
1947+ MOVL $966, CX
1948+ JMP callbackasm1(SB)
1949+ MOVL $967, CX
1950+ JMP callbackasm1(SB)
1951+ MOVL $968, CX
1952+ JMP callbackasm1(SB)
1953+ MOVL $969, CX
1954+ JMP callbackasm1(SB)
1955+ MOVL $970, CX
1956+ JMP callbackasm1(SB)
1957+ MOVL $971, CX
1958+ JMP callbackasm1(SB)
1959+ MOVL $972, CX
1960+ JMP callbackasm1(SB)
1961+ MOVL $973, CX
1962+ JMP callbackasm1(SB)
1963+ MOVL $974, CX
1964+ JMP callbackasm1(SB)
1965+ MOVL $975, CX
1966+ JMP callbackasm1(SB)
1967+ MOVL $976, CX
1968+ JMP callbackasm1(SB)
1969+ MOVL $977, CX
1970+ JMP callbackasm1(SB)
1971+ MOVL $978, CX
1972+ JMP callbackasm1(SB)
1973+ MOVL $979, CX
1974+ JMP callbackasm1(SB)
1975+ MOVL $980, CX
1976+ JMP callbackasm1(SB)
1977+ MOVL $981, CX
1978+ JMP callbackasm1(SB)
1979+ MOVL $982, CX
1980+ JMP callbackasm1(SB)
1981+ MOVL $983, CX
1982+ JMP callbackasm1(SB)
1983+ MOVL $984, CX
1984+ JMP callbackasm1(SB)
1985+ MOVL $985, CX
1986+ JMP callbackasm1(SB)
1987+ MOVL $986, CX
1988+ JMP callbackasm1(SB)
1989+ MOVL $987, CX
1990+ JMP callbackasm1(SB)
1991+ MOVL $988, CX
1992+ JMP callbackasm1(SB)
1993+ MOVL $989, CX
1994+ JMP callbackasm1(SB)
1995+ MOVL $990, CX
1996+ JMP callbackasm1(SB)
1997+ MOVL $991, CX
1998+ JMP callbackasm1(SB)
1999+ MOVL $992, CX
2000+ JMP callbackasm1(SB)
2001+ MOVL $993, CX
2002+ JMP callbackasm1(SB)
2003+ MOVL $994, CX
2004+ JMP callbackasm1(SB)
2005+ MOVL $995, CX
2006+ JMP callbackasm1(SB)
2007+ MOVL $996, CX
2008+ JMP callbackasm1(SB)
2009+ MOVL $997, CX
2010+ JMP callbackasm1(SB)
2011+ MOVL $998, CX
2012+ JMP callbackasm1(SB)
2013+ MOVL $999, CX
2014+ JMP callbackasm1(SB)
2015+ MOVL $1000, CX
2016+ JMP callbackasm1(SB)
2017+ MOVL $1001, CX
2018+ JMP callbackasm1(SB)
2019+ MOVL $1002, CX
2020+ JMP callbackasm1(SB)
2021+ MOVL $1003, CX
2022+ JMP callbackasm1(SB)
2023+ MOVL $1004, CX
2024+ JMP callbackasm1(SB)
2025+ MOVL $1005, CX
2026+ JMP callbackasm1(SB)
2027+ MOVL $1006, CX
2028+ JMP callbackasm1(SB)
2029+ MOVL $1007, CX
2030+ JMP callbackasm1(SB)
2031+ MOVL $1008, CX
2032+ JMP callbackasm1(SB)
2033+ MOVL $1009, CX
2034+ JMP callbackasm1(SB)
2035+ MOVL $1010, CX
2036+ JMP callbackasm1(SB)
2037+ MOVL $1011, CX
2038+ JMP callbackasm1(SB)
2039+ MOVL $1012, CX
2040+ JMP callbackasm1(SB)
2041+ MOVL $1013, CX
2042+ JMP callbackasm1(SB)
2043+ MOVL $1014, CX
2044+ JMP callbackasm1(SB)
2045+ MOVL $1015, CX
2046+ JMP callbackasm1(SB)
2047+ MOVL $1016, CX
2048+ JMP callbackasm1(SB)
2049+ MOVL $1017, CX
2050+ JMP callbackasm1(SB)
2051+ MOVL $1018, CX
2052+ JMP callbackasm1(SB)
2053+ MOVL $1019, CX
2054+ JMP callbackasm1(SB)
2055+ MOVL $1020, CX
2056+ JMP callbackasm1(SB)
2057+ MOVL $1021, CX
2058+ JMP callbackasm1(SB)
2059+ MOVL $1022, CX
2060+ JMP callbackasm1(SB)
2061+ MOVL $1023, CX
2062+ JMP callbackasm1(SB)
2063+ MOVL $1024, CX
2064+ JMP callbackasm1(SB)
2065+ MOVL $1025, CX
2066+ JMP callbackasm1(SB)
2067+ MOVL $1026, CX
2068+ JMP callbackasm1(SB)
2069+ MOVL $1027, CX
2070+ JMP callbackasm1(SB)
2071+ MOVL $1028, CX
2072+ JMP callbackasm1(SB)
2073+ MOVL $1029, CX
2074+ JMP callbackasm1(SB)
2075+ MOVL $1030, CX
2076+ JMP callbackasm1(SB)
2077+ MOVL $1031, CX
2078+ JMP callbackasm1(SB)
2079+ MOVL $1032, CX
2080+ JMP callbackasm1(SB)
2081+ MOVL $1033, CX
2082+ JMP callbackasm1(SB)
2083+ MOVL $1034, CX
2084+ JMP callbackasm1(SB)
2085+ MOVL $1035, CX
2086+ JMP callbackasm1(SB)
2087+ MOVL $1036, CX
2088+ JMP callbackasm1(SB)
2089+ MOVL $1037, CX
2090+ JMP callbackasm1(SB)
2091+ MOVL $1038, CX
2092+ JMP callbackasm1(SB)
2093+ MOVL $1039, CX
2094+ JMP callbackasm1(SB)
2095+ MOVL $1040, CX
2096+ JMP callbackasm1(SB)
2097+ MOVL $1041, CX
2098+ JMP callbackasm1(SB)
2099+ MOVL $1042, CX
2100+ JMP callbackasm1(SB)
2101+ MOVL $1043, CX
2102+ JMP callbackasm1(SB)
2103+ MOVL $1044, CX
2104+ JMP callbackasm1(SB)
2105+ MOVL $1045, CX
2106+ JMP callbackasm1(SB)
2107+ MOVL $1046, CX
2108+ JMP callbackasm1(SB)
2109+ MOVL $1047, CX
2110+ JMP callbackasm1(SB)
2111+ MOVL $1048, CX
2112+ JMP callbackasm1(SB)
2113+ MOVL $1049, CX
2114+ JMP callbackasm1(SB)
2115+ MOVL $1050, CX
2116+ JMP callbackasm1(SB)
2117+ MOVL $1051, CX
2118+ JMP callbackasm1(SB)
2119+ MOVL $1052, CX
2120+ JMP callbackasm1(SB)
2121+ MOVL $1053, CX
2122+ JMP callbackasm1(SB)
2123+ MOVL $1054, CX
2124+ JMP callbackasm1(SB)
2125+ MOVL $1055, CX
2126+ JMP callbackasm1(SB)
2127+ MOVL $1056, CX
2128+ JMP callbackasm1(SB)
2129+ MOVL $1057, CX
2130+ JMP callbackasm1(SB)
2131+ MOVL $1058, CX
2132+ JMP callbackasm1(SB)
2133+ MOVL $1059, CX
2134+ JMP callbackasm1(SB)
2135+ MOVL $1060, CX
2136+ JMP callbackasm1(SB)
2137+ MOVL $1061, CX
2138+ JMP callbackasm1(SB)
2139+ MOVL $1062, CX
2140+ JMP callbackasm1(SB)
2141+ MOVL $1063, CX
2142+ JMP callbackasm1(SB)
2143+ MOVL $1064, CX
2144+ JMP callbackasm1(SB)
2145+ MOVL $1065, CX
2146+ JMP callbackasm1(SB)
2147+ MOVL $1066, CX
2148+ JMP callbackasm1(SB)
2149+ MOVL $1067, CX
2150+ JMP callbackasm1(SB)
2151+ MOVL $1068, CX
2152+ JMP callbackasm1(SB)
2153+ MOVL $1069, CX
2154+ JMP callbackasm1(SB)
2155+ MOVL $1070, CX
2156+ JMP callbackasm1(SB)
2157+ MOVL $1071, CX
2158+ JMP callbackasm1(SB)
2159+ MOVL $1072, CX
2160+ JMP callbackasm1(SB)
2161+ MOVL $1073, CX
2162+ JMP callbackasm1(SB)
2163+ MOVL $1074, CX
2164+ JMP callbackasm1(SB)
2165+ MOVL $1075, CX
2166+ JMP callbackasm1(SB)
2167+ MOVL $1076, CX
2168+ JMP callbackasm1(SB)
2169+ MOVL $1077, CX
2170+ JMP callbackasm1(SB)
2171+ MOVL $1078, CX
2172+ JMP callbackasm1(SB)
2173+ MOVL $1079, CX
2174+ JMP callbackasm1(SB)
2175+ MOVL $1080, CX
2176+ JMP callbackasm1(SB)
2177+ MOVL $1081, CX
2178+ JMP callbackasm1(SB)
2179+ MOVL $1082, CX
2180+ JMP callbackasm1(SB)
2181+ MOVL $1083, CX
2182+ JMP callbackasm1(SB)
2183+ MOVL $1084, CX
2184+ JMP callbackasm1(SB)
2185+ MOVL $1085, CX
2186+ JMP callbackasm1(SB)
2187+ MOVL $1086, CX
2188+ JMP callbackasm1(SB)
2189+ MOVL $1087, CX
2190+ JMP callbackasm1(SB)
2191+ MOVL $1088, CX
2192+ JMP callbackasm1(SB)
2193+ MOVL $1089, CX
2194+ JMP callbackasm1(SB)
2195+ MOVL $1090, CX
2196+ JMP callbackasm1(SB)
2197+ MOVL $1091, CX
2198+ JMP callbackasm1(SB)
2199+ MOVL $1092, CX
2200+ JMP callbackasm1(SB)
2201+ MOVL $1093, CX
2202+ JMP callbackasm1(SB)
2203+ MOVL $1094, CX
2204+ JMP callbackasm1(SB)
2205+ MOVL $1095, CX
2206+ JMP callbackasm1(SB)
2207+ MOVL $1096, CX
2208+ JMP callbackasm1(SB)
2209+ MOVL $1097, CX
2210+ JMP callbackasm1(SB)
2211+ MOVL $1098, CX
2212+ JMP callbackasm1(SB)
2213+ MOVL $1099, CX
2214+ JMP callbackasm1(SB)
2215+ MOVL $1100, CX
2216+ JMP callbackasm1(SB)
2217+ MOVL $1101, CX
2218+ JMP callbackasm1(SB)
2219+ MOVL $1102, CX
2220+ JMP callbackasm1(SB)
2221+ MOVL $1103, CX
2222+ JMP callbackasm1(SB)
2223+ MOVL $1104, CX
2224+ JMP callbackasm1(SB)
2225+ MOVL $1105, CX
2226+ JMP callbackasm1(SB)
2227+ MOVL $1106, CX
2228+ JMP callbackasm1(SB)
2229+ MOVL $1107, CX
2230+ JMP callbackasm1(SB)
2231+ MOVL $1108, CX
2232+ JMP callbackasm1(SB)
2233+ MOVL $1109, CX
2234+ JMP callbackasm1(SB)
2235+ MOVL $1110, CX
2236+ JMP callbackasm1(SB)
2237+ MOVL $1111, CX
2238+ JMP callbackasm1(SB)
2239+ MOVL $1112, CX
2240+ JMP callbackasm1(SB)
2241+ MOVL $1113, CX
2242+ JMP callbackasm1(SB)
2243+ MOVL $1114, CX
2244+ JMP callbackasm1(SB)
2245+ MOVL $1115, CX
2246+ JMP callbackasm1(SB)
2247+ MOVL $1116, CX
2248+ JMP callbackasm1(SB)
2249+ MOVL $1117, CX
2250+ JMP callbackasm1(SB)
2251+ MOVL $1118, CX
2252+ JMP callbackasm1(SB)
2253+ MOVL $1119, CX
2254+ JMP callbackasm1(SB)
2255+ MOVL $1120, CX
2256+ JMP callbackasm1(SB)
2257+ MOVL $1121, CX
2258+ JMP callbackasm1(SB)
2259+ MOVL $1122, CX
2260+ JMP callbackasm1(SB)
2261+ MOVL $1123, CX
2262+ JMP callbackasm1(SB)
2263+ MOVL $1124, CX
2264+ JMP callbackasm1(SB)
2265+ MOVL $1125, CX
2266+ JMP callbackasm1(SB)
2267+ MOVL $1126, CX
2268+ JMP callbackasm1(SB)
2269+ MOVL $1127, CX
2270+ JMP callbackasm1(SB)
2271+ MOVL $1128, CX
2272+ JMP callbackasm1(SB)
2273+ MOVL $1129, CX
2274+ JMP callbackasm1(SB)
2275+ MOVL $1130, CX
2276+ JMP callbackasm1(SB)
2277+ MOVL $1131, CX
2278+ JMP callbackasm1(SB)
2279+ MOVL $1132, CX
2280+ JMP callbackasm1(SB)
2281+ MOVL $1133, CX
2282+ JMP callbackasm1(SB)
2283+ MOVL $1134, CX
2284+ JMP callbackasm1(SB)
2285+ MOVL $1135, CX
2286+ JMP callbackasm1(SB)
2287+ MOVL $1136, CX
2288+ JMP callbackasm1(SB)
2289+ MOVL $1137, CX
2290+ JMP callbackasm1(SB)
2291+ MOVL $1138, CX
2292+ JMP callbackasm1(SB)
2293+ MOVL $1139, CX
2294+ JMP callbackasm1(SB)
2295+ MOVL $1140, CX
2296+ JMP callbackasm1(SB)
2297+ MOVL $1141, CX
2298+ JMP callbackasm1(SB)
2299+ MOVL $1142, CX
2300+ JMP callbackasm1(SB)
2301+ MOVL $1143, CX
2302+ JMP callbackasm1(SB)
2303+ MOVL $1144, CX
2304+ JMP callbackasm1(SB)
2305+ MOVL $1145, CX
2306+ JMP callbackasm1(SB)
2307+ MOVL $1146, CX
2308+ JMP callbackasm1(SB)
2309+ MOVL $1147, CX
2310+ JMP callbackasm1(SB)
2311+ MOVL $1148, CX
2312+ JMP callbackasm1(SB)
2313+ MOVL $1149, CX
2314+ JMP callbackasm1(SB)
2315+ MOVL $1150, CX
2316+ JMP callbackasm1(SB)
2317+ MOVL $1151, CX
2318+ JMP callbackasm1(SB)
2319+ MOVL $1152, CX
2320+ JMP callbackasm1(SB)
2321+ MOVL $1153, CX
2322+ JMP callbackasm1(SB)
2323+ MOVL $1154, CX
2324+ JMP callbackasm1(SB)
2325+ MOVL $1155, CX
2326+ JMP callbackasm1(SB)
2327+ MOVL $1156, CX
2328+ JMP callbackasm1(SB)
2329+ MOVL $1157, CX
2330+ JMP callbackasm1(SB)
2331+ MOVL $1158, CX
2332+ JMP callbackasm1(SB)
2333+ MOVL $1159, CX
2334+ JMP callbackasm1(SB)
2335+ MOVL $1160, CX
2336+ JMP callbackasm1(SB)
2337+ MOVL $1161, CX
2338+ JMP callbackasm1(SB)
2339+ MOVL $1162, CX
2340+ JMP callbackasm1(SB)
2341+ MOVL $1163, CX
2342+ JMP callbackasm1(SB)
2343+ MOVL $1164, CX
2344+ JMP callbackasm1(SB)
2345+ MOVL $1165, CX
2346+ JMP callbackasm1(SB)
2347+ MOVL $1166, CX
2348+ JMP callbackasm1(SB)
2349+ MOVL $1167, CX
2350+ JMP callbackasm1(SB)
2351+ MOVL $1168, CX
2352+ JMP callbackasm1(SB)
2353+ MOVL $1169, CX
2354+ JMP callbackasm1(SB)
2355+ MOVL $1170, CX
2356+ JMP callbackasm1(SB)
2357+ MOVL $1171, CX
2358+ JMP callbackasm1(SB)
2359+ MOVL $1172, CX
2360+ JMP callbackasm1(SB)
2361+ MOVL $1173, CX
2362+ JMP callbackasm1(SB)
2363+ MOVL $1174, CX
2364+ JMP callbackasm1(SB)
2365+ MOVL $1175, CX
2366+ JMP callbackasm1(SB)
2367+ MOVL $1176, CX
2368+ JMP callbackasm1(SB)
2369+ MOVL $1177, CX
2370+ JMP callbackasm1(SB)
2371+ MOVL $1178, CX
2372+ JMP callbackasm1(SB)
2373+ MOVL $1179, CX
2374+ JMP callbackasm1(SB)
2375+ MOVL $1180, CX
2376+ JMP callbackasm1(SB)
2377+ MOVL $1181, CX
2378+ JMP callbackasm1(SB)
2379+ MOVL $1182, CX
2380+ JMP callbackasm1(SB)
2381+ MOVL $1183, CX
2382+ JMP callbackasm1(SB)
2383+ MOVL $1184, CX
2384+ JMP callbackasm1(SB)
2385+ MOVL $1185, CX
2386+ JMP callbackasm1(SB)
2387+ MOVL $1186, CX
2388+ JMP callbackasm1(SB)
2389+ MOVL $1187, CX
2390+ JMP callbackasm1(SB)
2391+ MOVL $1188, CX
2392+ JMP callbackasm1(SB)
2393+ MOVL $1189, CX
2394+ JMP callbackasm1(SB)
2395+ MOVL $1190, CX
2396+ JMP callbackasm1(SB)
2397+ MOVL $1191, CX
2398+ JMP callbackasm1(SB)
2399+ MOVL $1192, CX
2400+ JMP callbackasm1(SB)
2401+ MOVL $1193, CX
2402+ JMP callbackasm1(SB)
2403+ MOVL $1194, CX
2404+ JMP callbackasm1(SB)
2405+ MOVL $1195, CX
2406+ JMP callbackasm1(SB)
2407+ MOVL $1196, CX
2408+ JMP callbackasm1(SB)
2409+ MOVL $1197, CX
2410+ JMP callbackasm1(SB)
2411+ MOVL $1198, CX
2412+ JMP callbackasm1(SB)
2413+ MOVL $1199, CX
2414+ JMP callbackasm1(SB)
2415+ MOVL $1200, CX
2416+ JMP callbackasm1(SB)
2417+ MOVL $1201, CX
2418+ JMP callbackasm1(SB)
2419+ MOVL $1202, CX
2420+ JMP callbackasm1(SB)
2421+ MOVL $1203, CX
2422+ JMP callbackasm1(SB)
2423+ MOVL $1204, CX
2424+ JMP callbackasm1(SB)
2425+ MOVL $1205, CX
2426+ JMP callbackasm1(SB)
2427+ MOVL $1206, CX
2428+ JMP callbackasm1(SB)
2429+ MOVL $1207, CX
2430+ JMP callbackasm1(SB)
2431+ MOVL $1208, CX
2432+ JMP callbackasm1(SB)
2433+ MOVL $1209, CX
2434+ JMP callbackasm1(SB)
2435+ MOVL $1210, CX
2436+ JMP callbackasm1(SB)
2437+ MOVL $1211, CX
2438+ JMP callbackasm1(SB)
2439+ MOVL $1212, CX
2440+ JMP callbackasm1(SB)
2441+ MOVL $1213, CX
2442+ JMP callbackasm1(SB)
2443+ MOVL $1214, CX
2444+ JMP callbackasm1(SB)
2445+ MOVL $1215, CX
2446+ JMP callbackasm1(SB)
2447+ MOVL $1216, CX
2448+ JMP callbackasm1(SB)
2449+ MOVL $1217, CX
2450+ JMP callbackasm1(SB)
2451+ MOVL $1218, CX
2452+ JMP callbackasm1(SB)
2453+ MOVL $1219, CX
2454+ JMP callbackasm1(SB)
2455+ MOVL $1220, CX
2456+ JMP callbackasm1(SB)
2457+ MOVL $1221, CX
2458+ JMP callbackasm1(SB)
2459+ MOVL $1222, CX
2460+ JMP callbackasm1(SB)
2461+ MOVL $1223, CX
2462+ JMP callbackasm1(SB)
2463+ MOVL $1224, CX
2464+ JMP callbackasm1(SB)
2465+ MOVL $1225, CX
2466+ JMP callbackasm1(SB)
2467+ MOVL $1226, CX
2468+ JMP callbackasm1(SB)
2469+ MOVL $1227, CX
2470+ JMP callbackasm1(SB)
2471+ MOVL $1228, CX
2472+ JMP callbackasm1(SB)
2473+ MOVL $1229, CX
2474+ JMP callbackasm1(SB)
2475+ MOVL $1230, CX
2476+ JMP callbackasm1(SB)
2477+ MOVL $1231, CX
2478+ JMP callbackasm1(SB)
2479+ MOVL $1232, CX
2480+ JMP callbackasm1(SB)
2481+ MOVL $1233, CX
2482+ JMP callbackasm1(SB)
2483+ MOVL $1234, CX
2484+ JMP callbackasm1(SB)
2485+ MOVL $1235, CX
2486+ JMP callbackasm1(SB)
2487+ MOVL $1236, CX
2488+ JMP callbackasm1(SB)
2489+ MOVL $1237, CX
2490+ JMP callbackasm1(SB)
2491+ MOVL $1238, CX
2492+ JMP callbackasm1(SB)
2493+ MOVL $1239, CX
2494+ JMP callbackasm1(SB)
2495+ MOVL $1240, CX
2496+ JMP callbackasm1(SB)
2497+ MOVL $1241, CX
2498+ JMP callbackasm1(SB)
2499+ MOVL $1242, CX
2500+ JMP callbackasm1(SB)
2501+ MOVL $1243, CX
2502+ JMP callbackasm1(SB)
2503+ MOVL $1244, CX
2504+ JMP callbackasm1(SB)
2505+ MOVL $1245, CX
2506+ JMP callbackasm1(SB)
2507+ MOVL $1246, CX
2508+ JMP callbackasm1(SB)
2509+ MOVL $1247, CX
2510+ JMP callbackasm1(SB)
2511+ MOVL $1248, CX
2512+ JMP callbackasm1(SB)
2513+ MOVL $1249, CX
2514+ JMP callbackasm1(SB)
2515+ MOVL $1250, CX
2516+ JMP callbackasm1(SB)
2517+ MOVL $1251, CX
2518+ JMP callbackasm1(SB)
2519+ MOVL $1252, CX
2520+ JMP callbackasm1(SB)
2521+ MOVL $1253, CX
2522+ JMP callbackasm1(SB)
2523+ MOVL $1254, CX
2524+ JMP callbackasm1(SB)
2525+ MOVL $1255, CX
2526+ JMP callbackasm1(SB)
2527+ MOVL $1256, CX
2528+ JMP callbackasm1(SB)
2529+ MOVL $1257, CX
2530+ JMP callbackasm1(SB)
2531+ MOVL $1258, CX
2532+ JMP callbackasm1(SB)
2533+ MOVL $1259, CX
2534+ JMP callbackasm1(SB)
2535+ MOVL $1260, CX
2536+ JMP callbackasm1(SB)
2537+ MOVL $1261, CX
2538+ JMP callbackasm1(SB)
2539+ MOVL $1262, CX
2540+ JMP callbackasm1(SB)
2541+ MOVL $1263, CX
2542+ JMP callbackasm1(SB)
2543+ MOVL $1264, CX
2544+ JMP callbackasm1(SB)
2545+ MOVL $1265, CX
2546+ JMP callbackasm1(SB)
2547+ MOVL $1266, CX
2548+ JMP callbackasm1(SB)
2549+ MOVL $1267, CX
2550+ JMP callbackasm1(SB)
2551+ MOVL $1268, CX
2552+ JMP callbackasm1(SB)
2553+ MOVL $1269, CX
2554+ JMP callbackasm1(SB)
2555+ MOVL $1270, CX
2556+ JMP callbackasm1(SB)
2557+ MOVL $1271, CX
2558+ JMP callbackasm1(SB)
2559+ MOVL $1272, CX
2560+ JMP callbackasm1(SB)
2561+ MOVL $1273, CX
2562+ JMP callbackasm1(SB)
2563+ MOVL $1274, CX
2564+ JMP callbackasm1(SB)
2565+ MOVL $1275, CX
2566+ JMP callbackasm1(SB)
2567+ MOVL $1276, CX
2568+ JMP callbackasm1(SB)
2569+ MOVL $1277, CX
2570+ JMP callbackasm1(SB)
2571+ MOVL $1278, CX
2572+ JMP callbackasm1(SB)
2573+ MOVL $1279, CX
2574+ JMP callbackasm1(SB)
2575+ MOVL $1280, CX
2576+ JMP callbackasm1(SB)
2577+ MOVL $1281, CX
2578+ JMP callbackasm1(SB)
2579+ MOVL $1282, CX
2580+ JMP callbackasm1(SB)
2581+ MOVL $1283, CX
2582+ JMP callbackasm1(SB)
2583+ MOVL $1284, CX
2584+ JMP callbackasm1(SB)
2585+ MOVL $1285, CX
2586+ JMP callbackasm1(SB)
2587+ MOVL $1286, CX
2588+ JMP callbackasm1(SB)
2589+ MOVL $1287, CX
2590+ JMP callbackasm1(SB)
2591+ MOVL $1288, CX
2592+ JMP callbackasm1(SB)
2593+ MOVL $1289, CX
2594+ JMP callbackasm1(SB)
2595+ MOVL $1290, CX
2596+ JMP callbackasm1(SB)
2597+ MOVL $1291, CX
2598+ JMP callbackasm1(SB)
2599+ MOVL $1292, CX
2600+ JMP callbackasm1(SB)
2601+ MOVL $1293, CX
2602+ JMP callbackasm1(SB)
2603+ MOVL $1294, CX
2604+ JMP callbackasm1(SB)
2605+ MOVL $1295, CX
2606+ JMP callbackasm1(SB)
2607+ MOVL $1296, CX
2608+ JMP callbackasm1(SB)
2609+ MOVL $1297, CX
2610+ JMP callbackasm1(SB)
2611+ MOVL $1298, CX
2612+ JMP callbackasm1(SB)
2613+ MOVL $1299, CX
2614+ JMP callbackasm1(SB)
2615+ MOVL $1300, CX
2616+ JMP callbackasm1(SB)
2617+ MOVL $1301, CX
2618+ JMP callbackasm1(SB)
2619+ MOVL $1302, CX
2620+ JMP callbackasm1(SB)
2621+ MOVL $1303, CX
2622+ JMP callbackasm1(SB)
2623+ MOVL $1304, CX
2624+ JMP callbackasm1(SB)
2625+ MOVL $1305, CX
2626+ JMP callbackasm1(SB)
2627+ MOVL $1306, CX
2628+ JMP callbackasm1(SB)
2629+ MOVL $1307, CX
2630+ JMP callbackasm1(SB)
2631+ MOVL $1308, CX
2632+ JMP callbackasm1(SB)
2633+ MOVL $1309, CX
2634+ JMP callbackasm1(SB)
2635+ MOVL $1310, CX
2636+ JMP callbackasm1(SB)
2637+ MOVL $1311, CX
2638+ JMP callbackasm1(SB)
2639+ MOVL $1312, CX
2640+ JMP callbackasm1(SB)
2641+ MOVL $1313, CX
2642+ JMP callbackasm1(SB)
2643+ MOVL $1314, CX
2644+ JMP callbackasm1(SB)
2645+ MOVL $1315, CX
2646+ JMP callbackasm1(SB)
2647+ MOVL $1316, CX
2648+ JMP callbackasm1(SB)
2649+ MOVL $1317, CX
2650+ JMP callbackasm1(SB)
2651+ MOVL $1318, CX
2652+ JMP callbackasm1(SB)
2653+ MOVL $1319, CX
2654+ JMP callbackasm1(SB)
2655+ MOVL $1320, CX
2656+ JMP callbackasm1(SB)
2657+ MOVL $1321, CX
2658+ JMP callbackasm1(SB)
2659+ MOVL $1322, CX
2660+ JMP callbackasm1(SB)
2661+ MOVL $1323, CX
2662+ JMP callbackasm1(SB)
2663+ MOVL $1324, CX
2664+ JMP callbackasm1(SB)
2665+ MOVL $1325, CX
2666+ JMP callbackasm1(SB)
2667+ MOVL $1326, CX
2668+ JMP callbackasm1(SB)
2669+ MOVL $1327, CX
2670+ JMP callbackasm1(SB)
2671+ MOVL $1328, CX
2672+ JMP callbackasm1(SB)
2673+ MOVL $1329, CX
2674+ JMP callbackasm1(SB)
2675+ MOVL $1330, CX
2676+ JMP callbackasm1(SB)
2677+ MOVL $1331, CX
2678+ JMP callbackasm1(SB)
2679+ MOVL $1332, CX
2680+ JMP callbackasm1(SB)
2681+ MOVL $1333, CX
2682+ JMP callbackasm1(SB)
2683+ MOVL $1334, CX
2684+ JMP callbackasm1(SB)
2685+ MOVL $1335, CX
2686+ JMP callbackasm1(SB)
2687+ MOVL $1336, CX
2688+ JMP callbackasm1(SB)
2689+ MOVL $1337, CX
2690+ JMP callbackasm1(SB)
2691+ MOVL $1338, CX
2692+ JMP callbackasm1(SB)
2693+ MOVL $1339, CX
2694+ JMP callbackasm1(SB)
2695+ MOVL $1340, CX
2696+ JMP callbackasm1(SB)
2697+ MOVL $1341, CX
2698+ JMP callbackasm1(SB)
2699+ MOVL $1342, CX
2700+ JMP callbackasm1(SB)
2701+ MOVL $1343, CX
2702+ JMP callbackasm1(SB)
2703+ MOVL $1344, CX
2704+ JMP callbackasm1(SB)
2705+ MOVL $1345, CX
2706+ JMP callbackasm1(SB)
2707+ MOVL $1346, CX
2708+ JMP callbackasm1(SB)
2709+ MOVL $1347, CX
2710+ JMP callbackasm1(SB)
2711+ MOVL $1348, CX
2712+ JMP callbackasm1(SB)
2713+ MOVL $1349, CX
2714+ JMP callbackasm1(SB)
2715+ MOVL $1350, CX
2716+ JMP callbackasm1(SB)
2717+ MOVL $1351, CX
2718+ JMP callbackasm1(SB)
2719+ MOVL $1352, CX
2720+ JMP callbackasm1(SB)
2721+ MOVL $1353, CX
2722+ JMP callbackasm1(SB)
2723+ MOVL $1354, CX
2724+ JMP callbackasm1(SB)
2725+ MOVL $1355, CX
2726+ JMP callbackasm1(SB)
2727+ MOVL $1356, CX
2728+ JMP callbackasm1(SB)
2729+ MOVL $1357, CX
2730+ JMP callbackasm1(SB)
2731+ MOVL $1358, CX
2732+ JMP callbackasm1(SB)
2733+ MOVL $1359, CX
2734+ JMP callbackasm1(SB)
2735+ MOVL $1360, CX
2736+ JMP callbackasm1(SB)
2737+ MOVL $1361, CX
2738+ JMP callbackasm1(SB)
2739+ MOVL $1362, CX
2740+ JMP callbackasm1(SB)
2741+ MOVL $1363, CX
2742+ JMP callbackasm1(SB)
2743+ MOVL $1364, CX
2744+ JMP callbackasm1(SB)
2745+ MOVL $1365, CX
2746+ JMP callbackasm1(SB)
2747+ MOVL $1366, CX
2748+ JMP callbackasm1(SB)
2749+ MOVL $1367, CX
2750+ JMP callbackasm1(SB)
2751+ MOVL $1368, CX
2752+ JMP callbackasm1(SB)
2753+ MOVL $1369, CX
2754+ JMP callbackasm1(SB)
2755+ MOVL $1370, CX
2756+ JMP callbackasm1(SB)
2757+ MOVL $1371, CX
2758+ JMP callbackasm1(SB)
2759+ MOVL $1372, CX
2760+ JMP callbackasm1(SB)
2761+ MOVL $1373, CX
2762+ JMP callbackasm1(SB)
2763+ MOVL $1374, CX
2764+ JMP callbackasm1(SB)
2765+ MOVL $1375, CX
2766+ JMP callbackasm1(SB)
2767+ MOVL $1376, CX
2768+ JMP callbackasm1(SB)
2769+ MOVL $1377, CX
2770+ JMP callbackasm1(SB)
2771+ MOVL $1378, CX
2772+ JMP callbackasm1(SB)
2773+ MOVL $1379, CX
2774+ JMP callbackasm1(SB)
2775+ MOVL $1380, CX
2776+ JMP callbackasm1(SB)
2777+ MOVL $1381, CX
2778+ JMP callbackasm1(SB)
2779+ MOVL $1382, CX
2780+ JMP callbackasm1(SB)
2781+ MOVL $1383, CX
2782+ JMP callbackasm1(SB)
2783+ MOVL $1384, CX
2784+ JMP callbackasm1(SB)
2785+ MOVL $1385, CX
2786+ JMP callbackasm1(SB)
2787+ MOVL $1386, CX
2788+ JMP callbackasm1(SB)
2789+ MOVL $1387, CX
2790+ JMP callbackasm1(SB)
2791+ MOVL $1388, CX
2792+ JMP callbackasm1(SB)
2793+ MOVL $1389, CX
2794+ JMP callbackasm1(SB)
2795+ MOVL $1390, CX
2796+ JMP callbackasm1(SB)
2797+ MOVL $1391, CX
2798+ JMP callbackasm1(SB)
2799+ MOVL $1392, CX
2800+ JMP callbackasm1(SB)
2801+ MOVL $1393, CX
2802+ JMP callbackasm1(SB)
2803+ MOVL $1394, CX
2804+ JMP callbackasm1(SB)
2805+ MOVL $1395, CX
2806+ JMP callbackasm1(SB)
2807+ MOVL $1396, CX
2808+ JMP callbackasm1(SB)
2809+ MOVL $1397, CX
2810+ JMP callbackasm1(SB)
2811+ MOVL $1398, CX
2812+ JMP callbackasm1(SB)
2813+ MOVL $1399, CX
2814+ JMP callbackasm1(SB)
2815+ MOVL $1400, CX
2816+ JMP callbackasm1(SB)
2817+ MOVL $1401, CX
2818+ JMP callbackasm1(SB)
2819+ MOVL $1402, CX
2820+ JMP callbackasm1(SB)
2821+ MOVL $1403, CX
2822+ JMP callbackasm1(SB)
2823+ MOVL $1404, CX
2824+ JMP callbackasm1(SB)
2825+ MOVL $1405, CX
2826+ JMP callbackasm1(SB)
2827+ MOVL $1406, CX
2828+ JMP callbackasm1(SB)
2829+ MOVL $1407, CX
2830+ JMP callbackasm1(SB)
2831+ MOVL $1408, CX
2832+ JMP callbackasm1(SB)
2833+ MOVL $1409, CX
2834+ JMP callbackasm1(SB)
2835+ MOVL $1410, CX
2836+ JMP callbackasm1(SB)
2837+ MOVL $1411, CX
2838+ JMP callbackasm1(SB)
2839+ MOVL $1412, CX
2840+ JMP callbackasm1(SB)
2841+ MOVL $1413, CX
2842+ JMP callbackasm1(SB)
2843+ MOVL $1414, CX
2844+ JMP callbackasm1(SB)
2845+ MOVL $1415, CX
2846+ JMP callbackasm1(SB)
2847+ MOVL $1416, CX
2848+ JMP callbackasm1(SB)
2849+ MOVL $1417, CX
2850+ JMP callbackasm1(SB)
2851+ MOVL $1418, CX
2852+ JMP callbackasm1(SB)
2853+ MOVL $1419, CX
2854+ JMP callbackasm1(SB)
2855+ MOVL $1420, CX
2856+ JMP callbackasm1(SB)
2857+ MOVL $1421, CX
2858+ JMP callbackasm1(SB)
2859+ MOVL $1422, CX
2860+ JMP callbackasm1(SB)
2861+ MOVL $1423, CX
2862+ JMP callbackasm1(SB)
2863+ MOVL $1424, CX
2864+ JMP callbackasm1(SB)
2865+ MOVL $1425, CX
2866+ JMP callbackasm1(SB)
2867+ MOVL $1426, CX
2868+ JMP callbackasm1(SB)
2869+ MOVL $1427, CX
2870+ JMP callbackasm1(SB)
2871+ MOVL $1428, CX
2872+ JMP callbackasm1(SB)
2873+ MOVL $1429, CX
2874+ JMP callbackasm1(SB)
2875+ MOVL $1430, CX
2876+ JMP callbackasm1(SB)
2877+ MOVL $1431, CX
2878+ JMP callbackasm1(SB)
2879+ MOVL $1432, CX
2880+ JMP callbackasm1(SB)
2881+ MOVL $1433, CX
2882+ JMP callbackasm1(SB)
2883+ MOVL $1434, CX
2884+ JMP callbackasm1(SB)
2885+ MOVL $1435, CX
2886+ JMP callbackasm1(SB)
2887+ MOVL $1436, CX
2888+ JMP callbackasm1(SB)
2889+ MOVL $1437, CX
2890+ JMP callbackasm1(SB)
2891+ MOVL $1438, CX
2892+ JMP callbackasm1(SB)
2893+ MOVL $1439, CX
2894+ JMP callbackasm1(SB)
2895+ MOVL $1440, CX
2896+ JMP callbackasm1(SB)
2897+ MOVL $1441, CX
2898+ JMP callbackasm1(SB)
2899+ MOVL $1442, CX
2900+ JMP callbackasm1(SB)
2901+ MOVL $1443, CX
2902+ JMP callbackasm1(SB)
2903+ MOVL $1444, CX
2904+ JMP callbackasm1(SB)
2905+ MOVL $1445, CX
2906+ JMP callbackasm1(SB)
2907+ MOVL $1446, CX
2908+ JMP callbackasm1(SB)
2909+ MOVL $1447, CX
2910+ JMP callbackasm1(SB)
2911+ MOVL $1448, CX
2912+ JMP callbackasm1(SB)
2913+ MOVL $1449, CX
2914+ JMP callbackasm1(SB)
2915+ MOVL $1450, CX
2916+ JMP callbackasm1(SB)
2917+ MOVL $1451, CX
2918+ JMP callbackasm1(SB)
2919+ MOVL $1452, CX
2920+ JMP callbackasm1(SB)
2921+ MOVL $1453, CX
2922+ JMP callbackasm1(SB)
2923+ MOVL $1454, CX
2924+ JMP callbackasm1(SB)
2925+ MOVL $1455, CX
2926+ JMP callbackasm1(SB)
2927+ MOVL $1456, CX
2928+ JMP callbackasm1(SB)
2929+ MOVL $1457, CX
2930+ JMP callbackasm1(SB)
2931+ MOVL $1458, CX
2932+ JMP callbackasm1(SB)
2933+ MOVL $1459, CX
2934+ JMP callbackasm1(SB)
2935+ MOVL $1460, CX
2936+ JMP callbackasm1(SB)
2937+ MOVL $1461, CX
2938+ JMP callbackasm1(SB)
2939+ MOVL $1462, CX
2940+ JMP callbackasm1(SB)
2941+ MOVL $1463, CX
2942+ JMP callbackasm1(SB)
2943+ MOVL $1464, CX
2944+ JMP callbackasm1(SB)
2945+ MOVL $1465, CX
2946+ JMP callbackasm1(SB)
2947+ MOVL $1466, CX
2948+ JMP callbackasm1(SB)
2949+ MOVL $1467, CX
2950+ JMP callbackasm1(SB)
2951+ MOVL $1468, CX
2952+ JMP callbackasm1(SB)
2953+ MOVL $1469, CX
2954+ JMP callbackasm1(SB)
2955+ MOVL $1470, CX
2956+ JMP callbackasm1(SB)
2957+ MOVL $1471, CX
2958+ JMP callbackasm1(SB)
2959+ MOVL $1472, CX
2960+ JMP callbackasm1(SB)
2961+ MOVL $1473, CX
2962+ JMP callbackasm1(SB)
2963+ MOVL $1474, CX
2964+ JMP callbackasm1(SB)
2965+ MOVL $1475, CX
2966+ JMP callbackasm1(SB)
2967+ MOVL $1476, CX
2968+ JMP callbackasm1(SB)
2969+ MOVL $1477, CX
2970+ JMP callbackasm1(SB)
2971+ MOVL $1478, CX
2972+ JMP callbackasm1(SB)
2973+ MOVL $1479, CX
2974+ JMP callbackasm1(SB)
2975+ MOVL $1480, CX
2976+ JMP callbackasm1(SB)
2977+ MOVL $1481, CX
2978+ JMP callbackasm1(SB)
2979+ MOVL $1482, CX
2980+ JMP callbackasm1(SB)
2981+ MOVL $1483, CX
2982+ JMP callbackasm1(SB)
2983+ MOVL $1484, CX
2984+ JMP callbackasm1(SB)
2985+ MOVL $1485, CX
2986+ JMP callbackasm1(SB)
2987+ MOVL $1486, CX
2988+ JMP callbackasm1(SB)
2989+ MOVL $1487, CX
2990+ JMP callbackasm1(SB)
2991+ MOVL $1488, CX
2992+ JMP callbackasm1(SB)
2993+ MOVL $1489, CX
2994+ JMP callbackasm1(SB)
2995+ MOVL $1490, CX
2996+ JMP callbackasm1(SB)
2997+ MOVL $1491, CX
2998+ JMP callbackasm1(SB)
2999+ MOVL $1492, CX
3000+ JMP callbackasm1(SB)
3001+ MOVL $1493, CX
3002+ JMP callbackasm1(SB)
3003+ MOVL $1494, CX
3004+ JMP callbackasm1(SB)
3005+ MOVL $1495, CX
3006+ JMP callbackasm1(SB)
3007+ MOVL $1496, CX
3008+ JMP callbackasm1(SB)
3009+ MOVL $1497, CX
3010+ JMP callbackasm1(SB)
3011+ MOVL $1498, CX
3012+ JMP callbackasm1(SB)
3013+ MOVL $1499, CX
3014+ JMP callbackasm1(SB)
3015+ MOVL $1500, CX
3016+ JMP callbackasm1(SB)
3017+ MOVL $1501, CX
3018+ JMP callbackasm1(SB)
3019+ MOVL $1502, CX
3020+ JMP callbackasm1(SB)
3021+ MOVL $1503, CX
3022+ JMP callbackasm1(SB)
3023+ MOVL $1504, CX
3024+ JMP callbackasm1(SB)
3025+ MOVL $1505, CX
3026+ JMP callbackasm1(SB)
3027+ MOVL $1506, CX
3028+ JMP callbackasm1(SB)
3029+ MOVL $1507, CX
3030+ JMP callbackasm1(SB)
3031+ MOVL $1508, CX
3032+ JMP callbackasm1(SB)
3033+ MOVL $1509, CX
3034+ JMP callbackasm1(SB)
3035+ MOVL $1510, CX
3036+ JMP callbackasm1(SB)
3037+ MOVL $1511, CX
3038+ JMP callbackasm1(SB)
3039+ MOVL $1512, CX
3040+ JMP callbackasm1(SB)
3041+ MOVL $1513, CX
3042+ JMP callbackasm1(SB)
3043+ MOVL $1514, CX
3044+ JMP callbackasm1(SB)
3045+ MOVL $1515, CX
3046+ JMP callbackasm1(SB)
3047+ MOVL $1516, CX
3048+ JMP callbackasm1(SB)
3049+ MOVL $1517, CX
3050+ JMP callbackasm1(SB)
3051+ MOVL $1518, CX
3052+ JMP callbackasm1(SB)
3053+ MOVL $1519, CX
3054+ JMP callbackasm1(SB)
3055+ MOVL $1520, CX
3056+ JMP callbackasm1(SB)
3057+ MOVL $1521, CX
3058+ JMP callbackasm1(SB)
3059+ MOVL $1522, CX
3060+ JMP callbackasm1(SB)
3061+ MOVL $1523, CX
3062+ JMP callbackasm1(SB)
3063+ MOVL $1524, CX
3064+ JMP callbackasm1(SB)
3065+ MOVL $1525, CX
3066+ JMP callbackasm1(SB)
3067+ MOVL $1526, CX
3068+ JMP callbackasm1(SB)
3069+ MOVL $1527, CX
3070+ JMP callbackasm1(SB)
3071+ MOVL $1528, CX
3072+ JMP callbackasm1(SB)
3073+ MOVL $1529, CX
3074+ JMP callbackasm1(SB)
3075+ MOVL $1530, CX
3076+ JMP callbackasm1(SB)
3077+ MOVL $1531, CX
3078+ JMP callbackasm1(SB)
3079+ MOVL $1532, CX
3080+ JMP callbackasm1(SB)
3081+ MOVL $1533, CX
3082+ JMP callbackasm1(SB)
3083+ MOVL $1534, CX
3084+ JMP callbackasm1(SB)
3085+ MOVL $1535, CX
3086+ JMP callbackasm1(SB)
3087+ MOVL $1536, CX
3088+ JMP callbackasm1(SB)
3089+ MOVL $1537, CX
3090+ JMP callbackasm1(SB)
3091+ MOVL $1538, CX
3092+ JMP callbackasm1(SB)
3093+ MOVL $1539, CX
3094+ JMP callbackasm1(SB)
3095+ MOVL $1540, CX
3096+ JMP callbackasm1(SB)
3097+ MOVL $1541, CX
3098+ JMP callbackasm1(SB)
3099+ MOVL $1542, CX
3100+ JMP callbackasm1(SB)
3101+ MOVL $1543, CX
3102+ JMP callbackasm1(SB)
3103+ MOVL $1544, CX
3104+ JMP callbackasm1(SB)
3105+ MOVL $1545, CX
3106+ JMP callbackasm1(SB)
3107+ MOVL $1546, CX
3108+ JMP callbackasm1(SB)
3109+ MOVL $1547, CX
3110+ JMP callbackasm1(SB)
3111+ MOVL $1548, CX
3112+ JMP callbackasm1(SB)
3113+ MOVL $1549, CX
3114+ JMP callbackasm1(SB)
3115+ MOVL $1550, CX
3116+ JMP callbackasm1(SB)
3117+ MOVL $1551, CX
3118+ JMP callbackasm1(SB)
3119+ MOVL $1552, CX
3120+ JMP callbackasm1(SB)
3121+ MOVL $1553, CX
3122+ JMP callbackasm1(SB)
3123+ MOVL $1554, CX
3124+ JMP callbackasm1(SB)
3125+ MOVL $1555, CX
3126+ JMP callbackasm1(SB)
3127+ MOVL $1556, CX
3128+ JMP callbackasm1(SB)
3129+ MOVL $1557, CX
3130+ JMP callbackasm1(SB)
3131+ MOVL $1558, CX
3132+ JMP callbackasm1(SB)
3133+ MOVL $1559, CX
3134+ JMP callbackasm1(SB)
3135+ MOVL $1560, CX
3136+ JMP callbackasm1(SB)
3137+ MOVL $1561, CX
3138+ JMP callbackasm1(SB)
3139+ MOVL $1562, CX
3140+ JMP callbackasm1(SB)
3141+ MOVL $1563, CX
3142+ JMP callbackasm1(SB)
3143+ MOVL $1564, CX
3144+ JMP callbackasm1(SB)
3145+ MOVL $1565, CX
3146+ JMP callbackasm1(SB)
3147+ MOVL $1566, CX
3148+ JMP callbackasm1(SB)
3149+ MOVL $1567, CX
3150+ JMP callbackasm1(SB)
3151+ MOVL $1568, CX
3152+ JMP callbackasm1(SB)
3153+ MOVL $1569, CX
3154+ JMP callbackasm1(SB)
3155+ MOVL $1570, CX
3156+ JMP callbackasm1(SB)
3157+ MOVL $1571, CX
3158+ JMP callbackasm1(SB)
3159+ MOVL $1572, CX
3160+ JMP callbackasm1(SB)
3161+ MOVL $1573, CX
3162+ JMP callbackasm1(SB)
3163+ MOVL $1574, CX
3164+ JMP callbackasm1(SB)
3165+ MOVL $1575, CX
3166+ JMP callbackasm1(SB)
3167+ MOVL $1576, CX
3168+ JMP callbackasm1(SB)
3169+ MOVL $1577, CX
3170+ JMP callbackasm1(SB)
3171+ MOVL $1578, CX
3172+ JMP callbackasm1(SB)
3173+ MOVL $1579, CX
3174+ JMP callbackasm1(SB)
3175+ MOVL $1580, CX
3176+ JMP callbackasm1(SB)
3177+ MOVL $1581, CX
3178+ JMP callbackasm1(SB)
3179+ MOVL $1582, CX
3180+ JMP callbackasm1(SB)
3181+ MOVL $1583, CX
3182+ JMP callbackasm1(SB)
3183+ MOVL $1584, CX
3184+ JMP callbackasm1(SB)
3185+ MOVL $1585, CX
3186+ JMP callbackasm1(SB)
3187+ MOVL $1586, CX
3188+ JMP callbackasm1(SB)
3189+ MOVL $1587, CX
3190+ JMP callbackasm1(SB)
3191+ MOVL $1588, CX
3192+ JMP callbackasm1(SB)
3193+ MOVL $1589, CX
3194+ JMP callbackasm1(SB)
3195+ MOVL $1590, CX
3196+ JMP callbackasm1(SB)
3197+ MOVL $1591, CX
3198+ JMP callbackasm1(SB)
3199+ MOVL $1592, CX
3200+ JMP callbackasm1(SB)
3201+ MOVL $1593, CX
3202+ JMP callbackasm1(SB)
3203+ MOVL $1594, CX
3204+ JMP callbackasm1(SB)
3205+ MOVL $1595, CX
3206+ JMP callbackasm1(SB)
3207+ MOVL $1596, CX
3208+ JMP callbackasm1(SB)
3209+ MOVL $1597, CX
3210+ JMP callbackasm1(SB)
3211+ MOVL $1598, CX
3212+ JMP callbackasm1(SB)
3213+ MOVL $1599, CX
3214+ JMP callbackasm1(SB)
3215+ MOVL $1600, CX
3216+ JMP callbackasm1(SB)
3217+ MOVL $1601, CX
3218+ JMP callbackasm1(SB)
3219+ MOVL $1602, CX
3220+ JMP callbackasm1(SB)
3221+ MOVL $1603, CX
3222+ JMP callbackasm1(SB)
3223+ MOVL $1604, CX
3224+ JMP callbackasm1(SB)
3225+ MOVL $1605, CX
3226+ JMP callbackasm1(SB)
3227+ MOVL $1606, CX
3228+ JMP callbackasm1(SB)
3229+ MOVL $1607, CX
3230+ JMP callbackasm1(SB)
3231+ MOVL $1608, CX
3232+ JMP callbackasm1(SB)
3233+ MOVL $1609, CX
3234+ JMP callbackasm1(SB)
3235+ MOVL $1610, CX
3236+ JMP callbackasm1(SB)
3237+ MOVL $1611, CX
3238+ JMP callbackasm1(SB)
3239+ MOVL $1612, CX
3240+ JMP callbackasm1(SB)
3241+ MOVL $1613, CX
3242+ JMP callbackasm1(SB)
3243+ MOVL $1614, CX
3244+ JMP callbackasm1(SB)
3245+ MOVL $1615, CX
3246+ JMP callbackasm1(SB)
3247+ MOVL $1616, CX
3248+ JMP callbackasm1(SB)
3249+ MOVL $1617, CX
3250+ JMP callbackasm1(SB)
3251+ MOVL $1618, CX
3252+ JMP callbackasm1(SB)
3253+ MOVL $1619, CX
3254+ JMP callbackasm1(SB)
3255+ MOVL $1620, CX
3256+ JMP callbackasm1(SB)
3257+ MOVL $1621, CX
3258+ JMP callbackasm1(SB)
3259+ MOVL $1622, CX
3260+ JMP callbackasm1(SB)
3261+ MOVL $1623, CX
3262+ JMP callbackasm1(SB)
3263+ MOVL $1624, CX
3264+ JMP callbackasm1(SB)
3265+ MOVL $1625, CX
3266+ JMP callbackasm1(SB)
3267+ MOVL $1626, CX
3268+ JMP callbackasm1(SB)
3269+ MOVL $1627, CX
3270+ JMP callbackasm1(SB)
3271+ MOVL $1628, CX
3272+ JMP callbackasm1(SB)
3273+ MOVL $1629, CX
3274+ JMP callbackasm1(SB)
3275+ MOVL $1630, CX
3276+ JMP callbackasm1(SB)
3277+ MOVL $1631, CX
3278+ JMP callbackasm1(SB)
3279+ MOVL $1632, CX
3280+ JMP callbackasm1(SB)
3281+ MOVL $1633, CX
3282+ JMP callbackasm1(SB)
3283+ MOVL $1634, CX
3284+ JMP callbackasm1(SB)
3285+ MOVL $1635, CX
3286+ JMP callbackasm1(SB)
3287+ MOVL $1636, CX
3288+ JMP callbackasm1(SB)
3289+ MOVL $1637, CX
3290+ JMP callbackasm1(SB)
3291+ MOVL $1638, CX
3292+ JMP callbackasm1(SB)
3293+ MOVL $1639, CX
3294+ JMP callbackasm1(SB)
3295+ MOVL $1640, CX
3296+ JMP callbackasm1(SB)
3297+ MOVL $1641, CX
3298+ JMP callbackasm1(SB)
3299+ MOVL $1642, CX
3300+ JMP callbackasm1(SB)
3301+ MOVL $1643, CX
3302+ JMP callbackasm1(SB)
3303+ MOVL $1644, CX
3304+ JMP callbackasm1(SB)
3305+ MOVL $1645, CX
3306+ JMP callbackasm1(SB)
3307+ MOVL $1646, CX
3308+ JMP callbackasm1(SB)
3309+ MOVL $1647, CX
3310+ JMP callbackasm1(SB)
3311+ MOVL $1648, CX
3312+ JMP callbackasm1(SB)
3313+ MOVL $1649, CX
3314+ JMP callbackasm1(SB)
3315+ MOVL $1650, CX
3316+ JMP callbackasm1(SB)
3317+ MOVL $1651, CX
3318+ JMP callbackasm1(SB)
3319+ MOVL $1652, CX
3320+ JMP callbackasm1(SB)
3321+ MOVL $1653, CX
3322+ JMP callbackasm1(SB)
3323+ MOVL $1654, CX
3324+ JMP callbackasm1(SB)
3325+ MOVL $1655, CX
3326+ JMP callbackasm1(SB)
3327+ MOVL $1656, CX
3328+ JMP callbackasm1(SB)
3329+ MOVL $1657, CX
3330+ JMP callbackasm1(SB)
3331+ MOVL $1658, CX
3332+ JMP callbackasm1(SB)
3333+ MOVL $1659, CX
3334+ JMP callbackasm1(SB)
3335+ MOVL $1660, CX
3336+ JMP callbackasm1(SB)
3337+ MOVL $1661, CX
3338+ JMP callbackasm1(SB)
3339+ MOVL $1662, CX
3340+ JMP callbackasm1(SB)
3341+ MOVL $1663, CX
3342+ JMP callbackasm1(SB)
3343+ MOVL $1664, CX
3344+ JMP callbackasm1(SB)
3345+ MOVL $1665, CX
3346+ JMP callbackasm1(SB)
3347+ MOVL $1666, CX
3348+ JMP callbackasm1(SB)
3349+ MOVL $1667, CX
3350+ JMP callbackasm1(SB)
3351+ MOVL $1668, CX
3352+ JMP callbackasm1(SB)
3353+ MOVL $1669, CX
3354+ JMP callbackasm1(SB)
3355+ MOVL $1670, CX
3356+ JMP callbackasm1(SB)
3357+ MOVL $1671, CX
3358+ JMP callbackasm1(SB)
3359+ MOVL $1672, CX
3360+ JMP callbackasm1(SB)
3361+ MOVL $1673, CX
3362+ JMP callbackasm1(SB)
3363+ MOVL $1674, CX
3364+ JMP callbackasm1(SB)
3365+ MOVL $1675, CX
3366+ JMP callbackasm1(SB)
3367+ MOVL $1676, CX
3368+ JMP callbackasm1(SB)
3369+ MOVL $1677, CX
3370+ JMP callbackasm1(SB)
3371+ MOVL $1678, CX
3372+ JMP callbackasm1(SB)
3373+ MOVL $1679, CX
3374+ JMP callbackasm1(SB)
3375+ MOVL $1680, CX
3376+ JMP callbackasm1(SB)
3377+ MOVL $1681, CX
3378+ JMP callbackasm1(SB)
3379+ MOVL $1682, CX
3380+ JMP callbackasm1(SB)
3381+ MOVL $1683, CX
3382+ JMP callbackasm1(SB)
3383+ MOVL $1684, CX
3384+ JMP callbackasm1(SB)
3385+ MOVL $1685, CX
3386+ JMP callbackasm1(SB)
3387+ MOVL $1686, CX
3388+ JMP callbackasm1(SB)
3389+ MOVL $1687, CX
3390+ JMP callbackasm1(SB)
3391+ MOVL $1688, CX
3392+ JMP callbackasm1(SB)
3393+ MOVL $1689, CX
3394+ JMP callbackasm1(SB)
3395+ MOVL $1690, CX
3396+ JMP callbackasm1(SB)
3397+ MOVL $1691, CX
3398+ JMP callbackasm1(SB)
3399+ MOVL $1692, CX
3400+ JMP callbackasm1(SB)
3401+ MOVL $1693, CX
3402+ JMP callbackasm1(SB)
3403+ MOVL $1694, CX
3404+ JMP callbackasm1(SB)
3405+ MOVL $1695, CX
3406+ JMP callbackasm1(SB)
3407+ MOVL $1696, CX
3408+ JMP callbackasm1(SB)
3409+ MOVL $1697, CX
3410+ JMP callbackasm1(SB)
3411+ MOVL $1698, CX
3412+ JMP callbackasm1(SB)
3413+ MOVL $1699, CX
3414+ JMP callbackasm1(SB)
3415+ MOVL $1700, CX
3416+ JMP callbackasm1(SB)
3417+ MOVL $1701, CX
3418+ JMP callbackasm1(SB)
3419+ MOVL $1702, CX
3420+ JMP callbackasm1(SB)
3421+ MOVL $1703, CX
3422+ JMP callbackasm1(SB)
3423+ MOVL $1704, CX
3424+ JMP callbackasm1(SB)
3425+ MOVL $1705, CX
3426+ JMP callbackasm1(SB)
3427+ MOVL $1706, CX
3428+ JMP callbackasm1(SB)
3429+ MOVL $1707, CX
3430+ JMP callbackasm1(SB)
3431+ MOVL $1708, CX
3432+ JMP callbackasm1(SB)
3433+ MOVL $1709, CX
3434+ JMP callbackasm1(SB)
3435+ MOVL $1710, CX
3436+ JMP callbackasm1(SB)
3437+ MOVL $1711, CX
3438+ JMP callbackasm1(SB)
3439+ MOVL $1712, CX
3440+ JMP callbackasm1(SB)
3441+ MOVL $1713, CX
3442+ JMP callbackasm1(SB)
3443+ MOVL $1714, CX
3444+ JMP callbackasm1(SB)
3445+ MOVL $1715, CX
3446+ JMP callbackasm1(SB)
3447+ MOVL $1716, CX
3448+ JMP callbackasm1(SB)
3449+ MOVL $1717, CX
3450+ JMP callbackasm1(SB)
3451+ MOVL $1718, CX
3452+ JMP callbackasm1(SB)
3453+ MOVL $1719, CX
3454+ JMP callbackasm1(SB)
3455+ MOVL $1720, CX
3456+ JMP callbackasm1(SB)
3457+ MOVL $1721, CX
3458+ JMP callbackasm1(SB)
3459+ MOVL $1722, CX
3460+ JMP callbackasm1(SB)
3461+ MOVL $1723, CX
3462+ JMP callbackasm1(SB)
3463+ MOVL $1724, CX
3464+ JMP callbackasm1(SB)
3465+ MOVL $1725, CX
3466+ JMP callbackasm1(SB)
3467+ MOVL $1726, CX
3468+ JMP callbackasm1(SB)
3469+ MOVL $1727, CX
3470+ JMP callbackasm1(SB)
3471+ MOVL $1728, CX
3472+ JMP callbackasm1(SB)
3473+ MOVL $1729, CX
3474+ JMP callbackasm1(SB)
3475+ MOVL $1730, CX
3476+ JMP callbackasm1(SB)
3477+ MOVL $1731, CX
3478+ JMP callbackasm1(SB)
3479+ MOVL $1732, CX
3480+ JMP callbackasm1(SB)
3481+ MOVL $1733, CX
3482+ JMP callbackasm1(SB)
3483+ MOVL $1734, CX
3484+ JMP callbackasm1(SB)
3485+ MOVL $1735, CX
3486+ JMP callbackasm1(SB)
3487+ MOVL $1736, CX
3488+ JMP callbackasm1(SB)
3489+ MOVL $1737, CX
3490+ JMP callbackasm1(SB)
3491+ MOVL $1738, CX
3492+ JMP callbackasm1(SB)
3493+ MOVL $1739, CX
3494+ JMP callbackasm1(SB)
3495+ MOVL $1740, CX
3496+ JMP callbackasm1(SB)
3497+ MOVL $1741, CX
3498+ JMP callbackasm1(SB)
3499+ MOVL $1742, CX
3500+ JMP callbackasm1(SB)
3501+ MOVL $1743, CX
3502+ JMP callbackasm1(SB)
3503+ MOVL $1744, CX
3504+ JMP callbackasm1(SB)
3505+ MOVL $1745, CX
3506+ JMP callbackasm1(SB)
3507+ MOVL $1746, CX
3508+ JMP callbackasm1(SB)
3509+ MOVL $1747, CX
3510+ JMP callbackasm1(SB)
3511+ MOVL $1748, CX
3512+ JMP callbackasm1(SB)
3513+ MOVL $1749, CX
3514+ JMP callbackasm1(SB)
3515+ MOVL $1750, CX
3516+ JMP callbackasm1(SB)
3517+ MOVL $1751, CX
3518+ JMP callbackasm1(SB)
3519+ MOVL $1752, CX
3520+ JMP callbackasm1(SB)
3521+ MOVL $1753, CX
3522+ JMP callbackasm1(SB)
3523+ MOVL $1754, CX
3524+ JMP callbackasm1(SB)
3525+ MOVL $1755, CX
3526+ JMP callbackasm1(SB)
3527+ MOVL $1756, CX
3528+ JMP callbackasm1(SB)
3529+ MOVL $1757, CX
3530+ JMP callbackasm1(SB)
3531+ MOVL $1758, CX
3532+ JMP callbackasm1(SB)
3533+ MOVL $1759, CX
3534+ JMP callbackasm1(SB)
3535+ MOVL $1760, CX
3536+ JMP callbackasm1(SB)
3537+ MOVL $1761, CX
3538+ JMP callbackasm1(SB)
3539+ MOVL $1762, CX
3540+ JMP callbackasm1(SB)
3541+ MOVL $1763, CX
3542+ JMP callbackasm1(SB)
3543+ MOVL $1764, CX
3544+ JMP callbackasm1(SB)
3545+ MOVL $1765, CX
3546+ JMP callbackasm1(SB)
3547+ MOVL $1766, CX
3548+ JMP callbackasm1(SB)
3549+ MOVL $1767, CX
3550+ JMP callbackasm1(SB)
3551+ MOVL $1768, CX
3552+ JMP callbackasm1(SB)
3553+ MOVL $1769, CX
3554+ JMP callbackasm1(SB)
3555+ MOVL $1770, CX
3556+ JMP callbackasm1(SB)
3557+ MOVL $1771, CX
3558+ JMP callbackasm1(SB)
3559+ MOVL $1772, CX
3560+ JMP callbackasm1(SB)
3561+ MOVL $1773, CX
3562+ JMP callbackasm1(SB)
3563+ MOVL $1774, CX
3564+ JMP callbackasm1(SB)
3565+ MOVL $1775, CX
3566+ JMP callbackasm1(SB)
3567+ MOVL $1776, CX
3568+ JMP callbackasm1(SB)
3569+ MOVL $1777, CX
3570+ JMP callbackasm1(SB)
3571+ MOVL $1778, CX
3572+ JMP callbackasm1(SB)
3573+ MOVL $1779, CX
3574+ JMP callbackasm1(SB)
3575+ MOVL $1780, CX
3576+ JMP callbackasm1(SB)
3577+ MOVL $1781, CX
3578+ JMP callbackasm1(SB)
3579+ MOVL $1782, CX
3580+ JMP callbackasm1(SB)
3581+ MOVL $1783, CX
3582+ JMP callbackasm1(SB)
3583+ MOVL $1784, CX
3584+ JMP callbackasm1(SB)
3585+ MOVL $1785, CX
3586+ JMP callbackasm1(SB)
3587+ MOVL $1786, CX
3588+ JMP callbackasm1(SB)
3589+ MOVL $1787, CX
3590+ JMP callbackasm1(SB)
3591+ MOVL $1788, CX
3592+ JMP callbackasm1(SB)
3593+ MOVL $1789, CX
3594+ JMP callbackasm1(SB)
3595+ MOVL $1790, CX
3596+ JMP callbackasm1(SB)
3597+ MOVL $1791, CX
3598+ JMP callbackasm1(SB)
3599+ MOVL $1792, CX
3600+ JMP callbackasm1(SB)
3601+ MOVL $1793, CX
3602+ JMP callbackasm1(SB)
3603+ MOVL $1794, CX
3604+ JMP callbackasm1(SB)
3605+ MOVL $1795, CX
3606+ JMP callbackasm1(SB)
3607+ MOVL $1796, CX
3608+ JMP callbackasm1(SB)
3609+ MOVL $1797, CX
3610+ JMP callbackasm1(SB)
3611+ MOVL $1798, CX
3612+ JMP callbackasm1(SB)
3613+ MOVL $1799, CX
3614+ JMP callbackasm1(SB)
3615+ MOVL $1800, CX
3616+ JMP callbackasm1(SB)
3617+ MOVL $1801, CX
3618+ JMP callbackasm1(SB)
3619+ MOVL $1802, CX
3620+ JMP callbackasm1(SB)
3621+ MOVL $1803, CX
3622+ JMP callbackasm1(SB)
3623+ MOVL $1804, CX
3624+ JMP callbackasm1(SB)
3625+ MOVL $1805, CX
3626+ JMP callbackasm1(SB)
3627+ MOVL $1806, CX
3628+ JMP callbackasm1(SB)
3629+ MOVL $1807, CX
3630+ JMP callbackasm1(SB)
3631+ MOVL $1808, CX
3632+ JMP callbackasm1(SB)
3633+ MOVL $1809, CX
3634+ JMP callbackasm1(SB)
3635+ MOVL $1810, CX
3636+ JMP callbackasm1(SB)
3637+ MOVL $1811, CX
3638+ JMP callbackasm1(SB)
3639+ MOVL $1812, CX
3640+ JMP callbackasm1(SB)
3641+ MOVL $1813, CX
3642+ JMP callbackasm1(SB)
3643+ MOVL $1814, CX
3644+ JMP callbackasm1(SB)
3645+ MOVL $1815, CX
3646+ JMP callbackasm1(SB)
3647+ MOVL $1816, CX
3648+ JMP callbackasm1(SB)
3649+ MOVL $1817, CX
3650+ JMP callbackasm1(SB)
3651+ MOVL $1818, CX
3652+ JMP callbackasm1(SB)
3653+ MOVL $1819, CX
3654+ JMP callbackasm1(SB)
3655+ MOVL $1820, CX
3656+ JMP callbackasm1(SB)
3657+ MOVL $1821, CX
3658+ JMP callbackasm1(SB)
3659+ MOVL $1822, CX
3660+ JMP callbackasm1(SB)
3661+ MOVL $1823, CX
3662+ JMP callbackasm1(SB)
3663+ MOVL $1824, CX
3664+ JMP callbackasm1(SB)
3665+ MOVL $1825, CX
3666+ JMP callbackasm1(SB)
3667+ MOVL $1826, CX
3668+ JMP callbackasm1(SB)
3669+ MOVL $1827, CX
3670+ JMP callbackasm1(SB)
3671+ MOVL $1828, CX
3672+ JMP callbackasm1(SB)
3673+ MOVL $1829, CX
3674+ JMP callbackasm1(SB)
3675+ MOVL $1830, CX
3676+ JMP callbackasm1(SB)
3677+ MOVL $1831, CX
3678+ JMP callbackasm1(SB)
3679+ MOVL $1832, CX
3680+ JMP callbackasm1(SB)
3681+ MOVL $1833, CX
3682+ JMP callbackasm1(SB)
3683+ MOVL $1834, CX
3684+ JMP callbackasm1(SB)
3685+ MOVL $1835, CX
3686+ JMP callbackasm1(SB)
3687+ MOVL $1836, CX
3688+ JMP callbackasm1(SB)
3689+ MOVL $1837, CX
3690+ JMP callbackasm1(SB)
3691+ MOVL $1838, CX
3692+ JMP callbackasm1(SB)
3693+ MOVL $1839, CX
3694+ JMP callbackasm1(SB)
3695+ MOVL $1840, CX
3696+ JMP callbackasm1(SB)
3697+ MOVL $1841, CX
3698+ JMP callbackasm1(SB)
3699+ MOVL $1842, CX
3700+ JMP callbackasm1(SB)
3701+ MOVL $1843, CX
3702+ JMP callbackasm1(SB)
3703+ MOVL $1844, CX
3704+ JMP callbackasm1(SB)
3705+ MOVL $1845, CX
3706+ JMP callbackasm1(SB)
3707+ MOVL $1846, CX
3708+ JMP callbackasm1(SB)
3709+ MOVL $1847, CX
3710+ JMP callbackasm1(SB)
3711+ MOVL $1848, CX
3712+ JMP callbackasm1(SB)
3713+ MOVL $1849, CX
3714+ JMP callbackasm1(SB)
3715+ MOVL $1850, CX
3716+ JMP callbackasm1(SB)
3717+ MOVL $1851, CX
3718+ JMP callbackasm1(SB)
3719+ MOVL $1852, CX
3720+ JMP callbackasm1(SB)
3721+ MOVL $1853, CX
3722+ JMP callbackasm1(SB)
3723+ MOVL $1854, CX
3724+ JMP callbackasm1(SB)
3725+ MOVL $1855, CX
3726+ JMP callbackasm1(SB)
3727+ MOVL $1856, CX
3728+ JMP callbackasm1(SB)
3729+ MOVL $1857, CX
3730+ JMP callbackasm1(SB)
3731+ MOVL $1858, CX
3732+ JMP callbackasm1(SB)
3733+ MOVL $1859, CX
3734+ JMP callbackasm1(SB)
3735+ MOVL $1860, CX
3736+ JMP callbackasm1(SB)
3737+ MOVL $1861, CX
3738+ JMP callbackasm1(SB)
3739+ MOVL $1862, CX
3740+ JMP callbackasm1(SB)
3741+ MOVL $1863, CX
3742+ JMP callbackasm1(SB)
3743+ MOVL $1864, CX
3744+ JMP callbackasm1(SB)
3745+ MOVL $1865, CX
3746+ JMP callbackasm1(SB)
3747+ MOVL $1866, CX
3748+ JMP callbackasm1(SB)
3749+ MOVL $1867, CX
3750+ JMP callbackasm1(SB)
3751+ MOVL $1868, CX
3752+ JMP callbackasm1(SB)
3753+ MOVL $1869, CX
3754+ JMP callbackasm1(SB)
3755+ MOVL $1870, CX
3756+ JMP callbackasm1(SB)
3757+ MOVL $1871, CX
3758+ JMP callbackasm1(SB)
3759+ MOVL $1872, CX
3760+ JMP callbackasm1(SB)
3761+ MOVL $1873, CX
3762+ JMP callbackasm1(SB)
3763+ MOVL $1874, CX
3764+ JMP callbackasm1(SB)
3765+ MOVL $1875, CX
3766+ JMP callbackasm1(SB)
3767+ MOVL $1876, CX
3768+ JMP callbackasm1(SB)
3769+ MOVL $1877, CX
3770+ JMP callbackasm1(SB)
3771+ MOVL $1878, CX
3772+ JMP callbackasm1(SB)
3773+ MOVL $1879, CX
3774+ JMP callbackasm1(SB)
3775+ MOVL $1880, CX
3776+ JMP callbackasm1(SB)
3777+ MOVL $1881, CX
3778+ JMP callbackasm1(SB)
3779+ MOVL $1882, CX
3780+ JMP callbackasm1(SB)
3781+ MOVL $1883, CX
3782+ JMP callbackasm1(SB)
3783+ MOVL $1884, CX
3784+ JMP callbackasm1(SB)
3785+ MOVL $1885, CX
3786+ JMP callbackasm1(SB)
3787+ MOVL $1886, CX
3788+ JMP callbackasm1(SB)
3789+ MOVL $1887, CX
3790+ JMP callbackasm1(SB)
3791+ MOVL $1888, CX
3792+ JMP callbackasm1(SB)
3793+ MOVL $1889, CX
3794+ JMP callbackasm1(SB)
3795+ MOVL $1890, CX
3796+ JMP callbackasm1(SB)
3797+ MOVL $1891, CX
3798+ JMP callbackasm1(SB)
3799+ MOVL $1892, CX
3800+ JMP callbackasm1(SB)
3801+ MOVL $1893, CX
3802+ JMP callbackasm1(SB)
3803+ MOVL $1894, CX
3804+ JMP callbackasm1(SB)
3805+ MOVL $1895, CX
3806+ JMP callbackasm1(SB)
3807+ MOVL $1896, CX
3808+ JMP callbackasm1(SB)
3809+ MOVL $1897, CX
3810+ JMP callbackasm1(SB)
3811+ MOVL $1898, CX
3812+ JMP callbackasm1(SB)
3813+ MOVL $1899, CX
3814+ JMP callbackasm1(SB)
3815+ MOVL $1900, CX
3816+ JMP callbackasm1(SB)
3817+ MOVL $1901, CX
3818+ JMP callbackasm1(SB)
3819+ MOVL $1902, CX
3820+ JMP callbackasm1(SB)
3821+ MOVL $1903, CX
3822+ JMP callbackasm1(SB)
3823+ MOVL $1904, CX
3824+ JMP callbackasm1(SB)
3825+ MOVL $1905, CX
3826+ JMP callbackasm1(SB)
3827+ MOVL $1906, CX
3828+ JMP callbackasm1(SB)
3829+ MOVL $1907, CX
3830+ JMP callbackasm1(SB)
3831+ MOVL $1908, CX
3832+ JMP callbackasm1(SB)
3833+ MOVL $1909, CX
3834+ JMP callbackasm1(SB)
3835+ MOVL $1910, CX
3836+ JMP callbackasm1(SB)
3837+ MOVL $1911, CX
3838+ JMP callbackasm1(SB)
3839+ MOVL $1912, CX
3840+ JMP callbackasm1(SB)
3841+ MOVL $1913, CX
3842+ JMP callbackasm1(SB)
3843+ MOVL $1914, CX
3844+ JMP callbackasm1(SB)
3845+ MOVL $1915, CX
3846+ JMP callbackasm1(SB)
3847+ MOVL $1916, CX
3848+ JMP callbackasm1(SB)
3849+ MOVL $1917, CX
3850+ JMP callbackasm1(SB)
3851+ MOVL $1918, CX
3852+ JMP callbackasm1(SB)
3853+ MOVL $1919, CX
3854+ JMP callbackasm1(SB)
3855+ MOVL $1920, CX
3856+ JMP callbackasm1(SB)
3857+ MOVL $1921, CX
3858+ JMP callbackasm1(SB)
3859+ MOVL $1922, CX
3860+ JMP callbackasm1(SB)
3861+ MOVL $1923, CX
3862+ JMP callbackasm1(SB)
3863+ MOVL $1924, CX
3864+ JMP callbackasm1(SB)
3865+ MOVL $1925, CX
3866+ JMP callbackasm1(SB)
3867+ MOVL $1926, CX
3868+ JMP callbackasm1(SB)
3869+ MOVL $1927, CX
3870+ JMP callbackasm1(SB)
3871+ MOVL $1928, CX
3872+ JMP callbackasm1(SB)
3873+ MOVL $1929, CX
3874+ JMP callbackasm1(SB)
3875+ MOVL $1930, CX
3876+ JMP callbackasm1(SB)
3877+ MOVL $1931, CX
3878+ JMP callbackasm1(SB)
3879+ MOVL $1932, CX
3880+ JMP callbackasm1(SB)
3881+ MOVL $1933, CX
3882+ JMP callbackasm1(SB)
3883+ MOVL $1934, CX
3884+ JMP callbackasm1(SB)
3885+ MOVL $1935, CX
3886+ JMP callbackasm1(SB)
3887+ MOVL $1936, CX
3888+ JMP callbackasm1(SB)
3889+ MOVL $1937, CX
3890+ JMP callbackasm1(SB)
3891+ MOVL $1938, CX
3892+ JMP callbackasm1(SB)
3893+ MOVL $1939, CX
3894+ JMP callbackasm1(SB)
3895+ MOVL $1940, CX
3896+ JMP callbackasm1(SB)
3897+ MOVL $1941, CX
3898+ JMP callbackasm1(SB)
3899+ MOVL $1942, CX
3900+ JMP callbackasm1(SB)
3901+ MOVL $1943, CX
3902+ JMP callbackasm1(SB)
3903+ MOVL $1944, CX
3904+ JMP callbackasm1(SB)
3905+ MOVL $1945, CX
3906+ JMP callbackasm1(SB)
3907+ MOVL $1946, CX
3908+ JMP callbackasm1(SB)
3909+ MOVL $1947, CX
3910+ JMP callbackasm1(SB)
3911+ MOVL $1948, CX
3912+ JMP callbackasm1(SB)
3913+ MOVL $1949, CX
3914+ JMP callbackasm1(SB)
3915+ MOVL $1950, CX
3916+ JMP callbackasm1(SB)
3917+ MOVL $1951, CX
3918+ JMP callbackasm1(SB)
3919+ MOVL $1952, CX
3920+ JMP callbackasm1(SB)
3921+ MOVL $1953, CX
3922+ JMP callbackasm1(SB)
3923+ MOVL $1954, CX
3924+ JMP callbackasm1(SB)
3925+ MOVL $1955, CX
3926+ JMP callbackasm1(SB)
3927+ MOVL $1956, CX
3928+ JMP callbackasm1(SB)
3929+ MOVL $1957, CX
3930+ JMP callbackasm1(SB)
3931+ MOVL $1958, CX
3932+ JMP callbackasm1(SB)
3933+ MOVL $1959, CX
3934+ JMP callbackasm1(SB)
3935+ MOVL $1960, CX
3936+ JMP callbackasm1(SB)
3937+ MOVL $1961, CX
3938+ JMP callbackasm1(SB)
3939+ MOVL $1962, CX
3940+ JMP callbackasm1(SB)
3941+ MOVL $1963, CX
3942+ JMP callbackasm1(SB)
3943+ MOVL $1964, CX
3944+ JMP callbackasm1(SB)
3945+ MOVL $1965, CX
3946+ JMP callbackasm1(SB)
3947+ MOVL $1966, CX
3948+ JMP callbackasm1(SB)
3949+ MOVL $1967, CX
3950+ JMP callbackasm1(SB)
3951+ MOVL $1968, CX
3952+ JMP callbackasm1(SB)
3953+ MOVL $1969, CX
3954+ JMP callbackasm1(SB)
3955+ MOVL $1970, CX
3956+ JMP callbackasm1(SB)
3957+ MOVL $1971, CX
3958+ JMP callbackasm1(SB)
3959+ MOVL $1972, CX
3960+ JMP callbackasm1(SB)
3961+ MOVL $1973, CX
3962+ JMP callbackasm1(SB)
3963+ MOVL $1974, CX
3964+ JMP callbackasm1(SB)
3965+ MOVL $1975, CX
3966+ JMP callbackasm1(SB)
3967+ MOVL $1976, CX
3968+ JMP callbackasm1(SB)
3969+ MOVL $1977, CX
3970+ JMP callbackasm1(SB)
3971+ MOVL $1978, CX
3972+ JMP callbackasm1(SB)
3973+ MOVL $1979, CX
3974+ JMP callbackasm1(SB)
3975+ MOVL $1980, CX
3976+ JMP callbackasm1(SB)
3977+ MOVL $1981, CX
3978+ JMP callbackasm1(SB)
3979+ MOVL $1982, CX
3980+ JMP callbackasm1(SB)
3981+ MOVL $1983, CX
3982+ JMP callbackasm1(SB)
3983+ MOVL $1984, CX
3984+ JMP callbackasm1(SB)
3985+ MOVL $1985, CX
3986+ JMP callbackasm1(SB)
3987+ MOVL $1986, CX
3988+ JMP callbackasm1(SB)
3989+ MOVL $1987, CX
3990+ JMP callbackasm1(SB)
3991+ MOVL $1988, CX
3992+ JMP callbackasm1(SB)
3993+ MOVL $1989, CX
3994+ JMP callbackasm1(SB)
3995+ MOVL $1990, CX
3996+ JMP callbackasm1(SB)
3997+ MOVL $1991, CX
3998+ JMP callbackasm1(SB)
3999+ MOVL $1992, CX
4000+ JMP callbackasm1(SB)
4001+ MOVL $1993, CX
4002+ JMP callbackasm1(SB)
4003+ MOVL $1994, CX
4004+ JMP callbackasm1(SB)
4005+ MOVL $1995, CX
4006+ JMP callbackasm1(SB)
4007+ MOVL $1996, CX
4008+ JMP callbackasm1(SB)
4009+ MOVL $1997, CX
4010+ JMP callbackasm1(SB)
4011+ MOVL $1998, CX
4012+ JMP callbackasm1(SB)
4013+ MOVL $1999, CX
4014+ JMP callbackasm1(SB)

Keyboard shortcuts

Single-key shortcuts are on. ctrl k and esc work whatever this says.

ctrl k :
go to a section, branch, tag, file or repository
?
this list
j k
move the row cursor down / up
enter
open the row under the cursor; on Files, a directory opens or closes in place
↑ ↓ ← → home end
in the file tree (focus on a row): previous / next row, close / open a directory or go to its parent / first entry, first / last row. They never open a file
l h
on Files: open a directory or a file / close a directory or go up to its parent, then to the parent page. Elsewhere: into the side panel (on a merge request, its files) / back to the content; there j k move between its controls
g g G
first / last row
/
filter the list; on Files, find a file anywhere in the repository (esc clears, enter opens the best match)
b
switch branch or tag
g s g f g c g b g m g i g r g a
tabs: summary, files, commits, branches & tags, merge requests, issues, releases, actions (when available)
g h
home
w
wide mode: use the whole width of the screen, or not (remembered)
y
copy a permalink pinned to the commit
d u x
diff: split / unified / collapse or expand all
e E
diff: the whole file in view / every file, with the lines the hunks hide
n
merge request: next note in the diff
esc
close a dialog, leave a field

Branches 1

Tags 102

↑↓ moveenter openesc close