typenative 0.1.3 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.gitattributes +1 -0
- package/.github/workflows/ci.yml +39 -2
- package/.github/workflows/npm-publish-github-packages.yml +7 -2
- package/CHANGELOG.md +293 -0
- package/CONTRIBUTION.md +8 -6
- package/README.md +15 -11
- package/bin/cli.js +7 -1
- package/bin/go/bridge.js +919 -0
- package/bin/go/convert.js +238 -0
- package/bin/go/metadata.js +211 -0
- package/bin/go/overrides.js +68 -0
- package/bin/go/stdlib.generated.js +175 -0
- package/bin/index.js +337 -239
- package/bin/main.js +9 -2
- package/bin/node/assert.js +344 -0
- package/bin/node/async_hooks.js +273 -0
- package/bin/node/buffer.js +765 -0
- package/bin/node/child_process.js +600 -0
- package/bin/node/cluster.js +1002 -0
- package/bin/node/console.js +121 -0
- package/bin/node/core.js +111 -0
- package/bin/node/crypto.js +414 -0
- package/bin/node/crypto_keys.js +2685 -0
- package/bin/node/dgram.js +388 -0
- package/bin/node/diagnostics_channel.js +534 -0
- package/bin/node/dns.js +635 -0
- package/bin/node/events.js +743 -0
- package/bin/node/fetch.js +737 -0
- package/bin/node/fs.js +998 -0
- package/bin/node/http.js +1500 -0
- package/bin/node/http2.js +688 -0
- package/bin/node/net.js +1143 -0
- package/bin/node/os.js +257 -0
- package/bin/node/path.js +758 -0
- package/bin/node/process.js +316 -0
- package/bin/node/punycode.js +195 -0
- package/bin/node/querystring.js +143 -0
- package/bin/node/readline.js +299 -0
- package/bin/node/registry.js +161 -0
- package/bin/node/sqlite.js +1142 -0
- package/bin/node/stream.js +1221 -0
- package/bin/node/stream_web.js +2259 -0
- package/bin/node/string_decoder.js +101 -0
- package/bin/node/system_extra.js +714 -0
- package/bin/node/test.js +1068 -0
- package/bin/node/timers.js +263 -0
- package/bin/node/tls.js +719 -0
- package/bin/node/url.js +861 -0
- package/bin/node/util.js +1311 -0
- package/bin/node/util_extra.js +599 -0
- package/bin/node/worker_threads.js +745 -0
- package/bin/node/zlib.js +263 -0
- package/bin/parse-native.js +10 -0
- package/bin/parse-node.js +10 -0
- package/bin/transpiler.js +2824 -588
- package/bin/typecheck-node.js +78 -0
- package/bin/version.js +2 -0
- package/conformance.md +708 -241
- package/govendor/github.com/ncruces/go-sqlite3/LICENSE +21 -0
- package/govendor/github.com/ncruces/go-sqlite3/README.md +121 -0
- package/govendor/github.com/ncruces/go-sqlite3/backup.go +132 -0
- package/govendor/github.com/ncruces/go-sqlite3/blob.go +266 -0
- package/govendor/github.com/ncruces/go-sqlite3/config.go +397 -0
- package/govendor/github.com/ncruces/go-sqlite3/conn.go +540 -0
- package/govendor/github.com/ncruces/go-sqlite3/conn_127.go +93 -0
- package/govendor/github.com/ncruces/go-sqlite3/const.go +436 -0
- package/govendor/github.com/ncruces/go-sqlite3/context.go +222 -0
- package/govendor/github.com/ncruces/go-sqlite3/error.go +182 -0
- package/govendor/github.com/ncruces/go-sqlite3/ext.go +153 -0
- package/govendor/github.com/ncruces/go-sqlite3/func.go +309 -0
- package/govendor/github.com/ncruces/go-sqlite3/go.mod +3 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/dotlk/dotlk.go +29 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/dotlk/dotlk_other.go +13 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/dotlk/dotlk_unix.go +57 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/errutil/error.go +41 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/alloc.go +128 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/const.go +122 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/error.go +77 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem.go +116 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem_other.go +34 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem_unix.go +87 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mem_windows.go +149 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mmap_unix.go +80 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/mmap_windows.go +129 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/sys_windows.go +60 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/wrap.go +82 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/wrap_sys.go +113 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/sqlite3_wrap/wrap_vfs.go +181 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/testenv/env.go +55 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/util/json.go +54 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/util/json_v2.go +54 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/util/math.go +29 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/util/page.go +5 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/util/parse.go +142 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/util/pointer.go +3 -0
- package/govendor/github.com/ncruces/go-sqlite3/internal/util/reflect.go +10 -0
- package/govendor/github.com/ncruces/go-sqlite3/json.go +100 -0
- package/govendor/github.com/ncruces/go-sqlite3/json_v2.go +116 -0
- package/govendor/github.com/ncruces/go-sqlite3/pointer.go +13 -0
- package/govendor/github.com/ncruces/go-sqlite3/quote.go +140 -0
- package/govendor/github.com/ncruces/go-sqlite3/stmt.go +692 -0
- package/govendor/github.com/ncruces/go-sqlite3/time.go +360 -0
- package/govendor/github.com/ncruces/go-sqlite3/txn.go +374 -0
- package/govendor/github.com/ncruces/go-sqlite3/value.go +212 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/README.md +133 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/api.go +239 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/cksm.go +143 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/const.go +256 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/file.go +260 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/filename.go +187 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/lock.go +128 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/lock_other.go +23 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/map.go +63 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/map_other.go +13 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_bsd.go +110 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_darwin.go +131 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_dotlk.go +140 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_f2fs_linux.go +56 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_linux.go +117 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_ofd.go +59 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std.go +50 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_alloc.go +19 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_atomic.go +9 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_rw.go +13 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_sync.go +9 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_std_temp.go +16 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_unix.go +108 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/os_windows.go +180 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/registry.go +48 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/shm.go +26 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_bsd.go +258 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_copy.go +90 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_dotlk.go +168 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_memlk.go +52 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_ofd.go +185 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_other.go +21 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/shm_windows.go +124 -0
- package/govendor/github.com/ncruces/go-sqlite3/vfs/vfs.go +455 -0
- package/govendor/github.com/ncruces/go-sqlite3/vtab.go +677 -0
- package/govendor/github.com/ncruces/go-sqlite3/wrap.go +48 -0
- package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/LICENSE +18 -0
- package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/README.md +11 -0
- package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/go.mod +3 -0
- package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/libc.go +215 -0
- package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/sqlite3.dat +0 -0
- package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/sqlite3.go +157903 -0
- package/govendor/github.com/ncruces/go-sqlite3-wasm/v6/tools.sh +38 -0
- package/govendor/github.com/ncruces/julianday/LICENSE +21 -0
- package/govendor/github.com/ncruces/julianday/README.md +9 -0
- package/govendor/github.com/ncruces/julianday/go.mod +3 -0
- package/govendor/github.com/ncruces/julianday/julianday.go +124 -0
- package/govendor/golang.org/x/sys/LICENSE +27 -0
- package/govendor/golang.org/x/sys/PATENTS +22 -0
- package/govendor/golang.org/x/sys/go.mod +3 -0
- package/govendor/golang.org/x/sys/unix/README.md +184 -0
- package/govendor/golang.org/x/sys/unix/affinity_linux.go +189 -0
- package/govendor/golang.org/x/sys/unix/aliases.go +13 -0
- package/govendor/golang.org/x/sys/unix/asm_aix_ppc64.s +17 -0
- package/govendor/golang.org/x/sys/unix/asm_bsd_386.s +27 -0
- package/govendor/golang.org/x/sys/unix/asm_bsd_amd64.s +27 -0
- package/govendor/golang.org/x/sys/unix/asm_bsd_arm.s +27 -0
- package/govendor/golang.org/x/sys/unix/asm_bsd_arm64.s +27 -0
- package/govendor/golang.org/x/sys/unix/asm_bsd_ppc64.s +29 -0
- package/govendor/golang.org/x/sys/unix/asm_bsd_riscv64.s +27 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_386.s +65 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_amd64.s +57 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_arm.s +56 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_arm64.s +50 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_loong64.s +51 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_mips64x.s +54 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_mipsx.s +52 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_ppc64x.s +42 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_riscv64.s +47 -0
- package/govendor/golang.org/x/sys/unix/asm_linux_s390x.s +54 -0
- package/govendor/golang.org/x/sys/unix/asm_openbsd_mips64.s +29 -0
- package/govendor/golang.org/x/sys/unix/asm_solaris_amd64.s +17 -0
- package/govendor/golang.org/x/sys/unix/asm_zos_s390x.s +382 -0
- package/govendor/golang.org/x/sys/unix/auxv.go +36 -0
- package/govendor/golang.org/x/sys/unix/auxv_unsupported.go +13 -0
- package/govendor/golang.org/x/sys/unix/bluetooth_linux.go +36 -0
- package/govendor/golang.org/x/sys/unix/bpxsvc_zos.go +657 -0
- package/govendor/golang.org/x/sys/unix/bpxsvc_zos.s +192 -0
- package/govendor/golang.org/x/sys/unix/cap_freebsd.go +195 -0
- package/govendor/golang.org/x/sys/unix/constants.go +13 -0
- package/govendor/golang.org/x/sys/unix/dev_aix_ppc.go +26 -0
- package/govendor/golang.org/x/sys/unix/dev_aix_ppc64.go +28 -0
- package/govendor/golang.org/x/sys/unix/dev_darwin.go +24 -0
- package/govendor/golang.org/x/sys/unix/dev_dragonfly.go +30 -0
- package/govendor/golang.org/x/sys/unix/dev_freebsd.go +30 -0
- package/govendor/golang.org/x/sys/unix/dev_linux.go +42 -0
- package/govendor/golang.org/x/sys/unix/dev_netbsd.go +29 -0
- package/govendor/golang.org/x/sys/unix/dev_openbsd.go +29 -0
- package/govendor/golang.org/x/sys/unix/dev_zos.go +28 -0
- package/govendor/golang.org/x/sys/unix/dirent.go +102 -0
- package/govendor/golang.org/x/sys/unix/endian_big.go +9 -0
- package/govendor/golang.org/x/sys/unix/endian_little.go +9 -0
- package/govendor/golang.org/x/sys/unix/env_unix.go +31 -0
- package/govendor/golang.org/x/sys/unix/fcntl.go +36 -0
- package/govendor/golang.org/x/sys/unix/fcntl_darwin.go +24 -0
- package/govendor/golang.org/x/sys/unix/fcntl_linux_32bit.go +13 -0
- package/govendor/golang.org/x/sys/unix/fdset.go +27 -0
- package/govendor/golang.org/x/sys/unix/gccgo.go +59 -0
- package/govendor/golang.org/x/sys/unix/gccgo_c.c +44 -0
- package/govendor/golang.org/x/sys/unix/gccgo_linux_amd64.go +20 -0
- package/govendor/golang.org/x/sys/unix/ifreq_linux.go +145 -0
- package/govendor/golang.org/x/sys/unix/ioctl_linux.go +341 -0
- package/govendor/golang.org/x/sys/unix/ioctl_signed.go +74 -0
- package/govendor/golang.org/x/sys/unix/ioctl_unsigned.go +74 -0
- package/govendor/golang.org/x/sys/unix/ioctl_zos.go +71 -0
- package/govendor/golang.org/x/sys/unix/mkall.sh +250 -0
- package/govendor/golang.org/x/sys/unix/mkerrors.sh +807 -0
- package/govendor/golang.org/x/sys/unix/mmap_nomremap.go +13 -0
- package/govendor/golang.org/x/sys/unix/mremap.go +57 -0
- package/govendor/golang.org/x/sys/unix/pagesize_unix.go +15 -0
- package/govendor/golang.org/x/sys/unix/pledge_openbsd.go +111 -0
- package/govendor/golang.org/x/sys/unix/ptrace_darwin.go +11 -0
- package/govendor/golang.org/x/sys/unix/ptrace_ios.go +11 -0
- package/govendor/golang.org/x/sys/unix/race.go +30 -0
- package/govendor/golang.org/x/sys/unix/race0.go +25 -0
- package/govendor/golang.org/x/sys/unix/readdirent_getdents.go +12 -0
- package/govendor/golang.org/x/sys/unix/readdirent_getdirentries.go +19 -0
- package/govendor/golang.org/x/sys/unix/readv_unix.go +103 -0
- package/govendor/golang.org/x/sys/unix/sockcmsg_dragonfly.go +16 -0
- package/govendor/golang.org/x/sys/unix/sockcmsg_linux.go +85 -0
- package/govendor/golang.org/x/sys/unix/sockcmsg_unix.go +106 -0
- package/govendor/golang.org/x/sys/unix/sockcmsg_unix_other.go +46 -0
- package/govendor/golang.org/x/sys/unix/sockcmsg_zos.go +58 -0
- package/govendor/golang.org/x/sys/unix/symaddr_zos_s390x.s +75 -0
- package/govendor/golang.org/x/sys/unix/syscall.go +86 -0
- package/govendor/golang.org/x/sys/unix/syscall_aix.go +582 -0
- package/govendor/golang.org/x/sys/unix/syscall_aix_ppc.go +52 -0
- package/govendor/golang.org/x/sys/unix/syscall_aix_ppc64.go +83 -0
- package/govendor/golang.org/x/sys/unix/syscall_bsd.go +609 -0
- package/govendor/golang.org/x/sys/unix/syscall_darwin.go +711 -0
- package/govendor/golang.org/x/sys/unix/syscall_darwin_amd64.go +50 -0
- package/govendor/golang.org/x/sys/unix/syscall_darwin_arm64.go +50 -0
- package/govendor/golang.org/x/sys/unix/syscall_darwin_libSystem.go +26 -0
- package/govendor/golang.org/x/sys/unix/syscall_dragonfly.go +359 -0
- package/govendor/golang.org/x/sys/unix/syscall_dragonfly_amd64.go +56 -0
- package/govendor/golang.org/x/sys/unix/syscall_freebsd.go +455 -0
- package/govendor/golang.org/x/sys/unix/syscall_freebsd_386.go +64 -0
- package/govendor/golang.org/x/sys/unix/syscall_freebsd_amd64.go +64 -0
- package/govendor/golang.org/x/sys/unix/syscall_freebsd_arm.go +60 -0
- package/govendor/golang.org/x/sys/unix/syscall_freebsd_arm64.go +60 -0
- package/govendor/golang.org/x/sys/unix/syscall_freebsd_riscv64.go +60 -0
- package/govendor/golang.org/x/sys/unix/syscall_hurd.go +30 -0
- package/govendor/golang.org/x/sys/unix/syscall_hurd_386.go +28 -0
- package/govendor/golang.org/x/sys/unix/syscall_illumos.go +78 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux.go +2574 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_386.go +313 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_alarm.go +12 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_amd64.go +144 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_amd64_gc.go +12 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_arm.go +218 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_arm64.go +188 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_gc.go +14 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_gc_386.go +16 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_gc_arm.go +13 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_gccgo_386.go +30 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_gccgo_arm.go +20 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_loong64.go +220 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_mips64x.go +187 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_mipsx.go +173 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_ppc.go +203 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_ppc64x.go +114 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_riscv64.go +193 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_s390x.go +295 -0
- package/govendor/golang.org/x/sys/unix/syscall_linux_sparc64.go +111 -0
- package/govendor/golang.org/x/sys/unix/syscall_netbsd.go +388 -0
- package/govendor/golang.org/x/sys/unix/syscall_netbsd_386.go +37 -0
- package/govendor/golang.org/x/sys/unix/syscall_netbsd_amd64.go +37 -0
- package/govendor/golang.org/x/sys/unix/syscall_netbsd_arm.go +37 -0
- package/govendor/golang.org/x/sys/unix/syscall_netbsd_arm64.go +37 -0
- package/govendor/golang.org/x/sys/unix/syscall_openbsd.go +346 -0
- package/govendor/golang.org/x/sys/unix/syscall_openbsd_386.go +41 -0
- package/govendor/golang.org/x/sys/unix/syscall_openbsd_amd64.go +41 -0
- package/govendor/golang.org/x/sys/unix/syscall_openbsd_arm.go +41 -0
- package/govendor/golang.org/x/sys/unix/syscall_openbsd_arm64.go +41 -0
- package/govendor/golang.org/x/sys/unix/syscall_openbsd_libc.go +26 -0
- package/govendor/golang.org/x/sys/unix/syscall_openbsd_mips64.go +39 -0
- package/govendor/golang.org/x/sys/unix/syscall_openbsd_ppc64.go +41 -0
- package/govendor/golang.org/x/sys/unix/syscall_openbsd_riscv64.go +41 -0
- package/govendor/golang.org/x/sys/unix/syscall_solaris.go +1183 -0
- package/govendor/golang.org/x/sys/unix/syscall_solaris_amd64.go +27 -0
- package/govendor/golang.org/x/sys/unix/syscall_unix.go +619 -0
- package/govendor/golang.org/x/sys/unix/syscall_unix_gc.go +14 -0
- package/govendor/golang.org/x/sys/unix/syscall_unix_gc_ppc64x.go +22 -0
- package/govendor/golang.org/x/sys/unix/syscall_zos_s390x.go +3213 -0
- package/govendor/golang.org/x/sys/unix/sysvshm_linux.go +20 -0
- package/govendor/golang.org/x/sys/unix/sysvshm_unix.go +51 -0
- package/govendor/golang.org/x/sys/unix/sysvshm_unix_other.go +13 -0
- package/govendor/golang.org/x/sys/unix/timestruct.go +76 -0
- package/govendor/golang.org/x/sys/unix/unveil_openbsd.go +51 -0
- package/govendor/golang.org/x/sys/unix/vgetrandom_linux.go +13 -0
- package/govendor/golang.org/x/sys/unix/vgetrandom_unsupported.go +11 -0
- package/govendor/golang.org/x/sys/unix/xattr_bsd.go +280 -0
- package/govendor/golang.org/x/sys/unix/zerrors_aix_ppc.go +1384 -0
- package/govendor/golang.org/x/sys/unix/zerrors_aix_ppc64.go +1385 -0
- package/govendor/golang.org/x/sys/unix/zerrors_darwin_amd64.go +1922 -0
- package/govendor/golang.org/x/sys/unix/zerrors_darwin_arm64.go +1922 -0
- package/govendor/golang.org/x/sys/unix/zerrors_dragonfly_amd64.go +1737 -0
- package/govendor/golang.org/x/sys/unix/zerrors_freebsd_386.go +2042 -0
- package/govendor/golang.org/x/sys/unix/zerrors_freebsd_amd64.go +2039 -0
- package/govendor/golang.org/x/sys/unix/zerrors_freebsd_arm.go +2033 -0
- package/govendor/golang.org/x/sys/unix/zerrors_freebsd_arm64.go +2033 -0
- package/govendor/golang.org/x/sys/unix/zerrors_freebsd_riscv64.go +2147 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux.go +4209 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_386.go +882 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_amd64.go +882 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_arm.go +887 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_arm64.go +884 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_loong64.go +874 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_mips.go +888 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_mips64.go +888 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_mips64le.go +888 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_mipsle.go +888 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_ppc.go +940 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_ppc64.go +944 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_ppc64le.go +944 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_riscv64.go +884 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_s390x.go +943 -0
- package/govendor/golang.org/x/sys/unix/zerrors_linux_sparc64.go +992 -0
- package/govendor/golang.org/x/sys/unix/zerrors_netbsd_386.go +1779 -0
- package/govendor/golang.org/x/sys/unix/zerrors_netbsd_amd64.go +1769 -0
- package/govendor/golang.org/x/sys/unix/zerrors_netbsd_arm.go +1758 -0
- package/govendor/golang.org/x/sys/unix/zerrors_netbsd_arm64.go +1769 -0
- package/govendor/golang.org/x/sys/unix/zerrors_openbsd_386.go +1905 -0
- package/govendor/golang.org/x/sys/unix/zerrors_openbsd_amd64.go +1905 -0
- package/govendor/golang.org/x/sys/unix/zerrors_openbsd_arm.go +1905 -0
- package/govendor/golang.org/x/sys/unix/zerrors_openbsd_arm64.go +1905 -0
- package/govendor/golang.org/x/sys/unix/zerrors_openbsd_mips64.go +1905 -0
- package/govendor/golang.org/x/sys/unix/zerrors_openbsd_ppc64.go +1904 -0
- package/govendor/golang.org/x/sys/unix/zerrors_openbsd_riscv64.go +1903 -0
- package/govendor/golang.org/x/sys/unix/zerrors_solaris_amd64.go +1556 -0
- package/govendor/golang.org/x/sys/unix/zerrors_zos_s390x.go +990 -0
- package/govendor/golang.org/x/sys/unix/zptrace_armnn_linux.go +40 -0
- package/govendor/golang.org/x/sys/unix/zptrace_linux_arm64.go +17 -0
- package/govendor/golang.org/x/sys/unix/zptrace_mipsnn_linux.go +49 -0
- package/govendor/golang.org/x/sys/unix/zptrace_mipsnnle_linux.go +49 -0
- package/govendor/golang.org/x/sys/unix/zptrace_x86_linux.go +79 -0
- package/govendor/golang.org/x/sys/unix/zsymaddr_zos_s390x.s +364 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc.go +1461 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc64.go +1420 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gc.go +1188 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_aix_ppc64_gccgo.go +1069 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go +2728 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.s +799 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.go +2728 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_darwin_arm64.s +799 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_dragonfly_amd64.go +1666 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_386.go +1886 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_amd64.go +1886 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_arm.go +1886 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_arm64.go +1886 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_freebsd_riscv64.go +1886 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_illumos_amd64.go +101 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux.go +2267 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_386.go +469 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_amd64.go +636 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_arm.go +584 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_arm64.go +535 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_loong64.go +469 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_mips.go +636 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_mips64.go +630 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_mips64le.go +619 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_mipsle.go +636 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_ppc.go +641 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_ppc64.go +687 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_ppc64le.go +687 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_riscv64.go +531 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_s390x.go +478 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_linux_sparc64.go +631 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_386.go +1848 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_amd64.go +1848 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_arm.go +1848 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_netbsd_arm64.go +1848 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_386.go +2407 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_386.s +719 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.go +2407 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_amd64.s +719 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.go +2407 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm.s +719 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.go +2407 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_arm64.s +719 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.go +2407 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_mips64.s +719 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.go +2407 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_ppc64.s +862 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.go +2407 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_openbsd_riscv64.s +719 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_solaris_amd64.go +2217 -0
- package/govendor/golang.org/x/sys/unix/zsyscall_zos_s390x.go +3458 -0
- package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_386.go +280 -0
- package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_amd64.go +280 -0
- package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_arm.go +280 -0
- package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_arm64.go +280 -0
- package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_mips64.go +280 -0
- package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_ppc64.go +280 -0
- package/govendor/golang.org/x/sys/unix/zsysctl_openbsd_riscv64.go +281 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_darwin_amd64.go +439 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_darwin_arm64.go +437 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_dragonfly_amd64.go +316 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_386.go +393 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_amd64.go +393 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_arm.go +393 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_arm64.go +393 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_freebsd_riscv64.go +393 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_386.go +470 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_amd64.go +394 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_arm.go +434 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_arm64.go +337 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_loong64.go +334 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_mips.go +454 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_mips64.go +384 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_mips64le.go +384 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_mipsle.go +454 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_ppc.go +461 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_ppc64.go +433 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_ppc64le.go +433 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_riscv64.go +338 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_s390x.go +399 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_linux_sparc64.go +413 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_386.go +274 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_amd64.go +274 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_arm.go +274 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_netbsd_arm64.go +274 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_386.go +219 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_amd64.go +219 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_arm.go +219 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_arm64.go +218 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_mips64.go +221 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_ppc64.go +217 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_openbsd_riscv64.go +218 -0
- package/govendor/golang.org/x/sys/unix/zsysnum_zos_s390x.go +2852 -0
- package/govendor/golang.org/x/sys/unix/ztypes_aix_ppc.go +353 -0
- package/govendor/golang.org/x/sys/unix/ztypes_aix_ppc64.go +357 -0
- package/govendor/golang.org/x/sys/unix/ztypes_darwin_amd64.go +878 -0
- package/govendor/golang.org/x/sys/unix/ztypes_darwin_arm64.go +878 -0
- package/govendor/golang.org/x/sys/unix/ztypes_dragonfly_amd64.go +473 -0
- package/govendor/golang.org/x/sys/unix/ztypes_freebsd_386.go +651 -0
- package/govendor/golang.org/x/sys/unix/ztypes_freebsd_amd64.go +656 -0
- package/govendor/golang.org/x/sys/unix/ztypes_freebsd_arm.go +642 -0
- package/govendor/golang.org/x/sys/unix/ztypes_freebsd_arm64.go +636 -0
- package/govendor/golang.org/x/sys/unix/ztypes_freebsd_riscv64.go +638 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux.go +6547 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_386.go +747 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_amd64.go +761 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_arm.go +741 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_arm64.go +740 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_loong64.go +741 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_mips.go +746 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_mips64.go +743 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_mips64le.go +743 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_mipsle.go +746 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_ppc.go +754 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_ppc64.go +749 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_ppc64le.go +749 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_riscv64.go +828 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_s390x.go +763 -0
- package/govendor/golang.org/x/sys/unix/ztypes_linux_sparc64.go +744 -0
- package/govendor/golang.org/x/sys/unix/ztypes_netbsd_386.go +585 -0
- package/govendor/golang.org/x/sys/unix/ztypes_netbsd_amd64.go +593 -0
- package/govendor/golang.org/x/sys/unix/ztypes_netbsd_arm.go +590 -0
- package/govendor/golang.org/x/sys/unix/ztypes_netbsd_arm64.go +593 -0
- package/govendor/golang.org/x/sys/unix/ztypes_openbsd_386.go +568 -0
- package/govendor/golang.org/x/sys/unix/ztypes_openbsd_amd64.go +568 -0
- package/govendor/golang.org/x/sys/unix/ztypes_openbsd_arm.go +575 -0
- package/govendor/golang.org/x/sys/unix/ztypes_openbsd_arm64.go +568 -0
- package/govendor/golang.org/x/sys/unix/ztypes_openbsd_mips64.go +568 -0
- package/govendor/golang.org/x/sys/unix/ztypes_openbsd_ppc64.go +570 -0
- package/govendor/golang.org/x/sys/unix/ztypes_openbsd_riscv64.go +570 -0
- package/govendor/golang.org/x/sys/unix/ztypes_solaris_amd64.go +516 -0
- package/govendor/golang.org/x/sys/unix/ztypes_zos_s390x.go +552 -0
- package/govendor/golang.org/x/sys/windows/aliases.go +13 -0
- package/govendor/golang.org/x/sys/windows/dll_windows.go +380 -0
- package/govendor/golang.org/x/sys/windows/env_windows.go +57 -0
- package/govendor/golang.org/x/sys/windows/eventlog.go +20 -0
- package/govendor/golang.org/x/sys/windows/exec_windows.go +248 -0
- package/govendor/golang.org/x/sys/windows/memory_windows.go +48 -0
- package/govendor/golang.org/x/sys/windows/mkerrors.bash +70 -0
- package/govendor/golang.org/x/sys/windows/mkknownfolderids.bash +27 -0
- package/govendor/golang.org/x/sys/windows/mksyscall.go +9 -0
- package/govendor/golang.org/x/sys/windows/race.go +30 -0
- package/govendor/golang.org/x/sys/windows/race0.go +25 -0
- package/govendor/golang.org/x/sys/windows/security_windows.go +1537 -0
- package/govendor/golang.org/x/sys/windows/service.go +257 -0
- package/govendor/golang.org/x/sys/windows/setupapi_windows.go +1425 -0
- package/govendor/golang.org/x/sys/windows/str.go +22 -0
- package/govendor/golang.org/x/sys/windows/syscall.go +104 -0
- package/govendor/golang.org/x/sys/windows/syscall_windows.go +1952 -0
- package/govendor/golang.org/x/sys/windows/types_windows.go +4058 -0
- package/govendor/golang.org/x/sys/windows/types_windows_386.go +35 -0
- package/govendor/golang.org/x/sys/windows/types_windows_amd64.go +34 -0
- package/govendor/golang.org/x/sys/windows/types_windows_arm.go +35 -0
- package/govendor/golang.org/x/sys/windows/types_windows_arm64.go +34 -0
- package/govendor/golang.org/x/sys/windows/zerrors_windows.go +9468 -0
- package/govendor/golang.org/x/sys/windows/zknownfolderids_windows.go +149 -0
- package/govendor/golang.org/x/sys/windows/zsyscall_windows.go +4828 -0
- package/govendor/manifest.txt +7 -0
- package/package.json +7 -1
- package/tsparser/check.go +157 -0
- package/tsparser/main.go +30 -1
- package/types/typenative-go.d.ts +15159 -5
- package/types/typenative-npm.d.ts +2640 -34
- package/types/typenative.d.ts +651 -8
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
// Copyright 2016 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
|
+
//go:build linux && s390x && gc
|
|
6
|
+
|
|
7
|
+
#include "textflag.h"
|
|
8
|
+
|
|
9
|
+
//
|
|
10
|
+
// System calls for s390x, Linux
|
|
11
|
+
//
|
|
12
|
+
|
|
13
|
+
// Just jump to package syscall's implementation for all these functions.
|
|
14
|
+
// The runtime may know about them.
|
|
15
|
+
|
|
16
|
+
TEXT ·Syscall(SB),NOSPLIT,$0-56
|
|
17
|
+
BR syscall·Syscall(SB)
|
|
18
|
+
|
|
19
|
+
TEXT ·Syscall6(SB),NOSPLIT,$0-80
|
|
20
|
+
BR syscall·Syscall6(SB)
|
|
21
|
+
|
|
22
|
+
TEXT ·SyscallNoError(SB),NOSPLIT,$0-48
|
|
23
|
+
BL runtime·entersyscall(SB)
|
|
24
|
+
MOVD a1+8(FP), R2
|
|
25
|
+
MOVD a2+16(FP), R3
|
|
26
|
+
MOVD a3+24(FP), R4
|
|
27
|
+
MOVD $0, R5
|
|
28
|
+
MOVD $0, R6
|
|
29
|
+
MOVD $0, R7
|
|
30
|
+
MOVD trap+0(FP), R1 // syscall entry
|
|
31
|
+
SYSCALL
|
|
32
|
+
MOVD R2, r1+32(FP)
|
|
33
|
+
MOVD R3, r2+40(FP)
|
|
34
|
+
BL runtime·exitsyscall(SB)
|
|
35
|
+
RET
|
|
36
|
+
|
|
37
|
+
TEXT ·RawSyscall(SB),NOSPLIT,$0-56
|
|
38
|
+
BR syscall·RawSyscall(SB)
|
|
39
|
+
|
|
40
|
+
TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
|
|
41
|
+
BR syscall·RawSyscall6(SB)
|
|
42
|
+
|
|
43
|
+
TEXT ·RawSyscallNoError(SB),NOSPLIT,$0-48
|
|
44
|
+
MOVD a1+8(FP), R2
|
|
45
|
+
MOVD a2+16(FP), R3
|
|
46
|
+
MOVD a3+24(FP), R4
|
|
47
|
+
MOVD $0, R5
|
|
48
|
+
MOVD $0, R6
|
|
49
|
+
MOVD $0, R7
|
|
50
|
+
MOVD trap+0(FP), R1 // syscall entry
|
|
51
|
+
SYSCALL
|
|
52
|
+
MOVD R2, r1+32(FP)
|
|
53
|
+
MOVD R3, r2+40(FP)
|
|
54
|
+
RET
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
// Copyright 2019 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
|
+
//go:build gc
|
|
6
|
+
|
|
7
|
+
#include "textflag.h"
|
|
8
|
+
|
|
9
|
+
//
|
|
10
|
+
// System call support for mips64, OpenBSD
|
|
11
|
+
//
|
|
12
|
+
|
|
13
|
+
// Just jump to package syscall's implementation for all these functions.
|
|
14
|
+
// The runtime may know about them.
|
|
15
|
+
|
|
16
|
+
TEXT ·Syscall(SB),NOSPLIT,$0-56
|
|
17
|
+
JMP syscall·Syscall(SB)
|
|
18
|
+
|
|
19
|
+
TEXT ·Syscall6(SB),NOSPLIT,$0-80
|
|
20
|
+
JMP syscall·Syscall6(SB)
|
|
21
|
+
|
|
22
|
+
TEXT ·Syscall9(SB),NOSPLIT,$0-104
|
|
23
|
+
JMP syscall·Syscall9(SB)
|
|
24
|
+
|
|
25
|
+
TEXT ·RawSyscall(SB),NOSPLIT,$0-56
|
|
26
|
+
JMP syscall·RawSyscall(SB)
|
|
27
|
+
|
|
28
|
+
TEXT ·RawSyscall6(SB),NOSPLIT,$0-80
|
|
29
|
+
JMP syscall·RawSyscall6(SB)
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// Copyright 2014 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
|
+
//go:build gc
|
|
6
|
+
|
|
7
|
+
#include "textflag.h"
|
|
8
|
+
|
|
9
|
+
//
|
|
10
|
+
// System calls for amd64, Solaris are implemented in runtime/syscall_solaris.go
|
|
11
|
+
//
|
|
12
|
+
|
|
13
|
+
TEXT ·sysvicall6(SB),NOSPLIT,$0-88
|
|
14
|
+
JMP syscall·sysvicall6(SB)
|
|
15
|
+
|
|
16
|
+
TEXT ·rawSysvicall6(SB),NOSPLIT,$0-88
|
|
17
|
+
JMP syscall·rawSysvicall6(SB)
|
|
@@ -0,0 +1,382 @@
|
|
|
1
|
+
// Copyright 2020 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
|
+
//go:build zos && s390x && gc
|
|
6
|
+
|
|
7
|
+
#include "textflag.h"
|
|
8
|
+
|
|
9
|
+
#define PSALAA 1208(R0)
|
|
10
|
+
#define GTAB64(x) 80(x)
|
|
11
|
+
#define LCA64(x) 88(x)
|
|
12
|
+
#define SAVSTACK_ASYNC(x) 336(x) // in the LCA
|
|
13
|
+
#define CAA(x) 8(x)
|
|
14
|
+
#define CEECAATHDID(x) 976(x) // in the CAA
|
|
15
|
+
#define EDCHPXV(x) 1016(x) // in the CAA
|
|
16
|
+
#define GOCB(x) 1104(x) // in the CAA
|
|
17
|
+
|
|
18
|
+
// SS_*, where x=SAVSTACK_ASYNC
|
|
19
|
+
#define SS_LE(x) 0(x)
|
|
20
|
+
#define SS_GO(x) 8(x)
|
|
21
|
+
#define SS_ERRNO(x) 16(x)
|
|
22
|
+
#define SS_ERRNOJR(x) 20(x)
|
|
23
|
+
|
|
24
|
+
// Function Descriptor Offsets
|
|
25
|
+
#define __errno 0x156*16
|
|
26
|
+
#define __err2ad 0x16C*16
|
|
27
|
+
|
|
28
|
+
// Call Instructions
|
|
29
|
+
#define LE_CALL BYTE $0x0D; BYTE $0x76 // BL R7, R6
|
|
30
|
+
#define SVC_LOAD BYTE $0x0A; BYTE $0x08 // SVC 08 LOAD
|
|
31
|
+
#define SVC_DELETE BYTE $0x0A; BYTE $0x09 // SVC 09 DELETE
|
|
32
|
+
|
|
33
|
+
DATA zosLibVec<>(SB)/8, $0
|
|
34
|
+
GLOBL zosLibVec<>(SB), NOPTR, $8
|
|
35
|
+
|
|
36
|
+
TEXT ·initZosLibVec(SB), NOSPLIT|NOFRAME, $0-0
|
|
37
|
+
MOVW PSALAA, R8
|
|
38
|
+
MOVD LCA64(R8), R8
|
|
39
|
+
MOVD CAA(R8), R8
|
|
40
|
+
MOVD EDCHPXV(R8), R8
|
|
41
|
+
MOVD R8, zosLibVec<>(SB)
|
|
42
|
+
RET
|
|
43
|
+
|
|
44
|
+
TEXT ·GetZosLibVec(SB), NOSPLIT|NOFRAME, $0-0
|
|
45
|
+
MOVD zosLibVec<>(SB), R8
|
|
46
|
+
MOVD R8, ret+0(FP)
|
|
47
|
+
RET
|
|
48
|
+
|
|
49
|
+
TEXT ·clearErrno(SB), NOSPLIT, $0-0
|
|
50
|
+
BL addrerrno<>(SB)
|
|
51
|
+
MOVD $0, 0(R3)
|
|
52
|
+
RET
|
|
53
|
+
|
|
54
|
+
// Returns the address of errno in R3.
|
|
55
|
+
TEXT addrerrno<>(SB), NOSPLIT|NOFRAME, $0-0
|
|
56
|
+
// Get library control area (LCA).
|
|
57
|
+
MOVW PSALAA, R8
|
|
58
|
+
MOVD LCA64(R8), R8
|
|
59
|
+
|
|
60
|
+
// Get __errno FuncDesc.
|
|
61
|
+
MOVD CAA(R8), R9
|
|
62
|
+
MOVD EDCHPXV(R9), R9
|
|
63
|
+
ADD $(__errno), R9
|
|
64
|
+
LMG 0(R9), R5, R6
|
|
65
|
+
|
|
66
|
+
// Switch to saved LE stack.
|
|
67
|
+
MOVD SAVSTACK_ASYNC(R8), R9
|
|
68
|
+
MOVD 0(R9), R4
|
|
69
|
+
MOVD $0, 0(R9)
|
|
70
|
+
|
|
71
|
+
// Call __errno function.
|
|
72
|
+
LE_CALL
|
|
73
|
+
NOPH
|
|
74
|
+
|
|
75
|
+
// Switch back to Go stack.
|
|
76
|
+
XOR R0, R0 // Restore R0 to $0.
|
|
77
|
+
MOVD R4, 0(R9) // Save stack pointer.
|
|
78
|
+
RET
|
|
79
|
+
|
|
80
|
+
// func svcCall(fnptr unsafe.Pointer, argv *unsafe.Pointer, dsa *uint64)
|
|
81
|
+
TEXT ·svcCall(SB), NOSPLIT, $0
|
|
82
|
+
BL runtime·save_g(SB) // Save g and stack pointer
|
|
83
|
+
MOVW PSALAA, R8
|
|
84
|
+
MOVD LCA64(R8), R8
|
|
85
|
+
MOVD SAVSTACK_ASYNC(R8), R9
|
|
86
|
+
MOVD R15, 0(R9)
|
|
87
|
+
|
|
88
|
+
MOVD argv+8(FP), R1 // Move function arguments into registers
|
|
89
|
+
MOVD dsa+16(FP), g
|
|
90
|
+
MOVD fnptr+0(FP), R15
|
|
91
|
+
|
|
92
|
+
BYTE $0x0D // Branch to function
|
|
93
|
+
BYTE $0xEF
|
|
94
|
+
|
|
95
|
+
BL runtime·load_g(SB) // Restore g and stack pointer
|
|
96
|
+
MOVW PSALAA, R8
|
|
97
|
+
MOVD LCA64(R8), R8
|
|
98
|
+
MOVD SAVSTACK_ASYNC(R8), R9
|
|
99
|
+
MOVD 0(R9), R15
|
|
100
|
+
|
|
101
|
+
RET
|
|
102
|
+
|
|
103
|
+
// func svcLoad(name *byte) unsafe.Pointer
|
|
104
|
+
TEXT ·svcLoad(SB), NOSPLIT, $0
|
|
105
|
+
MOVD R15, R2 // Save go stack pointer
|
|
106
|
+
MOVD name+0(FP), R0 // Move SVC args into registers
|
|
107
|
+
MOVD $0x80000000, R1
|
|
108
|
+
MOVD $0, R15
|
|
109
|
+
SVC_LOAD
|
|
110
|
+
MOVW R15, R3 // Save return code from SVC
|
|
111
|
+
MOVD R2, R15 // Restore go stack pointer
|
|
112
|
+
CMP R3, $0 // Check SVC return code
|
|
113
|
+
BNE error
|
|
114
|
+
|
|
115
|
+
MOVD $-2, R3 // Reset last bit of entry point to zero
|
|
116
|
+
AND R0, R3
|
|
117
|
+
MOVD R3, ret+8(FP) // Return entry point returned by SVC
|
|
118
|
+
CMP R0, R3 // Check if last bit of entry point was set
|
|
119
|
+
BNE done
|
|
120
|
+
|
|
121
|
+
MOVD R15, R2 // Save go stack pointer
|
|
122
|
+
MOVD $0, R15 // Move SVC args into registers (entry point still in r0 from SVC 08)
|
|
123
|
+
SVC_DELETE
|
|
124
|
+
MOVD R2, R15 // Restore go stack pointer
|
|
125
|
+
|
|
126
|
+
error:
|
|
127
|
+
MOVD $0, ret+8(FP) // Return 0 on failure
|
|
128
|
+
|
|
129
|
+
done:
|
|
130
|
+
XOR R0, R0 // Reset r0 to 0
|
|
131
|
+
RET
|
|
132
|
+
|
|
133
|
+
// func svcUnload(name *byte, fnptr unsafe.Pointer) int64
|
|
134
|
+
TEXT ·svcUnload(SB), NOSPLIT, $0
|
|
135
|
+
MOVD R15, R2 // Save go stack pointer
|
|
136
|
+
MOVD name+0(FP), R0 // Move SVC args into registers
|
|
137
|
+
MOVD fnptr+8(FP), R15
|
|
138
|
+
SVC_DELETE
|
|
139
|
+
XOR R0, R0 // Reset r0 to 0
|
|
140
|
+
MOVD R15, R1 // Save SVC return code
|
|
141
|
+
MOVD R2, R15 // Restore go stack pointer
|
|
142
|
+
MOVD R1, ret+16(FP) // Return SVC return code
|
|
143
|
+
RET
|
|
144
|
+
|
|
145
|
+
// func gettid() uint64
|
|
146
|
+
TEXT ·gettid(SB), NOSPLIT, $0
|
|
147
|
+
// Get library control area (LCA).
|
|
148
|
+
MOVW PSALAA, R8
|
|
149
|
+
MOVD LCA64(R8), R8
|
|
150
|
+
|
|
151
|
+
// Get CEECAATHDID
|
|
152
|
+
MOVD CAA(R8), R9
|
|
153
|
+
MOVD CEECAATHDID(R9), R9
|
|
154
|
+
MOVD R9, ret+0(FP)
|
|
155
|
+
|
|
156
|
+
RET
|
|
157
|
+
|
|
158
|
+
//
|
|
159
|
+
// Call LE function, if the return is -1
|
|
160
|
+
// errno and errno2 is retrieved
|
|
161
|
+
//
|
|
162
|
+
TEXT ·CallLeFuncWithErr(SB), NOSPLIT, $0
|
|
163
|
+
MOVW PSALAA, R8
|
|
164
|
+
MOVD LCA64(R8), R8
|
|
165
|
+
MOVD CAA(R8), R9
|
|
166
|
+
MOVD g, GOCB(R9)
|
|
167
|
+
|
|
168
|
+
// Restore LE stack.
|
|
169
|
+
MOVD SAVSTACK_ASYNC(R8), R9 // R9-> LE stack frame saving address
|
|
170
|
+
MOVD 0(R9), R4 // R4-> restore previously saved stack frame pointer
|
|
171
|
+
|
|
172
|
+
MOVD parms_base+8(FP), R7 // R7 -> argument array
|
|
173
|
+
MOVD parms_len+16(FP), R8 // R8 number of arguments
|
|
174
|
+
|
|
175
|
+
// arg 1 ---> R1
|
|
176
|
+
CMP R8, $0
|
|
177
|
+
BEQ docall
|
|
178
|
+
SUB $1, R8
|
|
179
|
+
MOVD 0(R7), R1
|
|
180
|
+
|
|
181
|
+
// arg 2 ---> R2
|
|
182
|
+
CMP R8, $0
|
|
183
|
+
BEQ docall
|
|
184
|
+
SUB $1, R8
|
|
185
|
+
ADD $8, R7
|
|
186
|
+
MOVD 0(R7), R2
|
|
187
|
+
|
|
188
|
+
// arg 3 --> R3
|
|
189
|
+
CMP R8, $0
|
|
190
|
+
BEQ docall
|
|
191
|
+
SUB $1, R8
|
|
192
|
+
ADD $8, R7
|
|
193
|
+
MOVD 0(R7), R3
|
|
194
|
+
|
|
195
|
+
CMP R8, $0
|
|
196
|
+
BEQ docall
|
|
197
|
+
MOVD $2176+16, R6 // starting LE stack address-8 to store 4th argument
|
|
198
|
+
|
|
199
|
+
repeat:
|
|
200
|
+
ADD $8, R7
|
|
201
|
+
MOVD 0(R7), R0 // advance arg pointer by 8 byte
|
|
202
|
+
ADD $8, R6 // advance LE argument address by 8 byte
|
|
203
|
+
MOVD R0, (R4)(R6*1) // copy argument from go-slice to le-frame
|
|
204
|
+
SUB $1, R8
|
|
205
|
+
CMP R8, $0
|
|
206
|
+
BNE repeat
|
|
207
|
+
|
|
208
|
+
docall:
|
|
209
|
+
MOVD funcdesc+0(FP), R8 // R8-> function descriptor
|
|
210
|
+
LMG 0(R8), R5, R6
|
|
211
|
+
MOVD $0, 0(R9) // R9 address of SAVSTACK_ASYNC
|
|
212
|
+
LE_CALL // balr R7, R6 (return #1)
|
|
213
|
+
NOPH
|
|
214
|
+
MOVD R3, ret+32(FP)
|
|
215
|
+
CMP R3, $-1 // compare result to -1
|
|
216
|
+
BNE done
|
|
217
|
+
|
|
218
|
+
// retrieve errno and errno2
|
|
219
|
+
MOVD zosLibVec<>(SB), R8
|
|
220
|
+
ADD $(__errno), R8
|
|
221
|
+
LMG 0(R8), R5, R6
|
|
222
|
+
LE_CALL // balr R7, R6 __errno (return #3)
|
|
223
|
+
NOPH
|
|
224
|
+
MOVWZ 0(R3), R3
|
|
225
|
+
MOVD R3, err+48(FP)
|
|
226
|
+
MOVD zosLibVec<>(SB), R8
|
|
227
|
+
ADD $(__err2ad), R8
|
|
228
|
+
LMG 0(R8), R5, R6
|
|
229
|
+
LE_CALL // balr R7, R6 __err2ad (return #2)
|
|
230
|
+
NOPH
|
|
231
|
+
MOVW (R3), R2 // retrieve errno2
|
|
232
|
+
MOVD R2, errno2+40(FP) // store in return area
|
|
233
|
+
|
|
234
|
+
done:
|
|
235
|
+
MOVD R4, 0(R9) // Save stack pointer.
|
|
236
|
+
RET
|
|
237
|
+
|
|
238
|
+
//
|
|
239
|
+
// Call LE function, if the return is 0
|
|
240
|
+
// errno and errno2 is retrieved
|
|
241
|
+
//
|
|
242
|
+
TEXT ·CallLeFuncWithPtrReturn(SB), NOSPLIT, $0
|
|
243
|
+
MOVW PSALAA, R8
|
|
244
|
+
MOVD LCA64(R8), R8
|
|
245
|
+
MOVD CAA(R8), R9
|
|
246
|
+
MOVD g, GOCB(R9)
|
|
247
|
+
|
|
248
|
+
// Restore LE stack.
|
|
249
|
+
MOVD SAVSTACK_ASYNC(R8), R9 // R9-> LE stack frame saving address
|
|
250
|
+
MOVD 0(R9), R4 // R4-> restore previously saved stack frame pointer
|
|
251
|
+
|
|
252
|
+
MOVD parms_base+8(FP), R7 // R7 -> argument array
|
|
253
|
+
MOVD parms_len+16(FP), R8 // R8 number of arguments
|
|
254
|
+
|
|
255
|
+
// arg 1 ---> R1
|
|
256
|
+
CMP R8, $0
|
|
257
|
+
BEQ docall
|
|
258
|
+
SUB $1, R8
|
|
259
|
+
MOVD 0(R7), R1
|
|
260
|
+
|
|
261
|
+
// arg 2 ---> R2
|
|
262
|
+
CMP R8, $0
|
|
263
|
+
BEQ docall
|
|
264
|
+
SUB $1, R8
|
|
265
|
+
ADD $8, R7
|
|
266
|
+
MOVD 0(R7), R2
|
|
267
|
+
|
|
268
|
+
// arg 3 --> R3
|
|
269
|
+
CMP R8, $0
|
|
270
|
+
BEQ docall
|
|
271
|
+
SUB $1, R8
|
|
272
|
+
ADD $8, R7
|
|
273
|
+
MOVD 0(R7), R3
|
|
274
|
+
|
|
275
|
+
CMP R8, $0
|
|
276
|
+
BEQ docall
|
|
277
|
+
MOVD $2176+16, R6 // starting LE stack address-8 to store 4th argument
|
|
278
|
+
|
|
279
|
+
repeat:
|
|
280
|
+
ADD $8, R7
|
|
281
|
+
MOVD 0(R7), R0 // advance arg pointer by 8 byte
|
|
282
|
+
ADD $8, R6 // advance LE argument address by 8 byte
|
|
283
|
+
MOVD R0, (R4)(R6*1) // copy argument from go-slice to le-frame
|
|
284
|
+
SUB $1, R8
|
|
285
|
+
CMP R8, $0
|
|
286
|
+
BNE repeat
|
|
287
|
+
|
|
288
|
+
docall:
|
|
289
|
+
MOVD funcdesc+0(FP), R8 // R8-> function descriptor
|
|
290
|
+
LMG 0(R8), R5, R6
|
|
291
|
+
MOVD $0, 0(R9) // R9 address of SAVSTACK_ASYNC
|
|
292
|
+
LE_CALL // balr R7, R6 (return #1)
|
|
293
|
+
NOPH
|
|
294
|
+
MOVD R3, ret+32(FP)
|
|
295
|
+
CMP R3, $0 // compare result to 0
|
|
296
|
+
BNE done
|
|
297
|
+
|
|
298
|
+
// retrieve errno and errno2
|
|
299
|
+
MOVD zosLibVec<>(SB), R8
|
|
300
|
+
ADD $(__errno), R8
|
|
301
|
+
LMG 0(R8), R5, R6
|
|
302
|
+
LE_CALL // balr R7, R6 __errno (return #3)
|
|
303
|
+
NOPH
|
|
304
|
+
MOVWZ 0(R3), R3
|
|
305
|
+
MOVD R3, err+48(FP)
|
|
306
|
+
MOVD zosLibVec<>(SB), R8
|
|
307
|
+
ADD $(__err2ad), R8
|
|
308
|
+
LMG 0(R8), R5, R6
|
|
309
|
+
LE_CALL // balr R7, R6 __err2ad (return #2)
|
|
310
|
+
NOPH
|
|
311
|
+
MOVW (R3), R2 // retrieve errno2
|
|
312
|
+
MOVD R2, errno2+40(FP) // store in return area
|
|
313
|
+
XOR R2, R2
|
|
314
|
+
MOVWZ R2, (R3) // clear errno2
|
|
315
|
+
|
|
316
|
+
done:
|
|
317
|
+
MOVD R4, 0(R9) // Save stack pointer.
|
|
318
|
+
RET
|
|
319
|
+
|
|
320
|
+
//
|
|
321
|
+
// function to test if a pointer can be safely dereferenced (content read)
|
|
322
|
+
// return 0 for succces
|
|
323
|
+
//
|
|
324
|
+
TEXT ·ptrtest(SB), NOSPLIT, $0-16
|
|
325
|
+
MOVD arg+0(FP), R10 // test pointer in R10
|
|
326
|
+
|
|
327
|
+
// set up R2 to point to CEECAADMC
|
|
328
|
+
BYTE $0xE3; BYTE $0x20; BYTE $0x04; BYTE $0xB8; BYTE $0x00; BYTE $0x17 // llgt 2,1208
|
|
329
|
+
BYTE $0xB9; BYTE $0x17; BYTE $0x00; BYTE $0x22 // llgtr 2,2
|
|
330
|
+
BYTE $0xA5; BYTE $0x26; BYTE $0x7F; BYTE $0xFF // nilh 2,32767
|
|
331
|
+
BYTE $0xE3; BYTE $0x22; BYTE $0x00; BYTE $0x58; BYTE $0x00; BYTE $0x04 // lg 2,88(2)
|
|
332
|
+
BYTE $0xE3; BYTE $0x22; BYTE $0x00; BYTE $0x08; BYTE $0x00; BYTE $0x04 // lg 2,8(2)
|
|
333
|
+
BYTE $0x41; BYTE $0x22; BYTE $0x03; BYTE $0x68 // la 2,872(2)
|
|
334
|
+
|
|
335
|
+
// set up R5 to point to the "shunt" path which set 1 to R3 (failure)
|
|
336
|
+
BYTE $0xB9; BYTE $0x82; BYTE $0x00; BYTE $0x33 // xgr 3,3
|
|
337
|
+
BYTE $0xA7; BYTE $0x55; BYTE $0x00; BYTE $0x04 // bras 5,lbl1
|
|
338
|
+
BYTE $0xA7; BYTE $0x39; BYTE $0x00; BYTE $0x01 // lghi 3,1
|
|
339
|
+
|
|
340
|
+
// if r3 is not zero (failed) then branch to finish
|
|
341
|
+
BYTE $0xB9; BYTE $0x02; BYTE $0x00; BYTE $0x33 // lbl1 ltgr 3,3
|
|
342
|
+
BYTE $0xA7; BYTE $0x74; BYTE $0x00; BYTE $0x08 // brc b'0111',lbl2
|
|
343
|
+
|
|
344
|
+
// stomic store shunt address in R5 into CEECAADMC
|
|
345
|
+
BYTE $0xE3; BYTE $0x52; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x24 // stg 5,0(2)
|
|
346
|
+
|
|
347
|
+
// now try reading from the test pointer in R10, if it fails it branches to the "lghi" instruction above
|
|
348
|
+
BYTE $0xE3; BYTE $0x9A; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x04 // lg 9,0(10)
|
|
349
|
+
|
|
350
|
+
// finish here, restore 0 into CEECAADMC
|
|
351
|
+
BYTE $0xB9; BYTE $0x82; BYTE $0x00; BYTE $0x99 // lbl2 xgr 9,9
|
|
352
|
+
BYTE $0xE3; BYTE $0x92; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x24 // stg 9,0(2)
|
|
353
|
+
MOVD R3, ret+8(FP) // result in R3
|
|
354
|
+
RET
|
|
355
|
+
|
|
356
|
+
//
|
|
357
|
+
// function to test if a untptr can be loaded from a pointer
|
|
358
|
+
// return 1: the 8-byte content
|
|
359
|
+
// 2: 0 for success, 1 for failure
|
|
360
|
+
//
|
|
361
|
+
// func safeload(ptr uintptr) ( value uintptr, error uintptr)
|
|
362
|
+
TEXT ·safeload(SB), NOSPLIT, $0-24
|
|
363
|
+
MOVD ptr+0(FP), R10 // test pointer in R10
|
|
364
|
+
MOVD $0x0, R6
|
|
365
|
+
BYTE $0xE3; BYTE $0x20; BYTE $0x04; BYTE $0xB8; BYTE $0x00; BYTE $0x17 // llgt 2,1208
|
|
366
|
+
BYTE $0xB9; BYTE $0x17; BYTE $0x00; BYTE $0x22 // llgtr 2,2
|
|
367
|
+
BYTE $0xA5; BYTE $0x26; BYTE $0x7F; BYTE $0xFF // nilh 2,32767
|
|
368
|
+
BYTE $0xE3; BYTE $0x22; BYTE $0x00; BYTE $0x58; BYTE $0x00; BYTE $0x04 // lg 2,88(2)
|
|
369
|
+
BYTE $0xE3; BYTE $0x22; BYTE $0x00; BYTE $0x08; BYTE $0x00; BYTE $0x04 // lg 2,8(2)
|
|
370
|
+
BYTE $0x41; BYTE $0x22; BYTE $0x03; BYTE $0x68 // la 2,872(2)
|
|
371
|
+
BYTE $0xB9; BYTE $0x82; BYTE $0x00; BYTE $0x33 // xgr 3,3
|
|
372
|
+
BYTE $0xA7; BYTE $0x55; BYTE $0x00; BYTE $0x04 // bras 5,lbl1
|
|
373
|
+
BYTE $0xA7; BYTE $0x39; BYTE $0x00; BYTE $0x01 // lghi 3,1
|
|
374
|
+
BYTE $0xB9; BYTE $0x02; BYTE $0x00; BYTE $0x33 // lbl1 ltgr 3,3
|
|
375
|
+
BYTE $0xA7; BYTE $0x74; BYTE $0x00; BYTE $0x08 // brc b'0111',lbl2
|
|
376
|
+
BYTE $0xE3; BYTE $0x52; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x24 // stg 5,0(2)
|
|
377
|
+
BYTE $0xE3; BYTE $0x6A; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x04 // lg 6,0(10)
|
|
378
|
+
BYTE $0xB9; BYTE $0x82; BYTE $0x00; BYTE $0x99 // lbl2 xgr 9,9
|
|
379
|
+
BYTE $0xE3; BYTE $0x92; BYTE $0x00; BYTE $0x00; BYTE $0x00; BYTE $0x24 // stg 9,0(2)
|
|
380
|
+
MOVD R6, value+8(FP) // result in R6
|
|
381
|
+
MOVD R3, error+16(FP) // error in R3
|
|
382
|
+
RET
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
// Copyright 2025 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
|
+
//go:build go1.21 && (aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos)
|
|
6
|
+
|
|
7
|
+
package unix
|
|
8
|
+
|
|
9
|
+
import (
|
|
10
|
+
"syscall"
|
|
11
|
+
"unsafe"
|
|
12
|
+
)
|
|
13
|
+
|
|
14
|
+
//go:linkname runtime_getAuxv runtime.getAuxv
|
|
15
|
+
func runtime_getAuxv() []uintptr
|
|
16
|
+
|
|
17
|
+
// Auxv returns the ELF auxiliary vector as a sequence of key/value pairs.
|
|
18
|
+
// The returned slice is always a fresh copy, owned by the caller.
|
|
19
|
+
// It returns an error on non-ELF platforms, or if the auxiliary vector cannot be accessed,
|
|
20
|
+
// which happens in some locked-down environments and build modes.
|
|
21
|
+
func Auxv() ([][2]uintptr, error) {
|
|
22
|
+
vec := runtime_getAuxv()
|
|
23
|
+
vecLen := len(vec)
|
|
24
|
+
|
|
25
|
+
if vecLen == 0 {
|
|
26
|
+
return nil, syscall.ENOENT
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
if vecLen%2 != 0 {
|
|
30
|
+
return nil, syscall.EINVAL
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
result := make([]uintptr, vecLen)
|
|
34
|
+
copy(result, vec)
|
|
35
|
+
return unsafe.Slice((*[2]uintptr)(unsafe.Pointer(&result[0])), vecLen/2), nil
|
|
36
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// Copyright 2025 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
|
+
//go:build !go1.21 && (aix || darwin || dragonfly || freebsd || linux || netbsd || openbsd || solaris || zos)
|
|
6
|
+
|
|
7
|
+
package unix
|
|
8
|
+
|
|
9
|
+
import "syscall"
|
|
10
|
+
|
|
11
|
+
func Auxv() ([][2]uintptr, error) {
|
|
12
|
+
return nil, syscall.ENOTSUP
|
|
13
|
+
}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
// Copyright 2016 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
|
+
// Bluetooth sockets and messages
|
|
6
|
+
|
|
7
|
+
package unix
|
|
8
|
+
|
|
9
|
+
// Bluetooth Protocols
|
|
10
|
+
const (
|
|
11
|
+
BTPROTO_L2CAP = 0
|
|
12
|
+
BTPROTO_HCI = 1
|
|
13
|
+
BTPROTO_SCO = 2
|
|
14
|
+
BTPROTO_RFCOMM = 3
|
|
15
|
+
BTPROTO_BNEP = 4
|
|
16
|
+
BTPROTO_CMTP = 5
|
|
17
|
+
BTPROTO_HIDP = 6
|
|
18
|
+
BTPROTO_AVDTP = 7
|
|
19
|
+
)
|
|
20
|
+
|
|
21
|
+
const (
|
|
22
|
+
HCI_CHANNEL_RAW = 0
|
|
23
|
+
HCI_CHANNEL_USER = 1
|
|
24
|
+
HCI_CHANNEL_MONITOR = 2
|
|
25
|
+
HCI_CHANNEL_CONTROL = 3
|
|
26
|
+
HCI_CHANNEL_LOGGING = 4
|
|
27
|
+
)
|
|
28
|
+
|
|
29
|
+
// Socketoption Level
|
|
30
|
+
const (
|
|
31
|
+
SOL_BLUETOOTH = 0x112
|
|
32
|
+
SOL_HCI = 0x0
|
|
33
|
+
SOL_L2CAP = 0x6
|
|
34
|
+
SOL_RFCOMM = 0x12
|
|
35
|
+
SOL_SCO = 0x11
|
|
36
|
+
)
|