diff options
| author | Dmitry Vyukov <dvyukov@google.com> | 2019-05-14 16:21:19 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2019-05-14 19:28:01 +0200 |
| commit | 2376f0f937b8e6b457ef1fdf088b8b7059dcb0e2 (patch) | |
| tree | 6a66d085190a488475a843ec8a138fd6a3c8e8a1 /sys/test | |
| parent | 9a4969814ea6a65b306ca7d3192c23381c778ad4 (diff) | |
pkg/compiler: allow to refer to syscall arguments in len paths
This allows to use len[syscall:arg] expressions.
Diffstat (limited to 'sys/test')
| -rw-r--r-- | sys/test/gen/64.go | 6 | ||||
| -rw-r--r-- | sys/test/test.txt | 1 |
2 files changed, 5 insertions, 2 deletions
diff --git a/sys/test/gen/64.go b/sys/test/gen/64.go index c07a033db..09797261d 100644 --- a/sys/test/gen/64.go +++ b/sys/test/gen/64.go @@ -90,8 +90,10 @@ var structDescs_64 = []*KeyedStruct{ {Key: StructKey{Name: "explicitly_sized_union"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "explicitly_sized_union", TypeSize: 42}, Fields: []Type{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "f1", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "len_expr1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "len_expr1", TypeSize: 64}, Fields: []Type{ + {Key: StructKey{Name: "len_expr1"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "len_expr1", TypeSize: 72}, Fields: []Type{ &StructType{Key: StructKey{Name: "len_expr2"}, FldName: "f11"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "f12", TypeSize: 4}}, BitSize: 8, Path: []string{"syscall", "a2"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "pad", TypeSize: 4}}, IsPad: true}, }}}, {Key: StructKey{Name: "len_expr2"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "len_expr2", TypeSize: 64}, Fields: []Type{ &StructType{Key: StructKey{Name: "len_expr3"}, FldName: "f21"}, @@ -1003,4 +1005,4 @@ var consts_64 = []ConstValue{ {Name: "SYS_unsupported"}, } -const revision_64 = "3218225be4c9aad40c39be2b8bcb3008fd76ff1e" +const revision_64 = "596ee9bf31191a84ff800056cadc632de17b3b28" diff --git a/sys/test/test.txt b/sys/test/test.txt index 9fd037bf3..73c43d83d 100644 --- a/sys/test/test.txt +++ b/sys/test/test.txt @@ -432,6 +432,7 @@ test$length29(a ptr[in, static_filename]) len_expr1 { f11 len_expr2 + f12 bytesize[syscall:a2, int32] } len_expr2 { |
