aboutsummaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2017-10-01 18:47:41 +0200
committerDmitry Vyukov <dvyukov@google.com>2017-10-02 10:53:28 +0200
commit1b68e030d8b8c74f1e9025e1b11217403f5f01c2 (patch)
treeaff0d37229bb5d0eeae8c1a711d3cfa43c73698a /sys
parentd335103a64e75dad273f98d32c0a1ea5967a5549 (diff)
sys/fuchsia: add more descriptions
Diffstat (limited to 'sys')
-rw-r--r--sys/fuchsia/amd64.go257
-rw-r--r--sys/fuchsia/arm64.go257
-rw-r--r--sys/fuchsia/objects.txt22
-rw-r--r--sys/fuchsia/objects_amd64.const2
-rw-r--r--sys/fuchsia/objects_arm64.const2
-rw-r--r--sys/fuchsia/sys.txt2
-rw-r--r--sys/fuchsia/vmars.txt15
-rw-r--r--sys/fuchsia/vmars_amd64.const12
-rw-r--r--sys/fuchsia/vmars_arm64.const12
-rw-r--r--sys/fuchsia/vmos.txt23
-rw-r--r--sys/fuchsia/vmos_amd64.const9
-rw-r--r--sys/fuchsia/vmos_arm64.const9
12 files changed, 539 insertions, 83 deletions
diff --git a/sys/fuchsia/amd64.go b/sys/fuchsia/amd64.go
index 7c159b96a..8221ce731 100644
--- a/sys/fuchsia/amd64.go
+++ b/sys/fuchsia/amd64.go
@@ -23,6 +23,7 @@ var resources_amd64 = []*ResourceDesc{
{Name: "zx_time", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}, Kind: []string{"zx_time"}, Values: []uint64{0, 18446744073709551615}},
{Name: "zx_timer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"zx_handle", "zx_timer"}, Values: []uint64{0}},
{Name: "zx_vmar", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"zx_handle", "zx_vmar"}, Values: []uint64{0}},
+ {Name: "zx_vmo", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"zx_handle", "zx_vmo"}, Values: []uint64{0}},
}
var structDescs_amd64 = []*KeyedStruct{
@@ -168,6 +169,11 @@ var structDescs_amd64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "status", TypeSize: 4, ArgDir: 1}}},
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "u64", TypeSize: 32, ArgDir: 1}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}, Kind: 1, RangeBegin: 4, RangeEnd: 4},
}}},
+ {Key: StructKey{Name: "zx_wait_item"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_wait_item", TypeSize: 12}, Fields: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "waitfor", TypeSize: 4}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "pending", TypeSize: 4}}},
+ }}},
}
var syscalls_amd64 = []*Syscall{
@@ -265,7 +271,7 @@ var syscalls_amd64 = []*Syscall{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "wake_count", TypeSize: 8}}},
}},
{ID: 19, Name: "zx_futex_wake_handle_close_thread_exit", CallName: "zx_futex_wake_handle_close_thread_exit", Args: []Type{
- &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "wake_count", TypeSize: 4}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "new_value", TypeSize: 4}}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "close_handle", TypeSize: 4}},
@@ -450,27 +456,72 @@ var syscalls_amd64 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 47, Name: "zx_port_cancel", CallName: "zx_port_cancel", Args: []Type{
+ {ID: 47, Name: "zx_object_get_property", CallName: "zx_object_get_property", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "property", TypeSize: 4}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "value"},
+ }},
+ {ID: 48, Name: "zx_object_set_cookie", CallName: "zx_object_set_cookie", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "scope", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "cookie", TypeSize: 8}}},
+ }},
+ {ID: 49, Name: "zx_object_set_property", CallName: "zx_object_set_property", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "property", TypeSize: 4}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "value"},
+ }},
+ {ID: 50, Name: "zx_object_signal", CallName: "zx_object_signal", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "clear_mask", TypeSize: 4}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "set_mask", TypeSize: 4}}},
+ }},
+ {ID: 51, Name: "zx_object_signal_peer", CallName: "zx_object_signal_peer", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "clear_mask", TypeSize: 4}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "set_mask", TypeSize: 4}}},
+ }},
+ {ID: 52, Name: "zx_object_wait_async", CallName: "zx_object_wait_async", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "port", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "key", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "signals", TypeSize: 4}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "wait_async_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{0, 1}},
+ }},
+ {ID: 53, Name: "zx_object_wait_many", CallName: "zx_object_wait_many", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "items", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array"}, Type: &StructType{Key: StructKey{Name: "zx_wait_item"}}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "count", TypeSize: 8}}, Buf: "items"},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}},
+ }},
+ {ID: 54, Name: "zx_object_wait_one", CallName: "zx_object_wait_one", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "signals", TypeSize: 4}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "observed", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ }},
+ {ID: 55, Name: "zx_port_cancel", CallName: "zx_port_cancel", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "port", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "source", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "key", TypeSize: 8}}},
}},
- {ID: 48, Name: "zx_port_create", CallName: "zx_port_create", Args: []Type{
+ {ID: 56, Name: "zx_port_create", CallName: "zx_port_create", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 49, Name: "zx_port_queue", CallName: "zx_port_queue", Args: []Type{
+ {ID: 57, Name: "zx_port_queue", CallName: "zx_port_queue", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "handle", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet"}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 8}}},
}},
- {ID: 50, Name: "zx_port_wait", CallName: "zx_port_wait", Args: []Type{
+ {ID: 58, Name: "zx_port_wait", CallName: "zx_port_wait", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "handle", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet", Dir: 1}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 8}}},
}},
- {ID: 51, Name: "zx_process_create", CallName: "zx_process_create", Args: []Type{
+ {ID: 59, Name: "zx_process_create", CallName: "zx_process_create", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_job", FldName: "job", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string"}, Kind: 2}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "name_len", TypeSize: 8}}, Buf: "name"},
@@ -478,17 +529,17 @@ var syscalls_amd64 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "proc_handle", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", TypeSize: 4, ArgDir: 1}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vmar_handle", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 52, Name: "zx_process_exit", CallName: "zx_process_exit", Args: []Type{
+ {ID: 60, Name: "zx_process_exit", CallName: "zx_process_exit", Args: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ret_code", TypeSize: 4}}},
}},
- {ID: 53, Name: "zx_process_read_memory", CallName: "zx_process_read_memory", Args: []Type{
+ {ID: 61, Name: "zx_process_read_memory", CallName: "zx_process_read_memory", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vaddr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", TypeSize: 1, ArgDir: 1}}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 54, Name: "zx_process_start", CallName: "zx_process_start", Args: []Type{
+ {ID: 62, Name: "zx_process_start", CallName: "zx_process_start", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "thread", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "entry", TypeSize: 8}}},
@@ -496,103 +547,224 @@ var syscalls_amd64 = []*Syscall{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg1", TypeSize: 8}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg2", TypeSize: 8}}},
}},
- {ID: 55, Name: "zx_process_write_memory", CallName: "zx_process_write_memory", Args: []Type{
+ {ID: 63, Name: "zx_process_write_memory", CallName: "zx_process_write_memory", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vaddr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", TypeSize: 1, ArgDir: 1}}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 56, Name: "zx_socket_create", CallName: "zx_socket_create", Args: []Type{
+ {ID: 64, Name: "zx_socket_create", CallName: "zx_socket_create", Args: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_create_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{0, 1, 2}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out0", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", TypeSize: 4, ArgDir: 1}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out1", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 57, Name: "zx_socket_read", CallName: "zx_socket_read", Args: []Type{
+ {ID: 65, Name: "zx_socket_read", CallName: "zx_socket_read", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handle", TypeSize: 4}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_read_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 58, Name: "zx_socket_write", CallName: "zx_socket_write", Args: []Type{
+ {ID: 66, Name: "zx_socket_write", CallName: "zx_socket_write", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handle", TypeSize: 4}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_write_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{4, 2, 1}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 59, Name: "zx_system_get_num_cpus", CallName: "zx_system_get_num_cpus"},
- {ID: 60, Name: "zx_system_get_physmem", CallName: "zx_system_get_physmem"},
- {ID: 61, Name: "zx_system_get_version", CallName: "zx_system_get_version", Args: []Type{
+ {ID: 67, Name: "zx_system_get_num_cpus", CallName: "zx_system_get_num_cpus"},
+ {ID: 68, Name: "zx_system_get_physmem", CallName: "zx_system_get_physmem"},
+ {ID: 69, Name: "zx_system_get_version", CallName: "zx_system_get_version", Args: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "version", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "version_len", TypeSize: 8}}, Buf: "version"},
}},
- {ID: 62, Name: "zx_task_bind_exception_port", CallName: "zx_task_bind_exception_port", Args: []Type{
+ {ID: 70, Name: "zx_task_bind_exception_port", CallName: "zx_task_bind_exception_port", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "task", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "eport", TypeSize: 4}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "key", TypeSize: 8}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "exception_port_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{2, 1}},
}},
- {ID: 63, Name: "zx_task_kill", CallName: "zx_task_kill", Args: []Type{
+ {ID: 71, Name: "zx_task_kill", CallName: "zx_task_kill", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "handle", TypeSize: 4}},
}},
- {ID: 64, Name: "zx_task_resume", CallName: "zx_task_resume", Args: []Type{
+ {ID: 72, Name: "zx_task_resume", CallName: "zx_task_resume", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "task", TypeSize: 4}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "task_resume_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1, 2}},
}},
- {ID: 65, Name: "zx_thread_create", CallName: "zx_thread_create", Args: []Type{
+ {ID: 73, Name: "zx_thread_create", CallName: "zx_thread_create", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string"}, Kind: 2}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "name_len", TypeSize: 8}}, Buf: "name"},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 66, Name: "zx_thread_exit", CallName: "zx_thread_exit"},
- {ID: 67, Name: "zx_thread_read_state", CallName: "zx_thread_read_state", Args: []Type{
+ {ID: 74, Name: "zx_thread_exit", CallName: "zx_thread_exit"},
+ {ID: 75, Name: "zx_thread_read_state", CallName: "zx_thread_read_state", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
}},
- {ID: 68, Name: "zx_thread_start", CallName: "zx_thread_start", Args: []Type{
+ {ID: 76, Name: "zx_thread_start", CallName: "zx_thread_start", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "entry", TypeSize: 8}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "stack", TypeSize: 8}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg1", TypeSize: 8}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg2", TypeSize: 8}}},
}},
- {ID: 69, Name: "zx_thread_write_state", CallName: "zx_thread_write_state", Args: []Type{
+ {ID: 77, Name: "zx_thread_write_state", CallName: "zx_thread_write_state", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"},
}},
- {ID: 70, Name: "zx_ticks_get", CallName: "zx_ticks_get"},
- {ID: 71, Name: "zx_ticks_per_second", CallName: "zx_ticks_per_second"},
- {ID: 72, Name: "zx_time_get", CallName: "zx_time_get", Args: []Type{
+ {ID: 78, Name: "zx_ticks_get", CallName: "zx_ticks_get"},
+ {ID: 79, Name: "zx_ticks_per_second", CallName: "zx_ticks_per_second"},
+ {ID: 80, Name: "zx_time_get", CallName: "zx_time_get", Args: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "clock_id", FldName: "clock_id", TypeSize: 8}}, Vals: []uint64{0, 1, 2}},
}, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "ret", TypeSize: 8, ArgDir: 1}}},
- {ID: 73, Name: "zx_timer_cancel", CallName: "zx_timer_cancel", Args: []Type{
+ {ID: 81, Name: "zx_timer_cancel", CallName: "zx_timer_cancel", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", FldName: "handle", TypeSize: 4}},
}},
- {ID: 74, Name: "zx_timer_create", CallName: "zx_timer_create", Args: []Type{
+ {ID: 82, Name: "zx_timer_create", CallName: "zx_timer_create", Args: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "timer_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{0, 1, 2}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "clock_id", TypeSize: 8}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 75, Name: "zx_timer_set", CallName: "zx_timer_set", Args: []Type{
+ {ID: 83, Name: "zx_timer_set", CallName: "zx_timer_set", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", FldName: "handle", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "slack", TypeSize: 8}}},
}},
- {ID: 76, Name: "zx_vmar_unmap_handle_close_thread_exit", CallName: "zx_vmar_unmap_handle_close_thread_exit", Args: []Type{
+ {ID: 84, Name: "zx_vmar_allocate", CallName: "zx_vmar_allocate", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "parent_handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "size", TypeSize: 8}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmar_allocate_flags", FldName: "map_flags", TypeSize: 8}}, Vals: []uint64{8, 16, 64, 128, 256, 512}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", TypeSize: 4, ArgDir: 1}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "child_addr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
+ }},
+ {ID: 85, Name: "zx_vmar_destroy", CallName: "zx_vmar_destroy", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}},
+ }},
+ {ID: 86, Name: "zx_vmar_map", CallName: "zx_vmar_map", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "vmar_offset", TypeSize: 8}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "vmo", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "vmo_offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmar_map_flags", FldName: "map_flags", TypeSize: 8}}, Vals: []uint64{16, 32, 1, 2, 4, 1024}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "mapped_addr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
+ }},
+ {ID: 87, Name: "zx_vmar_protect", CallName: "zx_vmar_protect", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "addr"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmar_protect_flags", FldName: "prot_flags", TypeSize: 8}}, Vals: []uint64{1, 2, 4}},
+ }},
+ {ID: 88, Name: "zx_vmar_unmap", CallName: "zx_vmar_unmap", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "addr"},
+ }},
+ {ID: 89, Name: "zx_vmar_unmap_handle_close_thread_exit", CallName: "zx_vmar_unmap_handle_close_thread_exit", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "vmar_handle", TypeSize: 4}},
&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "addr"},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "close_handle", TypeSize: 4}},
}},
+ {ID: 90, Name: "zx_vmo_clone", CallName: "zx_vmo_clone", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmo_clone_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", TypeSize: 4, ArgDir: 1}}},
+ }},
+ {ID: 91, Name: "zx_vmo_create", CallName: "zx_vmo_create", Args: []Type{
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", TypeSize: 4, ArgDir: 1}}},
+ }},
+ {ID: 92, Name: "zx_vmo_get_size", CallName: "zx_vmo_get_size", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "size", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}},
+ }},
+ {ID: 93, Name: "zx_vmo_op_range$ZX_VMO_OP_CACHE_CLEAN", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 8},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 94, Name: "zx_vmo_op_range$ZX_VMO_OP_CACHE_CLEAN_INVALIDATE", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 9},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 95, Name: "zx_vmo_op_range$ZX_VMO_OP_CACHE_INVALIDATE", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 7},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 96, Name: "zx_vmo_op_range$ZX_VMO_OP_CACHE_SYNC", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 6},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 97, Name: "zx_vmo_op_range$ZX_VMO_OP_COMMIT", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 1},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 98, Name: "zx_vmo_op_range$ZX_VMO_OP_DECOMMIT", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 2},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 99, Name: "zx_vmo_op_range$ZX_VMO_OP_LOOKUP", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 5},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "buffer_size", TypeSize: 8}}, Buf: "data"},
+ }},
+ {ID: 100, Name: "zx_vmo_read", CallName: "zx_vmo_read", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
+ }},
+ {ID: 101, Name: "zx_vmo_set_size", CallName: "zx_vmo_set_size", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ }},
+ {ID: 102, Name: "zx_vmo_write", CallName: "zx_vmo_write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
+ }},
}
var consts_amd64 = []ConstValue{
@@ -668,6 +840,27 @@ var consts_amd64 = []ConstValue{
{Name: "ZX_TIMER_SLACK_EARLY", Value: 1},
{Name: "ZX_TIMER_SLACK_LATE", Value: 2},
{Name: "ZX_TIME_INFINITE", Value: 18446744073709551615},
+ {Name: "ZX_VMO_CLONE_COPY_ON_WRITE", Value: 1},
+ {Name: "ZX_VMO_OP_CACHE_CLEAN", Value: 8},
+ {Name: "ZX_VMO_OP_CACHE_CLEAN_INVALIDATE", Value: 9},
+ {Name: "ZX_VMO_OP_CACHE_INVALIDATE", Value: 7},
+ {Name: "ZX_VMO_OP_CACHE_SYNC", Value: 6},
+ {Name: "ZX_VMO_OP_COMMIT", Value: 1},
+ {Name: "ZX_VMO_OP_DECOMMIT", Value: 2},
+ {Name: "ZX_VMO_OP_LOOKUP", Value: 5},
+ {Name: "ZX_VM_FLAG_CAN_MAP_EXECUTE", Value: 512},
+ {Name: "ZX_VM_FLAG_CAN_MAP_READ", Value: 128},
+ {Name: "ZX_VM_FLAG_CAN_MAP_SPECIFIC", Value: 64},
+ {Name: "ZX_VM_FLAG_CAN_MAP_WRITE", Value: 256},
+ {Name: "ZX_VM_FLAG_COMPACT", Value: 8},
+ {Name: "ZX_VM_FLAG_MAP_RANGE", Value: 1024},
+ {Name: "ZX_VM_FLAG_PERM_EXECUTE", Value: 4},
+ {Name: "ZX_VM_FLAG_PERM_READ", Value: 1},
+ {Name: "ZX_VM_FLAG_PERM_WRITE", Value: 2},
+ {Name: "ZX_VM_FLAG_SPECIFIC", Value: 16},
+ {Name: "ZX_VM_FLAG_SPECIFIC_OVERWRITE", Value: 32},
+ {Name: "ZX_WAIT_ASYNC_ONCE"},
+ {Name: "ZX_WAIT_ASYNC_REPEATING", Value: 1},
}
-const revision_amd64 = "3b490e61c63ea05eb2c4569ba31e8335f65af325"
+const revision_amd64 = "c3bd3ab69ea8ecd0c05971c0ced1dd363867b861"
diff --git a/sys/fuchsia/arm64.go b/sys/fuchsia/arm64.go
index e9eee2ea5..1e64b5701 100644
--- a/sys/fuchsia/arm64.go
+++ b/sys/fuchsia/arm64.go
@@ -23,6 +23,7 @@ var resources_arm64 = []*ResourceDesc{
{Name: "zx_time", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}, Kind: []string{"zx_time"}, Values: []uint64{0, 18446744073709551615}},
{Name: "zx_timer", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"zx_handle", "zx_timer"}, Values: []uint64{0}},
{Name: "zx_vmar", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"zx_handle", "zx_vmar"}, Values: []uint64{0}},
+ {Name: "zx_vmo", Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}, Kind: []string{"zx_handle", "zx_vmo"}, Values: []uint64{0}},
}
var structDescs_arm64 = []*KeyedStruct{
@@ -168,6 +169,11 @@ var structDescs_arm64 = []*KeyedStruct{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "status", TypeSize: 4, ArgDir: 1}}},
&ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "u64", TypeSize: 32, ArgDir: 1}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}, Kind: 1, RangeBegin: 4, RangeEnd: 4},
}}},
+ {Key: StructKey{Name: "zx_wait_item"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "zx_wait_item", TypeSize: 12}, Fields: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "waitfor", TypeSize: 4}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "pending", TypeSize: 4}}},
+ }}},
}
var syscalls_arm64 = []*Syscall{
@@ -265,7 +271,7 @@ var syscalls_arm64 = []*Syscall{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "wake_count", TypeSize: 8}}},
}},
{ID: 19, Name: "zx_futex_wake_handle_close_thread_exit", CallName: "zx_futex_wake_handle_close_thread_exit", Args: []Type{
- &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value_ptr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4}}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "wake_count", TypeSize: 4}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "new_value", TypeSize: 4}}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "close_handle", TypeSize: 4}},
@@ -450,27 +456,72 @@ var syscalls_arm64 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "avail", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 47, Name: "zx_port_cancel", CallName: "zx_port_cancel", Args: []Type{
+ {ID: 47, Name: "zx_object_get_property", CallName: "zx_object_get_property", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "property", TypeSize: 4}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "value"},
+ }},
+ {ID: 48, Name: "zx_object_set_cookie", CallName: "zx_object_set_cookie", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "scope", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "cookie", TypeSize: 8}}},
+ }},
+ {ID: 49, Name: "zx_object_set_property", CallName: "zx_object_set_property", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "property", TypeSize: 4}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "value", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "value"},
+ }},
+ {ID: 50, Name: "zx_object_signal", CallName: "zx_object_signal", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "clear_mask", TypeSize: 4}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "set_mask", TypeSize: 4}}},
+ }},
+ {ID: 51, Name: "zx_object_signal_peer", CallName: "zx_object_signal_peer", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "clear_mask", TypeSize: 4}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "set_mask", TypeSize: 4}}},
+ }},
+ {ID: 52, Name: "zx_object_wait_async", CallName: "zx_object_wait_async", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "port", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "key", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "signals", TypeSize: 4}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "wait_async_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{0, 1}},
+ }},
+ {ID: 53, Name: "zx_object_wait_many", CallName: "zx_object_wait_many", Args: []Type{
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "items", TypeSize: 8}, Type: &ArrayType{TypeCommon: TypeCommon{TypeName: "array"}, Type: &StructType{Key: StructKey{Name: "zx_wait_item"}}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "count", TypeSize: 8}}, Buf: "items"},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}},
+ }},
+ {ID: 54, Name: "zx_object_wait_one", CallName: "zx_object_wait_one", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "signals", TypeSize: 4}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "observed", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
+ }},
+ {ID: 55, Name: "zx_port_cancel", CallName: "zx_port_cancel", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "port", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "source", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "key", TypeSize: 8}}},
}},
- {ID: 48, Name: "zx_port_create", CallName: "zx_port_create", Args: []Type{
+ {ID: 56, Name: "zx_port_create", CallName: "zx_port_create", Args: []Type{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 49, Name: "zx_port_queue", CallName: "zx_port_queue", Args: []Type{
+ {ID: 57, Name: "zx_port_queue", CallName: "zx_port_queue", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "handle", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet"}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 8}}},
}},
- {ID: 50, Name: "zx_port_wait", CallName: "zx_port_wait", Args: []Type{
+ {ID: 58, Name: "zx_port_wait", CallName: "zx_port_wait", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "handle", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "packet", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "zx_port_packet", Dir: 1}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 8}}},
}},
- {ID: 51, Name: "zx_process_create", CallName: "zx_process_create", Args: []Type{
+ {ID: 59, Name: "zx_process_create", CallName: "zx_process_create", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_job", FldName: "job", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string"}, Kind: 2}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "name_len", TypeSize: 8}}, Buf: "name"},
@@ -478,17 +529,17 @@ var syscalls_arm64 = []*Syscall{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "proc_handle", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", TypeSize: 4, ArgDir: 1}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vmar_handle", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 52, Name: "zx_process_exit", CallName: "zx_process_exit", Args: []Type{
+ {ID: 60, Name: "zx_process_exit", CallName: "zx_process_exit", Args: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "ret_code", TypeSize: 4}}},
}},
- {ID: 53, Name: "zx_process_read_memory", CallName: "zx_process_read_memory", Args: []Type{
+ {ID: 61, Name: "zx_process_read_memory", CallName: "zx_process_read_memory", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vaddr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", TypeSize: 1, ArgDir: 1}}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 54, Name: "zx_process_start", CallName: "zx_process_start", Args: []Type{
+ {ID: 62, Name: "zx_process_start", CallName: "zx_process_start", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "thread", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "entry", TypeSize: 8}}},
@@ -496,103 +547,224 @@ var syscalls_arm64 = []*Syscall{
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg1", TypeSize: 8}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg2", TypeSize: 8}}},
}},
- {ID: 55, Name: "zx_process_write_memory", CallName: "zx_process_write_memory", Args: []Type{
+ {ID: 63, Name: "zx_process_write_memory", CallName: "zx_process_write_memory", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "vaddr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", TypeSize: 1, ArgDir: 1}}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 56, Name: "zx_socket_create", CallName: "zx_socket_create", Args: []Type{
+ {ID: 64, Name: "zx_socket_create", CallName: "zx_socket_create", Args: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_create_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{0, 1, 2}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out0", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", TypeSize: 4, ArgDir: 1}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out1", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 57, Name: "zx_socket_read", CallName: "zx_socket_read", Args: []Type{
+ {ID: 65, Name: "zx_socket_read", CallName: "zx_socket_read", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handle", TypeSize: 4}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_read_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 58, Name: "zx_socket_write", CallName: "zx_socket_write", Args: []Type{
+ {ID: 66, Name: "zx_socket_write", CallName: "zx_socket_write", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_socket", FldName: "handle", TypeSize: 4}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "socket_write_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{4, 2, 1}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
}},
- {ID: 59, Name: "zx_system_get_num_cpus", CallName: "zx_system_get_num_cpus"},
- {ID: 60, Name: "zx_system_get_physmem", CallName: "zx_system_get_physmem"},
- {ID: 61, Name: "zx_system_get_version", CallName: "zx_system_get_version", Args: []Type{
+ {ID: 67, Name: "zx_system_get_num_cpus", CallName: "zx_system_get_num_cpus"},
+ {ID: 68, Name: "zx_system_get_physmem", CallName: "zx_system_get_physmem"},
+ {ID: 69, Name: "zx_system_get_version", CallName: "zx_system_get_version", Args: []Type{
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "version", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "version_len", TypeSize: 8}}, Buf: "version"},
}},
- {ID: 62, Name: "zx_task_bind_exception_port", CallName: "zx_task_bind_exception_port", Args: []Type{
+ {ID: 70, Name: "zx_task_bind_exception_port", CallName: "zx_task_bind_exception_port", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "task", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_port", FldName: "eport", TypeSize: 4}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "key", TypeSize: 8}}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "exception_port_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{2, 1}},
}},
- {ID: 63, Name: "zx_task_kill", CallName: "zx_task_kill", Args: []Type{
+ {ID: 71, Name: "zx_task_kill", CallName: "zx_task_kill", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "handle", TypeSize: 4}},
}},
- {ID: 64, Name: "zx_task_resume", CallName: "zx_task_resume", Args: []Type{
+ {ID: 72, Name: "zx_task_resume", CallName: "zx_task_resume", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_task", FldName: "task", TypeSize: 4}},
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "task_resume_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1, 2}},
}},
- {ID: 65, Name: "zx_thread_create", CallName: "zx_thread_create", Args: []Type{
+ {ID: 73, Name: "zx_thread_create", CallName: "zx_thread_create", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_process", FldName: "process", TypeSize: 4}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "name", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "string"}, Kind: 2}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "name_len", TypeSize: 8}}, Buf: "name"},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 66, Name: "zx_thread_exit", CallName: "zx_thread_exit"},
- {ID: 67, Name: "zx_thread_read_state", CallName: "zx_thread_read_state", Args: []Type{
+ {ID: 74, Name: "zx_thread_exit", CallName: "zx_thread_exit"},
+ {ID: 75, Name: "zx_thread_read_state", CallName: "zx_thread_read_state", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", TypeSize: 4, ArgDir: 1}}}},
}},
- {ID: 68, Name: "zx_thread_start", CallName: "zx_thread_start", Args: []Type{
+ {ID: 76, Name: "zx_thread_start", CallName: "zx_thread_start", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "entry", TypeSize: 8}}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "stack", TypeSize: 8}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg1", TypeSize: 8}}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "arg2", TypeSize: 8}}},
}},
- {ID: 69, Name: "zx_thread_write_state", CallName: "zx_thread_write_state", Args: []Type{
+ {ID: 77, Name: "zx_thread_write_state", CallName: "zx_thread_write_state", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_thread", FldName: "handle", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "kind", TypeSize: 4}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "buffer"},
}},
- {ID: 70, Name: "zx_ticks_get", CallName: "zx_ticks_get"},
- {ID: 71, Name: "zx_ticks_per_second", CallName: "zx_ticks_per_second"},
- {ID: 72, Name: "zx_time_get", CallName: "zx_time_get", Args: []Type{
+ {ID: 78, Name: "zx_ticks_get", CallName: "zx_ticks_get"},
+ {ID: 79, Name: "zx_ticks_per_second", CallName: "zx_ticks_per_second"},
+ {ID: 80, Name: "zx_time_get", CallName: "zx_time_get", Args: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "clock_id", FldName: "clock_id", TypeSize: 8}}, Vals: []uint64{0, 1, 2}},
}, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "ret", TypeSize: 8, ArgDir: 1}}},
- {ID: 73, Name: "zx_timer_cancel", CallName: "zx_timer_cancel", Args: []Type{
+ {ID: 81, Name: "zx_timer_cancel", CallName: "zx_timer_cancel", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", FldName: "handle", TypeSize: 4}},
}},
- {ID: 74, Name: "zx_timer_create", CallName: "zx_timer_create", Args: []Type{
+ {ID: 82, Name: "zx_timer_create", CallName: "zx_timer_create", Args: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "timer_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{0, 1, 2}},
&ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "clock_id", TypeSize: 8}}},
&PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", TypeSize: 4, ArgDir: 1}}},
}},
- {ID: 75, Name: "zx_timer_set", CallName: "zx_timer_set", Args: []Type{
+ {ID: 83, Name: "zx_timer_set", CallName: "zx_timer_set", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", FldName: "handle", TypeSize: 4}},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "deadline", TypeSize: 8}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "slack", TypeSize: 8}}},
}},
- {ID: 76, Name: "zx_vmar_unmap_handle_close_thread_exit", CallName: "zx_vmar_unmap_handle_close_thread_exit", Args: []Type{
+ {ID: 84, Name: "zx_vmar_allocate", CallName: "zx_vmar_allocate", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "parent_handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "size", TypeSize: 8}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmar_allocate_flags", FldName: "map_flags", TypeSize: 8}}, Vals: []uint64{8, 16, 64, 128, 256, 512}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", TypeSize: 4, ArgDir: 1}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "child_addr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
+ }},
+ {ID: 85, Name: "zx_vmar_destroy", CallName: "zx_vmar_destroy", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}},
+ }},
+ {ID: 86, Name: "zx_vmar_map", CallName: "zx_vmar_map", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "vmar_offset", TypeSize: 8}}},
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "vmo", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "vmo_offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmar_map_flags", FldName: "map_flags", TypeSize: 8}}, Vals: []uint64{16, 32, 1, 2, 4, 1024}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "mapped_addr", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
+ }},
+ {ID: 87, Name: "zx_vmar_protect", CallName: "zx_vmar_protect", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "addr"},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmar_protect_flags", FldName: "prot_flags", TypeSize: 8}}, Vals: []uint64{1, 2, 4}},
+ }},
+ {ID: 88, Name: "zx_vmar_unmap", CallName: "zx_vmar_unmap", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "handle", TypeSize: 4}},
+ &VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "addr"},
+ }},
+ {ID: 89, Name: "zx_vmar_unmap_handle_close_thread_exit", CallName: "zx_vmar_unmap_handle_close_thread_exit", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmar", FldName: "vmar_handle", TypeSize: 4}},
&VmaType{TypeCommon: TypeCommon{TypeName: "vma", FldName: "addr", TypeSize: 8}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Buf: "addr"},
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_handle", FldName: "close_handle", TypeSize: 4}},
}},
+ {ID: 90, Name: "zx_vmo_clone", CallName: "zx_vmo_clone", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "vmo_clone_options", FldName: "options", TypeSize: 8}}, Vals: []uint64{1}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", TypeSize: 4, ArgDir: 1}}},
+ }},
+ {ID: 91, Name: "zx_vmo_create", CallName: "zx_vmo_create", Args: []Type{
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "options", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "out", TypeSize: 8}, Type: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", TypeSize: 4, ArgDir: 1}}},
+ }},
+ {ID: 92, Name: "zx_vmo_get_size", CallName: "zx_vmo_get_size", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "size", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8, ArgDir: 1}}}},
+ }},
+ {ID: 93, Name: "zx_vmo_op_range$ZX_VMO_OP_CACHE_CLEAN", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 8},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 94, Name: "zx_vmo_op_range$ZX_VMO_OP_CACHE_CLEAN_INVALIDATE", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 9},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 95, Name: "zx_vmo_op_range$ZX_VMO_OP_CACHE_INVALIDATE", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 7},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 96, Name: "zx_vmo_op_range$ZX_VMO_OP_CACHE_SYNC", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 6},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 97, Name: "zx_vmo_op_range$ZX_VMO_OP_COMMIT", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 1},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 98, Name: "zx_vmo_op_range$ZX_VMO_OP_DECOMMIT", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 2},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "data", TypeSize: 8}}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "buffer_size", TypeSize: 8}}},
+ }},
+ {ID: 99, Name: "zx_vmo_op_range$ZX_VMO_OP_LOOKUP", CallName: "zx_vmo_op_range", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "op", TypeSize: 8}}, Val: 5},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
+ &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "buffer_size", TypeSize: 8}}, Buf: "data"},
+ }},
+ {ID: 100, Name: "zx_vmo_read", CallName: "zx_vmo_read", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
+ }},
+ {ID: 101, Name: "zx_vmo_set_size", CallName: "zx_vmo_set_size", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "size", TypeSize: 8}}},
+ }},
+ {ID: 102, Name: "zx_vmo_write", CallName: "zx_vmo_write", Args: []Type{
+ &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_vmo", FldName: "handle", TypeSize: 4}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "data", TypeSize: 8}, Type: &BufferType{TypeCommon: TypeCommon{TypeName: "array"}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "offset", TypeSize: 8}}},
+ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", FldName: "len", TypeSize: 8}}},
+ &PtrType{TypeCommon: TypeCommon{TypeName: "ptr", FldName: "actual", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
+ }},
}
var consts_arm64 = []ConstValue{
@@ -668,6 +840,27 @@ var consts_arm64 = []ConstValue{
{Name: "ZX_TIMER_SLACK_EARLY", Value: 1},
{Name: "ZX_TIMER_SLACK_LATE", Value: 2},
{Name: "ZX_TIME_INFINITE", Value: 18446744073709551615},
+ {Name: "ZX_VMO_CLONE_COPY_ON_WRITE", Value: 1},
+ {Name: "ZX_VMO_OP_CACHE_CLEAN", Value: 8},
+ {Name: "ZX_VMO_OP_CACHE_CLEAN_INVALIDATE", Value: 9},
+ {Name: "ZX_VMO_OP_CACHE_INVALIDATE", Value: 7},
+ {Name: "ZX_VMO_OP_CACHE_SYNC", Value: 6},
+ {Name: "ZX_VMO_OP_COMMIT", Value: 1},
+ {Name: "ZX_VMO_OP_DECOMMIT", Value: 2},
+ {Name: "ZX_VMO_OP_LOOKUP", Value: 5},
+ {Name: "ZX_VM_FLAG_CAN_MAP_EXECUTE", Value: 512},
+ {Name: "ZX_VM_FLAG_CAN_MAP_READ", Value: 128},
+ {Name: "ZX_VM_FLAG_CAN_MAP_SPECIFIC", Value: 64},
+ {Name: "ZX_VM_FLAG_CAN_MAP_WRITE", Value: 256},
+ {Name: "ZX_VM_FLAG_COMPACT", Value: 8},
+ {Name: "ZX_VM_FLAG_MAP_RANGE", Value: 1024},
+ {Name: "ZX_VM_FLAG_PERM_EXECUTE", Value: 4},
+ {Name: "ZX_VM_FLAG_PERM_READ", Value: 1},
+ {Name: "ZX_VM_FLAG_PERM_WRITE", Value: 2},
+ {Name: "ZX_VM_FLAG_SPECIFIC", Value: 16},
+ {Name: "ZX_VM_FLAG_SPECIFIC_OVERWRITE", Value: 32},
+ {Name: "ZX_WAIT_ASYNC_ONCE"},
+ {Name: "ZX_WAIT_ASYNC_REPEATING", Value: 1},
}
-const revision_arm64 = "7aa3efd28c51db95f99f7b3c8feb4f66ad25f0d8"
+const revision_arm64 = "74ac3e7eb1255a4c53421a5f38ae8b75e7bada88"
diff --git a/sys/fuchsia/objects.txt b/sys/fuchsia/objects.txt
index fedbf4b9a..0ec7b3293 100644
--- a/sys/fuchsia/objects.txt
+++ b/sys/fuchsia/objects.txt
@@ -1,6 +1,7 @@
# Copyright 2017 syzkaller project authors. All rights reserved.
# Use of this source code is governed by Apache 2 LICENSE that can be found in the LICENSE file.
+include <zircon/syscalls.h>
include <zircon/syscalls/object.h>
include <zircon/syscalls/exception.h>
@@ -8,9 +9,6 @@ include <zircon/syscalls/exception.h>
resource koid[int64]: 0
# TODO:
-#object_get_property - read an object property
-#object_set_cookie - write an object cookie
-#object_set_property - modify an object property
#object_signal - set or clear the user signals on an object
#object_signal_peer - set or clear the user signals in the opposite end
#object_wait_many - wait for signals on multiple objects
@@ -19,7 +17,7 @@ resource koid[int64]: 0
zx_object_get_child(handle zx_handle, koid koid, rights flags[zx_rights], out ptr[out, zx_handle])
zx_object_get_cookie(handle zx_handle, scope zx_handle, cookie ptr[out, int64])
-
+zx_object_set_cookie(handle zx_handle, scope zx_handle, cookie int64)
zx_object_get_info$ZX_INFO_HANDLE_VALID(handle zx_handle, topic const[ZX_INFO_HANDLE_VALID], buffer const[0], buffer_size const[0], actual ptr[out, intptr], avail ptr[out, intptr])
zx_object_get_info$ZX_INFO_HANDLE_BASIC(handle zx_handle, topic const[ZX_INFO_HANDLE_BASIC], buffer ptr[out, zx_info_handle_basic], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr])
zx_object_get_info$ZX_INFO_PROCESS(handle zx_process, topic const[ZX_INFO_PROCESS], buffer ptr[out, zx_info_process], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr])
@@ -38,6 +36,16 @@ zx_object_get_info$ZX_INFO_CPU_STATS(handle zx_handle, topic const[ZX_INFO_CPU_S
zx_object_get_info$ZX_INFO_KMEM_STATS(handle zx_handle, topic const[ZX_INFO_KMEM_STATS], buffer ptr[out, zx_info_kmem_stats], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr])
# TODO: what is handle type here?
zx_object_get_info$ZX_INFO_RESOURCE(handle zx_handle, topic const[ZX_INFO_RESOURCE], buffer ptr[out, zx_info_resource], buffer_size bytesize[buffer], actual ptr[out, intptr], avail ptr[out, intptr])
+# TODO: detail properties
+zx_object_get_property(handle zx_handle, property int32, value ptr[out, array[int8]], size len[value])
+zx_object_set_property(handle zx_handle, property int32, value ptr[in, array[int8]], size len[value])
+zx_object_signal(handle zx_handle, clear_mask int32, set_mask int32)
+zx_object_signal_peer(handle zx_handle, clear_mask int32, set_mask int32)
+zx_object_wait_one(handle zx_handle, signals int32, deadline zx_time, observed ptr[out, int32])
+zx_object_wait_async(handle zx_handle, port zx_port, key int64, signals int32, options flags[wait_async_options])
+zx_object_wait_many(items ptr[in, array[zx_wait_item]], count len[items], deadline zx_time)
+
+wait_async_options = ZX_WAIT_ASYNC_ONCE, ZX_WAIT_ASYNC_REPEATING
zx_info_handle_basic {
koid koid
@@ -165,3 +173,9 @@ arm64_exc_data {
esr int32
far int64
}
+
+zx_wait_item {
+ handle zx_handle
+ waitfor int32
+ pending int32
+}
diff --git a/sys/fuchsia/objects_amd64.const b/sys/fuchsia/objects_amd64.const
index 2c19aac9e..f30a0960f 100644
--- a/sys/fuchsia/objects_amd64.const
+++ b/sys/fuchsia/objects_amd64.const
@@ -15,3 +15,5 @@ ZX_INFO_THREAD_EXCEPTION_REPORT = 11
ZX_INFO_THREAD_STATS = 15
ZX_INFO_VMAR = 7
ZX_MAX_NAME_LEN = 32
+ZX_WAIT_ASYNC_ONCE = 0
+ZX_WAIT_ASYNC_REPEATING = 1
diff --git a/sys/fuchsia/objects_arm64.const b/sys/fuchsia/objects_arm64.const
index 2c19aac9e..f30a0960f 100644
--- a/sys/fuchsia/objects_arm64.const
+++ b/sys/fuchsia/objects_arm64.const
@@ -15,3 +15,5 @@ ZX_INFO_THREAD_EXCEPTION_REPORT = 11
ZX_INFO_THREAD_STATS = 15
ZX_INFO_VMAR = 7
ZX_MAX_NAME_LEN = 32
+ZX_WAIT_ASYNC_ONCE = 0
+ZX_WAIT_ASYNC_REPEATING = 1
diff --git a/sys/fuchsia/sys.txt b/sys/fuchsia/sys.txt
index 815351a04..3b34ca504 100644
--- a/sys/fuchsia/sys.txt
+++ b/sys/fuchsia/sys.txt
@@ -22,4 +22,4 @@ zx_cprng_draw(buffer ptr[out, array[int8]], len len[buffer], actual ptr[out, int
zx_cprng_add_entropy(buffer ptr[in, array[int8]], len len[buffer])
zx_vmar_unmap_handle_close_thread_exit(vmar_handle zx_vmar, addr vma, len len[addr], close_handle zx_handle)
-zx_futex_wake_handle_close_thread_exit(value_ptr ptr[out, int32], wake_count int32, new_value int32, close_handle zx_handle)
+zx_futex_wake_handle_close_thread_exit(value_ptr ptr[in, int32], wake_count int32, new_value int32, close_handle zx_handle)
diff --git a/sys/fuchsia/vmars.txt b/sys/fuchsia/vmars.txt
index 7b4dac2b1..e9f0a2bd6 100644
--- a/sys/fuchsia/vmars.txt
+++ b/sys/fuchsia/vmars.txt
@@ -5,9 +5,12 @@ include <zircon/syscalls.h>
resource zx_vmar[zx_handle]
-# TODO:
-#vmar_allocate - create a new child VMAR
-#vmar_map - map a VMO into a process
-#vmar_unmap - unmap a memory region from a process
-#vmar_protect - adjust memory access permissions
-#vmar_destroy - destroy a VMAR and all of its children
+zx_vmar_allocate(parent_handle zx_vmar, offset intptr, size intptr, map_flags flags[vmar_allocate_flags], out ptr[out, zx_vmar], child_addr ptr[out, intptr])
+zx_vmar_map(handle zx_vmar, vmar_offset intptr, vmo zx_vmo, vmo_offset int64, len intptr, map_flags flags[vmar_map_flags], mapped_addr ptr[out, intptr])
+zx_vmar_unmap(handle zx_vmar, addr vma, len len[addr])
+zx_vmar_protect(handle zx_vmar, addr vma, len len[addr], prot_flags flags[vmar_protect_flags])
+zx_vmar_destroy(handle zx_vmar)
+
+vmar_allocate_flags = ZX_VM_FLAG_COMPACT, ZX_VM_FLAG_SPECIFIC, ZX_VM_FLAG_CAN_MAP_SPECIFIC, ZX_VM_FLAG_CAN_MAP_READ, ZX_VM_FLAG_CAN_MAP_WRITE, ZX_VM_FLAG_CAN_MAP_EXECUTE
+vmar_map_flags = ZX_VM_FLAG_SPECIFIC, ZX_VM_FLAG_SPECIFIC_OVERWRITE, ZX_VM_FLAG_PERM_READ, ZX_VM_FLAG_PERM_WRITE, ZX_VM_FLAG_PERM_EXECUTE, ZX_VM_FLAG_MAP_RANGE
+vmar_protect_flags = ZX_VM_FLAG_PERM_READ, ZX_VM_FLAG_PERM_WRITE, ZX_VM_FLAG_PERM_EXECUTE
diff --git a/sys/fuchsia/vmars_amd64.const b/sys/fuchsia/vmars_amd64.const
new file mode 100644
index 000000000..4d692a5f4
--- /dev/null
+++ b/sys/fuchsia/vmars_amd64.const
@@ -0,0 +1,12 @@
+# AUTOGENERATED FILE
+ZX_VM_FLAG_CAN_MAP_EXECUTE = 512
+ZX_VM_FLAG_CAN_MAP_READ = 128
+ZX_VM_FLAG_CAN_MAP_SPECIFIC = 64
+ZX_VM_FLAG_CAN_MAP_WRITE = 256
+ZX_VM_FLAG_COMPACT = 8
+ZX_VM_FLAG_MAP_RANGE = 1024
+ZX_VM_FLAG_PERM_EXECUTE = 4
+ZX_VM_FLAG_PERM_READ = 1
+ZX_VM_FLAG_PERM_WRITE = 2
+ZX_VM_FLAG_SPECIFIC = 16
+ZX_VM_FLAG_SPECIFIC_OVERWRITE = 32
diff --git a/sys/fuchsia/vmars_arm64.const b/sys/fuchsia/vmars_arm64.const
new file mode 100644
index 000000000..4d692a5f4
--- /dev/null
+++ b/sys/fuchsia/vmars_arm64.const
@@ -0,0 +1,12 @@
+# AUTOGENERATED FILE
+ZX_VM_FLAG_CAN_MAP_EXECUTE = 512
+ZX_VM_FLAG_CAN_MAP_READ = 128
+ZX_VM_FLAG_CAN_MAP_SPECIFIC = 64
+ZX_VM_FLAG_CAN_MAP_WRITE = 256
+ZX_VM_FLAG_COMPACT = 8
+ZX_VM_FLAG_MAP_RANGE = 1024
+ZX_VM_FLAG_PERM_EXECUTE = 4
+ZX_VM_FLAG_PERM_READ = 1
+ZX_VM_FLAG_PERM_WRITE = 2
+ZX_VM_FLAG_SPECIFIC = 16
+ZX_VM_FLAG_SPECIFIC_OVERWRITE = 32
diff --git a/sys/fuchsia/vmos.txt b/sys/fuchsia/vmos.txt
index 72ec9d908..f3e9fc79f 100644
--- a/sys/fuchsia/vmos.txt
+++ b/sys/fuchsia/vmos.txt
@@ -5,11 +5,18 @@ include <zircon/syscalls.h>
resource zx_vmo[zx_handle]
-# TODO:
-#vmo_create - create a new vmo
-#vmo_read - read from a vmo
-#vmo_write - write to a vmo
-#vmo_clone - clone a vmo
-#vmo_get_size - obtain the size of a vmo
-#vmo_set_size - adjust the size of a vmo
-#vmo_op_range - perform an operation on a range of a vmo
+zx_vmo_create(size int64, options const[0], out ptr[out, zx_vmo])
+zx_vmo_read(handle zx_vmo, data ptr[out, array[int8]], offset int64, len intptr, actual ptr[out, intptr])
+zx_vmo_write(handle zx_vmo, data ptr[in, array[int8]], offset int64, len intptr, actual ptr[out, intptr])
+zx_vmo_clone(handle zx_vmo, options flags[vmo_clone_options], offset int64, size int64, out ptr[out, zx_vmo])
+zx_vmo_get_size(handle zx_vmo, size ptr[out, int64])
+zx_vmo_set_size(handle zx_vmo, size int64)
+zx_vmo_op_range$ZX_VMO_OP_COMMIT(handle zx_vmo, op const[ZX_VMO_OP_COMMIT], offset int64, size int64, data const[0], buffer_size const[0])
+zx_vmo_op_range$ZX_VMO_OP_DECOMMIT(handle zx_vmo, op const[ZX_VMO_OP_DECOMMIT], offset int64, size int64, data const[0], buffer_size const[0])
+zx_vmo_op_range$ZX_VMO_OP_CACHE_SYNC(handle zx_vmo, op const[ZX_VMO_OP_CACHE_SYNC], offset int64, size int64, data const[0], buffer_size const[0])
+zx_vmo_op_range$ZX_VMO_OP_CACHE_INVALIDATE(handle zx_vmo, op const[ZX_VMO_OP_CACHE_INVALIDATE], offset int64, size int64, data const[0], buffer_size const[0])
+zx_vmo_op_range$ZX_VMO_OP_CACHE_CLEAN(handle zx_vmo, op const[ZX_VMO_OP_CACHE_CLEAN], offset int64, size int64, data const[0], buffer_size const[0])
+zx_vmo_op_range$ZX_VMO_OP_CACHE_CLEAN_INVALIDATE(handle zx_vmo, op const[ZX_VMO_OP_CACHE_CLEAN_INVALIDATE], offset int64, size int64, data const[0], buffer_size const[0])
+zx_vmo_op_range$ZX_VMO_OP_LOOKUP(handle zx_vmo, op const[ZX_VMO_OP_LOOKUP], offset int64, size int64, data ptr[out, array[int8]], buffer_size len[data])
+
+vmo_clone_options = ZX_VMO_CLONE_COPY_ON_WRITE
diff --git a/sys/fuchsia/vmos_amd64.const b/sys/fuchsia/vmos_amd64.const
new file mode 100644
index 000000000..dccab6e90
--- /dev/null
+++ b/sys/fuchsia/vmos_amd64.const
@@ -0,0 +1,9 @@
+# AUTOGENERATED FILE
+ZX_VMO_CLONE_COPY_ON_WRITE = 1
+ZX_VMO_OP_CACHE_CLEAN = 8
+ZX_VMO_OP_CACHE_CLEAN_INVALIDATE = 9
+ZX_VMO_OP_CACHE_INVALIDATE = 7
+ZX_VMO_OP_CACHE_SYNC = 6
+ZX_VMO_OP_COMMIT = 1
+ZX_VMO_OP_DECOMMIT = 2
+ZX_VMO_OP_LOOKUP = 5
diff --git a/sys/fuchsia/vmos_arm64.const b/sys/fuchsia/vmos_arm64.const
new file mode 100644
index 000000000..dccab6e90
--- /dev/null
+++ b/sys/fuchsia/vmos_arm64.const
@@ -0,0 +1,9 @@
+# AUTOGENERATED FILE
+ZX_VMO_CLONE_COPY_ON_WRITE = 1
+ZX_VMO_OP_CACHE_CLEAN = 8
+ZX_VMO_OP_CACHE_CLEAN_INVALIDATE = 9
+ZX_VMO_OP_CACHE_INVALIDATE = 7
+ZX_VMO_OP_CACHE_SYNC = 6
+ZX_VMO_OP_COMMIT = 1
+ZX_VMO_OP_DECOMMIT = 2
+ZX_VMO_OP_LOOKUP = 5