[go][syscalls] Regenerate syscalls
zx_ticks_t was redefined from uint64_t to int64_t. Regenerate the go
syscall bindings as a result. Note; it looks like things were a bit
out of date here. More than just the ticks definition needed to be
update.
Change-Id: I27b2386746f2f3681f191424cc4531ec052ee485
diff --git a/src/internal/fuchsia/abigen/types.go b/src/internal/fuchsia/abigen/types.go
index 5beba35..45540c9 100644
--- a/src/internal/fuchsia/abigen/types.go
+++ b/src/internal/fuchsia/abigen/types.go
@@ -73,7 +73,7 @@
"zx_status_t": zxStatus, // int32_t
"zx_clock_t": zxUint32,
"zx_time_t": zxTime, // uint64_t monotonic time
- "zx_ticks_t": zxUint64,
+ "zx_ticks_t": zxInt64,
"zx_duration_t": zxDuration, // uint64_t nanoseconds
"zx_koid_t": zxKOID,
"zx_handle_t": zxHandle, // int32_t
diff --git a/src/runtime/vdso_keys_fuchsia.go b/src/runtime/vdso_keys_fuchsia.go
index 04cf6a5..57bcc4d 100644
--- a/src/runtime/vdso_keys_fuchsia.go
+++ b/src/runtime/vdso_keys_fuchsia.go
@@ -29,6 +29,7 @@
{"_zx_system_get_version", 0x206d39de, &vdso_zx_system_get_version},
{"_zx_system_get_physmem", 0x5a0e027b, &vdso_zx_system_get_physmem},
{"_zx_system_get_features", 0x42682df7, &vdso_zx_system_get_features},
+ {"_zx_system_get_event", 0x7a0b68da, &vdso_zx_system_get_event},
{"_zx_cache_flush", 0x319eccca, &vdso_zx_cache_flush},
{"_zx_handle_close", 0xe769f876, &vdso_zx_handle_close},
{"_zx_handle_close_many", 0x8a9a3aaa, &vdso_zx_handle_close_many},
@@ -48,6 +49,7 @@
{"_zx_channel_read", 0xe7169b09, &vdso_zx_channel_read},
{"_zx_channel_read_etc", 0x77c4cc84, &vdso_zx_channel_read_etc},
{"_zx_channel_write", 0xca4bbc18, &vdso_zx_channel_write},
+ {"_zx_channel_write_etc", 0x43b1dd13, &vdso_zx_channel_write_etc},
{"_zx_channel_call_noretry", 0xb5ad0b5b, &vdso_zx_channel_call_noretry},
{"_zx_channel_call_finish", 0x85ce3de9, &vdso_zx_channel_call_finish},
{"_zx_channel_call", 0xe70e51c9, &vdso_zx_channel_call},
@@ -73,7 +75,10 @@
{"_zx_task_suspend", 0xe13ad509, &vdso_zx_task_suspend},
{"_zx_task_suspend_token", 0x341e98a9, &vdso_zx_task_suspend_token},
{"_zx_task_resume_from_exception", 0x185b8e99, &vdso_zx_task_resume_from_exception},
+ {"_zx_task_create_exception_channel", 0x5318f181, &vdso_zx_task_create_exception_channel},
{"_zx_task_kill", 0x1ae4e313, &vdso_zx_task_kill},
+ {"_zx_exception_get_thread", 0xb1c70bba, &vdso_zx_exception_get_thread},
+ {"_zx_exception_get_process", 0xcddbd761, &vdso_zx_exception_get_process},
{"_zx_event_create", 0x4c39490a, &vdso_zx_event_create},
{"_zx_eventpair_create", 0xe3fd9c16, &vdso_zx_eventpair_create},
{"_zx_futex_wait", 0xb089e255, &vdso_zx_futex_wait},
@@ -95,7 +100,7 @@
{"_zx_vmo_get_size", 0x261c77c0, &vdso_zx_vmo_get_size},
{"_zx_vmo_set_size", 0x3932724c, &vdso_zx_vmo_set_size},
{"_zx_vmo_op_range", 0xa73d6b71, &vdso_zx_vmo_op_range},
- {"_zx_vmo_create_child", 0xc755ed37, &vdso_zx_vmo_create_child},
+ {"_zx_vmo_create_child", 0x72c8b3dd, &vdso_zx_vmo_create_child},
{"_zx_vmo_set_cache_policy", 0xe509bad4, &vdso_zx_vmo_set_cache_policy},
{"_zx_vmo_replace_as_executable", 0xbd38e576, &vdso_zx_vmo_replace_as_executable},
{"_zx_vmar_allocate", 0x4cac85ef, &vdso_zx_vmar_allocate},
@@ -164,6 +169,7 @@
//go:cgo_import_dynamic vdso_zx_system_get_version _zx_system_get_version
//go:cgo_import_dynamic vdso_zx_system_get_physmem _zx_system_get_physmem
//go:cgo_import_dynamic vdso_zx_system_get_features _zx_system_get_features
+//go:cgo_import_dynamic vdso_zx_system_get_event _zx_system_get_event
//go:cgo_import_dynamic vdso_zx_cache_flush _zx_cache_flush
//go:cgo_import_dynamic vdso_zx_handle_close _zx_handle_close
//go:cgo_import_dynamic vdso_zx_handle_close_many _zx_handle_close_many
@@ -183,6 +189,7 @@
//go:cgo_import_dynamic vdso_zx_channel_read _zx_channel_read
//go:cgo_import_dynamic vdso_zx_channel_read_etc _zx_channel_read_etc
//go:cgo_import_dynamic vdso_zx_channel_write _zx_channel_write
+//go:cgo_import_dynamic vdso_zx_channel_write_etc _zx_channel_write_etc
//go:cgo_import_dynamic vdso_zx_channel_call_noretry _zx_channel_call_noretry
//go:cgo_import_dynamic vdso_zx_channel_call_finish _zx_channel_call_finish
//go:cgo_import_dynamic vdso_zx_channel_call _zx_channel_call
@@ -208,7 +215,10 @@
//go:cgo_import_dynamic vdso_zx_task_suspend _zx_task_suspend
//go:cgo_import_dynamic vdso_zx_task_suspend_token _zx_task_suspend_token
//go:cgo_import_dynamic vdso_zx_task_resume_from_exception _zx_task_resume_from_exception
+//go:cgo_import_dynamic vdso_zx_task_create_exception_channel _zx_task_create_exception_channel
//go:cgo_import_dynamic vdso_zx_task_kill _zx_task_kill
+//go:cgo_import_dynamic vdso_zx_exception_get_thread _zx_exception_get_thread
+//go:cgo_import_dynamic vdso_zx_exception_get_process _zx_exception_get_process
//go:cgo_import_dynamic vdso_zx_event_create _zx_event_create
//go:cgo_import_dynamic vdso_zx_eventpair_create _zx_eventpair_create
//go:cgo_import_dynamic vdso_zx_futex_wait _zx_futex_wait
@@ -298,6 +308,7 @@
//go:linkname vdso_zx_system_get_version vdso_zx_system_get_version
//go:linkname vdso_zx_system_get_physmem vdso_zx_system_get_physmem
//go:linkname vdso_zx_system_get_features vdso_zx_system_get_features
+//go:linkname vdso_zx_system_get_event vdso_zx_system_get_event
//go:linkname vdso_zx_cache_flush vdso_zx_cache_flush
//go:linkname vdso_zx_handle_close vdso_zx_handle_close
//go:linkname vdso_zx_handle_close_many vdso_zx_handle_close_many
@@ -317,6 +328,7 @@
//go:linkname vdso_zx_channel_read vdso_zx_channel_read
//go:linkname vdso_zx_channel_read_etc vdso_zx_channel_read_etc
//go:linkname vdso_zx_channel_write vdso_zx_channel_write
+//go:linkname vdso_zx_channel_write_etc vdso_zx_channel_write_etc
//go:linkname vdso_zx_channel_call_noretry vdso_zx_channel_call_noretry
//go:linkname vdso_zx_channel_call_finish vdso_zx_channel_call_finish
//go:linkname vdso_zx_channel_call vdso_zx_channel_call
@@ -342,7 +354,10 @@
//go:linkname vdso_zx_task_suspend vdso_zx_task_suspend
//go:linkname vdso_zx_task_suspend_token vdso_zx_task_suspend_token
//go:linkname vdso_zx_task_resume_from_exception vdso_zx_task_resume_from_exception
+//go:linkname vdso_zx_task_create_exception_channel vdso_zx_task_create_exception_channel
//go:linkname vdso_zx_task_kill vdso_zx_task_kill
+//go:linkname vdso_zx_exception_get_thread vdso_zx_exception_get_thread
+//go:linkname vdso_zx_exception_get_process vdso_zx_exception_get_process
//go:linkname vdso_zx_event_create vdso_zx_event_create
//go:linkname vdso_zx_eventpair_create vdso_zx_eventpair_create
//go:linkname vdso_zx_futex_wait vdso_zx_futex_wait
@@ -421,7 +436,7 @@
//go:noescape
//go:nosplit
-func vdsoCall_zx_clock_get(clock_id uint32) int64
+func vdsoCall_zx_clock_get(clock_id uint32, out unsafe.Pointer) int32
//go:noescape
//go:nosplit
@@ -437,11 +452,11 @@
//go:noescape
//go:nosplit
-func vdsoCall_zx_ticks_get() uint64
+func vdsoCall_zx_ticks_get() int64
//go:noescape
//go:nosplit
-func vdsoCall_zx_ticks_per_second() uint64
+func vdsoCall_zx_ticks_per_second() int64
//go:noescape
//go:nosplit
@@ -473,6 +488,10 @@
//go:noescape
//go:nosplit
+func vdsoCall_zx_system_get_event(root_job uint32, kind uint32, event unsafe.Pointer) int32
+
+//go:noescape
+//go:nosplit
func vdsoCall_zx_cache_flush(addr unsafe.Pointer, size uint, options uint32) int32
//go:noescape
@@ -549,6 +568,10 @@
//go:noescape
//go:nosplit
+func vdsoCall_zx_channel_write_etc(handle uint32, options uint32, bytes unsafe.Pointer, num_bytes uint32, handles unsafe.Pointer, num_handles uint32) int32
+
+//go:noescape
+//go:nosplit
func vdsoCall_zx_channel_call_noretry(handle uint32, options uint32, deadline int64, args unsafe.Pointer, actual_bytes unsafe.Pointer, actual_handles unsafe.Pointer) int32
//go:noescape
@@ -649,10 +672,22 @@
//go:noescape
//go:nosplit
+func vdsoCall_zx_task_create_exception_channel(handle uint32, options uint32, out unsafe.Pointer) int32
+
+//go:noescape
+//go:nosplit
func vdsoCall_zx_task_kill(handle uint32) int32
//go:noescape
//go:nosplit
+func vdsoCall_zx_exception_get_thread(handle uint32, out unsafe.Pointer) int32
+
+//go:noescape
+//go:nosplit
+func vdsoCall_zx_exception_get_process(handle uint32, out unsafe.Pointer) int32
+
+//go:noescape
+//go:nosplit
func vdsoCall_zx_event_create(options uint32, out unsafe.Pointer) int32
//go:noescape
@@ -793,7 +828,7 @@
//go:noescape
//go:nosplit
-func vdsoCall_zx_profile_create(root_job uint32, profile unsafe.Pointer, out unsafe.Pointer) int32
+func vdsoCall_zx_profile_create(root_job uint32, options uint32, profile unsafe.Pointer, out unsafe.Pointer) int32
//go:noescape
//go:nosplit
@@ -965,6 +1000,7 @@
vdso_zx_system_get_version uintptr
vdso_zx_system_get_physmem uintptr
vdso_zx_system_get_features uintptr
+ vdso_zx_system_get_event uintptr
vdso_zx_cache_flush uintptr
vdso_zx_handle_close uintptr
vdso_zx_handle_close_many uintptr
@@ -984,6 +1020,7 @@
vdso_zx_channel_read uintptr
vdso_zx_channel_read_etc uintptr
vdso_zx_channel_write uintptr
+ vdso_zx_channel_write_etc uintptr
vdso_zx_channel_call_noretry uintptr
vdso_zx_channel_call_finish uintptr
vdso_zx_channel_call uintptr
@@ -1009,7 +1046,10 @@
vdso_zx_task_suspend uintptr
vdso_zx_task_suspend_token uintptr
vdso_zx_task_resume_from_exception uintptr
+ vdso_zx_task_create_exception_channel uintptr
vdso_zx_task_kill uintptr
+ vdso_zx_exception_get_thread uintptr
+ vdso_zx_exception_get_process uintptr
vdso_zx_event_create uintptr
vdso_zx_eventpair_create uintptr
vdso_zx_futex_wait uintptr
diff --git a/src/runtime/vdsocalls_fuchsia_amd64.s b/src/runtime/vdsocalls_fuchsia_amd64.s
index 6f99a4a..7d5c45d 100644
--- a/src/runtime/vdsocalls_fuchsia_amd64.s
+++ b/src/runtime/vdsocalls_fuchsia_amd64.s
@@ -10,8 +10,8 @@
#include "textflag.h"
#include "funcdata.h"
-// func vdsoCall_zx_clock_get(clock_id uint32) int64
-TEXT runtime·vdsoCall_zx_clock_get(SB),NOSPLIT,$8-16
+// func vdsoCall_zx_clock_get(clock_id uint32, out unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_clock_get(SB),NOSPLIT,$8-20
GO_ARGS
NO_LOCAL_POINTERS
get_tls(CX)
@@ -23,9 +23,10 @@
LEAQ 24(SP), DX
MOVQ DX, m_vdsoSP(R14)
MOVL clock_id+0(FP), DI
+ MOVQ out+8(FP), SI
MOVQ vdso_zx_clock_get(SB), AX
CALL AX
- MOVQ AX, ret+8(FP)
+ MOVL AX, ret+16(FP)
POPQ R14
MOVQ $0, m_vdsoSP(R14)
RET
@@ -90,7 +91,7 @@
MOVQ $0, m_vdsoSP(R14)
RET
-// func vdsoCall_zx_ticks_get() uint64
+// func vdsoCall_zx_ticks_get() int64
TEXT runtime·vdsoCall_zx_ticks_get(SB),NOSPLIT,$8-8
GO_ARGS
NO_LOCAL_POINTERS
@@ -109,7 +110,7 @@
MOVQ $0, m_vdsoSP(R14)
RET
-// func vdsoCall_zx_ticks_per_second() uint64
+// func vdsoCall_zx_ticks_per_second() int64
TEXT runtime·vdsoCall_zx_ticks_per_second(SB),NOSPLIT,$8-8
GO_ARGS
NO_LOCAL_POINTERS
@@ -269,6 +270,28 @@
MOVQ $0, m_vdsoSP(R14)
RET
+// func vdsoCall_zx_system_get_event(root_job uint32, kind uint32, event unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_system_get_event(SB),NOSPLIT,$8-20
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ get_tls(CX)
+ MOVQ g(CX), AX
+ MOVQ g_m(AX), R14
+ PUSHQ R14
+ MOVQ 24(SP), DX
+ MOVQ DX, m_vdsoPC(R14)
+ LEAQ 24(SP), DX
+ MOVQ DX, m_vdsoSP(R14)
+ MOVL root_job+0(FP), DI
+ MOVL kind+4(FP), SI
+ MOVQ event+8(FP), DX
+ MOVQ vdso_zx_system_get_event(SB), AX
+ CALL AX
+ MOVL AX, ret+16(FP)
+ POPQ R14
+ MOVQ $0, m_vdsoSP(R14)
+ RET
+
// func vdsoCall_zx_cache_flush(addr unsafe.Pointer, size uint, options uint32) int32
TEXT runtime·vdsoCall_zx_cache_flush(SB),NOSPLIT,$8-28
GO_ARGS
@@ -724,6 +747,31 @@
MOVQ $0, m_vdsoSP(R14)
RET
+// func vdsoCall_zx_channel_write_etc(handle uint32, options uint32, bytes unsafe.Pointer, num_bytes uint32, handles unsafe.Pointer, num_handles uint32) int32
+TEXT runtime·vdsoCall_zx_channel_write_etc(SB),NOSPLIT,$8-44
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ get_tls(CX)
+ MOVQ g(CX), AX
+ MOVQ g_m(AX), R14
+ PUSHQ R14
+ MOVQ 24(SP), DX
+ MOVQ DX, m_vdsoPC(R14)
+ LEAQ 24(SP), DX
+ MOVQ DX, m_vdsoSP(R14)
+ MOVL handle+0(FP), DI
+ MOVL options+4(FP), SI
+ MOVQ bytes+8(FP), DX
+ MOVL num_bytes+16(FP), CX
+ MOVQ handles+24(FP), R8
+ MOVL num_handles+32(FP), R9
+ MOVQ vdso_zx_channel_write_etc(SB), AX
+ CALL AX
+ MOVL AX, ret+40(FP)
+ POPQ R14
+ MOVQ $0, m_vdsoSP(R14)
+ RET
+
// func vdsoCall_zx_channel_call_noretry(handle uint32, options uint32, deadline int64, args unsafe.Pointer, actual_bytes unsafe.Pointer, actual_handles unsafe.Pointer) int32
TEXT runtime·vdsoCall_zx_channel_call_noretry(SB),NOSPLIT,$8-44
GO_ARGS
@@ -1294,6 +1342,28 @@
MOVQ $0, m_vdsoSP(R14)
RET
+// func vdsoCall_zx_task_create_exception_channel(handle uint32, options uint32, out unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_task_create_exception_channel(SB),NOSPLIT,$8-20
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ get_tls(CX)
+ MOVQ g(CX), AX
+ MOVQ g_m(AX), R14
+ PUSHQ R14
+ MOVQ 24(SP), DX
+ MOVQ DX, m_vdsoPC(R14)
+ LEAQ 24(SP), DX
+ MOVQ DX, m_vdsoSP(R14)
+ MOVL handle+0(FP), DI
+ MOVL options+4(FP), SI
+ MOVQ out+8(FP), DX
+ MOVQ vdso_zx_task_create_exception_channel(SB), AX
+ CALL AX
+ MOVL AX, ret+16(FP)
+ POPQ R14
+ MOVQ $0, m_vdsoSP(R14)
+ RET
+
// func vdsoCall_zx_task_kill(handle uint32) int32
TEXT runtime·vdsoCall_zx_task_kill(SB),NOSPLIT,$8-12
GO_ARGS
@@ -1314,6 +1384,48 @@
MOVQ $0, m_vdsoSP(R14)
RET
+// func vdsoCall_zx_exception_get_thread(handle uint32, out unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_exception_get_thread(SB),NOSPLIT,$8-20
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ get_tls(CX)
+ MOVQ g(CX), AX
+ MOVQ g_m(AX), R14
+ PUSHQ R14
+ MOVQ 24(SP), DX
+ MOVQ DX, m_vdsoPC(R14)
+ LEAQ 24(SP), DX
+ MOVQ DX, m_vdsoSP(R14)
+ MOVL handle+0(FP), DI
+ MOVQ out+8(FP), SI
+ MOVQ vdso_zx_exception_get_thread(SB), AX
+ CALL AX
+ MOVL AX, ret+16(FP)
+ POPQ R14
+ MOVQ $0, m_vdsoSP(R14)
+ RET
+
+// func vdsoCall_zx_exception_get_process(handle uint32, out unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_exception_get_process(SB),NOSPLIT,$8-20
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ get_tls(CX)
+ MOVQ g(CX), AX
+ MOVQ g_m(AX), R14
+ PUSHQ R14
+ MOVQ 24(SP), DX
+ MOVQ DX, m_vdsoPC(R14)
+ LEAQ 24(SP), DX
+ MOVQ DX, m_vdsoSP(R14)
+ MOVL handle+0(FP), DI
+ MOVQ out+8(FP), SI
+ MOVQ vdso_zx_exception_get_process(SB), AX
+ CALL AX
+ MOVL AX, ret+16(FP)
+ POPQ R14
+ MOVQ $0, m_vdsoSP(R14)
+ RET
+
// func vdsoCall_zx_event_create(options uint32, out unsafe.Pointer) int32
TEXT runtime·vdsoCall_zx_event_create(SB),NOSPLIT,$8-20
GO_ARGS
@@ -2100,7 +2212,7 @@
MOVQ $0, m_vdsoSP(R14)
RET
-// func vdsoCall_zx_profile_create(root_job uint32, profile unsafe.Pointer, out unsafe.Pointer) int32
+// func vdsoCall_zx_profile_create(root_job uint32, options uint32, profile unsafe.Pointer, out unsafe.Pointer) int32
TEXT runtime·vdsoCall_zx_profile_create(SB),NOSPLIT,$8-28
GO_ARGS
NO_LOCAL_POINTERS
@@ -2113,8 +2225,9 @@
LEAQ 24(SP), DX
MOVQ DX, m_vdsoSP(R14)
MOVL root_job+0(FP), DI
- MOVQ profile+8(FP), SI
- MOVQ out+16(FP), DX
+ MOVL options+4(FP), SI
+ MOVQ profile+8(FP), DX
+ MOVQ out+16(FP), CX
MOVQ vdso_zx_profile_create(SB), AX
CALL AX
MOVL AX, ret+24(FP)
diff --git a/src/runtime/vdsocalls_fuchsia_arm64.s b/src/runtime/vdsocalls_fuchsia_arm64.s
index 2b8cd5e..8284c8a 100644
--- a/src/runtime/vdsocalls_fuchsia_arm64.s
+++ b/src/runtime/vdsocalls_fuchsia_arm64.s
@@ -10,8 +10,8 @@
#include "textflag.h"
#include "funcdata.h"
-// func vdsoCall_zx_clock_get(clock_id uint32) int64
-TEXT runtime·vdsoCall_zx_clock_get(SB),NOSPLIT,$0-16
+// func vdsoCall_zx_clock_get(clock_id uint32, out unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_clock_get(SB),NOSPLIT,$0-20
GO_ARGS
NO_LOCAL_POINTERS
MOVD g_m(g), R21
@@ -19,8 +19,9 @@
MOVD RSP, R20
MOVD R20, m_vdsoSP(R21)
MOVW clock_id+0(FP), R0
+ MOVD out+8(FP), R1
BL vdso_zx_clock_get(SB)
- MOVD R0, ret+8(FP)
+ MOVW R0, ret+16(FP)
MOVD g_m(g), R21
MOVD $0, m_vdsoSP(R21)
RET
@@ -70,7 +71,7 @@
MOVD $0, m_vdsoSP(R21)
RET
-// func vdsoCall_zx_ticks_get() uint64
+// func vdsoCall_zx_ticks_get() int64
TEXT runtime·vdsoCall_zx_ticks_get(SB),NOSPLIT,$0-8
GO_ARGS
NO_LOCAL_POINTERS
@@ -84,7 +85,7 @@
MOVD $0, m_vdsoSP(R21)
RET
-// func vdsoCall_zx_ticks_per_second() uint64
+// func vdsoCall_zx_ticks_per_second() int64
TEXT runtime·vdsoCall_zx_ticks_per_second(SB),NOSPLIT,$0-8
GO_ARGS
NO_LOCAL_POINTERS
@@ -204,6 +205,23 @@
MOVD $0, m_vdsoSP(R21)
RET
+// func vdsoCall_zx_system_get_event(root_job uint32, kind uint32, event unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_system_get_event(SB),NOSPLIT,$0-20
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ MOVD g_m(g), R21
+ MOVD LR, m_vdsoPC(R21)
+ MOVD RSP, R20
+ MOVD R20, m_vdsoSP(R21)
+ MOVW root_job+0(FP), R0
+ MOVW kind+4(FP), R1
+ MOVD event+8(FP), R2
+ BL vdso_zx_system_get_event(SB)
+ MOVW R0, ret+16(FP)
+ MOVD g_m(g), R21
+ MOVD $0, m_vdsoSP(R21)
+ RET
+
// func vdsoCall_zx_cache_flush(addr unsafe.Pointer, size uint, options uint32) int32
TEXT runtime·vdsoCall_zx_cache_flush(SB),NOSPLIT,$0-28
GO_ARGS
@@ -550,6 +568,26 @@
MOVD $0, m_vdsoSP(R21)
RET
+// func vdsoCall_zx_channel_write_etc(handle uint32, options uint32, bytes unsafe.Pointer, num_bytes uint32, handles unsafe.Pointer, num_handles uint32) int32
+TEXT runtime·vdsoCall_zx_channel_write_etc(SB),NOSPLIT,$0-44
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ MOVD g_m(g), R21
+ MOVD LR, m_vdsoPC(R21)
+ MOVD RSP, R20
+ MOVD R20, m_vdsoSP(R21)
+ MOVW handle+0(FP), R0
+ MOVW options+4(FP), R1
+ MOVD bytes+8(FP), R2
+ MOVW num_bytes+16(FP), R3
+ MOVD handles+24(FP), R4
+ MOVW num_handles+32(FP), R5
+ BL vdso_zx_channel_write_etc(SB)
+ MOVW R0, ret+40(FP)
+ MOVD g_m(g), R21
+ MOVD $0, m_vdsoSP(R21)
+ RET
+
// func vdsoCall_zx_channel_call_noretry(handle uint32, options uint32, deadline int64, args unsafe.Pointer, actual_bytes unsafe.Pointer, actual_handles unsafe.Pointer) int32
TEXT runtime·vdsoCall_zx_channel_call_noretry(SB),NOSPLIT,$0-44
GO_ARGS
@@ -995,6 +1033,23 @@
MOVD $0, m_vdsoSP(R21)
RET
+// func vdsoCall_zx_task_create_exception_channel(handle uint32, options uint32, out unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_task_create_exception_channel(SB),NOSPLIT,$0-20
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ MOVD g_m(g), R21
+ MOVD LR, m_vdsoPC(R21)
+ MOVD RSP, R20
+ MOVD R20, m_vdsoSP(R21)
+ MOVW handle+0(FP), R0
+ MOVW options+4(FP), R1
+ MOVD out+8(FP), R2
+ BL vdso_zx_task_create_exception_channel(SB)
+ MOVW R0, ret+16(FP)
+ MOVD g_m(g), R21
+ MOVD $0, m_vdsoSP(R21)
+ RET
+
// func vdsoCall_zx_task_kill(handle uint32) int32
TEXT runtime·vdsoCall_zx_task_kill(SB),NOSPLIT,$0-12
GO_ARGS
@@ -1010,6 +1065,38 @@
MOVD $0, m_vdsoSP(R21)
RET
+// func vdsoCall_zx_exception_get_thread(handle uint32, out unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_exception_get_thread(SB),NOSPLIT,$0-20
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ MOVD g_m(g), R21
+ MOVD LR, m_vdsoPC(R21)
+ MOVD RSP, R20
+ MOVD R20, m_vdsoSP(R21)
+ MOVW handle+0(FP), R0
+ MOVD out+8(FP), R1
+ BL vdso_zx_exception_get_thread(SB)
+ MOVW R0, ret+16(FP)
+ MOVD g_m(g), R21
+ MOVD $0, m_vdsoSP(R21)
+ RET
+
+// func vdsoCall_zx_exception_get_process(handle uint32, out unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_exception_get_process(SB),NOSPLIT,$0-20
+ GO_ARGS
+ NO_LOCAL_POINTERS
+ MOVD g_m(g), R21
+ MOVD LR, m_vdsoPC(R21)
+ MOVD RSP, R20
+ MOVD R20, m_vdsoSP(R21)
+ MOVW handle+0(FP), R0
+ MOVD out+8(FP), R1
+ BL vdso_zx_exception_get_process(SB)
+ MOVW R0, ret+16(FP)
+ MOVD g_m(g), R21
+ MOVD $0, m_vdsoSP(R21)
+ RET
+
// func vdsoCall_zx_event_create(options uint32, out unsafe.Pointer) int32
TEXT runtime·vdsoCall_zx_event_create(SB),NOSPLIT,$0-20
GO_ARGS
@@ -1616,7 +1703,7 @@
MOVD $0, m_vdsoSP(R21)
RET
-// func vdsoCall_zx_profile_create(root_job uint32, profile unsafe.Pointer, out unsafe.Pointer) int32
+// func vdsoCall_zx_profile_create(root_job uint32, options uint32, profile unsafe.Pointer, out unsafe.Pointer) int32
TEXT runtime·vdsoCall_zx_profile_create(SB),NOSPLIT,$0-28
GO_ARGS
NO_LOCAL_POINTERS
@@ -1625,8 +1712,9 @@
MOVD RSP, R20
MOVD R20, m_vdsoSP(R21)
MOVW root_job+0(FP), R0
- MOVD profile+8(FP), R1
- MOVD out+16(FP), R2
+ MOVW options+4(FP), R1
+ MOVD profile+8(FP), R2
+ MOVD out+16(FP), R3
BL vdso_zx_profile_create(SB)
MOVW R0, ret+24(FP)
MOVD g_m(g), R21
diff --git a/src/syscall/zx/syscalls_fuchsia.go b/src/syscall/zx/syscalls_fuchsia.go
index 264603d..227adbe 100644
--- a/src/syscall/zx/syscalls_fuchsia.go
+++ b/src/syscall/zx/syscalls_fuchsia.go
@@ -11,7 +11,7 @@
//go:noescape
//go:nosplit
-func Sys_clock_get(clock_id uint32) Time
+func Sys_clock_get(clock_id uint32, out *Time) Status
//go:noescape
//go:nosplit
@@ -27,11 +27,11 @@
//go:noescape
//go:nosplit
-func Sys_ticks_get() uint64
+func Sys_ticks_get() int64
//go:noescape
//go:nosplit
-func Sys_ticks_per_second() uint64
+func Sys_ticks_per_second() int64
//go:noescape
//go:nosplit
@@ -63,6 +63,10 @@
//go:noescape
//go:nosplit
+func Sys_system_get_event(root_job Handle, kind uint32, event *Handle) Status
+
+//go:noescape
+//go:nosplit
func Sys_cache_flush(addr unsafe.Pointer, size uint, options uint32) Status
//go:noescape
@@ -139,6 +143,10 @@
//go:noescape
//go:nosplit
+func Sys_channel_write_etc(handle Handle, options uint32, bytes unsafe.Pointer, num_bytes uint32, handles *HandleDisposition, num_handles uint32) Status
+
+//go:noescape
+//go:nosplit
func Sys_channel_call_noretry(handle Handle, options uint32, deadline Time, args *ChannelCallArgs, actual_bytes *uint32, actual_handles *uint32) Status
//go:noescape
@@ -195,10 +203,6 @@
//go:noescape
//go:nosplit
-func Sys_thread_set_priority(prio int32) Status
-
-//go:noescape
-//go:nosplit
func Sys_process_exit(retcode int64)
//go:noescape
@@ -243,10 +247,22 @@
//go:noescape
//go:nosplit
+func Sys_task_create_exception_channel(handle Handle, options uint32, out *Handle) Status
+
+//go:noescape
+//go:nosplit
func Sys_task_kill(handle Handle) Status
//go:noescape
//go:nosplit
+func Sys_exception_get_thread(handle Handle, out *Handle) Status
+
+//go:noescape
+//go:nosplit
+func Sys_exception_get_process(handle Handle, out *Handle) Status
+
+//go:noescape
+//go:nosplit
func Sys_event_create(options uint32, out *Handle) Status
//go:noescape
@@ -387,7 +403,7 @@
//go:noescape
//go:nosplit
-func Sys_profile_create(root_job Handle, profile *int, out *Handle) Status
+func Sys_profile_create(root_job Handle, options uint32, profile *int, out *Handle) Status
//go:noescape
//go:nosplit
diff --git a/src/syscall/zx/syscalls_fuchsia_amd64.s b/src/syscall/zx/syscalls_fuchsia_amd64.s
index dbcd1dd..d039c0f 100644
--- a/src/syscall/zx/syscalls_fuchsia_amd64.s
+++ b/src/syscall/zx/syscalls_fuchsia_amd64.s
@@ -6,7 +6,7 @@
// Generated by mkfuchsia.go, do not edit.
#include "textflag.h"
-// func Sys_clock_get(clock_id uint32) Time
+// func Sys_clock_get(clock_id uint32, out *Time) Status
TEXT ·Sys_clock_get(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_clock_get(SB)
@@ -22,11 +22,11 @@
TEXT ·Sys_nanosleep(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_nanosleep(SB)
-// func Sys_ticks_get() uint64
+// func Sys_ticks_get() int64
TEXT ·Sys_ticks_get(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_ticks_get(SB)
-// func Sys_ticks_per_second() uint64
+// func Sys_ticks_per_second() int64
TEXT ·Sys_ticks_per_second(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_ticks_per_second(SB)
@@ -58,6 +58,10 @@
TEXT ·sys_system_get_features(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_system_get_features(SB)
+// func Sys_system_get_event(root_job Handle, kind uint32, event *Handle) Status
+TEXT ·Sys_system_get_event(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_system_get_event(SB)
+
// func Sys_cache_flush(addr unsafe.Pointer, size uint, options uint32) Status
TEXT ·Sys_cache_flush(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_cache_flush(SB)
@@ -134,6 +138,10 @@
TEXT ·sys_channel_write(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_channel_write(SB)
+// func Sys_channel_write_etc(handle Handle, options uint32, bytes unsafe.Pointer, num_bytes uint32, handles *HandleDisposition, num_handles uint32) Status
+TEXT ·Sys_channel_write_etc(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_channel_write_etc(SB)
+
// func Sys_channel_call_noretry(handle Handle, options uint32, deadline Time, args *ChannelCallArgs, actual_bytes *uint32, actual_handles *uint32) Status
TEXT ·Sys_channel_call_noretry(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_channel_call_noretry(SB)
@@ -234,10 +242,22 @@
TEXT ·Sys_task_resume_from_exception(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_task_resume_from_exception(SB)
+// func Sys_task_create_exception_channel(handle Handle, options uint32, out *Handle) Status
+TEXT ·Sys_task_create_exception_channel(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_task_create_exception_channel(SB)
+
// func Sys_task_kill(handle Handle) Status
TEXT ·Sys_task_kill(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_task_kill(SB)
+// func Sys_exception_get_thread(handle Handle, out *Handle) Status
+TEXT ·Sys_exception_get_thread(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_exception_get_thread(SB)
+
+// func Sys_exception_get_process(handle Handle, out *Handle) Status
+TEXT ·Sys_exception_get_process(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_exception_get_process(SB)
+
// func Sys_event_create(options uint32, out *Handle) Status
TEXT ·Sys_event_create(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_event_create(SB)
@@ -378,7 +398,7 @@
TEXT ·Sys_fifo_write(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_fifo_write(SB)
-// func Sys_profile_create(root_job Handle, profile *int, out *Handle) Status
+// func Sys_profile_create(root_job Handle, options uint32, profile *int, out *Handle) Status
TEXT ·Sys_profile_create(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_profile_create(SB)
diff --git a/src/syscall/zx/syscalls_fuchsia_arm64.s b/src/syscall/zx/syscalls_fuchsia_arm64.s
index dbcd1dd..d039c0f 100644
--- a/src/syscall/zx/syscalls_fuchsia_arm64.s
+++ b/src/syscall/zx/syscalls_fuchsia_arm64.s
@@ -6,7 +6,7 @@
// Generated by mkfuchsia.go, do not edit.
#include "textflag.h"
-// func Sys_clock_get(clock_id uint32) Time
+// func Sys_clock_get(clock_id uint32, out *Time) Status
TEXT ·Sys_clock_get(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_clock_get(SB)
@@ -22,11 +22,11 @@
TEXT ·Sys_nanosleep(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_nanosleep(SB)
-// func Sys_ticks_get() uint64
+// func Sys_ticks_get() int64
TEXT ·Sys_ticks_get(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_ticks_get(SB)
-// func Sys_ticks_per_second() uint64
+// func Sys_ticks_per_second() int64
TEXT ·Sys_ticks_per_second(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_ticks_per_second(SB)
@@ -58,6 +58,10 @@
TEXT ·sys_system_get_features(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_system_get_features(SB)
+// func Sys_system_get_event(root_job Handle, kind uint32, event *Handle) Status
+TEXT ·Sys_system_get_event(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_system_get_event(SB)
+
// func Sys_cache_flush(addr unsafe.Pointer, size uint, options uint32) Status
TEXT ·Sys_cache_flush(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_cache_flush(SB)
@@ -134,6 +138,10 @@
TEXT ·sys_channel_write(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_channel_write(SB)
+// func Sys_channel_write_etc(handle Handle, options uint32, bytes unsafe.Pointer, num_bytes uint32, handles *HandleDisposition, num_handles uint32) Status
+TEXT ·Sys_channel_write_etc(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_channel_write_etc(SB)
+
// func Sys_channel_call_noretry(handle Handle, options uint32, deadline Time, args *ChannelCallArgs, actual_bytes *uint32, actual_handles *uint32) Status
TEXT ·Sys_channel_call_noretry(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_channel_call_noretry(SB)
@@ -234,10 +242,22 @@
TEXT ·Sys_task_resume_from_exception(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_task_resume_from_exception(SB)
+// func Sys_task_create_exception_channel(handle Handle, options uint32, out *Handle) Status
+TEXT ·Sys_task_create_exception_channel(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_task_create_exception_channel(SB)
+
// func Sys_task_kill(handle Handle) Status
TEXT ·Sys_task_kill(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_task_kill(SB)
+// func Sys_exception_get_thread(handle Handle, out *Handle) Status
+TEXT ·Sys_exception_get_thread(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_exception_get_thread(SB)
+
+// func Sys_exception_get_process(handle Handle, out *Handle) Status
+TEXT ·Sys_exception_get_process(SB),NOSPLIT,$0
+ JMP runtime·vdsoCall_zx_exception_get_process(SB)
+
// func Sys_event_create(options uint32, out *Handle) Status
TEXT ·Sys_event_create(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_event_create(SB)
@@ -378,7 +398,7 @@
TEXT ·Sys_fifo_write(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_fifo_write(SB)
-// func Sys_profile_create(root_job Handle, profile *int, out *Handle) Status
+// func Sys_profile_create(root_job Handle, options uint32, profile *int, out *Handle) Status
TEXT ·Sys_profile_create(SB),NOSPLIT,$0
JMP runtime·vdsoCall_zx_profile_create(SB)