blob: 7329f381722faf2562b9778c164d760545e8b681 [file] [log] [blame]
// Copyright 2016 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Zircon system calls for the Fuchsia OS.
// Generated by mkfuchsia.go, do not edit.
#include "textflag.h"
// func Sys_clock_get(clock_id uint32) Time
TEXT ·Sys_clock_get(SB),NOSPLIT,$0-16
MOVW clock_id+0(FP), R0
BL vdso_zx_clock_get(SB)
MOVD R0, ret+8(FP)
RET
// func Sys_nanosleep(deadline Time) Status
TEXT ·Sys_nanosleep(SB),NOSPLIT,$0-12
MOVD deadline+0(FP), R0
BL vdso_zx_nanosleep(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_ticks_get() uint64
TEXT ·Sys_ticks_get(SB),NOSPLIT,$0-8
BL vdso_zx_ticks_get(SB)
MOVD R0, ret+0(FP)
RET
// func Sys_ticks_per_second() uint64
TEXT ·Sys_ticks_per_second(SB),NOSPLIT,$0-8
BL vdso_zx_ticks_per_second(SB)
MOVD R0, ret+0(FP)
RET
// func Sys_deadline_after(nanoseconds Duration) Time
TEXT ·Sys_deadline_after(SB),NOSPLIT,$0-16
MOVD nanoseconds+0(FP), R0
BL vdso_zx_deadline_after(SB)
MOVD R0, ret+8(FP)
RET
// func Sys_clock_adjust(handle Handle, clock_id uint32, offset int64) Status
TEXT ·Sys_clock_adjust(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW clock_id+4(FP), R1
MOVD offset+8(FP), R2
BL vdso_zx_clock_adjust(SB)
MOVW R0, ret+16(FP)
RET
// func sys_system_get_dcache_line_size() uint32
TEXT ·sys_system_get_dcache_line_size(SB),NOSPLIT,$0-4
BL vdso_zx_system_get_dcache_line_size(SB)
MOVW R0, ret+0(FP)
RET
// func Sys_system_get_num_cpus() uint32
TEXT ·Sys_system_get_num_cpus(SB),NOSPLIT,$0-4
BL vdso_zx_system_get_num_cpus(SB)
MOVW R0, ret+0(FP)
RET
// func Sys_system_get_version(version *uint8, version_len uint32) Status
TEXT ·Sys_system_get_version(SB),NOSPLIT,$0-20
MOVD version+0(FP), R0
MOVW version_len+8(FP), R1
BL vdso_zx_system_get_version(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_system_get_physmem() uint64
TEXT ·Sys_system_get_physmem(SB),NOSPLIT,$0-8
BL vdso_zx_system_get_physmem(SB)
MOVD R0, ret+0(FP)
RET
// func sys_system_get_features(kind uint32, out *uint32) Status
TEXT ·sys_system_get_features(SB),NOSPLIT,$0-20
MOVW kind+0(FP), R0
MOVD out+8(FP), R1
BL vdso_zx_system_get_features(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_cache_flush(addr unsafe.Pointer, len uint, options uint32) Status
TEXT ·Sys_cache_flush(SB),NOSPLIT,$0-28
MOVD addr+0(FP), R0
MOVD len+8(FP), R1
MOVW options+16(FP), R2
BL vdso_zx_cache_flush(SB)
MOVW R0, ret+24(FP)
RET
// func sys_handle_close(handle Handle) Status
TEXT ·sys_handle_close(SB),NOSPLIT,$0-12
MOVW handle+0(FP), R0
BL vdso_zx_handle_close(SB)
MOVW R0, ret+8(FP)
RET
// func sys_handle_duplicate(handle Handle, rights Rights, out *Handle) Status
TEXT ·sys_handle_duplicate(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW rights+4(FP), R1
MOVD out+8(FP), R2
BL vdso_zx_handle_duplicate(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_handle_replace(handle Handle, rights Rights, out *Handle) Status
TEXT ·Sys_handle_replace(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW rights+4(FP), R1
MOVD out+8(FP), R2
BL vdso_zx_handle_replace(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_object_wait_one(handle Handle, waitfor Signals, deadline Time, observed *Signals) Status
TEXT ·Sys_object_wait_one(SB),NOSPLIT,$0-28
CALL runtime·entersyscall(SB)
MOVW handle+0(FP), R0
MOVW waitfor+4(FP), R1
MOVD deadline+8(FP), R2
MOVD observed+16(FP), R3
BL vdso_zx_object_wait_one(SB)
MOVW R0, ret+24(FP)
BL runtime·exitsyscall(SB)
RET
// func sys_object_wait_many(items *WaitItem, count uint32, deadline Time) Status
TEXT ·sys_object_wait_many(SB),NOSPLIT,$0-28
CALL runtime·entersyscall(SB)
MOVD items+0(FP), R0
MOVW count+8(FP), R1
MOVD deadline+16(FP), R2
BL vdso_zx_object_wait_many(SB)
MOVW R0, ret+24(FP)
BL runtime·exitsyscall(SB)
RET
// func Sys_object_wait_async(handle Handle, port_handle Handle, key uint64, signals Signals, options uint32) Status
TEXT ·Sys_object_wait_async(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW port_handle+4(FP), R1
MOVD key+8(FP), R2
MOVW signals+16(FP), R3
MOVW options+20(FP), R4
BL vdso_zx_object_wait_async(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_object_signal(handle Handle, clear_mask uint32, set_mask uint32) Status
TEXT ·Sys_object_signal(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW clear_mask+4(FP), R1
MOVW set_mask+8(FP), R2
BL vdso_zx_object_signal(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_object_signal_peer(handle Handle, clear_mask uint32, set_mask uint32) Status
TEXT ·Sys_object_signal_peer(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW clear_mask+4(FP), R1
MOVW set_mask+8(FP), R2
BL vdso_zx_object_signal_peer(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_object_get_property(handle Handle, property uint32, value unsafe.Pointer, size uint) Status
TEXT ·Sys_object_get_property(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW property+4(FP), R1
MOVD value+8(FP), R2
MOVD size+16(FP), R3
BL vdso_zx_object_get_property(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_object_set_property(handle Handle, property uint32, value unsafe.Pointer, size uint) Status
TEXT ·Sys_object_set_property(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW property+4(FP), R1
MOVD value+8(FP), R2
MOVD size+16(FP), R3
BL vdso_zx_object_set_property(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_object_set_cookie(handle Handle, scope Handle, cookie uint64) Status
TEXT ·Sys_object_set_cookie(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW scope+4(FP), R1
MOVD cookie+8(FP), R2
BL vdso_zx_object_set_cookie(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_object_get_cookie(handle Handle, scope Handle, cookie *uint64) Status
TEXT ·Sys_object_get_cookie(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW scope+4(FP), R1
MOVD cookie+8(FP), R2
BL vdso_zx_object_get_cookie(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_object_get_info(handle Handle, topic uint32, buffer unsafe.Pointer, buffer_size uint, actual_count *uint, avail_count *uint) Status
TEXT ·Sys_object_get_info(SB),NOSPLIT,$0-44
MOVW handle+0(FP), R0
MOVW topic+4(FP), R1
MOVD buffer+8(FP), R2
MOVD buffer_size+16(FP), R3
MOVD actual_count+24(FP), R4
MOVD avail_count+32(FP), R5
BL vdso_zx_object_get_info(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_object_get_child(handle Handle, koid uint64, rights Rights, out *Handle) Status
TEXT ·Sys_object_get_child(SB),NOSPLIT,$0-36
MOVW handle+0(FP), R0
MOVD koid+8(FP), R1
MOVW rights+16(FP), R2
MOVD out+24(FP), R3
BL vdso_zx_object_get_child(SB)
MOVW R0, ret+32(FP)
RET
// func sys_object_set_profile(handle Handle, profile Handle, options uint32) Status
TEXT ·sys_object_set_profile(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW profile+4(FP), R1
MOVW options+8(FP), R2
BL vdso_zx_object_set_profile(SB)
MOVW R0, ret+16(FP)
RET
// func sys_channel_create(options uint32, out0 *Handle, out1 *Handle) Status
TEXT ·sys_channel_create(SB),NOSPLIT,$0-28
MOVW options+0(FP), R0
MOVD out0+8(FP), R1
MOVD out1+16(FP), R2
BL vdso_zx_channel_create(SB)
MOVW R0, ret+24(FP)
RET
// func sys_channel_read(handle Handle, options uint32, bytes unsafe.Pointer, handles *Handle, num_bytes uint32, num_handles uint32, actual_bytes *uint32, actual_handles *uint32) Status
TEXT ·sys_channel_read(SB),NOSPLIT,$0-52
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD bytes+8(FP), R2
MOVD handles+16(FP), R3
MOVW num_bytes+24(FP), R4
MOVW num_handles+28(FP), R5
MOVD actual_bytes+32(FP), R6
MOVD actual_handles+40(FP), R7
BL vdso_zx_channel_read(SB)
MOVW R0, ret+48(FP)
RET
// func sys_channel_read_etc(handle Handle, options uint32, bytes unsafe.Pointer, handles *int, num_bytes uint32, num_handles uint32, actual_bytes *uint32, actual_handles *uint32) Status
TEXT ·sys_channel_read_etc(SB),NOSPLIT,$0-52
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD bytes+8(FP), R2
MOVD handles+16(FP), R3
MOVW num_bytes+24(FP), R4
MOVW num_handles+28(FP), R5
MOVD actual_bytes+32(FP), R6
MOVD actual_handles+40(FP), R7
BL vdso_zx_channel_read_etc(SB)
MOVW R0, ret+48(FP)
RET
// func sys_channel_write(handle Handle, options uint32, bytes unsafe.Pointer, num_bytes uint32, handles *Handle, num_handles uint32) Status
TEXT ·sys_channel_write(SB),NOSPLIT,$0-44
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(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_channel_call_noretry(handle Handle, options uint32, deadline Time, args *ChannelCallArgs, actual_bytes *uint32, actual_handles *uint32, read_status *Status) Status
TEXT ·Sys_channel_call_noretry(SB),NOSPLIT,$0-52
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD deadline+8(FP), R2
MOVD args+16(FP), R3
MOVD actual_bytes+24(FP), R4
MOVD actual_handles+32(FP), R5
MOVD read_status+40(FP), R6
BL vdso_zx_channel_call_noretry(SB)
MOVW R0, ret+48(FP)
RET
// func Sys_channel_call_finish(deadline Time, args *ChannelCallArgs, actual_bytes *uint32, actual_handles *uint32, read_status *Status) Status
TEXT ·Sys_channel_call_finish(SB),NOSPLIT,$0-44
MOVD deadline+0(FP), R0
MOVD args+8(FP), R1
MOVD actual_bytes+16(FP), R2
MOVD actual_handles+24(FP), R3
MOVD read_status+32(FP), R4
BL vdso_zx_channel_call_finish(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_channel_call(handle Handle, options uint32, deadline Time, args *ChannelCallArgs, actual_bytes *uint32, actual_handles *uint32, read_status *Status) Status
TEXT ·Sys_channel_call(SB),NOSPLIT,$0-52
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD deadline+8(FP), R2
MOVD args+16(FP), R3
MOVD actual_bytes+24(FP), R4
MOVD actual_handles+32(FP), R5
MOVD read_status+40(FP), R6
BL vdso_zx_channel_call(SB)
MOVW R0, ret+48(FP)
RET
// func sys_socket_create(options uint32, out0 *Handle, out1 *Handle) Status
TEXT ·sys_socket_create(SB),NOSPLIT,$0-28
MOVW options+0(FP), R0
MOVD out0+8(FP), R1
MOVD out1+16(FP), R2
BL vdso_zx_socket_create(SB)
MOVW R0, ret+24(FP)
RET
// func sys_socket_write(handle Handle, options uint32, buffer unsafe.Pointer, size uint, actual *uint) Status
TEXT ·sys_socket_write(SB),NOSPLIT,$0-36
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD buffer+8(FP), R2
MOVD size+16(FP), R3
MOVD actual+24(FP), R4
BL vdso_zx_socket_write(SB)
MOVW R0, ret+32(FP)
RET
// func sys_socket_read(handle Handle, options uint32, buffer unsafe.Pointer, size uint, actual *uint) Status
TEXT ·sys_socket_read(SB),NOSPLIT,$0-36
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD buffer+8(FP), R2
MOVD size+16(FP), R3
MOVD actual+24(FP), R4
BL vdso_zx_socket_read(SB)
MOVW R0, ret+32(FP)
RET
// func sys_socket_share(handle Handle, socket_to_share Handle) Status
TEXT ·sys_socket_share(SB),NOSPLIT,$0-12
MOVW handle+0(FP), R0
MOVW socket_to_share+4(FP), R1
BL vdso_zx_socket_share(SB)
MOVW R0, ret+8(FP)
RET
// func sys_socket_accept(handle Handle, out_socket *Handle) Status
TEXT ·sys_socket_accept(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVD out_socket+8(FP), R1
BL vdso_zx_socket_accept(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_thread_exit()
TEXT ·Sys_thread_exit(SB),NOSPLIT,$0-0
BL vdso_zx_thread_exit(SB)
RET
// func Sys_thread_create(process Handle, name *uint8, name_len uint32, options uint32, out *Handle) Status
TEXT ·Sys_thread_create(SB),NOSPLIT,$0-36
MOVW process+0(FP), R0
MOVD name+8(FP), R1
MOVW name_len+16(FP), R2
MOVW options+20(FP), R3
MOVD out+24(FP), R4
BL vdso_zx_thread_create(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_thread_start(handle Handle, thread_entry uintptr, stack uintptr, arg1 uintptr, arg2 uintptr) Status
TEXT ·Sys_thread_start(SB),NOSPLIT,$0-44
MOVW handle+0(FP), R0
MOVD thread_entry+8(FP), R1
MOVD stack+16(FP), R2
MOVD arg1+24(FP), R3
MOVD arg2+32(FP), R4
BL vdso_zx_thread_start(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_thread_read_state(handle Handle, kind uint32, buffer unsafe.Pointer, len uint) Status
TEXT ·Sys_thread_read_state(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW kind+4(FP), R1
MOVD buffer+8(FP), R2
MOVD len+16(FP), R3
BL vdso_zx_thread_read_state(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_thread_write_state(handle Handle, kind uint32, buffer unsafe.Pointer, buffer_len uint) Status
TEXT ·Sys_thread_write_state(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW kind+4(FP), R1
MOVD buffer+8(FP), R2
MOVD buffer_len+16(FP), R3
BL vdso_zx_thread_write_state(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_thread_set_priority(prio int32) Status
TEXT ·Sys_thread_set_priority(SB),NOSPLIT,$0-12
MOVW prio+0(FP), R0
BL vdso_zx_thread_set_priority(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_process_exit(retcode int)
TEXT ·Sys_process_exit(SB),NOSPLIT,$0-8
MOVD retcode+0(FP), R0
BL vdso_zx_process_exit(SB)
RET
// func Sys_process_create(job Handle, name *uint8, name_len uint32, options uint32, proc_handle *Handle, vmar_handle *Handle) Status
TEXT ·Sys_process_create(SB),NOSPLIT,$0-44
MOVW job+0(FP), R0
MOVD name+8(FP), R1
MOVW name_len+16(FP), R2
MOVW options+20(FP), R3
MOVD proc_handle+24(FP), R4
MOVD vmar_handle+32(FP), R5
BL vdso_zx_process_create(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_process_start(process_handle Handle, thread_handle Handle, entry uintptr, stack uintptr, arg_handle Handle, arg2 uintptr) Status
TEXT ·Sys_process_start(SB),NOSPLIT,$0-44
MOVW process_handle+0(FP), R0
MOVW thread_handle+4(FP), R1
MOVD entry+8(FP), R2
MOVD stack+16(FP), R3
MOVW arg_handle+24(FP), R4
MOVD arg2+32(FP), R5
BL vdso_zx_process_start(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_process_read_memory(proc Handle, vaddr uintptr, buffer unsafe.Pointer, len uint, actual *uint) Status
TEXT ·Sys_process_read_memory(SB),NOSPLIT,$0-44
MOVW proc+0(FP), R0
MOVD vaddr+8(FP), R1
MOVD buffer+16(FP), R2
MOVD len+24(FP), R3
MOVD actual+32(FP), R4
BL vdso_zx_process_read_memory(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_process_write_memory(proc Handle, vaddr uintptr, buffer unsafe.Pointer, len uint, actual *uint) Status
TEXT ·Sys_process_write_memory(SB),NOSPLIT,$0-44
MOVW proc+0(FP), R0
MOVD vaddr+8(FP), R1
MOVD buffer+16(FP), R2
MOVD len+24(FP), R3
MOVD actual+32(FP), R4
BL vdso_zx_process_write_memory(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_job_create(parent_job Handle, options uint32, out *Handle) Status
TEXT ·Sys_job_create(SB),NOSPLIT,$0-20
MOVW parent_job+0(FP), R0
MOVW options+4(FP), R1
MOVD out+8(FP), R2
BL vdso_zx_job_create(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_job_set_policy(job Handle, options uint32, topic uint32, policy unsafe.Pointer, count uint32) Status
TEXT ·Sys_job_set_policy(SB),NOSPLIT,$0-36
MOVW job+0(FP), R0
MOVW options+4(FP), R1
MOVW topic+8(FP), R2
MOVD policy+16(FP), R3
MOVW count+24(FP), R4
BL vdso_zx_job_set_policy(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_task_bind_exception_port(object Handle, eport Handle, key uint64, options uint32) Status
TEXT ·Sys_task_bind_exception_port(SB),NOSPLIT,$0-28
MOVW object+0(FP), R0
MOVW eport+4(FP), R1
MOVD key+8(FP), R2
MOVW options+16(FP), R3
BL vdso_zx_task_bind_exception_port(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_task_suspend(task_handle Handle) Status
TEXT ·Sys_task_suspend(SB),NOSPLIT,$0-12
MOVW task_handle+0(FP), R0
BL vdso_zx_task_suspend(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_task_resume(task_handle Handle, options uint32) Status
TEXT ·Sys_task_resume(SB),NOSPLIT,$0-12
MOVW task_handle+0(FP), R0
MOVW options+4(FP), R1
BL vdso_zx_task_resume(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_task_suspend_token(task_handle Handle, token *Handle) Status
TEXT ·Sys_task_suspend_token(SB),NOSPLIT,$0-20
MOVW task_handle+0(FP), R0
MOVD token+8(FP), R1
BL vdso_zx_task_suspend_token(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_task_resume_from_exception(task_handle Handle, eport Handle, options uint32) Status
TEXT ·Sys_task_resume_from_exception(SB),NOSPLIT,$0-20
MOVW task_handle+0(FP), R0
MOVW eport+4(FP), R1
MOVW options+8(FP), R2
BL vdso_zx_task_resume_from_exception(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_task_kill(task_handle Handle) Status
TEXT ·Sys_task_kill(SB),NOSPLIT,$0-12
MOVW task_handle+0(FP), R0
BL vdso_zx_task_kill(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_event_create(options uint32, out *Handle) Status
TEXT ·Sys_event_create(SB),NOSPLIT,$0-20
MOVW options+0(FP), R0
MOVD out+8(FP), R1
BL vdso_zx_event_create(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_eventpair_create(options uint32, out0 *Handle, out1 *Handle) Status
TEXT ·Sys_eventpair_create(SB),NOSPLIT,$0-28
MOVW options+0(FP), R0
MOVD out0+8(FP), R1
MOVD out1+16(FP), R2
BL vdso_zx_eventpair_create(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_futex_wait(value_ptr *int, current_value int, deadline Time) Status
TEXT ·Sys_futex_wait(SB),NOSPLIT,$0-28
MOVD value_ptr+0(FP), R0
MOVD current_value+8(FP), R1
MOVD deadline+16(FP), R2
BL vdso_zx_futex_wait(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_futex_wake(value_ptr *int, count uint32) Status
TEXT ·Sys_futex_wake(SB),NOSPLIT,$0-20
MOVD value_ptr+0(FP), R0
MOVW count+8(FP), R1
BL vdso_zx_futex_wake(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_futex_requeue(wake_ptr *int, wake_count uint32, current_value int, requeue_ptr *int, requeue_count uint32) Status
TEXT ·Sys_futex_requeue(SB),NOSPLIT,$0-44
MOVD wake_ptr+0(FP), R0
MOVW wake_count+8(FP), R1
MOVD current_value+16(FP), R2
MOVD requeue_ptr+24(FP), R3
MOVW requeue_count+32(FP), R4
BL vdso_zx_futex_requeue(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_port_create(options uint32, out *Handle) Status
TEXT ·Sys_port_create(SB),NOSPLIT,$0-20
MOVW options+0(FP), R0
MOVD out+8(FP), R1
BL vdso_zx_port_create(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_port_queue(handle Handle, packet *int, count uint) Status
TEXT ·Sys_port_queue(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVD packet+8(FP), R1
MOVD count+16(FP), R2
BL vdso_zx_port_queue(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_port_wait(handle Handle, deadline Time, packet *int, count uint) Status
TEXT ·Sys_port_wait(SB),NOSPLIT,$0-36
CALL runtime·entersyscall(SB)
MOVW handle+0(FP), R0
MOVD deadline+8(FP), R1
MOVD packet+16(FP), R2
MOVD count+24(FP), R3
BL vdso_zx_port_wait(SB)
MOVW R0, ret+32(FP)
BL runtime·exitsyscall(SB)
RET
// func Sys_port_cancel(handle Handle, source Handle, key uint64) Status
TEXT ·Sys_port_cancel(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW source+4(FP), R1
MOVD key+8(FP), R2
BL vdso_zx_port_cancel(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_timer_create(options uint32, clock_id uint32, out *Handle) Status
TEXT ·Sys_timer_create(SB),NOSPLIT,$0-20
MOVW options+0(FP), R0
MOVW clock_id+4(FP), R1
MOVD out+8(FP), R2
BL vdso_zx_timer_create(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_timer_set(handle Handle, deadline Time, slack Duration) Status
TEXT ·Sys_timer_set(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVD deadline+8(FP), R1
MOVD slack+16(FP), R2
BL vdso_zx_timer_set(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_timer_cancel(handle Handle) Status
TEXT ·Sys_timer_cancel(SB),NOSPLIT,$0-12
MOVW handle+0(FP), R0
BL vdso_zx_timer_cancel(SB)
MOVW R0, ret+8(FP)
RET
// func sys_vmo_create(size uint64, options uint32, out *Handle) Status
TEXT ·sys_vmo_create(SB),NOSPLIT,$0-28
MOVD size+0(FP), R0
MOVW options+8(FP), R1
MOVD out+16(FP), R2
BL vdso_zx_vmo_create(SB)
MOVW R0, ret+24(FP)
RET
// func sys_vmo_read(handle Handle, data unsafe.Pointer, offset uint64, len uint) Status
TEXT ·sys_vmo_read(SB),NOSPLIT,$0-36
MOVW handle+0(FP), R0
MOVD data+8(FP), R1
MOVD offset+16(FP), R2
MOVD len+24(FP), R3
BL vdso_zx_vmo_read(SB)
MOVW R0, ret+32(FP)
RET
// func sys_vmo_write(handle Handle, data unsafe.Pointer, offset uint64, len uint) Status
TEXT ·sys_vmo_write(SB),NOSPLIT,$0-36
MOVW handle+0(FP), R0
MOVD data+8(FP), R1
MOVD offset+16(FP), R2
MOVD len+24(FP), R3
BL vdso_zx_vmo_write(SB)
MOVW R0, ret+32(FP)
RET
// func sys_vmo_get_size(handle Handle, size *uint64) Status
TEXT ·sys_vmo_get_size(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVD size+8(FP), R1
BL vdso_zx_vmo_get_size(SB)
MOVW R0, ret+16(FP)
RET
// func sys_vmo_set_size(handle Handle, size uint64) Status
TEXT ·sys_vmo_set_size(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVD size+8(FP), R1
BL vdso_zx_vmo_set_size(SB)
MOVW R0, ret+16(FP)
RET
// func sys_vmo_op_range(handle Handle, op uint32, offset uint64, size uint64, buffer unsafe.Pointer, buffer_size uint) Status
TEXT ·sys_vmo_op_range(SB),NOSPLIT,$0-44
MOVW handle+0(FP), R0
MOVW op+4(FP), R1
MOVD offset+8(FP), R2
MOVD size+16(FP), R3
MOVD buffer+24(FP), R4
MOVD buffer_size+32(FP), R5
BL vdso_zx_vmo_op_range(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_vmo_clone(handle Handle, options uint32, offset uint64, size uint64, out *Handle) Status
TEXT ·Sys_vmo_clone(SB),NOSPLIT,$0-36
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD offset+8(FP), R2
MOVD size+16(FP), R3
MOVD out+24(FP), R4
BL vdso_zx_vmo_clone(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_vmo_set_cache_policy(handle Handle, cache_policy uint32) Status
TEXT ·Sys_vmo_set_cache_policy(SB),NOSPLIT,$0-12
MOVW handle+0(FP), R0
MOVW cache_policy+4(FP), R1
BL vdso_zx_vmo_set_cache_policy(SB)
MOVW R0, ret+8(FP)
RET
// func sys_vmar_allocate(parent_vmar_handle Handle, offset uint, size uint, map_flags uint32, child_vmar *Handle, child_addr *uintptr) Status
TEXT ·sys_vmar_allocate(SB),NOSPLIT,$0-52
MOVW parent_vmar_handle+0(FP), R0
MOVD offset+8(FP), R1
MOVD size+16(FP), R2
MOVW map_flags+24(FP), R3
MOVD child_vmar+32(FP), R4
MOVD child_addr+40(FP), R5
BL vdso_zx_vmar_allocate(SB)
MOVW R0, ret+48(FP)
RET
// func sys_vmar_destroy(vmar_handle Handle) Status
TEXT ·sys_vmar_destroy(SB),NOSPLIT,$0-12
MOVW vmar_handle+0(FP), R0
BL vdso_zx_vmar_destroy(SB)
MOVW R0, ret+8(FP)
RET
// func sys_vmar_map(vmar_handle Handle, vmar_offset uint, vmo_handle Handle, vmo_offset uint64, len uint, map_flags uint32, mapped_addr *uintptr) Status
TEXT ·sys_vmar_map(SB),NOSPLIT,$0-60
MOVW vmar_handle+0(FP), R0
MOVD vmar_offset+8(FP), R1
MOVW vmo_handle+16(FP), R2
MOVD vmo_offset+24(FP), R3
MOVD len+32(FP), R4
MOVW map_flags+40(FP), R5
MOVD mapped_addr+48(FP), R6
BL vdso_zx_vmar_map(SB)
MOVW R0, ret+56(FP)
RET
// func sys_vmar_unmap(vmar_handle Handle, addr uintptr, len uint) Status
TEXT ·sys_vmar_unmap(SB),NOSPLIT,$0-28
MOVW vmar_handle+0(FP), R0
MOVD addr+8(FP), R1
MOVD len+16(FP), R2
BL vdso_zx_vmar_unmap(SB)
MOVW R0, ret+24(FP)
RET
// func sys_vmar_protect(vmar_handle Handle, addr uintptr, len uint, prot_flags uint32) Status
TEXT ·sys_vmar_protect(SB),NOSPLIT,$0-36
MOVW vmar_handle+0(FP), R0
MOVD addr+8(FP), R1
MOVD len+16(FP), R2
MOVW prot_flags+24(FP), R3
BL vdso_zx_vmar_protect(SB)
MOVW R0, ret+32(FP)
RET
// func sys_cprng_draw_new(buffer unsafe.Pointer, len uint) Status
TEXT ·sys_cprng_draw_new(SB),NOSPLIT,$0-28
MOVD buffer+0(FP), R0
MOVD len+8(FP), R1
BL vdso_zx_cprng_draw_new(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_cprng_add_entropy(buffer unsafe.Pointer, len uint) Status
TEXT ·Sys_cprng_add_entropy(SB),NOSPLIT,$0-20
MOVD buffer+0(FP), R0
MOVD len+8(FP), R1
BL vdso_zx_cprng_add_entropy(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_fifo_create(elem_count uint32, elem_size uint32, options uint32, out0 *Handle, out1 *Handle) Status
TEXT ·Sys_fifo_create(SB),NOSPLIT,$0-36
MOVW elem_count+0(FP), R0
MOVW elem_size+4(FP), R1
MOVW options+8(FP), R2
MOVD out0+16(FP), R3
MOVD out1+24(FP), R4
BL vdso_zx_fifo_create(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_fifo_read(handle Handle, elem_size uint, data unsafe.Pointer, count uint, actual_count *uint) Status
TEXT ·Sys_fifo_read(SB),NOSPLIT,$0-44
MOVW handle+0(FP), R0
MOVD elem_size+8(FP), R1
MOVD data+16(FP), R2
MOVD count+24(FP), R3
MOVD actual_count+32(FP), R4
BL vdso_zx_fifo_read(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_fifo_write(handle Handle, elem_size uint, data unsafe.Pointer, count uint, actual_count *uint) Status
TEXT ·Sys_fifo_write(SB),NOSPLIT,$0-44
MOVW handle+0(FP), R0
MOVD elem_size+8(FP), R1
MOVD data+16(FP), R2
MOVD count+24(FP), R3
MOVD actual_count+32(FP), R4
BL vdso_zx_fifo_write(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_profile_create(resource Handle, profile *int, out *Handle) Status
TEXT ·Sys_profile_create(SB),NOSPLIT,$0-28
MOVW resource+0(FP), R0
MOVD profile+8(FP), R1
MOVD out+16(FP), R2
BL vdso_zx_profile_create(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_vmar_unmap_handle_close_thread_exit(vmar_handle Handle, addr uintptr, len uint, handle Handle) Status
TEXT ·Sys_vmar_unmap_handle_close_thread_exit(SB),NOSPLIT,$0-36
MOVW vmar_handle+0(FP), R0
MOVD addr+8(FP), R1
MOVD len+16(FP), R2
MOVW handle+24(FP), R3
BL vdso_zx_vmar_unmap_handle_close_thread_exit(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_futex_wake_handle_close_thread_exit(value_ptr *int, count uint32, new_value int, handle Handle)
TEXT ·Sys_futex_wake_handle_close_thread_exit(SB),NOSPLIT,$0-32
MOVD value_ptr+0(FP), R0
MOVW count+8(FP), R1
MOVD new_value+16(FP), R2
MOVW handle+24(FP), R3
BL vdso_zx_futex_wake_handle_close_thread_exit(SB)
RET
// func Sys_log_create(options uint32, out *Handle) Status
TEXT ·Sys_log_create(SB),NOSPLIT,$0-20
MOVW options+0(FP), R0
MOVD out+8(FP), R1
BL vdso_zx_log_create(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_log_write(handle Handle, len uint32, buffer unsafe.Pointer, options uint32) Status
TEXT ·Sys_log_write(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW len+4(FP), R1
MOVD buffer+8(FP), R2
MOVW options+16(FP), R3
BL vdso_zx_log_write(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_log_read(handle Handle, len uint32, buffer unsafe.Pointer, options uint32) Status
TEXT ·Sys_log_read(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW len+4(FP), R1
MOVD buffer+8(FP), R2
MOVW options+16(FP), R3
BL vdso_zx_log_read(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_debuglog_create(resource Handle, options uint32, out *Handle) Status
TEXT ·Sys_debuglog_create(SB),NOSPLIT,$0-20
MOVW resource+0(FP), R0
MOVW options+4(FP), R1
MOVD out+8(FP), R2
BL vdso_zx_debuglog_create(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_debuglog_write(handle Handle, options uint32, buffer unsafe.Pointer, len uint) Status
TEXT ·Sys_debuglog_write(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD buffer+8(FP), R2
MOVD len+16(FP), R3
BL vdso_zx_debuglog_write(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_debuglog_read(handle Handle, options uint32, buffer unsafe.Pointer, len uint) Status
TEXT ·Sys_debuglog_read(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD buffer+8(FP), R2
MOVD len+16(FP), R3
BL vdso_zx_debuglog_read(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_ktrace_read(handle Handle, data unsafe.Pointer, offset uint32, len uint32, actual *uint32) Status
TEXT ·Sys_ktrace_read(SB),NOSPLIT,$0-36
MOVW handle+0(FP), R0
MOVD data+8(FP), R1
MOVW offset+16(FP), R2
MOVW len+20(FP), R3
MOVD actual+24(FP), R4
BL vdso_zx_ktrace_read(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_ktrace_control(handle Handle, action uint32, options uint32, ptr unsafe.Pointer) Status
TEXT ·Sys_ktrace_control(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVW action+4(FP), R1
MOVW options+8(FP), R2
MOVD ptr+16(FP), R3
BL vdso_zx_ktrace_control(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_ktrace_write(handle Handle, id uint32, arg0 uint32, arg1 uint32) Status
TEXT ·Sys_ktrace_write(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW id+4(FP), R1
MOVW arg0+8(FP), R2
MOVW arg1+12(FP), R3
BL vdso_zx_ktrace_write(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_mtrace_control(handle Handle, kind uint32, action uint32, options uint32, ptr unsafe.Pointer, size uint32) Status
TEXT ·Sys_mtrace_control(SB),NOSPLIT,$0-36
MOVW handle+0(FP), R0
MOVW kind+4(FP), R1
MOVW action+8(FP), R2
MOVW options+12(FP), R3
MOVD ptr+16(FP), R4
MOVW size+24(FP), R5
BL vdso_zx_mtrace_control(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_debug_read(handle Handle, buffer *uint8, length *uint) Status
TEXT ·Sys_debug_read(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVD buffer+8(FP), R1
MOVD length+16(FP), R2
BL vdso_zx_debug_read(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_debug_write(buffer *uint8, length uint) Status
TEXT ·Sys_debug_write(SB),NOSPLIT,$0-20
MOVD buffer+0(FP), R0
MOVD length+8(FP), R1
BL vdso_zx_debug_write(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_debug_send_command(resource_handle Handle, buffer *uint8, length uint) Status
TEXT ·Sys_debug_send_command(SB),NOSPLIT,$0-28
MOVW resource_handle+0(FP), R0
MOVD buffer+8(FP), R1
MOVD length+16(FP), R2
BL vdso_zx_debug_send_command(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_interrupt_create(src_obj Handle, src_num uint32, options uint32, out_handle *Handle) Status
TEXT ·Sys_interrupt_create(SB),NOSPLIT,$0-28
MOVW src_obj+0(FP), R0
MOVW src_num+4(FP), R1
MOVW options+8(FP), R2
MOVD out_handle+16(FP), R3
BL vdso_zx_interrupt_create(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_interrupt_bind(inth Handle, porth Handle, key uint64, options uint32) Status
TEXT ·Sys_interrupt_bind(SB),NOSPLIT,$0-28
MOVW inth+0(FP), R0
MOVW porth+4(FP), R1
MOVD key+8(FP), R2
MOVW options+16(FP), R3
BL vdso_zx_interrupt_bind(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_interrupt_wait(handle Handle, out_timestamp *Time) Status
TEXT ·Sys_interrupt_wait(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVD out_timestamp+8(FP), R1
BL vdso_zx_interrupt_wait(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_interrupt_destroy(handle Handle) Status
TEXT ·Sys_interrupt_destroy(SB),NOSPLIT,$0-12
MOVW handle+0(FP), R0
BL vdso_zx_interrupt_destroy(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_interrupt_ack(handle Handle) Status
TEXT ·Sys_interrupt_ack(SB),NOSPLIT,$0-12
MOVW handle+0(FP), R0
BL vdso_zx_interrupt_ack(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_interrupt_trigger(handle Handle, options uint32, timestamp Time) Status
TEXT ·Sys_interrupt_trigger(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW options+4(FP), R1
MOVD timestamp+8(FP), R2
BL vdso_zx_interrupt_trigger(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_mmap_device_io(handle Handle, io_addr uint32, len uint32) Status
TEXT ·Sys_mmap_device_io(SB),NOSPLIT,$0-20
MOVW handle+0(FP), R0
MOVW io_addr+4(FP), R1
MOVW len+8(FP), R2
BL vdso_zx_mmap_device_io(SB)
MOVW R0, ret+16(FP)
RET
// func Sys_vmo_create_contiguous(bti Handle, size uint, alignment_log2 uint32, out *Handle) Status
TEXT ·Sys_vmo_create_contiguous(SB),NOSPLIT,$0-36
MOVW bti+0(FP), R0
MOVD size+8(FP), R1
MOVW alignment_log2+16(FP), R2
MOVD out+24(FP), R3
BL vdso_zx_vmo_create_contiguous(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_vmo_create_physical(rsrc_handle Handle, paddr Paddr, size uint, out *Handle) Status
TEXT ·Sys_vmo_create_physical(SB),NOSPLIT,$0-36
MOVW rsrc_handle+0(FP), R0
MOVD paddr+8(FP), R1
MOVD size+16(FP), R2
MOVD out+24(FP), R3
BL vdso_zx_vmo_create_physical(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_iommu_create(rsrc_handle Handle, typ uint32, desc unsafe.Pointer, desc_len uint32, out *Handle) Status
TEXT ·Sys_iommu_create(SB),NOSPLIT,$0-36
MOVW rsrc_handle+0(FP), R0
MOVW typ+4(FP), R1
MOVD desc+8(FP), R2
MOVW desc_len+16(FP), R3
MOVD out+24(FP), R4
BL vdso_zx_iommu_create(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_bti_create(iommu Handle, options uint32, bti_id uint64, out *Handle) Status
TEXT ·Sys_bti_create(SB),NOSPLIT,$0-28
MOVW iommu+0(FP), R0
MOVW options+4(FP), R1
MOVD bti_id+8(FP), R2
MOVD out+16(FP), R3
BL vdso_zx_bti_create(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_bti_pin(bti Handle, options uint32, vmo Handle, offset uint64, size uint64, addrs *Paddr, addrs_count uint, out *Handle) Status
TEXT ·Sys_bti_pin(SB),NOSPLIT,$0-60
MOVW bti+0(FP), R0
MOVW options+4(FP), R1
MOVW vmo+8(FP), R2
MOVD offset+16(FP), R3
MOVD size+24(FP), R4
MOVD addrs+32(FP), R5
MOVD addrs_count+40(FP), R6
MOVD out+48(FP), R7
BL vdso_zx_bti_pin(SB)
MOVW R0, ret+56(FP)
RET
// func Sys_bti_release_quarantine(bti Handle) Status
TEXT ·Sys_bti_release_quarantine(SB),NOSPLIT,$0-12
MOVW bti+0(FP), R0
BL vdso_zx_bti_release_quarantine(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_pmt_unpin(pmt Handle) Status
TEXT ·Sys_pmt_unpin(SB),NOSPLIT,$0-12
MOVW pmt+0(FP), R0
BL vdso_zx_pmt_unpin(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_bootloader_fb_get_info(format *uint32, width *uint32, height *uint32, stride *uint32) Status
TEXT ·Sys_bootloader_fb_get_info(SB),NOSPLIT,$0-36
MOVD format+0(FP), R0
MOVD width+8(FP), R1
MOVD height+16(FP), R2
MOVD stride+24(FP), R3
BL vdso_zx_bootloader_fb_get_info(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_set_framebuffer(handle Handle, vaddr unsafe.Pointer, len uint32, format uint32, width uint32, height uint32, stride uint32) Status
TEXT ·Sys_set_framebuffer(SB),NOSPLIT,$0-44
MOVW handle+0(FP), R0
MOVD vaddr+8(FP), R1
MOVW len+16(FP), R2
MOVW format+20(FP), R3
MOVW width+24(FP), R4
MOVW height+28(FP), R5
MOVW stride+32(FP), R6
BL vdso_zx_set_framebuffer(SB)
MOVW R0, ret+40(FP)
RET
// func Sys_set_framebuffer_vmo(handle Handle, vmo Handle, len uint32, format uint32, width uint32, height uint32, stride uint32) Status
TEXT ·Sys_set_framebuffer_vmo(SB),NOSPLIT,$0-36
MOVW handle+0(FP), R0
MOVW vmo+4(FP), R1
MOVW len+8(FP), R2
MOVW format+12(FP), R3
MOVW width+16(FP), R4
MOVW height+20(FP), R5
MOVW stride+24(FP), R6
BL vdso_zx_set_framebuffer_vmo(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_pc_firmware_tables(handle Handle, acpi_rsdp *Paddr, smbios *Paddr) Status
TEXT ·Sys_pc_firmware_tables(SB),NOSPLIT,$0-28
MOVW handle+0(FP), R0
MOVD acpi_rsdp+8(FP), R1
MOVD smbios+16(FP), R2
BL vdso_zx_pc_firmware_tables(SB)
MOVW R0, ret+24(FP)
RET
// func Sys_smc_call(rsrc_handle Handle, arg0 uint64, arg1 uint64, arg2 uint64, arg3 uint64, out_smc_status *uint64) Status
TEXT ·Sys_smc_call(SB),NOSPLIT,$0-52
MOVW rsrc_handle+0(FP), R0
MOVD arg0+8(FP), R1
MOVD arg1+16(FP), R2
MOVD arg2+24(FP), R3
MOVD arg3+32(FP), R4
MOVD out_smc_status+40(FP), R5
BL vdso_zx_smc_call(SB)
MOVW R0, ret+48(FP)
RET
// func Sys_resource_create(parent_handle Handle, kind uint32, low uint64, high uint64, resource_out *Handle) Status
TEXT ·Sys_resource_create(SB),NOSPLIT,$0-36
MOVW parent_handle+0(FP), R0
MOVW kind+4(FP), R1
MOVD low+8(FP), R2
MOVD high+16(FP), R3
MOVD resource_out+24(FP), R4
BL vdso_zx_resource_create(SB)
MOVW R0, ret+32(FP)
RET
// func Sys_system_mexec(kernel Handle, bootimage Handle) Status
TEXT ·Sys_system_mexec(SB),NOSPLIT,$0-12
MOVW kernel+0(FP), R0
MOVW bootimage+4(FP), R1
BL vdso_zx_system_mexec(SB)
MOVW R0, ret+8(FP)
RET
// func Sys_system_powerctl(root_rsrc Handle, cmd uint32, arg *int) Status
TEXT ·Sys_system_powerctl(SB),NOSPLIT,$0-20
MOVW root_rsrc+0(FP), R0
MOVW cmd+4(FP), R1
MOVD arg+8(FP), R2
BL vdso_zx_system_powerctl(SB)
MOVW R0, ret+16(FP)
RET