blob: 78bbd147d4eb6863c52aa7ba78af951ce22f822c [file] [log] [blame]
Carmelo Casconefc3776d2017-08-21 23:17:22 +02001{
2 "program" : "empty.p4",
3 "__meta__" : {
4 "version" : [2, 7],
5 "compiler" : "https://github.com/p4lang/p4c"
6 },
7 "header_types" : [
8 {
9 "name" : "scalars_0",
10 "id" : 0,
11 "fields" : []
12 },
13 {
14 "name" : "dummy_t",
15 "id" : 1,
16 "fields" : [
17 ["dummyField", 8, false]
18 ]
19 },
20 {
21 "name" : "standard_metadata",
22 "id" : 2,
23 "fields" : [
24 ["ingress_port", 9, false],
25 ["egress_spec", 9, false],
26 ["egress_port", 9, false],
27 ["clone_spec", 32, false],
28 ["instance_type", 32, false],
29 ["drop", 1, false],
30 ["recirculate_port", 16, false],
31 ["packet_length", 32, false],
32 ["enq_timestamp", 32, false],
33 ["enq_qdepth", 19, false],
34 ["deq_timedelta", 32, false],
35 ["deq_qdepth", 19, false],
36 ["ingress_global_timestamp", 48, false],
37 ["lf_field_list", 32, false],
38 ["mcast_grp", 16, false],
39 ["resubmit_flag", 1, false],
40 ["egress_rid", 16, false],
41 ["_padding", 5, false]
42 ]
43 }
44 ],
45 "headers" : [
46 {
47 "name" : "scalars",
48 "id" : 0,
49 "header_type" : "scalars_0",
50 "metadata" : true,
51 "pi_omit" : true
52 },
53 {
54 "name" : "standard_metadata",
55 "id" : 1,
56 "header_type" : "standard_metadata",
57 "metadata" : true,
58 "pi_omit" : true
59 },
60 {
61 "name" : "dummy_metadata",
62 "id" : 2,
63 "header_type" : "dummy_t",
64 "metadata" : true,
65 "pi_omit" : true
66 }
67 ],
68 "header_stacks" : [],
69 "header_union_types" : [],
70 "header_unions" : [],
71 "header_union_stacks" : [],
72 "field_lists" : [],
73 "errors" : [
74 ["NoError", 1],
75 ["PacketTooShort", 2],
76 ["NoMatch", 3],
77 ["StackOutOfBounds", 4],
78 ["HeaderTooShort", 5],
79 ["ParserTimeout", 6]
80 ],
81 "enums" : [],
82 "parsers" : [
83 {
84 "name" : "parser",
85 "id" : 0,
86 "init_state" : "start",
87 "parse_states" : [
88 {
89 "name" : "start",
90 "id" : 0,
91 "parser_ops" : [],
92 "transitions" : [
93 {
94 "value" : "default",
95 "mask" : null,
96 "next_state" : null
97 }
98 ],
99 "transition_key" : []
100 }
101 ]
102 }
103 ],
104 "deparsers" : [
105 {
106 "name" : "deparser",
107 "id" : 0,
108 "order" : []
109 }
110 ],
111 "meter_arrays" : [],
112 "counter_arrays" : [],
113 "register_arrays" : [],
114 "calculations" : [],
115 "learn_lists" : [],
116 "actions" : [
117 {
118 "name" : "NoAction",
119 "id" : 0,
120 "runtime_data" : [],
121 "primitives" : []
122 },
123 {
124 "name" : "dummy_action",
125 "id" : 1,
126 "runtime_data" : [],
127 "primitives" : [
128 {
129 "op" : "assign",
130 "parameters" : [
131 {
132 "type" : "field",
133 "value" : ["dummy_metadata", "dummyField"]
134 },
135 {
136 "type" : "hexstr",
137 "value" : "0x01"
138 }
139 ],
140 "source_info" : {
141 "filename" : "empty.p4",
142 "line" : 23,
143 "column" : 4,
144 "source_fragment" : "modify_field(dummy_metadata.dummyField, 1)"
145 }
146 }
147 ]
148 }
149 ],
150 "pipelines" : [
151 {
152 "name" : "ingress",
153 "id" : 0,
154 "init_table" : "table0",
155 "tables" : [
156 {
157 "name" : "table0",
158 "id" : 0,
159 "source_info" : {
160 "filename" : "empty.p4",
161 "line" : 13,
162 "column" : 0,
163 "source_fragment" : "table table0 { ..."
164 },
165 "key" : [
166 {
167 "match_type" : "exact",
168 "target" : ["dummy_metadata", "dummyField"],
169 "mask" : null
170 }
171 ],
172 "match_type" : "exact",
173 "type" : "simple",
174 "max_size" : 1024,
175 "with_counters" : false,
176 "support_timeout" : false,
177 "direct_meters" : null,
178 "action_ids" : [1, 0],
179 "actions" : ["dummy_action", "NoAction"],
180 "base_default_next" : null,
181 "next_tables" : {
182 "dummy_action" : null,
183 "NoAction" : null
184 },
185 "default_entry" : {
186 "action_id" : 0,
187 "action_const" : false,
188 "action_data" : [],
189 "action_entry_const" : false
190 }
191 }
192 ],
193 "action_profiles" : [],
194 "conditionals" : []
195 },
196 {
197 "name" : "egress",
198 "id" : 1,
199 "init_table" : null,
200 "tables" : [],
201 "action_profiles" : [],
202 "conditionals" : []
203 }
204 ],
205 "checksums" : [],
206 "force_arith" : [],
207 "extern_instances" : [],
208 "field_aliases" : [
209 [
210 "queueing_metadata.enq_timestamp",
211 ["standard_metadata", "enq_timestamp"]
212 ],
213 [
214 "queueing_metadata.enq_qdepth",
215 ["standard_metadata", "enq_qdepth"]
216 ],
217 [
218 "queueing_metadata.deq_timedelta",
219 ["standard_metadata", "deq_timedelta"]
220 ],
221 [
222 "queueing_metadata.deq_qdepth",
223 ["standard_metadata", "deq_qdepth"]
224 ],
225 [
226 "intrinsic_metadata.ingress_global_timestamp",
227 ["standard_metadata", "ingress_global_timestamp"]
228 ],
229 [
230 "intrinsic_metadata.lf_field_list",
231 ["standard_metadata", "lf_field_list"]
232 ],
233 [
234 "intrinsic_metadata.mcast_grp",
235 ["standard_metadata", "mcast_grp"]
236 ],
237 [
238 "intrinsic_metadata.resubmit_flag",
239 ["standard_metadata", "resubmit_flag"]
240 ],
241 [
242 "intrinsic_metadata.egress_rid",
243 ["standard_metadata", "egress_rid"]
244 ]
245 ]
246}