aboutsummaryrefslogtreecommitdiffstats
path: root/sys/fuchsia
diff options
context:
space:
mode:
authorDmitry Vyukov <dvyukov@google.com>2020-04-18 17:09:59 +0200
committerDmitry Vyukov <dvyukov@google.com>2020-04-19 10:26:57 +0200
commit91db3ed8ce2dc73444bcd649f8003cbe96fcb227 (patch)
tree08013bd813d8f038060db3cef25fa02eb7eb53e5 /sys/fuchsia
parent273e386b718deddf0859d1ed99e2699a9d3e2e5d (diff)
prog: add ignore_return and breaks_returns call attribtues
We had these hard-coded for fuchsia and linux accordingly. Replace with call attributes.
Diffstat (limited to 'sys/fuchsia')
-rw-r--r--sys/fuchsia/gen/amd64.go12
-rw-r--r--sys/fuchsia/gen/arm64.go12
-rw-r--r--sys/fuchsia/log.txt2
-rw-r--r--sys/fuchsia/time.txt8
4 files changed, 17 insertions, 17 deletions
diff --git a/sys/fuchsia/gen/amd64.go b/sys/fuchsia/gen/amd64.go
index 6f9c6df67..fc38577ba 100644
--- a/sys/fuchsia/gen/amd64.go
+++ b/sys/fuchsia/gen/amd64.go
@@ -6754,8 +6754,8 @@ var syscalls_amd64 = []*Syscall{
{Name: "zx_clock_get", CallName: "zx_clock_get", Args: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "clock_id", FldName: "clock_id", TypeSize: 8}}, Vals: []uint64{0, 1, 2}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "zx_time", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
- }},
- {Name: "zx_clock_get_monotonic", CallName: "zx_clock_get_monotonic"},
+ }, Attrs: SyscallAttrs{IgnoreReturn: true}},
+ {Name: "zx_clock_get_monotonic", CallName: "zx_clock_get_monotonic", Attrs: SyscallAttrs{IgnoreReturn: true}},
{Name: "zx_cprng_add_entropy", CallName: "zx_cprng_add_entropy", Args: []Type{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Path: []string{"buffer"}},
@@ -6766,7 +6766,7 @@ var syscalls_amd64 = []*Syscall{
}},
{Name: "zx_deadline_after", CallName: "zx_deadline_after", Args: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "ns", TypeSize: 8}}},
- }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "ret", TypeSize: 8, ArgDir: 1}}},
+ }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "ret", TypeSize: 8, ArgDir: 1}}, Attrs: SyscallAttrs{IgnoreReturn: true}},
{Name: "zx_debuglog_create", CallName: "zx_debuglog_create", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_root_resource", FldName: "root_resource", TypeSize: 4}},
&FlagsType{IntTypeCommon{TypeCommon: TypeCommon{TypeName: "log_create_options", FldName: "options", TypeSize: 8}}, []uint64{1073741824}, true},
@@ -6777,7 +6777,7 @@ var syscalls_amd64 = []*Syscall{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "options", TypeSize: 4}}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "ptr", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"ptr"}},
- }},
+ }, Attrs: SyscallAttrs{IgnoreReturn: true}},
{Name: "zx_debuglog_write", CallName: "zx_debuglog_write", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_debug_log", FldName: "handle", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "options", TypeSize: 4}}},
@@ -7227,7 +7227,7 @@ var syscalls_amd64 = []*Syscall{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, &ArrayType{TypeCommon{TypeName: "array", TypeSize: 144}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}, 1, 18, 18}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Path: []string{"buffer"}},
}},
- {Name: "zx_ticks_get", CallName: "zx_ticks_get"},
+ {Name: "zx_ticks_get", CallName: "zx_ticks_get", Attrs: SyscallAttrs{IgnoreReturn: true}},
{Name: "zx_ticks_per_second", CallName: "zx_ticks_per_second"},
{Name: "zx_timer_cancel", CallName: "zx_timer_cancel", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", FldName: "handle", TypeSize: 4}},
@@ -7590,4 +7590,4 @@ var consts_amd64 = []ConstValue{
{Name: "fuchsia_power_Status_OK"},
}
-const revision_amd64 = "affb41e7463b2c8dbaf4456cc5c1135057b68e70"
+const revision_amd64 = "296a2146dc159a2236ebb2611b4738dfb8eb8cca"
diff --git a/sys/fuchsia/gen/arm64.go b/sys/fuchsia/gen/arm64.go
index 875c9fc26..2cf63b20b 100644
--- a/sys/fuchsia/gen/arm64.go
+++ b/sys/fuchsia/gen/arm64.go
@@ -6754,8 +6754,8 @@ var syscalls_arm64 = []*Syscall{
{Name: "zx_clock_get", CallName: "zx_clock_get", Args: []Type{
&FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "clock_id", FldName: "clock_id", TypeSize: 8}}, Vals: []uint64{0, 1, 2}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "zx_time", TypeSize: 8}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "intptr", TypeSize: 8, ArgDir: 1}}}},
- }},
- {Name: "zx_clock_get_monotonic", CallName: "zx_clock_get_monotonic"},
+ }, Attrs: SyscallAttrs{IgnoreReturn: true}},
+ {Name: "zx_clock_get_monotonic", CallName: "zx_clock_get_monotonic", Attrs: SyscallAttrs{IgnoreReturn: true}},
{Name: "zx_cprng_add_entropy", CallName: "zx_cprng_add_entropy", Args: []Type{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "len", TypeSize: 8}}, Path: []string{"buffer"}},
@@ -6766,7 +6766,7 @@ var syscalls_arm64 = []*Syscall{
}},
{Name: "zx_deadline_after", CallName: "zx_deadline_after", Args: []Type{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "ns", TypeSize: 8}}},
- }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "ret", TypeSize: 8, ArgDir: 1}}},
+ }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "zx_time", FldName: "ret", TypeSize: 8, ArgDir: 1}}, Attrs: SyscallAttrs{IgnoreReturn: true}},
{Name: "zx_debuglog_create", CallName: "zx_debuglog_create", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_root_resource", FldName: "root_resource", TypeSize: 4}},
&FlagsType{IntTypeCommon{TypeCommon: TypeCommon{TypeName: "log_create_options", FldName: "options", TypeSize: 8}}, []uint64{1073741824}, true},
@@ -6777,7 +6777,7 @@ var syscalls_arm64 = []*Syscall{
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "options", TypeSize: 4}}},
&PtrType{TypeCommon{TypeName: "ptr", FldName: "ptr", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"ptr"}},
- }},
+ }, Attrs: SyscallAttrs{IgnoreReturn: true}},
{Name: "zx_debuglog_write", CallName: "zx_debuglog_write", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_debug_log", FldName: "handle", TypeSize: 4}},
&IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "options", TypeSize: 4}}},
@@ -7227,7 +7227,7 @@ var syscalls_arm64 = []*Syscall{
&PtrType{TypeCommon{TypeName: "ptr", FldName: "buffer", TypeSize: 8}, &ArrayType{TypeCommon{TypeName: "array", TypeSize: 144}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}, 1, 18, 18}},
&LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "len", TypeSize: 8}}, BitSize: 8, Path: []string{"buffer"}},
}},
- {Name: "zx_ticks_get", CallName: "zx_ticks_get"},
+ {Name: "zx_ticks_get", CallName: "zx_ticks_get", Attrs: SyscallAttrs{IgnoreReturn: true}},
{Name: "zx_ticks_per_second", CallName: "zx_ticks_per_second"},
{Name: "zx_timer_cancel", CallName: "zx_timer_cancel", Args: []Type{
&ResourceType{TypeCommon: TypeCommon{TypeName: "zx_timer", FldName: "handle", TypeSize: 4}},
@@ -7590,4 +7590,4 @@ var consts_arm64 = []ConstValue{
{Name: "fuchsia_power_Status_OK"},
}
-const revision_arm64 = "8169a7bb61f8f0d31d96b66fb157d4e71855b481"
+const revision_arm64 = "9cbe7499118d822801d5206c4902813557175c30"
diff --git a/sys/fuchsia/log.txt b/sys/fuchsia/log.txt
index bf2c9ceb9..008128844 100644
--- a/sys/fuchsia/log.txt
+++ b/sys/fuchsia/log.txt
@@ -8,7 +8,7 @@ resource zx_debug_log[zx_handle]
# Undocumented syscall
zx_debuglog_create(root_resource zx_root_resource, options flags[log_create_options], out ptr[out, zx_debug_log])
-zx_debuglog_read(handle zx_debug_log, options int32, ptr ptr[out, array[int8]], size len[ptr])
+zx_debuglog_read(handle zx_debug_log, options int32, ptr ptr[out, array[int8]], size len[ptr]) (ignore_return)
zx_debuglog_write(handle zx_debug_log, options int32, ptr ptr[in, array[int8]], size len[ptr])
log_create_options = ZX_LOG_FLAG_READABLE
diff --git a/sys/fuchsia/time.txt b/sys/fuchsia/time.txt
index d0372c71e..a756147bd 100644
--- a/sys/fuchsia/time.txt
+++ b/sys/fuchsia/time.txt
@@ -6,11 +6,11 @@ include <zircon/syscalls.h>
resource zx_time[int64]: 0, ZX_TIME_INFINITE
zx_nanosleep(deadline zx_time)
-zx_clock_get(clock_id flags[clock_id], zx_time ptr[out, intptr])
-zx_clock_get_monotonic()
-zx_ticks_get()
+zx_clock_get(clock_id flags[clock_id], zx_time ptr[out, intptr]) (ignore_return)
+zx_clock_get_monotonic() (ignore_return)
+zx_ticks_get() (ignore_return)
zx_ticks_per_second()
-zx_deadline_after(ns int64) zx_time
+zx_deadline_after(ns int64) zx_time (ignore_return)
# TODO: undocumented
# zx_clock_adjust?