blob: e77a652d023f045e8a1cdf54614fd4c476d3c50c [file] [log] [blame]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001{
2 "header_types" : [
3 {
4 "name" : "scalars_0",
5 "id" : 0,
6 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007 ["last_ipv4_dscp_0", 6, false],
8 ["tmp_0", 4, false],
9 ["tmp", 8, false],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020010 ["tmp_1", 32, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011 ["tmp_2", 32, false],
12 ["tmp_3", 32, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013 ["spgw_ingress_tmp", 1, false],
14 ["spgw_ingress_tmp_0", 1, false],
15 ["spgw_normalizer_hasReturned", 1, false],
16 ["spgw_ingress_hasReturned", 1, false],
17 ["egress_next_tmp", 1, false],
18 ["process_int_main_process_int_transit_hasReturned", 1, false],
19 ["fabric_metadata_t.eth_type", 16, false],
20 ["fabric_metadata_t.ip_eth_type", 16, false],
21 ["fabric_metadata_t.vlan_id", 12, false],
22 ["fabric_metadata_t.vlan_pri", 3, false],
23 ["fabric_metadata_t.vlan_cfi", 1, false],
24 ["fabric_metadata_t.mpls_label", 20, false],
25 ["fabric_metadata_t.mpls_ttl", 8, false],
26 ["fabric_metadata_t.skip_forwarding", 1, false],
27 ["fabric_metadata_t.skip_next", 1, false],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020028 ["fabric_metadata_t.fwd_type", 3, false],
29 ["fabric_metadata_t.next_id", 32, false],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020030 ["fabric_metadata_t.is_multicast", 1, false],
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070031 ["fabric_metadata_t.is_controller_packet_out", 1, false],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020032 ["fabric_metadata_t.clone_to_cpu", 1, false],
33 ["fabric_metadata_t.ip_proto", 8, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080034 ["fabric_metadata_t.l4_sport", 16, false],
35 ["fabric_metadata_t.l4_dport", 16, false],
36 ["_padding_2", 4, false]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020037 ]
38 },
39 {
40 "name" : "standard_metadata",
41 "id" : 1,
42 "fields" : [
43 ["ingress_port", 9, false],
44 ["egress_spec", 9, false],
45 ["egress_port", 9, false],
46 ["clone_spec", 32, false],
47 ["instance_type", 32, false],
48 ["drop", 1, false],
49 ["recirculate_port", 16, false],
50 ["packet_length", 32, false],
51 ["enq_timestamp", 32, false],
52 ["enq_qdepth", 19, false],
53 ["deq_timedelta", 32, false],
54 ["deq_qdepth", 19, false],
55 ["ingress_global_timestamp", 48, false],
56 ["egress_global_timestamp", 48, false],
57 ["lf_field_list", 32, false],
58 ["mcast_grp", 16, false],
59 ["resubmit_flag", 32, false],
60 ["egress_rid", 16, false],
61 ["checksum_error", 1, false],
62 ["recirculate_flag", 32, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070063 ["parser_error", 32, false],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020064 ["_padding", 5, false]
65 ]
66 },
67 {
68 "name" : "ethernet_t",
69 "id" : 2,
70 "fields" : [
71 ["dst_addr", 48, false],
72 ["src_addr", 48, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080073 ["eth_type", 16, false]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020074 ]
75 },
76 {
77 "name" : "vlan_tag_t",
78 "id" : 3,
79 "fields" : [
80 ["pri", 3, false],
81 ["cfi", 1, false],
82 ["vlan_id", 12, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080083 ["eth_type", 16, false]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020084 ]
85 },
86 {
87 "name" : "mpls_t",
88 "id" : 4,
89 "fields" : [
90 ["label", 20, false],
91 ["tc", 3, false],
92 ["bos", 1, false],
93 ["ttl", 8, false]
94 ]
95 },
96 {
97 "name" : "ipv4_t",
98 "id" : 5,
99 "fields" : [
100 ["version", 4, false],
101 ["ihl", 4, false],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900102 ["dscp", 6, false],
103 ["ecn", 2, false],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200104 ["total_len", 16, false],
105 ["identification", 16, false],
106 ["flags", 3, false],
107 ["frag_offset", 13, false],
108 ["ttl", 8, false],
109 ["protocol", 8, false],
110 ["hdr_checksum", 16, false],
111 ["src_addr", 32, false],
112 ["dst_addr", 32, false]
113 ]
114 },
115 {
116 "name" : "udp_t",
117 "id" : 6,
118 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800119 ["sport", 16, false],
120 ["dport", 16, false],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200121 ["len", 16, false],
122 ["checksum", 16, false]
123 ]
124 },
125 {
126 "name" : "gtpu_t",
127 "id" : 7,
128 "fields" : [
129 ["version", 3, false],
130 ["pt", 1, false],
131 ["spare", 1, false],
132 ["ex_flag", 1, false],
133 ["seq_flag", 1, false],
134 ["npdu_flag", 1, false],
135 ["msgtype", 8, false],
136 ["msglen", 16, false],
137 ["teid", 32, false]
138 ]
139 },
140 {
141 "name" : "ipv6_t",
142 "id" : 8,
143 "fields" : [
144 ["version", 4, false],
145 ["traffic_class", 8, false],
146 ["flow_label", 20, false],
147 ["payload_len", 16, false],
148 ["next_hdr", 8, false],
149 ["hop_limit", 8, false],
150 ["src_addr", 128, false],
151 ["dst_addr", 128, false]
152 ]
153 },
154 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800155 "name" : "tcp_t",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200156 "id" : 9,
157 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800158 ["sport", 16, false],
159 ["dport", 16, false],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200160 ["seq_no", 32, false],
161 ["ack_no", 32, false],
162 ["data_offset", 4, false],
163 ["res", 3, false],
164 ["ecn", 3, false],
165 ["ctrl", 6, false],
166 ["window", 16, false],
167 ["checksum", 16, false],
168 ["urgent_ptr", 16, false]
169 ]
170 },
171 {
172 "name" : "icmp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800173 "id" : 10,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200174 "fields" : [
175 ["icmp_type", 8, false],
176 ["icmp_code", 8, false],
177 ["checksum", 16, false],
178 ["identifier", 16, false],
179 ["sequence_number", 16, false],
180 ["timestamp", 64, false]
181 ]
182 },
183 {
184 "name" : "packet_out_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800185 "id" : 11,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200186 "fields" : [
187 ["egress_port", 9, false],
188 ["_pad", 7, false]
189 ]
190 },
191 {
192 "name" : "packet_in_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800193 "id" : 12,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200194 "fields" : [
195 ["ingress_port", 9, false],
196 ["_pad", 7, false]
197 ]
198 },
199 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900200 "name" : "report_fixed_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800201 "id" : 13,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200202 "fields" : [
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900203 ["ver", 4, false],
204 ["nproto", 4, false],
205 ["d", 1, false],
206 ["q", 1, false],
207 ["f", 1, false],
208 ["rsvd", 15, false],
209 ["hw_id", 6, false],
210 ["seq_no", 32, false],
211 ["ingress_tstamp", 32, false]
212 ]
213 },
214 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900215 "name" : "intl4_shim_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800216 "id" : 14,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900217 "fields" : [
218 ["int_type", 8, false],
219 ["rsvd1", 8, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700220 ["len_words", 8, false],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900221 ["rsvd2", 8, false]
222 ]
223 },
224 {
225 "name" : "int_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800226 "id" : 15,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900227 "fields" : [
228 ["ver", 2, false],
229 ["rep", 2, false],
230 ["c", 1, false],
231 ["e", 1, false],
232 ["rsvd1", 5, false],
233 ["ins_cnt", 5, false],
234 ["max_hop_cnt", 8, false],
235 ["total_hop_cnt", 8, false],
236 ["instruction_mask_0003", 4, false],
237 ["instruction_mask_0407", 4, false],
238 ["instruction_mask_0811", 4, false],
239 ["instruction_mask_1215", 4, false],
240 ["rsvd2", 16, false]
241 ]
242 },
243 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900244 "name" : "int_switch_id_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800245 "id" : 16,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900246 "fields" : [
247 ["switch_id", 32, false]
248 ]
249 },
250 {
251 "name" : "int_port_ids_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800252 "id" : 17,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900253 "fields" : [
254 ["ingress_port_id", 16, false],
255 ["egress_port_id", 16, false]
256 ]
257 },
258 {
259 "name" : "int_hop_latency_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800260 "id" : 18,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900261 "fields" : [
262 ["hop_latency", 32, false]
263 ]
264 },
265 {
266 "name" : "int_q_occupancy_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800267 "id" : 19,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900268 "fields" : [
269 ["q_id", 8, false],
270 ["q_occupancy", 24, false]
271 ]
272 },
273 {
274 "name" : "int_ingress_tstamp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800275 "id" : 20,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900276 "fields" : [
277 ["ingress_tstamp", 32, false]
278 ]
279 },
280 {
281 "name" : "int_egress_tstamp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800282 "id" : 21,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900283 "fields" : [
284 ["egress_tstamp", 32, false]
285 ]
286 },
287 {
288 "name" : "int_q_congestion_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800289 "id" : 22,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900290 "fields" : [
291 ["q_id", 8, false],
292 ["q_congestion", 24, false]
293 ]
294 },
295 {
296 "name" : "int_egress_port_tx_util_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800297 "id" : 23,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900298 "fields" : [
299 ["egress_port_tx_util", 32, false]
300 ]
301 },
302 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700303 "name" : "int_data_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800304 "id" : 24,
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700305 "fields" : [
306 ["data", "*"]
307 ],
308 "max_length" : 1004
309 },
310 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900311 "name" : "intl4_tail_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800312 "id" : 25,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900313 "fields" : [
314 ["next_proto", 8, false],
315 ["dest_port", 16, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700316 ["padding", 2, false],
317 ["dscp", 6, false]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900318 ]
319 },
320 {
321 "name" : "spgw_meta_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800322 "id" : 26,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900323 "fields" : [
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700324 ["direction", 2, false],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200325 ["ipv4_len", 16, false],
326 ["teid", 32, false],
327 ["s1u_enb_addr", 32, false],
328 ["s1u_sgw_addr", 32, false],
329 ["_padding_0", 6, false]
330 ]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900331 },
332 {
333 "name" : "int_metadata_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800334 "id" : 27,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900335 "fields" : [
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700336 ["source", 1, 0],
337 ["transit", 1, 0],
338 ["sink", 1, 0],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900339 ["switch_id", 32, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700340 ["new_words", 8, false],
341 ["new_bytes", 16, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700342 ["ig_tstamp", 32, false],
343 ["eg_tstamp", 32, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700344 ["_padding_1", 5, false]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900345 ]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200346 }
347 ],
348 "headers" : [
349 {
350 "name" : "scalars",
351 "id" : 0,
352 "header_type" : "scalars_0",
353 "metadata" : true,
354 "pi_omit" : true
355 },
356 {
357 "name" : "standard_metadata",
358 "id" : 1,
359 "header_type" : "standard_metadata",
360 "metadata" : true,
361 "pi_omit" : true
362 },
363 {
364 "name" : "ethernet",
365 "id" : 2,
366 "header_type" : "ethernet_t",
367 "metadata" : false,
368 "pi_omit" : true
369 },
370 {
371 "name" : "vlan_tag",
372 "id" : 3,
373 "header_type" : "vlan_tag_t",
374 "metadata" : false,
375 "pi_omit" : true
376 },
377 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800378 "name" : "inner_vlan_tag",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200379 "id" : 4,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800380 "header_type" : "vlan_tag_t",
381 "metadata" : false,
382 "pi_omit" : true
383 },
384 {
385 "name" : "mpls",
386 "id" : 5,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200387 "header_type" : "mpls_t",
388 "metadata" : false,
389 "pi_omit" : true
390 },
391 {
392 "name" : "gtpu_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800393 "id" : 6,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200394 "header_type" : "ipv4_t",
395 "metadata" : false,
396 "pi_omit" : true
397 },
398 {
399 "name" : "gtpu_udp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800400 "id" : 7,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200401 "header_type" : "udp_t",
402 "metadata" : false,
403 "pi_omit" : true
404 },
405 {
406 "name" : "gtpu",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800407 "id" : 8,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200408 "header_type" : "gtpu_t",
409 "metadata" : false,
410 "pi_omit" : true
411 },
412 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700413 "name" : "inner_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800414 "id" : 9,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200415 "header_type" : "ipv4_t",
416 "metadata" : false,
417 "pi_omit" : true
418 },
419 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700420 "name" : "inner_udp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800421 "id" : 10,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700422 "header_type" : "udp_t",
423 "metadata" : false,
424 "pi_omit" : true
425 },
426 {
427 "name" : "ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800428 "id" : 11,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700429 "header_type" : "ipv4_t",
430 "metadata" : false,
431 "pi_omit" : true
432 },
433 {
434 "name" : "ipv6",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700435 "id" : 12,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800436 "header_type" : "ipv6_t",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200437 "metadata" : false,
438 "pi_omit" : true
439 },
440 {
441 "name" : "tcp",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700442 "id" : 13,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200443 "header_type" : "tcp_t",
444 "metadata" : false,
445 "pi_omit" : true
446 },
447 {
448 "name" : "udp",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700449 "id" : 14,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200450 "header_type" : "udp_t",
451 "metadata" : false,
452 "pi_omit" : true
453 },
454 {
455 "name" : "icmp",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700456 "id" : 15,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200457 "header_type" : "icmp_t",
458 "metadata" : false,
459 "pi_omit" : true
460 },
461 {
462 "name" : "packet_out",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700463 "id" : 16,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200464 "header_type" : "packet_out_header_t",
465 "metadata" : false,
466 "pi_omit" : true
467 },
468 {
469 "name" : "packet_in",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700470 "id" : 17,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200471 "header_type" : "packet_in_header_t",
472 "metadata" : false,
473 "pi_omit" : true
474 },
475 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900476 "name" : "report_ethernet",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700477 "id" : 18,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900478 "header_type" : "ethernet_t",
479 "metadata" : false,
480 "pi_omit" : true
481 },
482 {
483 "name" : "report_ipv4",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700484 "id" : 19,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900485 "header_type" : "ipv4_t",
486 "metadata" : false,
487 "pi_omit" : true
488 },
489 {
490 "name" : "report_udp",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700491 "id" : 20,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900492 "header_type" : "udp_t",
493 "metadata" : false,
494 "pi_omit" : true
495 },
496 {
497 "name" : "report_fixed_header",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -0700498 "id" : 21,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900499 "header_type" : "report_fixed_header_t",
500 "metadata" : false,
501 "pi_omit" : true
502 },
503 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900504 "name" : "intl4_shim",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700505 "id" : 22,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900506 "header_type" : "intl4_shim_t",
507 "metadata" : false,
508 "pi_omit" : true
509 },
510 {
511 "name" : "int_header",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700512 "id" : 23,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900513 "header_type" : "int_header_t",
514 "metadata" : false,
515 "pi_omit" : true
516 },
517 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900518 "name" : "int_switch_id",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700519 "id" : 24,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900520 "header_type" : "int_switch_id_t",
521 "metadata" : false,
522 "pi_omit" : true
523 },
524 {
525 "name" : "int_port_ids",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700526 "id" : 25,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900527 "header_type" : "int_port_ids_t",
528 "metadata" : false,
529 "pi_omit" : true
530 },
531 {
532 "name" : "int_hop_latency",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700533 "id" : 26,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900534 "header_type" : "int_hop_latency_t",
535 "metadata" : false,
536 "pi_omit" : true
537 },
538 {
539 "name" : "int_q_occupancy",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700540 "id" : 27,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900541 "header_type" : "int_q_occupancy_t",
542 "metadata" : false,
543 "pi_omit" : true
544 },
545 {
546 "name" : "int_ingress_tstamp",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700547 "id" : 28,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900548 "header_type" : "int_ingress_tstamp_t",
549 "metadata" : false,
550 "pi_omit" : true
551 },
552 {
553 "name" : "int_egress_tstamp",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700554 "id" : 29,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900555 "header_type" : "int_egress_tstamp_t",
556 "metadata" : false,
557 "pi_omit" : true
558 },
559 {
560 "name" : "int_q_congestion",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700561 "id" : 30,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900562 "header_type" : "int_q_congestion_t",
563 "metadata" : false,
564 "pi_omit" : true
565 },
566 {
567 "name" : "int_egress_tx_util",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700568 "id" : 31,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900569 "header_type" : "int_egress_port_tx_util_t",
570 "metadata" : false,
571 "pi_omit" : true
572 },
573 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700574 "name" : "int_data",
575 "id" : 32,
576 "header_type" : "int_data_t",
577 "metadata" : false,
578 "pi_omit" : true
579 },
580 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900581 "name" : "intl4_tail",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700582 "id" : 33,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900583 "header_type" : "intl4_tail_t",
584 "metadata" : false,
585 "pi_omit" : true
586 },
587 {
588 "name" : "userMetadata.spgw",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700589 "id" : 34,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200590 "header_type" : "spgw_meta_t",
591 "metadata" : true,
592 "pi_omit" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900593 },
594 {
595 "name" : "userMetadata.int_meta",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700596 "id" : 35,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900597 "header_type" : "int_metadata_t",
598 "metadata" : true,
599 "pi_omit" : true
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200600 }
601 ],
602 "header_stacks" : [],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700603 "header_union_types" : [],
604 "header_unions" : [],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200605 "header_union_stacks" : [],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900606 "field_lists" : [
607 {
608 "id" : 1,
609 "name" : "fl",
610 "elements" : []
611 }
612 ],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700613 "errors" : [
614 ["NoError", 1],
615 ["PacketTooShort", 2],
616 ["NoMatch", 3],
617 ["StackOutOfBounds", 4],
618 ["HeaderTooShort", 5],
619 ["ParserTimeout", 6]
620 ],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200621 "enums" : [],
622 "parsers" : [
623 {
624 "name" : "parser",
625 "id" : 0,
626 "init_state" : "start",
627 "parse_states" : [
628 {
629 "name" : "start",
630 "id" : 0,
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700631 "parser_ops" : [
632 {
633 "parameters" : [
634 {
635 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800636 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700637 },
638 {
639 "type" : "hexstr",
640 "value" : "0x00"
641 }
642 ],
643 "op" : "set"
644 }
645 ],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200646 "transitions" : [
647 {
648 "type" : "hexstr",
649 "value" : "0x00ff",
650 "mask" : null,
651 "next_state" : "parse_packet_out"
652 },
653 {
654 "value" : "default",
655 "mask" : null,
656 "next_state" : "parse_ethernet"
657 }
658 ],
659 "transition_key" : [
660 {
661 "type" : "field",
662 "value" : ["standard_metadata", "ingress_port"]
663 }
664 ]
665 },
666 {
667 "name" : "parse_packet_out",
668 "id" : 1,
669 "parser_ops" : [
670 {
671 "parameters" : [
672 {
673 "type" : "regular",
674 "value" : "packet_out"
675 }
676 ],
677 "op" : "extract"
678 }
679 ],
680 "transitions" : [
681 {
682 "value" : "default",
683 "mask" : null,
684 "next_state" : "parse_ethernet"
685 }
686 ],
687 "transition_key" : []
688 },
689 {
690 "name" : "parse_ethernet",
691 "id" : 2,
692 "parser_ops" : [
693 {
694 "parameters" : [
695 {
696 "type" : "regular",
697 "value" : "ethernet"
698 }
699 ],
700 "op" : "extract"
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800701 },
702 {
703 "parameters" : [
704 {
705 "type" : "field",
706 "value" : ["scalars", "fabric_metadata_t.eth_type"]
707 },
708 {
709 "type" : "field",
710 "value" : ["ethernet", "eth_type"]
711 }
712 ],
713 "op" : "set"
714 },
715 {
716 "parameters" : [
717 {
718 "type" : "field",
719 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
720 },
721 {
722 "type" : "hexstr",
723 "value" : "0x0ffe"
724 }
725 ],
726 "op" : "set"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200727 }
728 ],
729 "transitions" : [
730 {
731 "type" : "hexstr",
732 "value" : "0x8100",
733 "mask" : null,
734 "next_state" : "parse_vlan_tag"
735 },
736 {
737 "type" : "hexstr",
738 "value" : "0x8847",
739 "mask" : null,
740 "next_state" : "parse_mpls"
741 },
742 {
743 "type" : "hexstr",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200744 "value" : "0x0800",
745 "mask" : null,
746 "next_state" : "parse_ipv4"
747 },
748 {
749 "type" : "hexstr",
750 "value" : "0x86dd",
751 "mask" : null,
752 "next_state" : "parse_ipv6"
753 },
754 {
755 "value" : "default",
756 "mask" : null,
757 "next_state" : null
758 }
759 ],
760 "transition_key" : [
761 {
762 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800763 "value" : ["ethernet", "eth_type"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200764 }
765 ]
766 },
767 {
768 "name" : "parse_vlan_tag",
769 "id" : 3,
770 "parser_ops" : [
771 {
772 "parameters" : [
773 {
774 "type" : "regular",
775 "value" : "vlan_tag"
776 }
777 ],
778 "op" : "extract"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200779 }
780 ],
781 "transitions" : [
782 {
783 "type" : "hexstr",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800784 "value" : "0x0800",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200785 "mask" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800786 "next_state" : "parse_ipv4"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200787 },
788 {
789 "type" : "hexstr",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800790 "value" : "0x86dd",
791 "mask" : null,
792 "next_state" : "parse_ipv6"
793 },
794 {
795 "type" : "hexstr",
796 "value" : "0x8847",
797 "mask" : null,
798 "next_state" : "parse_mpls"
799 },
800 {
801 "type" : "hexstr",
802 "value" : "0x8100",
803 "mask" : null,
804 "next_state" : "parse_inner_vlan_tag"
805 },
806 {
807 "value" : "default",
808 "mask" : null,
809 "next_state" : null
810 }
811 ],
812 "transition_key" : [
813 {
814 "type" : "field",
815 "value" : ["vlan_tag", "eth_type"]
816 }
817 ]
818 },
819 {
820 "name" : "parse_inner_vlan_tag",
821 "id" : 4,
822 "parser_ops" : [
823 {
824 "parameters" : [
825 {
826 "type" : "regular",
827 "value" : "inner_vlan_tag"
828 }
829 ],
830 "op" : "extract"
831 }
832 ],
833 "transitions" : [
834 {
835 "type" : "hexstr",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200836 "value" : "0x0800",
837 "mask" : null,
838 "next_state" : "parse_ipv4"
839 },
840 {
841 "type" : "hexstr",
842 "value" : "0x86dd",
843 "mask" : null,
844 "next_state" : "parse_ipv6"
845 },
846 {
847 "type" : "hexstr",
848 "value" : "0x8847",
849 "mask" : null,
850 "next_state" : "parse_mpls"
851 },
852 {
853 "value" : "default",
854 "mask" : null,
855 "next_state" : null
856 }
857 ],
858 "transition_key" : [
859 {
860 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800861 "value" : ["inner_vlan_tag", "eth_type"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200862 }
863 ]
864 },
865 {
866 "name" : "parse_mpls",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800867 "id" : 5,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200868 "parser_ops" : [
869 {
870 "parameters" : [
871 {
872 "type" : "regular",
873 "value" : "mpls"
874 }
875 ],
876 "op" : "extract"
877 },
878 {
879 "parameters" : [
880 {
881 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800882 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
883 },
884 {
885 "type" : "field",
886 "value" : ["mpls", "label"]
887 }
888 ],
889 "op" : "set"
890 },
891 {
892 "parameters" : [
893 {
894 "type" : "field",
895 "value" : ["scalars", "fabric_metadata_t.mpls_ttl"]
896 },
897 {
898 "type" : "field",
899 "value" : ["mpls", "ttl"]
900 }
901 ],
902 "op" : "set"
903 },
904 {
905 "parameters" : [
906 {
907 "type" : "field",
908 "value" : ["scalars", "tmp_0"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200909 },
910 {
911 "type" : "lookahead",
912 "value" : [0, 4]
913 }
914 ],
915 "op" : "set"
916 }
917 ],
918 "transitions" : [
919 {
920 "type" : "hexstr",
921 "value" : "0x04",
922 "mask" : null,
923 "next_state" : "parse_ipv4"
924 },
925 {
926 "type" : "hexstr",
927 "value" : "0x06",
928 "mask" : null,
929 "next_state" : "parse_ipv6"
930 },
931 {
932 "value" : "default",
933 "mask" : null,
934 "next_state" : "parse_ethernet"
935 }
936 ],
937 "transition_key" : [
938 {
939 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800940 "value" : ["scalars", "tmp_0"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200941 }
942 ]
943 },
944 {
945 "name" : "parse_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800946 "id" : 6,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200947 "parser_ops" : [
948 {
949 "parameters" : [
950 {
951 "type" : "regular",
952 "value" : "ipv4"
953 }
954 ],
955 "op" : "extract"
956 },
957 {
958 "parameters" : [
959 {
960 "type" : "field",
961 "value" : ["scalars", "fabric_metadata_t.ip_proto"]
962 },
963 {
964 "type" : "field",
965 "value" : ["ipv4", "protocol"]
966 }
967 ],
968 "op" : "set"
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700969 },
970 {
971 "parameters" : [
972 {
973 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800974 "value" : ["scalars", "fabric_metadata_t.ip_eth_type"]
975 },
976 {
977 "type" : "hexstr",
978 "value" : "0x0800"
979 }
980 ],
981 "op" : "set"
982 },
983 {
984 "parameters" : [
985 {
986 "type" : "field",
987 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700988 },
989 {
990 "type" : "field",
991 "value" : ["ipv4", "dscp"]
992 }
993 ],
994 "op" : "set"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +0200995 }
996 ],
997 "transitions" : [
998 {
999 "type" : "hexstr",
1000 "value" : "0x06",
1001 "mask" : null,
1002 "next_state" : "parse_tcp"
1003 },
1004 {
1005 "type" : "hexstr",
1006 "value" : "0x11",
1007 "mask" : null,
1008 "next_state" : "parse_udp"
1009 },
1010 {
1011 "type" : "hexstr",
1012 "value" : "0x01",
1013 "mask" : null,
1014 "next_state" : "parse_icmp"
1015 },
1016 {
1017 "value" : "default",
1018 "mask" : null,
1019 "next_state" : null
1020 }
1021 ],
1022 "transition_key" : [
1023 {
1024 "type" : "field",
1025 "value" : ["ipv4", "protocol"]
1026 }
1027 ]
1028 },
1029 {
1030 "name" : "parse_ipv6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001031 "id" : 7,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001032 "parser_ops" : [
1033 {
1034 "parameters" : [
1035 {
1036 "type" : "regular",
1037 "value" : "ipv6"
1038 }
1039 ],
1040 "op" : "extract"
1041 },
1042 {
1043 "parameters" : [
1044 {
1045 "type" : "field",
1046 "value" : ["scalars", "fabric_metadata_t.ip_proto"]
1047 },
1048 {
1049 "type" : "field",
1050 "value" : ["ipv6", "next_hdr"]
1051 }
1052 ],
1053 "op" : "set"
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001054 },
1055 {
1056 "parameters" : [
1057 {
1058 "type" : "field",
1059 "value" : ["scalars", "fabric_metadata_t.ip_eth_type"]
1060 },
1061 {
1062 "type" : "hexstr",
1063 "value" : "0x86dd"
1064 }
1065 ],
1066 "op" : "set"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001067 }
1068 ],
1069 "transitions" : [
1070 {
1071 "type" : "hexstr",
1072 "value" : "0x06",
1073 "mask" : null,
1074 "next_state" : "parse_tcp"
1075 },
1076 {
1077 "type" : "hexstr",
1078 "value" : "0x11",
1079 "mask" : null,
1080 "next_state" : "parse_udp"
1081 },
1082 {
1083 "type" : "hexstr",
1084 "value" : "0x3a",
1085 "mask" : null,
1086 "next_state" : "parse_icmp"
1087 },
1088 {
1089 "value" : "default",
1090 "mask" : null,
1091 "next_state" : null
1092 }
1093 ],
1094 "transition_key" : [
1095 {
1096 "type" : "field",
1097 "value" : ["ipv6", "next_hdr"]
1098 }
1099 ]
1100 },
1101 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001102 "name" : "parse_tcp",
1103 "id" : 8,
1104 "parser_ops" : [
1105 {
1106 "parameters" : [
1107 {
1108 "type" : "regular",
1109 "value" : "tcp"
1110 }
1111 ],
1112 "op" : "extract"
1113 },
1114 {
1115 "parameters" : [
1116 {
1117 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001118 "value" : ["scalars", "fabric_metadata_t.l4_sport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001119 },
1120 {
1121 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001122 "value" : ["tcp", "sport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001123 }
1124 ],
1125 "op" : "set"
1126 },
1127 {
1128 "parameters" : [
1129 {
1130 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001131 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001132 },
1133 {
1134 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001135 "value" : ["tcp", "dport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001136 }
1137 ],
1138 "op" : "set"
1139 }
1140 ],
1141 "transitions" : [
1142 {
1143 "value" : "default",
1144 "mask" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001145 "next_state" : "parse_int"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001146 }
1147 ],
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001148 "transition_key" : []
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001149 },
1150 {
1151 "name" : "parse_udp",
1152 "id" : 9,
1153 "parser_ops" : [
1154 {
1155 "parameters" : [
1156 {
1157 "type" : "regular",
1158 "value" : "udp"
1159 }
1160 ],
1161 "op" : "extract"
1162 },
1163 {
1164 "parameters" : [
1165 {
1166 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001167 "value" : ["scalars", "fabric_metadata_t.l4_sport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001168 },
1169 {
1170 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001171 "value" : ["udp", "sport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001172 }
1173 ],
1174 "op" : "set"
1175 },
1176 {
1177 "parameters" : [
1178 {
1179 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001180 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001181 },
1182 {
1183 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001184 "value" : ["udp", "dport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001185 }
1186 ],
1187 "op" : "set"
1188 }
1189 ],
1190 "transitions" : [
1191 {
1192 "type" : "hexstr",
1193 "value" : "0x0868",
1194 "mask" : null,
1195 "next_state" : "parse_gtpu"
1196 },
1197 {
1198 "value" : "default",
1199 "mask" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001200 "next_state" : "parse_int"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001201 }
1202 ],
1203 "transition_key" : [
1204 {
1205 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001206 "value" : ["udp", "dport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001207 }
1208 ]
1209 },
1210 {
1211 "name" : "parse_icmp",
1212 "id" : 10,
1213 "parser_ops" : [
1214 {
1215 "parameters" : [
1216 {
1217 "type" : "regular",
1218 "value" : "icmp"
1219 }
1220 ],
1221 "op" : "extract"
1222 }
1223 ],
1224 "transitions" : [
1225 {
1226 "value" : "default",
1227 "mask" : null,
1228 "next_state" : null
1229 }
1230 ],
1231 "transition_key" : []
1232 },
1233 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001234 "name" : "parse_gtpu",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001235 "id" : 11,
1236 "parser_ops" : [
1237 {
1238 "parameters" : [
1239 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001240 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001241 "value" : ["scalars", "tmp"]
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001242 },
1243 {
1244 "type" : "expression",
1245 "value" : {
1246 "type" : "expression",
1247 "value" : {
1248 "op" : "&",
1249 "left" : {
Charles Chancf696e52018-08-16 16:25:13 -07001250 "type" : "expression",
1251 "value" : {
1252 "op" : "&",
1253 "left" : {
1254 "type" : "expression",
1255 "value" : {
1256 "op" : ">>",
1257 "left" : {
1258 "type" : "field",
1259 "value" : ["ipv4", "dst_addr"]
1260 },
1261 "right" : {
1262 "type" : "hexstr",
1263 "value" : "0x18"
1264 }
1265 }
1266 },
1267 "right" : {
1268 "type" : "hexstr",
1269 "value" : "0xffffffff"
1270 }
1271 }
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001272 },
1273 "right" : {
1274 "type" : "hexstr",
Charles Chancf696e52018-08-16 16:25:13 -07001275 "value" : "0xff"
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001276 }
1277 }
1278 }
1279 }
1280 ],
1281 "op" : "set"
1282 }
1283 ],
1284 "transitions" : [
1285 {
1286 "type" : "hexstr",
Charles Chancf696e52018-08-16 16:25:13 -07001287 "value" : "0x8c",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001288 "mask" : null,
1289 "next_state" : "do_parse_gtpu"
1290 },
1291 {
1292 "value" : "default",
1293 "mask" : null,
1294 "next_state" : null
1295 }
1296 ],
1297 "transition_key" : [
1298 {
1299 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001300 "value" : ["scalars", "tmp"]
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001301 }
1302 ]
1303 },
1304 {
1305 "name" : "do_parse_gtpu",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001306 "id" : 12,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001307 "parser_ops" : [
1308 {
1309 "parameters" : [
1310 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001311 "type" : "regular",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001312 "value" : "gtpu"
1313 }
1314 ],
1315 "op" : "extract"
1316 },
1317 {
1318 "parameters" : [
1319 {
1320 "type" : "regular",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001321 "value" : "inner_ipv4"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001322 }
1323 ],
1324 "op" : "extract"
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001325 },
1326 {
1327 "parameters" : [
1328 {
1329 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001330 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001331 },
1332 {
1333 "type" : "field",
1334 "value" : ["inner_ipv4", "dscp"]
1335 }
1336 ],
1337 "op" : "set"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001338 }
1339 ],
1340 "transitions" : [
1341 {
1342 "type" : "hexstr",
1343 "value" : "0x06",
1344 "mask" : null,
1345 "next_state" : "parse_tcp"
1346 },
1347 {
1348 "type" : "hexstr",
1349 "value" : "0x11",
1350 "mask" : null,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001351 "next_state" : "parse_inner_udp"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001352 },
1353 {
1354 "type" : "hexstr",
1355 "value" : "0x01",
1356 "mask" : null,
1357 "next_state" : "parse_icmp"
1358 },
1359 {
1360 "value" : "default",
1361 "mask" : null,
1362 "next_state" : null
1363 }
1364 ],
1365 "transition_key" : [
1366 {
1367 "type" : "field",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001368 "value" : ["inner_ipv4", "protocol"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001369 }
1370 ]
1371 },
1372 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001373 "name" : "parse_inner_udp",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001374 "id" : 13,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001375 "parser_ops" : [
1376 {
1377 "parameters" : [
1378 {
1379 "type" : "regular",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07001380 "value" : "inner_udp"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001381 }
1382 ],
1383 "op" : "extract"
1384 },
1385 {
1386 "parameters" : [
1387 {
1388 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001389 "value" : ["scalars", "fabric_metadata_t.l4_sport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001390 },
1391 {
1392 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001393 "value" : ["inner_udp", "sport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001394 }
1395 ],
1396 "op" : "set"
1397 },
1398 {
1399 "parameters" : [
1400 {
1401 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001402 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001403 },
1404 {
1405 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001406 "value" : ["inner_udp", "dport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001407 }
1408 ],
1409 "op" : "set"
1410 }
1411 ],
1412 "transitions" : [
1413 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001414 "value" : "default",
1415 "mask" : null,
1416 "next_state" : "parse_int"
1417 }
1418 ],
1419 "transition_key" : []
1420 },
1421 {
1422 "name" : "parse_int",
1423 "id" : 14,
1424 "parser_ops" : [],
1425 "transitions" : [
1426 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001427 "type" : "hexstr",
1428 "value" : "0x01",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001429 "mask" : "0x01",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001430 "next_state" : "parse_intl4_shim"
1431 },
1432 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001433 "value" : "default",
1434 "mask" : null,
1435 "next_state" : null
1436 }
1437 ],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001438 "transition_key" : [
1439 {
1440 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001441 "value" : ["scalars", "last_ipv4_dscp_0"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001442 }
1443 ]
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001444 },
1445 {
1446 "name" : "parse_intl4_shim",
1447 "id" : 15,
1448 "parser_ops" : [
1449 {
1450 "parameters" : [
1451 {
1452 "type" : "regular",
1453 "value" : "intl4_shim"
1454 }
1455 ],
1456 "op" : "extract"
1457 },
1458 {
1459 "parameters" : [
1460 {
1461 "type" : "regular",
1462 "value" : "int_header"
1463 }
1464 ],
1465 "op" : "extract"
1466 }
1467 ],
1468 "transitions" : [
1469 {
1470 "type" : "hexstr",
1471 "value" : "0x04",
1472 "mask" : null,
1473 "next_state" : "parse_intl4_tail"
1474 },
1475 {
1476 "value" : "default",
1477 "mask" : null,
1478 "next_state" : "parse_int_data"
1479 }
1480 ],
1481 "transition_key" : [
1482 {
1483 "type" : "field",
1484 "value" : ["intl4_shim", "len_words"]
1485 }
1486 ]
1487 },
1488 {
1489 "name" : "parse_int_data",
1490 "id" : 16,
1491 "parser_ops" : [
1492 {
1493 "parameters" : [
1494 {
1495 "type" : "field",
1496 "value" : ["scalars", "tmp_1"]
1497 },
1498 {
1499 "type" : "expression",
1500 "value" : {
1501 "type" : "expression",
1502 "value" : {
1503 "op" : "&",
1504 "left" : {
1505 "type" : "expression",
1506 "value" : {
1507 "op" : "<<",
1508 "left" : {
1509 "type" : "expression",
1510 "value" : {
1511 "op" : "&",
1512 "left" : {
1513 "type" : "expression",
1514 "value" : {
1515 "op" : "&",
1516 "left" : {
1517 "type" : "expression",
1518 "value" : {
1519 "op" : "+",
1520 "left" : {
1521 "type" : "field",
1522 "value" : ["intl4_shim", "len_words"]
1523 },
1524 "right" : {
1525 "type" : "hexstr",
1526 "value" : "0xfc"
1527 }
1528 }
1529 },
1530 "right" : {
1531 "type" : "hexstr",
1532 "value" : "0xff"
1533 }
1534 }
1535 },
1536 "right" : {
1537 "type" : "hexstr",
1538 "value" : "0xffffffff"
1539 }
1540 }
1541 },
1542 "right" : {
1543 "type" : "hexstr",
1544 "value" : "0x5"
1545 }
1546 }
1547 },
1548 "right" : {
1549 "type" : "hexstr",
1550 "value" : "0xffffffff"
1551 }
1552 }
1553 }
1554 }
1555 ],
1556 "op" : "set"
1557 },
1558 {
1559 "parameters" : [
1560 {
1561 "type" : "regular",
1562 "value" : "int_data"
1563 },
1564 {
1565 "type" : "expression",
1566 "value" : {
1567 "type" : "field",
1568 "value" : ["scalars", "tmp_1"]
1569 }
1570 }
1571 ],
1572 "op" : "extract_VL"
1573 }
1574 ],
1575 "transitions" : [
1576 {
1577 "value" : "default",
1578 "mask" : null,
1579 "next_state" : "parse_intl4_tail"
1580 }
1581 ],
1582 "transition_key" : []
1583 },
1584 {
1585 "name" : "parse_intl4_tail",
1586 "id" : 17,
1587 "parser_ops" : [
1588 {
1589 "parameters" : [
1590 {
1591 "type" : "regular",
1592 "value" : "intl4_tail"
1593 }
1594 ],
1595 "op" : "extract"
1596 }
1597 ],
1598 "transitions" : [
1599 {
1600 "value" : "default",
1601 "mask" : null,
1602 "next_state" : null
1603 }
1604 ],
1605 "transition_key" : []
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001606 }
1607 ]
1608 }
1609 ],
1610 "parse_vsets" : [],
1611 "deparsers" : [
1612 {
1613 "name" : "deparser",
1614 "id" : 0,
1615 "source_info" : {
1616 "filename" : "include/parser.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001617 "line" : 243,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001618 "column" : 8,
1619 "source_fragment" : "FabricDeparser"
1620 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001621 "order" : ["packet_in", "report_ethernet", "report_ipv4", "report_udp", "report_fixed_header", "ethernet", "vlan_tag", "inner_vlan_tag", "mpls", "gtpu_ipv4", "gtpu_udp", "gtpu", "ipv4", "ipv6", "tcp", "udp", "icmp", "intl4_shim", "int_header", "int_switch_id", "int_port_ids", "int_hop_latency", "int_q_occupancy", "int_ingress_tstamp", "int_egress_tstamp", "int_q_congestion", "int_egress_tx_util", "int_data", "intl4_tail"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001622 }
1623 ],
1624 "meter_arrays" : [],
1625 "counter_arrays" : [
1626 {
1627 "name" : "FabricIngress.spgw_ingress.ue_counter",
1628 "id" : 0,
1629 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001630 "binding" : "FabricIngress.spgw_ingress.dl_sess_lookup",
1631 "source_info" : {
1632 "filename" : "include/spgw.p4",
1633 "line" : 51,
1634 "column" : 50,
1635 "source_fragment" : "ue_counter"
1636 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001637 },
1638 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001639 "name" : "FabricIngress.process_set_source_sink.counter_set_source",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001640 "id" : 1,
1641 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001642 "binding" : "FabricIngress.process_set_source_sink.tb_set_source",
1643 "source_info" : {
1644 "filename" : "include/int/int_main.p4",
1645 "line" : 39,
1646 "column" : 50,
1647 "source_fragment" : "counter_set_source"
1648 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001649 },
1650 {
1651 "name" : "FabricIngress.process_set_source_sink.counter_set_sink",
1652 "id" : 2,
1653 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001654 "binding" : "FabricIngress.process_set_source_sink.tb_set_sink",
1655 "source_info" : {
1656 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001657 "line" : 60,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001658 "column" : 50,
1659 "source_fragment" : "counter_set_sink"
1660 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001661 },
1662 {
1663 "name" : "FabricIngress.filtering.ingress_port_vlan_counter",
1664 "id" : 3,
1665 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001666 "binding" : "FabricIngress.filtering.ingress_port_vlan",
1667 "source_info" : {
1668 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001669 "line" : 31,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001670 "column" : 50,
1671 "source_fragment" : "ingress_port_vlan_counter"
1672 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001673 },
1674 {
1675 "name" : "FabricIngress.filtering.fwd_classifier_counter",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001676 "id" : 4,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001677 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001678 "binding" : "FabricIngress.filtering.fwd_classifier",
1679 "source_info" : {
1680 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001681 "line" : 79,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001682 "column" : 50,
1683 "source_fragment" : "fwd_classifier_counter"
1684 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001685 },
1686 {
1687 "name" : "FabricIngress.forwarding.bridging_counter",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001688 "id" : 5,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001689 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001690 "binding" : "FabricIngress.forwarding.bridging",
1691 "source_info" : {
1692 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001693 "line" : 36,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001694 "column" : 50,
1695 "source_fragment" : "bridging_counter"
1696 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001697 },
1698 {
1699 "name" : "FabricIngress.forwarding.mpls_counter",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001700 "id" : 6,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001701 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001702 "binding" : "FabricIngress.forwarding.mpls",
1703 "source_info" : {
1704 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001705 "line" : 59,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001706 "column" : 50,
1707 "source_fragment" : "mpls_counter"
1708 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001709 },
1710 {
Charles Chan384aea22018-08-23 22:08:02 -07001711 "name" : "FabricIngress.forwarding.routing_v4_counter",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001712 "id" : 7,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001713 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001714 "binding" : "FabricIngress.forwarding.routing_v4",
1715 "source_info" : {
1716 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001717 "line" : 82,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001718 "column" : 50,
1719 "source_fragment" : "routing_v4_counter"
1720 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001721 },
1722 {
Charles Chan384aea22018-08-23 22:08:02 -07001723 "name" : "FabricIngress.forwarding.routing_v6_counter",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001724 "id" : 8,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001725 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001726 "binding" : "FabricIngress.forwarding.routing_v6",
1727 "source_info" : {
1728 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001729 "line" : 110,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001730 "column" : 50,
1731 "source_fragment" : "routing_v6_counter"
1732 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001733 },
1734 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001735 "name" : "FabricIngress.acl.acl_counter",
1736 "id" : 9,
1737 "is_direct" : true,
1738 "binding" : "FabricIngress.acl.acl",
1739 "source_info" : {
1740 "filename" : "include/control/acl.p4",
1741 "line" : 30,
1742 "column" : 50,
1743 "source_fragment" : "acl_counter"
1744 }
1745 },
1746 {
1747 "name" : "FabricIngress.next.next_vlan_counter",
Charles Chan384aea22018-08-23 22:08:02 -07001748 "id" : 10,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001749 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001750 "binding" : "FabricIngress.next.next_vlan",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001751 "source_info" : {
1752 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001753 "line" : 67,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001754 "column" : 50,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001755 "source_fragment" : "next_vlan_counter"
1756 }
1757 },
1758 {
1759 "name" : "FabricIngress.next.xconnect_counter",
1760 "id" : 11,
1761 "is_direct" : true,
1762 "binding" : "FabricIngress.next.xconnect",
1763 "source_info" : {
1764 "filename" : "include/control/next.p4",
1765 "line" : 91,
1766 "column" : 50,
1767 "source_fragment" : "xconnect_counter"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001768 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001769 },
1770 {
1771 "name" : "FabricIngress.next.simple_counter",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001772 "id" : 12,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001773 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001774 "binding" : "FabricIngress.next.simple",
1775 "source_info" : {
1776 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001777 "line" : 123,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001778 "column" : 50,
1779 "source_fragment" : "simple_counter"
1780 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001781 },
1782 {
1783 "name" : "FabricIngress.next.hashed_counter",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001784 "id" : 13,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001785 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001786 "binding" : "FabricIngress.next.hashed",
1787 "source_info" : {
1788 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001789 "line" : 162,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001790 "column" : 50,
1791 "source_fragment" : "hashed_counter"
1792 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001793 },
1794 {
1795 "name" : "FabricIngress.next.multicast_counter",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001796 "id" : 14,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001797 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001798 "binding" : "FabricIngress.next.multicast",
1799 "source_info" : {
1800 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001801 "line" : 205,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001802 "column" : 50,
1803 "source_fragment" : "multicast_counter"
1804 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001805 },
1806 {
1807 "name" : "FabricIngress.port_counters_control.egress_port_counter",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001808 "id" : 15,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001809 "source_info" : {
1810 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001811 "line" : 26,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001812 "column" : 48,
1813 "source_fragment" : "egress_port_counter"
1814 },
1815 "size" : 511,
1816 "is_direct" : false
1817 },
1818 {
1819 "name" : "FabricIngress.port_counters_control.ingress_port_counter",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001820 "id" : 16,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001821 "source_info" : {
1822 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001823 "line" : 27,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001824 "column" : 48,
1825 "source_fragment" : "ingress_port_counter"
1826 },
1827 "size" : 511,
1828 "is_direct" : false
1829 },
1830 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001831 "name" : "FabricEgress.process_int_main.process_int_source.counter_int_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001832 "id" : 17,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001833 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001834 "binding" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
1835 "source_info" : {
1836 "filename" : "include/int/int_source.p4",
1837 "line" : 27,
1838 "column" : 50,
1839 "source_fragment" : "counter_int_source"
1840 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001841 },
1842 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001843 "name" : "FabricEgress.egress_next.egress_vlan_counter",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001844 "id" : 18,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001845 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001846 "binding" : "FabricEgress.egress_next.egress_vlan",
1847 "source_info" : {
1848 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001849 "line" : 277,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001850 "column" : 50,
1851 "source_fragment" : "egress_vlan_counter"
1852 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001853 }
1854 ],
1855 "register_arrays" : [],
1856 "calculations" : [
1857 {
1858 "name" : "calc",
1859 "id" : 0,
1860 "source_info" : {
1861 "filename" : "include/checksum.p4",
1862 "line" : 28,
1863 "column" : 8,
1864 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
1865 },
1866 "algo" : "csum16",
1867 "input" : [
1868 {
1869 "type" : "field",
1870 "value" : ["ipv4", "version"]
1871 },
1872 {
1873 "type" : "field",
1874 "value" : ["ipv4", "ihl"]
1875 },
1876 {
1877 "type" : "field",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001878 "value" : ["ipv4", "dscp"]
1879 },
1880 {
1881 "type" : "field",
1882 "value" : ["ipv4", "ecn"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001883 },
1884 {
1885 "type" : "field",
1886 "value" : ["ipv4", "total_len"]
1887 },
1888 {
1889 "type" : "field",
1890 "value" : ["ipv4", "identification"]
1891 },
1892 {
1893 "type" : "field",
1894 "value" : ["ipv4", "flags"]
1895 },
1896 {
1897 "type" : "field",
1898 "value" : ["ipv4", "frag_offset"]
1899 },
1900 {
1901 "type" : "field",
1902 "value" : ["ipv4", "ttl"]
1903 },
1904 {
1905 "type" : "field",
1906 "value" : ["ipv4", "protocol"]
1907 },
1908 {
1909 "type" : "field",
1910 "value" : ["ipv4", "src_addr"]
1911 },
1912 {
1913 "type" : "field",
1914 "value" : ["ipv4", "dst_addr"]
1915 }
1916 ]
1917 },
1918 {
1919 "name" : "calc_0",
1920 "id" : 1,
1921 "source_info" : {
1922 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001923 "line" : 242,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001924 "column" : 8,
1925 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
1926 },
1927 "algo" : "csum16",
1928 "input" : [
1929 {
1930 "type" : "field",
1931 "value" : ["gtpu_ipv4", "version"]
1932 },
1933 {
1934 "type" : "field",
1935 "value" : ["gtpu_ipv4", "ihl"]
1936 },
1937 {
1938 "type" : "field",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001939 "value" : ["gtpu_ipv4", "dscp"]
1940 },
1941 {
1942 "type" : "field",
1943 "value" : ["gtpu_ipv4", "ecn"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001944 },
1945 {
1946 "type" : "field",
1947 "value" : ["gtpu_ipv4", "total_len"]
1948 },
1949 {
1950 "type" : "field",
1951 "value" : ["gtpu_ipv4", "identification"]
1952 },
1953 {
1954 "type" : "field",
1955 "value" : ["gtpu_ipv4", "flags"]
1956 },
1957 {
1958 "type" : "field",
1959 "value" : ["gtpu_ipv4", "frag_offset"]
1960 },
1961 {
1962 "type" : "field",
1963 "value" : ["gtpu_ipv4", "ttl"]
1964 },
1965 {
1966 "type" : "field",
1967 "value" : ["gtpu_ipv4", "protocol"]
1968 },
1969 {
1970 "type" : "field",
1971 "value" : ["gtpu_ipv4", "src_addr"]
1972 },
1973 {
1974 "type" : "field",
1975 "value" : ["gtpu_ipv4", "dst_addr"]
1976 }
1977 ]
1978 },
1979 {
1980 "name" : "calc_1",
1981 "id" : 2,
1982 "source_info" : {
1983 "filename" : "include/checksum.p4",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001984 "line" : 57,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02001985 "column" : 8,
1986 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
1987 },
1988 "algo" : "csum16",
1989 "input" : [
1990 {
1991 "type" : "field",
1992 "value" : ["ipv4", "version"]
1993 },
1994 {
1995 "type" : "field",
1996 "value" : ["ipv4", "ihl"]
1997 },
1998 {
1999 "type" : "field",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002000 "value" : ["ipv4", "dscp"]
2001 },
2002 {
2003 "type" : "field",
2004 "value" : ["ipv4", "ecn"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002005 },
2006 {
2007 "type" : "field",
2008 "value" : ["ipv4", "total_len"]
2009 },
2010 {
2011 "type" : "field",
2012 "value" : ["ipv4", "identification"]
2013 },
2014 {
2015 "type" : "field",
2016 "value" : ["ipv4", "flags"]
2017 },
2018 {
2019 "type" : "field",
2020 "value" : ["ipv4", "frag_offset"]
2021 },
2022 {
2023 "type" : "field",
2024 "value" : ["ipv4", "ttl"]
2025 },
2026 {
2027 "type" : "field",
2028 "value" : ["ipv4", "protocol"]
2029 },
2030 {
2031 "type" : "field",
2032 "value" : ["ipv4", "src_addr"]
2033 },
2034 {
2035 "type" : "field",
2036 "value" : ["ipv4", "dst_addr"]
2037 }
2038 ]
2039 }
2040 ],
2041 "learn_lists" : [],
2042 "actions" : [
2043 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002044 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002045 "id" : 0,
2046 "runtime_data" : [],
2047 "primitives" : []
2048 },
2049 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002050 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002051 "id" : 1,
2052 "runtime_data" : [],
2053 "primitives" : []
2054 },
2055 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002056 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002057 "id" : 2,
2058 "runtime_data" : [],
2059 "primitives" : []
2060 },
2061 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002062 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002063 "id" : 3,
2064 "runtime_data" : [],
2065 "primitives" : []
2066 },
2067 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002068 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002069 "id" : 4,
2070 "runtime_data" : [],
2071 "primitives" : []
2072 },
2073 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002074 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002075 "id" : 5,
2076 "runtime_data" : [],
2077 "primitives" : []
2078 },
2079 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002080 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002081 "id" : 6,
2082 "runtime_data" : [],
2083 "primitives" : []
2084 },
2085 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002086 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002087 "id" : 7,
2088 "runtime_data" : [],
2089 "primitives" : []
2090 },
2091 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002092 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002093 "id" : 8,
2094 "runtime_data" : [],
2095 "primitives" : []
2096 },
2097 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002098 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002099 "id" : 9,
2100 "runtime_data" : [],
2101 "primitives" : []
2102 },
2103 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002104 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002105 "id" : 10,
2106 "runtime_data" : [],
2107 "primitives" : []
2108 },
2109 {
Charles Chan384aea22018-08-23 22:08:02 -07002110 "name" : "nop",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002111 "id" : 11,
2112 "runtime_data" : [],
2113 "primitives" : []
2114 },
2115 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002116 "name" : "nop",
Charles Chan384aea22018-08-23 22:08:02 -07002117 "id" : 12,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002118 "runtime_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002119 "primitives" : []
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002120 },
2121 {
2122 "name" : "FabricIngress.spgw_ingress.gtpu_decap",
Charles Chan384aea22018-08-23 22:08:02 -07002123 "id" : 13,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002124 "runtime_data" : [],
2125 "primitives" : [
2126 {
2127 "op" : "remove_header",
2128 "parameters" : [
2129 {
2130 "type" : "header",
2131 "value" : "gtpu_ipv4"
2132 }
2133 ],
2134 "source_info" : {
2135 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002136 "line" : 55,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002137 "column" : 8,
2138 "source_fragment" : "gtpu_ipv4.setInvalid()"
2139 }
2140 },
2141 {
2142 "op" : "remove_header",
2143 "parameters" : [
2144 {
2145 "type" : "header",
2146 "value" : "gtpu_udp"
2147 }
2148 ],
2149 "source_info" : {
2150 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002151 "line" : 56,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002152 "column" : 8,
2153 "source_fragment" : "gtpu_udp.setInvalid()"
2154 }
2155 },
2156 {
2157 "op" : "remove_header",
2158 "parameters" : [
2159 {
2160 "type" : "header",
2161 "value" : "gtpu"
2162 }
2163 ],
2164 "source_info" : {
2165 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002166 "line" : 57,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002167 "column" : 8,
2168 "source_fragment" : "gtpu.setInvalid()"
2169 }
2170 }
2171 ]
2172 },
2173 {
2174 "name" : "FabricIngress.spgw_ingress.set_dl_sess_info",
Charles Chan384aea22018-08-23 22:08:02 -07002175 "id" : 14,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002176 "runtime_data" : [
2177 {
2178 "name" : "teid",
2179 "bitwidth" : 32
2180 },
2181 {
2182 "name" : "s1u_enb_addr",
2183 "bitwidth" : 32
2184 },
2185 {
2186 "name" : "s1u_sgw_addr",
2187 "bitwidth" : 32
2188 }
2189 ],
2190 "primitives" : [
2191 {
2192 "op" : "assign",
2193 "parameters" : [
2194 {
2195 "type" : "field",
2196 "value" : ["userMetadata.spgw", "teid"]
2197 },
2198 {
2199 "type" : "runtime_data",
2200 "value" : 0
2201 }
2202 ],
2203 "source_info" : {
2204 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002205 "line" : 63,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002206 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002207 "source_fragment" : "fabric_meta.spgw.teid = teid"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002208 }
2209 },
2210 {
2211 "op" : "assign",
2212 "parameters" : [
2213 {
2214 "type" : "field",
2215 "value" : ["userMetadata.spgw", "s1u_enb_addr"]
2216 },
2217 {
2218 "type" : "runtime_data",
2219 "value" : 1
2220 }
2221 ],
2222 "source_info" : {
2223 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002224 "line" : 64,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002225 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002226 "source_fragment" : "fabric_meta.spgw.s1u_enb_addr = s1u_enb_addr"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002227 }
2228 },
2229 {
2230 "op" : "assign",
2231 "parameters" : [
2232 {
2233 "type" : "field",
2234 "value" : ["userMetadata.spgw", "s1u_sgw_addr"]
2235 },
2236 {
2237 "type" : "runtime_data",
2238 "value" : 2
2239 }
2240 ],
2241 "source_info" : {
2242 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002243 "line" : 65,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002244 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002245 "source_fragment" : "fabric_meta.spgw.s1u_sgw_addr = s1u_sgw_addr"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002246 }
2247 }
2248 ]
2249 },
2250 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002251 "name" : "FabricIngress.process_set_source_sink.int_set_source",
Charles Chan384aea22018-08-23 22:08:02 -07002252 "id" : 15,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002253 "runtime_data" : [],
2254 "primitives" : [
2255 {
2256 "op" : "assign",
2257 "parameters" : [
2258 {
2259 "type" : "field",
2260 "value" : ["userMetadata.int_meta", "source"]
2261 },
2262 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002263 "type" : "expression",
2264 "value" : {
2265 "type" : "expression",
2266 "value" : {
2267 "op" : "b2d",
2268 "left" : null,
2269 "right" : {
2270 "type" : "bool",
2271 "value" : true
2272 }
2273 }
2274 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002275 }
2276 ],
2277 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002278 "filename" : "include/int/int_main.p4",
2279 "line" : 42,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002280 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002281 "source_fragment" : "fabric_metadata.int_meta.source = true"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002282 }
2283 }
2284 ]
2285 },
2286 {
2287 "name" : "FabricIngress.process_set_source_sink.int_set_sink",
Charles Chan384aea22018-08-23 22:08:02 -07002288 "id" : 16,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002289 "runtime_data" : [],
2290 "primitives" : [
2291 {
2292 "op" : "assign",
2293 "parameters" : [
2294 {
2295 "type" : "field",
2296 "value" : ["userMetadata.int_meta", "sink"]
2297 },
2298 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002299 "type" : "expression",
2300 "value" : {
2301 "type" : "expression",
2302 "value" : {
2303 "op" : "b2d",
2304 "left" : null,
2305 "right" : {
2306 "type" : "bool",
2307 "value" : true
2308 }
2309 }
2310 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002311 }
2312 ],
2313 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002314 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002315 "line" : 63,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002316 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002317 "source_fragment" : "fabric_metadata.int_meta.sink = true"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002318 }
2319 }
2320 ]
2321 },
2322 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002323 "name" : "FabricIngress.filtering.deny",
Charles Chan384aea22018-08-23 22:08:02 -07002324 "id" : 17,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002325 "runtime_data" : [],
2326 "primitives" : [
2327 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002328 "op" : "assign",
2329 "parameters" : [
2330 {
2331 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002332 "value" : ["scalars", "fabric_metadata_t.skip_forwarding"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002333 },
2334 {
2335 "type" : "expression",
2336 "value" : {
2337 "type" : "expression",
2338 "value" : {
2339 "op" : "b2d",
2340 "left" : null,
2341 "right" : {
2342 "type" : "bool",
2343 "value" : true
2344 }
2345 }
2346 }
2347 }
2348 ],
2349 "source_info" : {
2350 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002351 "line" : 36,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002352 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002353 "source_fragment" : "fabric_metadata.skip_forwarding = true"
2354 }
2355 },
2356 {
2357 "op" : "assign",
2358 "parameters" : [
2359 {
2360 "type" : "field",
2361 "value" : ["scalars", "fabric_metadata_t.skip_next"]
2362 },
2363 {
2364 "type" : "expression",
2365 "value" : {
2366 "type" : "expression",
2367 "value" : {
2368 "op" : "b2d",
2369 "left" : null,
2370 "right" : {
2371 "type" : "bool",
2372 "value" : true
2373 }
2374 }
2375 }
2376 }
2377 ],
2378 "source_info" : {
2379 "filename" : "include/control/filtering.p4",
2380 "line" : 37,
2381 "column" : 8,
2382 "source_fragment" : "fabric_metadata.skip_next = true"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002383 }
2384 }
2385 ]
2386 },
2387 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002388 "name" : "FabricIngress.filtering.permit",
2389 "id" : 18,
Carmelo Cascone8a715f82018-08-20 23:16:27 -07002390 "runtime_data" : [],
2391 "primitives" : []
2392 },
2393 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002394 "name" : "FabricIngress.filtering.permit_with_internal_vlan",
2395 "id" : 19,
2396 "runtime_data" : [
2397 {
2398 "name" : "vlan_id",
2399 "bitwidth" : 12
2400 }
2401 ],
2402 "primitives" : [
2403 {
2404 "op" : "assign",
2405 "parameters" : [
2406 {
2407 "type" : "field",
2408 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
2409 },
2410 {
2411 "type" : "runtime_data",
2412 "value" : 0
2413 }
2414 ],
2415 "source_info" : {
2416 "filename" : "include/control/filtering.p4",
2417 "line" : 47,
2418 "column" : 8,
2419 "source_fragment" : "fabric_metadata.vlan_id = vlan_id"
2420 }
2421 }
2422 ]
2423 },
2424 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002425 "name" : "FabricIngress.filtering.set_forwarding_type",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002426 "id" : 20,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002427 "runtime_data" : [
2428 {
2429 "name" : "fwd_type",
2430 "bitwidth" : 3
2431 }
2432 ],
2433 "primitives" : [
2434 {
2435 "op" : "assign",
2436 "parameters" : [
2437 {
2438 "type" : "field",
2439 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
2440 },
2441 {
2442 "type" : "runtime_data",
2443 "value" : 0
2444 }
2445 ],
2446 "source_info" : {
2447 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002448 "line" : 82,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002449 "column" : 8,
2450 "source_fragment" : "fabric_metadata.fwd_type = fwd_type"
2451 }
2452 }
2453 ]
2454 },
2455 {
2456 "name" : "FabricIngress.forwarding.set_next_id_bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002457 "id" : 21,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002458 "runtime_data" : [
2459 {
2460 "name" : "next_id",
2461 "bitwidth" : 32
2462 }
2463 ],
2464 "primitives" : [
2465 {
2466 "op" : "assign",
2467 "parameters" : [
2468 {
2469 "type" : "field",
2470 "value" : ["scalars", "fabric_metadata_t.next_id"]
2471 },
2472 {
2473 "type" : "runtime_data",
2474 "value" : 0
2475 }
2476 ],
2477 "source_info" : {
2478 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002479 "line" : 30,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002480 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002481 "source_fragment" : "fabric_metadata.next_id = next_id; ..."
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002482 }
2483 }
2484 ]
2485 },
2486 {
2487 "name" : "FabricIngress.forwarding.pop_mpls_and_next",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002488 "id" : 22,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002489 "runtime_data" : [
2490 {
2491 "name" : "next_id",
2492 "bitwidth" : 32
2493 }
2494 ],
2495 "primitives" : [
2496 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002497 "op" : "assign",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002498 "parameters" : [
2499 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002500 "type" : "field",
2501 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
2502 },
2503 {
2504 "type" : "hexstr",
2505 "value" : "0x000000"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002506 }
2507 ],
2508 "source_info" : {
2509 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002510 "line" : 62,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002511 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002512 "source_fragment" : "fabric_metadata.mpls_label = 0"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002513 }
2514 },
2515 {
2516 "op" : "assign",
2517 "parameters" : [
2518 {
2519 "type" : "field",
2520 "value" : ["scalars", "fabric_metadata_t.next_id"]
2521 },
2522 {
2523 "type" : "runtime_data",
2524 "value" : 0
2525 }
2526 ],
2527 "source_info" : {
2528 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002529 "line" : 30,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002530 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002531 "source_fragment" : "fabric_metadata.next_id = next_id; ..."
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002532 }
2533 }
2534 ]
2535 },
2536 {
Charles Chan384aea22018-08-23 22:08:02 -07002537 "name" : "FabricIngress.forwarding.set_next_id_routing_v4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002538 "id" : 23,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002539 "runtime_data" : [
2540 {
2541 "name" : "next_id",
2542 "bitwidth" : 32
2543 }
2544 ],
2545 "primitives" : [
2546 {
2547 "op" : "assign",
2548 "parameters" : [
2549 {
2550 "type" : "field",
2551 "value" : ["scalars", "fabric_metadata_t.next_id"]
2552 },
2553 {
2554 "type" : "runtime_data",
2555 "value" : 0
2556 }
2557 ],
2558 "source_info" : {
2559 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002560 "line" : 30,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002561 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002562 "source_fragment" : "fabric_metadata.next_id = next_id; ..."
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002563 }
2564 }
2565 ]
2566 },
2567 {
Charles Chancd03f072018-08-31 17:46:37 -07002568 "name" : "FabricIngress.forwarding.nop_routing_v4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002569 "id" : 24,
Charles Chancd03f072018-08-31 17:46:37 -07002570 "runtime_data" : [],
2571 "primitives" : []
2572 },
2573 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002574 "name" : "FabricIngress.forwarding.set_next_id_routing_v6",
2575 "id" : 25,
2576 "runtime_data" : [
2577 {
2578 "name" : "next_id",
2579 "bitwidth" : 32
2580 }
2581 ],
2582 "primitives" : [
2583 {
2584 "op" : "assign",
2585 "parameters" : [
2586 {
2587 "type" : "field",
2588 "value" : ["scalars", "fabric_metadata_t.next_id"]
2589 },
2590 {
2591 "type" : "runtime_data",
2592 "value" : 0
2593 }
2594 ],
2595 "source_info" : {
2596 "filename" : "include/control/forwarding.p4",
2597 "line" : 30,
2598 "column" : 8,
2599 "source_fragment" : "fabric_metadata.next_id = next_id; ..."
2600 }
2601 }
2602 ]
2603 },
2604 {
2605 "name" : "FabricIngress.acl.set_next_id_acl",
Charles Chancd03f072018-08-31 17:46:37 -07002606 "id" : 26,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002607 "runtime_data" : [
2608 {
2609 "name" : "next_id",
2610 "bitwidth" : 32
2611 }
2612 ],
2613 "primitives" : [
2614 {
2615 "op" : "assign",
2616 "parameters" : [
2617 {
2618 "type" : "field",
2619 "value" : ["scalars", "fabric_metadata_t.next_id"]
2620 },
2621 {
2622 "type" : "runtime_data",
2623 "value" : 0
2624 }
2625 ],
2626 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002627 "filename" : "include/control/acl.p4",
2628 "line" : 33,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002629 "column" : 8,
2630 "source_fragment" : "fabric_metadata.next_id = next_id"
2631 }
2632 }
2633 ]
2634 },
2635 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002636 "name" : "FabricIngress.acl.punt_to_cpu",
Charles Chancd03f072018-08-31 17:46:37 -07002637 "id" : 27,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002638 "runtime_data" : [],
2639 "primitives" : [
2640 {
2641 "op" : "assign",
2642 "parameters" : [
2643 {
2644 "type" : "field",
2645 "value" : ["standard_metadata", "egress_spec"]
2646 },
2647 {
2648 "type" : "hexstr",
2649 "value" : "0x00ff"
2650 }
2651 ],
2652 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002653 "filename" : "include/control/acl.p4",
2654 "line" : 39,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002655 "column" : 8,
2656 "source_fragment" : "standard_metadata.egress_spec = 255"
2657 }
2658 },
2659 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002660 "op" : "assign",
2661 "parameters" : [
2662 {
2663 "type" : "field",
2664 "value" : ["scalars", "fabric_metadata_t.skip_next"]
2665 },
2666 {
2667 "type" : "expression",
2668 "value" : {
2669 "type" : "expression",
2670 "value" : {
2671 "op" : "b2d",
2672 "left" : null,
2673 "right" : {
2674 "type" : "bool",
2675 "value" : true
2676 }
2677 }
2678 }
2679 }
2680 ],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002681 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002682 "filename" : "include/control/acl.p4",
2683 "line" : 40,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002684 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002685 "source_fragment" : "fabric_metadata.skip_next = true"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002686 }
2687 }
2688 ]
2689 },
2690 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002691 "name" : "FabricIngress.acl.clone_to_cpu",
Charles Chancd03f072018-08-31 17:46:37 -07002692 "id" : 28,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002693 "runtime_data" : [],
2694 "primitives" : [
2695 {
2696 "op" : "assign",
2697 "parameters" : [
2698 {
2699 "type" : "field",
2700 "value" : ["scalars", "fabric_metadata_t.clone_to_cpu"]
2701 },
2702 {
2703 "type" : "expression",
2704 "value" : {
2705 "type" : "expression",
2706 "value" : {
2707 "op" : "b2d",
2708 "left" : null,
2709 "right" : {
2710 "type" : "bool",
2711 "value" : true
2712 }
2713 }
2714 }
2715 }
2716 ],
2717 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002718 "filename" : "include/control/acl.p4",
2719 "line" : 46,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002720 "column" : 8,
2721 "source_fragment" : "fabric_metadata.clone_to_cpu = true"
2722 }
2723 }
2724 ]
2725 },
2726 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002727 "name" : "FabricIngress.acl.drop",
Charles Chancd03f072018-08-31 17:46:37 -07002728 "id" : 29,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002729 "runtime_data" : [],
2730 "primitives" : [
2731 {
2732 "op" : "drop",
2733 "parameters" : [],
2734 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002735 "filename" : "include/control/acl.p4",
2736 "line" : 51,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002737 "column" : 8,
2738 "source_fragment" : "mark_to_drop()"
2739 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002740 },
2741 {
2742 "op" : "assign",
2743 "parameters" : [
2744 {
2745 "type" : "field",
2746 "value" : ["scalars", "fabric_metadata_t.skip_next"]
2747 },
2748 {
2749 "type" : "expression",
2750 "value" : {
2751 "type" : "expression",
2752 "value" : {
2753 "op" : "b2d",
2754 "left" : null,
2755 "right" : {
2756 "type" : "bool",
2757 "value" : true
2758 }
2759 }
2760 }
2761 }
2762 ],
2763 "source_info" : {
2764 "filename" : "include/control/acl.p4",
2765 "line" : 52,
2766 "column" : 8,
2767 "source_fragment" : "fabric_metadata.skip_next = true"
2768 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002769 }
2770 ]
2771 },
2772 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002773 "name" : "FabricIngress.acl.nop_acl",
Charles Chancd03f072018-08-31 17:46:37 -07002774 "id" : 30,
Charles Chancf696e52018-08-16 16:25:13 -07002775 "runtime_data" : [],
2776 "primitives" : []
2777 },
2778 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002779 "name" : "FabricIngress.next.set_vlan",
Charles Chancd03f072018-08-31 17:46:37 -07002780 "id" : 31,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002781 "runtime_data" : [
2782 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002783 "name" : "vlan_id",
2784 "bitwidth" : 12
2785 }
2786 ],
2787 "primitives" : [
2788 {
2789 "op" : "assign",
2790 "parameters" : [
2791 {
2792 "type" : "field",
2793 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
2794 },
2795 {
2796 "type" : "runtime_data",
2797 "value" : 0
2798 }
2799 ],
2800 "source_info" : {
2801 "filename" : "include/control/next.p4",
2802 "line" : 70,
2803 "column" : 8,
2804 "source_fragment" : "fabric_metadata.vlan_id = vlan_id"
2805 }
2806 }
2807 ]
2808 },
2809 {
2810 "name" : "FabricIngress.next.output_xconnect",
2811 "id" : 32,
2812 "runtime_data" : [
2813 {
2814 "name" : "port_num",
2815 "bitwidth" : 9
2816 }
2817 ],
2818 "primitives" : [
2819 {
2820 "op" : "assign",
2821 "parameters" : [
2822 {
2823 "type" : "field",
2824 "value" : ["standard_metadata", "egress_spec"]
2825 },
2826 {
2827 "type" : "runtime_data",
2828 "value" : 0
2829 }
2830 ],
2831 "source_info" : {
2832 "filename" : "include/control/next.p4",
2833 "line" : 31,
2834 "column" : 5,
2835 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2836 }
2837 }
2838 ]
2839 },
2840 {
2841 "name" : "FabricIngress.next.set_next_id_xconnect",
2842 "id" : 33,
2843 "runtime_data" : [
2844 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002845 "name" : "next_id",
2846 "bitwidth" : 32
2847 }
2848 ],
2849 "primitives" : [
2850 {
2851 "op" : "assign",
2852 "parameters" : [
2853 {
2854 "type" : "field",
2855 "value" : ["scalars", "fabric_metadata_t.next_id"]
2856 },
2857 {
2858 "type" : "runtime_data",
2859 "value" : 0
2860 }
2861 ],
2862 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002863 "filename" : "include/control/next.p4",
2864 "line" : 99,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002865 "column" : 8,
2866 "source_fragment" : "fabric_metadata.next_id = next_id"
2867 }
2868 }
2869 ]
2870 },
2871 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002872 "name" : "FabricIngress.next.output_simple",
Charles Chancd03f072018-08-31 17:46:37 -07002873 "id" : 34,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002874 "runtime_data" : [
2875 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002876 "name" : "port_num",
2877 "bitwidth" : 9
2878 }
2879 ],
2880 "primitives" : [
2881 {
2882 "op" : "assign",
2883 "parameters" : [
2884 {
2885 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002886 "value" : ["standard_metadata", "egress_spec"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002887 },
2888 {
2889 "type" : "runtime_data",
2890 "value" : 0
2891 }
2892 ],
2893 "source_info" : {
2894 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002895 "line" : 31,
2896 "column" : 5,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002897 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2898 }
2899 }
2900 ]
2901 },
2902 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002903 "name" : "FabricIngress.next.routing_simple",
Charles Chancd03f072018-08-31 17:46:37 -07002904 "id" : 35,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002905 "runtime_data" : [
2906 {
2907 "name" : "port_num",
2908 "bitwidth" : 9
2909 },
2910 {
2911 "name" : "smac",
2912 "bitwidth" : 48
2913 },
2914 {
2915 "name" : "dmac",
2916 "bitwidth" : 48
2917 }
2918 ],
2919 "primitives" : [
2920 {
2921 "op" : "assign",
2922 "parameters" : [
2923 {
2924 "type" : "field",
2925 "value" : ["ethernet", "src_addr"]
2926 },
2927 {
2928 "type" : "runtime_data",
2929 "value" : 1
2930 }
2931 ],
2932 "source_info" : {
2933 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002934 "line" : 36,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002935 "column" : 8,
2936 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2937 }
2938 },
2939 {
2940 "op" : "assign",
2941 "parameters" : [
2942 {
2943 "type" : "field",
2944 "value" : ["ethernet", "dst_addr"]
2945 },
2946 {
2947 "type" : "runtime_data",
2948 "value" : 2
2949 }
2950 ],
2951 "source_info" : {
2952 "filename" : "include/control/next.p4",
2953 "line" : 41,
2954 "column" : 8,
2955 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2956 }
2957 },
2958 {
2959 "op" : "assign",
2960 "parameters" : [
2961 {
2962 "type" : "field",
2963 "value" : ["standard_metadata", "egress_spec"]
2964 },
2965 {
2966 "type" : "runtime_data",
2967 "value" : 0
2968 }
2969 ],
2970 "source_info" : {
2971 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002972 "line" : 31,
2973 "column" : 5,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002974 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2975 }
2976 }
2977 ]
2978 },
2979 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002980 "name" : "FabricIngress.next.mpls_routing_simple",
Charles Chan384aea22018-08-23 22:08:02 -07002981 "id" : 36,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02002982 "runtime_data" : [
2983 {
2984 "name" : "port_num",
2985 "bitwidth" : 9
2986 },
2987 {
2988 "name" : "smac",
2989 "bitwidth" : 48
2990 },
2991 {
2992 "name" : "dmac",
2993 "bitwidth" : 48
2994 },
2995 {
2996 "name" : "label",
2997 "bitwidth" : 20
2998 }
2999 ],
3000 "primitives" : [
3001 {
3002 "op" : "assign",
3003 "parameters" : [
3004 {
3005 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003006 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
3007 },
3008 {
3009 "type" : "runtime_data",
3010 "value" : 3
3011 }
3012 ],
3013 "source_info" : {
3014 "filename" : "include/control/next.p4",
3015 "line" : 46,
3016 "column" : 8,
3017 "source_fragment" : "fabric_metadata.mpls_label = label; ..."
3018 }
3019 },
3020 {
3021 "op" : "assign",
3022 "parameters" : [
3023 {
3024 "type" : "field",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003025 "value" : ["ethernet", "src_addr"]
3026 },
3027 {
3028 "type" : "runtime_data",
3029 "value" : 1
3030 }
3031 ],
3032 "source_info" : {
3033 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003034 "line" : 36,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003035 "column" : 8,
3036 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
3037 }
3038 },
3039 {
3040 "op" : "assign",
3041 "parameters" : [
3042 {
3043 "type" : "field",
3044 "value" : ["ethernet", "dst_addr"]
3045 },
3046 {
3047 "type" : "runtime_data",
3048 "value" : 2
3049 }
3050 ],
3051 "source_info" : {
3052 "filename" : "include/control/next.p4",
3053 "line" : 41,
3054 "column" : 8,
3055 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
3056 }
3057 },
3058 {
3059 "op" : "assign",
3060 "parameters" : [
3061 {
3062 "type" : "field",
3063 "value" : ["standard_metadata", "egress_spec"]
3064 },
3065 {
3066 "type" : "runtime_data",
3067 "value" : 0
3068 }
3069 ],
3070 "source_info" : {
3071 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003072 "line" : 31,
3073 "column" : 5,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003074 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
3075 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003076 }
3077 ]
3078 },
3079 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003080 "name" : "FabricIngress.next.output_hashed",
Charles Chan384aea22018-08-23 22:08:02 -07003081 "id" : 37,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003082 "runtime_data" : [
3083 {
3084 "name" : "port_num",
3085 "bitwidth" : 9
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003086 }
3087 ],
3088 "primitives" : [
3089 {
3090 "op" : "assign",
3091 "parameters" : [
3092 {
3093 "type" : "field",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003094 "value" : ["standard_metadata", "egress_spec"]
3095 },
3096 {
3097 "type" : "runtime_data",
3098 "value" : 0
3099 }
3100 ],
3101 "source_info" : {
3102 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003103 "line" : 31,
3104 "column" : 5,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003105 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
3106 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003107 }
3108 ]
3109 },
3110 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003111 "name" : "FabricIngress.next.routing_hashed",
Charles Chancd03f072018-08-31 17:46:37 -07003112 "id" : 38,
3113 "runtime_data" : [
3114 {
3115 "name" : "port_num",
3116 "bitwidth" : 9
3117 },
3118 {
3119 "name" : "smac",
3120 "bitwidth" : 48
3121 },
3122 {
3123 "name" : "dmac",
3124 "bitwidth" : 48
Charles Chancd03f072018-08-31 17:46:37 -07003125 }
3126 ],
3127 "primitives" : [
3128 {
3129 "op" : "assign",
3130 "parameters" : [
3131 {
3132 "type" : "field",
3133 "value" : ["ethernet", "src_addr"]
3134 },
3135 {
3136 "type" : "runtime_data",
3137 "value" : 1
3138 }
3139 ],
3140 "source_info" : {
3141 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003142 "line" : 36,
Charles Chancd03f072018-08-31 17:46:37 -07003143 "column" : 8,
3144 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
3145 }
3146 },
3147 {
3148 "op" : "assign",
3149 "parameters" : [
3150 {
3151 "type" : "field",
3152 "value" : ["ethernet", "dst_addr"]
3153 },
3154 {
3155 "type" : "runtime_data",
3156 "value" : 2
3157 }
3158 ],
3159 "source_info" : {
3160 "filename" : "include/control/next.p4",
3161 "line" : 41,
3162 "column" : 8,
3163 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
3164 }
3165 },
3166 {
3167 "op" : "assign",
3168 "parameters" : [
3169 {
3170 "type" : "field",
Charles Chancd03f072018-08-31 17:46:37 -07003171 "value" : ["standard_metadata", "egress_spec"]
3172 },
3173 {
3174 "type" : "runtime_data",
3175 "value" : 0
3176 }
3177 ],
3178 "source_info" : {
3179 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003180 "line" : 31,
3181 "column" : 5,
Charles Chancd03f072018-08-31 17:46:37 -07003182 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
3183 }
3184 }
3185 ]
3186 },
3187 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003188 "name" : "FabricIngress.next.mpls_routing_hashed",
Charles Chancd03f072018-08-31 17:46:37 -07003189 "id" : 39,
3190 "runtime_data" : [
3191 {
3192 "name" : "port_num",
3193 "bitwidth" : 9
3194 },
3195 {
3196 "name" : "smac",
3197 "bitwidth" : 48
3198 },
3199 {
3200 "name" : "dmac",
3201 "bitwidth" : 48
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003202 },
3203 {
3204 "name" : "label",
3205 "bitwidth" : 20
Charles Chancd03f072018-08-31 17:46:37 -07003206 }
3207 ],
3208 "primitives" : [
3209 {
3210 "op" : "assign",
3211 "parameters" : [
3212 {
3213 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003214 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
3215 },
3216 {
3217 "type" : "runtime_data",
3218 "value" : 3
3219 }
3220 ],
3221 "source_info" : {
3222 "filename" : "include/control/next.p4",
3223 "line" : 46,
3224 "column" : 8,
3225 "source_fragment" : "fabric_metadata.mpls_label = label; ..."
3226 }
3227 },
3228 {
3229 "op" : "assign",
3230 "parameters" : [
3231 {
3232 "type" : "field",
Charles Chancd03f072018-08-31 17:46:37 -07003233 "value" : ["ethernet", "src_addr"]
3234 },
3235 {
3236 "type" : "runtime_data",
3237 "value" : 1
3238 }
3239 ],
3240 "source_info" : {
3241 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003242 "line" : 36,
Charles Chancd03f072018-08-31 17:46:37 -07003243 "column" : 8,
3244 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
3245 }
3246 },
3247 {
3248 "op" : "assign",
3249 "parameters" : [
3250 {
3251 "type" : "field",
3252 "value" : ["ethernet", "dst_addr"]
3253 },
3254 {
3255 "type" : "runtime_data",
3256 "value" : 2
3257 }
3258 ],
3259 "source_info" : {
3260 "filename" : "include/control/next.p4",
3261 "line" : 41,
3262 "column" : 8,
3263 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
3264 }
3265 },
3266 {
3267 "op" : "assign",
3268 "parameters" : [
3269 {
3270 "type" : "field",
3271 "value" : ["standard_metadata", "egress_spec"]
3272 },
3273 {
3274 "type" : "runtime_data",
3275 "value" : 0
3276 }
3277 ],
3278 "source_info" : {
3279 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003280 "line" : 31,
3281 "column" : 5,
Charles Chancd03f072018-08-31 17:46:37 -07003282 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
3283 }
3284 }
3285 ]
3286 },
3287 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003288 "name" : "FabricIngress.next.set_mcast_group_id",
Charles Chan384aea22018-08-23 22:08:02 -07003289 "id" : 40,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003290 "runtime_data" : [
3291 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003292 "name" : "group_id",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003293 "bitwidth" : 16
3294 }
3295 ],
3296 "primitives" : [
3297 {
3298 "op" : "assign",
3299 "parameters" : [
3300 {
3301 "type" : "field",
3302 "value" : ["standard_metadata", "mcast_grp"]
3303 },
3304 {
3305 "type" : "runtime_data",
3306 "value" : 0
3307 }
3308 ],
3309 "source_info" : {
3310 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003311 "line" : 208,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003312 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003313 "source_fragment" : "standard_metadata.mcast_grp = group_id"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003314 }
3315 },
3316 {
3317 "op" : "assign",
3318 "parameters" : [
3319 {
3320 "type" : "field",
3321 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
3322 },
3323 {
3324 "type" : "expression",
3325 "value" : {
3326 "type" : "expression",
3327 "value" : {
3328 "op" : "b2d",
3329 "left" : null,
3330 "right" : {
3331 "type" : "bool",
3332 "value" : true
3333 }
3334 }
3335 }
3336 }
3337 ],
3338 "source_info" : {
3339 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003340 "line" : 209,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003341 "column" : 8,
3342 "source_fragment" : "fabric_metadata.is_multicast = true"
3343 }
3344 }
3345 ]
3346 },
3347 {
3348 "name" : "act",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003349 "id" : 41,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003350 "runtime_data" : [],
3351 "primitives" : [
3352 {
3353 "op" : "assign",
3354 "parameters" : [
3355 {
3356 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003357 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003358 },
3359 {
3360 "type" : "expression",
3361 "value" : {
3362 "type" : "expression",
3363 "value" : {
3364 "op" : "b2d",
3365 "left" : null,
3366 "right" : {
3367 "type" : "bool",
3368 "value" : true
3369 }
3370 }
3371 }
3372 }
3373 ],
3374 "source_info" : {
3375 "filename" : "include/spgw.p4",
3376 "line" : 30,
3377 "column" : 32,
3378 "source_fragment" : "return"
3379 }
3380 }
3381 ]
3382 },
3383 {
3384 "name" : "act_0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003385 "id" : 42,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003386 "runtime_data" : [],
3387 "primitives" : [
3388 {
3389 "op" : "remove_header",
3390 "parameters" : [
3391 {
3392 "type" : "header",
3393 "value" : "gtpu_ipv4"
3394 }
3395 ],
3396 "source_info" : {
3397 "filename" : "fabric.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003398 "line" : 57,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003399 "column" : 50,
3400 "source_fragment" : "hdr.gtpu_ipv4"
3401 }
3402 },
3403 {
3404 "op" : "remove_header",
3405 "parameters" : [
3406 {
3407 "type" : "header",
3408 "value" : "gtpu_udp"
3409 }
3410 ],
3411 "source_info" : {
3412 "filename" : "fabric.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003413 "line" : 57,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003414 "column" : 65,
3415 "source_fragment" : "hdr.gtpu_udp"
3416 }
3417 },
3418 {
3419 "op" : "assign",
3420 "parameters" : [
3421 {
3422 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003423 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003424 },
3425 {
3426 "type" : "expression",
3427 "value" : {
3428 "type" : "expression",
3429 "value" : {
3430 "op" : "b2d",
3431 "left" : null,
3432 "right" : {
3433 "type" : "bool",
3434 "value" : false
3435 }
3436 }
3437 }
3438 }
3439 ]
3440 }
3441 ]
3442 },
3443 {
3444 "name" : "act_1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003445 "id" : 43,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003446 "runtime_data" : [],
3447 "primitives" : [
3448 {
3449 "op" : "assign_header",
3450 "parameters" : [
3451 {
3452 "type" : "header",
3453 "value" : "udp"
3454 },
3455 {
3456 "type" : "header",
3457 "value" : "inner_udp"
3458 }
3459 ],
3460 "source_info" : {
3461 "filename" : "include/spgw.p4",
3462 "line" : 35,
3463 "column" : 16,
3464 "source_fragment" : "= inner_udp; ..."
3465 }
3466 }
3467 ]
3468 },
3469 {
3470 "name" : "act_2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003471 "id" : 44,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003472 "runtime_data" : [],
3473 "primitives" : [
3474 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003475 "op" : "remove_header",
3476 "parameters" : [
3477 {
3478 "type" : "header",
3479 "value" : "udp"
3480 }
3481 ],
3482 "source_info" : {
3483 "filename" : "include/spgw.p4",
3484 "line" : 37,
3485 "column" : 12,
3486 "source_fragment" : "udp.setInvalid()"
3487 }
3488 }
3489 ]
3490 },
3491 {
3492 "name" : "act_3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003493 "id" : 45,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003494 "runtime_data" : [],
3495 "primitives" : [
3496 {
3497 "op" : "assign_header",
3498 "parameters" : [
3499 {
3500 "type" : "header",
3501 "value" : "gtpu_ipv4"
3502 },
3503 {
3504 "type" : "header",
3505 "value" : "ipv4"
3506 }
3507 ],
3508 "source_info" : {
3509 "filename" : "include/spgw.p4",
3510 "line" : 31,
3511 "column" : 18,
3512 "source_fragment" : "= ipv4; ..."
3513 }
3514 },
3515 {
3516 "op" : "assign_header",
3517 "parameters" : [
3518 {
3519 "type" : "header",
3520 "value" : "ipv4"
3521 },
3522 {
3523 "type" : "header",
3524 "value" : "inner_ipv4"
3525 }
3526 ],
3527 "source_info" : {
3528 "filename" : "include/spgw.p4",
3529 "line" : 32,
3530 "column" : 13,
3531 "source_fragment" : "= inner_ipv4; ..."
3532 }
3533 },
3534 {
3535 "op" : "assign_header",
3536 "parameters" : [
3537 {
3538 "type" : "header",
3539 "value" : "gtpu_udp"
3540 },
3541 {
3542 "type" : "header",
3543 "value" : "udp"
3544 }
3545 ],
3546 "source_info" : {
3547 "filename" : "include/spgw.p4",
3548 "line" : 33,
3549 "column" : 17,
3550 "source_fragment" : "= udp; ..."
3551 }
3552 }
3553 ]
3554 },
3555 {
3556 "name" : "act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003557 "id" : 46,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003558 "runtime_data" : [],
3559 "primitives" : [
3560 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003561 "op" : "assign",
3562 "parameters" : [
3563 {
3564 "type" : "field",
3565 "value" : ["standard_metadata", "egress_spec"]
3566 },
3567 {
3568 "type" : "field",
3569 "value" : ["packet_out", "egress_port"]
3570 }
3571 ],
3572 "source_info" : {
3573 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003574 "line" : 25,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003575 "column" : 12,
3576 "source_fragment" : "standard_metadata.egress_spec = hdr.packet_out.egress_port"
3577 }
3578 },
3579 {
3580 "op" : "remove_header",
3581 "parameters" : [
3582 {
3583 "type" : "header",
3584 "value" : "packet_out"
3585 }
3586 ],
3587 "source_info" : {
3588 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003589 "line" : 26,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003590 "column" : 12,
3591 "source_fragment" : "hdr.packet_out.setInvalid()"
3592 }
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -07003593 },
3594 {
3595 "op" : "assign",
3596 "parameters" : [
3597 {
3598 "type" : "field",
3599 "value" : ["scalars", "fabric_metadata_t.is_controller_packet_out"]
3600 },
3601 {
3602 "type" : "expression",
3603 "value" : {
3604 "type" : "expression",
3605 "value" : {
3606 "op" : "b2d",
3607 "left" : null,
3608 "right" : {
3609 "type" : "bool",
3610 "value" : true
3611 }
3612 }
3613 }
3614 }
3615 ],
3616 "source_info" : {
3617 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003618 "line" : 27,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -07003619 "column" : 12,
3620 "source_fragment" : "fabric_metadata.is_controller_packet_out = true"
3621 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003622 }
3623 ]
3624 },
3625 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003626 "name" : "act_5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003627 "id" : 47,
3628 "runtime_data" : [],
3629 "primitives" : [
3630 {
3631 "op" : "assign",
3632 "parameters" : [
3633 {
3634 "type" : "field",
3635 "value" : ["scalars", "fabric_metadata_t.eth_type"]
3636 },
3637 {
3638 "type" : "field",
3639 "value" : ["vlan_tag", "eth_type"]
3640 }
3641 ],
3642 "source_info" : {
3643 "filename" : "include/control/filtering.p4",
3644 "line" : 103,
3645 "column" : 12,
3646 "source_fragment" : "fabric_metadata.eth_type = hdr.vlan_tag.eth_type"
3647 }
3648 },
3649 {
3650 "op" : "assign",
3651 "parameters" : [
3652 {
3653 "type" : "field",
3654 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
3655 },
3656 {
3657 "type" : "field",
3658 "value" : ["vlan_tag", "vlan_id"]
3659 }
3660 ],
3661 "source_info" : {
3662 "filename" : "include/control/filtering.p4",
3663 "line" : 104,
3664 "column" : 12,
3665 "source_fragment" : "fabric_metadata.vlan_id = hdr.vlan_tag.vlan_id"
3666 }
3667 },
3668 {
3669 "op" : "assign",
3670 "parameters" : [
3671 {
3672 "type" : "field",
3673 "value" : ["scalars", "fabric_metadata_t.vlan_pri"]
3674 },
3675 {
3676 "type" : "field",
3677 "value" : ["vlan_tag", "pri"]
3678 }
3679 ],
3680 "source_info" : {
3681 "filename" : "include/control/filtering.p4",
3682 "line" : 105,
3683 "column" : 12,
3684 "source_fragment" : "fabric_metadata.vlan_pri = hdr.vlan_tag.pri"
3685 }
3686 },
3687 {
3688 "op" : "assign",
3689 "parameters" : [
3690 {
3691 "type" : "field",
3692 "value" : ["scalars", "fabric_metadata_t.vlan_cfi"]
3693 },
3694 {
3695 "type" : "field",
3696 "value" : ["vlan_tag", "cfi"]
3697 }
3698 ],
3699 "source_info" : {
3700 "filename" : "include/control/filtering.p4",
3701 "line" : 106,
3702 "column" : 12,
3703 "source_fragment" : "fabric_metadata.vlan_cfi = hdr.vlan_tag.cfi"
3704 }
3705 }
3706 ]
3707 },
3708 {
3709 "name" : "act_6",
3710 "id" : 48,
3711 "runtime_data" : [],
3712 "primitives" : [
3713 {
3714 "op" : "assign",
3715 "parameters" : [
3716 {
3717 "type" : "field",
3718 "value" : ["scalars", "fabric_metadata_t.mpls_ttl"]
3719 },
3720 {
3721 "type" : "hexstr",
3722 "value" : "0x41"
3723 }
3724 ],
3725 "source_info" : {
3726 "filename" : "include/control/filtering.p4",
3727 "line" : 113,
3728 "column" : 12,
3729 "source_fragment" : "fabric_metadata.mpls_ttl = DEFAULT_MPLS_TTL + 1"
3730 }
3731 }
3732 ]
3733 },
3734 {
3735 "name" : "act_7",
Charles Chancd03f072018-08-31 17:46:37 -07003736 "id" : 49,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003737 "runtime_data" : [],
3738 "primitives" : [
3739 {
3740 "op" : "assign",
3741 "parameters" : [
3742 {
3743 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003744 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003745 },
3746 {
3747 "type" : "expression",
3748 "value" : {
3749 "type" : "expression",
3750 "value" : {
3751 "op" : "b2d",
3752 "left" : null,
3753 "right" : {
3754 "type" : "bool",
3755 "value" : true
3756 }
3757 }
3758 }
3759 }
3760 ]
3761 }
3762 ]
3763 },
3764 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003765 "name" : "act_8",
Charles Chancd03f072018-08-31 17:46:37 -07003766 "id" : 50,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003767 "runtime_data" : [],
3768 "primitives" : [
3769 {
3770 "op" : "assign",
3771 "parameters" : [
3772 {
3773 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003774 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003775 },
3776 {
3777 "type" : "expression",
3778 "value" : {
3779 "type" : "expression",
3780 "value" : {
3781 "op" : "b2d",
3782 "left" : null,
3783 "right" : {
3784 "type" : "bool",
3785 "value" : false
3786 }
3787 }
3788 }
3789 }
3790 ]
3791 }
3792 ]
3793 },
3794 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003795 "name" : "act_9",
Charles Chancd03f072018-08-31 17:46:37 -07003796 "id" : 51,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003797 "runtime_data" : [],
3798 "primitives" : [
3799 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003800 "op" : "drop",
3801 "parameters" : [],
3802 "source_info" : {
3803 "filename" : "include/spgw.p4",
3804 "line" : 148,
3805 "column" : 16,
3806 "source_fragment" : "mark_to_drop()"
3807 }
3808 }
3809 ]
3810 },
3811 {
3812 "name" : "act_10",
3813 "id" : 52,
3814 "runtime_data" : [],
3815 "primitives" : [
3816 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003817 "op" : "assign",
3818 "parameters" : [
3819 {
3820 "type" : "field",
3821 "value" : ["userMetadata.spgw", "direction"]
3822 },
3823 {
3824 "type" : "hexstr",
3825 "value" : "0x01"
3826 }
3827 ],
3828 "source_info" : {
3829 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003830 "line" : 137,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003831 "column" : 36,
3832 "source_fragment" : "2w1; ..."
3833 }
3834 }
3835 ]
3836 },
3837 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003838 "name" : "act_11",
Charles Chancd03f072018-08-31 17:46:37 -07003839 "id" : 53,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003840 "runtime_data" : [],
3841 "primitives" : [
3842 {
3843 "op" : "assign",
3844 "parameters" : [
3845 {
3846 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003847 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003848 },
3849 {
3850 "type" : "expression",
3851 "value" : {
3852 "type" : "expression",
3853 "value" : {
3854 "op" : "b2d",
3855 "left" : null,
3856 "right" : {
3857 "type" : "bool",
3858 "value" : true
3859 }
3860 }
3861 }
3862 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003863 ]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003864 }
3865 ]
3866 },
3867 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003868 "name" : "act_12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003869 "id" : 54,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003870 "runtime_data" : [],
3871 "primitives" : [
3872 {
3873 "op" : "assign",
3874 "parameters" : [
3875 {
3876 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003877 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003878 },
3879 {
3880 "type" : "expression",
3881 "value" : {
3882 "type" : "expression",
3883 "value" : {
3884 "op" : "b2d",
3885 "left" : null,
3886 "right" : {
3887 "type" : "bool",
3888 "value" : false
3889 }
3890 }
3891 }
3892 }
3893 ]
3894 }
3895 ]
3896 },
3897 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003898 "name" : "act_13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003899 "id" : 55,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003900 "runtime_data" : [],
3901 "primitives" : [
3902 {
3903 "op" : "assign",
3904 "parameters" : [
3905 {
3906 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003907 "value" : ["userMetadata.spgw", "direction"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003908 },
3909 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003910 "type" : "hexstr",
3911 "value" : "0x02"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003912 }
3913 ],
3914 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003915 "filename" : "include/control/../define.p4",
3916 "line" : 138,
3917 "column" : 38,
3918 "source_fragment" : "2w2; ..."
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003919 }
3920 }
3921 ]
3922 },
3923 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003924 "name" : "act_14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003925 "id" : 56,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003926 "runtime_data" : [],
3927 "primitives" : [
3928 {
3929 "op" : "assign",
3930 "parameters" : [
3931 {
3932 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003933 "value" : ["userMetadata.spgw", "direction"]
3934 },
3935 {
3936 "type" : "hexstr",
3937 "value" : "0x00"
3938 }
3939 ],
3940 "source_info" : {
3941 "filename" : "include/control/../define.p4",
3942 "line" : 136,
3943 "column" : 37,
3944 "source_fragment" : "2w0; ..."
3945 }
3946 },
3947 {
3948 "op" : "assign",
3949 "parameters" : [
3950 {
3951 "type" : "field",
3952 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003953 },
3954 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003955 "type" : "expression",
3956 "value" : {
3957 "type" : "expression",
3958 "value" : {
3959 "op" : "b2d",
3960 "left" : null,
3961 "right" : {
3962 "type" : "bool",
3963 "value" : true
3964 }
3965 }
3966 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003967 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003968 ],
3969 "source_info" : {
3970 "filename" : "include/spgw.p4",
3971 "line" : 157,
3972 "column" : 12,
3973 "source_fragment" : "return"
3974 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003975 }
3976 ]
3977 },
3978 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07003979 "name" : "act_15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003980 "id" : 57,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003981 "runtime_data" : [],
3982 "primitives" : [
3983 {
3984 "op" : "assign",
3985 "parameters" : [
3986 {
3987 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003988 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02003989 },
3990 {
3991 "type" : "expression",
3992 "value" : {
3993 "type" : "expression",
3994 "value" : {
3995 "op" : "b2d",
3996 "left" : null,
3997 "right" : {
3998 "type" : "bool",
3999 "value" : false
4000 }
4001 }
4002 }
4003 }
4004 ]
4005 }
4006 ]
4007 },
4008 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004009 "name" : "act_16",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004010 "id" : 58,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004011 "runtime_data" : [],
4012 "primitives" : [
4013 {
4014 "op" : "assign",
4015 "parameters" : [
4016 {
4017 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004018 "value" : ["userMetadata.spgw", "ipv4_len"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004019 },
4020 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004021 "type" : "field",
4022 "value" : ["ipv4", "total_len"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004023 }
Carmelo Cascone8a715f82018-08-20 23:16:27 -07004024 ],
4025 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004026 "filename" : "include/spgw.p4",
4027 "line" : 174,
4028 "column" : 8,
4029 "source_fragment" : "fabric_meta.spgw.ipv4_len = ipv4.total_len"
Carmelo Cascone8a715f82018-08-20 23:16:27 -07004030 }
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004031 }
4032 ]
4033 },
4034 {
4035 "name" : "act_17",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004036 "id" : 59,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004037 "runtime_data" : [],
4038 "primitives" : [
4039 {
4040 "op" : "assign",
4041 "parameters" : [
4042 {
4043 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004044 "value" : ["scalars", "tmp_2"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004045 },
4046 {
4047 "type" : "expression",
4048 "value" : {
4049 "type" : "expression",
4050 "value" : {
4051 "op" : "&",
4052 "left" : {
4053 "type" : "field",
4054 "value" : ["standard_metadata", "egress_spec"]
4055 },
4056 "right" : {
4057 "type" : "hexstr",
4058 "value" : "0xffffffff"
4059 }
4060 }
4061 }
4062 }
4063 ],
4064 "source_info" : {
4065 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004066 "line" : 31,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004067 "column" : 38,
4068 "source_fragment" : "(bit<32>)standard_metadata.egress_spec"
4069 }
4070 },
4071 {
4072 "op" : "count",
4073 "parameters" : [
4074 {
4075 "type" : "counter_array",
4076 "value" : "FabricIngress.port_counters_control.egress_port_counter"
4077 },
4078 {
4079 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004080 "value" : ["scalars", "tmp_2"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004081 }
4082 ],
4083 "source_info" : {
4084 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004085 "line" : 31,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004086 "column" : 12,
4087 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
4088 }
4089 }
4090 ]
4091 },
4092 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004093 "name" : "act_18",
4094 "id" : 60,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004095 "runtime_data" : [],
4096 "primitives" : [
4097 {
4098 "op" : "assign",
4099 "parameters" : [
4100 {
4101 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004102 "value" : ["scalars", "tmp_3"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004103 },
4104 {
4105 "type" : "expression",
4106 "value" : {
4107 "type" : "expression",
4108 "value" : {
4109 "op" : "&",
4110 "left" : {
4111 "type" : "field",
4112 "value" : ["standard_metadata", "ingress_port"]
4113 },
4114 "right" : {
4115 "type" : "hexstr",
4116 "value" : "0xffffffff"
4117 }
4118 }
4119 }
4120 }
4121 ],
4122 "source_info" : {
4123 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004124 "line" : 34,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004125 "column" : 39,
4126 "source_fragment" : "(bit<32>)standard_metadata.ingress_port"
4127 }
4128 },
4129 {
4130 "op" : "count",
4131 "parameters" : [
4132 {
4133 "type" : "counter_array",
4134 "value" : "FabricIngress.port_counters_control.ingress_port_counter"
4135 },
4136 {
4137 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004138 "value" : ["scalars", "tmp_3"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004139 }
4140 ],
4141 "source_info" : {
4142 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004143 "line" : 34,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004144 "column" : 12,
4145 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
4146 }
4147 }
4148 ]
4149 },
4150 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004151 "name" : "act_19",
4152 "id" : 61,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004153 "runtime_data" : [],
4154 "primitives" : [
4155 {
4156 "op" : "clone_ingress_pkt_to_egress",
4157 "parameters" : [
4158 {
4159 "type" : "hexstr",
4160 "value" : "0x000001f4"
4161 },
4162 {
4163 "type" : "hexstr",
4164 "value" : "0x1"
4165 }
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07004166 ],
4167 "source_info" : {
4168 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004169 "line" : 89,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07004170 "column" : 12,
4171 "source_fragment" : "clone(CloneType.I2E, REPORT_MIRROR_SESSION_ID)"
4172 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004173 }
4174 ]
4175 },
4176 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004177 "name" : "nop",
4178 "id" : 62,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004179 "runtime_data" : [],
4180 "primitives" : []
4181 },
4182 {
Carmelo Casconefa421582018-09-13 10:05:57 -07004183 "name" : "nop",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004184 "id" : 63,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004185 "runtime_data" : [],
4186 "primitives" : []
4187 },
4188 {
Charles Chancd03f072018-08-31 17:46:37 -07004189 "name" : "nop",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004190 "id" : 64,
Carmelo Cascone8a715f82018-08-20 23:16:27 -07004191 "runtime_data" : [],
Charles Chancd03f072018-08-31 17:46:37 -07004192 "primitives" : []
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004193 },
4194 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004195 "name" : "nop",
4196 "id" : 65,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004197 "runtime_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004198 "primitives" : []
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004199 },
4200 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004201 "name" : "NoAction",
4202 "id" : 66,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004203 "runtime_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004204 "primitives" : []
4205 },
4206 {
4207 "name" : "NoAction",
4208 "id" : 67,
4209 "runtime_data" : [],
4210 "primitives" : []
Charles Chancd03f072018-08-31 17:46:37 -07004211 },
4212 {
4213 "name" : "FabricEgress.spgw_egress.gtpu_encap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004214 "id" : 68,
Charles Chancd03f072018-08-31 17:46:37 -07004215 "runtime_data" : [],
4216 "primitives" : [
4217 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004218 "op" : "add_header",
4219 "parameters" : [
4220 {
4221 "type" : "header",
4222 "value" : "gtpu_ipv4"
4223 }
4224 ],
4225 "source_info" : {
4226 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004227 "line" : 190,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004228 "column" : 8,
4229 "source_fragment" : "gtpu_ipv4.setValid()"
4230 }
4231 },
4232 {
4233 "op" : "assign",
4234 "parameters" : [
4235 {
4236 "type" : "field",
4237 "value" : ["gtpu_ipv4", "version"]
4238 },
4239 {
4240 "type" : "hexstr",
4241 "value" : "0x04"
4242 }
4243 ],
4244 "source_info" : {
4245 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004246 "line" : 191,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004247 "column" : 8,
4248 "source_fragment" : "gtpu_ipv4.version = 4"
4249 }
4250 },
4251 {
4252 "op" : "assign",
4253 "parameters" : [
4254 {
4255 "type" : "field",
4256 "value" : ["gtpu_ipv4", "ihl"]
4257 },
4258 {
4259 "type" : "hexstr",
4260 "value" : "0x05"
4261 }
4262 ],
4263 "source_info" : {
4264 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004265 "line" : 119,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004266 "column" : 28,
4267 "source_fragment" : "5; ..."
4268 }
4269 },
4270 {
4271 "op" : "assign",
4272 "parameters" : [
4273 {
4274 "type" : "field",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004275 "value" : ["gtpu_ipv4", "dscp"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004276 },
4277 {
4278 "type" : "hexstr",
4279 "value" : "0x00"
4280 }
4281 ],
4282 "source_info" : {
4283 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004284 "line" : 193,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004285 "column" : 8,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004286 "source_fragment" : "gtpu_ipv4.dscp = 0"
4287 }
4288 },
4289 {
4290 "op" : "assign",
4291 "parameters" : [
4292 {
4293 "type" : "field",
4294 "value" : ["gtpu_ipv4", "ecn"]
4295 },
4296 {
4297 "type" : "hexstr",
4298 "value" : "0x00"
4299 }
4300 ],
4301 "source_info" : {
4302 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004303 "line" : 194,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004304 "column" : 8,
4305 "source_fragment" : "gtpu_ipv4.ecn = 0"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004306 }
4307 },
4308 {
4309 "op" : "assign",
4310 "parameters" : [
4311 {
4312 "type" : "field",
4313 "value" : ["gtpu_ipv4", "total_len"]
4314 },
4315 {
4316 "type" : "expression",
4317 "value" : {
4318 "type" : "expression",
4319 "value" : {
4320 "op" : "&",
4321 "left" : {
4322 "type" : "expression",
4323 "value" : {
4324 "op" : "+",
4325 "left" : {
4326 "type" : "field",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07004327 "value" : ["ipv4", "total_len"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004328 },
4329 "right" : {
4330 "type" : "hexstr",
4331 "value" : "0x0024"
4332 }
4333 }
4334 },
4335 "right" : {
4336 "type" : "hexstr",
4337 "value" : "0xffff"
4338 }
4339 }
4340 }
4341 }
4342 ],
4343 "source_info" : {
4344 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004345 "line" : 195,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004346 "column" : 8,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -07004347 "source_fragment" : "gtpu_ipv4.total_len = ipv4.total_len ..."
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004348 }
4349 },
4350 {
4351 "op" : "assign",
4352 "parameters" : [
4353 {
4354 "type" : "field",
4355 "value" : ["gtpu_ipv4", "identification"]
4356 },
4357 {
4358 "type" : "hexstr",
4359 "value" : "0x1513"
4360 }
4361 ],
4362 "source_info" : {
4363 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004364 "line" : 197,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004365 "column" : 8,
4366 "source_fragment" : "gtpu_ipv4.identification = 0x1513"
4367 }
4368 },
4369 {
4370 "op" : "assign",
4371 "parameters" : [
4372 {
4373 "type" : "field",
4374 "value" : ["gtpu_ipv4", "flags"]
4375 },
4376 {
4377 "type" : "hexstr",
4378 "value" : "0x00"
4379 }
4380 ],
4381 "source_info" : {
4382 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004383 "line" : 198,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004384 "column" : 8,
4385 "source_fragment" : "gtpu_ipv4.flags = 0"
4386 }
4387 },
4388 {
4389 "op" : "assign",
4390 "parameters" : [
4391 {
4392 "type" : "field",
4393 "value" : ["gtpu_ipv4", "frag_offset"]
4394 },
4395 {
4396 "type" : "hexstr",
4397 "value" : "0x0000"
4398 }
4399 ],
4400 "source_info" : {
4401 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004402 "line" : 199,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004403 "column" : 8,
4404 "source_fragment" : "gtpu_ipv4.frag_offset = 0"
4405 }
4406 },
4407 {
4408 "op" : "assign",
4409 "parameters" : [
4410 {
4411 "type" : "field",
4412 "value" : ["gtpu_ipv4", "ttl"]
4413 },
4414 {
4415 "type" : "hexstr",
4416 "value" : "0x40"
4417 }
4418 ],
4419 "source_info" : {
4420 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004421 "line" : 132,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004422 "column" : 32,
4423 "source_fragment" : "64; ..."
4424 }
4425 },
4426 {
4427 "op" : "assign",
4428 "parameters" : [
4429 {
4430 "type" : "field",
4431 "value" : ["gtpu_ipv4", "protocol"]
4432 },
4433 {
4434 "type" : "hexstr",
4435 "value" : "0x11"
4436 }
4437 ],
4438 "source_info" : {
4439 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004440 "line" : 116,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004441 "column" : 25,
4442 "source_fragment" : "17; ..."
4443 }
4444 },
4445 {
4446 "op" : "assign",
4447 "parameters" : [
4448 {
4449 "type" : "field",
4450 "value" : ["gtpu_ipv4", "dst_addr"]
4451 },
4452 {
4453 "type" : "field",
4454 "value" : ["userMetadata.spgw", "s1u_enb_addr"]
4455 }
4456 ],
4457 "source_info" : {
4458 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004459 "line" : 202,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004460 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004461 "source_fragment" : "gtpu_ipv4.dst_addr = fabric_meta.spgw.s1u_enb_addr"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004462 }
4463 },
4464 {
4465 "op" : "assign",
4466 "parameters" : [
4467 {
4468 "type" : "field",
4469 "value" : ["gtpu_ipv4", "src_addr"]
4470 },
4471 {
4472 "type" : "field",
4473 "value" : ["userMetadata.spgw", "s1u_sgw_addr"]
4474 }
4475 ],
4476 "source_info" : {
4477 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004478 "line" : 203,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004479 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004480 "source_fragment" : "gtpu_ipv4.src_addr = fabric_meta.spgw.s1u_sgw_addr"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004481 }
4482 },
4483 {
4484 "op" : "assign",
4485 "parameters" : [
4486 {
4487 "type" : "field",
4488 "value" : ["gtpu_ipv4", "hdr_checksum"]
4489 },
4490 {
4491 "type" : "hexstr",
4492 "value" : "0x0000"
4493 }
4494 ],
4495 "source_info" : {
4496 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004497 "line" : 204,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004498 "column" : 8,
4499 "source_fragment" : "gtpu_ipv4.hdr_checksum = 0"
4500 }
4501 },
4502 {
4503 "op" : "add_header",
4504 "parameters" : [
4505 {
4506 "type" : "header",
4507 "value" : "gtpu_udp"
4508 }
4509 ],
4510 "source_info" : {
4511 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004512 "line" : 206,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004513 "column" : 8,
4514 "source_fragment" : "gtpu_udp.setValid()"
4515 }
4516 },
4517 {
4518 "op" : "assign",
4519 "parameters" : [
4520 {
4521 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004522 "value" : ["gtpu_udp", "sport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004523 },
4524 {
4525 "type" : "hexstr",
4526 "value" : "0x0868"
4527 }
4528 ],
4529 "source_info" : {
4530 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004531 "line" : 207,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004532 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004533 "source_fragment" : "gtpu_udp.sport = 2152"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004534 }
4535 },
4536 {
4537 "op" : "assign",
4538 "parameters" : [
4539 {
4540 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004541 "value" : ["gtpu_udp", "dport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004542 },
4543 {
4544 "type" : "hexstr",
4545 "value" : "0x0868"
4546 }
4547 ],
4548 "source_info" : {
4549 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004550 "line" : 208,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004551 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004552 "source_fragment" : "gtpu_udp.dport = 2152"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004553 }
4554 },
4555 {
4556 "op" : "assign",
4557 "parameters" : [
4558 {
4559 "type" : "field",
4560 "value" : ["gtpu_udp", "len"]
4561 },
4562 {
4563 "type" : "expression",
4564 "value" : {
4565 "type" : "expression",
4566 "value" : {
4567 "op" : "&",
4568 "left" : {
4569 "type" : "expression",
4570 "value" : {
4571 "op" : "+",
4572 "left" : {
4573 "type" : "field",
4574 "value" : ["userMetadata.spgw", "ipv4_len"]
4575 },
4576 "right" : {
4577 "type" : "hexstr",
4578 "value" : "0x0010"
4579 }
4580 }
4581 },
4582 "right" : {
4583 "type" : "hexstr",
4584 "value" : "0xffff"
4585 }
4586 }
4587 }
4588 }
4589 ],
4590 "source_info" : {
4591 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004592 "line" : 209,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004593 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004594 "source_fragment" : "gtpu_udp.len = fabric_meta.spgw.ipv4_len ..."
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004595 }
4596 },
4597 {
4598 "op" : "assign",
4599 "parameters" : [
4600 {
4601 "type" : "field",
4602 "value" : ["gtpu_udp", "checksum"]
4603 },
4604 {
4605 "type" : "hexstr",
4606 "value" : "0x0000"
4607 }
4608 ],
4609 "source_info" : {
4610 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004611 "line" : 211,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004612 "column" : 8,
4613 "source_fragment" : "gtpu_udp.checksum = 0"
4614 }
4615 },
4616 {
4617 "op" : "add_header",
4618 "parameters" : [
4619 {
4620 "type" : "header",
4621 "value" : "gtpu"
4622 }
4623 ],
4624 "source_info" : {
4625 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004626 "line" : 213,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004627 "column" : 8,
4628 "source_fragment" : "gtpu.setValid()"
4629 }
4630 },
4631 {
4632 "op" : "assign",
4633 "parameters" : [
4634 {
4635 "type" : "field",
4636 "value" : ["gtpu", "version"]
4637 },
4638 {
4639 "type" : "hexstr",
4640 "value" : "0x01"
4641 }
4642 ],
4643 "source_info" : {
4644 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004645 "line" : 214,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004646 "column" : 8,
4647 "source_fragment" : "gtpu.version = 0x01"
4648 }
4649 },
4650 {
4651 "op" : "assign",
4652 "parameters" : [
4653 {
4654 "type" : "field",
4655 "value" : ["gtpu", "pt"]
4656 },
4657 {
4658 "type" : "hexstr",
4659 "value" : "0x01"
4660 }
4661 ],
4662 "source_info" : {
4663 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004664 "line" : 215,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004665 "column" : 8,
4666 "source_fragment" : "gtpu.pt = 0x01"
4667 }
4668 },
4669 {
4670 "op" : "assign",
4671 "parameters" : [
4672 {
4673 "type" : "field",
4674 "value" : ["gtpu", "spare"]
4675 },
4676 {
4677 "type" : "hexstr",
4678 "value" : "0x00"
4679 }
4680 ],
4681 "source_info" : {
4682 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004683 "line" : 216,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004684 "column" : 8,
4685 "source_fragment" : "gtpu.spare = 0"
4686 }
4687 },
4688 {
4689 "op" : "assign",
4690 "parameters" : [
4691 {
4692 "type" : "field",
4693 "value" : ["gtpu", "ex_flag"]
4694 },
4695 {
4696 "type" : "hexstr",
4697 "value" : "0x00"
4698 }
4699 ],
4700 "source_info" : {
4701 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004702 "line" : 217,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004703 "column" : 8,
4704 "source_fragment" : "gtpu.ex_flag = 0"
4705 }
4706 },
4707 {
4708 "op" : "assign",
4709 "parameters" : [
4710 {
4711 "type" : "field",
4712 "value" : ["gtpu", "seq_flag"]
4713 },
4714 {
4715 "type" : "hexstr",
4716 "value" : "0x00"
4717 }
4718 ],
4719 "source_info" : {
4720 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004721 "line" : 218,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004722 "column" : 8,
4723 "source_fragment" : "gtpu.seq_flag = 0"
4724 }
4725 },
4726 {
4727 "op" : "assign",
4728 "parameters" : [
4729 {
4730 "type" : "field",
4731 "value" : ["gtpu", "npdu_flag"]
4732 },
4733 {
4734 "type" : "hexstr",
4735 "value" : "0x00"
4736 }
4737 ],
4738 "source_info" : {
4739 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004740 "line" : 219,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004741 "column" : 8,
4742 "source_fragment" : "gtpu.npdu_flag = 0"
4743 }
4744 },
4745 {
4746 "op" : "assign",
4747 "parameters" : [
4748 {
4749 "type" : "field",
4750 "value" : ["gtpu", "msgtype"]
4751 },
4752 {
4753 "type" : "hexstr",
4754 "value" : "0xff"
4755 }
4756 ],
4757 "source_info" : {
4758 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004759 "line" : 220,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004760 "column" : 8,
4761 "source_fragment" : "gtpu.msgtype = 0xff"
4762 }
4763 },
4764 {
4765 "op" : "assign",
4766 "parameters" : [
4767 {
4768 "type" : "field",
4769 "value" : ["gtpu", "msglen"]
4770 },
4771 {
4772 "type" : "field",
4773 "value" : ["userMetadata.spgw", "ipv4_len"]
4774 }
4775 ],
4776 "source_info" : {
4777 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004778 "line" : 221,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004779 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004780 "source_fragment" : "gtpu.msglen = fabric_meta.spgw.ipv4_len"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004781 }
4782 },
4783 {
4784 "op" : "assign",
4785 "parameters" : [
4786 {
4787 "type" : "field",
4788 "value" : ["gtpu", "teid"]
4789 },
4790 {
4791 "type" : "field",
4792 "value" : ["userMetadata.spgw", "teid"]
4793 }
4794 ],
4795 "source_info" : {
4796 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004797 "line" : 222,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004798 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004799 "source_fragment" : "gtpu.teid = fabric_meta.spgw.teid"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +02004800 }
4801 }
4802 ]
4803 },
4804 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004805 "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004806 "id" : 69,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004807 "runtime_data" : [
4808 {
4809 "name" : "max_hop",
4810 "bitwidth" : 8
4811 },
4812 {
4813 "name" : "ins_cnt",
4814 "bitwidth" : 5
4815 },
4816 {
4817 "name" : "ins_mask0003",
4818 "bitwidth" : 4
4819 },
4820 {
4821 "name" : "ins_mask0407",
4822 "bitwidth" : 4
4823 }
4824 ],
4825 "primitives" : [
4826 {
4827 "op" : "add_header",
4828 "parameters" : [
4829 {
4830 "type" : "header",
4831 "value" : "intl4_shim"
4832 }
4833 ],
4834 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004835 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004836 "line" : 32,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004837 "column" : 8,
4838 "source_fragment" : "hdr.intl4_shim.setValid()"
4839 }
4840 },
4841 {
4842 "op" : "assign",
4843 "parameters" : [
4844 {
4845 "type" : "field",
4846 "value" : ["intl4_shim", "int_type"]
4847 },
4848 {
4849 "type" : "hexstr",
4850 "value" : "0x01"
4851 }
4852 ],
4853 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004854 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004855 "line" : 34,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004856 "column" : 8,
4857 "source_fragment" : "hdr.intl4_shim.int_type = 1"
4858 }
4859 },
4860 {
4861 "op" : "assign",
4862 "parameters" : [
4863 {
4864 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004865 "value" : ["intl4_shim", "len_words"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004866 },
4867 {
4868 "type" : "hexstr",
4869 "value" : "0x04"
4870 }
4871 ],
4872 "source_info" : {
4873 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004874 "line" : 147,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004875 "column" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004876 "source_fragment" : "4; ..."
4877 }
4878 },
4879 {
4880 "op" : "add_header",
4881 "parameters" : [
4882 {
4883 "type" : "header",
4884 "value" : "int_header"
4885 }
4886 ],
4887 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004888 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004889 "line" : 37,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004890 "column" : 8,
4891 "source_fragment" : "hdr.int_header.setValid()"
4892 }
4893 },
4894 {
4895 "op" : "assign",
4896 "parameters" : [
4897 {
4898 "type" : "field",
4899 "value" : ["int_header", "ver"]
4900 },
4901 {
4902 "type" : "hexstr",
4903 "value" : "0x00"
4904 }
4905 ],
4906 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004907 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004908 "line" : 38,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004909 "column" : 8,
4910 "source_fragment" : "hdr.int_header.ver = 0"
4911 }
4912 },
4913 {
4914 "op" : "assign",
4915 "parameters" : [
4916 {
4917 "type" : "field",
4918 "value" : ["int_header", "rep"]
4919 },
4920 {
4921 "type" : "hexstr",
4922 "value" : "0x00"
4923 }
4924 ],
4925 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004926 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004927 "line" : 39,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004928 "column" : 8,
4929 "source_fragment" : "hdr.int_header.rep = 0"
4930 }
4931 },
4932 {
4933 "op" : "assign",
4934 "parameters" : [
4935 {
4936 "type" : "field",
4937 "value" : ["int_header", "c"]
4938 },
4939 {
4940 "type" : "hexstr",
4941 "value" : "0x00"
4942 }
4943 ],
4944 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004945 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004946 "line" : 40,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004947 "column" : 8,
4948 "source_fragment" : "hdr.int_header.c = 0"
4949 }
4950 },
4951 {
4952 "op" : "assign",
4953 "parameters" : [
4954 {
4955 "type" : "field",
4956 "value" : ["int_header", "e"]
4957 },
4958 {
4959 "type" : "hexstr",
4960 "value" : "0x00"
4961 }
4962 ],
4963 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004964 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004965 "line" : 41,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004966 "column" : 8,
4967 "source_fragment" : "hdr.int_header.e = 0"
4968 }
4969 },
4970 {
4971 "op" : "assign",
4972 "parameters" : [
4973 {
4974 "type" : "field",
4975 "value" : ["int_header", "rsvd1"]
4976 },
4977 {
4978 "type" : "hexstr",
4979 "value" : "0x00"
4980 }
4981 ],
4982 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004983 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004984 "line" : 42,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004985 "column" : 8,
4986 "source_fragment" : "hdr.int_header.rsvd1 = 0"
4987 }
4988 },
4989 {
4990 "op" : "assign",
4991 "parameters" : [
4992 {
4993 "type" : "field",
4994 "value" : ["int_header", "ins_cnt"]
4995 },
4996 {
4997 "type" : "runtime_data",
4998 "value" : 1
4999 }
5000 ],
5001 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005002 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005003 "line" : 43,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005004 "column" : 8,
5005 "source_fragment" : "hdr.int_header.ins_cnt = ins_cnt; ..."
5006 }
5007 },
5008 {
5009 "op" : "assign",
5010 "parameters" : [
5011 {
5012 "type" : "field",
5013 "value" : ["int_header", "max_hop_cnt"]
5014 },
5015 {
5016 "type" : "runtime_data",
5017 "value" : 0
5018 }
5019 ],
5020 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005021 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005022 "line" : 44,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005023 "column" : 8,
5024 "source_fragment" : "hdr.int_header.max_hop_cnt = max_hop; ..."
5025 }
5026 },
5027 {
5028 "op" : "assign",
5029 "parameters" : [
5030 {
5031 "type" : "field",
5032 "value" : ["int_header", "total_hop_cnt"]
5033 },
5034 {
5035 "type" : "hexstr",
5036 "value" : "0x00"
5037 }
5038 ],
5039 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005040 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005041 "line" : 45,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005042 "column" : 8,
5043 "source_fragment" : "hdr.int_header.total_hop_cnt = 0"
5044 }
5045 },
5046 {
5047 "op" : "assign",
5048 "parameters" : [
5049 {
5050 "type" : "field",
5051 "value" : ["int_header", "instruction_mask_0003"]
5052 },
5053 {
5054 "type" : "runtime_data",
5055 "value" : 2
5056 }
5057 ],
5058 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005059 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005060 "line" : 46,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005061 "column" : 8,
5062 "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
5063 }
5064 },
5065 {
5066 "op" : "assign",
5067 "parameters" : [
5068 {
5069 "type" : "field",
5070 "value" : ["int_header", "instruction_mask_0407"]
5071 },
5072 {
5073 "type" : "runtime_data",
5074 "value" : 3
5075 }
5076 ],
5077 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005078 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005079 "line" : 47,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005080 "column" : 8,
5081 "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
5082 }
5083 },
5084 {
5085 "op" : "assign",
5086 "parameters" : [
5087 {
5088 "type" : "field",
5089 "value" : ["int_header", "instruction_mask_0811"]
5090 },
5091 {
5092 "type" : "hexstr",
5093 "value" : "0x00"
5094 }
5095 ],
5096 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005097 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005098 "line" : 48,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005099 "column" : 8,
5100 "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
5101 }
5102 },
5103 {
5104 "op" : "assign",
5105 "parameters" : [
5106 {
5107 "type" : "field",
5108 "value" : ["int_header", "instruction_mask_1215"]
5109 },
5110 {
5111 "type" : "hexstr",
5112 "value" : "0x00"
5113 }
5114 ],
5115 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005116 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005117 "line" : 49,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005118 "column" : 8,
5119 "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
5120 }
5121 },
5122 {
5123 "op" : "add_header",
5124 "parameters" : [
5125 {
5126 "type" : "header",
5127 "value" : "intl4_tail"
5128 }
5129 ],
5130 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005131 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005132 "line" : 51,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005133 "column" : 8,
5134 "source_fragment" : "hdr.intl4_tail.setValid()"
5135 }
5136 },
5137 {
5138 "op" : "assign",
5139 "parameters" : [
5140 {
5141 "type" : "field",
5142 "value" : ["intl4_tail", "next_proto"]
5143 },
5144 {
5145 "type" : "field",
5146 "value" : ["ipv4", "protocol"]
5147 }
5148 ],
5149 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005150 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005151 "line" : 52,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005152 "column" : 8,
5153 "source_fragment" : "hdr.intl4_tail.next_proto = hdr.ipv4.protocol"
5154 }
5155 },
5156 {
5157 "op" : "assign",
5158 "parameters" : [
5159 {
5160 "type" : "field",
5161 "value" : ["intl4_tail", "dest_port"]
5162 },
5163 {
5164 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005165 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005166 }
5167 ],
5168 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005169 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005170 "line" : 53,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005171 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005172 "source_fragment" : "hdr.intl4_tail.dest_port = fabric_metadata.l4_dport"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005173 }
5174 },
5175 {
5176 "op" : "assign",
5177 "parameters" : [
5178 {
5179 "type" : "field",
5180 "value" : ["intl4_tail", "dscp"]
5181 },
5182 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005183 "type" : "field",
5184 "value" : ["ipv4", "dscp"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005185 }
5186 ],
5187 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005188 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005189 "line" : 54,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005190 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005191 "source_fragment" : "hdr.intl4_tail.dscp = hdr.ipv4.dscp"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005192 }
5193 },
5194 {
5195 "op" : "assign",
5196 "parameters" : [
5197 {
5198 "type" : "field",
5199 "value" : ["ipv4", "total_len"]
5200 },
5201 {
5202 "type" : "expression",
5203 "value" : {
5204 "type" : "expression",
5205 "value" : {
5206 "op" : "&",
5207 "left" : {
5208 "type" : "expression",
5209 "value" : {
5210 "op" : "+",
5211 "left" : {
5212 "type" : "field",
5213 "value" : ["ipv4", "total_len"]
5214 },
5215 "right" : {
5216 "type" : "hexstr",
5217 "value" : "0x0010"
5218 }
5219 }
5220 },
5221 "right" : {
5222 "type" : "hexstr",
5223 "value" : "0xffff"
5224 }
5225 }
5226 }
5227 }
5228 ],
5229 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005230 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005231 "line" : 56,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005232 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005233 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + INT_HEADER_LEN_BYTES"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005234 }
5235 },
5236 {
5237 "op" : "assign",
5238 "parameters" : [
5239 {
5240 "type" : "field",
5241 "value" : ["udp", "len"]
5242 },
5243 {
5244 "type" : "expression",
5245 "value" : {
5246 "type" : "expression",
5247 "value" : {
5248 "op" : "&",
5249 "left" : {
5250 "type" : "expression",
5251 "value" : {
5252 "op" : "+",
5253 "left" : {
5254 "type" : "field",
5255 "value" : ["udp", "len"]
5256 },
5257 "right" : {
5258 "type" : "hexstr",
5259 "value" : "0x0010"
5260 }
5261 }
5262 },
5263 "right" : {
5264 "type" : "hexstr",
5265 "value" : "0xffff"
5266 }
5267 }
5268 }
5269 }
5270 ],
5271 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005272 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005273 "line" : 57,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005274 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005275 "source_fragment" : "hdr.udp.len = hdr.udp.len + INT_HEADER_LEN_BYTES"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005276 }
5277 },
5278 {
5279 "op" : "assign",
5280 "parameters" : [
5281 {
5282 "type" : "field",
5283 "value" : ["ipv4", "dscp"]
5284 },
5285 {
5286 "type" : "hexstr",
5287 "value" : "0x01"
5288 }
5289 ],
5290 "source_info" : {
5291 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005292 "line" : 143,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005293 "column" : 24,
5294 "source_fragment" : "0x1; ..."
5295 }
5296 }
5297 ]
5298 },
5299 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005300 "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005301 "id" : 70,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005302 "runtime_data" : [
5303 {
5304 "name" : "switch_id",
5305 "bitwidth" : 32
5306 }
5307 ],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005308 "primitives" : [
5309 {
5310 "op" : "assign",
5311 "parameters" : [
5312 {
5313 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005314 "value" : ["userMetadata.int_meta", "transit"]
5315 },
5316 {
5317 "type" : "expression",
5318 "value" : {
5319 "type" : "expression",
5320 "value" : {
5321 "op" : "b2d",
5322 "left" : null,
5323 "right" : {
5324 "type" : "bool",
5325 "value" : true
5326 }
5327 }
5328 }
5329 }
5330 ],
5331 "source_info" : {
5332 "filename" : "include/int/int_transit.p4",
5333 "line" : 26,
5334 "column" : 8,
5335 "source_fragment" : "fmeta.int_meta.transit = true"
5336 }
5337 },
5338 {
5339 "op" : "assign",
5340 "parameters" : [
5341 {
5342 "type" : "field",
5343 "value" : ["userMetadata.int_meta", "switch_id"]
5344 },
5345 {
5346 "type" : "runtime_data",
5347 "value" : 0
5348 }
5349 ],
5350 "source_info" : {
5351 "filename" : "include/int/int_transit.p4",
5352 "line" : 31,
5353 "column" : 8,
5354 "source_fragment" : "fmeta.int_meta.switch_id = switch_id"
5355 }
5356 }
5357 ]
5358 },
5359 {
5360 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005361 "id" : 71,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005362 "runtime_data" : [],
5363 "primitives" : []
5364 },
5365 {
5366 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005367 "id" : 72,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005368 "runtime_data" : [],
5369 "primitives" : [
5370 {
5371 "op" : "add_header",
5372 "parameters" : [
5373 {
5374 "type" : "header",
5375 "value" : "int_q_occupancy"
5376 }
5377 ],
5378 "source_info" : {
5379 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005380 "line" : 60,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005381 "column" : 8,
5382 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5383 }
5384 },
5385 {
5386 "op" : "assign",
5387 "parameters" : [
5388 {
5389 "type" : "field",
5390 "value" : ["int_q_occupancy", "q_id"]
5391 },
5392 {
5393 "type" : "hexstr",
5394 "value" : "0x00"
5395 }
5396 ],
5397 "source_info" : {
5398 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005399 "line" : 62,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005400 "column" : 8,
5401 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5402 }
5403 },
5404 {
5405 "op" : "assign",
5406 "parameters" : [
5407 {
5408 "type" : "field",
5409 "value" : ["int_q_occupancy", "q_occupancy"]
5410 },
5411 {
5412 "type" : "expression",
5413 "value" : {
5414 "type" : "expression",
5415 "value" : {
5416 "op" : "&",
5417 "left" : {
5418 "type" : "field",
5419 "value" : ["standard_metadata", "deq_qdepth"]
5420 },
5421 "right" : {
5422 "type" : "hexstr",
5423 "value" : "0xffffff"
5424 }
5425 }
5426 }
5427 }
5428 ],
5429 "source_info" : {
5430 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005431 "line" : 63,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005432 "column" : 8,
5433 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5434 }
5435 },
5436 {
5437 "op" : "assign",
5438 "parameters" : [
5439 {
5440 "type" : "field",
5441 "value" : ["userMetadata.int_meta", "new_words"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005442 },
5443 {
5444 "type" : "expression",
5445 "value" : {
5446 "type" : "expression",
5447 "value" : {
5448 "op" : "&",
5449 "left" : {
5450 "type" : "expression",
5451 "value" : {
5452 "op" : "+",
5453 "left" : {
5454 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005455 "value" : ["userMetadata.int_meta", "new_words"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005456 },
5457 "right" : {
5458 "type" : "hexstr",
5459 "value" : "0x01"
5460 }
5461 }
5462 },
5463 "right" : {
5464 "type" : "hexstr",
5465 "value" : "0xff"
5466 }
5467 }
5468 }
5469 }
5470 ],
5471 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005472 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005473 "line" : 97,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005474 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005475 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005476 }
5477 },
5478 {
5479 "op" : "assign",
5480 "parameters" : [
5481 {
5482 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005483 "value" : ["userMetadata.int_meta", "new_bytes"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005484 },
5485 {
5486 "type" : "expression",
5487 "value" : {
5488 "type" : "expression",
5489 "value" : {
5490 "op" : "&",
5491 "left" : {
5492 "type" : "expression",
5493 "value" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005494 "op" : "+",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005495 "left" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005496 "type" : "field",
5497 "value" : ["userMetadata.int_meta", "new_bytes"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005498 },
5499 "right" : {
5500 "type" : "hexstr",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005501 "value" : "0x0004"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005502 }
5503 }
5504 },
5505 "right" : {
5506 "type" : "hexstr",
5507 "value" : "0xffff"
5508 }
5509 }
5510 }
5511 }
5512 ],
5513 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005514 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005515 "line" : 98,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005516 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005517 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005518 }
5519 }
5520 ]
5521 },
5522 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005523 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005524 "id" : 73,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005525 "runtime_data" : [],
5526 "primitives" : [
5527 {
5528 "op" : "add_header",
5529 "parameters" : [
5530 {
5531 "type" : "header",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005532 "value" : "int_hop_latency"
5533 }
5534 ],
5535 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005536 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005537 "line" : 54,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005538 "column" : 8,
5539 "source_fragment" : "hdr.int_hop_latency.setValid()"
5540 }
5541 },
5542 {
5543 "op" : "assign",
5544 "parameters" : [
5545 {
5546 "type" : "field",
5547 "value" : ["int_hop_latency", "hop_latency"]
5548 },
5549 {
5550 "type" : "field",
5551 "value" : ["standard_metadata", "deq_timedelta"]
5552 }
5553 ],
5554 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005555 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005556 "line" : 55,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005557 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005558 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005559 }
5560 },
5561 {
5562 "op" : "assign",
5563 "parameters" : [
5564 {
5565 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005566 "value" : ["userMetadata.int_meta", "new_words"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005567 },
5568 {
5569 "type" : "expression",
5570 "value" : {
5571 "type" : "expression",
5572 "value" : {
5573 "op" : "&",
5574 "left" : {
5575 "type" : "expression",
5576 "value" : {
5577 "op" : "+",
5578 "left" : {
5579 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005580 "value" : ["userMetadata.int_meta", "new_words"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005581 },
5582 "right" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005583 "type" : "hexstr",
5584 "value" : "0x01"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005585 }
5586 }
5587 },
5588 "right" : {
5589 "type" : "hexstr",
5590 "value" : "0xff"
5591 }
5592 }
5593 }
5594 }
5595 ],
5596 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005597 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005598 "line" : 97,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005599 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005600 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
5601 }
5602 },
5603 {
5604 "op" : "assign",
5605 "parameters" : [
5606 {
5607 "type" : "field",
5608 "value" : ["userMetadata.int_meta", "new_bytes"]
5609 },
5610 {
5611 "type" : "expression",
5612 "value" : {
5613 "type" : "expression",
5614 "value" : {
5615 "op" : "&",
5616 "left" : {
5617 "type" : "expression",
5618 "value" : {
5619 "op" : "+",
5620 "left" : {
5621 "type" : "field",
5622 "value" : ["userMetadata.int_meta", "new_bytes"]
5623 },
5624 "right" : {
5625 "type" : "hexstr",
5626 "value" : "0x0004"
5627 }
5628 }
5629 },
5630 "right" : {
5631 "type" : "hexstr",
5632 "value" : "0xffff"
5633 }
5634 }
5635 }
5636 }
5637 ],
5638 "source_info" : {
5639 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005640 "line" : 98,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005641 "column" : 8,
5642 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09005643 }
5644 }
5645 ]
5646 },
5647 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005648 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005649 "id" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005650 "runtime_data" : [],
5651 "primitives" : [
5652 {
5653 "op" : "add_header",
5654 "parameters" : [
5655 {
5656 "type" : "header",
5657 "value" : "int_q_occupancy"
5658 }
5659 ],
5660 "source_info" : {
5661 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005662 "line" : 60,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005663 "column" : 8,
5664 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5665 }
5666 },
5667 {
5668 "op" : "assign",
5669 "parameters" : [
5670 {
5671 "type" : "field",
5672 "value" : ["int_q_occupancy", "q_id"]
5673 },
5674 {
5675 "type" : "hexstr",
5676 "value" : "0x00"
5677 }
5678 ],
5679 "source_info" : {
5680 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005681 "line" : 62,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005682 "column" : 8,
5683 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5684 }
5685 },
5686 {
5687 "op" : "assign",
5688 "parameters" : [
5689 {
5690 "type" : "field",
5691 "value" : ["int_q_occupancy", "q_occupancy"]
5692 },
5693 {
5694 "type" : "expression",
5695 "value" : {
5696 "type" : "expression",
5697 "value" : {
5698 "op" : "&",
5699 "left" : {
5700 "type" : "field",
5701 "value" : ["standard_metadata", "deq_qdepth"]
5702 },
5703 "right" : {
5704 "type" : "hexstr",
5705 "value" : "0xffffff"
5706 }
5707 }
5708 }
5709 }
5710 ],
5711 "source_info" : {
5712 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005713 "line" : 63,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005714 "column" : 8,
5715 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5716 }
5717 },
5718 {
5719 "op" : "add_header",
5720 "parameters" : [
5721 {
5722 "type" : "header",
5723 "value" : "int_hop_latency"
5724 }
5725 ],
5726 "source_info" : {
5727 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005728 "line" : 54,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005729 "column" : 8,
5730 "source_fragment" : "hdr.int_hop_latency.setValid()"
5731 }
5732 },
5733 {
5734 "op" : "assign",
5735 "parameters" : [
5736 {
5737 "type" : "field",
5738 "value" : ["int_hop_latency", "hop_latency"]
5739 },
5740 {
5741 "type" : "field",
5742 "value" : ["standard_metadata", "deq_timedelta"]
5743 }
5744 ],
5745 "source_info" : {
5746 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005747 "line" : 55,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005748 "column" : 8,
5749 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5750 }
5751 },
5752 {
5753 "op" : "assign",
5754 "parameters" : [
5755 {
5756 "type" : "field",
5757 "value" : ["userMetadata.int_meta", "new_words"]
5758 },
5759 {
5760 "type" : "expression",
5761 "value" : {
5762 "type" : "expression",
5763 "value" : {
5764 "op" : "&",
5765 "left" : {
5766 "type" : "expression",
5767 "value" : {
5768 "op" : "+",
5769 "left" : {
5770 "type" : "field",
5771 "value" : ["userMetadata.int_meta", "new_words"]
5772 },
5773 "right" : {
5774 "type" : "hexstr",
5775 "value" : "0x02"
5776 }
5777 }
5778 },
5779 "right" : {
5780 "type" : "hexstr",
5781 "value" : "0xff"
5782 }
5783 }
5784 }
5785 }
5786 ],
5787 "source_info" : {
5788 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005789 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005790 "column" : 8,
5791 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
5792 }
5793 },
5794 {
5795 "op" : "assign",
5796 "parameters" : [
5797 {
5798 "type" : "field",
5799 "value" : ["userMetadata.int_meta", "new_bytes"]
5800 },
5801 {
5802 "type" : "expression",
5803 "value" : {
5804 "type" : "expression",
5805 "value" : {
5806 "op" : "&",
5807 "left" : {
5808 "type" : "expression",
5809 "value" : {
5810 "op" : "+",
5811 "left" : {
5812 "type" : "field",
5813 "value" : ["userMetadata.int_meta", "new_bytes"]
5814 },
5815 "right" : {
5816 "type" : "hexstr",
5817 "value" : "0x0008"
5818 }
5819 }
5820 },
5821 "right" : {
5822 "type" : "hexstr",
5823 "value" : "0xffff"
5824 }
5825 }
5826 }
5827 }
5828 ],
5829 "source_info" : {
5830 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005831 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005832 "column" : 8,
5833 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
5834 }
5835 }
5836 ]
5837 },
5838 {
5839 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005840 "id" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005841 "runtime_data" : [],
5842 "primitives" : [
5843 {
5844 "op" : "add_header",
5845 "parameters" : [
5846 {
5847 "type" : "header",
5848 "value" : "int_port_ids"
5849 }
5850 ],
5851 "source_info" : {
5852 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005853 "line" : 47,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005854 "column" : 8,
5855 "source_fragment" : "hdr.int_port_ids.setValid()"
5856 }
5857 },
5858 {
5859 "op" : "assign",
5860 "parameters" : [
5861 {
5862 "type" : "field",
5863 "value" : ["int_port_ids", "ingress_port_id"]
5864 },
5865 {
5866 "type" : "expression",
5867 "value" : {
5868 "type" : "expression",
5869 "value" : {
5870 "op" : "&",
5871 "left" : {
5872 "type" : "field",
5873 "value" : ["standard_metadata", "ingress_port"]
5874 },
5875 "right" : {
5876 "type" : "hexstr",
5877 "value" : "0xffff"
5878 }
5879 }
5880 }
5881 }
5882 ],
5883 "source_info" : {
5884 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005885 "line" : 48,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005886 "column" : 8,
5887 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5888 }
5889 },
5890 {
5891 "op" : "assign",
5892 "parameters" : [
5893 {
5894 "type" : "field",
5895 "value" : ["int_port_ids", "egress_port_id"]
5896 },
5897 {
5898 "type" : "expression",
5899 "value" : {
5900 "type" : "expression",
5901 "value" : {
5902 "op" : "&",
5903 "left" : {
5904 "type" : "field",
5905 "value" : ["standard_metadata", "egress_port"]
5906 },
5907 "right" : {
5908 "type" : "hexstr",
5909 "value" : "0xffff"
5910 }
5911 }
5912 }
5913 }
5914 ],
5915 "source_info" : {
5916 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005917 "line" : 49,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005918 "column" : 8,
5919 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5920 }
5921 },
5922 {
5923 "op" : "assign",
5924 "parameters" : [
5925 {
5926 "type" : "field",
5927 "value" : ["userMetadata.int_meta", "new_words"]
5928 },
5929 {
5930 "type" : "expression",
5931 "value" : {
5932 "type" : "expression",
5933 "value" : {
5934 "op" : "&",
5935 "left" : {
5936 "type" : "expression",
5937 "value" : {
5938 "op" : "+",
5939 "left" : {
5940 "type" : "field",
5941 "value" : ["userMetadata.int_meta", "new_words"]
5942 },
5943 "right" : {
5944 "type" : "hexstr",
5945 "value" : "0x01"
5946 }
5947 }
5948 },
5949 "right" : {
5950 "type" : "hexstr",
5951 "value" : "0xff"
5952 }
5953 }
5954 }
5955 }
5956 ],
5957 "source_info" : {
5958 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005959 "line" : 97,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07005960 "column" : 8,
5961 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
5962 }
5963 },
5964 {
5965 "op" : "assign",
5966 "parameters" : [
5967 {
5968 "type" : "field",
5969 "value" : ["userMetadata.int_meta", "new_bytes"]
5970 },
5971 {
5972 "type" : "expression",
5973 "value" : {
5974 "type" : "expression",
5975 "value" : {
5976 "op" : "&",
5977 "left" : {
5978 "type" : "expression",
5979 "value" : {
5980 "op" : "+",
5981 "left" : {
5982 "type" : "field",
5983 "value" : ["userMetadata.int_meta", "new_bytes"]
5984 },
5985 "right" : {
5986 "type" : "hexstr",
5987 "value" : "0x0004"
5988 }
5989 }
5990 },
5991 "right" : {
5992 "type" : "hexstr",
5993 "value" : "0xffff"
5994 }
5995 }
5996 }
5997 }
5998 ],
5999 "source_info" : {
6000 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006001 "line" : 98,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006002 "column" : 8,
6003 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
6004 }
6005 }
6006 ]
6007 },
6008 {
6009 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006010 "id" : 76,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006011 "runtime_data" : [],
6012 "primitives" : [
6013 {
6014 "op" : "add_header",
6015 "parameters" : [
6016 {
6017 "type" : "header",
6018 "value" : "int_q_occupancy"
6019 }
6020 ],
6021 "source_info" : {
6022 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006023 "line" : 60,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006024 "column" : 8,
6025 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6026 }
6027 },
6028 {
6029 "op" : "assign",
6030 "parameters" : [
6031 {
6032 "type" : "field",
6033 "value" : ["int_q_occupancy", "q_id"]
6034 },
6035 {
6036 "type" : "hexstr",
6037 "value" : "0x00"
6038 }
6039 ],
6040 "source_info" : {
6041 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006042 "line" : 62,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006043 "column" : 8,
6044 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6045 }
6046 },
6047 {
6048 "op" : "assign",
6049 "parameters" : [
6050 {
6051 "type" : "field",
6052 "value" : ["int_q_occupancy", "q_occupancy"]
6053 },
6054 {
6055 "type" : "expression",
6056 "value" : {
6057 "type" : "expression",
6058 "value" : {
6059 "op" : "&",
6060 "left" : {
6061 "type" : "field",
6062 "value" : ["standard_metadata", "deq_qdepth"]
6063 },
6064 "right" : {
6065 "type" : "hexstr",
6066 "value" : "0xffffff"
6067 }
6068 }
6069 }
6070 }
6071 ],
6072 "source_info" : {
6073 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006074 "line" : 63,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006075 "column" : 8,
6076 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6077 }
6078 },
6079 {
6080 "op" : "add_header",
6081 "parameters" : [
6082 {
6083 "type" : "header",
6084 "value" : "int_port_ids"
6085 }
6086 ],
6087 "source_info" : {
6088 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006089 "line" : 47,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006090 "column" : 8,
6091 "source_fragment" : "hdr.int_port_ids.setValid()"
6092 }
6093 },
6094 {
6095 "op" : "assign",
6096 "parameters" : [
6097 {
6098 "type" : "field",
6099 "value" : ["int_port_ids", "ingress_port_id"]
6100 },
6101 {
6102 "type" : "expression",
6103 "value" : {
6104 "type" : "expression",
6105 "value" : {
6106 "op" : "&",
6107 "left" : {
6108 "type" : "field",
6109 "value" : ["standard_metadata", "ingress_port"]
6110 },
6111 "right" : {
6112 "type" : "hexstr",
6113 "value" : "0xffff"
6114 }
6115 }
6116 }
6117 }
6118 ],
6119 "source_info" : {
6120 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006121 "line" : 48,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006122 "column" : 8,
6123 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6124 }
6125 },
6126 {
6127 "op" : "assign",
6128 "parameters" : [
6129 {
6130 "type" : "field",
6131 "value" : ["int_port_ids", "egress_port_id"]
6132 },
6133 {
6134 "type" : "expression",
6135 "value" : {
6136 "type" : "expression",
6137 "value" : {
6138 "op" : "&",
6139 "left" : {
6140 "type" : "field",
6141 "value" : ["standard_metadata", "egress_port"]
6142 },
6143 "right" : {
6144 "type" : "hexstr",
6145 "value" : "0xffff"
6146 }
6147 }
6148 }
6149 }
6150 ],
6151 "source_info" : {
6152 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006153 "line" : 49,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006154 "column" : 8,
6155 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6156 }
6157 },
6158 {
6159 "op" : "assign",
6160 "parameters" : [
6161 {
6162 "type" : "field",
6163 "value" : ["userMetadata.int_meta", "new_words"]
6164 },
6165 {
6166 "type" : "expression",
6167 "value" : {
6168 "type" : "expression",
6169 "value" : {
6170 "op" : "&",
6171 "left" : {
6172 "type" : "expression",
6173 "value" : {
6174 "op" : "+",
6175 "left" : {
6176 "type" : "field",
6177 "value" : ["userMetadata.int_meta", "new_words"]
6178 },
6179 "right" : {
6180 "type" : "hexstr",
6181 "value" : "0x02"
6182 }
6183 }
6184 },
6185 "right" : {
6186 "type" : "hexstr",
6187 "value" : "0xff"
6188 }
6189 }
6190 }
6191 }
6192 ],
6193 "source_info" : {
6194 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006195 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006196 "column" : 8,
6197 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6198 }
6199 },
6200 {
6201 "op" : "assign",
6202 "parameters" : [
6203 {
6204 "type" : "field",
6205 "value" : ["userMetadata.int_meta", "new_bytes"]
6206 },
6207 {
6208 "type" : "expression",
6209 "value" : {
6210 "type" : "expression",
6211 "value" : {
6212 "op" : "&",
6213 "left" : {
6214 "type" : "expression",
6215 "value" : {
6216 "op" : "+",
6217 "left" : {
6218 "type" : "field",
6219 "value" : ["userMetadata.int_meta", "new_bytes"]
6220 },
6221 "right" : {
6222 "type" : "hexstr",
6223 "value" : "0x0008"
6224 }
6225 }
6226 },
6227 "right" : {
6228 "type" : "hexstr",
6229 "value" : "0xffff"
6230 }
6231 }
6232 }
6233 }
6234 ],
6235 "source_info" : {
6236 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006237 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006238 "column" : 8,
6239 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6240 }
6241 }
6242 ]
6243 },
6244 {
6245 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006246 "id" : 77,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006247 "runtime_data" : [],
6248 "primitives" : [
6249 {
6250 "op" : "add_header",
6251 "parameters" : [
6252 {
6253 "type" : "header",
6254 "value" : "int_hop_latency"
6255 }
6256 ],
6257 "source_info" : {
6258 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006259 "line" : 54,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006260 "column" : 8,
6261 "source_fragment" : "hdr.int_hop_latency.setValid()"
6262 }
6263 },
6264 {
6265 "op" : "assign",
6266 "parameters" : [
6267 {
6268 "type" : "field",
6269 "value" : ["int_hop_latency", "hop_latency"]
6270 },
6271 {
6272 "type" : "field",
6273 "value" : ["standard_metadata", "deq_timedelta"]
6274 }
6275 ],
6276 "source_info" : {
6277 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006278 "line" : 55,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006279 "column" : 8,
6280 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6281 }
6282 },
6283 {
6284 "op" : "add_header",
6285 "parameters" : [
6286 {
6287 "type" : "header",
6288 "value" : "int_port_ids"
6289 }
6290 ],
6291 "source_info" : {
6292 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006293 "line" : 47,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006294 "column" : 8,
6295 "source_fragment" : "hdr.int_port_ids.setValid()"
6296 }
6297 },
6298 {
6299 "op" : "assign",
6300 "parameters" : [
6301 {
6302 "type" : "field",
6303 "value" : ["int_port_ids", "ingress_port_id"]
6304 },
6305 {
6306 "type" : "expression",
6307 "value" : {
6308 "type" : "expression",
6309 "value" : {
6310 "op" : "&",
6311 "left" : {
6312 "type" : "field",
6313 "value" : ["standard_metadata", "ingress_port"]
6314 },
6315 "right" : {
6316 "type" : "hexstr",
6317 "value" : "0xffff"
6318 }
6319 }
6320 }
6321 }
6322 ],
6323 "source_info" : {
6324 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006325 "line" : 48,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006326 "column" : 8,
6327 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6328 }
6329 },
6330 {
6331 "op" : "assign",
6332 "parameters" : [
6333 {
6334 "type" : "field",
6335 "value" : ["int_port_ids", "egress_port_id"]
6336 },
6337 {
6338 "type" : "expression",
6339 "value" : {
6340 "type" : "expression",
6341 "value" : {
6342 "op" : "&",
6343 "left" : {
6344 "type" : "field",
6345 "value" : ["standard_metadata", "egress_port"]
6346 },
6347 "right" : {
6348 "type" : "hexstr",
6349 "value" : "0xffff"
6350 }
6351 }
6352 }
6353 }
6354 ],
6355 "source_info" : {
6356 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006357 "line" : 49,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006358 "column" : 8,
6359 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6360 }
6361 },
6362 {
6363 "op" : "assign",
6364 "parameters" : [
6365 {
6366 "type" : "field",
6367 "value" : ["userMetadata.int_meta", "new_words"]
6368 },
6369 {
6370 "type" : "expression",
6371 "value" : {
6372 "type" : "expression",
6373 "value" : {
6374 "op" : "&",
6375 "left" : {
6376 "type" : "expression",
6377 "value" : {
6378 "op" : "+",
6379 "left" : {
6380 "type" : "field",
6381 "value" : ["userMetadata.int_meta", "new_words"]
6382 },
6383 "right" : {
6384 "type" : "hexstr",
6385 "value" : "0x02"
6386 }
6387 }
6388 },
6389 "right" : {
6390 "type" : "hexstr",
6391 "value" : "0xff"
6392 }
6393 }
6394 }
6395 }
6396 ],
6397 "source_info" : {
6398 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006399 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006400 "column" : 8,
6401 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6402 }
6403 },
6404 {
6405 "op" : "assign",
6406 "parameters" : [
6407 {
6408 "type" : "field",
6409 "value" : ["userMetadata.int_meta", "new_bytes"]
6410 },
6411 {
6412 "type" : "expression",
6413 "value" : {
6414 "type" : "expression",
6415 "value" : {
6416 "op" : "&",
6417 "left" : {
6418 "type" : "expression",
6419 "value" : {
6420 "op" : "+",
6421 "left" : {
6422 "type" : "field",
6423 "value" : ["userMetadata.int_meta", "new_bytes"]
6424 },
6425 "right" : {
6426 "type" : "hexstr",
6427 "value" : "0x0008"
6428 }
6429 }
6430 },
6431 "right" : {
6432 "type" : "hexstr",
6433 "value" : "0xffff"
6434 }
6435 }
6436 }
6437 }
6438 ],
6439 "source_info" : {
6440 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006441 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006442 "column" : 8,
6443 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6444 }
6445 }
6446 ]
6447 },
6448 {
6449 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006450 "id" : 78,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006451 "runtime_data" : [],
6452 "primitives" : [
6453 {
6454 "op" : "add_header",
6455 "parameters" : [
6456 {
6457 "type" : "header",
6458 "value" : "int_q_occupancy"
6459 }
6460 ],
6461 "source_info" : {
6462 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006463 "line" : 60,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006464 "column" : 8,
6465 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6466 }
6467 },
6468 {
6469 "op" : "assign",
6470 "parameters" : [
6471 {
6472 "type" : "field",
6473 "value" : ["int_q_occupancy", "q_id"]
6474 },
6475 {
6476 "type" : "hexstr",
6477 "value" : "0x00"
6478 }
6479 ],
6480 "source_info" : {
6481 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006482 "line" : 62,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006483 "column" : 8,
6484 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6485 }
6486 },
6487 {
6488 "op" : "assign",
6489 "parameters" : [
6490 {
6491 "type" : "field",
6492 "value" : ["int_q_occupancy", "q_occupancy"]
6493 },
6494 {
6495 "type" : "expression",
6496 "value" : {
6497 "type" : "expression",
6498 "value" : {
6499 "op" : "&",
6500 "left" : {
6501 "type" : "field",
6502 "value" : ["standard_metadata", "deq_qdepth"]
6503 },
6504 "right" : {
6505 "type" : "hexstr",
6506 "value" : "0xffffff"
6507 }
6508 }
6509 }
6510 }
6511 ],
6512 "source_info" : {
6513 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006514 "line" : 63,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006515 "column" : 8,
6516 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6517 }
6518 },
6519 {
6520 "op" : "add_header",
6521 "parameters" : [
6522 {
6523 "type" : "header",
6524 "value" : "int_hop_latency"
6525 }
6526 ],
6527 "source_info" : {
6528 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006529 "line" : 54,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006530 "column" : 8,
6531 "source_fragment" : "hdr.int_hop_latency.setValid()"
6532 }
6533 },
6534 {
6535 "op" : "assign",
6536 "parameters" : [
6537 {
6538 "type" : "field",
6539 "value" : ["int_hop_latency", "hop_latency"]
6540 },
6541 {
6542 "type" : "field",
6543 "value" : ["standard_metadata", "deq_timedelta"]
6544 }
6545 ],
6546 "source_info" : {
6547 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006548 "line" : 55,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006549 "column" : 8,
6550 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6551 }
6552 },
6553 {
6554 "op" : "add_header",
6555 "parameters" : [
6556 {
6557 "type" : "header",
6558 "value" : "int_port_ids"
6559 }
6560 ],
6561 "source_info" : {
6562 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006563 "line" : 47,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006564 "column" : 8,
6565 "source_fragment" : "hdr.int_port_ids.setValid()"
6566 }
6567 },
6568 {
6569 "op" : "assign",
6570 "parameters" : [
6571 {
6572 "type" : "field",
6573 "value" : ["int_port_ids", "ingress_port_id"]
6574 },
6575 {
6576 "type" : "expression",
6577 "value" : {
6578 "type" : "expression",
6579 "value" : {
6580 "op" : "&",
6581 "left" : {
6582 "type" : "field",
6583 "value" : ["standard_metadata", "ingress_port"]
6584 },
6585 "right" : {
6586 "type" : "hexstr",
6587 "value" : "0xffff"
6588 }
6589 }
6590 }
6591 }
6592 ],
6593 "source_info" : {
6594 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006595 "line" : 48,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006596 "column" : 8,
6597 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6598 }
6599 },
6600 {
6601 "op" : "assign",
6602 "parameters" : [
6603 {
6604 "type" : "field",
6605 "value" : ["int_port_ids", "egress_port_id"]
6606 },
6607 {
6608 "type" : "expression",
6609 "value" : {
6610 "type" : "expression",
6611 "value" : {
6612 "op" : "&",
6613 "left" : {
6614 "type" : "field",
6615 "value" : ["standard_metadata", "egress_port"]
6616 },
6617 "right" : {
6618 "type" : "hexstr",
6619 "value" : "0xffff"
6620 }
6621 }
6622 }
6623 }
6624 ],
6625 "source_info" : {
6626 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006627 "line" : 49,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006628 "column" : 8,
6629 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6630 }
6631 },
6632 {
6633 "op" : "assign",
6634 "parameters" : [
6635 {
6636 "type" : "field",
6637 "value" : ["userMetadata.int_meta", "new_words"]
6638 },
6639 {
6640 "type" : "expression",
6641 "value" : {
6642 "type" : "expression",
6643 "value" : {
6644 "op" : "&",
6645 "left" : {
6646 "type" : "expression",
6647 "value" : {
6648 "op" : "+",
6649 "left" : {
6650 "type" : "field",
6651 "value" : ["userMetadata.int_meta", "new_words"]
6652 },
6653 "right" : {
6654 "type" : "hexstr",
6655 "value" : "0x03"
6656 }
6657 }
6658 },
6659 "right" : {
6660 "type" : "hexstr",
6661 "value" : "0xff"
6662 }
6663 }
6664 }
6665 }
6666 ],
6667 "source_info" : {
6668 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006669 "line" : 109,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006670 "column" : 8,
6671 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
6672 }
6673 },
6674 {
6675 "op" : "assign",
6676 "parameters" : [
6677 {
6678 "type" : "field",
6679 "value" : ["userMetadata.int_meta", "new_bytes"]
6680 },
6681 {
6682 "type" : "expression",
6683 "value" : {
6684 "type" : "expression",
6685 "value" : {
6686 "op" : "&",
6687 "left" : {
6688 "type" : "expression",
6689 "value" : {
6690 "op" : "+",
6691 "left" : {
6692 "type" : "field",
6693 "value" : ["userMetadata.int_meta", "new_bytes"]
6694 },
6695 "right" : {
6696 "type" : "hexstr",
6697 "value" : "0x000c"
6698 }
6699 }
6700 },
6701 "right" : {
6702 "type" : "hexstr",
6703 "value" : "0xffff"
6704 }
6705 }
6706 }
6707 }
6708 ],
6709 "source_info" : {
6710 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006711 "line" : 110,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006712 "column" : 8,
6713 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
6714 }
6715 }
6716 ]
6717 },
6718 {
6719 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006720 "id" : 79,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006721 "runtime_data" : [],
6722 "primitives" : [
6723 {
6724 "op" : "add_header",
6725 "parameters" : [
6726 {
6727 "type" : "header",
6728 "value" : "int_switch_id"
6729 }
6730 ],
6731 "source_info" : {
6732 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006733 "line" : 41,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006734 "column" : 8,
6735 "source_fragment" : "hdr.int_switch_id.setValid()"
6736 }
6737 },
6738 {
6739 "op" : "assign",
6740 "parameters" : [
6741 {
6742 "type" : "field",
6743 "value" : ["int_switch_id", "switch_id"]
6744 },
6745 {
6746 "type" : "field",
6747 "value" : ["userMetadata.int_meta", "switch_id"]
6748 }
6749 ],
6750 "source_info" : {
6751 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006752 "line" : 42,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006753 "column" : 8,
6754 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6755 }
6756 },
6757 {
6758 "op" : "assign",
6759 "parameters" : [
6760 {
6761 "type" : "field",
6762 "value" : ["userMetadata.int_meta", "new_words"]
6763 },
6764 {
6765 "type" : "expression",
6766 "value" : {
6767 "type" : "expression",
6768 "value" : {
6769 "op" : "&",
6770 "left" : {
6771 "type" : "expression",
6772 "value" : {
6773 "op" : "+",
6774 "left" : {
6775 "type" : "field",
6776 "value" : ["userMetadata.int_meta", "new_words"]
6777 },
6778 "right" : {
6779 "type" : "hexstr",
6780 "value" : "0x01"
6781 }
6782 }
6783 },
6784 "right" : {
6785 "type" : "hexstr",
6786 "value" : "0xff"
6787 }
6788 }
6789 }
6790 }
6791 ],
6792 "source_info" : {
6793 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006794 "line" : 97,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006795 "column" : 8,
6796 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
6797 }
6798 },
6799 {
6800 "op" : "assign",
6801 "parameters" : [
6802 {
6803 "type" : "field",
6804 "value" : ["userMetadata.int_meta", "new_bytes"]
6805 },
6806 {
6807 "type" : "expression",
6808 "value" : {
6809 "type" : "expression",
6810 "value" : {
6811 "op" : "&",
6812 "left" : {
6813 "type" : "expression",
6814 "value" : {
6815 "op" : "+",
6816 "left" : {
6817 "type" : "field",
6818 "value" : ["userMetadata.int_meta", "new_bytes"]
6819 },
6820 "right" : {
6821 "type" : "hexstr",
6822 "value" : "0x0004"
6823 }
6824 }
6825 },
6826 "right" : {
6827 "type" : "hexstr",
6828 "value" : "0xffff"
6829 }
6830 }
6831 }
6832 }
6833 ],
6834 "source_info" : {
6835 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006836 "line" : 98,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006837 "column" : 8,
6838 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
6839 }
6840 }
6841 ]
6842 },
6843 {
6844 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006845 "id" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006846 "runtime_data" : [],
6847 "primitives" : [
6848 {
6849 "op" : "add_header",
6850 "parameters" : [
6851 {
6852 "type" : "header",
6853 "value" : "int_q_occupancy"
6854 }
6855 ],
6856 "source_info" : {
6857 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006858 "line" : 60,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006859 "column" : 8,
6860 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6861 }
6862 },
6863 {
6864 "op" : "assign",
6865 "parameters" : [
6866 {
6867 "type" : "field",
6868 "value" : ["int_q_occupancy", "q_id"]
6869 },
6870 {
6871 "type" : "hexstr",
6872 "value" : "0x00"
6873 }
6874 ],
6875 "source_info" : {
6876 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006877 "line" : 62,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006878 "column" : 8,
6879 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6880 }
6881 },
6882 {
6883 "op" : "assign",
6884 "parameters" : [
6885 {
6886 "type" : "field",
6887 "value" : ["int_q_occupancy", "q_occupancy"]
6888 },
6889 {
6890 "type" : "expression",
6891 "value" : {
6892 "type" : "expression",
6893 "value" : {
6894 "op" : "&",
6895 "left" : {
6896 "type" : "field",
6897 "value" : ["standard_metadata", "deq_qdepth"]
6898 },
6899 "right" : {
6900 "type" : "hexstr",
6901 "value" : "0xffffff"
6902 }
6903 }
6904 }
6905 }
6906 ],
6907 "source_info" : {
6908 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006909 "line" : 63,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006910 "column" : 8,
6911 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6912 }
6913 },
6914 {
6915 "op" : "add_header",
6916 "parameters" : [
6917 {
6918 "type" : "header",
6919 "value" : "int_switch_id"
6920 }
6921 ],
6922 "source_info" : {
6923 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006924 "line" : 41,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006925 "column" : 8,
6926 "source_fragment" : "hdr.int_switch_id.setValid()"
6927 }
6928 },
6929 {
6930 "op" : "assign",
6931 "parameters" : [
6932 {
6933 "type" : "field",
6934 "value" : ["int_switch_id", "switch_id"]
6935 },
6936 {
6937 "type" : "field",
6938 "value" : ["userMetadata.int_meta", "switch_id"]
6939 }
6940 ],
6941 "source_info" : {
6942 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006943 "line" : 42,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006944 "column" : 8,
6945 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6946 }
6947 },
6948 {
6949 "op" : "assign",
6950 "parameters" : [
6951 {
6952 "type" : "field",
6953 "value" : ["userMetadata.int_meta", "new_words"]
6954 },
6955 {
6956 "type" : "expression",
6957 "value" : {
6958 "type" : "expression",
6959 "value" : {
6960 "op" : "&",
6961 "left" : {
6962 "type" : "expression",
6963 "value" : {
6964 "op" : "+",
6965 "left" : {
6966 "type" : "field",
6967 "value" : ["userMetadata.int_meta", "new_words"]
6968 },
6969 "right" : {
6970 "type" : "hexstr",
6971 "value" : "0x02"
6972 }
6973 }
6974 },
6975 "right" : {
6976 "type" : "hexstr",
6977 "value" : "0xff"
6978 }
6979 }
6980 }
6981 }
6982 ],
6983 "source_info" : {
6984 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006985 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07006986 "column" : 8,
6987 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6988 }
6989 },
6990 {
6991 "op" : "assign",
6992 "parameters" : [
6993 {
6994 "type" : "field",
6995 "value" : ["userMetadata.int_meta", "new_bytes"]
6996 },
6997 {
6998 "type" : "expression",
6999 "value" : {
7000 "type" : "expression",
7001 "value" : {
7002 "op" : "&",
7003 "left" : {
7004 "type" : "expression",
7005 "value" : {
7006 "op" : "+",
7007 "left" : {
7008 "type" : "field",
7009 "value" : ["userMetadata.int_meta", "new_bytes"]
7010 },
7011 "right" : {
7012 "type" : "hexstr",
7013 "value" : "0x0008"
7014 }
7015 }
7016 },
7017 "right" : {
7018 "type" : "hexstr",
7019 "value" : "0xffff"
7020 }
7021 }
7022 }
7023 }
7024 ],
7025 "source_info" : {
7026 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007027 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007028 "column" : 8,
7029 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
7030 }
7031 }
7032 ]
7033 },
7034 {
7035 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007036 "id" : 81,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007037 "runtime_data" : [],
7038 "primitives" : [
7039 {
7040 "op" : "add_header",
7041 "parameters" : [
7042 {
7043 "type" : "header",
7044 "value" : "int_hop_latency"
7045 }
7046 ],
7047 "source_info" : {
7048 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007049 "line" : 54,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007050 "column" : 8,
7051 "source_fragment" : "hdr.int_hop_latency.setValid()"
7052 }
7053 },
7054 {
7055 "op" : "assign",
7056 "parameters" : [
7057 {
7058 "type" : "field",
7059 "value" : ["int_hop_latency", "hop_latency"]
7060 },
7061 {
7062 "type" : "field",
7063 "value" : ["standard_metadata", "deq_timedelta"]
7064 }
7065 ],
7066 "source_info" : {
7067 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007068 "line" : 55,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007069 "column" : 8,
7070 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7071 }
7072 },
7073 {
7074 "op" : "add_header",
7075 "parameters" : [
7076 {
7077 "type" : "header",
7078 "value" : "int_switch_id"
7079 }
7080 ],
7081 "source_info" : {
7082 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007083 "line" : 41,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007084 "column" : 8,
7085 "source_fragment" : "hdr.int_switch_id.setValid()"
7086 }
7087 },
7088 {
7089 "op" : "assign",
7090 "parameters" : [
7091 {
7092 "type" : "field",
7093 "value" : ["int_switch_id", "switch_id"]
7094 },
7095 {
7096 "type" : "field",
7097 "value" : ["userMetadata.int_meta", "switch_id"]
7098 }
7099 ],
7100 "source_info" : {
7101 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007102 "line" : 42,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007103 "column" : 8,
7104 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7105 }
7106 },
7107 {
7108 "op" : "assign",
7109 "parameters" : [
7110 {
7111 "type" : "field",
7112 "value" : ["userMetadata.int_meta", "new_words"]
7113 },
7114 {
7115 "type" : "expression",
7116 "value" : {
7117 "type" : "expression",
7118 "value" : {
7119 "op" : "&",
7120 "left" : {
7121 "type" : "expression",
7122 "value" : {
7123 "op" : "+",
7124 "left" : {
7125 "type" : "field",
7126 "value" : ["userMetadata.int_meta", "new_words"]
7127 },
7128 "right" : {
7129 "type" : "hexstr",
7130 "value" : "0x02"
7131 }
7132 }
7133 },
7134 "right" : {
7135 "type" : "hexstr",
7136 "value" : "0xff"
7137 }
7138 }
7139 }
7140 }
7141 ],
7142 "source_info" : {
7143 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007144 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007145 "column" : 8,
7146 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
7147 }
7148 },
7149 {
7150 "op" : "assign",
7151 "parameters" : [
7152 {
7153 "type" : "field",
7154 "value" : ["userMetadata.int_meta", "new_bytes"]
7155 },
7156 {
7157 "type" : "expression",
7158 "value" : {
7159 "type" : "expression",
7160 "value" : {
7161 "op" : "&",
7162 "left" : {
7163 "type" : "expression",
7164 "value" : {
7165 "op" : "+",
7166 "left" : {
7167 "type" : "field",
7168 "value" : ["userMetadata.int_meta", "new_bytes"]
7169 },
7170 "right" : {
7171 "type" : "hexstr",
7172 "value" : "0x0008"
7173 }
7174 }
7175 },
7176 "right" : {
7177 "type" : "hexstr",
7178 "value" : "0xffff"
7179 }
7180 }
7181 }
7182 }
7183 ],
7184 "source_info" : {
7185 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007186 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007187 "column" : 8,
7188 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
7189 }
7190 }
7191 ]
7192 },
7193 {
7194 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007195 "id" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007196 "runtime_data" : [],
7197 "primitives" : [
7198 {
7199 "op" : "add_header",
7200 "parameters" : [
7201 {
7202 "type" : "header",
7203 "value" : "int_q_occupancy"
7204 }
7205 ],
7206 "source_info" : {
7207 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007208 "line" : 60,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007209 "column" : 8,
7210 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7211 }
7212 },
7213 {
7214 "op" : "assign",
7215 "parameters" : [
7216 {
7217 "type" : "field",
7218 "value" : ["int_q_occupancy", "q_id"]
7219 },
7220 {
7221 "type" : "hexstr",
7222 "value" : "0x00"
7223 }
7224 ],
7225 "source_info" : {
7226 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007227 "line" : 62,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007228 "column" : 8,
7229 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7230 }
7231 },
7232 {
7233 "op" : "assign",
7234 "parameters" : [
7235 {
7236 "type" : "field",
7237 "value" : ["int_q_occupancy", "q_occupancy"]
7238 },
7239 {
7240 "type" : "expression",
7241 "value" : {
7242 "type" : "expression",
7243 "value" : {
7244 "op" : "&",
7245 "left" : {
7246 "type" : "field",
7247 "value" : ["standard_metadata", "deq_qdepth"]
7248 },
7249 "right" : {
7250 "type" : "hexstr",
7251 "value" : "0xffffff"
7252 }
7253 }
7254 }
7255 }
7256 ],
7257 "source_info" : {
7258 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007259 "line" : 63,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007260 "column" : 8,
7261 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7262 }
7263 },
7264 {
7265 "op" : "add_header",
7266 "parameters" : [
7267 {
7268 "type" : "header",
7269 "value" : "int_hop_latency"
7270 }
7271 ],
7272 "source_info" : {
7273 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007274 "line" : 54,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007275 "column" : 8,
7276 "source_fragment" : "hdr.int_hop_latency.setValid()"
7277 }
7278 },
7279 {
7280 "op" : "assign",
7281 "parameters" : [
7282 {
7283 "type" : "field",
7284 "value" : ["int_hop_latency", "hop_latency"]
7285 },
7286 {
7287 "type" : "field",
7288 "value" : ["standard_metadata", "deq_timedelta"]
7289 }
7290 ],
7291 "source_info" : {
7292 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007293 "line" : 55,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007294 "column" : 8,
7295 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7296 }
7297 },
7298 {
7299 "op" : "add_header",
7300 "parameters" : [
7301 {
7302 "type" : "header",
7303 "value" : "int_switch_id"
7304 }
7305 ],
7306 "source_info" : {
7307 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007308 "line" : 41,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007309 "column" : 8,
7310 "source_fragment" : "hdr.int_switch_id.setValid()"
7311 }
7312 },
7313 {
7314 "op" : "assign",
7315 "parameters" : [
7316 {
7317 "type" : "field",
7318 "value" : ["int_switch_id", "switch_id"]
7319 },
7320 {
7321 "type" : "field",
7322 "value" : ["userMetadata.int_meta", "switch_id"]
7323 }
7324 ],
7325 "source_info" : {
7326 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007327 "line" : 42,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007328 "column" : 8,
7329 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7330 }
7331 },
7332 {
7333 "op" : "assign",
7334 "parameters" : [
7335 {
7336 "type" : "field",
7337 "value" : ["userMetadata.int_meta", "new_words"]
7338 },
7339 {
7340 "type" : "expression",
7341 "value" : {
7342 "type" : "expression",
7343 "value" : {
7344 "op" : "&",
7345 "left" : {
7346 "type" : "expression",
7347 "value" : {
7348 "op" : "+",
7349 "left" : {
7350 "type" : "field",
7351 "value" : ["userMetadata.int_meta", "new_words"]
7352 },
7353 "right" : {
7354 "type" : "hexstr",
7355 "value" : "0x03"
7356 }
7357 }
7358 },
7359 "right" : {
7360 "type" : "hexstr",
7361 "value" : "0xff"
7362 }
7363 }
7364 }
7365 }
7366 ],
7367 "source_info" : {
7368 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007369 "line" : 109,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007370 "column" : 8,
7371 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
7372 }
7373 },
7374 {
7375 "op" : "assign",
7376 "parameters" : [
7377 {
7378 "type" : "field",
7379 "value" : ["userMetadata.int_meta", "new_bytes"]
7380 },
7381 {
7382 "type" : "expression",
7383 "value" : {
7384 "type" : "expression",
7385 "value" : {
7386 "op" : "&",
7387 "left" : {
7388 "type" : "expression",
7389 "value" : {
7390 "op" : "+",
7391 "left" : {
7392 "type" : "field",
7393 "value" : ["userMetadata.int_meta", "new_bytes"]
7394 },
7395 "right" : {
7396 "type" : "hexstr",
7397 "value" : "0x000c"
7398 }
7399 }
7400 },
7401 "right" : {
7402 "type" : "hexstr",
7403 "value" : "0xffff"
7404 }
7405 }
7406 }
7407 }
7408 ],
7409 "source_info" : {
7410 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007411 "line" : 110,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007412 "column" : 8,
7413 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
7414 }
7415 }
7416 ]
7417 },
7418 {
7419 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007420 "id" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007421 "runtime_data" : [],
7422 "primitives" : [
7423 {
7424 "op" : "add_header",
7425 "parameters" : [
7426 {
7427 "type" : "header",
7428 "value" : "int_port_ids"
7429 }
7430 ],
7431 "source_info" : {
7432 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007433 "line" : 47,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007434 "column" : 8,
7435 "source_fragment" : "hdr.int_port_ids.setValid()"
7436 }
7437 },
7438 {
7439 "op" : "assign",
7440 "parameters" : [
7441 {
7442 "type" : "field",
7443 "value" : ["int_port_ids", "ingress_port_id"]
7444 },
7445 {
7446 "type" : "expression",
7447 "value" : {
7448 "type" : "expression",
7449 "value" : {
7450 "op" : "&",
7451 "left" : {
7452 "type" : "field",
7453 "value" : ["standard_metadata", "ingress_port"]
7454 },
7455 "right" : {
7456 "type" : "hexstr",
7457 "value" : "0xffff"
7458 }
7459 }
7460 }
7461 }
7462 ],
7463 "source_info" : {
7464 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007465 "line" : 48,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007466 "column" : 8,
7467 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7468 }
7469 },
7470 {
7471 "op" : "assign",
7472 "parameters" : [
7473 {
7474 "type" : "field",
7475 "value" : ["int_port_ids", "egress_port_id"]
7476 },
7477 {
7478 "type" : "expression",
7479 "value" : {
7480 "type" : "expression",
7481 "value" : {
7482 "op" : "&",
7483 "left" : {
7484 "type" : "field",
7485 "value" : ["standard_metadata", "egress_port"]
7486 },
7487 "right" : {
7488 "type" : "hexstr",
7489 "value" : "0xffff"
7490 }
7491 }
7492 }
7493 }
7494 ],
7495 "source_info" : {
7496 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007497 "line" : 49,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007498 "column" : 8,
7499 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7500 }
7501 },
7502 {
7503 "op" : "add_header",
7504 "parameters" : [
7505 {
7506 "type" : "header",
7507 "value" : "int_switch_id"
7508 }
7509 ],
7510 "source_info" : {
7511 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007512 "line" : 41,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007513 "column" : 8,
7514 "source_fragment" : "hdr.int_switch_id.setValid()"
7515 }
7516 },
7517 {
7518 "op" : "assign",
7519 "parameters" : [
7520 {
7521 "type" : "field",
7522 "value" : ["int_switch_id", "switch_id"]
7523 },
7524 {
7525 "type" : "field",
7526 "value" : ["userMetadata.int_meta", "switch_id"]
7527 }
7528 ],
7529 "source_info" : {
7530 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007531 "line" : 42,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007532 "column" : 8,
7533 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7534 }
7535 },
7536 {
7537 "op" : "assign",
7538 "parameters" : [
7539 {
7540 "type" : "field",
7541 "value" : ["userMetadata.int_meta", "new_words"]
7542 },
7543 {
7544 "type" : "expression",
7545 "value" : {
7546 "type" : "expression",
7547 "value" : {
7548 "op" : "&",
7549 "left" : {
7550 "type" : "expression",
7551 "value" : {
7552 "op" : "+",
7553 "left" : {
7554 "type" : "field",
7555 "value" : ["userMetadata.int_meta", "new_words"]
7556 },
7557 "right" : {
7558 "type" : "hexstr",
7559 "value" : "0x02"
7560 }
7561 }
7562 },
7563 "right" : {
7564 "type" : "hexstr",
7565 "value" : "0xff"
7566 }
7567 }
7568 }
7569 }
7570 ],
7571 "source_info" : {
7572 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007573 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007574 "column" : 8,
7575 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
7576 }
7577 },
7578 {
7579 "op" : "assign",
7580 "parameters" : [
7581 {
7582 "type" : "field",
7583 "value" : ["userMetadata.int_meta", "new_bytes"]
7584 },
7585 {
7586 "type" : "expression",
7587 "value" : {
7588 "type" : "expression",
7589 "value" : {
7590 "op" : "&",
7591 "left" : {
7592 "type" : "expression",
7593 "value" : {
7594 "op" : "+",
7595 "left" : {
7596 "type" : "field",
7597 "value" : ["userMetadata.int_meta", "new_bytes"]
7598 },
7599 "right" : {
7600 "type" : "hexstr",
7601 "value" : "0x0008"
7602 }
7603 }
7604 },
7605 "right" : {
7606 "type" : "hexstr",
7607 "value" : "0xffff"
7608 }
7609 }
7610 }
7611 }
7612 ],
7613 "source_info" : {
7614 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007615 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007616 "column" : 8,
7617 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
7618 }
7619 }
7620 ]
7621 },
7622 {
7623 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007624 "id" : 84,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007625 "runtime_data" : [],
7626 "primitives" : [
7627 {
7628 "op" : "add_header",
7629 "parameters" : [
7630 {
7631 "type" : "header",
7632 "value" : "int_q_occupancy"
7633 }
7634 ],
7635 "source_info" : {
7636 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007637 "line" : 60,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007638 "column" : 8,
7639 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7640 }
7641 },
7642 {
7643 "op" : "assign",
7644 "parameters" : [
7645 {
7646 "type" : "field",
7647 "value" : ["int_q_occupancy", "q_id"]
7648 },
7649 {
7650 "type" : "hexstr",
7651 "value" : "0x00"
7652 }
7653 ],
7654 "source_info" : {
7655 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007656 "line" : 62,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007657 "column" : 8,
7658 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7659 }
7660 },
7661 {
7662 "op" : "assign",
7663 "parameters" : [
7664 {
7665 "type" : "field",
7666 "value" : ["int_q_occupancy", "q_occupancy"]
7667 },
7668 {
7669 "type" : "expression",
7670 "value" : {
7671 "type" : "expression",
7672 "value" : {
7673 "op" : "&",
7674 "left" : {
7675 "type" : "field",
7676 "value" : ["standard_metadata", "deq_qdepth"]
7677 },
7678 "right" : {
7679 "type" : "hexstr",
7680 "value" : "0xffffff"
7681 }
7682 }
7683 }
7684 }
7685 ],
7686 "source_info" : {
7687 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007688 "line" : 63,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007689 "column" : 8,
7690 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7691 }
7692 },
7693 {
7694 "op" : "add_header",
7695 "parameters" : [
7696 {
7697 "type" : "header",
7698 "value" : "int_port_ids"
7699 }
7700 ],
7701 "source_info" : {
7702 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007703 "line" : 47,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007704 "column" : 8,
7705 "source_fragment" : "hdr.int_port_ids.setValid()"
7706 }
7707 },
7708 {
7709 "op" : "assign",
7710 "parameters" : [
7711 {
7712 "type" : "field",
7713 "value" : ["int_port_ids", "ingress_port_id"]
7714 },
7715 {
7716 "type" : "expression",
7717 "value" : {
7718 "type" : "expression",
7719 "value" : {
7720 "op" : "&",
7721 "left" : {
7722 "type" : "field",
7723 "value" : ["standard_metadata", "ingress_port"]
7724 },
7725 "right" : {
7726 "type" : "hexstr",
7727 "value" : "0xffff"
7728 }
7729 }
7730 }
7731 }
7732 ],
7733 "source_info" : {
7734 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007735 "line" : 48,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007736 "column" : 8,
7737 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7738 }
7739 },
7740 {
7741 "op" : "assign",
7742 "parameters" : [
7743 {
7744 "type" : "field",
7745 "value" : ["int_port_ids", "egress_port_id"]
7746 },
7747 {
7748 "type" : "expression",
7749 "value" : {
7750 "type" : "expression",
7751 "value" : {
7752 "op" : "&",
7753 "left" : {
7754 "type" : "field",
7755 "value" : ["standard_metadata", "egress_port"]
7756 },
7757 "right" : {
7758 "type" : "hexstr",
7759 "value" : "0xffff"
7760 }
7761 }
7762 }
7763 }
7764 ],
7765 "source_info" : {
7766 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007767 "line" : 49,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007768 "column" : 8,
7769 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7770 }
7771 },
7772 {
7773 "op" : "add_header",
7774 "parameters" : [
7775 {
7776 "type" : "header",
7777 "value" : "int_switch_id"
7778 }
7779 ],
7780 "source_info" : {
7781 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007782 "line" : 41,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007783 "column" : 8,
7784 "source_fragment" : "hdr.int_switch_id.setValid()"
7785 }
7786 },
7787 {
7788 "op" : "assign",
7789 "parameters" : [
7790 {
7791 "type" : "field",
7792 "value" : ["int_switch_id", "switch_id"]
7793 },
7794 {
7795 "type" : "field",
7796 "value" : ["userMetadata.int_meta", "switch_id"]
7797 }
7798 ],
7799 "source_info" : {
7800 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007801 "line" : 42,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007802 "column" : 8,
7803 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7804 }
7805 },
7806 {
7807 "op" : "assign",
7808 "parameters" : [
7809 {
7810 "type" : "field",
7811 "value" : ["userMetadata.int_meta", "new_words"]
7812 },
7813 {
7814 "type" : "expression",
7815 "value" : {
7816 "type" : "expression",
7817 "value" : {
7818 "op" : "&",
7819 "left" : {
7820 "type" : "expression",
7821 "value" : {
7822 "op" : "+",
7823 "left" : {
7824 "type" : "field",
7825 "value" : ["userMetadata.int_meta", "new_words"]
7826 },
7827 "right" : {
7828 "type" : "hexstr",
7829 "value" : "0x03"
7830 }
7831 }
7832 },
7833 "right" : {
7834 "type" : "hexstr",
7835 "value" : "0xff"
7836 }
7837 }
7838 }
7839 }
7840 ],
7841 "source_info" : {
7842 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007843 "line" : 109,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007844 "column" : 8,
7845 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
7846 }
7847 },
7848 {
7849 "op" : "assign",
7850 "parameters" : [
7851 {
7852 "type" : "field",
7853 "value" : ["userMetadata.int_meta", "new_bytes"]
7854 },
7855 {
7856 "type" : "expression",
7857 "value" : {
7858 "type" : "expression",
7859 "value" : {
7860 "op" : "&",
7861 "left" : {
7862 "type" : "expression",
7863 "value" : {
7864 "op" : "+",
7865 "left" : {
7866 "type" : "field",
7867 "value" : ["userMetadata.int_meta", "new_bytes"]
7868 },
7869 "right" : {
7870 "type" : "hexstr",
7871 "value" : "0x000c"
7872 }
7873 }
7874 },
7875 "right" : {
7876 "type" : "hexstr",
7877 "value" : "0xffff"
7878 }
7879 }
7880 }
7881 }
7882 ],
7883 "source_info" : {
7884 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007885 "line" : 110,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007886 "column" : 8,
7887 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
7888 }
7889 }
7890 ]
7891 },
7892 {
7893 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007894 "id" : 85,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007895 "runtime_data" : [],
7896 "primitives" : [
7897 {
7898 "op" : "add_header",
7899 "parameters" : [
7900 {
7901 "type" : "header",
7902 "value" : "int_hop_latency"
7903 }
7904 ],
7905 "source_info" : {
7906 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007907 "line" : 54,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007908 "column" : 8,
7909 "source_fragment" : "hdr.int_hop_latency.setValid()"
7910 }
7911 },
7912 {
7913 "op" : "assign",
7914 "parameters" : [
7915 {
7916 "type" : "field",
7917 "value" : ["int_hop_latency", "hop_latency"]
7918 },
7919 {
7920 "type" : "field",
7921 "value" : ["standard_metadata", "deq_timedelta"]
7922 }
7923 ],
7924 "source_info" : {
7925 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007926 "line" : 55,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007927 "column" : 8,
7928 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7929 }
7930 },
7931 {
7932 "op" : "add_header",
7933 "parameters" : [
7934 {
7935 "type" : "header",
7936 "value" : "int_port_ids"
7937 }
7938 ],
7939 "source_info" : {
7940 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007941 "line" : 47,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007942 "column" : 8,
7943 "source_fragment" : "hdr.int_port_ids.setValid()"
7944 }
7945 },
7946 {
7947 "op" : "assign",
7948 "parameters" : [
7949 {
7950 "type" : "field",
7951 "value" : ["int_port_ids", "ingress_port_id"]
7952 },
7953 {
7954 "type" : "expression",
7955 "value" : {
7956 "type" : "expression",
7957 "value" : {
7958 "op" : "&",
7959 "left" : {
7960 "type" : "field",
7961 "value" : ["standard_metadata", "ingress_port"]
7962 },
7963 "right" : {
7964 "type" : "hexstr",
7965 "value" : "0xffff"
7966 }
7967 }
7968 }
7969 }
7970 ],
7971 "source_info" : {
7972 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007973 "line" : 48,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007974 "column" : 8,
7975 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7976 }
7977 },
7978 {
7979 "op" : "assign",
7980 "parameters" : [
7981 {
7982 "type" : "field",
7983 "value" : ["int_port_ids", "egress_port_id"]
7984 },
7985 {
7986 "type" : "expression",
7987 "value" : {
7988 "type" : "expression",
7989 "value" : {
7990 "op" : "&",
7991 "left" : {
7992 "type" : "field",
7993 "value" : ["standard_metadata", "egress_port"]
7994 },
7995 "right" : {
7996 "type" : "hexstr",
7997 "value" : "0xffff"
7998 }
7999 }
8000 }
8001 }
8002 ],
8003 "source_info" : {
8004 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008005 "line" : 49,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008006 "column" : 8,
8007 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
8008 }
8009 },
8010 {
8011 "op" : "add_header",
8012 "parameters" : [
8013 {
8014 "type" : "header",
8015 "value" : "int_switch_id"
8016 }
8017 ],
8018 "source_info" : {
8019 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008020 "line" : 41,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008021 "column" : 8,
8022 "source_fragment" : "hdr.int_switch_id.setValid()"
8023 }
8024 },
8025 {
8026 "op" : "assign",
8027 "parameters" : [
8028 {
8029 "type" : "field",
8030 "value" : ["int_switch_id", "switch_id"]
8031 },
8032 {
8033 "type" : "field",
8034 "value" : ["userMetadata.int_meta", "switch_id"]
8035 }
8036 ],
8037 "source_info" : {
8038 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008039 "line" : 42,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008040 "column" : 8,
8041 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
8042 }
8043 },
8044 {
8045 "op" : "assign",
8046 "parameters" : [
8047 {
8048 "type" : "field",
8049 "value" : ["userMetadata.int_meta", "new_words"]
8050 },
8051 {
8052 "type" : "expression",
8053 "value" : {
8054 "type" : "expression",
8055 "value" : {
8056 "op" : "&",
8057 "left" : {
8058 "type" : "expression",
8059 "value" : {
8060 "op" : "+",
8061 "left" : {
8062 "type" : "field",
8063 "value" : ["userMetadata.int_meta", "new_words"]
8064 },
8065 "right" : {
8066 "type" : "hexstr",
8067 "value" : "0x03"
8068 }
8069 }
8070 },
8071 "right" : {
8072 "type" : "hexstr",
8073 "value" : "0xff"
8074 }
8075 }
8076 }
8077 }
8078 ],
8079 "source_info" : {
8080 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008081 "line" : 109,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008082 "column" : 8,
8083 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
8084 }
8085 },
8086 {
8087 "op" : "assign",
8088 "parameters" : [
8089 {
8090 "type" : "field",
8091 "value" : ["userMetadata.int_meta", "new_bytes"]
8092 },
8093 {
8094 "type" : "expression",
8095 "value" : {
8096 "type" : "expression",
8097 "value" : {
8098 "op" : "&",
8099 "left" : {
8100 "type" : "expression",
8101 "value" : {
8102 "op" : "+",
8103 "left" : {
8104 "type" : "field",
8105 "value" : ["userMetadata.int_meta", "new_bytes"]
8106 },
8107 "right" : {
8108 "type" : "hexstr",
8109 "value" : "0x000c"
8110 }
8111 }
8112 },
8113 "right" : {
8114 "type" : "hexstr",
8115 "value" : "0xffff"
8116 }
8117 }
8118 }
8119 }
8120 ],
8121 "source_info" : {
8122 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008123 "line" : 110,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008124 "column" : 8,
8125 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
8126 }
8127 }
8128 ]
8129 },
8130 {
8131 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008132 "id" : 86,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008133 "runtime_data" : [],
8134 "primitives" : [
8135 {
8136 "op" : "add_header",
8137 "parameters" : [
8138 {
8139 "type" : "header",
8140 "value" : "int_q_occupancy"
8141 }
8142 ],
8143 "source_info" : {
8144 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008145 "line" : 60,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008146 "column" : 8,
8147 "source_fragment" : "hdr.int_q_occupancy.setValid()"
8148 }
8149 },
8150 {
8151 "op" : "assign",
8152 "parameters" : [
8153 {
8154 "type" : "field",
8155 "value" : ["int_q_occupancy", "q_id"]
8156 },
8157 {
8158 "type" : "hexstr",
8159 "value" : "0x00"
8160 }
8161 ],
8162 "source_info" : {
8163 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008164 "line" : 62,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008165 "column" : 8,
8166 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
8167 }
8168 },
8169 {
8170 "op" : "assign",
8171 "parameters" : [
8172 {
8173 "type" : "field",
8174 "value" : ["int_q_occupancy", "q_occupancy"]
8175 },
8176 {
8177 "type" : "expression",
8178 "value" : {
8179 "type" : "expression",
8180 "value" : {
8181 "op" : "&",
8182 "left" : {
8183 "type" : "field",
8184 "value" : ["standard_metadata", "deq_qdepth"]
8185 },
8186 "right" : {
8187 "type" : "hexstr",
8188 "value" : "0xffffff"
8189 }
8190 }
8191 }
8192 }
8193 ],
8194 "source_info" : {
8195 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008196 "line" : 63,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008197 "column" : 8,
8198 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
8199 }
8200 },
8201 {
8202 "op" : "add_header",
8203 "parameters" : [
8204 {
8205 "type" : "header",
8206 "value" : "int_hop_latency"
8207 }
8208 ],
8209 "source_info" : {
8210 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008211 "line" : 54,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008212 "column" : 8,
8213 "source_fragment" : "hdr.int_hop_latency.setValid()"
8214 }
8215 },
8216 {
8217 "op" : "assign",
8218 "parameters" : [
8219 {
8220 "type" : "field",
8221 "value" : ["int_hop_latency", "hop_latency"]
8222 },
8223 {
8224 "type" : "field",
8225 "value" : ["standard_metadata", "deq_timedelta"]
8226 }
8227 ],
8228 "source_info" : {
8229 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008230 "line" : 55,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008231 "column" : 8,
8232 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
8233 }
8234 },
8235 {
8236 "op" : "add_header",
8237 "parameters" : [
8238 {
8239 "type" : "header",
8240 "value" : "int_port_ids"
8241 }
8242 ],
8243 "source_info" : {
8244 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008245 "line" : 47,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008246 "column" : 8,
8247 "source_fragment" : "hdr.int_port_ids.setValid()"
8248 }
8249 },
8250 {
8251 "op" : "assign",
8252 "parameters" : [
8253 {
8254 "type" : "field",
8255 "value" : ["int_port_ids", "ingress_port_id"]
8256 },
8257 {
8258 "type" : "expression",
8259 "value" : {
8260 "type" : "expression",
8261 "value" : {
8262 "op" : "&",
8263 "left" : {
8264 "type" : "field",
8265 "value" : ["standard_metadata", "ingress_port"]
8266 },
8267 "right" : {
8268 "type" : "hexstr",
8269 "value" : "0xffff"
8270 }
8271 }
8272 }
8273 }
8274 ],
8275 "source_info" : {
8276 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008277 "line" : 48,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008278 "column" : 8,
8279 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
8280 }
8281 },
8282 {
8283 "op" : "assign",
8284 "parameters" : [
8285 {
8286 "type" : "field",
8287 "value" : ["int_port_ids", "egress_port_id"]
8288 },
8289 {
8290 "type" : "expression",
8291 "value" : {
8292 "type" : "expression",
8293 "value" : {
8294 "op" : "&",
8295 "left" : {
8296 "type" : "field",
8297 "value" : ["standard_metadata", "egress_port"]
8298 },
8299 "right" : {
8300 "type" : "hexstr",
8301 "value" : "0xffff"
8302 }
8303 }
8304 }
8305 }
8306 ],
8307 "source_info" : {
8308 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008309 "line" : 49,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008310 "column" : 8,
8311 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
8312 }
8313 },
8314 {
8315 "op" : "add_header",
8316 "parameters" : [
8317 {
8318 "type" : "header",
8319 "value" : "int_switch_id"
8320 }
8321 ],
8322 "source_info" : {
8323 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008324 "line" : 41,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008325 "column" : 8,
8326 "source_fragment" : "hdr.int_switch_id.setValid()"
8327 }
8328 },
8329 {
8330 "op" : "assign",
8331 "parameters" : [
8332 {
8333 "type" : "field",
8334 "value" : ["int_switch_id", "switch_id"]
8335 },
8336 {
8337 "type" : "field",
8338 "value" : ["userMetadata.int_meta", "switch_id"]
8339 }
8340 ],
8341 "source_info" : {
8342 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008343 "line" : 42,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008344 "column" : 8,
8345 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
8346 }
8347 },
8348 {
8349 "op" : "assign",
8350 "parameters" : [
8351 {
8352 "type" : "field",
8353 "value" : ["userMetadata.int_meta", "new_words"]
8354 },
8355 {
8356 "type" : "expression",
8357 "value" : {
8358 "type" : "expression",
8359 "value" : {
8360 "op" : "&",
8361 "left" : {
8362 "type" : "expression",
8363 "value" : {
8364 "op" : "+",
8365 "left" : {
8366 "type" : "field",
8367 "value" : ["userMetadata.int_meta", "new_words"]
8368 },
8369 "right" : {
8370 "type" : "hexstr",
8371 "value" : "0x04"
8372 }
8373 }
8374 },
8375 "right" : {
8376 "type" : "hexstr",
8377 "value" : "0xff"
8378 }
8379 }
8380 }
8381 }
8382 ],
8383 "source_info" : {
8384 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008385 "line" : 115,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008386 "column" : 8,
8387 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
8388 }
8389 },
8390 {
8391 "op" : "assign",
8392 "parameters" : [
8393 {
8394 "type" : "field",
8395 "value" : ["userMetadata.int_meta", "new_bytes"]
8396 },
8397 {
8398 "type" : "expression",
8399 "value" : {
8400 "type" : "expression",
8401 "value" : {
8402 "op" : "&",
8403 "left" : {
8404 "type" : "expression",
8405 "value" : {
8406 "op" : "+",
8407 "left" : {
8408 "type" : "field",
8409 "value" : ["userMetadata.int_meta", "new_bytes"]
8410 },
8411 "right" : {
8412 "type" : "hexstr",
8413 "value" : "0x0010"
8414 }
8415 }
8416 },
8417 "right" : {
8418 "type" : "hexstr",
8419 "value" : "0xffff"
8420 }
8421 }
8422 }
8423 }
8424 ],
8425 "source_info" : {
8426 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008427 "line" : 116,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008428 "column" : 8,
8429 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
8430 }
8431 }
8432 ]
8433 },
8434 {
8435 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008436 "id" : 87,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008437 "runtime_data" : [],
8438 "primitives" : []
8439 },
8440 {
8441 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008442 "id" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008443 "runtime_data" : [],
8444 "primitives" : [
8445 {
8446 "op" : "add_header",
8447 "parameters" : [
8448 {
8449 "type" : "header",
8450 "value" : "int_egress_tx_util"
8451 }
8452 ],
8453 "source_info" : {
8454 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008455 "line" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008456 "column" : 8,
8457 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8458 }
8459 },
8460 {
8461 "op" : "assign",
8462 "parameters" : [
8463 {
8464 "type" : "field",
8465 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8466 },
8467 {
8468 "type" : "hexstr",
8469 "value" : "0x00000000"
8470 }
8471 ],
8472 "source_info" : {
8473 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008474 "line" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008475 "column" : 8,
8476 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8477 }
8478 },
8479 {
8480 "op" : "assign",
8481 "parameters" : [
8482 {
8483 "type" : "field",
8484 "value" : ["userMetadata.int_meta", "new_words"]
8485 },
8486 {
8487 "type" : "expression",
8488 "value" : {
8489 "type" : "expression",
8490 "value" : {
8491 "op" : "&",
8492 "left" : {
8493 "type" : "expression",
8494 "value" : {
8495 "op" : "+",
8496 "left" : {
8497 "type" : "field",
8498 "value" : ["userMetadata.int_meta", "new_words"]
8499 },
8500 "right" : {
8501 "type" : "hexstr",
8502 "value" : "0x01"
8503 }
8504 }
8505 },
8506 "right" : {
8507 "type" : "hexstr",
8508 "value" : "0xff"
8509 }
8510 }
8511 }
8512 }
8513 ],
8514 "source_info" : {
8515 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008516 "line" : 97,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008517 "column" : 8,
8518 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
8519 }
8520 },
8521 {
8522 "op" : "assign",
8523 "parameters" : [
8524 {
8525 "type" : "field",
8526 "value" : ["userMetadata.int_meta", "new_bytes"]
8527 },
8528 {
8529 "type" : "expression",
8530 "value" : {
8531 "type" : "expression",
8532 "value" : {
8533 "op" : "&",
8534 "left" : {
8535 "type" : "expression",
8536 "value" : {
8537 "op" : "+",
8538 "left" : {
8539 "type" : "field",
8540 "value" : ["userMetadata.int_meta", "new_bytes"]
8541 },
8542 "right" : {
8543 "type" : "hexstr",
8544 "value" : "0x0004"
8545 }
8546 }
8547 },
8548 "right" : {
8549 "type" : "hexstr",
8550 "value" : "0xffff"
8551 }
8552 }
8553 }
8554 }
8555 ],
8556 "source_info" : {
8557 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008558 "line" : 98,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008559 "column" : 8,
8560 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
8561 }
8562 }
8563 ]
8564 },
8565 {
8566 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008567 "id" : 89,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008568 "runtime_data" : [],
8569 "primitives" : [
8570 {
8571 "op" : "add_header",
8572 "parameters" : [
8573 {
8574 "type" : "header",
8575 "value" : "int_q_congestion"
8576 }
8577 ],
8578 "source_info" : {
8579 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008580 "line" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008581 "column" : 8,
8582 "source_fragment" : "hdr.int_q_congestion.setValid()"
8583 }
8584 },
8585 {
8586 "op" : "assign",
8587 "parameters" : [
8588 {
8589 "type" : "field",
8590 "value" : ["int_q_congestion", "q_id"]
8591 },
8592 {
8593 "type" : "hexstr",
8594 "value" : "0x00"
8595 }
8596 ],
8597 "source_info" : {
8598 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008599 "line" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008600 "column" : 8,
8601 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8602 }
8603 },
8604 {
8605 "op" : "assign",
8606 "parameters" : [
8607 {
8608 "type" : "field",
8609 "value" : ["int_q_congestion", "q_congestion"]
8610 },
8611 {
8612 "type" : "hexstr",
8613 "value" : "0x000000"
8614 }
8615 ],
8616 "source_info" : {
8617 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008618 "line" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008619 "column" : 8,
8620 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8621 }
8622 },
8623 {
8624 "op" : "assign",
8625 "parameters" : [
8626 {
8627 "type" : "field",
8628 "value" : ["userMetadata.int_meta", "new_words"]
8629 },
8630 {
8631 "type" : "expression",
8632 "value" : {
8633 "type" : "expression",
8634 "value" : {
8635 "op" : "&",
8636 "left" : {
8637 "type" : "expression",
8638 "value" : {
8639 "op" : "+",
8640 "left" : {
8641 "type" : "field",
8642 "value" : ["userMetadata.int_meta", "new_words"]
8643 },
8644 "right" : {
8645 "type" : "hexstr",
8646 "value" : "0x01"
8647 }
8648 }
8649 },
8650 "right" : {
8651 "type" : "hexstr",
8652 "value" : "0xff"
8653 }
8654 }
8655 }
8656 }
8657 ],
8658 "source_info" : {
8659 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008660 "line" : 97,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008661 "column" : 8,
8662 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
8663 }
8664 },
8665 {
8666 "op" : "assign",
8667 "parameters" : [
8668 {
8669 "type" : "field",
8670 "value" : ["userMetadata.int_meta", "new_bytes"]
8671 },
8672 {
8673 "type" : "expression",
8674 "value" : {
8675 "type" : "expression",
8676 "value" : {
8677 "op" : "&",
8678 "left" : {
8679 "type" : "expression",
8680 "value" : {
8681 "op" : "+",
8682 "left" : {
8683 "type" : "field",
8684 "value" : ["userMetadata.int_meta", "new_bytes"]
8685 },
8686 "right" : {
8687 "type" : "hexstr",
8688 "value" : "0x0004"
8689 }
8690 }
8691 },
8692 "right" : {
8693 "type" : "hexstr",
8694 "value" : "0xffff"
8695 }
8696 }
8697 }
8698 }
8699 ],
8700 "source_info" : {
8701 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008702 "line" : 98,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008703 "column" : 8,
8704 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
8705 }
8706 }
8707 ]
8708 },
8709 {
8710 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008711 "id" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008712 "runtime_data" : [],
8713 "primitives" : [
8714 {
8715 "op" : "add_header",
8716 "parameters" : [
8717 {
8718 "type" : "header",
8719 "value" : "int_egress_tx_util"
8720 }
8721 ],
8722 "source_info" : {
8723 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008724 "line" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008725 "column" : 8,
8726 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8727 }
8728 },
8729 {
8730 "op" : "assign",
8731 "parameters" : [
8732 {
8733 "type" : "field",
8734 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8735 },
8736 {
8737 "type" : "hexstr",
8738 "value" : "0x00000000"
8739 }
8740 ],
8741 "source_info" : {
8742 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008743 "line" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008744 "column" : 8,
8745 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8746 }
8747 },
8748 {
8749 "op" : "add_header",
8750 "parameters" : [
8751 {
8752 "type" : "header",
8753 "value" : "int_q_congestion"
8754 }
8755 ],
8756 "source_info" : {
8757 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008758 "line" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008759 "column" : 8,
8760 "source_fragment" : "hdr.int_q_congestion.setValid()"
8761 }
8762 },
8763 {
8764 "op" : "assign",
8765 "parameters" : [
8766 {
8767 "type" : "field",
8768 "value" : ["int_q_congestion", "q_id"]
8769 },
8770 {
8771 "type" : "hexstr",
8772 "value" : "0x00"
8773 }
8774 ],
8775 "source_info" : {
8776 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008777 "line" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008778 "column" : 8,
8779 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8780 }
8781 },
8782 {
8783 "op" : "assign",
8784 "parameters" : [
8785 {
8786 "type" : "field",
8787 "value" : ["int_q_congestion", "q_congestion"]
8788 },
8789 {
8790 "type" : "hexstr",
8791 "value" : "0x000000"
8792 }
8793 ],
8794 "source_info" : {
8795 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008796 "line" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008797 "column" : 8,
8798 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8799 }
8800 },
8801 {
8802 "op" : "assign",
8803 "parameters" : [
8804 {
8805 "type" : "field",
8806 "value" : ["userMetadata.int_meta", "new_words"]
8807 },
8808 {
8809 "type" : "expression",
8810 "value" : {
8811 "type" : "expression",
8812 "value" : {
8813 "op" : "&",
8814 "left" : {
8815 "type" : "expression",
8816 "value" : {
8817 "op" : "+",
8818 "left" : {
8819 "type" : "field",
8820 "value" : ["userMetadata.int_meta", "new_words"]
8821 },
8822 "right" : {
8823 "type" : "hexstr",
8824 "value" : "0x02"
8825 }
8826 }
8827 },
8828 "right" : {
8829 "type" : "hexstr",
8830 "value" : "0xff"
8831 }
8832 }
8833 }
8834 }
8835 ],
8836 "source_info" : {
8837 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008838 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008839 "column" : 8,
8840 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
8841 }
8842 },
8843 {
8844 "op" : "assign",
8845 "parameters" : [
8846 {
8847 "type" : "field",
8848 "value" : ["userMetadata.int_meta", "new_bytes"]
8849 },
8850 {
8851 "type" : "expression",
8852 "value" : {
8853 "type" : "expression",
8854 "value" : {
8855 "op" : "&",
8856 "left" : {
8857 "type" : "expression",
8858 "value" : {
8859 "op" : "+",
8860 "left" : {
8861 "type" : "field",
8862 "value" : ["userMetadata.int_meta", "new_bytes"]
8863 },
8864 "right" : {
8865 "type" : "hexstr",
8866 "value" : "0x0008"
8867 }
8868 }
8869 },
8870 "right" : {
8871 "type" : "hexstr",
8872 "value" : "0xffff"
8873 }
8874 }
8875 }
8876 }
8877 ],
8878 "source_info" : {
8879 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008880 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008881 "column" : 8,
8882 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
8883 }
8884 }
8885 ]
8886 },
8887 {
8888 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008889 "id" : 91,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008890 "runtime_data" : [],
8891 "primitives" : [
8892 {
8893 "op" : "add_header",
8894 "parameters" : [
8895 {
8896 "type" : "header",
8897 "value" : "int_egress_tstamp"
8898 }
8899 ],
8900 "source_info" : {
8901 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008902 "line" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008903 "column" : 8,
8904 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8905 }
8906 },
8907 {
8908 "op" : "assign",
8909 "parameters" : [
8910 {
8911 "type" : "field",
8912 "value" : ["int_egress_tstamp", "egress_tstamp"]
8913 },
8914 {
8915 "type" : "expression",
8916 "value" : {
8917 "type" : "expression",
8918 "value" : {
8919 "op" : "&",
8920 "left" : {
8921 "type" : "expression",
8922 "value" : {
8923 "op" : "+",
8924 "left" : {
8925 "type" : "field",
8926 "value" : ["standard_metadata", "enq_timestamp"]
8927 },
8928 "right" : {
8929 "type" : "field",
8930 "value" : ["standard_metadata", "deq_timedelta"]
8931 }
8932 }
8933 },
8934 "right" : {
8935 "type" : "hexstr",
8936 "value" : "0xffffffff"
8937 }
8938 }
8939 }
8940 }
8941 ],
8942 "source_info" : {
8943 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008944 "line" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008945 "column" : 8,
8946 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8947 }
8948 },
8949 {
8950 "op" : "assign",
8951 "parameters" : [
8952 {
8953 "type" : "field",
8954 "value" : ["userMetadata.int_meta", "new_words"]
8955 },
8956 {
8957 "type" : "expression",
8958 "value" : {
8959 "type" : "expression",
8960 "value" : {
8961 "op" : "&",
8962 "left" : {
8963 "type" : "expression",
8964 "value" : {
8965 "op" : "+",
8966 "left" : {
8967 "type" : "field",
8968 "value" : ["userMetadata.int_meta", "new_words"]
8969 },
8970 "right" : {
8971 "type" : "hexstr",
8972 "value" : "0x01"
8973 }
8974 }
8975 },
8976 "right" : {
8977 "type" : "hexstr",
8978 "value" : "0xff"
8979 }
8980 }
8981 }
8982 }
8983 ],
8984 "source_info" : {
8985 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008986 "line" : 97,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07008987 "column" : 8,
8988 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
8989 }
8990 },
8991 {
8992 "op" : "assign",
8993 "parameters" : [
8994 {
8995 "type" : "field",
8996 "value" : ["userMetadata.int_meta", "new_bytes"]
8997 },
8998 {
8999 "type" : "expression",
9000 "value" : {
9001 "type" : "expression",
9002 "value" : {
9003 "op" : "&",
9004 "left" : {
9005 "type" : "expression",
9006 "value" : {
9007 "op" : "+",
9008 "left" : {
9009 "type" : "field",
9010 "value" : ["userMetadata.int_meta", "new_bytes"]
9011 },
9012 "right" : {
9013 "type" : "hexstr",
9014 "value" : "0x0004"
9015 }
9016 }
9017 },
9018 "right" : {
9019 "type" : "hexstr",
9020 "value" : "0xffff"
9021 }
9022 }
9023 }
9024 }
9025 ],
9026 "source_info" : {
9027 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009028 "line" : 98,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009029 "column" : 8,
9030 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
9031 }
9032 }
9033 ]
9034 },
9035 {
9036 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009037 "id" : 92,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009038 "runtime_data" : [],
9039 "primitives" : [
9040 {
9041 "op" : "add_header",
9042 "parameters" : [
9043 {
9044 "type" : "header",
9045 "value" : "int_egress_tx_util"
9046 }
9047 ],
9048 "source_info" : {
9049 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009050 "line" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009051 "column" : 8,
9052 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9053 }
9054 },
9055 {
9056 "op" : "assign",
9057 "parameters" : [
9058 {
9059 "type" : "field",
9060 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9061 },
9062 {
9063 "type" : "hexstr",
9064 "value" : "0x00000000"
9065 }
9066 ],
9067 "source_info" : {
9068 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009069 "line" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009070 "column" : 8,
9071 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9072 }
9073 },
9074 {
9075 "op" : "add_header",
9076 "parameters" : [
9077 {
9078 "type" : "header",
9079 "value" : "int_egress_tstamp"
9080 }
9081 ],
9082 "source_info" : {
9083 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009084 "line" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009085 "column" : 8,
9086 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9087 }
9088 },
9089 {
9090 "op" : "assign",
9091 "parameters" : [
9092 {
9093 "type" : "field",
9094 "value" : ["int_egress_tstamp", "egress_tstamp"]
9095 },
9096 {
9097 "type" : "expression",
9098 "value" : {
9099 "type" : "expression",
9100 "value" : {
9101 "op" : "&",
9102 "left" : {
9103 "type" : "expression",
9104 "value" : {
9105 "op" : "+",
9106 "left" : {
9107 "type" : "field",
9108 "value" : ["standard_metadata", "enq_timestamp"]
9109 },
9110 "right" : {
9111 "type" : "field",
9112 "value" : ["standard_metadata", "deq_timedelta"]
9113 }
9114 }
9115 },
9116 "right" : {
9117 "type" : "hexstr",
9118 "value" : "0xffffffff"
9119 }
9120 }
9121 }
9122 }
9123 ],
9124 "source_info" : {
9125 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009126 "line" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009127 "column" : 8,
9128 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9129 }
9130 },
9131 {
9132 "op" : "assign",
9133 "parameters" : [
9134 {
9135 "type" : "field",
9136 "value" : ["userMetadata.int_meta", "new_words"]
9137 },
9138 {
9139 "type" : "expression",
9140 "value" : {
9141 "type" : "expression",
9142 "value" : {
9143 "op" : "&",
9144 "left" : {
9145 "type" : "expression",
9146 "value" : {
9147 "op" : "+",
9148 "left" : {
9149 "type" : "field",
9150 "value" : ["userMetadata.int_meta", "new_words"]
9151 },
9152 "right" : {
9153 "type" : "hexstr",
9154 "value" : "0x02"
9155 }
9156 }
9157 },
9158 "right" : {
9159 "type" : "hexstr",
9160 "value" : "0xff"
9161 }
9162 }
9163 }
9164 }
9165 ],
9166 "source_info" : {
9167 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009168 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009169 "column" : 8,
9170 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9171 }
9172 },
9173 {
9174 "op" : "assign",
9175 "parameters" : [
9176 {
9177 "type" : "field",
9178 "value" : ["userMetadata.int_meta", "new_bytes"]
9179 },
9180 {
9181 "type" : "expression",
9182 "value" : {
9183 "type" : "expression",
9184 "value" : {
9185 "op" : "&",
9186 "left" : {
9187 "type" : "expression",
9188 "value" : {
9189 "op" : "+",
9190 "left" : {
9191 "type" : "field",
9192 "value" : ["userMetadata.int_meta", "new_bytes"]
9193 },
9194 "right" : {
9195 "type" : "hexstr",
9196 "value" : "0x0008"
9197 }
9198 }
9199 },
9200 "right" : {
9201 "type" : "hexstr",
9202 "value" : "0xffff"
9203 }
9204 }
9205 }
9206 }
9207 ],
9208 "source_info" : {
9209 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009210 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009211 "column" : 8,
9212 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9213 }
9214 }
9215 ]
9216 },
9217 {
9218 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009219 "id" : 93,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009220 "runtime_data" : [],
9221 "primitives" : [
9222 {
9223 "op" : "add_header",
9224 "parameters" : [
9225 {
9226 "type" : "header",
9227 "value" : "int_q_congestion"
9228 }
9229 ],
9230 "source_info" : {
9231 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009232 "line" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009233 "column" : 8,
9234 "source_fragment" : "hdr.int_q_congestion.setValid()"
9235 }
9236 },
9237 {
9238 "op" : "assign",
9239 "parameters" : [
9240 {
9241 "type" : "field",
9242 "value" : ["int_q_congestion", "q_id"]
9243 },
9244 {
9245 "type" : "hexstr",
9246 "value" : "0x00"
9247 }
9248 ],
9249 "source_info" : {
9250 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009251 "line" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009252 "column" : 8,
9253 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9254 }
9255 },
9256 {
9257 "op" : "assign",
9258 "parameters" : [
9259 {
9260 "type" : "field",
9261 "value" : ["int_q_congestion", "q_congestion"]
9262 },
9263 {
9264 "type" : "hexstr",
9265 "value" : "0x000000"
9266 }
9267 ],
9268 "source_info" : {
9269 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009270 "line" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009271 "column" : 8,
9272 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9273 }
9274 },
9275 {
9276 "op" : "add_header",
9277 "parameters" : [
9278 {
9279 "type" : "header",
9280 "value" : "int_egress_tstamp"
9281 }
9282 ],
9283 "source_info" : {
9284 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009285 "line" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009286 "column" : 8,
9287 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9288 }
9289 },
9290 {
9291 "op" : "assign",
9292 "parameters" : [
9293 {
9294 "type" : "field",
9295 "value" : ["int_egress_tstamp", "egress_tstamp"]
9296 },
9297 {
9298 "type" : "expression",
9299 "value" : {
9300 "type" : "expression",
9301 "value" : {
9302 "op" : "&",
9303 "left" : {
9304 "type" : "expression",
9305 "value" : {
9306 "op" : "+",
9307 "left" : {
9308 "type" : "field",
9309 "value" : ["standard_metadata", "enq_timestamp"]
9310 },
9311 "right" : {
9312 "type" : "field",
9313 "value" : ["standard_metadata", "deq_timedelta"]
9314 }
9315 }
9316 },
9317 "right" : {
9318 "type" : "hexstr",
9319 "value" : "0xffffffff"
9320 }
9321 }
9322 }
9323 }
9324 ],
9325 "source_info" : {
9326 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009327 "line" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009328 "column" : 8,
9329 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9330 }
9331 },
9332 {
9333 "op" : "assign",
9334 "parameters" : [
9335 {
9336 "type" : "field",
9337 "value" : ["userMetadata.int_meta", "new_words"]
9338 },
9339 {
9340 "type" : "expression",
9341 "value" : {
9342 "type" : "expression",
9343 "value" : {
9344 "op" : "&",
9345 "left" : {
9346 "type" : "expression",
9347 "value" : {
9348 "op" : "+",
9349 "left" : {
9350 "type" : "field",
9351 "value" : ["userMetadata.int_meta", "new_words"]
9352 },
9353 "right" : {
9354 "type" : "hexstr",
9355 "value" : "0x02"
9356 }
9357 }
9358 },
9359 "right" : {
9360 "type" : "hexstr",
9361 "value" : "0xff"
9362 }
9363 }
9364 }
9365 }
9366 ],
9367 "source_info" : {
9368 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009369 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009370 "column" : 8,
9371 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9372 }
9373 },
9374 {
9375 "op" : "assign",
9376 "parameters" : [
9377 {
9378 "type" : "field",
9379 "value" : ["userMetadata.int_meta", "new_bytes"]
9380 },
9381 {
9382 "type" : "expression",
9383 "value" : {
9384 "type" : "expression",
9385 "value" : {
9386 "op" : "&",
9387 "left" : {
9388 "type" : "expression",
9389 "value" : {
9390 "op" : "+",
9391 "left" : {
9392 "type" : "field",
9393 "value" : ["userMetadata.int_meta", "new_bytes"]
9394 },
9395 "right" : {
9396 "type" : "hexstr",
9397 "value" : "0x0008"
9398 }
9399 }
9400 },
9401 "right" : {
9402 "type" : "hexstr",
9403 "value" : "0xffff"
9404 }
9405 }
9406 }
9407 }
9408 ],
9409 "source_info" : {
9410 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009411 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009412 "column" : 8,
9413 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9414 }
9415 }
9416 ]
9417 },
9418 {
9419 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009420 "id" : 94,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009421 "runtime_data" : [],
9422 "primitives" : [
9423 {
9424 "op" : "add_header",
9425 "parameters" : [
9426 {
9427 "type" : "header",
9428 "value" : "int_egress_tx_util"
9429 }
9430 ],
9431 "source_info" : {
9432 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009433 "line" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009434 "column" : 8,
9435 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9436 }
9437 },
9438 {
9439 "op" : "assign",
9440 "parameters" : [
9441 {
9442 "type" : "field",
9443 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9444 },
9445 {
9446 "type" : "hexstr",
9447 "value" : "0x00000000"
9448 }
9449 ],
9450 "source_info" : {
9451 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009452 "line" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009453 "column" : 8,
9454 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9455 }
9456 },
9457 {
9458 "op" : "add_header",
9459 "parameters" : [
9460 {
9461 "type" : "header",
9462 "value" : "int_q_congestion"
9463 }
9464 ],
9465 "source_info" : {
9466 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009467 "line" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009468 "column" : 8,
9469 "source_fragment" : "hdr.int_q_congestion.setValid()"
9470 }
9471 },
9472 {
9473 "op" : "assign",
9474 "parameters" : [
9475 {
9476 "type" : "field",
9477 "value" : ["int_q_congestion", "q_id"]
9478 },
9479 {
9480 "type" : "hexstr",
9481 "value" : "0x00"
9482 }
9483 ],
9484 "source_info" : {
9485 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009486 "line" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009487 "column" : 8,
9488 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9489 }
9490 },
9491 {
9492 "op" : "assign",
9493 "parameters" : [
9494 {
9495 "type" : "field",
9496 "value" : ["int_q_congestion", "q_congestion"]
9497 },
9498 {
9499 "type" : "hexstr",
9500 "value" : "0x000000"
9501 }
9502 ],
9503 "source_info" : {
9504 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009505 "line" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009506 "column" : 8,
9507 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9508 }
9509 },
9510 {
9511 "op" : "add_header",
9512 "parameters" : [
9513 {
9514 "type" : "header",
9515 "value" : "int_egress_tstamp"
9516 }
9517 ],
9518 "source_info" : {
9519 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009520 "line" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009521 "column" : 8,
9522 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9523 }
9524 },
9525 {
9526 "op" : "assign",
9527 "parameters" : [
9528 {
9529 "type" : "field",
9530 "value" : ["int_egress_tstamp", "egress_tstamp"]
9531 },
9532 {
9533 "type" : "expression",
9534 "value" : {
9535 "type" : "expression",
9536 "value" : {
9537 "op" : "&",
9538 "left" : {
9539 "type" : "expression",
9540 "value" : {
9541 "op" : "+",
9542 "left" : {
9543 "type" : "field",
9544 "value" : ["standard_metadata", "enq_timestamp"]
9545 },
9546 "right" : {
9547 "type" : "field",
9548 "value" : ["standard_metadata", "deq_timedelta"]
9549 }
9550 }
9551 },
9552 "right" : {
9553 "type" : "hexstr",
9554 "value" : "0xffffffff"
9555 }
9556 }
9557 }
9558 }
9559 ],
9560 "source_info" : {
9561 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009562 "line" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009563 "column" : 8,
9564 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9565 }
9566 },
9567 {
9568 "op" : "assign",
9569 "parameters" : [
9570 {
9571 "type" : "field",
9572 "value" : ["userMetadata.int_meta", "new_words"]
9573 },
9574 {
9575 "type" : "expression",
9576 "value" : {
9577 "type" : "expression",
9578 "value" : {
9579 "op" : "&",
9580 "left" : {
9581 "type" : "expression",
9582 "value" : {
9583 "op" : "+",
9584 "left" : {
9585 "type" : "field",
9586 "value" : ["userMetadata.int_meta", "new_words"]
9587 },
9588 "right" : {
9589 "type" : "hexstr",
9590 "value" : "0x03"
9591 }
9592 }
9593 },
9594 "right" : {
9595 "type" : "hexstr",
9596 "value" : "0xff"
9597 }
9598 }
9599 }
9600 }
9601 ],
9602 "source_info" : {
9603 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009604 "line" : 109,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009605 "column" : 8,
9606 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
9607 }
9608 },
9609 {
9610 "op" : "assign",
9611 "parameters" : [
9612 {
9613 "type" : "field",
9614 "value" : ["userMetadata.int_meta", "new_bytes"]
9615 },
9616 {
9617 "type" : "expression",
9618 "value" : {
9619 "type" : "expression",
9620 "value" : {
9621 "op" : "&",
9622 "left" : {
9623 "type" : "expression",
9624 "value" : {
9625 "op" : "+",
9626 "left" : {
9627 "type" : "field",
9628 "value" : ["userMetadata.int_meta", "new_bytes"]
9629 },
9630 "right" : {
9631 "type" : "hexstr",
9632 "value" : "0x000c"
9633 }
9634 }
9635 },
9636 "right" : {
9637 "type" : "hexstr",
9638 "value" : "0xffff"
9639 }
9640 }
9641 }
9642 }
9643 ],
9644 "source_info" : {
9645 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009646 "line" : 110,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009647 "column" : 8,
9648 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
9649 }
9650 }
9651 ]
9652 },
9653 {
9654 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009655 "id" : 95,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009656 "runtime_data" : [],
9657 "primitives" : [
9658 {
9659 "op" : "add_header",
9660 "parameters" : [
9661 {
9662 "type" : "header",
9663 "value" : "int_ingress_tstamp"
9664 }
9665 ],
9666 "source_info" : {
9667 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009668 "line" : 68,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009669 "column" : 8,
9670 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9671 }
9672 },
9673 {
9674 "op" : "assign",
9675 "parameters" : [
9676 {
9677 "type" : "field",
9678 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9679 },
9680 {
9681 "type" : "field",
9682 "value" : ["standard_metadata", "enq_timestamp"]
9683 }
9684 ],
9685 "source_info" : {
9686 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009687 "line" : 69,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009688 "column" : 8,
9689 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9690 }
9691 },
9692 {
9693 "op" : "assign",
9694 "parameters" : [
9695 {
9696 "type" : "field",
9697 "value" : ["userMetadata.int_meta", "new_words"]
9698 },
9699 {
9700 "type" : "expression",
9701 "value" : {
9702 "type" : "expression",
9703 "value" : {
9704 "op" : "&",
9705 "left" : {
9706 "type" : "expression",
9707 "value" : {
9708 "op" : "+",
9709 "left" : {
9710 "type" : "field",
9711 "value" : ["userMetadata.int_meta", "new_words"]
9712 },
9713 "right" : {
9714 "type" : "hexstr",
9715 "value" : "0x01"
9716 }
9717 }
9718 },
9719 "right" : {
9720 "type" : "hexstr",
9721 "value" : "0xff"
9722 }
9723 }
9724 }
9725 }
9726 ],
9727 "source_info" : {
9728 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009729 "line" : 97,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009730 "column" : 8,
9731 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
9732 }
9733 },
9734 {
9735 "op" : "assign",
9736 "parameters" : [
9737 {
9738 "type" : "field",
9739 "value" : ["userMetadata.int_meta", "new_bytes"]
9740 },
9741 {
9742 "type" : "expression",
9743 "value" : {
9744 "type" : "expression",
9745 "value" : {
9746 "op" : "&",
9747 "left" : {
9748 "type" : "expression",
9749 "value" : {
9750 "op" : "+",
9751 "left" : {
9752 "type" : "field",
9753 "value" : ["userMetadata.int_meta", "new_bytes"]
9754 },
9755 "right" : {
9756 "type" : "hexstr",
9757 "value" : "0x0004"
9758 }
9759 }
9760 },
9761 "right" : {
9762 "type" : "hexstr",
9763 "value" : "0xffff"
9764 }
9765 }
9766 }
9767 }
9768 ],
9769 "source_info" : {
9770 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009771 "line" : 98,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009772 "column" : 8,
9773 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
9774 }
9775 }
9776 ]
9777 },
9778 {
9779 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009780 "id" : 96,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009781 "runtime_data" : [],
9782 "primitives" : [
9783 {
9784 "op" : "add_header",
9785 "parameters" : [
9786 {
9787 "type" : "header",
9788 "value" : "int_egress_tx_util"
9789 }
9790 ],
9791 "source_info" : {
9792 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009793 "line" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009794 "column" : 8,
9795 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9796 }
9797 },
9798 {
9799 "op" : "assign",
9800 "parameters" : [
9801 {
9802 "type" : "field",
9803 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9804 },
9805 {
9806 "type" : "hexstr",
9807 "value" : "0x00000000"
9808 }
9809 ],
9810 "source_info" : {
9811 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009812 "line" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009813 "column" : 8,
9814 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9815 }
9816 },
9817 {
9818 "op" : "add_header",
9819 "parameters" : [
9820 {
9821 "type" : "header",
9822 "value" : "int_ingress_tstamp"
9823 }
9824 ],
9825 "source_info" : {
9826 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009827 "line" : 68,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009828 "column" : 8,
9829 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9830 }
9831 },
9832 {
9833 "op" : "assign",
9834 "parameters" : [
9835 {
9836 "type" : "field",
9837 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9838 },
9839 {
9840 "type" : "field",
9841 "value" : ["standard_metadata", "enq_timestamp"]
9842 }
9843 ],
9844 "source_info" : {
9845 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009846 "line" : 69,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009847 "column" : 8,
9848 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9849 }
9850 },
9851 {
9852 "op" : "assign",
9853 "parameters" : [
9854 {
9855 "type" : "field",
9856 "value" : ["userMetadata.int_meta", "new_words"]
9857 },
9858 {
9859 "type" : "expression",
9860 "value" : {
9861 "type" : "expression",
9862 "value" : {
9863 "op" : "&",
9864 "left" : {
9865 "type" : "expression",
9866 "value" : {
9867 "op" : "+",
9868 "left" : {
9869 "type" : "field",
9870 "value" : ["userMetadata.int_meta", "new_words"]
9871 },
9872 "right" : {
9873 "type" : "hexstr",
9874 "value" : "0x02"
9875 }
9876 }
9877 },
9878 "right" : {
9879 "type" : "hexstr",
9880 "value" : "0xff"
9881 }
9882 }
9883 }
9884 }
9885 ],
9886 "source_info" : {
9887 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009888 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009889 "column" : 8,
9890 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9891 }
9892 },
9893 {
9894 "op" : "assign",
9895 "parameters" : [
9896 {
9897 "type" : "field",
9898 "value" : ["userMetadata.int_meta", "new_bytes"]
9899 },
9900 {
9901 "type" : "expression",
9902 "value" : {
9903 "type" : "expression",
9904 "value" : {
9905 "op" : "&",
9906 "left" : {
9907 "type" : "expression",
9908 "value" : {
9909 "op" : "+",
9910 "left" : {
9911 "type" : "field",
9912 "value" : ["userMetadata.int_meta", "new_bytes"]
9913 },
9914 "right" : {
9915 "type" : "hexstr",
9916 "value" : "0x0008"
9917 }
9918 }
9919 },
9920 "right" : {
9921 "type" : "hexstr",
9922 "value" : "0xffff"
9923 }
9924 }
9925 }
9926 }
9927 ],
9928 "source_info" : {
9929 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009930 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009931 "column" : 8,
9932 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9933 }
9934 }
9935 ]
9936 },
9937 {
9938 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009939 "id" : 97,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009940 "runtime_data" : [],
9941 "primitives" : [
9942 {
9943 "op" : "add_header",
9944 "parameters" : [
9945 {
9946 "type" : "header",
9947 "value" : "int_q_congestion"
9948 }
9949 ],
9950 "source_info" : {
9951 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009952 "line" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009953 "column" : 8,
9954 "source_fragment" : "hdr.int_q_congestion.setValid()"
9955 }
9956 },
9957 {
9958 "op" : "assign",
9959 "parameters" : [
9960 {
9961 "type" : "field",
9962 "value" : ["int_q_congestion", "q_id"]
9963 },
9964 {
9965 "type" : "hexstr",
9966 "value" : "0x00"
9967 }
9968 ],
9969 "source_info" : {
9970 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009971 "line" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009972 "column" : 8,
9973 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9974 }
9975 },
9976 {
9977 "op" : "assign",
9978 "parameters" : [
9979 {
9980 "type" : "field",
9981 "value" : ["int_q_congestion", "q_congestion"]
9982 },
9983 {
9984 "type" : "hexstr",
9985 "value" : "0x000000"
9986 }
9987 ],
9988 "source_info" : {
9989 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009990 "line" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009991 "column" : 8,
9992 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9993 }
9994 },
9995 {
9996 "op" : "add_header",
9997 "parameters" : [
9998 {
9999 "type" : "header",
10000 "value" : "int_ingress_tstamp"
10001 }
10002 ],
10003 "source_info" : {
10004 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010005 "line" : 68,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010006 "column" : 8,
10007 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10008 }
10009 },
10010 {
10011 "op" : "assign",
10012 "parameters" : [
10013 {
10014 "type" : "field",
10015 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10016 },
10017 {
10018 "type" : "field",
10019 "value" : ["standard_metadata", "enq_timestamp"]
10020 }
10021 ],
10022 "source_info" : {
10023 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010024 "line" : 69,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010025 "column" : 8,
10026 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10027 }
10028 },
10029 {
10030 "op" : "assign",
10031 "parameters" : [
10032 {
10033 "type" : "field",
10034 "value" : ["userMetadata.int_meta", "new_words"]
10035 },
10036 {
10037 "type" : "expression",
10038 "value" : {
10039 "type" : "expression",
10040 "value" : {
10041 "op" : "&",
10042 "left" : {
10043 "type" : "expression",
10044 "value" : {
10045 "op" : "+",
10046 "left" : {
10047 "type" : "field",
10048 "value" : ["userMetadata.int_meta", "new_words"]
10049 },
10050 "right" : {
10051 "type" : "hexstr",
10052 "value" : "0x02"
10053 }
10054 }
10055 },
10056 "right" : {
10057 "type" : "hexstr",
10058 "value" : "0xff"
10059 }
10060 }
10061 }
10062 }
10063 ],
10064 "source_info" : {
10065 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010066 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010067 "column" : 8,
10068 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
10069 }
10070 },
10071 {
10072 "op" : "assign",
10073 "parameters" : [
10074 {
10075 "type" : "field",
10076 "value" : ["userMetadata.int_meta", "new_bytes"]
10077 },
10078 {
10079 "type" : "expression",
10080 "value" : {
10081 "type" : "expression",
10082 "value" : {
10083 "op" : "&",
10084 "left" : {
10085 "type" : "expression",
10086 "value" : {
10087 "op" : "+",
10088 "left" : {
10089 "type" : "field",
10090 "value" : ["userMetadata.int_meta", "new_bytes"]
10091 },
10092 "right" : {
10093 "type" : "hexstr",
10094 "value" : "0x0008"
10095 }
10096 }
10097 },
10098 "right" : {
10099 "type" : "hexstr",
10100 "value" : "0xffff"
10101 }
10102 }
10103 }
10104 }
10105 ],
10106 "source_info" : {
10107 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010108 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010109 "column" : 8,
10110 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
10111 }
10112 }
10113 ]
10114 },
10115 {
10116 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010117 "id" : 98,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010118 "runtime_data" : [],
10119 "primitives" : [
10120 {
10121 "op" : "add_header",
10122 "parameters" : [
10123 {
10124 "type" : "header",
10125 "value" : "int_egress_tx_util"
10126 }
10127 ],
10128 "source_info" : {
10129 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010130 "line" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010131 "column" : 8,
10132 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10133 }
10134 },
10135 {
10136 "op" : "assign",
10137 "parameters" : [
10138 {
10139 "type" : "field",
10140 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10141 },
10142 {
10143 "type" : "hexstr",
10144 "value" : "0x00000000"
10145 }
10146 ],
10147 "source_info" : {
10148 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010149 "line" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010150 "column" : 8,
10151 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10152 }
10153 },
10154 {
10155 "op" : "add_header",
10156 "parameters" : [
10157 {
10158 "type" : "header",
10159 "value" : "int_q_congestion"
10160 }
10161 ],
10162 "source_info" : {
10163 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010164 "line" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010165 "column" : 8,
10166 "source_fragment" : "hdr.int_q_congestion.setValid()"
10167 }
10168 },
10169 {
10170 "op" : "assign",
10171 "parameters" : [
10172 {
10173 "type" : "field",
10174 "value" : ["int_q_congestion", "q_id"]
10175 },
10176 {
10177 "type" : "hexstr",
10178 "value" : "0x00"
10179 }
10180 ],
10181 "source_info" : {
10182 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010183 "line" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010184 "column" : 8,
10185 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10186 }
10187 },
10188 {
10189 "op" : "assign",
10190 "parameters" : [
10191 {
10192 "type" : "field",
10193 "value" : ["int_q_congestion", "q_congestion"]
10194 },
10195 {
10196 "type" : "hexstr",
10197 "value" : "0x000000"
10198 }
10199 ],
10200 "source_info" : {
10201 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010202 "line" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010203 "column" : 8,
10204 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10205 }
10206 },
10207 {
10208 "op" : "add_header",
10209 "parameters" : [
10210 {
10211 "type" : "header",
10212 "value" : "int_ingress_tstamp"
10213 }
10214 ],
10215 "source_info" : {
10216 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010217 "line" : 68,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010218 "column" : 8,
10219 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10220 }
10221 },
10222 {
10223 "op" : "assign",
10224 "parameters" : [
10225 {
10226 "type" : "field",
10227 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10228 },
10229 {
10230 "type" : "field",
10231 "value" : ["standard_metadata", "enq_timestamp"]
10232 }
10233 ],
10234 "source_info" : {
10235 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010236 "line" : 69,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010237 "column" : 8,
10238 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10239 }
10240 },
10241 {
10242 "op" : "assign",
10243 "parameters" : [
10244 {
10245 "type" : "field",
10246 "value" : ["userMetadata.int_meta", "new_words"]
10247 },
10248 {
10249 "type" : "expression",
10250 "value" : {
10251 "type" : "expression",
10252 "value" : {
10253 "op" : "&",
10254 "left" : {
10255 "type" : "expression",
10256 "value" : {
10257 "op" : "+",
10258 "left" : {
10259 "type" : "field",
10260 "value" : ["userMetadata.int_meta", "new_words"]
10261 },
10262 "right" : {
10263 "type" : "hexstr",
10264 "value" : "0x03"
10265 }
10266 }
10267 },
10268 "right" : {
10269 "type" : "hexstr",
10270 "value" : "0xff"
10271 }
10272 }
10273 }
10274 }
10275 ],
10276 "source_info" : {
10277 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010278 "line" : 109,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010279 "column" : 8,
10280 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
10281 }
10282 },
10283 {
10284 "op" : "assign",
10285 "parameters" : [
10286 {
10287 "type" : "field",
10288 "value" : ["userMetadata.int_meta", "new_bytes"]
10289 },
10290 {
10291 "type" : "expression",
10292 "value" : {
10293 "type" : "expression",
10294 "value" : {
10295 "op" : "&",
10296 "left" : {
10297 "type" : "expression",
10298 "value" : {
10299 "op" : "+",
10300 "left" : {
10301 "type" : "field",
10302 "value" : ["userMetadata.int_meta", "new_bytes"]
10303 },
10304 "right" : {
10305 "type" : "hexstr",
10306 "value" : "0x000c"
10307 }
10308 }
10309 },
10310 "right" : {
10311 "type" : "hexstr",
10312 "value" : "0xffff"
10313 }
10314 }
10315 }
10316 }
10317 ],
10318 "source_info" : {
10319 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010320 "line" : 110,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010321 "column" : 8,
10322 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
10323 }
10324 }
10325 ]
10326 },
10327 {
10328 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010329 "id" : 99,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010330 "runtime_data" : [],
10331 "primitives" : [
10332 {
10333 "op" : "add_header",
10334 "parameters" : [
10335 {
10336 "type" : "header",
10337 "value" : "int_egress_tstamp"
10338 }
10339 ],
10340 "source_info" : {
10341 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010342 "line" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010343 "column" : 8,
10344 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10345 }
10346 },
10347 {
10348 "op" : "assign",
10349 "parameters" : [
10350 {
10351 "type" : "field",
10352 "value" : ["int_egress_tstamp", "egress_tstamp"]
10353 },
10354 {
10355 "type" : "expression",
10356 "value" : {
10357 "type" : "expression",
10358 "value" : {
10359 "op" : "&",
10360 "left" : {
10361 "type" : "expression",
10362 "value" : {
10363 "op" : "+",
10364 "left" : {
10365 "type" : "field",
10366 "value" : ["standard_metadata", "enq_timestamp"]
10367 },
10368 "right" : {
10369 "type" : "field",
10370 "value" : ["standard_metadata", "deq_timedelta"]
10371 }
10372 }
10373 },
10374 "right" : {
10375 "type" : "hexstr",
10376 "value" : "0xffffffff"
10377 }
10378 }
10379 }
10380 }
10381 ],
10382 "source_info" : {
10383 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010384 "line" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010385 "column" : 8,
10386 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10387 }
10388 },
10389 {
10390 "op" : "add_header",
10391 "parameters" : [
10392 {
10393 "type" : "header",
10394 "value" : "int_ingress_tstamp"
10395 }
10396 ],
10397 "source_info" : {
10398 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010399 "line" : 68,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010400 "column" : 8,
10401 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10402 }
10403 },
10404 {
10405 "op" : "assign",
10406 "parameters" : [
10407 {
10408 "type" : "field",
10409 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10410 },
10411 {
10412 "type" : "field",
10413 "value" : ["standard_metadata", "enq_timestamp"]
10414 }
10415 ],
10416 "source_info" : {
10417 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010418 "line" : 69,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010419 "column" : 8,
10420 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10421 }
10422 },
10423 {
10424 "op" : "assign",
10425 "parameters" : [
10426 {
10427 "type" : "field",
10428 "value" : ["userMetadata.int_meta", "new_words"]
10429 },
10430 {
10431 "type" : "expression",
10432 "value" : {
10433 "type" : "expression",
10434 "value" : {
10435 "op" : "&",
10436 "left" : {
10437 "type" : "expression",
10438 "value" : {
10439 "op" : "+",
10440 "left" : {
10441 "type" : "field",
10442 "value" : ["userMetadata.int_meta", "new_words"]
10443 },
10444 "right" : {
10445 "type" : "hexstr",
10446 "value" : "0x02"
10447 }
10448 }
10449 },
10450 "right" : {
10451 "type" : "hexstr",
10452 "value" : "0xff"
10453 }
10454 }
10455 }
10456 }
10457 ],
10458 "source_info" : {
10459 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010460 "line" : 103,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010461 "column" : 8,
10462 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
10463 }
10464 },
10465 {
10466 "op" : "assign",
10467 "parameters" : [
10468 {
10469 "type" : "field",
10470 "value" : ["userMetadata.int_meta", "new_bytes"]
10471 },
10472 {
10473 "type" : "expression",
10474 "value" : {
10475 "type" : "expression",
10476 "value" : {
10477 "op" : "&",
10478 "left" : {
10479 "type" : "expression",
10480 "value" : {
10481 "op" : "+",
10482 "left" : {
10483 "type" : "field",
10484 "value" : ["userMetadata.int_meta", "new_bytes"]
10485 },
10486 "right" : {
10487 "type" : "hexstr",
10488 "value" : "0x0008"
10489 }
10490 }
10491 },
10492 "right" : {
10493 "type" : "hexstr",
10494 "value" : "0xffff"
10495 }
10496 }
10497 }
10498 }
10499 ],
10500 "source_info" : {
10501 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010502 "line" : 104,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010503 "column" : 8,
10504 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
10505 }
10506 }
10507 ]
10508 },
10509 {
10510 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010511 "id" : 100,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010512 "runtime_data" : [],
10513 "primitives" : [
10514 {
10515 "op" : "add_header",
10516 "parameters" : [
10517 {
10518 "type" : "header",
10519 "value" : "int_egress_tx_util"
10520 }
10521 ],
10522 "source_info" : {
10523 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010524 "line" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010525 "column" : 8,
10526 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10527 }
10528 },
10529 {
10530 "op" : "assign",
10531 "parameters" : [
10532 {
10533 "type" : "field",
10534 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10535 },
10536 {
10537 "type" : "hexstr",
10538 "value" : "0x00000000"
10539 }
10540 ],
10541 "source_info" : {
10542 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010543 "line" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010544 "column" : 8,
10545 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10546 }
10547 },
10548 {
10549 "op" : "add_header",
10550 "parameters" : [
10551 {
10552 "type" : "header",
10553 "value" : "int_egress_tstamp"
10554 }
10555 ],
10556 "source_info" : {
10557 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010558 "line" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010559 "column" : 8,
10560 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10561 }
10562 },
10563 {
10564 "op" : "assign",
10565 "parameters" : [
10566 {
10567 "type" : "field",
10568 "value" : ["int_egress_tstamp", "egress_tstamp"]
10569 },
10570 {
10571 "type" : "expression",
10572 "value" : {
10573 "type" : "expression",
10574 "value" : {
10575 "op" : "&",
10576 "left" : {
10577 "type" : "expression",
10578 "value" : {
10579 "op" : "+",
10580 "left" : {
10581 "type" : "field",
10582 "value" : ["standard_metadata", "enq_timestamp"]
10583 },
10584 "right" : {
10585 "type" : "field",
10586 "value" : ["standard_metadata", "deq_timedelta"]
10587 }
10588 }
10589 },
10590 "right" : {
10591 "type" : "hexstr",
10592 "value" : "0xffffffff"
10593 }
10594 }
10595 }
10596 }
10597 ],
10598 "source_info" : {
10599 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010600 "line" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010601 "column" : 8,
10602 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10603 }
10604 },
10605 {
10606 "op" : "add_header",
10607 "parameters" : [
10608 {
10609 "type" : "header",
10610 "value" : "int_ingress_tstamp"
10611 }
10612 ],
10613 "source_info" : {
10614 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010615 "line" : 68,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010616 "column" : 8,
10617 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10618 }
10619 },
10620 {
10621 "op" : "assign",
10622 "parameters" : [
10623 {
10624 "type" : "field",
10625 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10626 },
10627 {
10628 "type" : "field",
10629 "value" : ["standard_metadata", "enq_timestamp"]
10630 }
10631 ],
10632 "source_info" : {
10633 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010634 "line" : 69,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010635 "column" : 8,
10636 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10637 }
10638 },
10639 {
10640 "op" : "assign",
10641 "parameters" : [
10642 {
10643 "type" : "field",
10644 "value" : ["userMetadata.int_meta", "new_words"]
10645 },
10646 {
10647 "type" : "expression",
10648 "value" : {
10649 "type" : "expression",
10650 "value" : {
10651 "op" : "&",
10652 "left" : {
10653 "type" : "expression",
10654 "value" : {
10655 "op" : "+",
10656 "left" : {
10657 "type" : "field",
10658 "value" : ["userMetadata.int_meta", "new_words"]
10659 },
10660 "right" : {
10661 "type" : "hexstr",
10662 "value" : "0x03"
10663 }
10664 }
10665 },
10666 "right" : {
10667 "type" : "hexstr",
10668 "value" : "0xff"
10669 }
10670 }
10671 }
10672 }
10673 ],
10674 "source_info" : {
10675 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010676 "line" : 109,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010677 "column" : 8,
10678 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
10679 }
10680 },
10681 {
10682 "op" : "assign",
10683 "parameters" : [
10684 {
10685 "type" : "field",
10686 "value" : ["userMetadata.int_meta", "new_bytes"]
10687 },
10688 {
10689 "type" : "expression",
10690 "value" : {
10691 "type" : "expression",
10692 "value" : {
10693 "op" : "&",
10694 "left" : {
10695 "type" : "expression",
10696 "value" : {
10697 "op" : "+",
10698 "left" : {
10699 "type" : "field",
10700 "value" : ["userMetadata.int_meta", "new_bytes"]
10701 },
10702 "right" : {
10703 "type" : "hexstr",
10704 "value" : "0x000c"
10705 }
10706 }
10707 },
10708 "right" : {
10709 "type" : "hexstr",
10710 "value" : "0xffff"
10711 }
10712 }
10713 }
10714 }
10715 ],
10716 "source_info" : {
10717 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010718 "line" : 110,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010719 "column" : 8,
10720 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
10721 }
10722 }
10723 ]
10724 },
10725 {
10726 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010727 "id" : 101,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010728 "runtime_data" : [],
10729 "primitives" : [
10730 {
10731 "op" : "add_header",
10732 "parameters" : [
10733 {
10734 "type" : "header",
10735 "value" : "int_q_congestion"
10736 }
10737 ],
10738 "source_info" : {
10739 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010740 "line" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010741 "column" : 8,
10742 "source_fragment" : "hdr.int_q_congestion.setValid()"
10743 }
10744 },
10745 {
10746 "op" : "assign",
10747 "parameters" : [
10748 {
10749 "type" : "field",
10750 "value" : ["int_q_congestion", "q_id"]
10751 },
10752 {
10753 "type" : "hexstr",
10754 "value" : "0x00"
10755 }
10756 ],
10757 "source_info" : {
10758 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010759 "line" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010760 "column" : 8,
10761 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10762 }
10763 },
10764 {
10765 "op" : "assign",
10766 "parameters" : [
10767 {
10768 "type" : "field",
10769 "value" : ["int_q_congestion", "q_congestion"]
10770 },
10771 {
10772 "type" : "hexstr",
10773 "value" : "0x000000"
10774 }
10775 ],
10776 "source_info" : {
10777 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010778 "line" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010779 "column" : 8,
10780 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10781 }
10782 },
10783 {
10784 "op" : "add_header",
10785 "parameters" : [
10786 {
10787 "type" : "header",
10788 "value" : "int_egress_tstamp"
10789 }
10790 ],
10791 "source_info" : {
10792 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010793 "line" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010794 "column" : 8,
10795 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10796 }
10797 },
10798 {
10799 "op" : "assign",
10800 "parameters" : [
10801 {
10802 "type" : "field",
10803 "value" : ["int_egress_tstamp", "egress_tstamp"]
10804 },
10805 {
10806 "type" : "expression",
10807 "value" : {
10808 "type" : "expression",
10809 "value" : {
10810 "op" : "&",
10811 "left" : {
10812 "type" : "expression",
10813 "value" : {
10814 "op" : "+",
10815 "left" : {
10816 "type" : "field",
10817 "value" : ["standard_metadata", "enq_timestamp"]
10818 },
10819 "right" : {
10820 "type" : "field",
10821 "value" : ["standard_metadata", "deq_timedelta"]
10822 }
10823 }
10824 },
10825 "right" : {
10826 "type" : "hexstr",
10827 "value" : "0xffffffff"
10828 }
10829 }
10830 }
10831 }
10832 ],
10833 "source_info" : {
10834 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010835 "line" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010836 "column" : 8,
10837 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10838 }
10839 },
10840 {
10841 "op" : "add_header",
10842 "parameters" : [
10843 {
10844 "type" : "header",
10845 "value" : "int_ingress_tstamp"
10846 }
10847 ],
10848 "source_info" : {
10849 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010850 "line" : 68,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010851 "column" : 8,
10852 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10853 }
10854 },
10855 {
10856 "op" : "assign",
10857 "parameters" : [
10858 {
10859 "type" : "field",
10860 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10861 },
10862 {
10863 "type" : "field",
10864 "value" : ["standard_metadata", "enq_timestamp"]
10865 }
10866 ],
10867 "source_info" : {
10868 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010869 "line" : 69,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010870 "column" : 8,
10871 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10872 }
10873 },
10874 {
10875 "op" : "assign",
10876 "parameters" : [
10877 {
10878 "type" : "field",
10879 "value" : ["userMetadata.int_meta", "new_words"]
10880 },
10881 {
10882 "type" : "expression",
10883 "value" : {
10884 "type" : "expression",
10885 "value" : {
10886 "op" : "&",
10887 "left" : {
10888 "type" : "expression",
10889 "value" : {
10890 "op" : "+",
10891 "left" : {
10892 "type" : "field",
10893 "value" : ["userMetadata.int_meta", "new_words"]
10894 },
10895 "right" : {
10896 "type" : "hexstr",
10897 "value" : "0x03"
10898 }
10899 }
10900 },
10901 "right" : {
10902 "type" : "hexstr",
10903 "value" : "0xff"
10904 }
10905 }
10906 }
10907 }
10908 ],
10909 "source_info" : {
10910 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010911 "line" : 109,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010912 "column" : 8,
10913 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
10914 }
10915 },
10916 {
10917 "op" : "assign",
10918 "parameters" : [
10919 {
10920 "type" : "field",
10921 "value" : ["userMetadata.int_meta", "new_bytes"]
10922 },
10923 {
10924 "type" : "expression",
10925 "value" : {
10926 "type" : "expression",
10927 "value" : {
10928 "op" : "&",
10929 "left" : {
10930 "type" : "expression",
10931 "value" : {
10932 "op" : "+",
10933 "left" : {
10934 "type" : "field",
10935 "value" : ["userMetadata.int_meta", "new_bytes"]
10936 },
10937 "right" : {
10938 "type" : "hexstr",
10939 "value" : "0x000c"
10940 }
10941 }
10942 },
10943 "right" : {
10944 "type" : "hexstr",
10945 "value" : "0xffff"
10946 }
10947 }
10948 }
10949 }
10950 ],
10951 "source_info" : {
10952 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010953 "line" : 110,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010954 "column" : 8,
10955 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
10956 }
10957 }
10958 ]
10959 },
10960 {
10961 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010962 "id" : 102,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010963 "runtime_data" : [],
10964 "primitives" : [
10965 {
10966 "op" : "add_header",
10967 "parameters" : [
10968 {
10969 "type" : "header",
10970 "value" : "int_egress_tx_util"
10971 }
10972 ],
10973 "source_info" : {
10974 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010975 "line" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010976 "column" : 8,
10977 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10978 }
10979 },
10980 {
10981 "op" : "assign",
10982 "parameters" : [
10983 {
10984 "type" : "field",
10985 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10986 },
10987 {
10988 "type" : "hexstr",
10989 "value" : "0x00000000"
10990 }
10991 ],
10992 "source_info" : {
10993 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010994 "line" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010995 "column" : 8,
10996 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10997 }
10998 },
10999 {
11000 "op" : "add_header",
11001 "parameters" : [
11002 {
11003 "type" : "header",
11004 "value" : "int_q_congestion"
11005 }
11006 ],
11007 "source_info" : {
11008 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011009 "line" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011010 "column" : 8,
11011 "source_fragment" : "hdr.int_q_congestion.setValid()"
11012 }
11013 },
11014 {
11015 "op" : "assign",
11016 "parameters" : [
11017 {
11018 "type" : "field",
11019 "value" : ["int_q_congestion", "q_id"]
11020 },
11021 {
11022 "type" : "hexstr",
11023 "value" : "0x00"
11024 }
11025 ],
11026 "source_info" : {
11027 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011028 "line" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011029 "column" : 8,
11030 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
11031 }
11032 },
11033 {
11034 "op" : "assign",
11035 "parameters" : [
11036 {
11037 "type" : "field",
11038 "value" : ["int_q_congestion", "q_congestion"]
11039 },
11040 {
11041 "type" : "hexstr",
11042 "value" : "0x000000"
11043 }
11044 ],
11045 "source_info" : {
11046 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011047 "line" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011048 "column" : 8,
11049 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
11050 }
11051 },
11052 {
11053 "op" : "add_header",
11054 "parameters" : [
11055 {
11056 "type" : "header",
11057 "value" : "int_egress_tstamp"
11058 }
11059 ],
11060 "source_info" : {
11061 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011062 "line" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011063 "column" : 8,
11064 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
11065 }
11066 },
11067 {
11068 "op" : "assign",
11069 "parameters" : [
11070 {
11071 "type" : "field",
11072 "value" : ["int_egress_tstamp", "egress_tstamp"]
11073 },
11074 {
11075 "type" : "expression",
11076 "value" : {
11077 "type" : "expression",
11078 "value" : {
11079 "op" : "&",
11080 "left" : {
11081 "type" : "expression",
11082 "value" : {
11083 "op" : "+",
11084 "left" : {
11085 "type" : "field",
11086 "value" : ["standard_metadata", "enq_timestamp"]
11087 },
11088 "right" : {
11089 "type" : "field",
11090 "value" : ["standard_metadata", "deq_timedelta"]
11091 }
11092 }
11093 },
11094 "right" : {
11095 "type" : "hexstr",
11096 "value" : "0xffffffff"
11097 }
11098 }
11099 }
11100 }
11101 ],
11102 "source_info" : {
11103 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011104 "line" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011105 "column" : 8,
11106 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
11107 }
11108 },
11109 {
11110 "op" : "add_header",
11111 "parameters" : [
11112 {
11113 "type" : "header",
11114 "value" : "int_ingress_tstamp"
11115 }
11116 ],
11117 "source_info" : {
11118 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011119 "line" : 68,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011120 "column" : 8,
11121 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
11122 }
11123 },
11124 {
11125 "op" : "assign",
11126 "parameters" : [
11127 {
11128 "type" : "field",
11129 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
11130 },
11131 {
11132 "type" : "field",
11133 "value" : ["standard_metadata", "enq_timestamp"]
11134 }
11135 ],
11136 "source_info" : {
11137 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011138 "line" : 69,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011139 "column" : 8,
11140 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
11141 }
11142 },
11143 {
11144 "op" : "assign",
11145 "parameters" : [
11146 {
11147 "type" : "field",
11148 "value" : ["userMetadata.int_meta", "new_words"]
11149 },
11150 {
11151 "type" : "expression",
11152 "value" : {
11153 "type" : "expression",
11154 "value" : {
11155 "op" : "&",
11156 "left" : {
11157 "type" : "expression",
11158 "value" : {
11159 "op" : "+",
11160 "left" : {
11161 "type" : "field",
11162 "value" : ["userMetadata.int_meta", "new_words"]
11163 },
11164 "right" : {
11165 "type" : "hexstr",
11166 "value" : "0x04"
11167 }
11168 }
11169 },
11170 "right" : {
11171 "type" : "hexstr",
11172 "value" : "0xff"
11173 }
11174 }
11175 }
11176 }
11177 ],
11178 "source_info" : {
11179 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011180 "line" : 115,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011181 "column" : 8,
11182 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
11183 }
11184 },
11185 {
11186 "op" : "assign",
11187 "parameters" : [
11188 {
11189 "type" : "field",
11190 "value" : ["userMetadata.int_meta", "new_bytes"]
11191 },
11192 {
11193 "type" : "expression",
11194 "value" : {
11195 "type" : "expression",
11196 "value" : {
11197 "op" : "&",
11198 "left" : {
11199 "type" : "expression",
11200 "value" : {
11201 "op" : "+",
11202 "left" : {
11203 "type" : "field",
11204 "value" : ["userMetadata.int_meta", "new_bytes"]
11205 },
11206 "right" : {
11207 "type" : "hexstr",
11208 "value" : "0x0010"
11209 }
11210 }
11211 },
11212 "right" : {
11213 "type" : "hexstr",
11214 "value" : "0xffff"
11215 }
11216 }
11217 }
11218 }
11219 ],
11220 "source_info" : {
11221 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011222 "line" : 116,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011223 "column" : 8,
11224 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
11225 }
11226 }
11227 ]
11228 },
11229 {
11230 "name" : "FabricEgress.process_int_main.process_int_report.do_report_encapsulation",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011231 "id" : 103,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011232 "runtime_data" : [
11233 {
11234 "name" : "src_mac",
11235 "bitwidth" : 48
11236 },
11237 {
11238 "name" : "mon_mac",
11239 "bitwidth" : 48
11240 },
11241 {
11242 "name" : "src_ip",
11243 "bitwidth" : 32
11244 },
11245 {
11246 "name" : "mon_ip",
11247 "bitwidth" : 32
11248 },
11249 {
11250 "name" : "mon_port",
11251 "bitwidth" : 16
11252 }
11253 ],
11254 "primitives" : [
11255 {
11256 "op" : "add_header",
11257 "parameters" : [
11258 {
11259 "type" : "header",
11260 "value" : "report_ethernet"
11261 }
11262 ],
11263 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011264 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011265 "line" : 50,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011266 "column" : 8,
11267 "source_fragment" : "hdr.report_ethernet.setValid()"
11268 }
11269 },
11270 {
11271 "op" : "assign",
11272 "parameters" : [
11273 {
11274 "type" : "field",
11275 "value" : ["report_ethernet", "dst_addr"]
11276 },
11277 {
11278 "type" : "runtime_data",
11279 "value" : 1
11280 }
11281 ],
11282 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011283 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011284 "line" : 51,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011285 "column" : 8,
11286 "source_fragment" : "hdr.report_ethernet.dst_addr = mon_mac"
11287 }
11288 },
11289 {
11290 "op" : "assign",
11291 "parameters" : [
11292 {
11293 "type" : "field",
11294 "value" : ["report_ethernet", "src_addr"]
11295 },
11296 {
11297 "type" : "runtime_data",
11298 "value" : 0
11299 }
11300 ],
11301 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011302 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011303 "line" : 52,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011304 "column" : 8,
11305 "source_fragment" : "hdr.report_ethernet.src_addr = src_mac"
11306 }
11307 },
11308 {
11309 "op" : "assign",
11310 "parameters" : [
11311 {
11312 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011313 "value" : ["report_ethernet", "eth_type"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011314 },
11315 {
11316 "type" : "hexstr",
11317 "value" : "0x0800"
11318 }
11319 ],
11320 "source_info" : {
11321 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011322 "line" : 110,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011323 "column" : 31,
11324 "source_fragment" : "0x0800; ..."
11325 }
11326 },
11327 {
11328 "op" : "add_header",
11329 "parameters" : [
11330 {
11331 "type" : "header",
11332 "value" : "report_ipv4"
11333 }
11334 ],
11335 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011336 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011337 "line" : 56,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011338 "column" : 8,
11339 "source_fragment" : "hdr.report_ipv4.setValid()"
11340 }
11341 },
11342 {
11343 "op" : "assign",
11344 "parameters" : [
11345 {
11346 "type" : "field",
11347 "value" : ["report_ipv4", "version"]
11348 },
11349 {
11350 "type" : "hexstr",
11351 "value" : "0x04"
11352 }
11353 ],
11354 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011355 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011356 "line" : 57,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011357 "column" : 8,
11358 "source_fragment" : "hdr.report_ipv4.version = 4w4"
11359 }
11360 },
11361 {
11362 "op" : "assign",
11363 "parameters" : [
11364 {
11365 "type" : "field",
11366 "value" : ["report_ipv4", "ihl"]
11367 },
11368 {
11369 "type" : "hexstr",
11370 "value" : "0x05"
11371 }
11372 ],
11373 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011374 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011375 "line" : 58,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011376 "column" : 8,
11377 "source_fragment" : "hdr.report_ipv4.ihl = 4w5"
11378 }
11379 },
11380 {
11381 "op" : "assign",
11382 "parameters" : [
11383 {
11384 "type" : "field",
11385 "value" : ["report_ipv4", "dscp"]
11386 },
11387 {
11388 "type" : "hexstr",
11389 "value" : "0x00"
11390 }
11391 ],
11392 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011393 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011394 "line" : 59,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011395 "column" : 8,
11396 "source_fragment" : "hdr.report_ipv4.dscp = 6w0"
11397 }
11398 },
11399 {
11400 "op" : "assign",
11401 "parameters" : [
11402 {
11403 "type" : "field",
11404 "value" : ["report_ipv4", "ecn"]
11405 },
11406 {
11407 "type" : "hexstr",
11408 "value" : "0x00"
11409 }
11410 ],
11411 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011412 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011413 "line" : 60,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011414 "column" : 8,
11415 "source_fragment" : "hdr.report_ipv4.ecn = 2w0"
11416 }
11417 },
11418 {
11419 "op" : "assign",
11420 "parameters" : [
11421 {
11422 "type" : "field",
11423 "value" : ["report_ipv4", "total_len"]
11424 },
11425 {
11426 "type" : "expression",
11427 "value" : {
11428 "type" : "expression",
11429 "value" : {
11430 "op" : "&",
11431 "left" : {
11432 "type" : "expression",
11433 "value" : {
11434 "op" : "+",
11435 "left" : {
11436 "type" : "hexstr",
11437 "value" : "0x0036"
11438 },
11439 "right" : {
11440 "type" : "field",
11441 "value" : ["ipv4", "total_len"]
11442 }
11443 }
11444 },
11445 "right" : {
11446 "type" : "hexstr",
11447 "value" : "0xffff"
11448 }
11449 }
11450 }
11451 }
11452 ],
11453 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011454 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011455 "line" : 62,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011456 "column" : 8,
11457 "source_fragment" : "hdr.report_ipv4.total_len = (bit<16>) IPV4_MIN_HEAD_LEN + (bit<16>) UDP_HEADER_LEN + ..."
11458 }
11459 },
11460 {
11461 "op" : "assign",
11462 "parameters" : [
11463 {
11464 "type" : "field",
11465 "value" : ["report_ipv4", "identification"]
11466 },
11467 {
11468 "type" : "hexstr",
11469 "value" : "0x0000"
11470 }
11471 ],
11472 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011473 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011474 "line" : 65,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011475 "column" : 8,
11476 "source_fragment" : "hdr.report_ipv4.identification = 0"
11477 }
11478 },
11479 {
11480 "op" : "assign",
11481 "parameters" : [
11482 {
11483 "type" : "field",
11484 "value" : ["report_ipv4", "flags"]
11485 },
11486 {
11487 "type" : "hexstr",
11488 "value" : "0x00"
11489 }
11490 ],
11491 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011492 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011493 "line" : 66,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011494 "column" : 8,
11495 "source_fragment" : "hdr.report_ipv4.flags = 0"
11496 }
11497 },
11498 {
11499 "op" : "assign",
11500 "parameters" : [
11501 {
11502 "type" : "field",
11503 "value" : ["report_ipv4", "frag_offset"]
11504 },
11505 {
11506 "type" : "hexstr",
11507 "value" : "0x0000"
11508 }
11509 ],
11510 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011511 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011512 "line" : 67,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011513 "column" : 8,
11514 "source_fragment" : "hdr.report_ipv4.frag_offset = 0"
11515 }
11516 },
11517 {
11518 "op" : "assign",
11519 "parameters" : [
11520 {
11521 "type" : "field",
11522 "value" : ["report_ipv4", "ttl"]
11523 },
11524 {
11525 "type" : "hexstr",
11526 "value" : "0xff"
11527 }
11528 ],
11529 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011530 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011531 "line" : 68,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011532 "column" : 8,
11533 "source_fragment" : "hdr.report_ipv4.ttl = 0xFF"
11534 }
11535 },
11536 {
11537 "op" : "assign",
11538 "parameters" : [
11539 {
11540 "type" : "field",
11541 "value" : ["report_ipv4", "protocol"]
11542 },
11543 {
11544 "type" : "hexstr",
11545 "value" : "0x11"
11546 }
11547 ],
11548 "source_info" : {
11549 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011550 "line" : 116,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011551 "column" : 25,
11552 "source_fragment" : "17; ..."
11553 }
11554 },
11555 {
11556 "op" : "assign",
11557 "parameters" : [
11558 {
11559 "type" : "field",
11560 "value" : ["report_ipv4", "src_addr"]
11561 },
11562 {
11563 "type" : "runtime_data",
11564 "value" : 2
11565 }
11566 ],
11567 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011568 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011569 "line" : 70,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011570 "column" : 8,
11571 "source_fragment" : "hdr.report_ipv4.src_addr = src_ip"
11572 }
11573 },
11574 {
11575 "op" : "assign",
11576 "parameters" : [
11577 {
11578 "type" : "field",
11579 "value" : ["report_ipv4", "dst_addr"]
11580 },
11581 {
11582 "type" : "runtime_data",
11583 "value" : 3
11584 }
11585 ],
11586 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011587 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011588 "line" : 71,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011589 "column" : 8,
11590 "source_fragment" : "hdr.report_ipv4.dst_addr = mon_ip"
11591 }
11592 },
11593 {
11594 "op" : "add_header",
11595 "parameters" : [
11596 {
11597 "type" : "header",
11598 "value" : "report_udp"
11599 }
11600 ],
11601 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011602 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011603 "line" : 74,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011604 "column" : 8,
11605 "source_fragment" : "hdr.report_udp.setValid()"
11606 }
11607 },
11608 {
11609 "op" : "assign",
11610 "parameters" : [
11611 {
11612 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011613 "value" : ["report_udp", "sport"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011614 },
11615 {
11616 "type" : "hexstr",
11617 "value" : "0x0000"
11618 }
11619 ],
11620 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011621 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011622 "line" : 75,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011623 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011624 "source_fragment" : "hdr.report_udp.sport = 0"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011625 }
11626 },
11627 {
11628 "op" : "assign",
11629 "parameters" : [
11630 {
11631 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011632 "value" : ["report_udp", "dport"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011633 },
11634 {
11635 "type" : "runtime_data",
11636 "value" : 4
11637 }
11638 ],
11639 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011640 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011641 "line" : 76,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011642 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011643 "source_fragment" : "hdr.report_udp.dport = mon_port"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011644 }
11645 },
11646 {
11647 "op" : "assign",
11648 "parameters" : [
11649 {
11650 "type" : "field",
11651 "value" : ["report_udp", "len"]
11652 },
11653 {
11654 "type" : "expression",
11655 "value" : {
11656 "type" : "expression",
11657 "value" : {
11658 "op" : "&",
11659 "left" : {
11660 "type" : "expression",
11661 "value" : {
11662 "op" : "+",
11663 "left" : {
11664 "type" : "hexstr",
11665 "value" : "0x0022"
11666 },
11667 "right" : {
11668 "type" : "field",
11669 "value" : ["ipv4", "total_len"]
11670 }
11671 }
11672 },
11673 "right" : {
11674 "type" : "hexstr",
11675 "value" : "0xffff"
11676 }
11677 }
11678 }
11679 }
11680 ],
11681 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011682 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011683 "line" : 77,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011684 "column" : 8,
11685 "source_fragment" : "hdr.report_udp.len = (bit<16>) UDP_HEADER_LEN + (bit<16>) REPORT_FIXED_HEADER_LEN + ..."
11686 }
11687 },
11688 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011689 "op" : "add_header",
11690 "parameters" : [
11691 {
11692 "type" : "header",
11693 "value" : "report_fixed_header"
11694 }
11695 ],
11696 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011697 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011698 "line" : 31,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011699 "column" : 8,
11700 "source_fragment" : "hdr.report_fixed_header.setValid()"
11701 }
11702 },
11703 {
11704 "op" : "assign",
11705 "parameters" : [
11706 {
11707 "type" : "field",
11708 "value" : ["report_fixed_header", "ver"]
11709 },
11710 {
11711 "type" : "hexstr",
11712 "value" : "0x00"
11713 }
11714 ],
11715 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011716 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011717 "line" : 32,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011718 "column" : 8,
11719 "source_fragment" : "hdr.report_fixed_header.ver = 0"
11720 }
11721 },
11722 {
11723 "op" : "assign",
11724 "parameters" : [
11725 {
11726 "type" : "field",
11727 "value" : ["report_fixed_header", "nproto"]
11728 },
11729 {
11730 "type" : "hexstr",
11731 "value" : "0x00"
11732 }
11733 ],
11734 "source_info" : {
11735 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011736 "line" : 153,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011737 "column" : 31,
11738 "source_fragment" : "0; ..."
11739 }
11740 },
11741 {
11742 "op" : "assign",
11743 "parameters" : [
11744 {
11745 "type" : "field",
11746 "value" : ["report_fixed_header", "d"]
11747 },
11748 {
11749 "type" : "hexstr",
11750 "value" : "0x00"
11751 }
11752 ],
11753 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011754 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011755 "line" : 35,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011756 "column" : 8,
11757 "source_fragment" : "hdr.report_fixed_header.d = 0"
11758 }
11759 },
11760 {
11761 "op" : "assign",
11762 "parameters" : [
11763 {
11764 "type" : "field",
11765 "value" : ["report_fixed_header", "q"]
11766 },
11767 {
11768 "type" : "hexstr",
11769 "value" : "0x00"
11770 }
11771 ],
11772 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011773 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011774 "line" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011775 "column" : 8,
11776 "source_fragment" : "hdr.report_fixed_header.q = 0"
11777 }
11778 },
11779 {
11780 "op" : "assign",
11781 "parameters" : [
11782 {
11783 "type" : "field",
11784 "value" : ["report_fixed_header", "f"]
11785 },
11786 {
11787 "type" : "hexstr",
11788 "value" : "0x01"
11789 }
11790 ],
11791 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011792 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011793 "line" : 37,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011794 "column" : 8,
11795 "source_fragment" : "hdr.report_fixed_header.f = 1"
11796 }
11797 },
11798 {
11799 "op" : "assign",
11800 "parameters" : [
11801 {
11802 "type" : "field",
11803 "value" : ["report_fixed_header", "rsvd"]
11804 },
11805 {
11806 "type" : "hexstr",
11807 "value" : "0x0000"
11808 }
11809 ],
11810 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011811 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011812 "line" : 38,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011813 "column" : 8,
11814 "source_fragment" : "hdr.report_fixed_header.rsvd = 0"
11815 }
11816 },
11817 {
11818 "op" : "assign",
11819 "parameters" : [
11820 {
11821 "type" : "field",
11822 "value" : ["report_fixed_header", "hw_id"]
11823 },
11824 {
11825 "type" : "hexstr",
11826 "value" : "0x01"
11827 }
11828 ],
11829 "source_info" : {
11830 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011831 "line" : 157,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011832 "column" : 21,
11833 "source_fragment" : "1; ..."
11834 }
11835 },
11836 {
11837 "op" : "assign",
11838 "parameters" : [
11839 {
11840 "type" : "field",
11841 "value" : ["report_fixed_header", "seq_no"]
11842 },
11843 {
11844 "type" : "hexstr",
11845 "value" : "0x00000000"
11846 }
11847 ],
11848 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011849 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011850 "line" : 42,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011851 "column" : 8,
11852 "source_fragment" : "hdr.report_fixed_header.seq_no = 0"
11853 }
11854 },
11855 {
11856 "op" : "assign",
11857 "parameters" : [
11858 {
11859 "type" : "field",
11860 "value" : ["report_fixed_header", "ingress_tstamp"]
11861 },
11862 {
11863 "type" : "field",
11864 "value" : ["standard_metadata", "enq_timestamp"]
11865 }
11866 ],
11867 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011868 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011869 "line" : 44,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011870 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011871 "source_fragment" : "hdr.report_fixed_header.ingress_tstamp = (bit<32>) standard_metadata.enq_timestamp"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011872 }
11873 }
11874 ]
11875 },
11876 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011877 "name" : "FabricEgress.process_int_main.process_int_sink.restore_header",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011878 "id" : 104,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011879 "runtime_data" : [],
11880 "primitives" : [
11881 {
11882 "op" : "assign",
11883 "parameters" : [
11884 {
11885 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011886 "value" : ["udp", "dport"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011887 },
11888 {
11889 "type" : "field",
11890 "value" : ["intl4_tail", "dest_port"]
11891 }
11892 ],
11893 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011894 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011895 "line" : 27,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011896 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011897 "source_fragment" : "hdr.udp.dport = hdr.intl4_tail.dest_port"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011898 }
11899 },
11900 {
11901 "op" : "assign",
11902 "parameters" : [
11903 {
11904 "type" : "field",
11905 "value" : ["ipv4", "dscp"]
11906 },
11907 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011908 "type" : "field",
11909 "value" : ["intl4_tail", "dscp"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011910 }
11911 ],
11912 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011913 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011914 "line" : 28,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011915 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011916 "source_fragment" : "hdr.ipv4.dscp = hdr.intl4_tail.dscp"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011917 }
11918 }
11919 ]
11920 },
11921 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011922 "name" : "FabricEgress.process_int_main.process_int_sink.int_sink",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011923 "id" : 105,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011924 "runtime_data" : [],
11925 "primitives" : [
11926 {
11927 "op" : "assign",
11928 "parameters" : [
11929 {
11930 "type" : "field",
11931 "value" : ["ipv4", "total_len"]
11932 },
11933 {
11934 "type" : "expression",
11935 "value" : {
11936 "type" : "expression",
11937 "value" : {
11938 "op" : "&",
11939 "left" : {
11940 "type" : "expression",
11941 "value" : {
11942 "op" : "-",
11943 "left" : {
11944 "type" : "field",
11945 "value" : ["ipv4", "total_len"]
11946 },
11947 "right" : {
11948 "type" : "expression",
11949 "value" : {
11950 "op" : "&",
11951 "left" : {
11952 "type" : "expression",
11953 "value" : {
11954 "op" : "&",
11955 "left" : {
11956 "type" : "expression",
11957 "value" : {
11958 "op" : "<<",
11959 "left" : {
11960 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011961 "value" : ["intl4_shim", "len_words"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011962 },
11963 "right" : {
11964 "type" : "hexstr",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011965 "value" : "0x02"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011966 }
11967 }
11968 },
11969 "right" : {
11970 "type" : "hexstr",
11971 "value" : "0xff"
11972 }
11973 }
11974 },
11975 "right" : {
11976 "type" : "hexstr",
11977 "value" : "0xffff"
11978 }
11979 }
11980 }
11981 }
11982 },
11983 "right" : {
11984 "type" : "hexstr",
11985 "value" : "0xffff"
11986 }
11987 }
11988 }
11989 }
11990 ],
11991 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011992 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011993 "line" : 35,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011994 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011995 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len - len_bytes"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011996 }
11997 },
11998 {
11999 "op" : "assign",
12000 "parameters" : [
12001 {
12002 "type" : "field",
12003 "value" : ["udp", "len"]
12004 },
12005 {
12006 "type" : "expression",
12007 "value" : {
12008 "type" : "expression",
12009 "value" : {
12010 "op" : "&",
12011 "left" : {
12012 "type" : "expression",
12013 "value" : {
12014 "op" : "-",
12015 "left" : {
12016 "type" : "field",
12017 "value" : ["udp", "len"]
12018 },
12019 "right" : {
12020 "type" : "expression",
12021 "value" : {
12022 "op" : "&",
12023 "left" : {
12024 "type" : "expression",
12025 "value" : {
12026 "op" : "&",
12027 "left" : {
12028 "type" : "expression",
12029 "value" : {
12030 "op" : "<<",
12031 "left" : {
12032 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012033 "value" : ["intl4_shim", "len_words"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012034 },
12035 "right" : {
12036 "type" : "hexstr",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012037 "value" : "0x02"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012038 }
12039 }
12040 },
12041 "right" : {
12042 "type" : "hexstr",
12043 "value" : "0xff"
12044 }
12045 }
12046 },
12047 "right" : {
12048 "type" : "hexstr",
12049 "value" : "0xffff"
12050 }
12051 }
12052 }
12053 }
12054 },
12055 "right" : {
12056 "type" : "hexstr",
12057 "value" : "0xffff"
12058 }
12059 }
12060 }
12061 }
12062 ],
12063 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012064 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012065 "line" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012066 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012067 "source_fragment" : "hdr.udp.len = hdr.udp.len - len_bytes"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012068 }
12069 },
12070 {
12071 "op" : "remove_header",
12072 "parameters" : [
12073 {
12074 "type" : "header",
12075 "value" : "int_header"
12076 }
12077 ],
12078 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012079 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012080 "line" : 38,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012081 "column" : 8,
12082 "source_fragment" : "hdr.int_header.setInvalid()"
12083 }
12084 },
12085 {
12086 "op" : "remove_header",
12087 "parameters" : [
12088 {
12089 "type" : "header",
12090 "value" : "int_data"
12091 }
12092 ],
12093 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012094 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012095 "line" : 39,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012096 "column" : 8,
12097 "source_fragment" : "hdr.int_data.setInvalid()"
12098 }
12099 },
12100 {
12101 "op" : "remove_header",
12102 "parameters" : [
12103 {
12104 "type" : "header",
12105 "value" : "intl4_shim"
12106 }
12107 ],
12108 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012109 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012110 "line" : 40,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012111 "column" : 8,
12112 "source_fragment" : "hdr.intl4_shim.setInvalid()"
12113 }
12114 },
12115 {
12116 "op" : "remove_header",
12117 "parameters" : [
12118 {
12119 "type" : "header",
12120 "value" : "intl4_tail"
12121 }
12122 ],
12123 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012124 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012125 "line" : 41,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012126 "column" : 8,
12127 "source_fragment" : "hdr.intl4_tail.setInvalid()"
12128 }
12129 },
12130 {
12131 "op" : "remove_header",
12132 "parameters" : [
12133 {
12134 "type" : "header",
12135 "value" : "int_switch_id"
12136 }
12137 ],
12138 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012139 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012140 "line" : 42,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012141 "column" : 8,
12142 "source_fragment" : "hdr.int_switch_id.setInvalid()"
12143 }
12144 },
12145 {
12146 "op" : "remove_header",
12147 "parameters" : [
12148 {
12149 "type" : "header",
12150 "value" : "int_port_ids"
12151 }
12152 ],
12153 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012154 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012155 "line" : 43,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012156 "column" : 8,
12157 "source_fragment" : "hdr.int_port_ids.setInvalid()"
12158 }
12159 },
12160 {
12161 "op" : "remove_header",
12162 "parameters" : [
12163 {
12164 "type" : "header",
12165 "value" : "int_hop_latency"
12166 }
12167 ],
12168 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012169 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012170 "line" : 44,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012171 "column" : 8,
12172 "source_fragment" : "hdr.int_hop_latency.setInvalid()"
12173 }
12174 },
12175 {
12176 "op" : "remove_header",
12177 "parameters" : [
12178 {
12179 "type" : "header",
12180 "value" : "int_q_occupancy"
12181 }
12182 ],
12183 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012184 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012185 "line" : 45,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012186 "column" : 8,
12187 "source_fragment" : "hdr.int_q_occupancy.setInvalid()"
12188 }
12189 },
12190 {
12191 "op" : "remove_header",
12192 "parameters" : [
12193 {
12194 "type" : "header",
12195 "value" : "int_ingress_tstamp"
12196 }
12197 ],
12198 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012199 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012200 "line" : 46,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012201 "column" : 8,
12202 "source_fragment" : "hdr.int_ingress_tstamp.setInvalid()"
12203 }
12204 },
12205 {
12206 "op" : "remove_header",
12207 "parameters" : [
12208 {
12209 "type" : "header",
12210 "value" : "int_egress_tstamp"
12211 }
12212 ],
12213 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012214 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012215 "line" : 47,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012216 "column" : 8,
12217 "source_fragment" : "hdr.int_egress_tstamp.setInvalid()"
12218 }
12219 },
12220 {
12221 "op" : "remove_header",
12222 "parameters" : [
12223 {
12224 "type" : "header",
12225 "value" : "int_q_congestion"
12226 }
12227 ],
12228 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012229 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012230 "line" : 48,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012231 "column" : 8,
12232 "source_fragment" : "hdr.int_q_congestion.setInvalid()"
12233 }
12234 },
12235 {
12236 "op" : "remove_header",
12237 "parameters" : [
12238 {
12239 "type" : "header",
12240 "value" : "int_egress_tx_util"
12241 }
12242 ],
12243 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012244 "filename" : "include/int/int_sink.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012245 "line" : 49,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012246 "column" : 8,
12247 "source_fragment" : "hdr.int_egress_tx_util.setInvalid()"
12248 }
12249 }
12250 ]
12251 },
12252 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012253 "name" : "FabricEgress.egress_next.pop_mpls_if_present",
12254 "id" : 106,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012255 "runtime_data" : [],
12256 "primitives" : [
12257 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012258 "op" : "remove_header",
12259 "parameters" : [
12260 {
12261 "type" : "header",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012262 "value" : "mpls"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012263 }
12264 ],
12265 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012266 "filename" : "include/control/next.p4",
12267 "line" : 246,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012268 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012269 "source_fragment" : "hdr.mpls.setInvalid()"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012270 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012271 },
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012272 {
12273 "op" : "assign",
12274 "parameters" : [
12275 {
12276 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012277 "value" : ["scalars", "fabric_metadata_t.eth_type"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012278 },
12279 {
12280 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012281 "value" : ["scalars", "fabric_metadata_t.ip_eth_type"]
12282 }
12283 ],
12284 "source_info" : {
12285 "filename" : "include/control/next.p4",
12286 "line" : 248,
12287 "column" : 8,
12288 "source_fragment" : "fabric_metadata.eth_type = fabric_metadata.ip_eth_type"
12289 }
12290 }
12291 ]
12292 },
12293 {
12294 "name" : "FabricEgress.egress_next.set_mpls",
12295 "id" : 107,
12296 "runtime_data" : [],
12297 "primitives" : [
12298 {
12299 "op" : "add_header",
12300 "parameters" : [
12301 {
12302 "type" : "header",
12303 "value" : "mpls"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012304 }
12305 ],
12306 "source_info" : {
12307 "filename" : "include/control/next.p4",
12308 "line" : 253,
12309 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012310 "source_fragment" : "hdr.mpls.setValid()"
12311 }
12312 },
12313 {
12314 "op" : "assign",
12315 "parameters" : [
12316 {
12317 "type" : "field",
12318 "value" : ["mpls", "label"]
12319 },
12320 {
12321 "type" : "field",
12322 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
12323 }
12324 ],
12325 "source_info" : {
12326 "filename" : "include/control/next.p4",
12327 "line" : 254,
12328 "column" : 8,
12329 "source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label"
12330 }
12331 },
12332 {
12333 "op" : "assign",
12334 "parameters" : [
12335 {
12336 "type" : "field",
12337 "value" : ["mpls", "tc"]
12338 },
12339 {
12340 "type" : "hexstr",
12341 "value" : "0x00"
12342 }
12343 ],
12344 "source_info" : {
12345 "filename" : "include/control/next.p4",
12346 "line" : 255,
12347 "column" : 8,
12348 "source_fragment" : "hdr.mpls.tc = 3w0"
12349 }
12350 },
12351 {
12352 "op" : "assign",
12353 "parameters" : [
12354 {
12355 "type" : "field",
12356 "value" : ["mpls", "bos"]
12357 },
12358 {
12359 "type" : "hexstr",
12360 "value" : "0x01"
12361 }
12362 ],
12363 "source_info" : {
12364 "filename" : "include/control/next.p4",
12365 "line" : 256,
12366 "column" : 8,
12367 "source_fragment" : "hdr.mpls.bos = 1w1"
12368 }
12369 },
12370 {
12371 "op" : "assign",
12372 "parameters" : [
12373 {
12374 "type" : "field",
12375 "value" : ["mpls", "ttl"]
12376 },
12377 {
12378 "type" : "field",
12379 "value" : ["scalars", "fabric_metadata_t.mpls_ttl"]
12380 }
12381 ],
12382 "source_info" : {
12383 "filename" : "include/control/next.p4",
12384 "line" : 257,
12385 "column" : 8,
12386 "source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl"
12387 }
12388 },
12389 {
12390 "op" : "assign",
12391 "parameters" : [
12392 {
12393 "type" : "field",
12394 "value" : ["scalars", "fabric_metadata_t.eth_type"]
12395 },
12396 {
12397 "type" : "hexstr",
12398 "value" : "0x8847"
12399 }
12400 ],
12401 "source_info" : {
12402 "filename" : "include/control/../define.p4",
12403 "line" : 108,
12404 "column" : 31,
12405 "source_fragment" : "0x8847; ..."
12406 }
12407 }
12408 ]
12409 },
12410 {
12411 "name" : "FabricEgress.egress_next.push_vlan",
12412 "id" : 108,
12413 "runtime_data" : [],
12414 "primitives" : [
12415 {
12416 "op" : "add_header",
12417 "parameters" : [
12418 {
12419 "type" : "header",
12420 "value" : "vlan_tag"
12421 }
12422 ],
12423 "source_info" : {
12424 "filename" : "include/control/next.p4",
12425 "line" : 265,
12426 "column" : 8,
12427 "source_fragment" : "hdr.vlan_tag.setValid()"
12428 }
12429 },
12430 {
12431 "op" : "assign",
12432 "parameters" : [
12433 {
12434 "type" : "field",
12435 "value" : ["vlan_tag", "cfi"]
12436 },
12437 {
12438 "type" : "field",
12439 "value" : ["scalars", "fabric_metadata_t.vlan_cfi"]
12440 }
12441 ],
12442 "source_info" : {
12443 "filename" : "include/control/next.p4",
12444 "line" : 266,
12445 "column" : 8,
12446 "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi"
12447 }
12448 },
12449 {
12450 "op" : "assign",
12451 "parameters" : [
12452 {
12453 "type" : "field",
12454 "value" : ["vlan_tag", "pri"]
12455 },
12456 {
12457 "type" : "field",
12458 "value" : ["scalars", "fabric_metadata_t.vlan_pri"]
12459 }
12460 ],
12461 "source_info" : {
12462 "filename" : "include/control/next.p4",
12463 "line" : 267,
12464 "column" : 8,
12465 "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri"
12466 }
12467 },
12468 {
12469 "op" : "assign",
12470 "parameters" : [
12471 {
12472 "type" : "field",
12473 "value" : ["vlan_tag", "eth_type"]
12474 },
12475 {
12476 "type" : "field",
12477 "value" : ["scalars", "fabric_metadata_t.eth_type"]
12478 }
12479 ],
12480 "source_info" : {
12481 "filename" : "include/control/next.p4",
12482 "line" : 268,
12483 "column" : 8,
12484 "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type"
12485 }
12486 },
12487 {
12488 "op" : "assign",
12489 "parameters" : [
12490 {
12491 "type" : "field",
12492 "value" : ["vlan_tag", "vlan_id"]
12493 },
12494 {
12495 "type" : "field",
12496 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
12497 }
12498 ],
12499 "source_info" : {
12500 "filename" : "include/control/next.p4",
12501 "line" : 269,
12502 "column" : 8,
12503 "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id"
12504 }
12505 },
12506 {
12507 "op" : "assign",
12508 "parameters" : [
12509 {
12510 "type" : "field",
12511 "value" : ["ethernet", "eth_type"]
12512 },
12513 {
12514 "type" : "hexstr",
12515 "value" : "0x8100"
12516 }
12517 ],
12518 "source_info" : {
12519 "filename" : "include/control/../define.p4",
12520 "line" : 107,
12521 "column" : 31,
12522 "source_fragment" : "0x8100; ..."
12523 }
12524 }
12525 ]
12526 },
12527 {
12528 "name" : "FabricEgress.egress_next.pop_vlan",
12529 "id" : 109,
12530 "runtime_data" : [],
12531 "primitives" : [
12532 {
12533 "op" : "assign",
12534 "parameters" : [
12535 {
12536 "type" : "field",
12537 "value" : ["ethernet", "eth_type"]
12538 },
12539 {
12540 "type" : "field",
12541 "value" : ["scalars", "fabric_metadata_t.eth_type"]
12542 }
12543 ],
12544 "source_info" : {
12545 "filename" : "include/control/next.p4",
12546 "line" : 280,
12547 "column" : 8,
12548 "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012549 }
12550 },
12551 {
12552 "op" : "remove_header",
12553 "parameters" : [
12554 {
12555 "type" : "header",
12556 "value" : "vlan_tag"
12557 }
12558 ],
12559 "source_info" : {
12560 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012561 "line" : 281,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012562 "column" : 8,
12563 "source_fragment" : "hdr.vlan_tag.setInvalid()"
12564 }
12565 }
12566 ]
12567 },
12568 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012569 "name" : "act_20",
12570 "id" : 110,
12571 "runtime_data" : [],
12572 "primitives" : [
12573 {
12574 "op" : "drop",
12575 "parameters" : [],
12576 "source_info" : {
12577 "filename" : "include/control/packetio.p4",
12578 "line" : 47,
12579 "column" : 16,
12580 "source_fragment" : "mark_to_drop()"
12581 }
12582 }
12583 ]
12584 },
12585 {
12586 "name" : "act_21",
12587 "id" : 111,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012588 "runtime_data" : [],
12589 "primitives" : [
12590 {
12591 "op" : "add_header",
12592 "parameters" : [
12593 {
12594 "type" : "header",
12595 "value" : "packet_in"
12596 }
12597 ],
12598 "source_info" : {
12599 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012600 "line" : 49,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012601 "column" : 12,
12602 "source_fragment" : "hdr.packet_in.setValid()"
12603 }
12604 },
12605 {
12606 "op" : "assign",
12607 "parameters" : [
12608 {
12609 "type" : "field",
12610 "value" : ["packet_in", "ingress_port"]
12611 },
12612 {
12613 "type" : "field",
12614 "value" : ["standard_metadata", "ingress_port"]
12615 }
12616 ],
12617 "source_info" : {
12618 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012619 "line" : 50,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020012620 "column" : 12,
12621 "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
12622 }
12623 }
12624 ]
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012625 },
12626 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012627 "name" : "act_22",
12628 "id" : 112,
12629 "runtime_data" : [],
12630 "primitives" : [
12631 {
12632 "op" : "drop",
12633 "parameters" : [],
12634 "source_info" : {
12635 "filename" : "include/control/next.p4",
12636 "line" : 301,
12637 "column" : 12,
12638 "source_fragment" : "mark_to_drop()"
12639 }
12640 }
12641 ]
12642 },
12643 {
12644 "name" : "act_23",
12645 "id" : 113,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012646 "runtime_data" : [],
12647 "primitives" : [
12648 {
12649 "op" : "assign",
12650 "parameters" : [
12651 {
12652 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012653 "value" : ["scalars", "egress_next_tmp"]
12654 },
12655 {
12656 "type" : "expression",
12657 "value" : {
12658 "type" : "expression",
12659 "value" : {
12660 "op" : "b2d",
12661 "left" : null,
12662 "right" : {
12663 "type" : "bool",
12664 "value" : true
12665 }
12666 }
12667 }
12668 }
12669 ]
12670 }
12671 ]
12672 },
12673 {
12674 "name" : "act_24",
12675 "id" : 114,
12676 "runtime_data" : [],
12677 "primitives" : [
12678 {
12679 "op" : "assign",
12680 "parameters" : [
12681 {
12682 "type" : "field",
12683 "value" : ["scalars", "egress_next_tmp"]
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012684 },
12685 {
12686 "type" : "expression",
12687 "value" : {
12688 "type" : "expression",
12689 "value" : {
12690 "op" : "b2d",
12691 "left" : null,
12692 "right" : {
12693 "type" : "bool",
12694 "value" : false
12695 }
12696 }
12697 }
12698 }
12699 ]
12700 }
12701 ]
12702 },
12703 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012704 "name" : "act_25",
12705 "id" : 115,
12706 "runtime_data" : [],
12707 "primitives" : [
12708 {
12709 "op" : "drop",
12710 "parameters" : [],
12711 "source_info" : {
12712 "filename" : "include/control/next.p4",
12713 "line" : 320,
12714 "column" : 35,
12715 "source_fragment" : "mark_to_drop()"
12716 }
12717 }
12718 ]
12719 },
12720 {
12721 "name" : "act_26",
12722 "id" : 116,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012723 "runtime_data" : [],
12724 "primitives" : [
12725 {
12726 "op" : "assign",
12727 "parameters" : [
12728 {
12729 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012730 "value" : ["mpls", "ttl"]
12731 },
12732 {
12733 "type" : "expression",
12734 "value" : {
12735 "type" : "expression",
12736 "value" : {
12737 "op" : "&",
12738 "left" : {
12739 "type" : "expression",
12740 "value" : {
12741 "op" : "+",
12742 "left" : {
12743 "type" : "field",
12744 "value" : ["mpls", "ttl"]
12745 },
12746 "right" : {
12747 "type" : "hexstr",
12748 "value" : "0xff"
12749 }
12750 }
12751 },
12752 "right" : {
12753 "type" : "hexstr",
12754 "value" : "0xff"
12755 }
12756 }
12757 }
12758 }
12759 ],
12760 "source_info" : {
12761 "filename" : "include/control/next.p4",
12762 "line" : 319,
12763 "column" : 12,
12764 "source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
12765 }
12766 }
12767 ]
12768 },
12769 {
12770 "name" : "act_27",
12771 "id" : 117,
12772 "runtime_data" : [],
12773 "primitives" : [
12774 {
12775 "op" : "drop",
12776 "parameters" : [],
12777 "source_info" : {
12778 "filename" : "include/control/next.p4",
12779 "line" : 324,
12780 "column" : 39,
12781 "source_fragment" : "mark_to_drop()"
12782 }
12783 }
12784 ]
12785 },
12786 {
12787 "name" : "act_28",
12788 "id" : 118,
12789 "runtime_data" : [],
12790 "primitives" : [
12791 {
12792 "op" : "assign",
12793 "parameters" : [
12794 {
12795 "type" : "field",
12796 "value" : ["ipv4", "ttl"]
12797 },
12798 {
12799 "type" : "expression",
12800 "value" : {
12801 "type" : "expression",
12802 "value" : {
12803 "op" : "&",
12804 "left" : {
12805 "type" : "expression",
12806 "value" : {
12807 "op" : "+",
12808 "left" : {
12809 "type" : "field",
12810 "value" : ["ipv4", "ttl"]
12811 },
12812 "right" : {
12813 "type" : "hexstr",
12814 "value" : "0xff"
12815 }
12816 }
12817 },
12818 "right" : {
12819 "type" : "hexstr",
12820 "value" : "0xff"
12821 }
12822 }
12823 }
12824 }
12825 ],
12826 "source_info" : {
12827 "filename" : "include/control/next.p4",
12828 "line" : 323,
12829 "column" : 16,
12830 "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
12831 }
12832 }
12833 ]
12834 },
12835 {
12836 "name" : "act_29",
12837 "id" : 119,
12838 "runtime_data" : [],
12839 "primitives" : [
12840 {
12841 "op" : "drop",
12842 "parameters" : [],
12843 "source_info" : {
12844 "filename" : "include/control/next.p4",
12845 "line" : 329,
12846 "column" : 45,
12847 "source_fragment" : "mark_to_drop()"
12848 }
12849 }
12850 ]
12851 },
12852 {
12853 "name" : "act_30",
12854 "id" : 120,
12855 "runtime_data" : [],
12856 "primitives" : [
12857 {
12858 "op" : "assign",
12859 "parameters" : [
12860 {
12861 "type" : "field",
12862 "value" : ["ipv6", "hop_limit"]
12863 },
12864 {
12865 "type" : "expression",
12866 "value" : {
12867 "type" : "expression",
12868 "value" : {
12869 "op" : "&",
12870 "left" : {
12871 "type" : "expression",
12872 "value" : {
12873 "op" : "+",
12874 "left" : {
12875 "type" : "field",
12876 "value" : ["ipv6", "hop_limit"]
12877 },
12878 "right" : {
12879 "type" : "hexstr",
12880 "value" : "0xff"
12881 }
12882 }
12883 },
12884 "right" : {
12885 "type" : "hexstr",
12886 "value" : "0xff"
12887 }
12888 }
12889 }
12890 }
12891 ],
12892 "source_info" : {
12893 "filename" : "include/control/next.p4",
12894 "line" : 328,
12895 "column" : 16,
12896 "source_fragment" : "hdr.ipv6.hop_limit = hdr.ipv6.hop_limit - 1"
12897 }
12898 }
12899 ]
12900 },
12901 {
12902 "name" : "act_31",
12903 "id" : 121,
12904 "runtime_data" : [],
12905 "primitives" : [
12906 {
12907 "op" : "assign",
12908 "parameters" : [
12909 {
12910 "type" : "field",
12911 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
12912 },
12913 {
12914 "type" : "expression",
12915 "value" : {
12916 "type" : "expression",
12917 "value" : {
12918 "op" : "b2d",
12919 "left" : null,
12920 "right" : {
12921 "type" : "bool",
12922 "value" : false
12923 }
12924 }
12925 }
12926 }
12927 ]
12928 }
12929 ]
12930 },
12931 {
12932 "name" : "act_32",
12933 "id" : 122,
12934 "runtime_data" : [],
12935 "primitives" : [
12936 {
12937 "op" : "assign",
12938 "parameters" : [
12939 {
12940 "type" : "field",
12941 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012942 },
12943 {
12944 "type" : "expression",
12945 "value" : {
12946 "type" : "expression",
12947 "value" : {
12948 "op" : "b2d",
12949 "left" : null,
12950 "right" : {
12951 "type" : "bool",
12952 "value" : true
12953 }
12954 }
12955 }
12956 }
12957 ],
12958 "source_info" : {
12959 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012960 "line" : 420,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012961 "column" : 12,
12962 "source_fragment" : "return"
12963 }
12964 }
12965 ]
12966 },
12967 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012968 "name" : "act_33",
12969 "id" : 123,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012970 "runtime_data" : [],
12971 "primitives" : [
12972 {
12973 "op" : "assign",
12974 "parameters" : [
12975 {
12976 "type" : "field",
12977 "value" : ["ipv4", "total_len"]
12978 },
12979 {
12980 "type" : "expression",
12981 "value" : {
12982 "type" : "expression",
12983 "value" : {
12984 "op" : "&",
12985 "left" : {
12986 "type" : "expression",
12987 "value" : {
12988 "op" : "+",
12989 "left" : {
12990 "type" : "field",
12991 "value" : ["ipv4", "total_len"]
12992 },
12993 "right" : {
12994 "type" : "field",
12995 "value" : ["userMetadata.int_meta", "new_bytes"]
12996 }
12997 }
12998 },
12999 "right" : {
13000 "type" : "hexstr",
13001 "value" : "0xffff"
13002 }
13003 }
13004 }
13005 }
13006 ],
13007 "source_info" : {
13008 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013009 "line" : 428,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013010 "column" : 12,
13011 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + fmeta.int_meta.new_bytes"
13012 }
13013 }
13014 ]
13015 },
13016 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013017 "name" : "act_34",
13018 "id" : 124,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013019 "runtime_data" : [],
13020 "primitives" : [
13021 {
13022 "op" : "assign",
13023 "parameters" : [
13024 {
13025 "type" : "field",
13026 "value" : ["int_header", "total_hop_cnt"]
13027 },
13028 {
13029 "type" : "expression",
13030 "value" : {
13031 "type" : "expression",
13032 "value" : {
13033 "op" : "&",
13034 "left" : {
13035 "type" : "expression",
13036 "value" : {
13037 "op" : "+",
13038 "left" : {
13039 "type" : "field",
13040 "value" : ["int_header", "total_hop_cnt"]
13041 },
13042 "right" : {
13043 "type" : "hexstr",
13044 "value" : "0x01"
13045 }
13046 }
13047 },
13048 "right" : {
13049 "type" : "hexstr",
13050 "value" : "0xff"
13051 }
13052 }
13053 }
13054 }
13055 ],
13056 "source_info" : {
13057 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013058 "line" : 425,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013059 "column" : 8,
13060 "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
13061 }
13062 }
13063 ]
13064 },
13065 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013066 "name" : "act_35",
13067 "id" : 125,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013068 "runtime_data" : [],
13069 "primitives" : [
13070 {
13071 "op" : "assign",
13072 "parameters" : [
13073 {
13074 "type" : "field",
13075 "value" : ["udp", "len"]
13076 },
13077 {
13078 "type" : "expression",
13079 "value" : {
13080 "type" : "expression",
13081 "value" : {
13082 "op" : "&",
13083 "left" : {
13084 "type" : "expression",
13085 "value" : {
13086 "op" : "+",
13087 "left" : {
13088 "type" : "field",
13089 "value" : ["udp", "len"]
13090 },
13091 "right" : {
13092 "type" : "field",
13093 "value" : ["userMetadata.int_meta", "new_bytes"]
13094 }
13095 }
13096 },
13097 "right" : {
13098 "type" : "hexstr",
13099 "value" : "0xffff"
13100 }
13101 }
13102 }
13103 }
13104 ],
13105 "source_info" : {
13106 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013107 "line" : 431,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013108 "column" : 12,
13109 "source_fragment" : "hdr.udp.len = hdr.udp.len + fmeta.int_meta.new_bytes"
13110 }
13111 }
13112 ]
13113 },
13114 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013115 "name" : "act_36",
13116 "id" : 126,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013117 "runtime_data" : [],
13118 "primitives" : [
13119 {
13120 "op" : "assign",
13121 "parameters" : [
13122 {
13123 "type" : "field",
13124 "value" : ["intl4_shim", "len_words"]
13125 },
13126 {
13127 "type" : "expression",
13128 "value" : {
13129 "type" : "expression",
13130 "value" : {
13131 "op" : "&",
13132 "left" : {
13133 "type" : "expression",
13134 "value" : {
13135 "op" : "+",
13136 "left" : {
13137 "type" : "field",
13138 "value" : ["intl4_shim", "len_words"]
13139 },
13140 "right" : {
13141 "type" : "field",
13142 "value" : ["userMetadata.int_meta", "new_words"]
13143 }
13144 }
13145 },
13146 "right" : {
13147 "type" : "hexstr",
13148 "value" : "0xff"
13149 }
13150 }
13151 }
13152 }
13153 ],
13154 "source_info" : {
13155 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013156 "line" : 434,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013157 "column" : 12,
13158 "source_fragment" : "hdr.intl4_shim.len_words = hdr.intl4_shim.len_words + fmeta.int_meta.new_words"
13159 }
13160 }
13161 ]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013162 }
13163 ],
13164 "pipelines" : [
13165 {
13166 "name" : "ingress",
13167 "id" : 0,
13168 "source_info" : {
13169 "filename" : "fabric.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013170 "line" : 41,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013171 "column" : 8,
13172 "source_fragment" : "FabricIngress"
13173 },
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013174 "init_table" : "tbl_act",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013175 "tables" : [
13176 {
13177 "name" : "tbl_act",
13178 "id" : 0,
13179 "key" : [],
13180 "match_type" : "exact",
13181 "type" : "simple",
13182 "max_size" : 1024,
13183 "with_counters" : false,
13184 "support_timeout" : false,
13185 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013186 "action_ids" : [42],
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013187 "actions" : ["act_0"],
13188 "base_default_next" : "node_3",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013189 "next_tables" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013190 "act_0" : "node_3"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013191 },
13192 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013193 "action_id" : 42,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013194 "action_const" : true,
13195 "action_data" : [],
13196 "action_entry_const" : true
13197 }
13198 },
13199 {
13200 "name" : "tbl_act_0",
13201 "id" : 1,
13202 "key" : [],
13203 "match_type" : "exact",
13204 "type" : "simple",
13205 "max_size" : 1024,
13206 "with_counters" : false,
13207 "support_timeout" : false,
13208 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013209 "action_ids" : [41],
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013210 "actions" : ["act"],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013211 "base_default_next" : "node_5",
13212 "next_tables" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013213 "act" : "node_5"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013214 },
13215 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013216 "action_id" : 41,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013217 "action_const" : true,
13218 "action_data" : [],
13219 "action_entry_const" : true
13220 }
13221 },
13222 {
13223 "name" : "tbl_act_1",
13224 "id" : 2,
13225 "key" : [],
13226 "match_type" : "exact",
13227 "type" : "simple",
13228 "max_size" : 1024,
13229 "with_counters" : false,
13230 "support_timeout" : false,
13231 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013232 "action_ids" : [45],
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013233 "actions" : ["act_3"],
13234 "base_default_next" : "node_7",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013235 "next_tables" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013236 "act_3" : "node_7"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013237 },
13238 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013239 "action_id" : 45,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013240 "action_const" : true,
13241 "action_data" : [],
13242 "action_entry_const" : true
13243 }
13244 },
13245 {
13246 "name" : "tbl_act_2",
13247 "id" : 3,
13248 "key" : [],
13249 "match_type" : "exact",
13250 "type" : "simple",
13251 "max_size" : 1024,
13252 "with_counters" : false,
13253 "support_timeout" : false,
13254 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013255 "action_ids" : [43],
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013256 "actions" : ["act_1"],
13257 "base_default_next" : "node_10",
13258 "next_tables" : {
13259 "act_1" : "node_10"
13260 },
13261 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013262 "action_id" : 43,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013263 "action_const" : true,
13264 "action_data" : [],
13265 "action_entry_const" : true
13266 }
13267 },
13268 {
13269 "name" : "tbl_act_3",
13270 "id" : 4,
13271 "key" : [],
13272 "match_type" : "exact",
13273 "type" : "simple",
13274 "max_size" : 1024,
13275 "with_counters" : false,
13276 "support_timeout" : false,
13277 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013278 "action_ids" : [44],
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013279 "actions" : ["act_2"],
13280 "base_default_next" : "node_10",
13281 "next_tables" : {
13282 "act_2" : "node_10"
13283 },
13284 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013285 "action_id" : 44,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013286 "action_const" : true,
13287 "action_data" : [],
13288 "action_entry_const" : true
13289 }
13290 },
13291 {
13292 "name" : "tbl_act_4",
13293 "id" : 5,
13294 "key" : [],
13295 "match_type" : "exact",
13296 "type" : "simple",
13297 "max_size" : 1024,
13298 "with_counters" : false,
13299 "support_timeout" : false,
13300 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013301 "action_ids" : [46],
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013302 "actions" : ["act_4"],
13303 "base_default_next" : null,
13304 "next_tables" : {
13305 "act_4" : null
13306 },
13307 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013308 "action_id" : 46,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013309 "action_const" : true,
13310 "action_data" : [],
13311 "action_entry_const" : true
13312 }
13313 },
13314 {
13315 "name" : "tbl_act_5",
13316 "id" : 6,
13317 "key" : [],
13318 "match_type" : "exact",
13319 "type" : "simple",
13320 "max_size" : 1024,
13321 "with_counters" : false,
13322 "support_timeout" : false,
13323 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013324 "action_ids" : [47],
13325 "actions" : ["act_5"],
13326 "base_default_next" : "node_14",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013327 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013328 "act_5" : "node_14"
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013329 },
13330 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013331 "action_id" : 47,
13332 "action_const" : true,
13333 "action_data" : [],
13334 "action_entry_const" : true
13335 }
13336 },
13337 {
13338 "name" : "tbl_act_6",
13339 "id" : 7,
13340 "key" : [],
13341 "match_type" : "exact",
13342 "type" : "simple",
13343 "max_size" : 1024,
13344 "with_counters" : false,
13345 "support_timeout" : false,
13346 "direct_meters" : null,
13347 "action_ids" : [48],
13348 "actions" : ["act_6"],
13349 "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
13350 "next_tables" : {
13351 "act_6" : "FabricIngress.filtering.ingress_port_vlan"
13352 },
13353 "default_entry" : {
13354 "action_id" : 48,
13355 "action_const" : true,
13356 "action_data" : [],
13357 "action_entry_const" : true
13358 }
13359 },
13360 {
13361 "name" : "FabricIngress.filtering.ingress_port_vlan",
13362 "id" : 8,
13363 "source_info" : {
13364 "filename" : "include/control/filtering.p4",
13365 "line" : 51,
13366 "column" : 10,
13367 "source_fragment" : "ingress_port_vlan"
13368 },
13369 "key" : [
13370 {
13371 "match_type" : "exact",
13372 "name" : "ig_port",
13373 "target" : ["standard_metadata", "ingress_port"],
13374 "mask" : null
13375 },
13376 {
13377 "match_type" : "exact",
13378 "name" : "vlan_is_valid",
13379 "target" : ["vlan_tag", "$valid$"],
13380 "mask" : null
13381 },
13382 {
13383 "match_type" : "ternary",
13384 "name" : "vlan_id",
13385 "target" : ["vlan_tag", "vlan_id"],
13386 "mask" : null
13387 }
13388 ],
13389 "match_type" : "ternary",
13390 "type" : "simple",
13391 "max_size" : 1024,
13392 "with_counters" : true,
13393 "support_timeout" : false,
13394 "direct_meters" : null,
13395 "action_ids" : [17, 18, 19],
13396 "actions" : ["FabricIngress.filtering.deny", "FabricIngress.filtering.permit", "FabricIngress.filtering.permit_with_internal_vlan"],
13397 "base_default_next" : "FabricIngress.filtering.fwd_classifier",
13398 "next_tables" : {
13399 "FabricIngress.filtering.deny" : "FabricIngress.filtering.fwd_classifier",
13400 "FabricIngress.filtering.permit" : "FabricIngress.filtering.fwd_classifier",
13401 "FabricIngress.filtering.permit_with_internal_vlan" : "FabricIngress.filtering.fwd_classifier"
13402 },
13403 "default_entry" : {
13404 "action_id" : 17,
13405 "action_const" : true,
13406 "action_data" : [],
13407 "action_entry_const" : true
13408 }
13409 },
13410 {
13411 "name" : "FabricIngress.filtering.fwd_classifier",
13412 "id" : 9,
13413 "source_info" : {
13414 "filename" : "include/control/filtering.p4",
13415 "line" : 86,
13416 "column" : 10,
13417 "source_fragment" : "fwd_classifier"
13418 },
13419 "key" : [
13420 {
13421 "match_type" : "exact",
13422 "name" : "ig_port",
13423 "target" : ["standard_metadata", "ingress_port"],
13424 "mask" : null
13425 },
13426 {
13427 "match_type" : "ternary",
13428 "name" : "eth_dst",
13429 "target" : ["ethernet", "dst_addr"],
13430 "mask" : null
13431 },
13432 {
13433 "match_type" : "exact",
13434 "name" : "eth_type",
13435 "target" : ["scalars", "fabric_metadata_t.eth_type"],
13436 "mask" : null
13437 }
13438 ],
13439 "match_type" : "ternary",
13440 "type" : "simple",
13441 "max_size" : 1024,
13442 "with_counters" : true,
13443 "support_timeout" : false,
13444 "direct_meters" : null,
13445 "action_ids" : [20],
13446 "actions" : ["FabricIngress.filtering.set_forwarding_type"],
13447 "base_default_next" : "tbl_act_7",
13448 "next_tables" : {
13449 "FabricIngress.filtering.set_forwarding_type" : "tbl_act_7"
13450 },
13451 "default_entry" : {
13452 "action_id" : 20,
13453 "action_const" : true,
13454 "action_data" : ["0x0"],
13455 "action_entry_const" : true
13456 }
13457 },
13458 {
13459 "name" : "tbl_act_7",
13460 "id" : 10,
13461 "key" : [],
13462 "match_type" : "exact",
13463 "type" : "simple",
13464 "max_size" : 1024,
13465 "with_counters" : false,
13466 "support_timeout" : false,
13467 "direct_meters" : null,
13468 "action_ids" : [57],
13469 "actions" : ["act_15"],
13470 "base_default_next" : "node_19",
13471 "next_tables" : {
13472 "act_15" : "node_19"
13473 },
13474 "default_entry" : {
13475 "action_id" : 57,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013476 "action_const" : true,
13477 "action_data" : [],
13478 "action_entry_const" : true
13479 }
13480 },
13481 {
13482 "name" : "FabricIngress.spgw_ingress.s1u_filter_table",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013483 "id" : 11,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013484 "source_info" : {
13485 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013486 "line" : 82,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013487 "column" : 10,
13488 "source_fragment" : "s1u_filter_table"
13489 },
13490 "key" : [
13491 {
13492 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013493 "name" : "gtp_ipv4_dst",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013494 "target" : ["gtpu_ipv4", "dst_addr"],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013495 "mask" : null
13496 }
13497 ],
13498 "match_type" : "exact",
13499 "type" : "simple",
13500 "max_size" : 1024,
13501 "with_counters" : false,
13502 "support_timeout" : false,
13503 "direct_meters" : null,
13504 "action_ids" : [1],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013505 "actions" : ["nop"],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013506 "base_default_next" : null,
13507 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013508 "__HIT__" : "tbl_act_8",
13509 "__MISS__" : "tbl_act_9"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013510 },
13511 "default_entry" : {
13512 "action_id" : 1,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013513 "action_const" : true,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013514 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013515 "action_entry_const" : true
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013516 }
13517 },
13518 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013519 "name" : "tbl_act_8",
13520 "id" : 12,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013521 "key" : [],
13522 "match_type" : "exact",
13523 "type" : "simple",
13524 "max_size" : 1024,
13525 "with_counters" : false,
13526 "support_timeout" : false,
13527 "direct_meters" : null,
Charles Chancd03f072018-08-31 17:46:37 -070013528 "action_ids" : [49],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013529 "actions" : ["act_7"],
13530 "base_default_next" : "node_23",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013531 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013532 "act_7" : "node_23"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013533 },
13534 "default_entry" : {
Charles Chancd03f072018-08-31 17:46:37 -070013535 "action_id" : 49,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013536 "action_const" : true,
13537 "action_data" : [],
13538 "action_entry_const" : true
13539 }
13540 },
13541 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013542 "name" : "tbl_act_9",
13543 "id" : 13,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013544 "key" : [],
13545 "match_type" : "exact",
13546 "type" : "simple",
13547 "max_size" : 1024,
13548 "with_counters" : false,
13549 "support_timeout" : false,
13550 "direct_meters" : null,
Charles Chancd03f072018-08-31 17:46:37 -070013551 "action_ids" : [50],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013552 "actions" : ["act_8"],
13553 "base_default_next" : "node_23",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013554 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013555 "act_8" : "node_23"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013556 },
13557 "default_entry" : {
Charles Chancd03f072018-08-31 17:46:37 -070013558 "action_id" : 50,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013559 "action_const" : true,
13560 "action_data" : [],
13561 "action_entry_const" : true
13562 }
13563 },
13564 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013565 "name" : "tbl_act_10",
13566 "id" : 14,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013567 "key" : [],
13568 "match_type" : "exact",
13569 "type" : "simple",
13570 "max_size" : 1024,
13571 "with_counters" : false,
13572 "support_timeout" : false,
13573 "direct_meters" : null,
Charles Chancd03f072018-08-31 17:46:37 -070013574 "action_ids" : [51],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013575 "actions" : ["act_9"],
13576 "base_default_next" : "tbl_act_11",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013577 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013578 "act_9" : "tbl_act_11"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013579 },
13580 "default_entry" : {
Charles Chancd03f072018-08-31 17:46:37 -070013581 "action_id" : 51,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013582 "action_const" : true,
13583 "action_data" : [],
13584 "action_entry_const" : true
13585 }
13586 },
13587 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013588 "name" : "tbl_act_11",
13589 "id" : 15,
13590 "key" : [],
13591 "match_type" : "exact",
13592 "type" : "simple",
13593 "max_size" : 1024,
13594 "with_counters" : false,
13595 "support_timeout" : false,
13596 "direct_meters" : null,
13597 "action_ids" : [52],
13598 "actions" : ["act_10"],
13599 "base_default_next" : "tbl_spgw_ingress_gtpu_decap",
13600 "next_tables" : {
13601 "act_10" : "tbl_spgw_ingress_gtpu_decap"
13602 },
13603 "default_entry" : {
13604 "action_id" : 52,
13605 "action_const" : true,
13606 "action_data" : [],
13607 "action_entry_const" : true
13608 }
13609 },
13610 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013611 "name" : "tbl_spgw_ingress_gtpu_decap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013612 "id" : 16,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013613 "key" : [],
13614 "match_type" : "exact",
13615 "type" : "simple",
13616 "max_size" : 1024,
13617 "with_counters" : false,
13618 "support_timeout" : false,
13619 "direct_meters" : null,
Charles Chan384aea22018-08-23 22:08:02 -070013620 "action_ids" : [13],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013621 "actions" : ["FabricIngress.spgw_ingress.gtpu_decap"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013622 "base_default_next" : "node_33",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013623 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013624 "FabricIngress.spgw_ingress.gtpu_decap" : "node_33"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013625 },
13626 "default_entry" : {
Charles Chan384aea22018-08-23 22:08:02 -070013627 "action_id" : 13,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013628 "action_const" : true,
13629 "action_data" : [],
13630 "action_entry_const" : true
13631 }
13632 },
13633 {
13634 "name" : "FabricIngress.spgw_ingress.dl_sess_lookup",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013635 "id" : 17,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013636 "source_info" : {
13637 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013638 "line" : 69,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013639 "column" : 10,
13640 "source_fragment" : "dl_sess_lookup"
13641 },
13642 "key" : [
13643 {
13644 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013645 "name" : "ipv4_dst",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013646 "target" : ["ipv4", "dst_addr"],
13647 "mask" : null
13648 }
13649 ],
13650 "match_type" : "exact",
13651 "type" : "simple",
13652 "max_size" : 1024,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013653 "with_counters" : true,
13654 "support_timeout" : false,
13655 "direct_meters" : null,
Charles Chan384aea22018-08-23 22:08:02 -070013656 "action_ids" : [14, 0],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013657 "actions" : ["FabricIngress.spgw_ingress.set_dl_sess_info", "nop"],
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013658 "base_default_next" : null,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013659 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013660 "__HIT__" : "tbl_act_12",
13661 "__MISS__" : "tbl_act_13"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013662 },
13663 "default_entry" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013664 "action_id" : 0,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013665 "action_const" : true,
13666 "action_data" : [],
13667 "action_entry_const" : true
13668 }
13669 },
13670 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013671 "name" : "tbl_act_12",
13672 "id" : 18,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013673 "key" : [],
13674 "match_type" : "exact",
13675 "type" : "simple",
13676 "max_size" : 1024,
13677 "with_counters" : false,
13678 "support_timeout" : false,
13679 "direct_meters" : null,
Charles Chancd03f072018-08-31 17:46:37 -070013680 "action_ids" : [53],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013681 "actions" : ["act_11"],
13682 "base_default_next" : "node_30",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013683 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013684 "act_11" : "node_30"
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013685 },
13686 "default_entry" : {
Charles Chancd03f072018-08-31 17:46:37 -070013687 "action_id" : 53,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013688 "action_const" : true,
13689 "action_data" : [],
13690 "action_entry_const" : true
13691 }
13692 },
13693 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013694 "name" : "tbl_act_13",
13695 "id" : 19,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013696 "key" : [],
13697 "match_type" : "exact",
13698 "type" : "simple",
13699 "max_size" : 1024,
13700 "with_counters" : false,
13701 "support_timeout" : false,
13702 "direct_meters" : null,
Charles Chancd03f072018-08-31 17:46:37 -070013703 "action_ids" : [54],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013704 "actions" : ["act_12"],
13705 "base_default_next" : "node_30",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013706 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013707 "act_12" : "node_30"
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013708 },
13709 "default_entry" : {
Charles Chancd03f072018-08-31 17:46:37 -070013710 "action_id" : 54,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013711 "action_const" : true,
13712 "action_data" : [],
13713 "action_entry_const" : true
13714 }
13715 },
13716 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013717 "name" : "tbl_act_14",
13718 "id" : 20,
13719 "key" : [],
13720 "match_type" : "exact",
13721 "type" : "simple",
13722 "max_size" : 1024,
13723 "with_counters" : false,
13724 "support_timeout" : false,
13725 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013726 "action_ids" : [55],
13727 "actions" : ["act_13"],
13728 "base_default_next" : "node_33",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013729 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013730 "act_13" : "node_33"
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013731 },
13732 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013733 "action_id" : 55,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013734 "action_const" : true,
13735 "action_data" : [],
13736 "action_entry_const" : true
13737 }
13738 },
13739 {
13740 "name" : "tbl_act_15",
13741 "id" : 21,
13742 "key" : [],
13743 "match_type" : "exact",
13744 "type" : "simple",
13745 "max_size" : 1024,
13746 "with_counters" : false,
13747 "support_timeout" : false,
13748 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013749 "action_ids" : [56],
13750 "actions" : ["act_14"],
13751 "base_default_next" : "node_33",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013752 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013753 "act_14" : "node_33"
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013754 },
13755 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013756 "action_id" : 56,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013757 "action_const" : true,
13758 "action_data" : [],
13759 "action_entry_const" : true
13760 }
13761 },
13762 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013763 "name" : "tbl_act_16",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013764 "id" : 22,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013765 "key" : [],
13766 "match_type" : "exact",
13767 "type" : "simple",
13768 "max_size" : 1024,
13769 "with_counters" : false,
13770 "support_timeout" : false,
13771 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013772 "action_ids" : [58],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013773 "actions" : ["act_16"],
13774 "base_default_next" : "node_35",
13775 "next_tables" : {
13776 "act_16" : "node_35"
13777 },
13778 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013779 "action_id" : 58,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070013780 "action_const" : true,
13781 "action_data" : [],
13782 "action_entry_const" : true
13783 }
13784 },
13785 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013786 "name" : "FabricIngress.forwarding.bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013787 "id" : 23,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013788 "source_info" : {
13789 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013790 "line" : 43,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013791 "column" : 10,
13792 "source_fragment" : "bridging"
13793 },
13794 "key" : [
13795 {
13796 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013797 "name" : "vlan_id",
13798 "target" : ["scalars", "fabric_metadata_t.vlan_id"],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013799 "mask" : null
13800 },
13801 {
13802 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013803 "name" : "eth_dst",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013804 "target" : ["ethernet", "dst_addr"],
13805 "mask" : null
13806 }
13807 ],
13808 "match_type" : "ternary",
13809 "type" : "simple",
13810 "max_size" : 1024,
13811 "with_counters" : true,
13812 "support_timeout" : false,
13813 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013814 "action_ids" : [21, 4],
13815 "actions" : ["FabricIngress.forwarding.set_next_id_bridging", "nop"],
13816 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013817 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013818 "FabricIngress.forwarding.set_next_id_bridging" : "FabricIngress.acl.acl",
13819 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013820 },
13821 "default_entry" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013822 "action_id" : 4,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013823 "action_const" : true,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013824 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013825 "action_entry_const" : true
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013826 }
13827 },
13828 {
13829 "name" : "FabricIngress.forwarding.mpls",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013830 "id" : 24,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013831 "source_info" : {
13832 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013833 "line" : 67,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013834 "column" : 10,
13835 "source_fragment" : "mpls"
13836 },
13837 "key" : [
13838 {
13839 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013840 "name" : "mpls_label",
13841 "target" : ["scalars", "fabric_metadata_t.mpls_label"],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013842 "mask" : null
13843 }
13844 ],
13845 "match_type" : "exact",
13846 "type" : "simple",
13847 "max_size" : 1024,
13848 "with_counters" : true,
13849 "support_timeout" : false,
13850 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013851 "action_ids" : [22, 5],
13852 "actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "nop"],
13853 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013854 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013855 "FabricIngress.forwarding.pop_mpls_and_next" : "FabricIngress.acl.acl",
13856 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013857 },
13858 "default_entry" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013859 "action_id" : 5,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013860 "action_const" : true,
13861 "action_data" : [],
13862 "action_entry_const" : true
13863 }
13864 },
13865 {
Charles Chan384aea22018-08-23 22:08:02 -070013866 "name" : "FabricIngress.forwarding.routing_v4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013867 "id" : 25,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013868 "source_info" : {
13869 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013870 "line" : 93,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013871 "column" : 10,
Charles Chan384aea22018-08-23 22:08:02 -070013872 "source_fragment" : "routing_v4"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013873 },
13874 "key" : [
13875 {
13876 "match_type" : "lpm",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013877 "name" : "ipv4_dst",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013878 "target" : ["ipv4", "dst_addr"],
13879 "mask" : null
13880 }
13881 ],
13882 "match_type" : "lpm",
13883 "type" : "simple",
13884 "max_size" : 1024,
13885 "with_counters" : true,
13886 "support_timeout" : false,
13887 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013888 "action_ids" : [23, 24, 6],
13889 "actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "nop"],
13890 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013891 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013892 "FabricIngress.forwarding.set_next_id_routing_v4" : "FabricIngress.acl.acl",
13893 "FabricIngress.forwarding.nop_routing_v4" : "FabricIngress.acl.acl",
13894 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013895 },
13896 "default_entry" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013897 "action_id" : 6,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013898 "action_const" : true,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013899 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013900 "action_entry_const" : true
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013901 }
13902 },
13903 {
Charles Chan384aea22018-08-23 22:08:02 -070013904 "name" : "FabricIngress.forwarding.routing_v6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013905 "id" : 26,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013906 "source_info" : {
13907 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013908 "line" : 117,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013909 "column" : 10,
Charles Chan384aea22018-08-23 22:08:02 -070013910 "source_fragment" : "routing_v6"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013911 },
13912 "key" : [
13913 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013914 "match_type" : "lpm",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013915 "name" : "ipv6_dst",
Charles Chan384aea22018-08-23 22:08:02 -070013916 "target" : ["ipv6", "dst_addr"],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013917 "mask" : null
13918 }
13919 ],
13920 "match_type" : "lpm",
13921 "type" : "simple",
13922 "max_size" : 1024,
13923 "with_counters" : true,
13924 "support_timeout" : false,
13925 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013926 "action_ids" : [25, 7],
13927 "actions" : ["FabricIngress.forwarding.set_next_id_routing_v6", "nop"],
13928 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013929 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013930 "FabricIngress.forwarding.set_next_id_routing_v6" : "FabricIngress.acl.acl",
13931 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013932 },
13933 "default_entry" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070013934 "action_id" : 7,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013935 "action_const" : true,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013936 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013937 "action_entry_const" : true
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013938 }
13939 },
13940 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013941 "name" : "FabricIngress.acl.acl",
13942 "id" : 27,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013943 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013944 "filename" : "include/control/acl.p4",
13945 "line" : 60,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013946 "column" : 10,
13947 "source_fragment" : "acl"
13948 },
13949 "key" : [
13950 {
13951 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013952 "name" : "ig_port",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013953 "target" : ["standard_metadata", "ingress_port"],
13954 "mask" : null
13955 },
13956 {
13957 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013958 "name" : "ip_proto",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013959 "target" : ["scalars", "fabric_metadata_t.ip_proto"],
13960 "mask" : null
13961 },
13962 {
13963 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013964 "name" : "l4_sport",
13965 "target" : ["scalars", "fabric_metadata_t.l4_sport"],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013966 "mask" : null
13967 },
13968 {
13969 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013970 "name" : "l4_dport",
13971 "target" : ["scalars", "fabric_metadata_t.l4_dport"],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013972 "mask" : null
13973 },
13974 {
13975 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013976 "name" : "eth_src",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013977 "target" : ["ethernet", "dst_addr"],
13978 "mask" : null
13979 },
13980 {
13981 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013982 "name" : "eth_dst",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013983 "target" : ["ethernet", "src_addr"],
13984 "mask" : null
13985 },
13986 {
13987 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013988 "name" : "vlan_id",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020013989 "target" : ["vlan_tag", "vlan_id"],
13990 "mask" : null
13991 },
13992 {
13993 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013994 "name" : "eth_type",
13995 "target" : ["scalars", "fabric_metadata_t.eth_type"],
Yi Tseng8235a1a2018-07-24 20:57:28 +080013996 "mask" : null
13997 },
13998 {
13999 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014000 "name" : "ipv4_src",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014001 "target" : ["ipv4", "src_addr"],
14002 "mask" : null
14003 },
14004 {
14005 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014006 "name" : "ipv4_dst",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014007 "target" : ["ipv4", "dst_addr"],
14008 "mask" : null
14009 },
14010 {
14011 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014012 "name" : "icmp_type",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014013 "target" : ["icmp", "icmp_type"],
14014 "mask" : null
14015 },
14016 {
14017 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014018 "name" : "icmp_code",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014019 "target" : ["icmp", "icmp_code"],
14020 "mask" : null
14021 }
14022 ],
14023 "match_type" : "ternary",
14024 "type" : "simple",
Yi Tseng8235a1a2018-07-24 20:57:28 +080014025 "max_size" : 128,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014026 "with_counters" : true,
14027 "support_timeout" : false,
14028 "direct_meters" : null,
Charles Chancd03f072018-08-31 17:46:37 -070014029 "action_ids" : [26, 27, 28, 29, 30],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014030 "actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.clone_to_cpu", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
14031 "base_default_next" : "node_45",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014032 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014033 "FabricIngress.acl.set_next_id_acl" : "node_45",
14034 "FabricIngress.acl.punt_to_cpu" : "node_45",
14035 "FabricIngress.acl.clone_to_cpu" : "node_45",
14036 "FabricIngress.acl.drop" : "node_45",
14037 "FabricIngress.acl.nop_acl" : "node_45"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014038 },
14039 "default_entry" : {
Charles Chancd03f072018-08-31 17:46:37 -070014040 "action_id" : 30,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014041 "action_const" : true,
14042 "action_data" : [],
14043 "action_entry_const" : true
14044 }
14045 },
14046 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014047 "name" : "FabricIngress.next.xconnect",
14048 "id" : 28,
14049 "source_info" : {
14050 "filename" : "include/control/next.p4",
14051 "line" : 103,
14052 "column" : 10,
14053 "source_fragment" : "xconnect"
14054 },
14055 "key" : [
14056 {
14057 "match_type" : "exact",
14058 "name" : "ig_port",
14059 "target" : ["standard_metadata", "ingress_port"],
14060 "mask" : null
14061 },
14062 {
14063 "match_type" : "exact",
14064 "name" : "next_id",
14065 "target" : ["scalars", "fabric_metadata_t.next_id"],
14066 "mask" : null
14067 }
14068 ],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014069 "match_type" : "exact",
14070 "type" : "simple",
14071 "max_size" : 1024,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014072 "with_counters" : true,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014073 "support_timeout" : false,
14074 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014075 "action_ids" : [32, 33, 9],
14076 "actions" : ["FabricIngress.next.output_xconnect", "FabricIngress.next.set_next_id_xconnect", "nop"],
14077 "base_default_next" : "FabricIngress.next.simple",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014078 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014079 "FabricIngress.next.output_xconnect" : "FabricIngress.next.simple",
14080 "FabricIngress.next.set_next_id_xconnect" : "FabricIngress.next.simple",
14081 "nop" : "FabricIngress.next.simple"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014082 },
14083 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014084 "action_id" : 9,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014085 "action_const" : true,
14086 "action_data" : [],
14087 "action_entry_const" : true
14088 }
14089 },
14090 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014091 "name" : "FabricIngress.next.simple",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014092 "id" : 29,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014093 "source_info" : {
14094 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014095 "line" : 141,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014096 "column" : 10,
14097 "source_fragment" : "simple"
14098 },
14099 "key" : [
14100 {
14101 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014102 "name" : "next_id",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014103 "target" : ["scalars", "fabric_metadata_t.next_id"],
14104 "mask" : null
14105 }
14106 ],
14107 "match_type" : "exact",
14108 "type" : "simple",
14109 "max_size" : 1024,
14110 "with_counters" : true,
14111 "support_timeout" : false,
14112 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014113 "action_ids" : [34, 35, 36, 10],
14114 "actions" : ["FabricIngress.next.output_simple", "FabricIngress.next.routing_simple", "FabricIngress.next.mpls_routing_simple", "nop"],
14115 "base_default_next" : "FabricIngress.next.hashed",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014116 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014117 "FabricIngress.next.output_simple" : "FabricIngress.next.hashed",
14118 "FabricIngress.next.routing_simple" : "FabricIngress.next.hashed",
14119 "FabricIngress.next.mpls_routing_simple" : "FabricIngress.next.hashed",
14120 "nop" : "FabricIngress.next.hashed"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014121 },
14122 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014123 "action_id" : 10,
14124 "action_const" : true,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014125 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014126 "action_entry_const" : true
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014127 }
14128 },
14129 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014130 "name" : "FabricIngress.next.hashed",
14131 "id" : 30,
14132 "source_info" : {
14133 "filename" : "include/control/next.p4",
14134 "line" : 180,
14135 "column" : 10,
14136 "source_fragment" : "hashed"
14137 },
14138 "key" : [
14139 {
14140 "match_type" : "exact",
14141 "name" : "next_id",
14142 "target" : ["scalars", "fabric_metadata_t.next_id"],
14143 "mask" : null
14144 }
14145 ],
14146 "match_type" : "exact",
14147 "type" : "indirect_ws",
14148 "action_profile" : "FabricIngress.next.hashed_selector",
14149 "max_size" : 1024,
14150 "with_counters" : true,
14151 "support_timeout" : false,
14152 "direct_meters" : null,
14153 "action_ids" : [37, 38, 39, 11],
14154 "actions" : ["FabricIngress.next.output_hashed", "FabricIngress.next.routing_hashed", "FabricIngress.next.mpls_routing_hashed", "nop"],
14155 "base_default_next" : "FabricIngress.next.multicast",
14156 "next_tables" : {
14157 "FabricIngress.next.output_hashed" : "FabricIngress.next.multicast",
14158 "FabricIngress.next.routing_hashed" : "FabricIngress.next.multicast",
14159 "FabricIngress.next.mpls_routing_hashed" : "FabricIngress.next.multicast",
14160 "nop" : "FabricIngress.next.multicast"
14161 }
14162 },
14163 {
14164 "name" : "FabricIngress.next.multicast",
14165 "id" : 31,
14166 "source_info" : {
14167 "filename" : "include/control/next.p4",
14168 "line" : 213,
14169 "column" : 10,
14170 "source_fragment" : "multicast"
14171 },
14172 "key" : [
14173 {
14174 "match_type" : "exact",
14175 "name" : "next_id",
14176 "target" : ["scalars", "fabric_metadata_t.next_id"],
14177 "mask" : null
14178 }
14179 ],
14180 "match_type" : "exact",
14181 "type" : "simple",
14182 "max_size" : 1024,
14183 "with_counters" : true,
14184 "support_timeout" : false,
14185 "direct_meters" : null,
14186 "action_ids" : [40, 12],
14187 "actions" : ["FabricIngress.next.set_mcast_group_id", "nop"],
14188 "base_default_next" : "FabricIngress.next.next_vlan",
14189 "next_tables" : {
14190 "FabricIngress.next.set_mcast_group_id" : "FabricIngress.next.next_vlan",
14191 "nop" : "FabricIngress.next.next_vlan"
14192 },
14193 "default_entry" : {
14194 "action_id" : 12,
14195 "action_const" : true,
14196 "action_data" : [],
14197 "action_entry_const" : true
14198 }
14199 },
14200 {
14201 "name" : "FabricIngress.next.next_vlan",
14202 "id" : 32,
14203 "source_info" : {
14204 "filename" : "include/control/next.p4",
14205 "line" : 74,
14206 "column" : 10,
14207 "source_fragment" : "next_vlan"
14208 },
14209 "key" : [
14210 {
14211 "match_type" : "exact",
14212 "name" : "next_id",
14213 "target" : ["scalars", "fabric_metadata_t.next_id"],
14214 "mask" : null
14215 }
14216 ],
14217 "match_type" : "exact",
14218 "type" : "simple",
14219 "max_size" : 1024,
14220 "with_counters" : true,
14221 "support_timeout" : false,
14222 "direct_meters" : null,
14223 "action_ids" : [31, 8],
14224 "actions" : ["FabricIngress.next.set_vlan", "nop"],
14225 "base_default_next" : "node_51",
14226 "next_tables" : {
14227 "FabricIngress.next.set_vlan" : "node_51",
14228 "nop" : "node_51"
14229 },
14230 "default_entry" : {
14231 "action_id" : 8,
14232 "action_const" : true,
14233 "action_data" : [],
14234 "action_entry_const" : true
14235 }
14236 },
14237 {
14238 "name" : "tbl_act_17",
Charles Chan384aea22018-08-23 22:08:02 -070014239 "id" : 33,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014240 "key" : [],
14241 "match_type" : "exact",
14242 "type" : "simple",
14243 "max_size" : 1024,
14244 "with_counters" : false,
14245 "support_timeout" : false,
14246 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014247 "action_ids" : [59],
14248 "actions" : ["act_17"],
14249 "base_default_next" : "node_53",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014250 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014251 "act_17" : "node_53"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014252 },
14253 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014254 "action_id" : 59,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014255 "action_const" : true,
14256 "action_data" : [],
14257 "action_entry_const" : true
14258 }
14259 },
14260 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014261 "name" : "tbl_act_18",
Charles Chan384aea22018-08-23 22:08:02 -070014262 "id" : 34,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014263 "key" : [],
14264 "match_type" : "exact",
14265 "type" : "simple",
14266 "max_size" : 1024,
14267 "with_counters" : false,
14268 "support_timeout" : false,
14269 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014270 "action_ids" : [60],
14271 "actions" : ["act_18"],
Charles Chan384aea22018-08-23 22:08:02 -070014272 "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014273 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014274 "act_18" : "FabricIngress.process_set_source_sink.tb_set_source"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014275 },
14276 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014277 "action_id" : 60,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014278 "action_const" : true,
14279 "action_data" : [],
14280 "action_entry_const" : true
14281 }
14282 },
14283 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070014284 "name" : "FabricIngress.process_set_source_sink.tb_set_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014285 "id" : 35,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014286 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070014287 "filename" : "include/int/int_main.p4",
14288 "line" : 46,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014289 "column" : 10,
14290 "source_fragment" : "tb_set_source"
14291 },
14292 "key" : [
14293 {
14294 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014295 "name" : "ig_port",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014296 "target" : ["standard_metadata", "ingress_port"],
14297 "mask" : null
14298 }
14299 ],
14300 "match_type" : "exact",
14301 "type" : "simple",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070014302 "max_size" : 511,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014303 "with_counters" : true,
14304 "support_timeout" : false,
14305 "direct_meters" : null,
Charles Chan384aea22018-08-23 22:08:02 -070014306 "action_ids" : [15, 2],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014307 "actions" : ["FabricIngress.process_set_source_sink.int_set_source", "nop"],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014308 "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_sink",
14309 "next_tables" : {
14310 "FabricIngress.process_set_source_sink.int_set_source" : "FabricIngress.process_set_source_sink.tb_set_sink",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014311 "nop" : "FabricIngress.process_set_source_sink.tb_set_sink"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014312 },
14313 "default_entry" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014314 "action_id" : 2,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014315 "action_const" : true,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014316 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014317 "action_entry_const" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014318 }
14319 },
14320 {
14321 "name" : "FabricIngress.process_set_source_sink.tb_set_sink",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014322 "id" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014323 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070014324 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014325 "line" : 67,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014326 "column" : 10,
14327 "source_fragment" : "tb_set_sink"
14328 },
14329 "key" : [
14330 {
14331 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014332 "name" : "eg_spec",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014333 "target" : ["standard_metadata", "egress_spec"],
14334 "mask" : null
14335 }
14336 ],
14337 "match_type" : "exact",
14338 "type" : "simple",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070014339 "max_size" : 511,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014340 "with_counters" : true,
14341 "support_timeout" : false,
14342 "direct_meters" : null,
Charles Chan384aea22018-08-23 22:08:02 -070014343 "action_ids" : [16, 3],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014344 "actions" : ["FabricIngress.process_set_source_sink.int_set_sink", "nop"],
14345 "base_default_next" : "node_57",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014346 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014347 "FabricIngress.process_set_source_sink.int_set_sink" : "node_57",
14348 "nop" : "node_57"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014349 },
14350 "default_entry" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014351 "action_id" : 3,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014352 "action_const" : true,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014353 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014354 "action_entry_const" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014355 }
14356 },
14357 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014358 "name" : "tbl_act_19",
14359 "id" : 37,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014360 "key" : [],
14361 "match_type" : "exact",
14362 "type" : "simple",
14363 "max_size" : 1024,
14364 "with_counters" : false,
14365 "support_timeout" : false,
14366 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014367 "action_ids" : [61],
14368 "actions" : ["act_19"],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014369 "base_default_next" : null,
14370 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014371 "act_19" : null
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014372 },
14373 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014374 "action_id" : 61,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014375 "action_const" : true,
14376 "action_data" : [],
14377 "action_entry_const" : true
14378 }
14379 }
14380 ],
14381 "action_profiles" : [
14382 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014383 "name" : "FabricIngress.next.hashed_selector",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014384 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014385 "source_info" : {
14386 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014387 "line" : 161,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014388 "column" : 55,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014389 "source_fragment" : "hashed_selector"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014390 },
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014391 "max_size" : 64,
14392 "selector" : {
14393 "algo" : "crc16",
14394 "input" : [
14395 {
14396 "type" : "field",
14397 "value" : ["ipv4", "dst_addr"]
14398 },
14399 {
14400 "type" : "field",
14401 "value" : ["ipv4", "src_addr"]
14402 },
14403 {
14404 "type" : "field",
14405 "value" : ["scalars", "fabric_metadata_t.ip_proto"]
14406 },
14407 {
14408 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014409 "value" : ["scalars", "fabric_metadata_t.l4_sport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014410 },
14411 {
14412 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014413 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014414 }
14415 ]
14416 }
14417 }
14418 ],
14419 "conditionals" : [
14420 {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014421 "name" : "node_3",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014422 "id" : 0,
14423 "source_info" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014424 "filename" : "include/spgw.p4",
14425 "line" : 30,
14426 "column" : 12,
14427 "source_fragment" : "! is_gtpu_encapped"
14428 },
14429 "expression" : {
14430 "type" : "expression",
14431 "value" : {
14432 "op" : "not",
14433 "left" : null,
14434 "right" : {
14435 "type" : "expression",
14436 "value" : {
14437 "op" : "d2b",
14438 "left" : null,
14439 "right" : {
14440 "type" : "field",
14441 "value" : ["gtpu", "$valid$"]
14442 }
14443 }
14444 }
14445 }
14446 },
14447 "true_next" : "tbl_act_0",
14448 "false_next" : "node_5"
14449 },
14450 {
14451 "name" : "node_5",
14452 "id" : 1,
14453 "expression" : {
14454 "type" : "expression",
14455 "value" : {
14456 "op" : "not",
14457 "left" : null,
14458 "right" : {
14459 "type" : "expression",
14460 "value" : {
14461 "op" : "d2b",
14462 "left" : null,
14463 "right" : {
14464 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014465 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014466 }
14467 }
14468 }
14469 }
14470 },
14471 "true_next" : "tbl_act_1",
14472 "false_next" : "node_10"
14473 },
14474 {
14475 "name" : "node_7",
14476 "id" : 2,
14477 "source_info" : {
14478 "filename" : "include/spgw.p4",
14479 "line" : 34,
14480 "column" : 12,
14481 "source_fragment" : "inner_udp.isValid()"
14482 },
14483 "expression" : {
14484 "type" : "expression",
14485 "value" : {
14486 "op" : "d2b",
14487 "left" : null,
14488 "right" : {
14489 "type" : "field",
14490 "value" : ["inner_udp", "$valid$"]
14491 }
14492 }
14493 },
14494 "true_next" : "tbl_act_2",
14495 "false_next" : "tbl_act_3"
14496 },
14497 {
14498 "name" : "node_10",
14499 "id" : 3,
14500 "source_info" : {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014501 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014502 "line" : 24,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014503 "column" : 12,
14504 "source_fragment" : "hdr.packet_out.isValid()"
14505 },
14506 "expression" : {
14507 "type" : "expression",
14508 "value" : {
14509 "op" : "d2b",
14510 "left" : null,
14511 "right" : {
14512 "type" : "field",
14513 "value" : ["packet_out", "$valid$"]
14514 }
14515 }
14516 },
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014517 "true_next" : "tbl_act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014518 "false_next" : "node_12"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014519 },
14520 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014521 "name" : "node_12",
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014522 "id" : 4,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014523 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014524 "filename" : "include/control/filtering.p4",
14525 "line" : 102,
14526 "column" : 12,
14527 "source_fragment" : "hdr.vlan_tag.isValid()"
14528 },
14529 "expression" : {
14530 "type" : "expression",
14531 "value" : {
14532 "op" : "d2b",
14533 "left" : null,
14534 "right" : {
14535 "type" : "field",
14536 "value" : ["vlan_tag", "$valid$"]
14537 }
14538 }
14539 },
14540 "true_next" : "tbl_act_5",
14541 "false_next" : "node_14"
14542 },
14543 {
14544 "name" : "node_14",
14545 "id" : 5,
14546 "source_info" : {
14547 "filename" : "include/control/filtering.p4",
14548 "line" : 108,
14549 "column" : 12,
14550 "source_fragment" : "!hdr.mpls.isValid()"
14551 },
14552 "expression" : {
14553 "type" : "expression",
14554 "value" : {
14555 "op" : "not",
14556 "left" : null,
14557 "right" : {
14558 "type" : "expression",
14559 "value" : {
14560 "op" : "d2b",
14561 "left" : null,
14562 "right" : {
14563 "type" : "field",
14564 "value" : ["mpls", "$valid$"]
14565 }
14566 }
14567 }
14568 }
14569 },
14570 "true_next" : "tbl_act_6",
14571 "false_next" : "FabricIngress.filtering.ingress_port_vlan"
14572 },
14573 {
14574 "name" : "node_19",
14575 "id" : 6,
14576 "source_info" : {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014577 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014578 "line" : 143,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014579 "column" : 12,
14580 "source_fragment" : "gtpu.isValid()"
14581 },
14582 "expression" : {
14583 "type" : "expression",
14584 "value" : {
14585 "op" : "d2b",
14586 "left" : null,
14587 "right" : {
14588 "type" : "field",
14589 "value" : ["gtpu", "$valid$"]
14590 }
14591 }
14592 },
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014593 "true_next" : "FabricIngress.spgw_ingress.s1u_filter_table",
14594 "false_next" : "FabricIngress.spgw_ingress.dl_sess_lookup"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014595 },
14596 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014597 "name" : "node_23",
14598 "id" : 7,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014599 "source_info" : {
14600 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014601 "line" : 147,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014602 "column" : 16,
14603 "source_fragment" : "!s1u_filter_table.apply().hit"
14604 },
14605 "expression" : {
14606 "type" : "expression",
14607 "value" : {
14608 "op" : "not",
14609 "left" : null,
14610 "right" : {
14611 "type" : "expression",
14612 "value" : {
14613 "op" : "d2b",
14614 "left" : null,
14615 "right" : {
14616 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014617 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014618 }
14619 }
14620 }
14621 }
14622 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014623 "true_next" : "tbl_act_10",
14624 "false_next" : "tbl_act_11"
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070014625 },
14626 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014627 "name" : "node_30",
14628 "id" : 8,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014629 "expression" : {
14630 "type" : "expression",
14631 "value" : {
14632 "op" : "d2b",
14633 "left" : null,
14634 "right" : {
14635 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014636 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014637 }
14638 }
14639 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014640 "true_next" : "tbl_act_14",
14641 "false_next" : "tbl_act_15"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014642 },
14643 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014644 "name" : "node_33",
14645 "id" : 9,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014646 "expression" : {
14647 "type" : "expression",
14648 "value" : {
14649 "op" : "not",
14650 "left" : null,
14651 "right" : {
14652 "type" : "expression",
14653 "value" : {
14654 "op" : "d2b",
14655 "left" : null,
14656 "right" : {
14657 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014658 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014659 }
14660 }
14661 }
14662 }
14663 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014664 "true_next" : "tbl_act_16",
14665 "false_next" : "node_35"
Carmelo Cascone8a715f82018-08-20 23:16:27 -070014666 },
14667 {
14668 "name" : "node_35",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014669 "id" : 10,
14670 "source_info" : {
14671 "filename" : "fabric.p4",
14672 "line" : 66,
14673 "column" : 12,
14674 "source_fragment" : "fabric_metadata.skip_forwarding == false"
14675 },
14676 "expression" : {
14677 "type" : "expression",
14678 "value" : {
14679 "op" : "==",
14680 "left" : {
14681 "type" : "expression",
14682 "value" : {
14683 "op" : "d2b",
14684 "left" : null,
14685 "right" : {
14686 "type" : "field",
14687 "value" : ["scalars", "fabric_metadata_t.skip_forwarding"]
14688 }
14689 }
14690 },
14691 "right" : {
14692 "type" : "bool",
14693 "value" : false
14694 }
14695 }
14696 },
14697 "true_next" : "node_36",
14698 "false_next" : "FabricIngress.acl.acl"
14699 },
14700 {
14701 "name" : "node_36",
14702 "id" : 11,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014703 "source_info" : {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014704 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014705 "line" : 131,
14706 "column" : 12,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014707 "source_fragment" : "fabric_metadata.fwd_type == FWD_BRIDGING"
14708 },
14709 "expression" : {
14710 "type" : "expression",
14711 "value" : {
14712 "op" : "==",
14713 "left" : {
14714 "type" : "field",
14715 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
14716 },
14717 "right" : {
14718 "type" : "hexstr",
14719 "value" : "0x00"
14720 }
14721 }
14722 },
14723 "true_next" : "FabricIngress.forwarding.bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014724 "false_next" : "node_38"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014725 },
14726 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014727 "name" : "node_38",
14728 "id" : 12,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014729 "source_info" : {
14730 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014731 "line" : 132,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014732 "column" : 17,
14733 "source_fragment" : "fabric_metadata.fwd_type == FWD_MPLS"
14734 },
14735 "expression" : {
14736 "type" : "expression",
14737 "value" : {
14738 "op" : "==",
14739 "left" : {
14740 "type" : "field",
14741 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
14742 },
14743 "right" : {
14744 "type" : "hexstr",
14745 "value" : "0x01"
14746 }
14747 }
14748 },
14749 "true_next" : "FabricIngress.forwarding.mpls",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070014750 "false_next" : "node_40"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014751 },
14752 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070014753 "name" : "node_40",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014754 "id" : 13,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014755 "source_info" : {
14756 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014757 "line" : 133,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014758 "column" : 17,
14759 "source_fragment" : "fabric_metadata.fwd_type == FWD_IPV4_UNICAST"
14760 },
14761 "expression" : {
14762 "type" : "expression",
14763 "value" : {
14764 "op" : "==",
14765 "left" : {
14766 "type" : "field",
14767 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
14768 },
14769 "right" : {
14770 "type" : "hexstr",
14771 "value" : "0x02"
14772 }
14773 }
14774 },
Charles Chan384aea22018-08-23 22:08:02 -070014775 "true_next" : "FabricIngress.forwarding.routing_v4",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070014776 "false_next" : "node_42"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014777 },
14778 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070014779 "name" : "node_42",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014780 "id" : 14,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014781 "source_info" : {
14782 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014783 "line" : 135,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014784 "column" : 17,
14785 "source_fragment" : "fabric_metadata.fwd_type == FWD_IPV6_UNICAST"
14786 },
14787 "expression" : {
14788 "type" : "expression",
14789 "value" : {
14790 "op" : "==",
14791 "left" : {
14792 "type" : "field",
14793 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
14794 },
14795 "right" : {
14796 "type" : "hexstr",
14797 "value" : "0x04"
14798 }
14799 }
14800 },
Charles Chan384aea22018-08-23 22:08:02 -070014801 "true_next" : "FabricIngress.forwarding.routing_v6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014802 "false_next" : "FabricIngress.acl.acl"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014803 },
14804 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014805 "name" : "node_45",
Charles Chan384aea22018-08-23 22:08:02 -070014806 "id" : 15,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014807 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014808 "filename" : "fabric.p4",
14809 "line" : 70,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014810 "column" : 12,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014811 "source_fragment" : "fabric_metadata.skip_next == false"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014812 },
14813 "expression" : {
14814 "type" : "expression",
14815 "value" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014816 "op" : "==",
14817 "left" : {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014818 "type" : "expression",
14819 "value" : {
14820 "op" : "d2b",
14821 "left" : null,
14822 "right" : {
14823 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014824 "value" : ["scalars", "fabric_metadata_t.skip_next"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014825 }
14826 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014827 },
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014828 "right" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014829 "type" : "bool",
14830 "value" : false
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014831 }
14832 }
14833 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014834 "false_next" : null,
14835 "true_next" : "FabricIngress.next.xconnect"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014836 },
14837 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014838 "name" : "node_51",
14839 "id" : 16,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014840 "source_info" : {
14841 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014842 "line" : 30,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014843 "column" : 12,
14844 "source_fragment" : "standard_metadata.egress_spec < 511"
14845 },
14846 "expression" : {
14847 "type" : "expression",
14848 "value" : {
14849 "op" : "<",
14850 "left" : {
14851 "type" : "field",
14852 "value" : ["standard_metadata", "egress_spec"]
14853 },
14854 "right" : {
14855 "type" : "hexstr",
14856 "value" : "0x01ff"
14857 }
14858 }
14859 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014860 "true_next" : "tbl_act_17",
14861 "false_next" : "node_53"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014862 },
14863 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014864 "name" : "node_53",
14865 "id" : 17,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014866 "source_info" : {
14867 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014868 "line" : 33,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014869 "column" : 12,
14870 "source_fragment" : "standard_metadata.ingress_port < 511"
14871 },
14872 "expression" : {
14873 "type" : "expression",
14874 "value" : {
14875 "op" : "<",
14876 "left" : {
14877 "type" : "field",
14878 "value" : ["standard_metadata", "ingress_port"]
14879 },
14880 "right" : {
14881 "type" : "hexstr",
14882 "value" : "0x01ff"
14883 }
14884 }
14885 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014886 "true_next" : "tbl_act_18",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014887 "false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
14888 },
14889 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014890 "name" : "node_57",
14891 "id" : 18,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014892 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070014893 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014894 "line" : 86,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014895 "column" : 11,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070014896 "source_fragment" : "fabric_metadata.int_meta.sink == true"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014897 },
14898 "expression" : {
14899 "type" : "expression",
14900 "value" : {
14901 "op" : "==",
14902 "left" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070014903 "type" : "expression",
14904 "value" : {
14905 "op" : "d2b",
14906 "left" : null,
14907 "right" : {
14908 "type" : "field",
14909 "value" : ["userMetadata.int_meta", "sink"]
14910 }
14911 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014912 },
14913 "right" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070014914 "type" : "bool",
14915 "value" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090014916 }
14917 }
14918 },
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014919 "false_next" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014920 "true_next" : "tbl_act_19"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014921 }
14922 ]
14923 },
14924 {
14925 "name" : "egress",
14926 "id" : 1,
14927 "source_info" : {
14928 "filename" : "fabric.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014929 "line" : 84,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014930 "column" : 8,
14931 "source_fragment" : "FabricEgress"
14932 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014933 "init_table" : "node_61",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014934 "tables" : [
14935 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014936 "name" : "tbl_act_20",
14937 "id" : 38,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020014938 "key" : [],
14939 "match_type" : "exact",
14940 "type" : "simple",
14941 "max_size" : 1024,
14942 "with_counters" : false,
14943 "support_timeout" : false,
14944 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014945 "action_ids" : [110],
14946 "actions" : ["act_20"],
14947 "base_default_next" : "tbl_act_21",
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014948 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014949 "act_20" : "tbl_act_21"
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014950 },
14951 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014952 "action_id" : 110,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014953 "action_const" : true,
14954 "action_data" : [],
14955 "action_entry_const" : true
14956 }
14957 },
14958 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014959 "name" : "tbl_act_21",
14960 "id" : 39,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014961 "key" : [],
14962 "match_type" : "exact",
14963 "type" : "simple",
14964 "max_size" : 1024,
14965 "with_counters" : false,
14966 "support_timeout" : false,
14967 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014968 "action_ids" : [111],
14969 "actions" : ["act_21"],
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014970 "base_default_next" : null,
14971 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014972 "act_21" : null
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014973 },
14974 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014975 "action_id" : 111,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014976 "action_const" : true,
14977 "action_data" : [],
14978 "action_entry_const" : true
14979 }
14980 },
14981 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014982 "name" : "tbl_act_22",
14983 "id" : 40,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014984 "key" : [],
14985 "match_type" : "exact",
14986 "type" : "simple",
14987 "max_size" : 1024,
14988 "with_counters" : false,
14989 "support_timeout" : false,
14990 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014991 "action_ids" : [112],
14992 "actions" : ["act_22"],
14993 "base_default_next" : "node_68",
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014994 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014995 "act_22" : "node_68"
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070014996 },
14997 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014998 "action_id" : 112,
14999 "action_const" : true,
15000 "action_data" : [],
15001 "action_entry_const" : true
15002 }
15003 },
15004 {
15005 "name" : "tbl_egress_next_pop_mpls_if_present",
15006 "id" : 41,
15007 "key" : [],
15008 "match_type" : "exact",
15009 "type" : "simple",
15010 "max_size" : 1024,
15011 "with_counters" : false,
15012 "support_timeout" : false,
15013 "direct_meters" : null,
15014 "action_ids" : [106],
15015 "actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
15016 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
15017 "next_tables" : {
15018 "FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
15019 },
15020 "default_entry" : {
15021 "action_id" : 106,
15022 "action_const" : true,
15023 "action_data" : [],
15024 "action_entry_const" : true
15025 }
15026 },
15027 {
15028 "name" : "tbl_egress_next_set_mpls",
15029 "id" : 42,
15030 "key" : [],
15031 "match_type" : "exact",
15032 "type" : "simple",
15033 "max_size" : 1024,
15034 "with_counters" : false,
15035 "support_timeout" : false,
15036 "direct_meters" : null,
15037 "action_ids" : [107],
15038 "actions" : ["FabricEgress.egress_next.set_mpls"],
15039 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
15040 "next_tables" : {
15041 "FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
15042 },
15043 "default_entry" : {
15044 "action_id" : 107,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070015045 "action_const" : true,
15046 "action_data" : [],
15047 "action_entry_const" : true
15048 }
15049 },
15050 {
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015051 "name" : "FabricEgress.egress_next.egress_vlan",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015052 "id" : 43,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015053 "source_info" : {
15054 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015055 "line" : 285,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015056 "column" : 10,
15057 "source_fragment" : "egress_vlan"
15058 },
15059 "key" : [
15060 {
15061 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015062 "name" : "vlan_id",
15063 "target" : ["scalars", "fabric_metadata_t.vlan_id"],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015064 "mask" : null
15065 },
15066 {
15067 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015068 "name" : "eg_port",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015069 "target" : ["standard_metadata", "egress_port"],
15070 "mask" : null
15071 }
15072 ],
15073 "match_type" : "exact",
15074 "type" : "simple",
15075 "max_size" : 1024,
15076 "with_counters" : true,
15077 "support_timeout" : false,
15078 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015079 "action_ids" : [109, 65],
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015080 "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015081 "base_default_next" : null,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015082 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015083 "__HIT__" : "tbl_act_23",
15084 "__MISS__" : "tbl_act_24"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015085 },
15086 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015087 "action_id" : 65,
15088 "action_const" : true,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015089 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015090 "action_entry_const" : true
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020015091 }
15092 },
15093 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015094 "name" : "tbl_act_23",
15095 "id" : 44,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070015096 "key" : [],
15097 "match_type" : "exact",
15098 "type" : "simple",
15099 "max_size" : 1024,
15100 "with_counters" : false,
15101 "support_timeout" : false,
15102 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015103 "action_ids" : [113],
15104 "actions" : ["act_23"],
15105 "base_default_next" : "node_75",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070015106 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015107 "act_23" : "node_75"
Carmelo Cascone8a715f82018-08-20 23:16:27 -070015108 },
15109 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015110 "action_id" : 113,
15111 "action_const" : true,
15112 "action_data" : [],
15113 "action_entry_const" : true
15114 }
15115 },
15116 {
15117 "name" : "tbl_act_24",
15118 "id" : 45,
15119 "key" : [],
15120 "match_type" : "exact",
15121 "type" : "simple",
15122 "max_size" : 1024,
15123 "with_counters" : false,
15124 "support_timeout" : false,
15125 "direct_meters" : null,
15126 "action_ids" : [114],
15127 "actions" : ["act_24"],
15128 "base_default_next" : "node_75",
15129 "next_tables" : {
15130 "act_24" : "node_75"
15131 },
15132 "default_entry" : {
15133 "action_id" : 114,
15134 "action_const" : true,
15135 "action_data" : [],
15136 "action_entry_const" : true
15137 }
15138 },
15139 {
15140 "name" : "tbl_egress_next_push_vlan",
15141 "id" : 46,
15142 "key" : [],
15143 "match_type" : "exact",
15144 "type" : "simple",
15145 "max_size" : 1024,
15146 "with_counters" : false,
15147 "support_timeout" : false,
15148 "direct_meters" : null,
15149 "action_ids" : [108],
15150 "actions" : ["FabricEgress.egress_next.push_vlan"],
15151 "base_default_next" : "node_78",
15152 "next_tables" : {
15153 "FabricEgress.egress_next.push_vlan" : "node_78"
15154 },
15155 "default_entry" : {
15156 "action_id" : 108,
15157 "action_const" : true,
15158 "action_data" : [],
15159 "action_entry_const" : true
15160 }
15161 },
15162 {
15163 "name" : "tbl_act_25",
15164 "id" : 47,
15165 "key" : [],
15166 "match_type" : "exact",
15167 "type" : "simple",
15168 "max_size" : 1024,
15169 "with_counters" : false,
15170 "support_timeout" : false,
15171 "direct_meters" : null,
15172 "action_ids" : [116],
15173 "actions" : ["act_26"],
15174 "base_default_next" : "node_80",
15175 "next_tables" : {
15176 "act_26" : "node_80"
15177 },
15178 "default_entry" : {
15179 "action_id" : 116,
15180 "action_const" : true,
15181 "action_data" : [],
15182 "action_entry_const" : true
15183 }
15184 },
15185 {
15186 "name" : "tbl_act_26",
15187 "id" : 48,
15188 "key" : [],
15189 "match_type" : "exact",
15190 "type" : "simple",
15191 "max_size" : 1024,
15192 "with_counters" : false,
15193 "support_timeout" : false,
15194 "direct_meters" : null,
15195 "action_ids" : [115],
15196 "actions" : ["act_25"],
15197 "base_default_next" : "node_90",
15198 "next_tables" : {
15199 "act_25" : "node_90"
15200 },
15201 "default_entry" : {
15202 "action_id" : 115,
15203 "action_const" : true,
15204 "action_data" : [],
15205 "action_entry_const" : true
15206 }
15207 },
15208 {
15209 "name" : "tbl_act_27",
15210 "id" : 49,
15211 "key" : [],
15212 "match_type" : "exact",
15213 "type" : "simple",
15214 "max_size" : 1024,
15215 "with_counters" : false,
15216 "support_timeout" : false,
15217 "direct_meters" : null,
15218 "action_ids" : [118],
15219 "actions" : ["act_28"],
15220 "base_default_next" : "node_84",
15221 "next_tables" : {
15222 "act_28" : "node_84"
15223 },
15224 "default_entry" : {
15225 "action_id" : 118,
15226 "action_const" : true,
15227 "action_data" : [],
15228 "action_entry_const" : true
15229 }
15230 },
15231 {
15232 "name" : "tbl_act_28",
15233 "id" : 50,
15234 "key" : [],
15235 "match_type" : "exact",
15236 "type" : "simple",
15237 "max_size" : 1024,
15238 "with_counters" : false,
15239 "support_timeout" : false,
15240 "direct_meters" : null,
15241 "action_ids" : [117],
15242 "actions" : ["act_27"],
15243 "base_default_next" : "node_90",
15244 "next_tables" : {
15245 "act_27" : "node_90"
15246 },
15247 "default_entry" : {
15248 "action_id" : 117,
15249 "action_const" : true,
15250 "action_data" : [],
15251 "action_entry_const" : true
15252 }
15253 },
15254 {
15255 "name" : "tbl_act_29",
15256 "id" : 51,
15257 "key" : [],
15258 "match_type" : "exact",
15259 "type" : "simple",
15260 "max_size" : 1024,
15261 "with_counters" : false,
15262 "support_timeout" : false,
15263 "direct_meters" : null,
15264 "action_ids" : [120],
15265 "actions" : ["act_30"],
15266 "base_default_next" : "node_88",
15267 "next_tables" : {
15268 "act_30" : "node_88"
15269 },
15270 "default_entry" : {
15271 "action_id" : 120,
15272 "action_const" : true,
15273 "action_data" : [],
15274 "action_entry_const" : true
15275 }
15276 },
15277 {
15278 "name" : "tbl_act_30",
15279 "id" : 52,
15280 "key" : [],
15281 "match_type" : "exact",
15282 "type" : "simple",
15283 "max_size" : 1024,
15284 "with_counters" : false,
15285 "support_timeout" : false,
15286 "direct_meters" : null,
15287 "action_ids" : [119],
15288 "actions" : ["act_29"],
15289 "base_default_next" : "node_90",
15290 "next_tables" : {
15291 "act_29" : "node_90"
15292 },
15293 "default_entry" : {
15294 "action_id" : 119,
15295 "action_const" : true,
15296 "action_data" : [],
15297 "action_entry_const" : true
15298 }
15299 },
15300 {
15301 "name" : "tbl_spgw_egress_gtpu_encap",
15302 "id" : 53,
15303 "key" : [],
15304 "match_type" : "exact",
15305 "type" : "simple",
15306 "max_size" : 1024,
15307 "with_counters" : false,
15308 "support_timeout" : false,
15309 "direct_meters" : null,
15310 "action_ids" : [68],
15311 "actions" : ["FabricEgress.spgw_egress.gtpu_encap"],
15312 "base_default_next" : "node_92",
15313 "next_tables" : {
15314 "FabricEgress.spgw_egress.gtpu_encap" : "node_92"
15315 },
15316 "default_entry" : {
15317 "action_id" : 68,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015318 "action_const" : true,
15319 "action_data" : [],
15320 "action_entry_const" : true
15321 }
15322 },
15323 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015324 "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015325 "id" : 54,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015326 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015327 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015328 "line" : 66,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015329 "column" : 10,
15330 "source_fragment" : "tb_int_source"
15331 },
15332 "key" : [
15333 {
15334 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015335 "name" : "ipv4_src",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015336 "target" : ["ipv4", "src_addr"],
15337 "mask" : null
15338 },
15339 {
15340 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015341 "name" : "ipv4_dst",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015342 "target" : ["ipv4", "dst_addr"],
15343 "mask" : null
15344 },
15345 {
15346 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015347 "name" : "l4_sport",
15348 "target" : ["scalars", "fabric_metadata_t.l4_sport"],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015349 "mask" : null
15350 },
15351 {
15352 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015353 "name" : "l4_dport",
15354 "target" : ["scalars", "fabric_metadata_t.l4_dport"],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015355 "mask" : null
15356 }
15357 ],
15358 "match_type" : "ternary",
15359 "type" : "simple",
15360 "max_size" : 1024,
15361 "with_counters" : true,
15362 "support_timeout" : false,
15363 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015364 "action_ids" : [69, 62],
15365 "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
15366 "base_default_next" : "node_95",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015367 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015368 "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_95",
15369 "nop" : "node_95"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015370 },
15371 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015372 "action_id" : 62,
15373 "action_const" : true,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015374 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015375 "action_entry_const" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015376 }
15377 },
15378 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015379 "name" : "tbl_act_31",
15380 "id" : 55,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015381 "key" : [],
15382 "match_type" : "exact",
15383 "type" : "simple",
15384 "max_size" : 1024,
15385 "with_counters" : false,
15386 "support_timeout" : false,
15387 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015388 "action_ids" : [121],
15389 "actions" : ["act_31"],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015390 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
15391 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015392 "act_31" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015393 },
15394 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015395 "action_id" : 121,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015396 "action_const" : true,
15397 "action_data" : [],
15398 "action_entry_const" : true
15399 }
15400 },
15401 {
15402 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015403 "id" : 56,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015404 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015405 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015406 "line" : 315,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015407 "column" : 10,
15408 "source_fragment" : "tb_int_insert"
15409 },
Carmelo Casconefa421582018-09-13 10:05:57 -070015410 "key" : [
15411 {
15412 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015413 "name" : "int_is_valid",
Carmelo Casconefa421582018-09-13 10:05:57 -070015414 "target" : ["int_header", "$valid$"],
15415 "mask" : null
15416 }
15417 ],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015418 "match_type" : "exact",
15419 "type" : "simple",
Carmelo Casconefa421582018-09-13 10:05:57 -070015420 "max_size" : 1,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015421 "with_counters" : false,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015422 "support_timeout" : false,
15423 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015424 "action_ids" : [70, 63],
Carmelo Casconefa421582018-09-13 10:05:57 -070015425 "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015426 "base_default_next" : "node_98",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015427 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015428 "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_98",
15429 "nop" : "node_98"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015430 },
15431 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015432 "action_id" : 63,
Carmelo Casconefa421582018-09-13 10:05:57 -070015433 "action_const" : true,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015434 "action_data" : [],
Carmelo Casconefa421582018-09-13 10:05:57 -070015435 "action_entry_const" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015436 }
15437 },
15438 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015439 "name" : "tbl_act_32",
15440 "id" : 57,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015441 "key" : [],
15442 "match_type" : "exact",
15443 "type" : "simple",
15444 "max_size" : 1024,
15445 "with_counters" : false,
15446 "support_timeout" : false,
15447 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015448 "action_ids" : [122],
15449 "actions" : ["act_32"],
15450 "base_default_next" : "node_100",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015451 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015452 "act_32" : "node_100"
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015453 },
15454 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015455 "action_id" : 122,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015456 "action_const" : true,
15457 "action_data" : [],
15458 "action_entry_const" : true
15459 }
15460 },
15461 {
15462 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015463 "id" : 58,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015464 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015465 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015466 "line" : 331,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015467 "column" : 10,
15468 "source_fragment" : "tb_int_inst_0003"
15469 },
15470 "key" : [
15471 {
15472 "match_type" : "exact",
15473 "name" : "hdr.int_header.instruction_mask_0003",
15474 "target" : ["int_header", "instruction_mask_0003"],
15475 "mask" : null
15476 }
15477 ],
15478 "match_type" : "exact",
15479 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015480 "max_size" : 1024,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015481 "with_counters" : false,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015482 "support_timeout" : false,
15483 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015484 "action_ids" : [71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 66],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015485 "actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15", "NoAction"],
15486 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015487 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015488 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15489 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15490 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15491 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15492 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15493 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15494 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15495 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15496 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15497 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15498 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15499 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15500 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15501 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15502 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15503 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
15504 "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015505 },
15506 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015507 "action_id" : 66,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015508 "action_const" : false,
15509 "action_data" : [],
15510 "action_entry_const" : false
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015511 },
15512 "entries" : [
15513 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015514 "source_info" : {
15515 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015516 "line" : 354,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015517 "column" : 12,
15518 "source_fragment" : "(0x0) : int_set_header_0003_i0()"
15519 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015520 "match_key" : [
15521 {
15522 "match_type" : "exact",
15523 "key" : "0x00"
15524 }
15525 ],
15526 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015527 "action_id" : 71,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015528 "action_data" : []
15529 },
15530 "priority" : 1
15531 },
15532 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015533 "source_info" : {
15534 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015535 "line" : 355,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015536 "column" : 12,
15537 "source_fragment" : "(0x1) : int_set_header_0003_i1()"
15538 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015539 "match_key" : [
15540 {
15541 "match_type" : "exact",
15542 "key" : "0x01"
15543 }
15544 ],
15545 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015546 "action_id" : 72,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015547 "action_data" : []
15548 },
15549 "priority" : 2
15550 },
15551 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015552 "source_info" : {
15553 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015554 "line" : 356,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015555 "column" : 12,
15556 "source_fragment" : "(0x2) : int_set_header_0003_i2()"
15557 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015558 "match_key" : [
15559 {
15560 "match_type" : "exact",
15561 "key" : "0x02"
15562 }
15563 ],
15564 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015565 "action_id" : 73,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015566 "action_data" : []
15567 },
15568 "priority" : 3
15569 },
15570 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015571 "source_info" : {
15572 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015573 "line" : 357,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015574 "column" : 12,
15575 "source_fragment" : "(0x3) : int_set_header_0003_i3()"
15576 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015577 "match_key" : [
15578 {
15579 "match_type" : "exact",
15580 "key" : "0x03"
15581 }
15582 ],
15583 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015584 "action_id" : 74,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015585 "action_data" : []
15586 },
15587 "priority" : 4
15588 },
15589 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015590 "source_info" : {
15591 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015592 "line" : 358,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015593 "column" : 12,
15594 "source_fragment" : "(0x4) : int_set_header_0003_i4()"
15595 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015596 "match_key" : [
15597 {
15598 "match_type" : "exact",
15599 "key" : "0x04"
15600 }
15601 ],
15602 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015603 "action_id" : 75,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015604 "action_data" : []
15605 },
15606 "priority" : 5
15607 },
15608 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015609 "source_info" : {
15610 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015611 "line" : 359,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015612 "column" : 12,
15613 "source_fragment" : "(0x5) : int_set_header_0003_i5()"
15614 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015615 "match_key" : [
15616 {
15617 "match_type" : "exact",
15618 "key" : "0x05"
15619 }
15620 ],
15621 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015622 "action_id" : 76,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015623 "action_data" : []
15624 },
15625 "priority" : 6
15626 },
15627 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015628 "source_info" : {
15629 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015630 "line" : 360,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015631 "column" : 12,
15632 "source_fragment" : "(0x6) : int_set_header_0003_i6()"
15633 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015634 "match_key" : [
15635 {
15636 "match_type" : "exact",
15637 "key" : "0x06"
15638 }
15639 ],
15640 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015641 "action_id" : 77,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015642 "action_data" : []
15643 },
15644 "priority" : 7
15645 },
15646 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015647 "source_info" : {
15648 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015649 "line" : 361,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015650 "column" : 12,
15651 "source_fragment" : "(0x7) : int_set_header_0003_i7()"
15652 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015653 "match_key" : [
15654 {
15655 "match_type" : "exact",
15656 "key" : "0x07"
15657 }
15658 ],
15659 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015660 "action_id" : 78,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015661 "action_data" : []
15662 },
15663 "priority" : 8
15664 },
15665 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015666 "source_info" : {
15667 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015668 "line" : 362,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015669 "column" : 12,
15670 "source_fragment" : "(0x8) : int_set_header_0003_i8()"
15671 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015672 "match_key" : [
15673 {
15674 "match_type" : "exact",
15675 "key" : "0x08"
15676 }
15677 ],
15678 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015679 "action_id" : 79,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015680 "action_data" : []
15681 },
15682 "priority" : 9
15683 },
15684 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015685 "source_info" : {
15686 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015687 "line" : 363,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015688 "column" : 12,
15689 "source_fragment" : "(0x9) : int_set_header_0003_i9()"
15690 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015691 "match_key" : [
15692 {
15693 "match_type" : "exact",
15694 "key" : "0x09"
15695 }
15696 ],
15697 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015698 "action_id" : 80,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015699 "action_data" : []
15700 },
15701 "priority" : 10
15702 },
15703 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015704 "source_info" : {
15705 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015706 "line" : 364,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015707 "column" : 12,
15708 "source_fragment" : "(0xA) : int_set_header_0003_i10()"
15709 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015710 "match_key" : [
15711 {
15712 "match_type" : "exact",
15713 "key" : "0x0a"
15714 }
15715 ],
15716 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015717 "action_id" : 81,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015718 "action_data" : []
15719 },
15720 "priority" : 11
15721 },
15722 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015723 "source_info" : {
15724 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015725 "line" : 365,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015726 "column" : 12,
15727 "source_fragment" : "(0xB) : int_set_header_0003_i11()"
15728 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015729 "match_key" : [
15730 {
15731 "match_type" : "exact",
15732 "key" : "0x0b"
15733 }
15734 ],
15735 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015736 "action_id" : 82,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015737 "action_data" : []
15738 },
15739 "priority" : 12
15740 },
15741 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015742 "source_info" : {
15743 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015744 "line" : 366,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015745 "column" : 12,
15746 "source_fragment" : "(0xC) : int_set_header_0003_i12()"
15747 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015748 "match_key" : [
15749 {
15750 "match_type" : "exact",
15751 "key" : "0x0c"
15752 }
15753 ],
15754 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015755 "action_id" : 83,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015756 "action_data" : []
15757 },
15758 "priority" : 13
15759 },
15760 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015761 "source_info" : {
15762 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015763 "line" : 367,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015764 "column" : 12,
15765 "source_fragment" : "(0xD) : int_set_header_0003_i13()"
15766 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015767 "match_key" : [
15768 {
15769 "match_type" : "exact",
15770 "key" : "0x0d"
15771 }
15772 ],
15773 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015774 "action_id" : 84,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015775 "action_data" : []
15776 },
15777 "priority" : 14
15778 },
15779 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015780 "source_info" : {
15781 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015782 "line" : 368,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015783 "column" : 12,
15784 "source_fragment" : "(0xE) : int_set_header_0003_i14()"
15785 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015786 "match_key" : [
15787 {
15788 "match_type" : "exact",
15789 "key" : "0x0e"
15790 }
15791 ],
15792 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015793 "action_id" : 85,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015794 "action_data" : []
15795 },
15796 "priority" : 15
15797 },
15798 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015799 "source_info" : {
15800 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015801 "line" : 369,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015802 "column" : 12,
15803 "source_fragment" : "(0xF) : int_set_header_0003_i15()"
15804 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015805 "match_key" : [
15806 {
15807 "match_type" : "exact",
15808 "key" : "0x0f"
15809 }
15810 ],
15811 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015812 "action_id" : 86,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015813 "action_data" : []
15814 },
15815 "priority" : 16
15816 }
15817 ]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015818 },
15819 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015820 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015821 "id" : 59,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015822 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015823 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015824 "line" : 375,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015825 "column" : 10,
15826 "source_fragment" : "tb_int_inst_0407"
15827 },
15828 "key" : [
15829 {
15830 "match_type" : "exact",
15831 "name" : "hdr.int_header.instruction_mask_0407",
15832 "target" : ["int_header", "instruction_mask_0407"],
15833 "mask" : null
15834 }
15835 ],
15836 "match_type" : "exact",
15837 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015838 "max_size" : 1024,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015839 "with_counters" : false,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015840 "support_timeout" : false,
15841 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015842 "action_ids" : [87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 67],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015843 "actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15", "NoAction"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015844 "base_default_next" : "tbl_act_33",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015845 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015846 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_33",
15847 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_33",
15848 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_33",
15849 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_33",
15850 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_33",
15851 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_33",
15852 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_33",
15853 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_33",
15854 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_33",
15855 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_33",
15856 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_33",
15857 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_33",
15858 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_33",
15859 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_33",
15860 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_33",
15861 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_33",
15862 "NoAction" : "tbl_act_33"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015863 },
15864 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015865 "action_id" : 67,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090015866 "action_const" : false,
15867 "action_data" : [],
15868 "action_entry_const" : false
Charles Chan384aea22018-08-23 22:08:02 -070015869 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015870 "entries" : [
15871 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015872 "source_info" : {
15873 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015874 "line" : 398,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015875 "column" : 12,
15876 "source_fragment" : "(0x0) : int_set_header_0407_i0()"
15877 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015878 "match_key" : [
15879 {
15880 "match_type" : "exact",
15881 "key" : "0x00"
15882 }
15883 ],
15884 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015885 "action_id" : 87,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015886 "action_data" : []
15887 },
15888 "priority" : 1
15889 },
15890 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015891 "source_info" : {
15892 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015893 "line" : 399,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015894 "column" : 12,
15895 "source_fragment" : "(0x1) : int_set_header_0407_i1()"
15896 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015897 "match_key" : [
15898 {
15899 "match_type" : "exact",
15900 "key" : "0x01"
15901 }
15902 ],
15903 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015904 "action_id" : 88,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015905 "action_data" : []
15906 },
15907 "priority" : 2
15908 },
15909 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015910 "source_info" : {
15911 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015912 "line" : 400,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015913 "column" : 12,
15914 "source_fragment" : "(0x2) : int_set_header_0407_i2()"
15915 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015916 "match_key" : [
15917 {
15918 "match_type" : "exact",
15919 "key" : "0x02"
15920 }
15921 ],
15922 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015923 "action_id" : 89,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015924 "action_data" : []
15925 },
15926 "priority" : 3
15927 },
15928 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015929 "source_info" : {
15930 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015931 "line" : 401,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015932 "column" : 12,
15933 "source_fragment" : "(0x3) : int_set_header_0407_i3()"
15934 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015935 "match_key" : [
15936 {
15937 "match_type" : "exact",
15938 "key" : "0x03"
15939 }
15940 ],
15941 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015942 "action_id" : 90,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015943 "action_data" : []
15944 },
15945 "priority" : 4
15946 },
15947 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015948 "source_info" : {
15949 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015950 "line" : 402,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015951 "column" : 12,
15952 "source_fragment" : "(0x4) : int_set_header_0407_i4()"
15953 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015954 "match_key" : [
15955 {
15956 "match_type" : "exact",
15957 "key" : "0x04"
15958 }
15959 ],
15960 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015961 "action_id" : 91,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015962 "action_data" : []
15963 },
15964 "priority" : 5
15965 },
15966 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015967 "source_info" : {
15968 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015969 "line" : 403,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015970 "column" : 12,
15971 "source_fragment" : "(0x5) : int_set_header_0407_i5()"
15972 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015973 "match_key" : [
15974 {
15975 "match_type" : "exact",
15976 "key" : "0x05"
15977 }
15978 ],
15979 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015980 "action_id" : 92,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015981 "action_data" : []
15982 },
15983 "priority" : 6
15984 },
15985 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015986 "source_info" : {
15987 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015988 "line" : 404,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015989 "column" : 12,
15990 "source_fragment" : "(0x6) : int_set_header_0407_i6()"
15991 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070015992 "match_key" : [
15993 {
15994 "match_type" : "exact",
15995 "key" : "0x06"
15996 }
15997 ],
15998 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015999 "action_id" : 93,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016000 "action_data" : []
16001 },
16002 "priority" : 7
16003 },
16004 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016005 "source_info" : {
16006 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016007 "line" : 405,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016008 "column" : 12,
16009 "source_fragment" : "(0x7) : int_set_header_0407_i7()"
16010 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016011 "match_key" : [
16012 {
16013 "match_type" : "exact",
16014 "key" : "0x07"
16015 }
16016 ],
16017 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016018 "action_id" : 94,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016019 "action_data" : []
16020 },
16021 "priority" : 8
16022 },
16023 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016024 "source_info" : {
16025 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016026 "line" : 406,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016027 "column" : 12,
16028 "source_fragment" : "(0x8) : int_set_header_0407_i8()"
16029 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016030 "match_key" : [
16031 {
16032 "match_type" : "exact",
16033 "key" : "0x08"
16034 }
16035 ],
16036 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016037 "action_id" : 95,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016038 "action_data" : []
16039 },
16040 "priority" : 9
16041 },
16042 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016043 "source_info" : {
16044 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016045 "line" : 407,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016046 "column" : 12,
16047 "source_fragment" : "(0x9) : int_set_header_0407_i9()"
16048 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016049 "match_key" : [
16050 {
16051 "match_type" : "exact",
16052 "key" : "0x09"
16053 }
16054 ],
16055 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016056 "action_id" : 96,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016057 "action_data" : []
16058 },
16059 "priority" : 10
16060 },
16061 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016062 "source_info" : {
16063 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016064 "line" : 408,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016065 "column" : 12,
16066 "source_fragment" : "(0xA) : int_set_header_0407_i10()"
16067 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016068 "match_key" : [
16069 {
16070 "match_type" : "exact",
16071 "key" : "0x0a"
16072 }
16073 ],
16074 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016075 "action_id" : 97,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016076 "action_data" : []
16077 },
16078 "priority" : 11
16079 },
16080 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016081 "source_info" : {
16082 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016083 "line" : 409,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016084 "column" : 12,
16085 "source_fragment" : "(0xB) : int_set_header_0407_i11()"
16086 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016087 "match_key" : [
16088 {
16089 "match_type" : "exact",
16090 "key" : "0x0b"
16091 }
16092 ],
16093 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016094 "action_id" : 98,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016095 "action_data" : []
16096 },
16097 "priority" : 12
16098 },
16099 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016100 "source_info" : {
16101 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016102 "line" : 410,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016103 "column" : 12,
16104 "source_fragment" : "(0xC) : int_set_header_0407_i12()"
16105 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016106 "match_key" : [
16107 {
16108 "match_type" : "exact",
16109 "key" : "0x0c"
16110 }
16111 ],
16112 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016113 "action_id" : 99,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016114 "action_data" : []
16115 },
16116 "priority" : 13
16117 },
16118 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016119 "source_info" : {
16120 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016121 "line" : 411,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016122 "column" : 12,
16123 "source_fragment" : "(0xD) : int_set_header_0407_i13()"
16124 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016125 "match_key" : [
16126 {
16127 "match_type" : "exact",
16128 "key" : "0x0d"
16129 }
16130 ],
16131 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016132 "action_id" : 100,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016133 "action_data" : []
16134 },
16135 "priority" : 14
16136 },
16137 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016138 "source_info" : {
16139 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016140 "line" : 412,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016141 "column" : 12,
16142 "source_fragment" : "(0xE) : int_set_header_0407_i14()"
16143 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016144 "match_key" : [
16145 {
16146 "match_type" : "exact",
16147 "key" : "0x0e"
16148 }
16149 ],
16150 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016151 "action_id" : 101,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016152 "action_data" : []
16153 },
16154 "priority" : 15
16155 },
16156 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016157 "source_info" : {
16158 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016159 "line" : 413,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070016160 "column" : 12,
16161 "source_fragment" : "(0xF) : int_set_header_0407_i15()"
16162 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016163 "match_key" : [
16164 {
16165 "match_type" : "exact",
16166 "key" : "0x0f"
16167 }
16168 ],
16169 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016170 "action_id" : 102,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016171 "action_data" : []
16172 },
16173 "priority" : 16
16174 }
16175 ]
Charles Chan384aea22018-08-23 22:08:02 -070016176 },
16177 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016178 "name" : "tbl_act_33",
16179 "id" : 60,
16180 "key" : [],
16181 "match_type" : "exact",
16182 "type" : "simple",
16183 "max_size" : 1024,
16184 "with_counters" : false,
16185 "support_timeout" : false,
16186 "direct_meters" : null,
16187 "action_ids" : [124],
16188 "actions" : ["act_34"],
16189 "base_default_next" : "node_104",
16190 "next_tables" : {
16191 "act_34" : "node_104"
16192 },
16193 "default_entry" : {
16194 "action_id" : 124,
16195 "action_const" : true,
16196 "action_data" : [],
16197 "action_entry_const" : true
16198 }
16199 },
16200 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016201 "name" : "tbl_act_34",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016202 "id" : 61,
16203 "key" : [],
16204 "match_type" : "exact",
16205 "type" : "simple",
16206 "max_size" : 1024,
16207 "with_counters" : false,
16208 "support_timeout" : false,
16209 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016210 "action_ids" : [123],
16211 "actions" : ["act_33"],
16212 "base_default_next" : "node_106",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016213 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016214 "act_33" : "node_106"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016215 },
16216 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016217 "action_id" : 123,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070016218 "action_const" : true,
16219 "action_data" : [],
16220 "action_entry_const" : true
16221 }
16222 },
16223 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016224 "name" : "tbl_act_35",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070016225 "id" : 62,
16226 "key" : [],
16227 "match_type" : "exact",
16228 "type" : "simple",
16229 "max_size" : 1024,
16230 "with_counters" : false,
16231 "support_timeout" : false,
16232 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016233 "action_ids" : [125],
16234 "actions" : ["act_35"],
16235 "base_default_next" : "node_108",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070016236 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016237 "act_35" : "node_108"
Carmelo Cascone8a715f82018-08-20 23:16:27 -070016238 },
16239 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016240 "action_id" : 125,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016241 "action_const" : true,
16242 "action_data" : [],
16243 "action_entry_const" : true
16244 }
16245 },
16246 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016247 "name" : "tbl_act_36",
Charles Chan384aea22018-08-23 22:08:02 -070016248 "id" : 63,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016249 "key" : [],
16250 "match_type" : "exact",
16251 "type" : "simple",
16252 "max_size" : 1024,
16253 "with_counters" : false,
16254 "support_timeout" : false,
16255 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016256 "action_ids" : [126],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016257 "actions" : ["act_36"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016258 "base_default_next" : "node_110",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016259 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016260 "act_36" : "node_110"
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016261 },
16262 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016263 "action_id" : 126,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016264 "action_const" : true,
16265 "action_data" : [],
16266 "action_entry_const" : true
16267 }
16268 },
16269 {
16270 "name" : "FabricEgress.process_int_main.process_int_report.tb_generate_report",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016271 "id" : 64,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016272 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016273 "filename" : "include/int/int_report.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016274 "line" : 86,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016275 "column" : 10,
16276 "source_fragment" : "tb_generate_report"
16277 },
16278 "key" : [],
16279 "match_type" : "exact",
16280 "type" : "simple",
16281 "max_size" : 1024,
16282 "with_counters" : false,
16283 "support_timeout" : false,
16284 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016285 "action_ids" : [103, 64],
16286 "actions" : ["FabricEgress.process_int_main.process_int_report.do_report_encapsulation", "nop"],
16287 "base_default_next" : "node_112",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016288 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016289 "FabricEgress.process_int_main.process_int_report.do_report_encapsulation" : "node_112",
16290 "nop" : "node_112"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016291 },
16292 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016293 "action_id" : 64,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016294 "action_const" : false,
16295 "action_data" : [],
16296 "action_entry_const" : false
16297 }
16298 },
16299 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016300 "name" : "tbl_process_int_main_process_int_sink_restore_header",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016301 "id" : 65,
16302 "key" : [],
16303 "match_type" : "exact",
16304 "type" : "simple",
16305 "max_size" : 1024,
16306 "with_counters" : false,
16307 "support_timeout" : false,
16308 "direct_meters" : null,
16309 "action_ids" : [104],
16310 "actions" : ["FabricEgress.process_int_main.process_int_sink.restore_header"],
16311 "base_default_next" : "tbl_process_int_main_process_int_sink_int_sink",
16312 "next_tables" : {
16313 "FabricEgress.process_int_main.process_int_sink.restore_header" : "tbl_process_int_main_process_int_sink_int_sink"
16314 },
16315 "default_entry" : {
16316 "action_id" : 104,
16317 "action_const" : true,
16318 "action_data" : [],
16319 "action_entry_const" : true
16320 }
16321 },
16322 {
16323 "name" : "tbl_process_int_main_process_int_sink_int_sink",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016324 "id" : 66,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070016325 "key" : [],
16326 "match_type" : "exact",
16327 "type" : "simple",
16328 "max_size" : 1024,
16329 "with_counters" : false,
16330 "support_timeout" : false,
16331 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016332 "action_ids" : [105],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016333 "actions" : ["FabricEgress.process_int_main.process_int_sink.int_sink"],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016334 "base_default_next" : null,
16335 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016336 "FabricEgress.process_int_main.process_int_sink.int_sink" : null
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016337 },
16338 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016339 "action_id" : 105,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016340 "action_const" : true,
16341 "action_data" : [],
16342 "action_entry_const" : true
16343 }
16344 }
16345 ],
16346 "action_profiles" : [],
16347 "conditionals" : [
16348 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016349 "name" : "node_61",
16350 "id" : 19,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016351 "source_info" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016352 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016353 "line" : 39,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016354 "column" : 12,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016355 "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016356 },
16357 "expression" : {
16358 "type" : "expression",
16359 "value" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016360 "op" : "==",
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016361 "left" : {
16362 "type" : "expression",
16363 "value" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016364 "op" : "d2b",
16365 "left" : null,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016366 "right" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016367 "type" : "field",
16368 "value" : ["scalars", "fabric_metadata_t.is_controller_packet_out"]
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016369 }
16370 }
16371 },
16372 "right" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016373 "type" : "bool",
16374 "value" : true
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016375 }
16376 }
16377 },
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016378 "true_next" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016379 "false_next" : "node_62"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016380 },
16381 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016382 "name" : "node_62",
16383 "id" : 20,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016384 "source_info" : {
16385 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016386 "line" : 43,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016387 "column" : 12,
16388 "source_fragment" : "standard_metadata.egress_port == 255"
16389 },
16390 "expression" : {
16391 "type" : "expression",
16392 "value" : {
16393 "op" : "==",
16394 "left" : {
16395 "type" : "field",
16396 "value" : ["standard_metadata", "egress_port"]
16397 },
16398 "right" : {
16399 "type" : "hexstr",
16400 "value" : "0x00ff"
16401 }
16402 }
16403 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016404 "true_next" : "node_63",
16405 "false_next" : "node_66"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016406 },
16407 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016408 "name" : "node_63",
16409 "id" : 21,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016410 "source_info" : {
16411 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016412 "line" : 44,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016413 "column" : 16,
16414 "source_fragment" : "fabric_metadata.is_multicast == true && ..."
16415 },
16416 "expression" : {
16417 "type" : "expression",
16418 "value" : {
16419 "op" : "and",
16420 "left" : {
16421 "type" : "expression",
16422 "value" : {
16423 "op" : "==",
16424 "left" : {
16425 "type" : "expression",
16426 "value" : {
16427 "op" : "d2b",
16428 "left" : null,
16429 "right" : {
16430 "type" : "field",
16431 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
16432 }
16433 }
16434 },
16435 "right" : {
16436 "type" : "bool",
16437 "value" : true
16438 }
16439 }
16440 },
16441 "right" : {
16442 "type" : "expression",
16443 "value" : {
16444 "op" : "==",
16445 "left" : {
16446 "type" : "expression",
16447 "value" : {
16448 "op" : "d2b",
16449 "left" : null,
16450 "right" : {
16451 "type" : "field",
16452 "value" : ["scalars", "fabric_metadata_t.clone_to_cpu"]
16453 }
16454 }
16455 },
16456 "right" : {
16457 "type" : "bool",
16458 "value" : false
16459 }
16460 }
16461 }
16462 }
16463 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016464 "true_next" : "tbl_act_20",
16465 "false_next" : "tbl_act_21"
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070016466 },
16467 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016468 "name" : "node_66",
16469 "id" : 22,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070016470 "source_info" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016471 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016472 "line" : 299,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016473 "column" : 12,
16474 "source_fragment" : "fabric_metadata.is_multicast == true ..."
16475 },
16476 "expression" : {
16477 "type" : "expression",
16478 "value" : {
16479 "op" : "and",
16480 "left" : {
16481 "type" : "expression",
16482 "value" : {
16483 "op" : "==",
16484 "left" : {
16485 "type" : "expression",
16486 "value" : {
16487 "op" : "d2b",
16488 "left" : null,
16489 "right" : {
16490 "type" : "field",
16491 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
16492 }
16493 }
16494 },
16495 "right" : {
16496 "type" : "bool",
16497 "value" : true
16498 }
16499 }
16500 },
16501 "right" : {
16502 "type" : "expression",
16503 "value" : {
16504 "op" : "==",
16505 "left" : {
16506 "type" : "field",
16507 "value" : ["standard_metadata", "ingress_port"]
16508 },
16509 "right" : {
16510 "type" : "field",
16511 "value" : ["standard_metadata", "egress_port"]
16512 }
16513 }
16514 }
16515 }
16516 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016517 "true_next" : "tbl_act_22",
16518 "false_next" : "node_68"
16519 },
16520 {
16521 "name" : "node_68",
16522 "id" : 23,
16523 "source_info" : {
16524 "filename" : "include/control/next.p4",
16525 "line" : 304,
16526 "column" : 12,
16527 "source_fragment" : "fabric_metadata.mpls_label == 0"
16528 },
16529 "expression" : {
16530 "type" : "expression",
16531 "value" : {
16532 "op" : "==",
16533 "left" : {
16534 "type" : "field",
16535 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
16536 },
16537 "right" : {
16538 "type" : "hexstr",
16539 "value" : "0x000000"
16540 }
16541 }
16542 },
16543 "true_next" : "node_69",
16544 "false_next" : "tbl_egress_next_set_mpls"
16545 },
16546 {
16547 "name" : "node_69",
16548 "id" : 24,
16549 "source_info" : {
16550 "filename" : "include/control/next.p4",
16551 "line" : 305,
16552 "column" : 16,
16553 "source_fragment" : "hdr.mpls.isValid()"
16554 },
16555 "expression" : {
16556 "type" : "expression",
16557 "value" : {
16558 "op" : "d2b",
16559 "left" : null,
16560 "right" : {
16561 "type" : "field",
16562 "value" : ["mpls", "$valid$"]
16563 }
16564 }
16565 },
16566 "true_next" : "tbl_egress_next_pop_mpls_if_present",
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016567 "false_next" : "FabricEgress.egress_next.egress_vlan"
16568 },
16569 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016570 "name" : "node_75",
16571 "id" : 25,
16572 "source_info" : {
16573 "filename" : "include/control/next.p4",
16574 "line" : 310,
16575 "column" : 12,
16576 "source_fragment" : "!egress_vlan.apply().hit"
16577 },
16578 "expression" : {
16579 "type" : "expression",
16580 "value" : {
16581 "op" : "not",
16582 "left" : null,
16583 "right" : {
16584 "type" : "expression",
16585 "value" : {
16586 "op" : "d2b",
16587 "left" : null,
16588 "right" : {
16589 "type" : "field",
16590 "value" : ["scalars", "egress_next_tmp"]
16591 }
16592 }
16593 }
16594 }
16595 },
16596 "true_next" : "node_76",
16597 "false_next" : "node_78"
16598 },
16599 {
16600 "name" : "node_76",
16601 "id" : 26,
16602 "source_info" : {
16603 "filename" : "include/control/next.p4",
16604 "line" : 312,
16605 "column" : 16,
16606 "source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
16607 },
16608 "expression" : {
16609 "type" : "expression",
16610 "value" : {
16611 "op" : "!=",
16612 "left" : {
16613 "type" : "field",
16614 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
16615 },
16616 "right" : {
16617 "type" : "hexstr",
16618 "value" : "0x0ffe"
16619 }
16620 }
16621 },
16622 "true_next" : "tbl_egress_next_push_vlan",
16623 "false_next" : "node_78"
16624 },
16625 {
16626 "name" : "node_78",
16627 "id" : 27,
16628 "source_info" : {
16629 "filename" : "include/control/next.p4",
16630 "line" : 318,
16631 "column" : 12,
16632 "source_fragment" : "hdr.mpls.isValid()"
16633 },
16634 "expression" : {
16635 "type" : "expression",
16636 "value" : {
16637 "op" : "d2b",
16638 "left" : null,
16639 "right" : {
16640 "type" : "field",
16641 "value" : ["mpls", "$valid$"]
16642 }
16643 }
16644 },
16645 "true_next" : "tbl_act_25",
16646 "false_next" : "node_82"
16647 },
16648 {
16649 "name" : "node_80",
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070016650 "id" : 28,
16651 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016652 "filename" : "include/control/next.p4",
16653 "line" : 320,
16654 "column" : 16,
16655 "source_fragment" : "hdr.mpls.ttl == 0"
16656 },
16657 "expression" : {
16658 "type" : "expression",
16659 "value" : {
16660 "op" : "==",
16661 "left" : {
16662 "type" : "field",
16663 "value" : ["mpls", "ttl"]
16664 },
16665 "right" : {
16666 "type" : "hexstr",
16667 "value" : "0x00"
16668 }
16669 }
16670 },
16671 "true_next" : "tbl_act_26",
16672 "false_next" : "node_90"
16673 },
16674 {
16675 "name" : "node_82",
16676 "id" : 29,
16677 "source_info" : {
16678 "filename" : "include/control/next.p4",
16679 "line" : 322,
16680 "column" : 15,
16681 "source_fragment" : "hdr.ipv4.isValid()"
16682 },
16683 "expression" : {
16684 "type" : "expression",
16685 "value" : {
16686 "op" : "d2b",
16687 "left" : null,
16688 "right" : {
16689 "type" : "field",
16690 "value" : ["ipv4", "$valid$"]
16691 }
16692 }
16693 },
16694 "true_next" : "tbl_act_27",
16695 "false_next" : "node_86"
16696 },
16697 {
16698 "name" : "node_84",
16699 "id" : 30,
16700 "source_info" : {
16701 "filename" : "include/control/next.p4",
16702 "line" : 324,
16703 "column" : 20,
16704 "source_fragment" : "hdr.ipv4.ttl == 0"
16705 },
16706 "expression" : {
16707 "type" : "expression",
16708 "value" : {
16709 "op" : "==",
16710 "left" : {
16711 "type" : "field",
16712 "value" : ["ipv4", "ttl"]
16713 },
16714 "right" : {
16715 "type" : "hexstr",
16716 "value" : "0x00"
16717 }
16718 }
16719 },
16720 "true_next" : "tbl_act_28",
16721 "false_next" : "node_90"
16722 },
16723 {
16724 "name" : "node_86",
16725 "id" : 31,
16726 "source_info" : {
16727 "filename" : "include/control/next.p4",
16728 "line" : 327,
16729 "column" : 21,
16730 "source_fragment" : "hdr.ipv6.isValid()"
16731 },
16732 "expression" : {
16733 "type" : "expression",
16734 "value" : {
16735 "op" : "d2b",
16736 "left" : null,
16737 "right" : {
16738 "type" : "field",
16739 "value" : ["ipv6", "$valid$"]
16740 }
16741 }
16742 },
16743 "true_next" : "tbl_act_29",
16744 "false_next" : "node_90"
16745 },
16746 {
16747 "name" : "node_88",
16748 "id" : 32,
16749 "source_info" : {
16750 "filename" : "include/control/next.p4",
16751 "line" : 329,
16752 "column" : 20,
16753 "source_fragment" : "hdr.ipv6.hop_limit == 0"
16754 },
16755 "expression" : {
16756 "type" : "expression",
16757 "value" : {
16758 "op" : "==",
16759 "left" : {
16760 "type" : "field",
16761 "value" : ["ipv6", "hop_limit"]
16762 },
16763 "right" : {
16764 "type" : "hexstr",
16765 "value" : "0x00"
16766 }
16767 }
16768 },
16769 "true_next" : "tbl_act_30",
16770 "false_next" : "node_90"
16771 },
16772 {
16773 "name" : "node_90",
16774 "id" : 33,
16775 "source_info" : {
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070016776 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016777 "line" : 226,
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070016778 "column" : 12,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016779 "source_fragment" : "fabric_meta.spgw.direction == SPGW_DIR_DOWNLINK"
Carmelo Cascone9b0171b2018-08-14 01:43:57 -070016780 },
16781 "expression" : {
16782 "type" : "expression",
16783 "value" : {
16784 "op" : "==",
16785 "left" : {
16786 "type" : "field",
16787 "value" : ["userMetadata.spgw", "direction"]
16788 },
16789 "right" : {
16790 "type" : "hexstr",
16791 "value" : "0x02"
16792 }
16793 }
16794 },
16795 "true_next" : "tbl_spgw_egress_gtpu_encap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016796 "false_next" : "node_92"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016797 },
16798 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016799 "name" : "node_92",
16800 "id" : 34,
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016801 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016802 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016803 "line" : 102,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016804 "column" : 12,
16805 "source_fragment" : "standard_metadata.ingress_port != 255 && ..."
16806 },
16807 "expression" : {
16808 "type" : "expression",
16809 "value" : {
16810 "op" : "and",
16811 "left" : {
16812 "type" : "expression",
16813 "value" : {
16814 "op" : "and",
16815 "left" : {
16816 "type" : "expression",
16817 "value" : {
16818 "op" : "!=",
16819 "left" : {
16820 "type" : "field",
16821 "value" : ["standard_metadata", "ingress_port"]
16822 },
16823 "right" : {
16824 "type" : "hexstr",
16825 "value" : "0x00ff"
16826 }
16827 }
16828 },
16829 "right" : {
16830 "type" : "expression",
16831 "value" : {
16832 "op" : "!=",
16833 "left" : {
16834 "type" : "field",
16835 "value" : ["standard_metadata", "egress_port"]
16836 },
16837 "right" : {
16838 "type" : "hexstr",
16839 "value" : "0x00ff"
16840 }
16841 }
16842 }
16843 }
16844 },
16845 "right" : {
16846 "type" : "expression",
16847 "value" : {
16848 "op" : "or",
16849 "left" : {
16850 "type" : "expression",
16851 "value" : {
16852 "op" : "d2b",
16853 "left" : null,
16854 "right" : {
16855 "type" : "field",
16856 "value" : ["udp", "$valid$"]
16857 }
16858 }
16859 },
16860 "right" : {
16861 "type" : "expression",
16862 "value" : {
16863 "op" : "d2b",
16864 "left" : null,
16865 "right" : {
16866 "type" : "field",
16867 "value" : ["tcp", "$valid$"]
16868 }
16869 }
16870 }
16871 }
16872 }
16873 }
16874 },
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020016875 "false_next" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016876 "true_next" : "node_93"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016877 },
16878 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016879 "name" : "node_93",
16880 "id" : 35,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016881 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016882 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016883 "line" : 106,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016884 "column" : 16,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016885 "source_fragment" : "fabric_metadata.int_meta.source == true"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016886 },
16887 "expression" : {
16888 "type" : "expression",
16889 "value" : {
16890 "op" : "==",
16891 "left" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016892 "type" : "expression",
16893 "value" : {
16894 "op" : "d2b",
16895 "left" : null,
16896 "right" : {
16897 "type" : "field",
16898 "value" : ["userMetadata.int_meta", "source"]
16899 }
16900 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016901 },
16902 "right" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016903 "type" : "bool",
16904 "value" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016905 }
16906 }
16907 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016908 "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016909 "false_next" : "node_95"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016910 },
16911 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016912 "name" : "node_95",
16913 "id" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016914 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016915 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016916 "line" : 110,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016917 "column" : 15,
16918 "source_fragment" : "hdr.int_header.isValid()"
16919 },
16920 "expression" : {
16921 "type" : "expression",
16922 "value" : {
16923 "op" : "d2b",
16924 "left" : null,
16925 "right" : {
16926 "type" : "field",
16927 "value" : ["int_header", "$valid$"]
16928 }
16929 }
16930 },
16931 "false_next" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016932 "true_next" : "tbl_act_31"
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016933 },
16934 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016935 "name" : "node_98",
16936 "id" : 37,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016937 "source_info" : {
16938 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016939 "line" : 419,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016940 "column" : 12,
16941 "source_fragment" : "fmeta.int_meta.transit == false"
16942 },
16943 "expression" : {
16944 "type" : "expression",
16945 "value" : {
16946 "op" : "==",
16947 "left" : {
16948 "type" : "expression",
16949 "value" : {
16950 "op" : "d2b",
16951 "left" : null,
16952 "right" : {
16953 "type" : "field",
16954 "value" : ["userMetadata.int_meta", "transit"]
16955 }
16956 }
16957 },
16958 "right" : {
16959 "type" : "bool",
16960 "value" : false
16961 }
16962 }
16963 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016964 "true_next" : "tbl_act_32",
16965 "false_next" : "node_100"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016966 },
16967 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016968 "name" : "node_100",
16969 "id" : 38,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016970 "expression" : {
16971 "type" : "expression",
16972 "value" : {
16973 "op" : "not",
16974 "left" : null,
16975 "right" : {
16976 "type" : "expression",
16977 "value" : {
16978 "op" : "d2b",
16979 "left" : null,
16980 "right" : {
16981 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016982 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016983 }
16984 }
16985 }
16986 }
16987 },
16988 "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016989 "false_next" : "node_110"
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016990 },
16991 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016992 "name" : "node_104",
16993 "id" : 39,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016994 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016995 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080016996 "line" : 427,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090016997 "column" : 12,
16998 "source_fragment" : "hdr.ipv4.isValid()"
16999 },
17000 "expression" : {
17001 "type" : "expression",
17002 "value" : {
17003 "op" : "d2b",
17004 "left" : null,
17005 "right" : {
17006 "type" : "field",
17007 "value" : ["ipv4", "$valid$"]
17008 }
17009 }
17010 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017011 "true_next" : "tbl_act_34",
17012 "false_next" : "node_106"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017013 },
17014 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017015 "name" : "node_106",
17016 "id" : 40,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017017 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070017018 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017019 "line" : 430,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017020 "column" : 12,
17021 "source_fragment" : "hdr.udp.isValid()"
17022 },
17023 "expression" : {
17024 "type" : "expression",
17025 "value" : {
17026 "op" : "d2b",
17027 "left" : null,
17028 "right" : {
17029 "type" : "field",
17030 "value" : ["udp", "$valid$"]
17031 }
17032 }
17033 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017034 "true_next" : "tbl_act_35",
17035 "false_next" : "node_108"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017036 },
17037 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017038 "name" : "node_108",
17039 "id" : 41,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017040 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070017041 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017042 "line" : 433,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017043 "column" : 12,
17044 "source_fragment" : "hdr.intl4_shim.isValid()"
17045 },
17046 "expression" : {
17047 "type" : "expression",
17048 "value" : {
17049 "op" : "d2b",
17050 "left" : null,
17051 "right" : {
17052 "type" : "field",
17053 "value" : ["intl4_shim", "$valid$"]
17054 }
17055 }
17056 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017057 "true_next" : "tbl_act_36",
17058 "false_next" : "node_110"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017059 },
17060 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017061 "name" : "node_110",
17062 "id" : 42,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017063 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070017064 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017065 "line" : 115,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017066 "column" : 20,
17067 "source_fragment" : "standard_metadata.instance_type == 1"
17068 },
17069 "expression" : {
17070 "type" : "expression",
17071 "value" : {
17072 "op" : "==",
17073 "left" : {
17074 "type" : "field",
17075 "value" : ["standard_metadata", "instance_type"]
17076 },
17077 "right" : {
17078 "type" : "hexstr",
17079 "value" : "0x00000001"
17080 }
17081 }
17082 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070017083 "true_next" : "FabricEgress.process_int_main.process_int_report.tb_generate_report",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017084 "false_next" : "node_112"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017085 },
17086 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017087 "name" : "node_112",
17088 "id" : 43,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017089 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070017090 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017091 "line" : 119,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017092 "column" : 20,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070017093 "source_fragment" : "fabric_metadata.int_meta.sink == true"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017094 },
17095 "expression" : {
17096 "type" : "expression",
17097 "value" : {
17098 "op" : "==",
17099 "left" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070017100 "type" : "expression",
17101 "value" : {
17102 "op" : "d2b",
17103 "left" : null,
17104 "right" : {
17105 "type" : "field",
17106 "value" : ["userMetadata.int_meta", "sink"]
17107 }
17108 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017109 },
17110 "right" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070017111 "type" : "bool",
17112 "value" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017113 }
17114 }
17115 },
17116 "false_next" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070017117 "true_next" : "tbl_process_int_main_process_int_sink_restore_header"
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020017118 }
17119 ]
17120 }
17121 ],
17122 "checksums" : [
17123 {
17124 "name" : "cksum",
17125 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070017126 "source_info" : {
17127 "filename" : "include/checksum.p4",
17128 "line" : 28,
17129 "column" : 8,
17130 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
17131 },
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020017132 "target" : ["ipv4", "hdr_checksum"],
17133 "type" : "generic",
17134 "calculation" : "calc",
17135 "if_cond" : {
17136 "type" : "expression",
17137 "value" : {
17138 "op" : "d2b",
17139 "left" : null,
17140 "right" : {
17141 "type" : "field",
17142 "value" : ["ipv4", "$valid$"]
17143 }
17144 }
17145 }
17146 },
17147 {
17148 "name" : "cksum_0",
17149 "id" : 1,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070017150 "source_info" : {
17151 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080017152 "line" : 242,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070017153 "column" : 8,
17154 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
17155 },
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020017156 "target" : ["gtpu_ipv4", "hdr_checksum"],
17157 "type" : "generic",
17158 "calculation" : "calc_0",
17159 "if_cond" : {
17160 "type" : "expression",
17161 "value" : {
17162 "op" : "d2b",
17163 "left" : null,
17164 "right" : {
17165 "type" : "field",
17166 "value" : ["gtpu_ipv4", "$valid$"]
17167 }
17168 }
17169 }
17170 },
17171 {
17172 "name" : "cksum_1",
17173 "id" : 2,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070017174 "source_info" : {
17175 "filename" : "include/checksum.p4",
17176 "line" : 57,
17177 "column" : 8,
17178 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
17179 },
Carmelo Cascone1e8843f2018-07-19 19:01:12 +020017180 "target" : ["ipv4", "hdr_checksum"],
17181 "type" : "generic",
17182 "calculation" : "calc_1",
17183 "if_cond" : {
17184 "type" : "expression",
17185 "value" : {
17186 "op" : "d2b",
17187 "left" : null,
17188 "right" : {
17189 "type" : "field",
17190 "value" : ["ipv4", "$valid$"]
17191 }
17192 }
17193 }
17194 }
17195 ],
17196 "force_arith" : [],
17197 "extern_instances" : [],
17198 "field_aliases" : [
17199 [
17200 "queueing_metadata.enq_timestamp",
17201 ["standard_metadata", "enq_timestamp"]
17202 ],
17203 [
17204 "queueing_metadata.enq_qdepth",
17205 ["standard_metadata", "enq_qdepth"]
17206 ],
17207 [
17208 "queueing_metadata.deq_timedelta",
17209 ["standard_metadata", "deq_timedelta"]
17210 ],
17211 [
17212 "queueing_metadata.deq_qdepth",
17213 ["standard_metadata", "deq_qdepth"]
17214 ],
17215 [
17216 "intrinsic_metadata.ingress_global_timestamp",
17217 ["standard_metadata", "ingress_global_timestamp"]
17218 ],
17219 [
17220 "intrinsic_metadata.egress_global_timestamp",
17221 ["standard_metadata", "egress_global_timestamp"]
17222 ],
17223 [
17224 "intrinsic_metadata.lf_field_list",
17225 ["standard_metadata", "lf_field_list"]
17226 ],
17227 [
17228 "intrinsic_metadata.mcast_grp",
17229 ["standard_metadata", "mcast_grp"]
17230 ],
17231 [
17232 "intrinsic_metadata.resubmit_flag",
17233 ["standard_metadata", "resubmit_flag"]
17234 ],
17235 [
17236 "intrinsic_metadata.egress_rid",
17237 ["standard_metadata", "egress_rid"]
17238 ],
17239 [
17240 "intrinsic_metadata.recirculate_flag",
17241 ["standard_metadata", "recirculate_flag"]
17242 ]
17243 ],
17244 "program" : "fabric.p4",
17245 "__meta__" : {
17246 "version" : [2, 18],
17247 "compiler" : "https://github.com/p4lang/p4c"
17248 }
17249}