blob: a179079ec7d4d812930992eca214495e60484288 [file] [log] [blame]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001{
2 "header_types" : [
3 {
4 "name" : "scalars_0",
5 "id" : 0,
6 "fields" : [
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007 ["last_ipv4_dscp", 6, false],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09008 ["tmp", 4, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -07009 ["tmp_0", 32, false],
10 ["tmp_1", 32, false],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011 ["filtering_tmp_0", 1, false],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012 ["next_tmp_2", 1, false],
13 ["next_tmp_3", 1, false],
14 ["next_tmp_4", 1, false],
15 ["next_hasReturned_0", 1, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070016 ["process_int_main_process_int_transit_hasReturned_0", 1, false],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090017 ["fabric_metadata_t.fwd_type", 3, false],
18 ["fabric_metadata_t.next_id", 32, false],
19 ["fabric_metadata_t.pop_vlan_when_packet_in", 1, false],
20 ["fabric_metadata_t.is_multicast", 1, false],
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070021 ["fabric_metadata_t.is_controller_packet_out", 1, false],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090022 ["fabric_metadata_t.clone_to_cpu", 1, false],
23 ["fabric_metadata_t.ip_proto", 8, false],
24 ["fabric_metadata_t.l4_src_port", 16, false],
25 ["fabric_metadata_t.l4_dst_port", 16, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070026 ["_padding_1", 1, false]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090027 ]
28 },
29 {
30 "name" : "standard_metadata",
31 "id" : 1,
32 "fields" : [
33 ["ingress_port", 9, false],
34 ["egress_spec", 9, false],
35 ["egress_port", 9, false],
36 ["clone_spec", 32, false],
37 ["instance_type", 32, false],
38 ["drop", 1, false],
39 ["recirculate_port", 16, false],
40 ["packet_length", 32, false],
41 ["enq_timestamp", 32, false],
42 ["enq_qdepth", 19, false],
43 ["deq_timedelta", 32, false],
44 ["deq_qdepth", 19, false],
45 ["ingress_global_timestamp", 48, false],
46 ["egress_global_timestamp", 48, false],
47 ["lf_field_list", 32, false],
48 ["mcast_grp", 16, false],
49 ["resubmit_flag", 32, false],
50 ["egress_rid", 16, false],
51 ["checksum_error", 1, false],
52 ["recirculate_flag", 32, false],
53 ["_padding", 5, false]
54 ]
55 },
56 {
57 "name" : "ethernet_t",
58 "id" : 2,
59 "fields" : [
60 ["dst_addr", 48, false],
61 ["src_addr", 48, false],
62 ["ether_type", 16, false]
63 ]
64 },
65 {
66 "name" : "vlan_tag_t",
67 "id" : 3,
68 "fields" : [
69 ["pri", 3, false],
70 ["cfi", 1, false],
71 ["vlan_id", 12, false],
72 ["ether_type", 16, false]
73 ]
74 },
75 {
76 "name" : "mpls_t",
77 "id" : 4,
78 "fields" : [
79 ["label", 20, false],
80 ["tc", 3, false],
81 ["bos", 1, false],
82 ["ttl", 8, false]
83 ]
84 },
85 {
86 "name" : "ipv4_t",
87 "id" : 5,
88 "fields" : [
89 ["version", 4, false],
90 ["ihl", 4, false],
91 ["dscp", 6, false],
92 ["ecn", 2, false],
93 ["total_len", 16, false],
94 ["identification", 16, false],
95 ["flags", 3, false],
96 ["frag_offset", 13, false],
97 ["ttl", 8, false],
98 ["protocol", 8, false],
99 ["hdr_checksum", 16, false],
100 ["src_addr", 32, false],
101 ["dst_addr", 32, false]
102 ]
103 },
104 {
105 "name" : "arp_t",
106 "id" : 6,
107 "fields" : [
108 ["hw_type", 16, false],
109 ["proto_type", 16, false],
110 ["hw_addr_len", 8, false],
111 ["proto_addr_len", 8, false],
112 ["opcode", 16, false]
113 ]
114 },
115 {
116 "name" : "tcp_t",
117 "id" : 7,
118 "fields" : [
119 ["src_port", 16, false],
120 ["dst_port", 16, false],
121 ["seq_no", 32, false],
122 ["ack_no", 32, false],
123 ["data_offset", 4, false],
124 ["res", 3, false],
125 ["ecn", 3, false],
126 ["ctrl", 6, false],
127 ["window", 16, false],
128 ["checksum", 16, false],
129 ["urgent_ptr", 16, false]
130 ]
131 },
132 {
133 "name" : "udp_t",
134 "id" : 8,
135 "fields" : [
136 ["src_port", 16, false],
137 ["dst_port", 16, false],
138 ["len", 16, false],
139 ["checksum", 16, false]
140 ]
141 },
142 {
143 "name" : "icmp_t",
144 "id" : 9,
145 "fields" : [
146 ["icmp_type", 8, false],
147 ["icmp_code", 8, false],
148 ["checksum", 16, false],
149 ["identifier", 16, false],
150 ["sequence_number", 16, false],
151 ["timestamp", 64, false]
152 ]
153 },
154 {
155 "name" : "packet_out_header_t",
156 "id" : 10,
157 "fields" : [
158 ["egress_port", 9, false],
159 ["_pad", 7, false]
160 ]
161 },
162 {
163 "name" : "packet_in_header_t",
164 "id" : 11,
165 "fields" : [
166 ["ingress_port", 9, false],
167 ["_pad", 7, false]
168 ]
169 },
170 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900171 "name" : "intl4_shim_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700172 "id" : 12,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900173 "fields" : [
174 ["int_type", 8, false],
175 ["rsvd1", 8, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700176 ["len_words", 8, false],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900177 ["rsvd2", 8, false]
178 ]
179 },
180 {
181 "name" : "int_header_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700182 "id" : 13,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900183 "fields" : [
184 ["ver", 2, false],
185 ["rep", 2, false],
186 ["c", 1, false],
187 ["e", 1, false],
188 ["rsvd1", 5, false],
189 ["ins_cnt", 5, false],
190 ["max_hop_cnt", 8, false],
191 ["total_hop_cnt", 8, false],
192 ["instruction_mask_0003", 4, false],
193 ["instruction_mask_0407", 4, false],
194 ["instruction_mask_0811", 4, false],
195 ["instruction_mask_1215", 4, false],
196 ["rsvd2", 16, false]
197 ]
198 },
199 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900200 "name" : "int_switch_id_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700201 "id" : 14,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900202 "fields" : [
203 ["switch_id", 32, false]
204 ]
205 },
206 {
207 "name" : "int_port_ids_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700208 "id" : 15,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900209 "fields" : [
210 ["ingress_port_id", 16, false],
211 ["egress_port_id", 16, false]
212 ]
213 },
214 {
215 "name" : "int_hop_latency_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700216 "id" : 16,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900217 "fields" : [
218 ["hop_latency", 32, false]
219 ]
220 },
221 {
222 "name" : "int_q_occupancy_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700223 "id" : 17,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900224 "fields" : [
225 ["q_id", 8, false],
226 ["q_occupancy", 24, false]
227 ]
228 },
229 {
230 "name" : "int_ingress_tstamp_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700231 "id" : 18,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900232 "fields" : [
233 ["ingress_tstamp", 32, false]
234 ]
235 },
236 {
237 "name" : "int_egress_tstamp_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700238 "id" : 19,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900239 "fields" : [
240 ["egress_tstamp", 32, false]
241 ]
242 },
243 {
244 "name" : "int_q_congestion_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700245 "id" : 20,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900246 "fields" : [
247 ["q_id", 8, false],
248 ["q_congestion", 24, false]
249 ]
250 },
251 {
252 "name" : "int_egress_port_tx_util_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700253 "id" : 21,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900254 "fields" : [
255 ["egress_port_tx_util", 32, false]
256 ]
257 },
258 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700259 "name" : "int_data_t",
260 "id" : 22,
261 "fields" : [
262 ["data", "*"]
263 ],
264 "max_length" : 1004
265 },
266 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900267 "name" : "intl4_tail_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700268 "id" : 23,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900269 "fields" : [
270 ["next_proto", 8, false],
271 ["dest_port", 16, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700272 ["padding", 2, false],
273 ["dscp", 6, false]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900274 ]
275 },
276 {
277 "name" : "int_metadata_t",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700278 "id" : 24,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900279 "fields" : [
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700280 ["source", 1, 0],
281 ["transit", 1, 0],
282 ["sink", 1, 0],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900283 ["switch_id", 32, false],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700284 ["new_words", 8, false],
285 ["new_bytes", 16, false],
286 ["_padding_0", 5, false]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900287 ]
288 }
289 ],
290 "headers" : [
291 {
292 "name" : "scalars",
293 "id" : 0,
294 "header_type" : "scalars_0",
295 "metadata" : true,
296 "pi_omit" : true
297 },
298 {
299 "name" : "standard_metadata",
300 "id" : 1,
301 "header_type" : "standard_metadata",
302 "metadata" : true,
303 "pi_omit" : true
304 },
305 {
306 "name" : "ethernet",
307 "id" : 2,
308 "header_type" : "ethernet_t",
309 "metadata" : false,
310 "pi_omit" : true
311 },
312 {
313 "name" : "vlan_tag",
314 "id" : 3,
315 "header_type" : "vlan_tag_t",
316 "metadata" : false,
317 "pi_omit" : true
318 },
319 {
320 "name" : "mpls",
321 "id" : 4,
322 "header_type" : "mpls_t",
323 "metadata" : false,
324 "pi_omit" : true
325 },
326 {
327 "name" : "ipv4",
328 "id" : 5,
329 "header_type" : "ipv4_t",
330 "metadata" : false,
331 "pi_omit" : true
332 },
333 {
334 "name" : "arp",
335 "id" : 6,
336 "header_type" : "arp_t",
337 "metadata" : false,
338 "pi_omit" : true
339 },
340 {
341 "name" : "tcp",
342 "id" : 7,
343 "header_type" : "tcp_t",
344 "metadata" : false,
345 "pi_omit" : true
346 },
347 {
348 "name" : "udp",
349 "id" : 8,
350 "header_type" : "udp_t",
351 "metadata" : false,
352 "pi_omit" : true
353 },
354 {
355 "name" : "icmp",
356 "id" : 9,
357 "header_type" : "icmp_t",
358 "metadata" : false,
359 "pi_omit" : true
360 },
361 {
362 "name" : "packet_out",
363 "id" : 10,
364 "header_type" : "packet_out_header_t",
365 "metadata" : false,
366 "pi_omit" : true
367 },
368 {
369 "name" : "packet_in",
370 "id" : 11,
371 "header_type" : "packet_in_header_t",
372 "metadata" : false,
373 "pi_omit" : true
374 },
375 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900376 "name" : "intl4_shim",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700377 "id" : 12,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900378 "header_type" : "intl4_shim_t",
379 "metadata" : false,
380 "pi_omit" : true
381 },
382 {
383 "name" : "int_header",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700384 "id" : 13,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900385 "header_type" : "int_header_t",
386 "metadata" : false,
387 "pi_omit" : true
388 },
389 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900390 "name" : "int_switch_id",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700391 "id" : 14,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900392 "header_type" : "int_switch_id_t",
393 "metadata" : false,
394 "pi_omit" : true
395 },
396 {
397 "name" : "int_port_ids",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700398 "id" : 15,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900399 "header_type" : "int_port_ids_t",
400 "metadata" : false,
401 "pi_omit" : true
402 },
403 {
404 "name" : "int_hop_latency",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700405 "id" : 16,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900406 "header_type" : "int_hop_latency_t",
407 "metadata" : false,
408 "pi_omit" : true
409 },
410 {
411 "name" : "int_q_occupancy",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700412 "id" : 17,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900413 "header_type" : "int_q_occupancy_t",
414 "metadata" : false,
415 "pi_omit" : true
416 },
417 {
418 "name" : "int_ingress_tstamp",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700419 "id" : 18,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900420 "header_type" : "int_ingress_tstamp_t",
421 "metadata" : false,
422 "pi_omit" : true
423 },
424 {
425 "name" : "int_egress_tstamp",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700426 "id" : 19,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900427 "header_type" : "int_egress_tstamp_t",
428 "metadata" : false,
429 "pi_omit" : true
430 },
431 {
432 "name" : "int_q_congestion",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700433 "id" : 20,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900434 "header_type" : "int_q_congestion_t",
435 "metadata" : false,
436 "pi_omit" : true
437 },
438 {
439 "name" : "int_egress_tx_util",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700440 "id" : 21,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900441 "header_type" : "int_egress_port_tx_util_t",
442 "metadata" : false,
443 "pi_omit" : true
444 },
445 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700446 "name" : "int_data",
447 "id" : 22,
448 "header_type" : "int_data_t",
449 "metadata" : false,
450 "pi_omit" : true
451 },
452 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900453 "name" : "intl4_tail",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700454 "id" : 23,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900455 "header_type" : "intl4_tail_t",
456 "metadata" : false,
457 "pi_omit" : true
458 },
459 {
460 "name" : "userMetadata.int_meta",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700461 "id" : 24,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900462 "header_type" : "int_metadata_t",
463 "metadata" : true,
464 "pi_omit" : true
465 }
466 ],
467 "header_stacks" : [],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700468 "header_union_types" : [],
469 "header_unions" : [],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900470 "header_union_stacks" : [],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700471 "field_lists" : [],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900472 "errors" : [],
473 "enums" : [],
474 "parsers" : [
475 {
476 "name" : "parser",
477 "id" : 0,
478 "init_state" : "start",
479 "parse_states" : [
480 {
481 "name" : "start",
482 "id" : 0,
483 "parser_ops" : [],
484 "transitions" : [
485 {
486 "type" : "hexstr",
487 "value" : "0x00ff",
488 "mask" : null,
489 "next_state" : "parse_packet_out"
490 },
491 {
492 "value" : "default",
493 "mask" : null,
494 "next_state" : "parse_ethernet"
495 }
496 ],
497 "transition_key" : [
498 {
499 "type" : "field",
500 "value" : ["standard_metadata", "ingress_port"]
501 }
502 ]
503 },
504 {
505 "name" : "parse_packet_out",
506 "id" : 1,
507 "parser_ops" : [
508 {
509 "parameters" : [
510 {
511 "type" : "regular",
512 "value" : "packet_out"
513 }
514 ],
515 "op" : "extract"
516 }
517 ],
518 "transitions" : [
519 {
520 "value" : "default",
521 "mask" : null,
522 "next_state" : "parse_ethernet"
523 }
524 ],
525 "transition_key" : []
526 },
527 {
528 "name" : "parse_ethernet",
529 "id" : 2,
530 "parser_ops" : [
531 {
532 "parameters" : [
533 {
534 "type" : "regular",
535 "value" : "ethernet"
536 }
537 ],
538 "op" : "extract"
539 }
540 ],
541 "transitions" : [
542 {
543 "type" : "hexstr",
544 "value" : "0x8100",
545 "mask" : null,
546 "next_state" : "parse_vlan_tag"
547 },
548 {
549 "type" : "hexstr",
550 "value" : "0x8847",
551 "mask" : null,
552 "next_state" : "parse_mpls"
553 },
554 {
555 "type" : "hexstr",
556 "value" : "0x0806",
557 "mask" : null,
558 "next_state" : "parse_arp"
559 },
560 {
561 "type" : "hexstr",
562 "value" : "0x0800",
563 "mask" : null,
564 "next_state" : "parse_ipv4"
565 },
566 {
567 "value" : "default",
568 "mask" : null,
569 "next_state" : null
570 }
571 ],
572 "transition_key" : [
573 {
574 "type" : "field",
575 "value" : ["ethernet", "ether_type"]
576 }
577 ]
578 },
579 {
580 "name" : "parse_vlan_tag",
581 "id" : 3,
582 "parser_ops" : [
583 {
584 "parameters" : [
585 {
586 "type" : "regular",
587 "value" : "vlan_tag"
588 }
589 ],
590 "op" : "extract"
591 }
592 ],
593 "transitions" : [
594 {
595 "type" : "hexstr",
596 "value" : "0x0806",
597 "mask" : null,
598 "next_state" : "parse_arp"
599 },
600 {
601 "type" : "hexstr",
602 "value" : "0x0800",
603 "mask" : null,
604 "next_state" : "parse_ipv4"
605 },
606 {
607 "type" : "hexstr",
608 "value" : "0x8847",
609 "mask" : null,
610 "next_state" : "parse_mpls"
611 },
612 {
613 "value" : "default",
614 "mask" : null,
615 "next_state" : null
616 }
617 ],
618 "transition_key" : [
619 {
620 "type" : "field",
621 "value" : ["vlan_tag", "ether_type"]
622 }
623 ]
624 },
625 {
626 "name" : "parse_mpls",
627 "id" : 4,
628 "parser_ops" : [
629 {
630 "parameters" : [
631 {
632 "type" : "regular",
633 "value" : "mpls"
634 }
635 ],
636 "op" : "extract"
637 },
638 {
639 "parameters" : [
640 {
641 "type" : "field",
642 "value" : ["scalars", "tmp"]
643 },
644 {
645 "type" : "lookahead",
646 "value" : [0, 4]
647 }
648 ],
649 "op" : "set"
650 }
651 ],
652 "transitions" : [
653 {
654 "type" : "hexstr",
655 "value" : "0x04",
656 "mask" : null,
657 "next_state" : "parse_ipv4"
658 },
659 {
660 "value" : "default",
661 "mask" : null,
662 "next_state" : "parse_ethernet"
663 }
664 ],
665 "transition_key" : [
666 {
667 "type" : "field",
668 "value" : ["scalars", "tmp"]
669 }
670 ]
671 },
672 {
673 "name" : "parse_ipv4",
674 "id" : 5,
675 "parser_ops" : [
676 {
677 "parameters" : [
678 {
679 "type" : "regular",
680 "value" : "ipv4"
681 }
682 ],
683 "op" : "extract"
684 },
685 {
686 "parameters" : [
687 {
688 "type" : "field",
689 "value" : ["scalars", "fabric_metadata_t.ip_proto"]
690 },
691 {
692 "type" : "field",
693 "value" : ["ipv4", "protocol"]
694 }
695 ],
696 "op" : "set"
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700697 },
698 {
699 "parameters" : [
700 {
701 "type" : "field",
702 "value" : ["scalars", "last_ipv4_dscp"]
703 },
704 {
705 "type" : "field",
706 "value" : ["ipv4", "dscp"]
707 }
708 ],
709 "op" : "set"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900710 }
711 ],
712 "transitions" : [
713 {
714 "type" : "hexstr",
715 "value" : "0x06",
716 "mask" : null,
717 "next_state" : "parse_tcp"
718 },
719 {
720 "type" : "hexstr",
721 "value" : "0x11",
722 "mask" : null,
723 "next_state" : "parse_udp"
724 },
725 {
726 "type" : "hexstr",
727 "value" : "0x01",
728 "mask" : null,
729 "next_state" : "parse_icmp"
730 },
731 {
732 "value" : "default",
733 "mask" : null,
734 "next_state" : null
735 }
736 ],
737 "transition_key" : [
738 {
739 "type" : "field",
740 "value" : ["ipv4", "protocol"]
741 }
742 ]
743 },
744 {
745 "name" : "parse_arp",
746 "id" : 6,
747 "parser_ops" : [
748 {
749 "parameters" : [
750 {
751 "type" : "regular",
752 "value" : "arp"
753 }
754 ],
755 "op" : "extract"
756 }
757 ],
758 "transitions" : [
759 {
760 "value" : "default",
761 "mask" : null,
762 "next_state" : null
763 }
764 ],
765 "transition_key" : []
766 },
767 {
768 "name" : "parse_tcp",
769 "id" : 7,
770 "parser_ops" : [
771 {
772 "parameters" : [
773 {
774 "type" : "regular",
775 "value" : "tcp"
776 }
777 ],
778 "op" : "extract"
779 },
780 {
781 "parameters" : [
782 {
783 "type" : "field",
784 "value" : ["scalars", "fabric_metadata_t.l4_src_port"]
785 },
786 {
787 "type" : "field",
788 "value" : ["tcp", "src_port"]
789 }
790 ],
791 "op" : "set"
792 },
793 {
794 "parameters" : [
795 {
796 "type" : "field",
797 "value" : ["scalars", "fabric_metadata_t.l4_dst_port"]
798 },
799 {
800 "type" : "field",
801 "value" : ["tcp", "dst_port"]
802 }
803 ],
804 "op" : "set"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900805 }
806 ],
807 "transitions" : [
808 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900809 "value" : "default",
810 "mask" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700811 "next_state" : "parse_int"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900812 }
813 ],
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700814 "transition_key" : []
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900815 },
816 {
817 "name" : "parse_udp",
818 "id" : 8,
819 "parser_ops" : [
820 {
821 "parameters" : [
822 {
823 "type" : "regular",
824 "value" : "udp"
825 }
826 ],
827 "op" : "extract"
828 },
829 {
830 "parameters" : [
831 {
832 "type" : "field",
833 "value" : ["scalars", "fabric_metadata_t.l4_src_port"]
834 },
835 {
836 "type" : "field",
837 "value" : ["udp", "src_port"]
838 }
839 ],
840 "op" : "set"
841 },
842 {
843 "parameters" : [
844 {
845 "type" : "field",
846 "value" : ["scalars", "fabric_metadata_t.l4_dst_port"]
847 },
848 {
849 "type" : "field",
850 "value" : ["udp", "dst_port"]
851 }
852 ],
853 "op" : "set"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900854 }
855 ],
856 "transitions" : [
857 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900858 "value" : "default",
859 "mask" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700860 "next_state" : "parse_int"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900861 }
862 ],
863 "transition_key" : [
864 {
865 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700866 "value" : ["udp", "dst_port"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900867 }
868 ]
869 },
870 {
871 "name" : "parse_icmp",
872 "id" : 9,
873 "parser_ops" : [
874 {
875 "parameters" : [
876 {
877 "type" : "regular",
878 "value" : "icmp"
879 }
880 ],
881 "op" : "extract"
882 }
883 ],
884 "transitions" : [
885 {
886 "value" : "default",
887 "mask" : null,
888 "next_state" : null
889 }
890 ],
891 "transition_key" : []
892 },
893 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700894 "name" : "parse_int",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900895 "id" : 10,
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700896 "parser_ops" : [],
897 "transitions" : [
898 {
899 "type" : "hexstr",
900 "value" : "0x01",
901 "mask" : "0x01",
902 "next_state" : "parse_intl4_shim"
903 },
904 {
905 "value" : "default",
906 "mask" : null,
907 "next_state" : null
908 }
909 ],
910 "transition_key" : [
911 {
912 "type" : "field",
913 "value" : ["scalars", "last_ipv4_dscp"]
914 }
915 ]
916 },
917 {
918 "name" : "parse_intl4_shim",
919 "id" : 11,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900920 "parser_ops" : [
921 {
922 "parameters" : [
923 {
924 "type" : "regular",
925 "value" : "intl4_shim"
926 }
927 ],
928 "op" : "extract"
929 },
930 {
931 "parameters" : [
932 {
933 "type" : "regular",
934 "value" : "int_header"
935 }
936 ],
937 "op" : "extract"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900938 }
939 ],
940 "transitions" : [
941 {
942 "type" : "hexstr",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700943 "value" : "0x04",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900944 "mask" : null,
945 "next_state" : "parse_intl4_tail"
946 },
947 {
948 "value" : "default",
949 "mask" : null,
950 "next_state" : "parse_int_data"
951 }
952 ],
953 "transition_key" : [
954 {
955 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700956 "value" : ["intl4_shim", "len_words"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900957 }
958 ]
959 },
960 {
961 "name" : "parse_int_data",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700962 "id" : 12,
963 "parser_ops" : [],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900964 "transitions" : [
965 {
966 "value" : "default",
967 "mask" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700968 "next_state" : null
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900969 }
970 ],
971 "transition_key" : []
972 },
973 {
974 "name" : "parse_intl4_tail",
Carmelo Cascone79a3a312018-08-16 17:14:43 -0700975 "id" : 13,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +0900976 "parser_ops" : [
977 {
978 "parameters" : [
979 {
980 "type" : "regular",
981 "value" : "intl4_tail"
982 }
983 ],
984 "op" : "extract"
985 }
986 ],
987 "transitions" : [
988 {
989 "value" : "default",
990 "mask" : null,
991 "next_state" : null
992 }
993 ],
994 "transition_key" : []
995 }
996 ]
997 }
998 ],
999 "parse_vsets" : [],
1000 "deparsers" : [
1001 {
1002 "name" : "deparser",
1003 "id" : 0,
1004 "source_info" : {
1005 "filename" : "include/parser.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001006 "line" : 228,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001007 "column" : 8,
1008 "source_fragment" : "FabricDeparser"
1009 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001010 "order" : ["packet_in", "ethernet", "vlan_tag", "mpls", "arp", "ipv4", "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"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001011 }
1012 ],
1013 "meter_arrays" : [],
1014 "counter_arrays" : [
1015 {
1016 "name" : "FabricIngress.process_set_source_sink.counter_set_source",
1017 "id" : 0,
1018 "is_direct" : true,
1019 "binding" : "FabricIngress.process_set_source_sink.tb_set_source"
1020 },
1021 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001022 "name" : "FabricIngress.filtering.ingress_port_vlan_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001023 "id" : 1,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001024 "is_direct" : true,
1025 "binding" : "FabricIngress.filtering.ingress_port_vlan"
1026 },
1027 {
1028 "name" : "FabricIngress.filtering.fwd_classifier_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001029 "id" : 2,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001030 "is_direct" : true,
1031 "binding" : "FabricIngress.filtering.fwd_classifier"
1032 },
1033 {
1034 "name" : "FabricIngress.forwarding.bridging_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001035 "id" : 3,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001036 "is_direct" : true,
1037 "binding" : "FabricIngress.forwarding.bridging"
1038 },
1039 {
1040 "name" : "FabricIngress.forwarding.mpls_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001041 "id" : 4,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001042 "is_direct" : true,
1043 "binding" : "FabricIngress.forwarding.mpls"
1044 },
1045 {
Charles Chan384aea22018-08-23 22:08:02 -07001046 "name" : "FabricIngress.forwarding.routing_v4_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001047 "id" : 5,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001048 "is_direct" : true,
Charles Chan384aea22018-08-23 22:08:02 -07001049 "binding" : "FabricIngress.forwarding.routing_v4"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001050 },
1051 {
1052 "name" : "FabricIngress.forwarding.acl_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001053 "id" : 6,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001054 "is_direct" : true,
1055 "binding" : "FabricIngress.forwarding.acl"
1056 },
1057 {
1058 "name" : "FabricIngress.next.vlan_meta_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001059 "id" : 7,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001060 "is_direct" : true,
1061 "binding" : "FabricIngress.next.vlan_meta"
1062 },
1063 {
1064 "name" : "FabricIngress.next.simple_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001065 "id" : 8,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001066 "is_direct" : true,
1067 "binding" : "FabricIngress.next.simple"
1068 },
1069 {
1070 "name" : "FabricIngress.next.hashed_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001071 "id" : 9,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001072 "is_direct" : true,
1073 "binding" : "FabricIngress.next.hashed"
1074 },
1075 {
1076 "name" : "FabricIngress.next.multicast_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001077 "id" : 10,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001078 "is_direct" : true,
1079 "binding" : "FabricIngress.next.multicast"
1080 },
1081 {
1082 "name" : "FabricIngress.port_counters_control.egress_port_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001083 "id" : 11,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001084 "source_info" : {
1085 "filename" : "include/control/port_counter.p4",
1086 "line" : 23,
1087 "column" : 48,
1088 "source_fragment" : "egress_port_counter"
1089 },
1090 "size" : 511,
1091 "is_direct" : false
1092 },
1093 {
1094 "name" : "FabricIngress.port_counters_control.ingress_port_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001095 "id" : 12,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001096 "source_info" : {
1097 "filename" : "include/control/port_counter.p4",
1098 "line" : 24,
1099 "column" : 48,
1100 "source_fragment" : "ingress_port_counter"
1101 },
1102 "size" : 511,
1103 "is_direct" : false
1104 },
1105 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001106 "name" : "FabricEgress.process_int_main.process_int_source.counter_int_source",
1107 "id" : 13,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001108 "is_direct" : true,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001109 "binding" : "FabricEgress.process_int_main.process_int_source.tb_int_source"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001110 },
1111 {
1112 "name" : "FabricEgress.egress_next.egress_vlan_counter",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001113 "id" : 14,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001114 "is_direct" : true,
1115 "binding" : "FabricEgress.egress_next.egress_vlan"
1116 }
1117 ],
1118 "register_arrays" : [],
1119 "calculations" : [
1120 {
1121 "name" : "calc",
1122 "id" : 0,
1123 "source_info" : {
1124 "filename" : "include/checksum.p4",
1125 "line" : 28,
1126 "column" : 8,
1127 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
1128 },
1129 "algo" : "csum16",
1130 "input" : [
1131 {
1132 "type" : "field",
1133 "value" : ["ipv4", "version"]
1134 },
1135 {
1136 "type" : "field",
1137 "value" : ["ipv4", "ihl"]
1138 },
1139 {
1140 "type" : "field",
1141 "value" : ["ipv4", "dscp"]
1142 },
1143 {
1144 "type" : "field",
1145 "value" : ["ipv4", "ecn"]
1146 },
1147 {
1148 "type" : "field",
1149 "value" : ["ipv4", "total_len"]
1150 },
1151 {
1152 "type" : "field",
1153 "value" : ["ipv4", "identification"]
1154 },
1155 {
1156 "type" : "field",
1157 "value" : ["ipv4", "flags"]
1158 },
1159 {
1160 "type" : "field",
1161 "value" : ["ipv4", "frag_offset"]
1162 },
1163 {
1164 "type" : "field",
1165 "value" : ["ipv4", "ttl"]
1166 },
1167 {
1168 "type" : "field",
1169 "value" : ["ipv4", "protocol"]
1170 },
1171 {
1172 "type" : "field",
1173 "value" : ["ipv4", "src_addr"]
1174 },
1175 {
1176 "type" : "field",
1177 "value" : ["ipv4", "dst_addr"]
1178 }
1179 ]
1180 },
1181 {
1182 "name" : "calc_0",
1183 "id" : 1,
1184 "source_info" : {
1185 "filename" : "include/checksum.p4",
1186 "line" : 57,
1187 "column" : 8,
1188 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
1189 },
1190 "algo" : "csum16",
1191 "input" : [
1192 {
1193 "type" : "field",
1194 "value" : ["ipv4", "version"]
1195 },
1196 {
1197 "type" : "field",
1198 "value" : ["ipv4", "ihl"]
1199 },
1200 {
1201 "type" : "field",
1202 "value" : ["ipv4", "dscp"]
1203 },
1204 {
1205 "type" : "field",
1206 "value" : ["ipv4", "ecn"]
1207 },
1208 {
1209 "type" : "field",
1210 "value" : ["ipv4", "total_len"]
1211 },
1212 {
1213 "type" : "field",
1214 "value" : ["ipv4", "identification"]
1215 },
1216 {
1217 "type" : "field",
1218 "value" : ["ipv4", "flags"]
1219 },
1220 {
1221 "type" : "field",
1222 "value" : ["ipv4", "frag_offset"]
1223 },
1224 {
1225 "type" : "field",
1226 "value" : ["ipv4", "ttl"]
1227 },
1228 {
1229 "type" : "field",
1230 "value" : ["ipv4", "protocol"]
1231 },
1232 {
1233 "type" : "field",
1234 "value" : ["ipv4", "src_addr"]
1235 },
1236 {
1237 "type" : "field",
1238 "value" : ["ipv4", "dst_addr"]
1239 }
1240 ]
1241 }
1242 ],
1243 "learn_lists" : [],
1244 "actions" : [
1245 {
1246 "name" : "NoAction",
1247 "id" : 0,
1248 "runtime_data" : [],
1249 "primitives" : []
1250 },
1251 {
1252 "name" : "NoAction",
1253 "id" : 1,
1254 "runtime_data" : [],
1255 "primitives" : []
1256 },
1257 {
1258 "name" : "NoAction",
1259 "id" : 2,
1260 "runtime_data" : [],
1261 "primitives" : []
1262 },
1263 {
1264 "name" : "NoAction",
1265 "id" : 3,
1266 "runtime_data" : [],
1267 "primitives" : []
1268 },
1269 {
1270 "name" : "NoAction",
1271 "id" : 4,
1272 "runtime_data" : [],
1273 "primitives" : []
1274 },
1275 {
1276 "name" : "NoAction",
1277 "id" : 5,
1278 "runtime_data" : [],
1279 "primitives" : []
1280 },
1281 {
1282 "name" : "NoAction",
1283 "id" : 6,
1284 "runtime_data" : [],
1285 "primitives" : []
1286 },
1287 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001288 "name" : "nop",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001289 "id" : 7,
1290 "runtime_data" : [],
1291 "primitives" : []
1292 },
1293 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001294 "name" : "FabricIngress.process_set_source_sink.int_set_source",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001295 "id" : 8,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001296 "runtime_data" : [],
1297 "primitives" : [
1298 {
1299 "op" : "assign",
1300 "parameters" : [
1301 {
1302 "type" : "field",
1303 "value" : ["userMetadata.int_meta", "source"]
1304 },
1305 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001306 "type" : "expression",
1307 "value" : {
1308 "type" : "expression",
1309 "value" : {
1310 "op" : "b2d",
1311 "left" : null,
1312 "right" : {
1313 "type" : "bool",
1314 "value" : true
1315 }
1316 }
1317 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001318 }
1319 ],
1320 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001321 "filename" : "include/int/int_main.p4",
1322 "line" : 42,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001323 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001324 "source_fragment" : "fabric_metadata.int_meta.source = true"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001325 }
1326 }
1327 ]
1328 },
1329 {
1330 "name" : "FabricIngress.filtering.drop",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001331 "id" : 9,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001332 "runtime_data" : [],
1333 "primitives" : [
1334 {
1335 "op" : "drop",
1336 "parameters" : [],
1337 "source_info" : {
1338 "filename" : "include/control/filtering.p4",
1339 "line" : 37,
1340 "column" : 8,
1341 "source_fragment" : "mark_to_drop()"
1342 }
1343 }
1344 ]
1345 },
1346 {
1347 "name" : "FabricIngress.filtering.set_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001348 "id" : 10,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001349 "runtime_data" : [
1350 {
1351 "name" : "new_vlan_id",
1352 "bitwidth" : 12
1353 }
1354 ],
1355 "primitives" : [
1356 {
1357 "op" : "assign",
1358 "parameters" : [
1359 {
1360 "type" : "field",
1361 "value" : ["vlan_tag", "vlan_id"]
1362 },
1363 {
1364 "type" : "runtime_data",
1365 "value" : 0
1366 }
1367 ],
1368 "source_info" : {
1369 "filename" : "include/control/filtering.p4",
1370 "line" : 42,
1371 "column" : 8,
1372 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id"
1373 }
1374 }
1375 ]
1376 },
1377 {
1378 "name" : "FabricIngress.filtering.push_internal_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001379 "id" : 11,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001380 "runtime_data" : [
1381 {
1382 "name" : "new_vlan_id",
1383 "bitwidth" : 12
1384 }
1385 ],
1386 "primitives" : [
1387 {
1388 "op" : "add_header",
1389 "parameters" : [
1390 {
1391 "type" : "header",
1392 "value" : "vlan_tag"
1393 }
1394 ],
1395 "source_info" : {
1396 "filename" : "include/control/filtering.p4",
1397 "line" : 49,
1398 "column" : 8,
1399 "source_fragment" : "hdr.vlan_tag.setValid()"
1400 }
1401 },
1402 {
1403 "op" : "assign",
1404 "parameters" : [
1405 {
1406 "type" : "field",
1407 "value" : ["vlan_tag", "cfi"]
1408 },
1409 {
1410 "type" : "hexstr",
1411 "value" : "0x00"
1412 }
1413 ],
1414 "source_info" : {
1415 "filename" : "include/control/filtering.p4",
1416 "line" : 50,
1417 "column" : 8,
1418 "source_fragment" : "hdr.vlan_tag.cfi = 0"
1419 }
1420 },
1421 {
1422 "op" : "assign",
1423 "parameters" : [
1424 {
1425 "type" : "field",
1426 "value" : ["vlan_tag", "pri"]
1427 },
1428 {
1429 "type" : "hexstr",
1430 "value" : "0x00"
1431 }
1432 ],
1433 "source_info" : {
1434 "filename" : "include/control/filtering.p4",
1435 "line" : 51,
1436 "column" : 8,
1437 "source_fragment" : "hdr.vlan_tag.pri = 0"
1438 }
1439 },
1440 {
1441 "op" : "assign",
1442 "parameters" : [
1443 {
1444 "type" : "field",
1445 "value" : ["vlan_tag", "ether_type"]
1446 },
1447 {
1448 "type" : "field",
1449 "value" : ["ethernet", "ether_type"]
1450 }
1451 ],
1452 "source_info" : {
1453 "filename" : "include/control/filtering.p4",
1454 "line" : 52,
1455 "column" : 8,
1456 "source_fragment" : "hdr.vlan_tag.ether_type = hdr.ethernet.ether_type"
1457 }
1458 },
1459 {
1460 "op" : "assign",
1461 "parameters" : [
1462 {
1463 "type" : "field",
1464 "value" : ["ethernet", "ether_type"]
1465 },
1466 {
1467 "type" : "hexstr",
1468 "value" : "0x8100"
1469 }
1470 ],
1471 "source_info" : {
1472 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001473 "line" : 91,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001474 "column" : 31,
1475 "source_fragment" : "0x8100; ..."
1476 }
1477 },
1478 {
1479 "op" : "assign",
1480 "parameters" : [
1481 {
1482 "type" : "field",
1483 "value" : ["vlan_tag", "vlan_id"]
1484 },
1485 {
1486 "type" : "runtime_data",
1487 "value" : 0
1488 }
1489 ],
1490 "source_info" : {
1491 "filename" : "include/control/filtering.p4",
1492 "line" : 54,
1493 "column" : 8,
1494 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id"
1495 }
1496 },
1497 {
1498 "op" : "assign",
1499 "parameters" : [
1500 {
1501 "type" : "field",
1502 "value" : ["scalars", "fabric_metadata_t.pop_vlan_when_packet_in"]
1503 },
1504 {
1505 "type" : "expression",
1506 "value" : {
1507 "type" : "expression",
1508 "value" : {
1509 "op" : "b2d",
1510 "left" : null,
1511 "right" : {
1512 "type" : "bool",
1513 "value" : true
1514 }
1515 }
1516 }
1517 }
1518 ],
1519 "source_info" : {
1520 "filename" : "include/control/filtering.p4",
1521 "line" : 57,
1522 "column" : 8,
1523 "source_fragment" : "fabric_metadata.pop_vlan_when_packet_in = true"
1524 }
1525 }
1526 ]
1527 },
1528 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07001529 "name" : "FabricIngress.filtering.nop_ingress_port_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001530 "id" : 12,
Carmelo Cascone8a715f82018-08-20 23:16:27 -07001531 "runtime_data" : [],
1532 "primitives" : []
1533 },
1534 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001535 "name" : "FabricIngress.filtering.set_forwarding_type",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001536 "id" : 13,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001537 "runtime_data" : [
1538 {
1539 "name" : "fwd_type",
1540 "bitwidth" : 3
1541 }
1542 ],
1543 "primitives" : [
1544 {
1545 "op" : "assign",
1546 "parameters" : [
1547 {
1548 "type" : "field",
1549 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
1550 },
1551 {
1552 "type" : "runtime_data",
1553 "value" : 0
1554 }
1555 ],
1556 "source_info" : {
1557 "filename" : "include/control/filtering.p4",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07001558 "line" : 99,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001559 "column" : 8,
1560 "source_fragment" : "fabric_metadata.fwd_type = fwd_type"
1561 }
1562 }
1563 ]
1564 },
1565 {
1566 "name" : "FabricIngress.forwarding.set_next_id_bridging",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001567 "id" : 14,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001568 "runtime_data" : [
1569 {
1570 "name" : "next_id",
1571 "bitwidth" : 32
1572 }
1573 ],
1574 "primitives" : [
1575 {
1576 "op" : "assign",
1577 "parameters" : [
1578 {
1579 "type" : "field",
1580 "value" : ["scalars", "fabric_metadata_t.next_id"]
1581 },
1582 {
1583 "type" : "runtime_data",
1584 "value" : 0
1585 }
1586 ],
1587 "source_info" : {
1588 "filename" : "include/control/forwarding.p4",
1589 "line" : 37,
1590 "column" : 8,
1591 "source_fragment" : "fabric_metadata.next_id = next_id"
1592 }
1593 }
1594 ]
1595 },
1596 {
1597 "name" : "FabricIngress.forwarding.pop_mpls_and_next",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001598 "id" : 15,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001599 "runtime_data" : [
1600 {
1601 "name" : "next_id",
1602 "bitwidth" : 32
1603 }
1604 ],
1605 "primitives" : [
1606 {
1607 "op" : "remove_header",
1608 "parameters" : [
1609 {
1610 "type" : "header",
1611 "value" : "mpls"
1612 }
1613 ],
1614 "source_info" : {
1615 "filename" : "include/control/forwarding.p4",
1616 "line" : 60,
1617 "column" : 8,
1618 "source_fragment" : "hdr.mpls.setInvalid()"
1619 }
1620 },
1621 {
1622 "op" : "assign",
1623 "parameters" : [
1624 {
1625 "type" : "field",
1626 "value" : ["scalars", "fabric_metadata_t.next_id"]
1627 },
1628 {
1629 "type" : "runtime_data",
1630 "value" : 0
1631 }
1632 ],
1633 "source_info" : {
1634 "filename" : "include/control/forwarding.p4",
1635 "line" : 61,
1636 "column" : 8,
1637 "source_fragment" : "fabric_metadata.next_id = next_id"
1638 }
1639 }
1640 ]
1641 },
1642 {
Charles Chan384aea22018-08-23 22:08:02 -07001643 "name" : "FabricIngress.forwarding.set_next_id_routing_v4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001644 "id" : 16,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001645 "runtime_data" : [
1646 {
1647 "name" : "next_id",
1648 "bitwidth" : 32
1649 }
1650 ],
1651 "primitives" : [
1652 {
1653 "op" : "assign",
1654 "parameters" : [
1655 {
1656 "type" : "field",
1657 "value" : ["scalars", "fabric_metadata_t.next_id"]
1658 },
1659 {
1660 "type" : "runtime_data",
1661 "value" : 0
1662 }
1663 ],
1664 "source_info" : {
1665 "filename" : "include/control/forwarding.p4",
1666 "line" : 83,
1667 "column" : 8,
1668 "source_fragment" : "fabric_metadata.next_id = next_id"
1669 }
1670 }
1671 ]
1672 },
1673 {
Charles Chancd03f072018-08-31 17:46:37 -07001674 "name" : "FabricIngress.forwarding.nop_routing_v4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001675 "id" : 17,
Charles Chancd03f072018-08-31 17:46:37 -07001676 "runtime_data" : [],
1677 "primitives" : []
1678 },
1679 {
1680 "name" : "FabricIngress.forwarding.set_next_id_acl",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001681 "id" : 18,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001682 "runtime_data" : [
1683 {
1684 "name" : "next_id",
1685 "bitwidth" : 32
1686 }
1687 ],
1688 "primitives" : [
1689 {
1690 "op" : "assign",
1691 "parameters" : [
1692 {
1693 "type" : "field",
1694 "value" : ["scalars", "fabric_metadata_t.next_id"]
1695 },
1696 {
1697 "type" : "runtime_data",
1698 "value" : 0
1699 }
1700 ],
1701 "source_info" : {
1702 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -07001703 "line" : 110,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001704 "column" : 8,
1705 "source_fragment" : "fabric_metadata.next_id = next_id"
1706 }
1707 }
1708 ]
1709 },
1710 {
1711 "name" : "FabricIngress.forwarding.punt_to_cpu",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001712 "id" : 19,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001713 "runtime_data" : [],
1714 "primitives" : [
1715 {
1716 "op" : "assign",
1717 "parameters" : [
1718 {
1719 "type" : "field",
1720 "value" : ["standard_metadata", "egress_spec"]
1721 },
1722 {
1723 "type" : "hexstr",
1724 "value" : "0x00ff"
1725 }
1726 ],
1727 "source_info" : {
1728 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -07001729 "line" : 116,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001730 "column" : 8,
1731 "source_fragment" : "standard_metadata.egress_spec = 255"
1732 }
1733 },
1734 {
1735 "op" : "exit",
1736 "parameters" : [],
1737 "source_info" : {
1738 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -07001739 "line" : 118,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001740 "column" : 8,
1741 "source_fragment" : "exit"
1742 }
1743 }
1744 ]
1745 },
1746 {
1747 "name" : "FabricIngress.forwarding.clone_to_cpu",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001748 "id" : 20,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001749 "runtime_data" : [],
1750 "primitives" : [
1751 {
1752 "op" : "assign",
1753 "parameters" : [
1754 {
1755 "type" : "field",
1756 "value" : ["scalars", "fabric_metadata_t.clone_to_cpu"]
1757 },
1758 {
1759 "type" : "expression",
1760 "value" : {
1761 "type" : "expression",
1762 "value" : {
1763 "op" : "b2d",
1764 "left" : null,
1765 "right" : {
1766 "type" : "bool",
1767 "value" : true
1768 }
1769 }
1770 }
1771 }
1772 ],
1773 "source_info" : {
1774 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -07001775 "line" : 123,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001776 "column" : 8,
1777 "source_fragment" : "fabric_metadata.clone_to_cpu = true"
1778 }
1779 }
1780 ]
1781 },
1782 {
1783 "name" : "FabricIngress.forwarding.drop",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001784 "id" : 21,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001785 "runtime_data" : [],
1786 "primitives" : [
1787 {
1788 "op" : "drop",
1789 "parameters" : [],
1790 "source_info" : {
1791 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -07001792 "line" : 128,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001793 "column" : 8,
1794 "source_fragment" : "mark_to_drop()"
1795 }
1796 }
1797 ]
1798 },
1799 {
Charles Chancf696e52018-08-16 16:25:13 -07001800 "name" : "FabricIngress.forwarding.nop_acl",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001801 "id" : 22,
Charles Chancf696e52018-08-16 16:25:13 -07001802 "runtime_data" : [],
1803 "primitives" : []
1804 },
1805 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001806 "name" : "FabricIngress.next.set_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001807 "id" : 23,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001808 "runtime_data" : [
1809 {
1810 "name" : "new_vlan_id",
1811 "bitwidth" : 12
1812 }
1813 ],
1814 "primitives" : [
1815 {
1816 "op" : "assign",
1817 "parameters" : [
1818 {
1819 "type" : "field",
1820 "value" : ["vlan_tag", "vlan_id"]
1821 },
1822 {
1823 "type" : "runtime_data",
1824 "value" : 0
1825 }
1826 ],
1827 "source_info" : {
1828 "filename" : "include/control/next.p4",
1829 "line" : 61,
1830 "column" : 8,
1831 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id"
1832 }
1833 }
1834 ]
1835 },
1836 {
1837 "name" : "FabricIngress.next.output_simple",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001838 "id" : 24,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001839 "runtime_data" : [
1840 {
1841 "name" : "port_num",
1842 "bitwidth" : 9
1843 }
1844 ],
1845 "primitives" : [
1846 {
1847 "op" : "assign",
1848 "parameters" : [
1849 {
1850 "type" : "field",
1851 "value" : ["standard_metadata", "egress_spec"]
1852 },
1853 {
1854 "type" : "runtime_data",
1855 "value" : 0
1856 }
1857 ],
1858 "source_info" : {
1859 "filename" : "include/control/next.p4",
1860 "line" : 85,
1861 "column" : 8,
1862 "source_fragment" : "standard_metadata.egress_spec = port_num"
1863 }
1864 }
1865 ]
1866 },
1867 {
1868 "name" : "FabricIngress.next.set_vlan_output",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001869 "id" : 25,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001870 "runtime_data" : [
1871 {
1872 "name" : "new_vlan_id",
1873 "bitwidth" : 12
1874 },
1875 {
1876 "name" : "port_num",
1877 "bitwidth" : 9
1878 }
1879 ],
1880 "primitives" : [
1881 {
1882 "op" : "assign",
1883 "parameters" : [
1884 {
1885 "type" : "field",
1886 "value" : ["vlan_tag", "vlan_id"]
1887 },
1888 {
1889 "type" : "runtime_data",
1890 "value" : 0
1891 }
1892 ],
1893 "source_info" : {
1894 "filename" : "include/control/next.p4",
1895 "line" : 90,
1896 "column" : 8,
1897 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id"
1898 }
1899 },
1900 {
1901 "op" : "assign",
1902 "parameters" : [
1903 {
1904 "type" : "field",
1905 "value" : ["standard_metadata", "egress_spec"]
1906 },
1907 {
1908 "type" : "runtime_data",
1909 "value" : 1
1910 }
1911 ],
1912 "source_info" : {
1913 "filename" : "include/control/next.p4",
1914 "line" : 85,
1915 "column" : 8,
1916 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
1917 }
1918 }
1919 ]
1920 },
1921 {
1922 "name" : "FabricIngress.next.l3_routing_simple",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07001923 "id" : 26,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09001924 "runtime_data" : [
1925 {
1926 "name" : "port_num",
1927 "bitwidth" : 9
1928 },
1929 {
1930 "name" : "smac",
1931 "bitwidth" : 48
1932 },
1933 {
1934 "name" : "dmac",
1935 "bitwidth" : 48
1936 }
1937 ],
1938 "primitives" : [
1939 {
1940 "op" : "assign",
1941 "parameters" : [
1942 {
1943 "type" : "field",
1944 "value" : ["ethernet", "src_addr"]
1945 },
1946 {
1947 "type" : "runtime_data",
1948 "value" : 1
1949 }
1950 ],
1951 "source_info" : {
1952 "filename" : "include/control/next.p4",
1953 "line" : 37,
1954 "column" : 8,
1955 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
1956 }
1957 },
1958 {
1959 "op" : "assign",
1960 "parameters" : [
1961 {
1962 "type" : "field",
1963 "value" : ["ethernet", "dst_addr"]
1964 },
1965 {
1966 "type" : "runtime_data",
1967 "value" : 2
1968 }
1969 ],
1970 "source_info" : {
1971 "filename" : "include/control/next.p4",
1972 "line" : 41,
1973 "column" : 8,
1974 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
1975 }
1976 },
1977 {
1978 "op" : "assign",
1979 "parameters" : [
1980 {
1981 "type" : "field",
1982 "value" : ["standard_metadata", "egress_spec"]
1983 },
1984 {
1985 "type" : "runtime_data",
1986 "value" : 0
1987 }
1988 ],
1989 "source_info" : {
1990 "filename" : "include/control/next.p4",
1991 "line" : 85,
1992 "column" : 8,
1993 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
1994 }
1995 }
1996 ]
1997 },
1998 {
1999 "name" : "FabricIngress.next.mpls_routing_v4_simple",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002000 "id" : 27,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002001 "runtime_data" : [
2002 {
2003 "name" : "port_num",
2004 "bitwidth" : 9
2005 },
2006 {
2007 "name" : "smac",
2008 "bitwidth" : 48
2009 },
2010 {
2011 "name" : "dmac",
2012 "bitwidth" : 48
2013 },
2014 {
2015 "name" : "label",
2016 "bitwidth" : 20
2017 }
2018 ],
2019 "primitives" : [
2020 {
2021 "op" : "assign",
2022 "parameters" : [
2023 {
2024 "type" : "field",
2025 "value" : ["ethernet", "src_addr"]
2026 },
2027 {
2028 "type" : "runtime_data",
2029 "value" : 1
2030 }
2031 ],
2032 "source_info" : {
2033 "filename" : "include/control/next.p4",
2034 "line" : 37,
2035 "column" : 8,
2036 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2037 }
2038 },
2039 {
2040 "op" : "assign",
2041 "parameters" : [
2042 {
2043 "type" : "field",
2044 "value" : ["ethernet", "dst_addr"]
2045 },
2046 {
2047 "type" : "runtime_data",
2048 "value" : 2
2049 }
2050 ],
2051 "source_info" : {
2052 "filename" : "include/control/next.p4",
2053 "line" : 41,
2054 "column" : 8,
2055 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2056 }
2057 },
2058 {
2059 "op" : "assign",
2060 "parameters" : [
2061 {
2062 "type" : "field",
2063 "value" : ["standard_metadata", "egress_spec"]
2064 },
2065 {
2066 "type" : "runtime_data",
2067 "value" : 0
2068 }
2069 ],
2070 "source_info" : {
2071 "filename" : "include/control/next.p4",
2072 "line" : 85,
2073 "column" : 8,
2074 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2075 }
2076 },
2077 {
2078 "op" : "add_header",
2079 "parameters" : [
2080 {
2081 "type" : "header",
2082 "value" : "mpls"
2083 }
2084 ],
2085 "source_info" : {
2086 "filename" : "include/control/next.p4",
2087 "line" : 46,
2088 "column" : 8,
2089 "source_fragment" : "hdr.mpls.setValid()"
2090 }
2091 },
2092 {
2093 "op" : "assign",
2094 "parameters" : [
2095 {
2096 "type" : "field",
2097 "value" : ["vlan_tag", "ether_type"]
2098 },
2099 {
2100 "type" : "hexstr",
2101 "value" : "0x8847"
2102 }
2103 ],
2104 "source_info" : {
2105 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002106 "line" : 92,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002107 "column" : 31,
2108 "source_fragment" : "0x8847; ..."
2109 }
2110 },
2111 {
2112 "op" : "assign",
2113 "parameters" : [
2114 {
2115 "type" : "field",
2116 "value" : ["mpls", "label"]
2117 },
2118 {
2119 "type" : "runtime_data",
2120 "value" : 3
2121 }
2122 ],
2123 "source_info" : {
2124 "filename" : "include/control/next.p4",
2125 "line" : 48,
2126 "column" : 8,
2127 "source_fragment" : "hdr.mpls.label = label; ..."
2128 }
2129 },
2130 {
2131 "op" : "assign",
2132 "parameters" : [
2133 {
2134 "type" : "field",
2135 "value" : ["mpls", "tc"]
2136 },
2137 {
2138 "type" : "hexstr",
2139 "value" : "0x00"
2140 }
2141 ],
2142 "source_info" : {
2143 "filename" : "include/control/next.p4",
2144 "line" : 49,
2145 "column" : 8,
2146 "source_fragment" : "hdr.mpls.tc = tc; ..."
2147 }
2148 },
2149 {
2150 "op" : "assign",
2151 "parameters" : [
2152 {
2153 "type" : "field",
2154 "value" : ["mpls", "bos"]
2155 },
2156 {
2157 "type" : "hexstr",
2158 "value" : "0x01"
2159 }
2160 ],
2161 "source_info" : {
2162 "filename" : "include/control/next.p4",
2163 "line" : 50,
2164 "column" : 8,
2165 "source_fragment" : "hdr.mpls.bos = 1w1"
2166 }
2167 },
2168 {
2169 "op" : "assign",
2170 "parameters" : [
2171 {
2172 "type" : "field",
2173 "value" : ["mpls", "ttl"]
2174 },
2175 {
2176 "type" : "hexstr",
2177 "value" : "0x40"
2178 }
2179 ],
2180 "source_info" : {
2181 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002182 "line" : 115,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002183 "column" : 32,
2184 "source_fragment" : "64; ..."
2185 }
2186 }
2187 ]
2188 },
2189 {
Charles Chancd03f072018-08-31 17:46:37 -07002190 "name" : "FabricIngress.next.mpls_routing_v6_simple",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002191 "id" : 28,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002192 "runtime_data" : [
2193 {
2194 "name" : "port_num",
2195 "bitwidth" : 9
2196 },
2197 {
2198 "name" : "smac",
2199 "bitwidth" : 48
2200 },
2201 {
2202 "name" : "dmac",
2203 "bitwidth" : 48
2204 },
2205 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002206 "name" : "label",
2207 "bitwidth" : 20
2208 }
2209 ],
2210 "primitives" : [
2211 {
2212 "op" : "assign",
2213 "parameters" : [
2214 {
2215 "type" : "field",
2216 "value" : ["ethernet", "src_addr"]
2217 },
2218 {
2219 "type" : "runtime_data",
2220 "value" : 1
2221 }
2222 ],
2223 "source_info" : {
2224 "filename" : "include/control/next.p4",
2225 "line" : 37,
2226 "column" : 8,
2227 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2228 }
2229 },
2230 {
2231 "op" : "assign",
2232 "parameters" : [
2233 {
2234 "type" : "field",
2235 "value" : ["ethernet", "dst_addr"]
2236 },
2237 {
2238 "type" : "runtime_data",
2239 "value" : 2
2240 }
2241 ],
2242 "source_info" : {
2243 "filename" : "include/control/next.p4",
2244 "line" : 41,
2245 "column" : 8,
2246 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2247 }
2248 },
2249 {
2250 "op" : "assign",
2251 "parameters" : [
2252 {
2253 "type" : "field",
2254 "value" : ["standard_metadata", "egress_spec"]
2255 },
2256 {
2257 "type" : "runtime_data",
2258 "value" : 0
2259 }
2260 ],
2261 "source_info" : {
2262 "filename" : "include/control/next.p4",
Charles Chancd03f072018-08-31 17:46:37 -07002263 "line" : 85,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002264 "column" : 8,
2265 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2266 }
2267 },
2268 {
2269 "op" : "add_header",
2270 "parameters" : [
2271 {
2272 "type" : "header",
2273 "value" : "mpls"
2274 }
2275 ],
2276 "source_info" : {
2277 "filename" : "include/control/next.p4",
2278 "line" : 46,
2279 "column" : 8,
2280 "source_fragment" : "hdr.mpls.setValid()"
2281 }
2282 },
2283 {
2284 "op" : "assign",
2285 "parameters" : [
2286 {
2287 "type" : "field",
2288 "value" : ["vlan_tag", "ether_type"]
2289 },
2290 {
2291 "type" : "hexstr",
2292 "value" : "0x8847"
2293 }
2294 ],
2295 "source_info" : {
2296 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002297 "line" : 92,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002298 "column" : 31,
2299 "source_fragment" : "0x8847; ..."
2300 }
2301 },
2302 {
2303 "op" : "assign",
2304 "parameters" : [
2305 {
2306 "type" : "field",
2307 "value" : ["mpls", "label"]
2308 },
2309 {
2310 "type" : "runtime_data",
2311 "value" : 3
2312 }
2313 ],
2314 "source_info" : {
2315 "filename" : "include/control/next.p4",
2316 "line" : 48,
2317 "column" : 8,
2318 "source_fragment" : "hdr.mpls.label = label; ..."
2319 }
2320 },
2321 {
2322 "op" : "assign",
2323 "parameters" : [
2324 {
2325 "type" : "field",
2326 "value" : ["mpls", "tc"]
2327 },
2328 {
2329 "type" : "hexstr",
2330 "value" : "0x00"
2331 }
2332 ],
2333 "source_info" : {
2334 "filename" : "include/control/next.p4",
2335 "line" : 49,
2336 "column" : 8,
2337 "source_fragment" : "hdr.mpls.tc = tc; ..."
2338 }
2339 },
2340 {
2341 "op" : "assign",
2342 "parameters" : [
2343 {
2344 "type" : "field",
2345 "value" : ["mpls", "bos"]
2346 },
2347 {
2348 "type" : "hexstr",
2349 "value" : "0x01"
2350 }
2351 ],
2352 "source_info" : {
2353 "filename" : "include/control/next.p4",
2354 "line" : 50,
2355 "column" : 8,
2356 "source_fragment" : "hdr.mpls.bos = 1w1"
2357 }
2358 },
2359 {
2360 "op" : "assign",
2361 "parameters" : [
2362 {
2363 "type" : "field",
2364 "value" : ["mpls", "ttl"]
2365 },
2366 {
2367 "type" : "hexstr",
2368 "value" : "0x40"
2369 }
2370 ],
2371 "source_info" : {
2372 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002373 "line" : 115,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002374 "column" : 32,
2375 "source_fragment" : "64; ..."
2376 }
2377 }
2378 ]
2379 },
2380 {
Charles Chancd03f072018-08-31 17:46:37 -07002381 "name" : "FabricIngress.next.l3_routing_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002382 "id" : 29,
Charles Chancd03f072018-08-31 17:46:37 -07002383 "runtime_data" : [
2384 {
2385 "name" : "port_num",
2386 "bitwidth" : 9
2387 },
2388 {
2389 "name" : "smac",
2390 "bitwidth" : 48
2391 },
2392 {
2393 "name" : "dmac",
2394 "bitwidth" : 48
2395 },
2396 {
2397 "name" : "new_vlan_id",
2398 "bitwidth" : 12
2399 }
2400 ],
2401 "primitives" : [
2402 {
2403 "op" : "assign",
2404 "parameters" : [
2405 {
2406 "type" : "field",
2407 "value" : ["ethernet", "src_addr"]
2408 },
2409 {
2410 "type" : "runtime_data",
2411 "value" : 1
2412 }
2413 ],
2414 "source_info" : {
2415 "filename" : "include/control/next.p4",
2416 "line" : 37,
2417 "column" : 8,
2418 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2419 }
2420 },
2421 {
2422 "op" : "assign",
2423 "parameters" : [
2424 {
2425 "type" : "field",
2426 "value" : ["ethernet", "dst_addr"]
2427 },
2428 {
2429 "type" : "runtime_data",
2430 "value" : 2
2431 }
2432 ],
2433 "source_info" : {
2434 "filename" : "include/control/next.p4",
2435 "line" : 41,
2436 "column" : 8,
2437 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2438 }
2439 },
2440 {
2441 "op" : "assign",
2442 "parameters" : [
2443 {
2444 "type" : "field",
2445 "value" : ["vlan_tag", "vlan_id"]
2446 },
2447 {
2448 "type" : "runtime_data",
2449 "value" : 3
2450 }
2451 ],
2452 "source_info" : {
2453 "filename" : "include/control/next.p4",
2454 "line" : 90,
2455 "column" : 8,
2456 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id; ..."
2457 }
2458 },
2459 {
2460 "op" : "assign",
2461 "parameters" : [
2462 {
2463 "type" : "field",
2464 "value" : ["standard_metadata", "egress_spec"]
2465 },
2466 {
2467 "type" : "runtime_data",
2468 "value" : 0
2469 }
2470 ],
2471 "source_info" : {
2472 "filename" : "include/control/next.p4",
2473 "line" : 85,
2474 "column" : 8,
2475 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2476 }
2477 }
2478 ]
2479 },
2480 {
2481 "name" : "FabricIngress.next.l3_routing_hashed",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002482 "id" : 30,
Charles Chancd03f072018-08-31 17:46:37 -07002483 "runtime_data" : [
2484 {
2485 "name" : "port_num",
2486 "bitwidth" : 9
2487 },
2488 {
2489 "name" : "smac",
2490 "bitwidth" : 48
2491 },
2492 {
2493 "name" : "dmac",
2494 "bitwidth" : 48
2495 }
2496 ],
2497 "primitives" : [
2498 {
2499 "op" : "assign",
2500 "parameters" : [
2501 {
2502 "type" : "field",
2503 "value" : ["ethernet", "src_addr"]
2504 },
2505 {
2506 "type" : "runtime_data",
2507 "value" : 1
2508 }
2509 ],
2510 "source_info" : {
2511 "filename" : "include/control/next.p4",
2512 "line" : 37,
2513 "column" : 8,
2514 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2515 }
2516 },
2517 {
2518 "op" : "assign",
2519 "parameters" : [
2520 {
2521 "type" : "field",
2522 "value" : ["ethernet", "dst_addr"]
2523 },
2524 {
2525 "type" : "runtime_data",
2526 "value" : 2
2527 }
2528 ],
2529 "source_info" : {
2530 "filename" : "include/control/next.p4",
2531 "line" : 41,
2532 "column" : 8,
2533 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2534 }
2535 },
2536 {
2537 "op" : "assign",
2538 "parameters" : [
2539 {
2540 "type" : "field",
2541 "value" : ["standard_metadata", "egress_spec"]
2542 },
2543 {
2544 "type" : "runtime_data",
2545 "value" : 0
2546 }
2547 ],
2548 "source_info" : {
2549 "filename" : "include/control/next.p4",
2550 "line" : 149,
2551 "column" : 8,
2552 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2553 }
2554 }
2555 ]
2556 },
2557 {
2558 "name" : "FabricIngress.next.mpls_routing_v4_hashed",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002559 "id" : 31,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002560 "runtime_data" : [
2561 {
2562 "name" : "port_num",
2563 "bitwidth" : 9
2564 },
2565 {
2566 "name" : "smac",
2567 "bitwidth" : 48
2568 },
2569 {
2570 "name" : "dmac",
2571 "bitwidth" : 48
2572 },
2573 {
2574 "name" : "label",
2575 "bitwidth" : 20
2576 }
2577 ],
2578 "primitives" : [
2579 {
2580 "op" : "assign",
2581 "parameters" : [
2582 {
2583 "type" : "field",
2584 "value" : ["ethernet", "src_addr"]
2585 },
2586 {
2587 "type" : "runtime_data",
2588 "value" : 1
2589 }
2590 ],
2591 "source_info" : {
2592 "filename" : "include/control/next.p4",
2593 "line" : 37,
2594 "column" : 8,
2595 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2596 }
2597 },
2598 {
2599 "op" : "assign",
2600 "parameters" : [
2601 {
2602 "type" : "field",
2603 "value" : ["ethernet", "dst_addr"]
2604 },
2605 {
2606 "type" : "runtime_data",
2607 "value" : 2
2608 }
2609 ],
2610 "source_info" : {
2611 "filename" : "include/control/next.p4",
2612 "line" : 41,
2613 "column" : 8,
2614 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2615 }
2616 },
2617 {
2618 "op" : "assign",
2619 "parameters" : [
2620 {
2621 "type" : "field",
2622 "value" : ["standard_metadata", "egress_spec"]
2623 },
2624 {
2625 "type" : "runtime_data",
2626 "value" : 0
2627 }
2628 ],
2629 "source_info" : {
2630 "filename" : "include/control/next.p4",
2631 "line" : 149,
2632 "column" : 8,
2633 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2634 }
2635 },
2636 {
2637 "op" : "add_header",
2638 "parameters" : [
2639 {
2640 "type" : "header",
2641 "value" : "mpls"
2642 }
2643 ],
2644 "source_info" : {
2645 "filename" : "include/control/next.p4",
2646 "line" : 46,
2647 "column" : 8,
2648 "source_fragment" : "hdr.mpls.setValid()"
2649 }
2650 },
2651 {
2652 "op" : "assign",
2653 "parameters" : [
2654 {
2655 "type" : "field",
2656 "value" : ["vlan_tag", "ether_type"]
2657 },
2658 {
2659 "type" : "hexstr",
2660 "value" : "0x8847"
2661 }
2662 ],
2663 "source_info" : {
2664 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002665 "line" : 92,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002666 "column" : 31,
2667 "source_fragment" : "0x8847; ..."
2668 }
2669 },
2670 {
2671 "op" : "assign",
2672 "parameters" : [
2673 {
2674 "type" : "field",
2675 "value" : ["mpls", "label"]
2676 },
2677 {
2678 "type" : "runtime_data",
2679 "value" : 3
2680 }
2681 ],
2682 "source_info" : {
2683 "filename" : "include/control/next.p4",
2684 "line" : 48,
2685 "column" : 8,
2686 "source_fragment" : "hdr.mpls.label = label; ..."
2687 }
2688 },
2689 {
2690 "op" : "assign",
2691 "parameters" : [
2692 {
2693 "type" : "field",
2694 "value" : ["mpls", "tc"]
2695 },
2696 {
2697 "type" : "hexstr",
2698 "value" : "0x00"
2699 }
2700 ],
2701 "source_info" : {
2702 "filename" : "include/control/next.p4",
2703 "line" : 49,
2704 "column" : 8,
2705 "source_fragment" : "hdr.mpls.tc = tc; ..."
2706 }
2707 },
2708 {
2709 "op" : "assign",
2710 "parameters" : [
2711 {
2712 "type" : "field",
2713 "value" : ["mpls", "bos"]
2714 },
2715 {
2716 "type" : "hexstr",
2717 "value" : "0x01"
2718 }
2719 ],
2720 "source_info" : {
2721 "filename" : "include/control/next.p4",
2722 "line" : 50,
2723 "column" : 8,
2724 "source_fragment" : "hdr.mpls.bos = 1w1"
2725 }
2726 },
2727 {
2728 "op" : "assign",
2729 "parameters" : [
2730 {
2731 "type" : "field",
2732 "value" : ["mpls", "ttl"]
2733 },
2734 {
2735 "type" : "hexstr",
2736 "value" : "0x40"
2737 }
2738 ],
2739 "source_info" : {
2740 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002741 "line" : 115,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002742 "column" : 32,
2743 "source_fragment" : "64; ..."
2744 }
2745 }
2746 ]
2747 },
2748 {
Charles Chancd03f072018-08-31 17:46:37 -07002749 "name" : "FabricIngress.next.mpls_routing_v6_hashed",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002750 "id" : 32,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002751 "runtime_data" : [
2752 {
Charles Chancd03f072018-08-31 17:46:37 -07002753 "name" : "port_num",
2754 "bitwidth" : 9
2755 },
2756 {
2757 "name" : "smac",
2758 "bitwidth" : 48
2759 },
2760 {
2761 "name" : "dmac",
2762 "bitwidth" : 48
2763 },
2764 {
2765 "name" : "label",
2766 "bitwidth" : 20
2767 }
2768 ],
2769 "primitives" : [
2770 {
2771 "op" : "assign",
2772 "parameters" : [
2773 {
2774 "type" : "field",
2775 "value" : ["ethernet", "src_addr"]
2776 },
2777 {
2778 "type" : "runtime_data",
2779 "value" : 1
2780 }
2781 ],
2782 "source_info" : {
2783 "filename" : "include/control/next.p4",
2784 "line" : 37,
2785 "column" : 8,
2786 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2787 }
2788 },
2789 {
2790 "op" : "assign",
2791 "parameters" : [
2792 {
2793 "type" : "field",
2794 "value" : ["ethernet", "dst_addr"]
2795 },
2796 {
2797 "type" : "runtime_data",
2798 "value" : 2
2799 }
2800 ],
2801 "source_info" : {
2802 "filename" : "include/control/next.p4",
2803 "line" : 41,
2804 "column" : 8,
2805 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2806 }
2807 },
2808 {
2809 "op" : "assign",
2810 "parameters" : [
2811 {
2812 "type" : "field",
2813 "value" : ["standard_metadata", "egress_spec"]
2814 },
2815 {
2816 "type" : "runtime_data",
2817 "value" : 0
2818 }
2819 ],
2820 "source_info" : {
2821 "filename" : "include/control/next.p4",
2822 "line" : 149,
2823 "column" : 8,
2824 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2825 }
2826 },
2827 {
2828 "op" : "add_header",
2829 "parameters" : [
2830 {
2831 "type" : "header",
2832 "value" : "mpls"
2833 }
2834 ],
2835 "source_info" : {
2836 "filename" : "include/control/next.p4",
2837 "line" : 46,
2838 "column" : 8,
2839 "source_fragment" : "hdr.mpls.setValid()"
2840 }
2841 },
2842 {
2843 "op" : "assign",
2844 "parameters" : [
2845 {
2846 "type" : "field",
2847 "value" : ["vlan_tag", "ether_type"]
2848 },
2849 {
2850 "type" : "hexstr",
2851 "value" : "0x8847"
2852 }
2853 ],
2854 "source_info" : {
2855 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002856 "line" : 92,
Charles Chancd03f072018-08-31 17:46:37 -07002857 "column" : 31,
2858 "source_fragment" : "0x8847; ..."
2859 }
2860 },
2861 {
2862 "op" : "assign",
2863 "parameters" : [
2864 {
2865 "type" : "field",
2866 "value" : ["mpls", "label"]
2867 },
2868 {
2869 "type" : "runtime_data",
2870 "value" : 3
2871 }
2872 ],
2873 "source_info" : {
2874 "filename" : "include/control/next.p4",
2875 "line" : 48,
2876 "column" : 8,
2877 "source_fragment" : "hdr.mpls.label = label; ..."
2878 }
2879 },
2880 {
2881 "op" : "assign",
2882 "parameters" : [
2883 {
2884 "type" : "field",
2885 "value" : ["mpls", "tc"]
2886 },
2887 {
2888 "type" : "hexstr",
2889 "value" : "0x00"
2890 }
2891 ],
2892 "source_info" : {
2893 "filename" : "include/control/next.p4",
2894 "line" : 49,
2895 "column" : 8,
2896 "source_fragment" : "hdr.mpls.tc = tc; ..."
2897 }
2898 },
2899 {
2900 "op" : "assign",
2901 "parameters" : [
2902 {
2903 "type" : "field",
2904 "value" : ["mpls", "bos"]
2905 },
2906 {
2907 "type" : "hexstr",
2908 "value" : "0x01"
2909 }
2910 ],
2911 "source_info" : {
2912 "filename" : "include/control/next.p4",
2913 "line" : 50,
2914 "column" : 8,
2915 "source_fragment" : "hdr.mpls.bos = 1w1"
2916 }
2917 },
2918 {
2919 "op" : "assign",
2920 "parameters" : [
2921 {
2922 "type" : "field",
2923 "value" : ["mpls", "ttl"]
2924 },
2925 {
2926 "type" : "hexstr",
2927 "value" : "0x40"
2928 }
2929 ],
2930 "source_info" : {
2931 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002932 "line" : 115,
Charles Chancd03f072018-08-31 17:46:37 -07002933 "column" : 32,
2934 "source_fragment" : "64; ..."
2935 }
2936 }
2937 ]
2938 },
2939 {
2940 "name" : "FabricIngress.next.set_mcast_group",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07002941 "id" : 33,
Charles Chancd03f072018-08-31 17:46:37 -07002942 "runtime_data" : [
2943 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09002944 "name" : "gid",
2945 "bitwidth" : 16
2946 }
2947 ],
2948 "primitives" : [
2949 {
2950 "op" : "assign",
2951 "parameters" : [
2952 {
2953 "type" : "field",
2954 "value" : ["standard_metadata", "mcast_grp"]
2955 },
2956 {
2957 "type" : "runtime_data",
2958 "value" : 0
2959 }
2960 ],
2961 "source_info" : {
2962 "filename" : "include/control/next.p4",
2963 "line" : 202,
2964 "column" : 8,
2965 "source_fragment" : "standard_metadata.mcast_grp = gid"
2966 }
2967 },
2968 {
2969 "op" : "assign",
2970 "parameters" : [
2971 {
2972 "type" : "field",
2973 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
2974 },
2975 {
2976 "type" : "expression",
2977 "value" : {
2978 "type" : "expression",
2979 "value" : {
2980 "op" : "b2d",
2981 "left" : null,
2982 "right" : {
2983 "type" : "bool",
2984 "value" : true
2985 }
2986 }
2987 }
2988 }
2989 ],
2990 "source_info" : {
2991 "filename" : "include/control/next.p4",
2992 "line" : 203,
2993 "column" : 8,
2994 "source_fragment" : "fabric_metadata.is_multicast = true"
2995 }
2996 }
2997 ]
2998 },
2999 {
3000 "name" : "act",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003001 "id" : 34,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003002 "runtime_data" : [],
3003 "primitives" : [
3004 {
3005 "op" : "assign",
3006 "parameters" : [
3007 {
3008 "type" : "field",
3009 "value" : ["standard_metadata", "egress_spec"]
3010 },
3011 {
3012 "type" : "field",
3013 "value" : ["packet_out", "egress_port"]
3014 }
3015 ],
3016 "source_info" : {
3017 "filename" : "include/control/packetio.p4",
3018 "line" : 26,
3019 "column" : 12,
3020 "source_fragment" : "standard_metadata.egress_spec = hdr.packet_out.egress_port"
3021 }
3022 },
3023 {
3024 "op" : "remove_header",
3025 "parameters" : [
3026 {
3027 "type" : "header",
3028 "value" : "packet_out"
3029 }
3030 ],
3031 "source_info" : {
3032 "filename" : "include/control/packetio.p4",
3033 "line" : 27,
3034 "column" : 12,
3035 "source_fragment" : "hdr.packet_out.setInvalid()"
3036 }
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -07003037 },
3038 {
3039 "op" : "assign",
3040 "parameters" : [
3041 {
3042 "type" : "field",
3043 "value" : ["scalars", "fabric_metadata_t.is_controller_packet_out"]
3044 },
3045 {
3046 "type" : "expression",
3047 "value" : {
3048 "type" : "expression",
3049 "value" : {
3050 "op" : "b2d",
3051 "left" : null,
3052 "right" : {
3053 "type" : "bool",
3054 "value" : true
3055 }
3056 }
3057 }
3058 }
3059 ],
3060 "source_info" : {
3061 "filename" : "include/control/packetio.p4",
3062 "line" : 28,
3063 "column" : 12,
3064 "source_fragment" : "fabric_metadata.is_controller_packet_out = true"
3065 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003066 }
3067 ]
3068 },
3069 {
3070 "name" : "act_0",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003071 "id" : 35,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003072 "runtime_data" : [],
3073 "primitives" : [
3074 {
3075 "op" : "assign",
3076 "parameters" : [
3077 {
3078 "type" : "field",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003079 "value" : ["scalars", "filtering_tmp_0"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003080 },
3081 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003082 "type" : "expression",
3083 "value" : {
3084 "type" : "expression",
3085 "value" : {
3086 "op" : "b2d",
3087 "left" : null,
3088 "right" : {
3089 "type" : "bool",
3090 "value" : true
3091 }
3092 }
3093 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003094 }
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003095 ]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003096 }
3097 ]
3098 },
3099 {
3100 "name" : "act_1",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003101 "id" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003102 "runtime_data" : [],
3103 "primitives" : [
3104 {
3105 "op" : "assign",
3106 "parameters" : [
3107 {
3108 "type" : "field",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003109 "value" : ["scalars", "filtering_tmp_0"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003110 },
3111 {
3112 "type" : "expression",
3113 "value" : {
3114 "type" : "expression",
3115 "value" : {
3116 "op" : "b2d",
3117 "left" : null,
3118 "right" : {
3119 "type" : "bool",
3120 "value" : false
3121 }
3122 }
3123 }
3124 }
3125 ]
3126 }
3127 ]
3128 },
3129 {
3130 "name" : "act_2",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003131 "id" : 37,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003132 "runtime_data" : [],
3133 "primitives" : [
3134 {
3135 "op" : "assign",
3136 "parameters" : [
3137 {
3138 "type" : "field",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003139 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003140 },
3141 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003142 "type" : "hexstr",
3143 "value" : "0x07"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003144 }
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003145 ],
3146 "source_info" : {
3147 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003148 "line" : 111,
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003149 "column" : 31,
3150 "source_fragment" : "7; ..."
3151 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003152 }
3153 ]
3154 },
3155 {
3156 "name" : "act_3",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003157 "id" : 38,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003158 "runtime_data" : [],
3159 "primitives" : [
3160 {
3161 "op" : "assign",
3162 "parameters" : [
3163 {
3164 "type" : "field",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003165 "value" : ["vlan_tag", "ether_type"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003166 },
3167 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003168 "type" : "hexstr",
3169 "value" : "0x0800"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003170 }
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003171 ],
3172 "source_info" : {
3173 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003174 "line" : 94,
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003175 "column" : 31,
3176 "source_fragment" : "0x0800; ..."
3177 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003178 }
3179 ]
3180 },
3181 {
3182 "name" : "act_4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003183 "id" : 39,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003184 "runtime_data" : [],
3185 "primitives" : [
3186 {
3187 "op" : "assign",
3188 "parameters" : [
3189 {
3190 "type" : "field",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003191 "value" : ["scalars", "next_hasReturned_0"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003192 },
3193 {
3194 "type" : "expression",
3195 "value" : {
3196 "type" : "expression",
3197 "value" : {
3198 "op" : "b2d",
3199 "left" : null,
3200 "right" : {
3201 "type" : "bool",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003202 "value" : false
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003203 }
3204 }
3205 }
3206 }
3207 ]
3208 }
3209 ]
3210 },
3211 {
3212 "name" : "act_5",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003213 "id" : 40,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003214 "runtime_data" : [],
3215 "primitives" : [
3216 {
3217 "op" : "assign",
3218 "parameters" : [
3219 {
3220 "type" : "field",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003221 "value" : ["scalars", "next_tmp_4"]
3222 },
3223 {
3224 "type" : "expression",
3225 "value" : {
3226 "type" : "expression",
3227 "value" : {
3228 "op" : "b2d",
3229 "left" : null,
3230 "right" : {
3231 "type" : "bool",
3232 "value" : true
3233 }
3234 }
3235 }
3236 }
3237 ]
3238 }
3239 ]
3240 },
3241 {
3242 "name" : "act_6",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003243 "id" : 41,
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003244 "runtime_data" : [],
3245 "primitives" : [
3246 {
3247 "op" : "assign",
3248 "parameters" : [
3249 {
3250 "type" : "field",
3251 "value" : ["scalars", "next_tmp_4"]
3252 },
3253 {
3254 "type" : "expression",
3255 "value" : {
3256 "type" : "expression",
3257 "value" : {
3258 "op" : "b2d",
3259 "left" : null,
3260 "right" : {
3261 "type" : "bool",
3262 "value" : false
3263 }
3264 }
3265 }
3266 }
3267 ]
3268 }
3269 ]
3270 },
3271 {
3272 "name" : "act_7",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003273 "id" : 42,
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003274 "runtime_data" : [],
3275 "primitives" : [
3276 {
3277 "op" : "assign",
3278 "parameters" : [
3279 {
3280 "type" : "field",
3281 "value" : ["scalars", "next_tmp_3"]
3282 },
3283 {
3284 "type" : "expression",
3285 "value" : {
3286 "type" : "expression",
3287 "value" : {
3288 "op" : "b2d",
3289 "left" : null,
3290 "right" : {
3291 "type" : "bool",
3292 "value" : true
3293 }
3294 }
3295 }
3296 }
3297 ]
3298 }
3299 ]
3300 },
3301 {
3302 "name" : "act_8",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003303 "id" : 43,
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003304 "runtime_data" : [],
3305 "primitives" : [
3306 {
3307 "op" : "assign",
3308 "parameters" : [
3309 {
3310 "type" : "field",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003311 "value" : ["scalars", "next_tmp_3"]
3312 },
3313 {
3314 "type" : "expression",
3315 "value" : {
3316 "type" : "expression",
3317 "value" : {
3318 "op" : "b2d",
3319 "left" : null,
3320 "right" : {
3321 "type" : "bool",
3322 "value" : false
3323 }
3324 }
3325 }
3326 }
3327 ]
3328 }
3329 ]
3330 },
3331 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003332 "name" : "act_9",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003333 "id" : 44,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003334 "runtime_data" : [],
3335 "primitives" : [
3336 {
3337 "op" : "assign",
3338 "parameters" : [
3339 {
3340 "type" : "field",
3341 "value" : ["scalars", "next_tmp_2"]
3342 },
3343 {
3344 "type" : "expression",
3345 "value" : {
3346 "type" : "expression",
3347 "value" : {
3348 "op" : "b2d",
3349 "left" : null,
3350 "right" : {
3351 "type" : "bool",
3352 "value" : true
3353 }
3354 }
3355 }
3356 }
3357 ]
3358 }
3359 ]
3360 },
3361 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003362 "name" : "act_10",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003363 "id" : 45,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003364 "runtime_data" : [],
3365 "primitives" : [
3366 {
3367 "op" : "assign",
3368 "parameters" : [
3369 {
3370 "type" : "field",
3371 "value" : ["scalars", "next_tmp_2"]
3372 },
3373 {
3374 "type" : "expression",
3375 "value" : {
3376 "type" : "expression",
3377 "value" : {
3378 "op" : "b2d",
3379 "left" : null,
3380 "right" : {
3381 "type" : "bool",
3382 "value" : false
3383 }
3384 }
3385 }
3386 }
3387 ]
3388 }
3389 ]
3390 },
3391 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003392 "name" : "act_11",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003393 "id" : 46,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003394 "runtime_data" : [],
3395 "primitives" : [
3396 {
3397 "op" : "assign",
3398 "parameters" : [
3399 {
3400 "type" : "field",
3401 "value" : ["scalars", "next_hasReturned_0"]
3402 },
3403 {
3404 "type" : "expression",
3405 "value" : {
3406 "type" : "expression",
3407 "value" : {
3408 "op" : "b2d",
3409 "left" : null,
3410 "right" : {
3411 "type" : "bool",
3412 "value" : true
3413 }
3414 }
3415 }
3416 }
3417 ],
3418 "source_info" : {
3419 "filename" : "include/control/next.p4",
3420 "line" : 223,
3421 "column" : 20,
3422 "source_fragment" : "return"
3423 }
3424 }
3425 ]
3426 },
3427 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003428 "name" : "act_12",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003429 "id" : 47,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003430 "runtime_data" : [],
3431 "primitives" : [
3432 {
3433 "op" : "assign",
3434 "parameters" : [
3435 {
3436 "type" : "field",
3437 "value" : ["ipv4", "ttl"]
3438 },
3439 {
3440 "type" : "expression",
3441 "value" : {
3442 "type" : "expression",
3443 "value" : {
3444 "op" : "&",
3445 "left" : {
3446 "type" : "expression",
3447 "value" : {
3448 "op" : "+",
3449 "left" : {
3450 "type" : "field",
3451 "value" : ["ipv4", "ttl"]
3452 },
3453 "right" : {
3454 "type" : "hexstr",
3455 "value" : "0xff"
3456 }
3457 }
3458 },
3459 "right" : {
3460 "type" : "hexstr",
3461 "value" : "0xff"
3462 }
3463 }
3464 }
3465 }
3466 ],
3467 "source_info" : {
3468 "filename" : "include/control/next.p4",
3469 "line" : 230,
3470 "column" : 16,
3471 "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
3472 }
3473 }
3474 ]
3475 },
3476 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003477 "name" : "act_13",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003478 "id" : 48,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003479 "runtime_data" : [],
3480 "primitives" : [
3481 {
3482 "op" : "assign",
3483 "parameters" : [
3484 {
3485 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003486 "value" : ["scalars", "tmp_0"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003487 },
3488 {
3489 "type" : "expression",
3490 "value" : {
3491 "type" : "expression",
3492 "value" : {
3493 "op" : "&",
3494 "left" : {
3495 "type" : "field",
3496 "value" : ["standard_metadata", "egress_spec"]
3497 },
3498 "right" : {
3499 "type" : "hexstr",
3500 "value" : "0xffffffff"
3501 }
3502 }
3503 }
3504 }
3505 ],
3506 "source_info" : {
3507 "filename" : "include/control/port_counter.p4",
3508 "line" : 28,
3509 "column" : 38,
3510 "source_fragment" : "(bit<32>)standard_metadata.egress_spec"
3511 }
3512 },
3513 {
3514 "op" : "count",
3515 "parameters" : [
3516 {
3517 "type" : "counter_array",
3518 "value" : "FabricIngress.port_counters_control.egress_port_counter"
3519 },
3520 {
3521 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003522 "value" : ["scalars", "tmp_0"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003523 }
3524 ],
3525 "source_info" : {
3526 "filename" : "include/control/port_counter.p4",
3527 "line" : 28,
3528 "column" : 12,
3529 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
3530 }
3531 }
3532 ]
3533 },
3534 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003535 "name" : "act_14",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003536 "id" : 49,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003537 "runtime_data" : [],
3538 "primitives" : [
3539 {
3540 "op" : "assign",
3541 "parameters" : [
3542 {
3543 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003544 "value" : ["scalars", "tmp_1"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003545 },
3546 {
3547 "type" : "expression",
3548 "value" : {
3549 "type" : "expression",
3550 "value" : {
3551 "op" : "&",
3552 "left" : {
3553 "type" : "field",
3554 "value" : ["standard_metadata", "ingress_port"]
3555 },
3556 "right" : {
3557 "type" : "hexstr",
3558 "value" : "0xffffffff"
3559 }
3560 }
3561 }
3562 }
3563 ],
3564 "source_info" : {
3565 "filename" : "include/control/port_counter.p4",
3566 "line" : 31,
3567 "column" : 39,
3568 "source_fragment" : "(bit<32>)standard_metadata.ingress_port"
3569 }
3570 },
3571 {
3572 "op" : "count",
3573 "parameters" : [
3574 {
3575 "type" : "counter_array",
3576 "value" : "FabricIngress.port_counters_control.ingress_port_counter"
3577 },
3578 {
3579 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003580 "value" : ["scalars", "tmp_1"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003581 }
3582 ],
3583 "source_info" : {
3584 "filename" : "include/control/port_counter.p4",
3585 "line" : 31,
3586 "column" : 12,
3587 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
3588 }
3589 }
3590 ]
3591 },
3592 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003593 "name" : "NoAction",
3594 "id" : 50,
3595 "runtime_data" : [],
3596 "primitives" : []
3597 },
3598 {
3599 "name" : "NoAction",
3600 "id" : 51,
3601 "runtime_data" : [],
3602 "primitives" : []
3603 },
3604 {
3605 "name" : "NoAction",
Charles Chancd03f072018-08-31 17:46:37 -07003606 "id" : 52,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003607 "runtime_data" : [],
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003608 "primitives" : []
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003609 },
3610 {
3611 "name" : "NoAction",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003612 "id" : 53,
3613 "runtime_data" : [],
3614 "primitives" : []
3615 },
3616 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003617 "name" : "nop",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003618 "id" : 54,
3619 "runtime_data" : [],
3620 "primitives" : []
3621 },
3622 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003623 "name" : "drop_now",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003624 "id" : 55,
3625 "runtime_data" : [],
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003626 "primitives" : [
3627 {
3628 "op" : "drop",
3629 "parameters" : [],
3630 "source_info" : {
3631 "filename" : "include/control/../action.p4",
3632 "line" : 24,
3633 "column" : 4,
3634 "source_fragment" : "mark_to_drop()"
3635 }
3636 },
3637 {
3638 "op" : "exit",
3639 "parameters" : [],
3640 "source_info" : {
3641 "filename" : "include/control/../action.p4",
3642 "line" : 25,
3643 "column" : 4,
3644 "source_fragment" : "exit"
3645 }
3646 }
3647 ]
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003648 },
3649 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003650 "name" : "drop_now",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003651 "id" : 56,
3652 "runtime_data" : [],
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003653 "primitives" : [
3654 {
3655 "op" : "drop",
3656 "parameters" : [],
3657 "source_info" : {
3658 "filename" : "include/control/../action.p4",
3659 "line" : 24,
3660 "column" : 4,
3661 "source_fragment" : "mark_to_drop()"
3662 }
3663 },
3664 {
3665 "op" : "exit",
3666 "parameters" : [],
3667 "source_info" : {
3668 "filename" : "include/control/../action.p4",
3669 "line" : 25,
3670 "column" : 4,
3671 "source_fragment" : "exit"
3672 }
3673 }
3674 ]
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003675 },
3676 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003677 "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
Carmelo Cascone8a715f82018-08-20 23:16:27 -07003678 "id" : 57,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003679 "runtime_data" : [
3680 {
3681 "name" : "max_hop",
3682 "bitwidth" : 8
3683 },
3684 {
3685 "name" : "ins_cnt",
3686 "bitwidth" : 5
3687 },
3688 {
3689 "name" : "ins_mask0003",
3690 "bitwidth" : 4
3691 },
3692 {
3693 "name" : "ins_mask0407",
3694 "bitwidth" : 4
3695 }
3696 ],
3697 "primitives" : [
3698 {
3699 "op" : "add_header",
3700 "parameters" : [
3701 {
3702 "type" : "header",
3703 "value" : "intl4_shim"
3704 }
3705 ],
3706 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003707 "filename" : "include/int/int_source.p4",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003708 "line" : 31,
3709 "column" : 8,
3710 "source_fragment" : "hdr.intl4_shim.setValid()"
3711 }
3712 },
3713 {
3714 "op" : "assign",
3715 "parameters" : [
3716 {
3717 "type" : "field",
3718 "value" : ["intl4_shim", "int_type"]
3719 },
3720 {
3721 "type" : "hexstr",
3722 "value" : "0x01"
3723 }
3724 ],
3725 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003726 "filename" : "include/int/int_source.p4",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003727 "line" : 33,
3728 "column" : 8,
3729 "source_fragment" : "hdr.intl4_shim.int_type = 1"
3730 }
3731 },
3732 {
3733 "op" : "assign",
3734 "parameters" : [
3735 {
3736 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003737 "value" : ["intl4_shim", "len_words"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003738 },
3739 {
3740 "type" : "hexstr",
3741 "value" : "0x04"
3742 }
3743 ],
3744 "source_info" : {
3745 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003746 "line" : 131,
3747 "column" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003748 "source_fragment" : "4; ..."
3749 }
3750 },
3751 {
3752 "op" : "add_header",
3753 "parameters" : [
3754 {
3755 "type" : "header",
3756 "value" : "int_header"
3757 }
3758 ],
3759 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003760 "filename" : "include/int/int_source.p4",
3761 "line" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003762 "column" : 8,
3763 "source_fragment" : "hdr.int_header.setValid()"
3764 }
3765 },
3766 {
3767 "op" : "assign",
3768 "parameters" : [
3769 {
3770 "type" : "field",
3771 "value" : ["int_header", "ver"]
3772 },
3773 {
3774 "type" : "hexstr",
3775 "value" : "0x00"
3776 }
3777 ],
3778 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003779 "filename" : "include/int/int_source.p4",
3780 "line" : 37,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003781 "column" : 8,
3782 "source_fragment" : "hdr.int_header.ver = 0"
3783 }
3784 },
3785 {
3786 "op" : "assign",
3787 "parameters" : [
3788 {
3789 "type" : "field",
3790 "value" : ["int_header", "rep"]
3791 },
3792 {
3793 "type" : "hexstr",
3794 "value" : "0x00"
3795 }
3796 ],
3797 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003798 "filename" : "include/int/int_source.p4",
3799 "line" : 38,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003800 "column" : 8,
3801 "source_fragment" : "hdr.int_header.rep = 0"
3802 }
3803 },
3804 {
3805 "op" : "assign",
3806 "parameters" : [
3807 {
3808 "type" : "field",
3809 "value" : ["int_header", "c"]
3810 },
3811 {
3812 "type" : "hexstr",
3813 "value" : "0x00"
3814 }
3815 ],
3816 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003817 "filename" : "include/int/int_source.p4",
3818 "line" : 39,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003819 "column" : 8,
3820 "source_fragment" : "hdr.int_header.c = 0"
3821 }
3822 },
3823 {
3824 "op" : "assign",
3825 "parameters" : [
3826 {
3827 "type" : "field",
3828 "value" : ["int_header", "e"]
3829 },
3830 {
3831 "type" : "hexstr",
3832 "value" : "0x00"
3833 }
3834 ],
3835 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003836 "filename" : "include/int/int_source.p4",
3837 "line" : 40,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003838 "column" : 8,
3839 "source_fragment" : "hdr.int_header.e = 0"
3840 }
3841 },
3842 {
3843 "op" : "assign",
3844 "parameters" : [
3845 {
3846 "type" : "field",
3847 "value" : ["int_header", "rsvd1"]
3848 },
3849 {
3850 "type" : "hexstr",
3851 "value" : "0x00"
3852 }
3853 ],
3854 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003855 "filename" : "include/int/int_source.p4",
3856 "line" : 41,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003857 "column" : 8,
3858 "source_fragment" : "hdr.int_header.rsvd1 = 0"
3859 }
3860 },
3861 {
3862 "op" : "assign",
3863 "parameters" : [
3864 {
3865 "type" : "field",
3866 "value" : ["int_header", "ins_cnt"]
3867 },
3868 {
3869 "type" : "runtime_data",
3870 "value" : 1
3871 }
3872 ],
3873 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003874 "filename" : "include/int/int_source.p4",
3875 "line" : 42,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003876 "column" : 8,
3877 "source_fragment" : "hdr.int_header.ins_cnt = ins_cnt; ..."
3878 }
3879 },
3880 {
3881 "op" : "assign",
3882 "parameters" : [
3883 {
3884 "type" : "field",
3885 "value" : ["int_header", "max_hop_cnt"]
3886 },
3887 {
3888 "type" : "runtime_data",
3889 "value" : 0
3890 }
3891 ],
3892 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003893 "filename" : "include/int/int_source.p4",
3894 "line" : 43,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003895 "column" : 8,
3896 "source_fragment" : "hdr.int_header.max_hop_cnt = max_hop; ..."
3897 }
3898 },
3899 {
3900 "op" : "assign",
3901 "parameters" : [
3902 {
3903 "type" : "field",
3904 "value" : ["int_header", "total_hop_cnt"]
3905 },
3906 {
3907 "type" : "hexstr",
3908 "value" : "0x00"
3909 }
3910 ],
3911 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003912 "filename" : "include/int/int_source.p4",
3913 "line" : 44,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003914 "column" : 8,
3915 "source_fragment" : "hdr.int_header.total_hop_cnt = 0"
3916 }
3917 },
3918 {
3919 "op" : "assign",
3920 "parameters" : [
3921 {
3922 "type" : "field",
3923 "value" : ["int_header", "instruction_mask_0003"]
3924 },
3925 {
3926 "type" : "runtime_data",
3927 "value" : 2
3928 }
3929 ],
3930 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003931 "filename" : "include/int/int_source.p4",
3932 "line" : 45,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003933 "column" : 8,
3934 "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
3935 }
3936 },
3937 {
3938 "op" : "assign",
3939 "parameters" : [
3940 {
3941 "type" : "field",
3942 "value" : ["int_header", "instruction_mask_0407"]
3943 },
3944 {
3945 "type" : "runtime_data",
3946 "value" : 3
3947 }
3948 ],
3949 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003950 "filename" : "include/int/int_source.p4",
3951 "line" : 46,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003952 "column" : 8,
3953 "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
3954 }
3955 },
3956 {
3957 "op" : "assign",
3958 "parameters" : [
3959 {
3960 "type" : "field",
3961 "value" : ["int_header", "instruction_mask_0811"]
3962 },
3963 {
3964 "type" : "hexstr",
3965 "value" : "0x00"
3966 }
3967 ],
3968 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003969 "filename" : "include/int/int_source.p4",
3970 "line" : 47,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003971 "column" : 8,
3972 "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
3973 }
3974 },
3975 {
3976 "op" : "assign",
3977 "parameters" : [
3978 {
3979 "type" : "field",
3980 "value" : ["int_header", "instruction_mask_1215"]
3981 },
3982 {
3983 "type" : "hexstr",
3984 "value" : "0x00"
3985 }
3986 ],
3987 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07003988 "filename" : "include/int/int_source.p4",
3989 "line" : 48,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09003990 "column" : 8,
3991 "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
3992 }
3993 },
3994 {
3995 "op" : "add_header",
3996 "parameters" : [
3997 {
3998 "type" : "header",
3999 "value" : "intl4_tail"
4000 }
4001 ],
4002 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004003 "filename" : "include/int/int_source.p4",
4004 "line" : 50,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004005 "column" : 8,
4006 "source_fragment" : "hdr.intl4_tail.setValid()"
4007 }
4008 },
4009 {
4010 "op" : "assign",
4011 "parameters" : [
4012 {
4013 "type" : "field",
4014 "value" : ["intl4_tail", "next_proto"]
4015 },
4016 {
4017 "type" : "field",
4018 "value" : ["ipv4", "protocol"]
4019 }
4020 ],
4021 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004022 "filename" : "include/int/int_source.p4",
4023 "line" : 51,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004024 "column" : 8,
4025 "source_fragment" : "hdr.intl4_tail.next_proto = hdr.ipv4.protocol"
4026 }
4027 },
4028 {
4029 "op" : "assign",
4030 "parameters" : [
4031 {
4032 "type" : "field",
4033 "value" : ["intl4_tail", "dest_port"]
4034 },
4035 {
4036 "type" : "field",
4037 "value" : ["scalars", "fabric_metadata_t.l4_dst_port"]
4038 }
4039 ],
4040 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004041 "filename" : "include/int/int_source.p4",
4042 "line" : 52,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004043 "column" : 8,
4044 "source_fragment" : "hdr.intl4_tail.dest_port = fabric_metadata.l4_dst_port"
4045 }
4046 },
4047 {
4048 "op" : "assign",
4049 "parameters" : [
4050 {
4051 "type" : "field",
4052 "value" : ["intl4_tail", "dscp"]
4053 },
4054 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004055 "type" : "field",
4056 "value" : ["ipv4", "dscp"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004057 }
4058 ],
4059 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004060 "filename" : "include/int/int_source.p4",
4061 "line" : 53,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004062 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004063 "source_fragment" : "hdr.intl4_tail.dscp = hdr.ipv4.dscp"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004064 }
4065 },
4066 {
4067 "op" : "assign",
4068 "parameters" : [
4069 {
4070 "type" : "field",
4071 "value" : ["ipv4", "total_len"]
4072 },
4073 {
4074 "type" : "expression",
4075 "value" : {
4076 "type" : "expression",
4077 "value" : {
4078 "op" : "&",
4079 "left" : {
4080 "type" : "expression",
4081 "value" : {
4082 "op" : "+",
4083 "left" : {
4084 "type" : "field",
4085 "value" : ["ipv4", "total_len"]
4086 },
4087 "right" : {
4088 "type" : "hexstr",
4089 "value" : "0x0010"
4090 }
4091 }
4092 },
4093 "right" : {
4094 "type" : "hexstr",
4095 "value" : "0xffff"
4096 }
4097 }
4098 }
4099 }
4100 ],
4101 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004102 "filename" : "include/int/int_source.p4",
4103 "line" : 55,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004104 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004105 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + INT_HEADER_LEN_BYTES"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004106 }
4107 },
4108 {
4109 "op" : "assign",
4110 "parameters" : [
4111 {
4112 "type" : "field",
4113 "value" : ["udp", "len"]
4114 },
4115 {
4116 "type" : "expression",
4117 "value" : {
4118 "type" : "expression",
4119 "value" : {
4120 "op" : "&",
4121 "left" : {
4122 "type" : "expression",
4123 "value" : {
4124 "op" : "+",
4125 "left" : {
4126 "type" : "field",
4127 "value" : ["udp", "len"]
4128 },
4129 "right" : {
4130 "type" : "hexstr",
4131 "value" : "0x0010"
4132 }
4133 }
4134 },
4135 "right" : {
4136 "type" : "hexstr",
4137 "value" : "0xffff"
4138 }
4139 }
4140 }
4141 }
4142 ],
4143 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004144 "filename" : "include/int/int_source.p4",
4145 "line" : 56,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004146 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004147 "source_fragment" : "hdr.udp.len = hdr.udp.len + INT_HEADER_LEN_BYTES"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004148 }
4149 },
4150 {
4151 "op" : "assign",
4152 "parameters" : [
4153 {
4154 "type" : "field",
4155 "value" : ["ipv4", "dscp"]
4156 },
4157 {
4158 "type" : "hexstr",
4159 "value" : "0x01"
4160 }
4161 ],
4162 "source_info" : {
4163 "filename" : "include/control/../define.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004164 "line" : 127,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004165 "column" : 24,
4166 "source_fragment" : "0x1; ..."
4167 }
4168 }
4169 ]
4170 },
4171 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004172 "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
4173 "id" : 58,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004174 "runtime_data" : [
4175 {
4176 "name" : "switch_id",
4177 "bitwidth" : 32
4178 }
4179 ],
4180 "primitives" : [
4181 {
4182 "op" : "assign",
4183 "parameters" : [
4184 {
4185 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004186 "value" : ["userMetadata.int_meta", "transit"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004187 },
4188 {
4189 "type" : "expression",
4190 "value" : {
4191 "type" : "expression",
4192 "value" : {
4193 "op" : "b2d",
4194 "left" : null,
4195 "right" : {
4196 "type" : "bool",
4197 "value" : true
4198 }
4199 }
4200 }
4201 }
4202 ],
4203 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004204 "filename" : "include/int/int_transit.p4",
4205 "line" : 26,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004206 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004207 "source_fragment" : "fmeta.int_meta.transit = true"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004208 }
4209 },
4210 {
4211 "op" : "assign",
4212 "parameters" : [
4213 {
4214 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004215 "value" : ["userMetadata.int_meta", "switch_id"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004216 },
4217 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004218 "type" : "runtime_data",
4219 "value" : 0
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004220 }
4221 ],
4222 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004223 "filename" : "include/int/int_transit.p4",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004224 "line" : 31,
4225 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004226 "source_fragment" : "fmeta.int_meta.switch_id = switch_id"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004227 }
4228 }
4229 ]
4230 },
4231 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004232 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
4233 "id" : 59,
4234 "runtime_data" : [],
4235 "primitives" : []
4236 },
4237 {
4238 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
4239 "id" : 60,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004240 "runtime_data" : [],
4241 "primitives" : [
4242 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004243 "op" : "add_header",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004244 "parameters" : [
4245 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004246 "type" : "header",
4247 "value" : "int_q_occupancy"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004248 }
4249 ],
4250 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004251 "filename" : "include/int/int_transit.p4",
4252 "line" : 56,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004253 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004254 "source_fragment" : "hdr.int_q_occupancy.setValid()"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004255 }
4256 },
4257 {
4258 "op" : "assign",
4259 "parameters" : [
4260 {
4261 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004262 "value" : ["int_q_occupancy", "q_id"]
4263 },
4264 {
4265 "type" : "hexstr",
4266 "value" : "0x00"
4267 }
4268 ],
4269 "source_info" : {
4270 "filename" : "include/int/int_transit.p4",
4271 "line" : 58,
4272 "column" : 8,
4273 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
4274 }
4275 },
4276 {
4277 "op" : "assign",
4278 "parameters" : [
4279 {
4280 "type" : "field",
4281 "value" : ["int_q_occupancy", "q_occupancy"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004282 },
4283 {
4284 "type" : "expression",
4285 "value" : {
4286 "type" : "expression",
4287 "value" : {
4288 "op" : "&",
4289 "left" : {
4290 "type" : "field",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004291 "value" : ["standard_metadata", "deq_qdepth"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004292 },
4293 "right" : {
4294 "type" : "hexstr",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004295 "value" : "0xffffff"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004296 }
4297 }
4298 }
4299 }
4300 ],
4301 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004302 "filename" : "include/int/int_transit.p4",
4303 "line" : 59,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004304 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004305 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
4306 }
4307 },
4308 {
4309 "op" : "assign",
4310 "parameters" : [
4311 {
4312 "type" : "field",
4313 "value" : ["userMetadata.int_meta", "new_words"]
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",
4327 "value" : ["userMetadata.int_meta", "new_words"]
4328 },
4329 "right" : {
4330 "type" : "hexstr",
4331 "value" : "0x01"
4332 }
4333 }
4334 },
4335 "right" : {
4336 "type" : "hexstr",
4337 "value" : "0xff"
4338 }
4339 }
4340 }
4341 }
4342 ],
4343 "source_info" : {
4344 "filename" : "include/int/int_transit.p4",
4345 "line" : 88,
4346 "column" : 8,
4347 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
4348 }
4349 },
4350 {
4351 "op" : "assign",
4352 "parameters" : [
4353 {
4354 "type" : "field",
4355 "value" : ["userMetadata.int_meta", "new_bytes"]
4356 },
4357 {
4358 "type" : "expression",
4359 "value" : {
4360 "type" : "expression",
4361 "value" : {
4362 "op" : "&",
4363 "left" : {
4364 "type" : "expression",
4365 "value" : {
4366 "op" : "+",
4367 "left" : {
4368 "type" : "field",
4369 "value" : ["userMetadata.int_meta", "new_bytes"]
4370 },
4371 "right" : {
4372 "type" : "hexstr",
4373 "value" : "0x0004"
4374 }
4375 }
4376 },
4377 "right" : {
4378 "type" : "hexstr",
4379 "value" : "0xffff"
4380 }
4381 }
4382 }
4383 }
4384 ],
4385 "source_info" : {
4386 "filename" : "include/int/int_transit.p4",
4387 "line" : 89,
4388 "column" : 8,
4389 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004390 }
4391 }
4392 ]
4393 },
4394 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004395 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
4396 "id" : 61,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004397 "runtime_data" : [],
4398 "primitives" : [
4399 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004400 "op" : "add_header",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004401 "parameters" : [
4402 {
4403 "type" : "header",
4404 "value" : "int_hop_latency"
4405 }
4406 ],
4407 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004408 "filename" : "include/int/int_transit.p4",
4409 "line" : 51,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004410 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004411 "source_fragment" : "hdr.int_hop_latency.setValid()"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004412 }
4413 },
4414 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004415 "op" : "assign",
4416 "parameters" : [
4417 {
4418 "type" : "field",
4419 "value" : ["int_hop_latency", "hop_latency"]
4420 },
4421 {
4422 "type" : "field",
4423 "value" : ["standard_metadata", "deq_timedelta"]
4424 }
4425 ],
4426 "source_info" : {
4427 "filename" : "include/int/int_transit.p4",
4428 "line" : 52,
4429 "column" : 8,
4430 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
4431 }
4432 },
4433 {
4434 "op" : "assign",
4435 "parameters" : [
4436 {
4437 "type" : "field",
4438 "value" : ["userMetadata.int_meta", "new_words"]
4439 },
4440 {
4441 "type" : "expression",
4442 "value" : {
4443 "type" : "expression",
4444 "value" : {
4445 "op" : "&",
4446 "left" : {
4447 "type" : "expression",
4448 "value" : {
4449 "op" : "+",
4450 "left" : {
4451 "type" : "field",
4452 "value" : ["userMetadata.int_meta", "new_words"]
4453 },
4454 "right" : {
4455 "type" : "hexstr",
4456 "value" : "0x01"
4457 }
4458 }
4459 },
4460 "right" : {
4461 "type" : "hexstr",
4462 "value" : "0xff"
4463 }
4464 }
4465 }
4466 }
4467 ],
4468 "source_info" : {
4469 "filename" : "include/int/int_transit.p4",
4470 "line" : 88,
4471 "column" : 8,
4472 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
4473 }
4474 },
4475 {
4476 "op" : "assign",
4477 "parameters" : [
4478 {
4479 "type" : "field",
4480 "value" : ["userMetadata.int_meta", "new_bytes"]
4481 },
4482 {
4483 "type" : "expression",
4484 "value" : {
4485 "type" : "expression",
4486 "value" : {
4487 "op" : "&",
4488 "left" : {
4489 "type" : "expression",
4490 "value" : {
4491 "op" : "+",
4492 "left" : {
4493 "type" : "field",
4494 "value" : ["userMetadata.int_meta", "new_bytes"]
4495 },
4496 "right" : {
4497 "type" : "hexstr",
4498 "value" : "0x0004"
4499 }
4500 }
4501 },
4502 "right" : {
4503 "type" : "hexstr",
4504 "value" : "0xffff"
4505 }
4506 }
4507 }
4508 }
4509 ],
4510 "source_info" : {
4511 "filename" : "include/int/int_transit.p4",
4512 "line" : 89,
4513 "column" : 8,
4514 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
4515 }
4516 }
4517 ]
4518 },
4519 {
4520 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
4521 "id" : 62,
4522 "runtime_data" : [],
4523 "primitives" : [
4524 {
4525 "op" : "add_header",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004526 "parameters" : [
4527 {
4528 "type" : "header",
4529 "value" : "int_q_occupancy"
4530 }
4531 ],
4532 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004533 "filename" : "include/int/int_transit.p4",
4534 "line" : 56,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004535 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004536 "source_fragment" : "hdr.int_q_occupancy.setValid()"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004537 }
4538 },
4539 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004540 "op" : "assign",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004541 "parameters" : [
4542 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004543 "type" : "field",
4544 "value" : ["int_q_occupancy", "q_id"]
4545 },
4546 {
4547 "type" : "hexstr",
4548 "value" : "0x00"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004549 }
4550 ],
4551 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004552 "filename" : "include/int/int_transit.p4",
4553 "line" : 58,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004554 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004555 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004556 }
4557 },
4558 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004559 "op" : "assign",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004560 "parameters" : [
4561 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004562 "type" : "field",
4563 "value" : ["int_q_occupancy", "q_occupancy"]
4564 },
4565 {
4566 "type" : "expression",
4567 "value" : {
4568 "type" : "expression",
4569 "value" : {
4570 "op" : "&",
4571 "left" : {
4572 "type" : "field",
4573 "value" : ["standard_metadata", "deq_qdepth"]
4574 },
4575 "right" : {
4576 "type" : "hexstr",
4577 "value" : "0xffffff"
4578 }
4579 }
4580 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004581 }
4582 ],
4583 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004584 "filename" : "include/int/int_transit.p4",
4585 "line" : 59,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004586 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004587 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004588 }
4589 },
4590 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004591 "op" : "add_header",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004592 "parameters" : [
4593 {
4594 "type" : "header",
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004595 "value" : "int_hop_latency"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004596 }
4597 ],
4598 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004599 "filename" : "include/int/int_transit.p4",
4600 "line" : 51,
4601 "column" : 8,
4602 "source_fragment" : "hdr.int_hop_latency.setValid()"
4603 }
4604 },
4605 {
4606 "op" : "assign",
4607 "parameters" : [
4608 {
4609 "type" : "field",
4610 "value" : ["int_hop_latency", "hop_latency"]
4611 },
4612 {
4613 "type" : "field",
4614 "value" : ["standard_metadata", "deq_timedelta"]
4615 }
4616 ],
4617 "source_info" : {
4618 "filename" : "include/int/int_transit.p4",
4619 "line" : 52,
4620 "column" : 8,
4621 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
4622 }
4623 },
4624 {
4625 "op" : "assign",
4626 "parameters" : [
4627 {
4628 "type" : "field",
4629 "value" : ["userMetadata.int_meta", "new_words"]
4630 },
4631 {
4632 "type" : "expression",
4633 "value" : {
4634 "type" : "expression",
4635 "value" : {
4636 "op" : "&",
4637 "left" : {
4638 "type" : "expression",
4639 "value" : {
4640 "op" : "+",
4641 "left" : {
4642 "type" : "field",
4643 "value" : ["userMetadata.int_meta", "new_words"]
4644 },
4645 "right" : {
4646 "type" : "hexstr",
4647 "value" : "0x02"
4648 }
4649 }
4650 },
4651 "right" : {
4652 "type" : "hexstr",
4653 "value" : "0xff"
4654 }
4655 }
4656 }
4657 }
4658 ],
4659 "source_info" : {
4660 "filename" : "include/int/int_transit.p4",
4661 "line" : 93,
4662 "column" : 8,
4663 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
4664 }
4665 },
4666 {
4667 "op" : "assign",
4668 "parameters" : [
4669 {
4670 "type" : "field",
4671 "value" : ["userMetadata.int_meta", "new_bytes"]
4672 },
4673 {
4674 "type" : "expression",
4675 "value" : {
4676 "type" : "expression",
4677 "value" : {
4678 "op" : "&",
4679 "left" : {
4680 "type" : "expression",
4681 "value" : {
4682 "op" : "+",
4683 "left" : {
4684 "type" : "field",
4685 "value" : ["userMetadata.int_meta", "new_bytes"]
4686 },
4687 "right" : {
4688 "type" : "hexstr",
4689 "value" : "0x0008"
4690 }
4691 }
4692 },
4693 "right" : {
4694 "type" : "hexstr",
4695 "value" : "0xffff"
4696 }
4697 }
4698 }
4699 }
4700 ],
4701 "source_info" : {
4702 "filename" : "include/int/int_transit.p4",
4703 "line" : 94,
4704 "column" : 8,
4705 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
4706 }
4707 }
4708 ]
4709 },
4710 {
4711 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
4712 "id" : 63,
4713 "runtime_data" : [],
4714 "primitives" : [
4715 {
4716 "op" : "add_header",
4717 "parameters" : [
4718 {
4719 "type" : "header",
4720 "value" : "int_port_ids"
4721 }
4722 ],
4723 "source_info" : {
4724 "filename" : "include/int/int_transit.p4",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004725 "line" : 45,
4726 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004727 "source_fragment" : "hdr.int_port_ids.setValid()"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09004728 }
4729 },
4730 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07004731 "op" : "assign",
4732 "parameters" : [
4733 {
4734 "type" : "field",
4735 "value" : ["int_port_ids", "ingress_port_id"]
4736 },
4737 {
4738 "type" : "expression",
4739 "value" : {
4740 "type" : "expression",
4741 "value" : {
4742 "op" : "&",
4743 "left" : {
4744 "type" : "field",
4745 "value" : ["standard_metadata", "ingress_port"]
4746 },
4747 "right" : {
4748 "type" : "hexstr",
4749 "value" : "0xffff"
4750 }
4751 }
4752 }
4753 }
4754 ],
4755 "source_info" : {
4756 "filename" : "include/int/int_transit.p4",
4757 "line" : 46,
4758 "column" : 8,
4759 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
4760 }
4761 },
4762 {
4763 "op" : "assign",
4764 "parameters" : [
4765 {
4766 "type" : "field",
4767 "value" : ["int_port_ids", "egress_port_id"]
4768 },
4769 {
4770 "type" : "expression",
4771 "value" : {
4772 "type" : "expression",
4773 "value" : {
4774 "op" : "&",
4775 "left" : {
4776 "type" : "field",
4777 "value" : ["standard_metadata", "egress_port"]
4778 },
4779 "right" : {
4780 "type" : "hexstr",
4781 "value" : "0xffff"
4782 }
4783 }
4784 }
4785 }
4786 ],
4787 "source_info" : {
4788 "filename" : "include/int/int_transit.p4",
4789 "line" : 47,
4790 "column" : 8,
4791 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
4792 }
4793 },
4794 {
4795 "op" : "assign",
4796 "parameters" : [
4797 {
4798 "type" : "field",
4799 "value" : ["userMetadata.int_meta", "new_words"]
4800 },
4801 {
4802 "type" : "expression",
4803 "value" : {
4804 "type" : "expression",
4805 "value" : {
4806 "op" : "&",
4807 "left" : {
4808 "type" : "expression",
4809 "value" : {
4810 "op" : "+",
4811 "left" : {
4812 "type" : "field",
4813 "value" : ["userMetadata.int_meta", "new_words"]
4814 },
4815 "right" : {
4816 "type" : "hexstr",
4817 "value" : "0x01"
4818 }
4819 }
4820 },
4821 "right" : {
4822 "type" : "hexstr",
4823 "value" : "0xff"
4824 }
4825 }
4826 }
4827 }
4828 ],
4829 "source_info" : {
4830 "filename" : "include/int/int_transit.p4",
4831 "line" : 88,
4832 "column" : 8,
4833 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
4834 }
4835 },
4836 {
4837 "op" : "assign",
4838 "parameters" : [
4839 {
4840 "type" : "field",
4841 "value" : ["userMetadata.int_meta", "new_bytes"]
4842 },
4843 {
4844 "type" : "expression",
4845 "value" : {
4846 "type" : "expression",
4847 "value" : {
4848 "op" : "&",
4849 "left" : {
4850 "type" : "expression",
4851 "value" : {
4852 "op" : "+",
4853 "left" : {
4854 "type" : "field",
4855 "value" : ["userMetadata.int_meta", "new_bytes"]
4856 },
4857 "right" : {
4858 "type" : "hexstr",
4859 "value" : "0x0004"
4860 }
4861 }
4862 },
4863 "right" : {
4864 "type" : "hexstr",
4865 "value" : "0xffff"
4866 }
4867 }
4868 }
4869 }
4870 ],
4871 "source_info" : {
4872 "filename" : "include/int/int_transit.p4",
4873 "line" : 89,
4874 "column" : 8,
4875 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
4876 }
4877 }
4878 ]
4879 },
4880 {
4881 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
4882 "id" : 64,
4883 "runtime_data" : [],
4884 "primitives" : [
4885 {
4886 "op" : "add_header",
4887 "parameters" : [
4888 {
4889 "type" : "header",
4890 "value" : "int_q_occupancy"
4891 }
4892 ],
4893 "source_info" : {
4894 "filename" : "include/int/int_transit.p4",
4895 "line" : 56,
4896 "column" : 8,
4897 "source_fragment" : "hdr.int_q_occupancy.setValid()"
4898 }
4899 },
4900 {
4901 "op" : "assign",
4902 "parameters" : [
4903 {
4904 "type" : "field",
4905 "value" : ["int_q_occupancy", "q_id"]
4906 },
4907 {
4908 "type" : "hexstr",
4909 "value" : "0x00"
4910 }
4911 ],
4912 "source_info" : {
4913 "filename" : "include/int/int_transit.p4",
4914 "line" : 58,
4915 "column" : 8,
4916 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
4917 }
4918 },
4919 {
4920 "op" : "assign",
4921 "parameters" : [
4922 {
4923 "type" : "field",
4924 "value" : ["int_q_occupancy", "q_occupancy"]
4925 },
4926 {
4927 "type" : "expression",
4928 "value" : {
4929 "type" : "expression",
4930 "value" : {
4931 "op" : "&",
4932 "left" : {
4933 "type" : "field",
4934 "value" : ["standard_metadata", "deq_qdepth"]
4935 },
4936 "right" : {
4937 "type" : "hexstr",
4938 "value" : "0xffffff"
4939 }
4940 }
4941 }
4942 }
4943 ],
4944 "source_info" : {
4945 "filename" : "include/int/int_transit.p4",
4946 "line" : 59,
4947 "column" : 8,
4948 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
4949 }
4950 },
4951 {
4952 "op" : "add_header",
4953 "parameters" : [
4954 {
4955 "type" : "header",
4956 "value" : "int_port_ids"
4957 }
4958 ],
4959 "source_info" : {
4960 "filename" : "include/int/int_transit.p4",
4961 "line" : 45,
4962 "column" : 8,
4963 "source_fragment" : "hdr.int_port_ids.setValid()"
4964 }
4965 },
4966 {
4967 "op" : "assign",
4968 "parameters" : [
4969 {
4970 "type" : "field",
4971 "value" : ["int_port_ids", "ingress_port_id"]
4972 },
4973 {
4974 "type" : "expression",
4975 "value" : {
4976 "type" : "expression",
4977 "value" : {
4978 "op" : "&",
4979 "left" : {
4980 "type" : "field",
4981 "value" : ["standard_metadata", "ingress_port"]
4982 },
4983 "right" : {
4984 "type" : "hexstr",
4985 "value" : "0xffff"
4986 }
4987 }
4988 }
4989 }
4990 ],
4991 "source_info" : {
4992 "filename" : "include/int/int_transit.p4",
4993 "line" : 46,
4994 "column" : 8,
4995 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
4996 }
4997 },
4998 {
4999 "op" : "assign",
5000 "parameters" : [
5001 {
5002 "type" : "field",
5003 "value" : ["int_port_ids", "egress_port_id"]
5004 },
5005 {
5006 "type" : "expression",
5007 "value" : {
5008 "type" : "expression",
5009 "value" : {
5010 "op" : "&",
5011 "left" : {
5012 "type" : "field",
5013 "value" : ["standard_metadata", "egress_port"]
5014 },
5015 "right" : {
5016 "type" : "hexstr",
5017 "value" : "0xffff"
5018 }
5019 }
5020 }
5021 }
5022 ],
5023 "source_info" : {
5024 "filename" : "include/int/int_transit.p4",
5025 "line" : 47,
5026 "column" : 8,
5027 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5028 }
5029 },
5030 {
5031 "op" : "assign",
5032 "parameters" : [
5033 {
5034 "type" : "field",
5035 "value" : ["userMetadata.int_meta", "new_words"]
5036 },
5037 {
5038 "type" : "expression",
5039 "value" : {
5040 "type" : "expression",
5041 "value" : {
5042 "op" : "&",
5043 "left" : {
5044 "type" : "expression",
5045 "value" : {
5046 "op" : "+",
5047 "left" : {
5048 "type" : "field",
5049 "value" : ["userMetadata.int_meta", "new_words"]
5050 },
5051 "right" : {
5052 "type" : "hexstr",
5053 "value" : "0x02"
5054 }
5055 }
5056 },
5057 "right" : {
5058 "type" : "hexstr",
5059 "value" : "0xff"
5060 }
5061 }
5062 }
5063 }
5064 ],
5065 "source_info" : {
5066 "filename" : "include/int/int_transit.p4",
5067 "line" : 93,
5068 "column" : 8,
5069 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
5070 }
5071 },
5072 {
5073 "op" : "assign",
5074 "parameters" : [
5075 {
5076 "type" : "field",
5077 "value" : ["userMetadata.int_meta", "new_bytes"]
5078 },
5079 {
5080 "type" : "expression",
5081 "value" : {
5082 "type" : "expression",
5083 "value" : {
5084 "op" : "&",
5085 "left" : {
5086 "type" : "expression",
5087 "value" : {
5088 "op" : "+",
5089 "left" : {
5090 "type" : "field",
5091 "value" : ["userMetadata.int_meta", "new_bytes"]
5092 },
5093 "right" : {
5094 "type" : "hexstr",
5095 "value" : "0x0008"
5096 }
5097 }
5098 },
5099 "right" : {
5100 "type" : "hexstr",
5101 "value" : "0xffff"
5102 }
5103 }
5104 }
5105 }
5106 ],
5107 "source_info" : {
5108 "filename" : "include/int/int_transit.p4",
5109 "line" : 94,
5110 "column" : 8,
5111 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
5112 }
5113 }
5114 ]
5115 },
5116 {
5117 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
5118 "id" : 65,
5119 "runtime_data" : [],
5120 "primitives" : [
5121 {
5122 "op" : "add_header",
5123 "parameters" : [
5124 {
5125 "type" : "header",
5126 "value" : "int_hop_latency"
5127 }
5128 ],
5129 "source_info" : {
5130 "filename" : "include/int/int_transit.p4",
5131 "line" : 51,
5132 "column" : 8,
5133 "source_fragment" : "hdr.int_hop_latency.setValid()"
5134 }
5135 },
5136 {
5137 "op" : "assign",
5138 "parameters" : [
5139 {
5140 "type" : "field",
5141 "value" : ["int_hop_latency", "hop_latency"]
5142 },
5143 {
5144 "type" : "field",
5145 "value" : ["standard_metadata", "deq_timedelta"]
5146 }
5147 ],
5148 "source_info" : {
5149 "filename" : "include/int/int_transit.p4",
5150 "line" : 52,
5151 "column" : 8,
5152 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5153 }
5154 },
5155 {
5156 "op" : "add_header",
5157 "parameters" : [
5158 {
5159 "type" : "header",
5160 "value" : "int_port_ids"
5161 }
5162 ],
5163 "source_info" : {
5164 "filename" : "include/int/int_transit.p4",
5165 "line" : 45,
5166 "column" : 8,
5167 "source_fragment" : "hdr.int_port_ids.setValid()"
5168 }
5169 },
5170 {
5171 "op" : "assign",
5172 "parameters" : [
5173 {
5174 "type" : "field",
5175 "value" : ["int_port_ids", "ingress_port_id"]
5176 },
5177 {
5178 "type" : "expression",
5179 "value" : {
5180 "type" : "expression",
5181 "value" : {
5182 "op" : "&",
5183 "left" : {
5184 "type" : "field",
5185 "value" : ["standard_metadata", "ingress_port"]
5186 },
5187 "right" : {
5188 "type" : "hexstr",
5189 "value" : "0xffff"
5190 }
5191 }
5192 }
5193 }
5194 ],
5195 "source_info" : {
5196 "filename" : "include/int/int_transit.p4",
5197 "line" : 46,
5198 "column" : 8,
5199 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5200 }
5201 },
5202 {
5203 "op" : "assign",
5204 "parameters" : [
5205 {
5206 "type" : "field",
5207 "value" : ["int_port_ids", "egress_port_id"]
5208 },
5209 {
5210 "type" : "expression",
5211 "value" : {
5212 "type" : "expression",
5213 "value" : {
5214 "op" : "&",
5215 "left" : {
5216 "type" : "field",
5217 "value" : ["standard_metadata", "egress_port"]
5218 },
5219 "right" : {
5220 "type" : "hexstr",
5221 "value" : "0xffff"
5222 }
5223 }
5224 }
5225 }
5226 ],
5227 "source_info" : {
5228 "filename" : "include/int/int_transit.p4",
5229 "line" : 47,
5230 "column" : 8,
5231 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5232 }
5233 },
5234 {
5235 "op" : "assign",
5236 "parameters" : [
5237 {
5238 "type" : "field",
5239 "value" : ["userMetadata.int_meta", "new_words"]
5240 },
5241 {
5242 "type" : "expression",
5243 "value" : {
5244 "type" : "expression",
5245 "value" : {
5246 "op" : "&",
5247 "left" : {
5248 "type" : "expression",
5249 "value" : {
5250 "op" : "+",
5251 "left" : {
5252 "type" : "field",
5253 "value" : ["userMetadata.int_meta", "new_words"]
5254 },
5255 "right" : {
5256 "type" : "hexstr",
5257 "value" : "0x02"
5258 }
5259 }
5260 },
5261 "right" : {
5262 "type" : "hexstr",
5263 "value" : "0xff"
5264 }
5265 }
5266 }
5267 }
5268 ],
5269 "source_info" : {
5270 "filename" : "include/int/int_transit.p4",
5271 "line" : 93,
5272 "column" : 8,
5273 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
5274 }
5275 },
5276 {
5277 "op" : "assign",
5278 "parameters" : [
5279 {
5280 "type" : "field",
5281 "value" : ["userMetadata.int_meta", "new_bytes"]
5282 },
5283 {
5284 "type" : "expression",
5285 "value" : {
5286 "type" : "expression",
5287 "value" : {
5288 "op" : "&",
5289 "left" : {
5290 "type" : "expression",
5291 "value" : {
5292 "op" : "+",
5293 "left" : {
5294 "type" : "field",
5295 "value" : ["userMetadata.int_meta", "new_bytes"]
5296 },
5297 "right" : {
5298 "type" : "hexstr",
5299 "value" : "0x0008"
5300 }
5301 }
5302 },
5303 "right" : {
5304 "type" : "hexstr",
5305 "value" : "0xffff"
5306 }
5307 }
5308 }
5309 }
5310 ],
5311 "source_info" : {
5312 "filename" : "include/int/int_transit.p4",
5313 "line" : 94,
5314 "column" : 8,
5315 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
5316 }
5317 }
5318 ]
5319 },
5320 {
5321 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
5322 "id" : 66,
5323 "runtime_data" : [],
5324 "primitives" : [
5325 {
5326 "op" : "add_header",
5327 "parameters" : [
5328 {
5329 "type" : "header",
5330 "value" : "int_q_occupancy"
5331 }
5332 ],
5333 "source_info" : {
5334 "filename" : "include/int/int_transit.p4",
5335 "line" : 56,
5336 "column" : 8,
5337 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5338 }
5339 },
5340 {
5341 "op" : "assign",
5342 "parameters" : [
5343 {
5344 "type" : "field",
5345 "value" : ["int_q_occupancy", "q_id"]
5346 },
5347 {
5348 "type" : "hexstr",
5349 "value" : "0x00"
5350 }
5351 ],
5352 "source_info" : {
5353 "filename" : "include/int/int_transit.p4",
5354 "line" : 58,
5355 "column" : 8,
5356 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5357 }
5358 },
5359 {
5360 "op" : "assign",
5361 "parameters" : [
5362 {
5363 "type" : "field",
5364 "value" : ["int_q_occupancy", "q_occupancy"]
5365 },
5366 {
5367 "type" : "expression",
5368 "value" : {
5369 "type" : "expression",
5370 "value" : {
5371 "op" : "&",
5372 "left" : {
5373 "type" : "field",
5374 "value" : ["standard_metadata", "deq_qdepth"]
5375 },
5376 "right" : {
5377 "type" : "hexstr",
5378 "value" : "0xffffff"
5379 }
5380 }
5381 }
5382 }
5383 ],
5384 "source_info" : {
5385 "filename" : "include/int/int_transit.p4",
5386 "line" : 59,
5387 "column" : 8,
5388 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5389 }
5390 },
5391 {
5392 "op" : "add_header",
5393 "parameters" : [
5394 {
5395 "type" : "header",
5396 "value" : "int_hop_latency"
5397 }
5398 ],
5399 "source_info" : {
5400 "filename" : "include/int/int_transit.p4",
5401 "line" : 51,
5402 "column" : 8,
5403 "source_fragment" : "hdr.int_hop_latency.setValid()"
5404 }
5405 },
5406 {
5407 "op" : "assign",
5408 "parameters" : [
5409 {
5410 "type" : "field",
5411 "value" : ["int_hop_latency", "hop_latency"]
5412 },
5413 {
5414 "type" : "field",
5415 "value" : ["standard_metadata", "deq_timedelta"]
5416 }
5417 ],
5418 "source_info" : {
5419 "filename" : "include/int/int_transit.p4",
5420 "line" : 52,
5421 "column" : 8,
5422 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5423 }
5424 },
5425 {
5426 "op" : "add_header",
5427 "parameters" : [
5428 {
5429 "type" : "header",
5430 "value" : "int_port_ids"
5431 }
5432 ],
5433 "source_info" : {
5434 "filename" : "include/int/int_transit.p4",
5435 "line" : 45,
5436 "column" : 8,
5437 "source_fragment" : "hdr.int_port_ids.setValid()"
5438 }
5439 },
5440 {
5441 "op" : "assign",
5442 "parameters" : [
5443 {
5444 "type" : "field",
5445 "value" : ["int_port_ids", "ingress_port_id"]
5446 },
5447 {
5448 "type" : "expression",
5449 "value" : {
5450 "type" : "expression",
5451 "value" : {
5452 "op" : "&",
5453 "left" : {
5454 "type" : "field",
5455 "value" : ["standard_metadata", "ingress_port"]
5456 },
5457 "right" : {
5458 "type" : "hexstr",
5459 "value" : "0xffff"
5460 }
5461 }
5462 }
5463 }
5464 ],
5465 "source_info" : {
5466 "filename" : "include/int/int_transit.p4",
5467 "line" : 46,
5468 "column" : 8,
5469 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5470 }
5471 },
5472 {
5473 "op" : "assign",
5474 "parameters" : [
5475 {
5476 "type" : "field",
5477 "value" : ["int_port_ids", "egress_port_id"]
5478 },
5479 {
5480 "type" : "expression",
5481 "value" : {
5482 "type" : "expression",
5483 "value" : {
5484 "op" : "&",
5485 "left" : {
5486 "type" : "field",
5487 "value" : ["standard_metadata", "egress_port"]
5488 },
5489 "right" : {
5490 "type" : "hexstr",
5491 "value" : "0xffff"
5492 }
5493 }
5494 }
5495 }
5496 ],
5497 "source_info" : {
5498 "filename" : "include/int/int_transit.p4",
5499 "line" : 47,
5500 "column" : 8,
5501 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5502 }
5503 },
5504 {
5505 "op" : "assign",
5506 "parameters" : [
5507 {
5508 "type" : "field",
5509 "value" : ["userMetadata.int_meta", "new_words"]
5510 },
5511 {
5512 "type" : "expression",
5513 "value" : {
5514 "type" : "expression",
5515 "value" : {
5516 "op" : "&",
5517 "left" : {
5518 "type" : "expression",
5519 "value" : {
5520 "op" : "+",
5521 "left" : {
5522 "type" : "field",
5523 "value" : ["userMetadata.int_meta", "new_words"]
5524 },
5525 "right" : {
5526 "type" : "hexstr",
5527 "value" : "0x03"
5528 }
5529 }
5530 },
5531 "right" : {
5532 "type" : "hexstr",
5533 "value" : "0xff"
5534 }
5535 }
5536 }
5537 }
5538 ],
5539 "source_info" : {
5540 "filename" : "include/int/int_transit.p4",
5541 "line" : 98,
5542 "column" : 8,
5543 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
5544 }
5545 },
5546 {
5547 "op" : "assign",
5548 "parameters" : [
5549 {
5550 "type" : "field",
5551 "value" : ["userMetadata.int_meta", "new_bytes"]
5552 },
5553 {
5554 "type" : "expression",
5555 "value" : {
5556 "type" : "expression",
5557 "value" : {
5558 "op" : "&",
5559 "left" : {
5560 "type" : "expression",
5561 "value" : {
5562 "op" : "+",
5563 "left" : {
5564 "type" : "field",
5565 "value" : ["userMetadata.int_meta", "new_bytes"]
5566 },
5567 "right" : {
5568 "type" : "hexstr",
5569 "value" : "0x000c"
5570 }
5571 }
5572 },
5573 "right" : {
5574 "type" : "hexstr",
5575 "value" : "0xffff"
5576 }
5577 }
5578 }
5579 }
5580 ],
5581 "source_info" : {
5582 "filename" : "include/int/int_transit.p4",
5583 "line" : 99,
5584 "column" : 8,
5585 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
5586 }
5587 }
5588 ]
5589 },
5590 {
5591 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
5592 "id" : 67,
5593 "runtime_data" : [],
5594 "primitives" : [
5595 {
5596 "op" : "add_header",
5597 "parameters" : [
5598 {
5599 "type" : "header",
5600 "value" : "int_switch_id"
5601 }
5602 ],
5603 "source_info" : {
5604 "filename" : "include/int/int_transit.p4",
5605 "line" : 40,
5606 "column" : 8,
5607 "source_fragment" : "hdr.int_switch_id.setValid()"
5608 }
5609 },
5610 {
5611 "op" : "assign",
5612 "parameters" : [
5613 {
5614 "type" : "field",
5615 "value" : ["int_switch_id", "switch_id"]
5616 },
5617 {
5618 "type" : "field",
5619 "value" : ["userMetadata.int_meta", "switch_id"]
5620 }
5621 ],
5622 "source_info" : {
5623 "filename" : "include/int/int_transit.p4",
5624 "line" : 41,
5625 "column" : 8,
5626 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
5627 }
5628 },
5629 {
5630 "op" : "assign",
5631 "parameters" : [
5632 {
5633 "type" : "field",
5634 "value" : ["userMetadata.int_meta", "new_words"]
5635 },
5636 {
5637 "type" : "expression",
5638 "value" : {
5639 "type" : "expression",
5640 "value" : {
5641 "op" : "&",
5642 "left" : {
5643 "type" : "expression",
5644 "value" : {
5645 "op" : "+",
5646 "left" : {
5647 "type" : "field",
5648 "value" : ["userMetadata.int_meta", "new_words"]
5649 },
5650 "right" : {
5651 "type" : "hexstr",
5652 "value" : "0x01"
5653 }
5654 }
5655 },
5656 "right" : {
5657 "type" : "hexstr",
5658 "value" : "0xff"
5659 }
5660 }
5661 }
5662 }
5663 ],
5664 "source_info" : {
5665 "filename" : "include/int/int_transit.p4",
5666 "line" : 88,
5667 "column" : 8,
5668 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
5669 }
5670 },
5671 {
5672 "op" : "assign",
5673 "parameters" : [
5674 {
5675 "type" : "field",
5676 "value" : ["userMetadata.int_meta", "new_bytes"]
5677 },
5678 {
5679 "type" : "expression",
5680 "value" : {
5681 "type" : "expression",
5682 "value" : {
5683 "op" : "&",
5684 "left" : {
5685 "type" : "expression",
5686 "value" : {
5687 "op" : "+",
5688 "left" : {
5689 "type" : "field",
5690 "value" : ["userMetadata.int_meta", "new_bytes"]
5691 },
5692 "right" : {
5693 "type" : "hexstr",
5694 "value" : "0x0004"
5695 }
5696 }
5697 },
5698 "right" : {
5699 "type" : "hexstr",
5700 "value" : "0xffff"
5701 }
5702 }
5703 }
5704 }
5705 ],
5706 "source_info" : {
5707 "filename" : "include/int/int_transit.p4",
5708 "line" : 89,
5709 "column" : 8,
5710 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
5711 }
5712 }
5713 ]
5714 },
5715 {
5716 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
5717 "id" : 68,
5718 "runtime_data" : [],
5719 "primitives" : [
5720 {
5721 "op" : "add_header",
5722 "parameters" : [
5723 {
5724 "type" : "header",
5725 "value" : "int_q_occupancy"
5726 }
5727 ],
5728 "source_info" : {
5729 "filename" : "include/int/int_transit.p4",
5730 "line" : 56,
5731 "column" : 8,
5732 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5733 }
5734 },
5735 {
5736 "op" : "assign",
5737 "parameters" : [
5738 {
5739 "type" : "field",
5740 "value" : ["int_q_occupancy", "q_id"]
5741 },
5742 {
5743 "type" : "hexstr",
5744 "value" : "0x00"
5745 }
5746 ],
5747 "source_info" : {
5748 "filename" : "include/int/int_transit.p4",
5749 "line" : 58,
5750 "column" : 8,
5751 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5752 }
5753 },
5754 {
5755 "op" : "assign",
5756 "parameters" : [
5757 {
5758 "type" : "field",
5759 "value" : ["int_q_occupancy", "q_occupancy"]
5760 },
5761 {
5762 "type" : "expression",
5763 "value" : {
5764 "type" : "expression",
5765 "value" : {
5766 "op" : "&",
5767 "left" : {
5768 "type" : "field",
5769 "value" : ["standard_metadata", "deq_qdepth"]
5770 },
5771 "right" : {
5772 "type" : "hexstr",
5773 "value" : "0xffffff"
5774 }
5775 }
5776 }
5777 }
5778 ],
5779 "source_info" : {
5780 "filename" : "include/int/int_transit.p4",
5781 "line" : 59,
5782 "column" : 8,
5783 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5784 }
5785 },
5786 {
5787 "op" : "add_header",
5788 "parameters" : [
5789 {
5790 "type" : "header",
5791 "value" : "int_switch_id"
5792 }
5793 ],
5794 "source_info" : {
5795 "filename" : "include/int/int_transit.p4",
5796 "line" : 40,
5797 "column" : 8,
5798 "source_fragment" : "hdr.int_switch_id.setValid()"
5799 }
5800 },
5801 {
5802 "op" : "assign",
5803 "parameters" : [
5804 {
5805 "type" : "field",
5806 "value" : ["int_switch_id", "switch_id"]
5807 },
5808 {
5809 "type" : "field",
5810 "value" : ["userMetadata.int_meta", "switch_id"]
5811 }
5812 ],
5813 "source_info" : {
5814 "filename" : "include/int/int_transit.p4",
5815 "line" : 41,
5816 "column" : 8,
5817 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
5818 }
5819 },
5820 {
5821 "op" : "assign",
5822 "parameters" : [
5823 {
5824 "type" : "field",
5825 "value" : ["userMetadata.int_meta", "new_words"]
5826 },
5827 {
5828 "type" : "expression",
5829 "value" : {
5830 "type" : "expression",
5831 "value" : {
5832 "op" : "&",
5833 "left" : {
5834 "type" : "expression",
5835 "value" : {
5836 "op" : "+",
5837 "left" : {
5838 "type" : "field",
5839 "value" : ["userMetadata.int_meta", "new_words"]
5840 },
5841 "right" : {
5842 "type" : "hexstr",
5843 "value" : "0x02"
5844 }
5845 }
5846 },
5847 "right" : {
5848 "type" : "hexstr",
5849 "value" : "0xff"
5850 }
5851 }
5852 }
5853 }
5854 ],
5855 "source_info" : {
5856 "filename" : "include/int/int_transit.p4",
5857 "line" : 93,
5858 "column" : 8,
5859 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
5860 }
5861 },
5862 {
5863 "op" : "assign",
5864 "parameters" : [
5865 {
5866 "type" : "field",
5867 "value" : ["userMetadata.int_meta", "new_bytes"]
5868 },
5869 {
5870 "type" : "expression",
5871 "value" : {
5872 "type" : "expression",
5873 "value" : {
5874 "op" : "&",
5875 "left" : {
5876 "type" : "expression",
5877 "value" : {
5878 "op" : "+",
5879 "left" : {
5880 "type" : "field",
5881 "value" : ["userMetadata.int_meta", "new_bytes"]
5882 },
5883 "right" : {
5884 "type" : "hexstr",
5885 "value" : "0x0008"
5886 }
5887 }
5888 },
5889 "right" : {
5890 "type" : "hexstr",
5891 "value" : "0xffff"
5892 }
5893 }
5894 }
5895 }
5896 ],
5897 "source_info" : {
5898 "filename" : "include/int/int_transit.p4",
5899 "line" : 94,
5900 "column" : 8,
5901 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
5902 }
5903 }
5904 ]
5905 },
5906 {
5907 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
5908 "id" : 69,
5909 "runtime_data" : [],
5910 "primitives" : [
5911 {
5912 "op" : "add_header",
5913 "parameters" : [
5914 {
5915 "type" : "header",
5916 "value" : "int_hop_latency"
5917 }
5918 ],
5919 "source_info" : {
5920 "filename" : "include/int/int_transit.p4",
5921 "line" : 51,
5922 "column" : 8,
5923 "source_fragment" : "hdr.int_hop_latency.setValid()"
5924 }
5925 },
5926 {
5927 "op" : "assign",
5928 "parameters" : [
5929 {
5930 "type" : "field",
5931 "value" : ["int_hop_latency", "hop_latency"]
5932 },
5933 {
5934 "type" : "field",
5935 "value" : ["standard_metadata", "deq_timedelta"]
5936 }
5937 ],
5938 "source_info" : {
5939 "filename" : "include/int/int_transit.p4",
5940 "line" : 52,
5941 "column" : 8,
5942 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5943 }
5944 },
5945 {
5946 "op" : "add_header",
5947 "parameters" : [
5948 {
5949 "type" : "header",
5950 "value" : "int_switch_id"
5951 }
5952 ],
5953 "source_info" : {
5954 "filename" : "include/int/int_transit.p4",
5955 "line" : 40,
5956 "column" : 8,
5957 "source_fragment" : "hdr.int_switch_id.setValid()"
5958 }
5959 },
5960 {
5961 "op" : "assign",
5962 "parameters" : [
5963 {
5964 "type" : "field",
5965 "value" : ["int_switch_id", "switch_id"]
5966 },
5967 {
5968 "type" : "field",
5969 "value" : ["userMetadata.int_meta", "switch_id"]
5970 }
5971 ],
5972 "source_info" : {
5973 "filename" : "include/int/int_transit.p4",
5974 "line" : 41,
5975 "column" : 8,
5976 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
5977 }
5978 },
5979 {
5980 "op" : "assign",
5981 "parameters" : [
5982 {
5983 "type" : "field",
5984 "value" : ["userMetadata.int_meta", "new_words"]
5985 },
5986 {
5987 "type" : "expression",
5988 "value" : {
5989 "type" : "expression",
5990 "value" : {
5991 "op" : "&",
5992 "left" : {
5993 "type" : "expression",
5994 "value" : {
5995 "op" : "+",
5996 "left" : {
5997 "type" : "field",
5998 "value" : ["userMetadata.int_meta", "new_words"]
5999 },
6000 "right" : {
6001 "type" : "hexstr",
6002 "value" : "0x02"
6003 }
6004 }
6005 },
6006 "right" : {
6007 "type" : "hexstr",
6008 "value" : "0xff"
6009 }
6010 }
6011 }
6012 }
6013 ],
6014 "source_info" : {
6015 "filename" : "include/int/int_transit.p4",
6016 "line" : 93,
6017 "column" : 8,
6018 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6019 }
6020 },
6021 {
6022 "op" : "assign",
6023 "parameters" : [
6024 {
6025 "type" : "field",
6026 "value" : ["userMetadata.int_meta", "new_bytes"]
6027 },
6028 {
6029 "type" : "expression",
6030 "value" : {
6031 "type" : "expression",
6032 "value" : {
6033 "op" : "&",
6034 "left" : {
6035 "type" : "expression",
6036 "value" : {
6037 "op" : "+",
6038 "left" : {
6039 "type" : "field",
6040 "value" : ["userMetadata.int_meta", "new_bytes"]
6041 },
6042 "right" : {
6043 "type" : "hexstr",
6044 "value" : "0x0008"
6045 }
6046 }
6047 },
6048 "right" : {
6049 "type" : "hexstr",
6050 "value" : "0xffff"
6051 }
6052 }
6053 }
6054 }
6055 ],
6056 "source_info" : {
6057 "filename" : "include/int/int_transit.p4",
6058 "line" : 94,
6059 "column" : 8,
6060 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6061 }
6062 }
6063 ]
6064 },
6065 {
6066 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
6067 "id" : 70,
6068 "runtime_data" : [],
6069 "primitives" : [
6070 {
6071 "op" : "add_header",
6072 "parameters" : [
6073 {
6074 "type" : "header",
6075 "value" : "int_q_occupancy"
6076 }
6077 ],
6078 "source_info" : {
6079 "filename" : "include/int/int_transit.p4",
6080 "line" : 56,
6081 "column" : 8,
6082 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6083 }
6084 },
6085 {
6086 "op" : "assign",
6087 "parameters" : [
6088 {
6089 "type" : "field",
6090 "value" : ["int_q_occupancy", "q_id"]
6091 },
6092 {
6093 "type" : "hexstr",
6094 "value" : "0x00"
6095 }
6096 ],
6097 "source_info" : {
6098 "filename" : "include/int/int_transit.p4",
6099 "line" : 58,
6100 "column" : 8,
6101 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6102 }
6103 },
6104 {
6105 "op" : "assign",
6106 "parameters" : [
6107 {
6108 "type" : "field",
6109 "value" : ["int_q_occupancy", "q_occupancy"]
6110 },
6111 {
6112 "type" : "expression",
6113 "value" : {
6114 "type" : "expression",
6115 "value" : {
6116 "op" : "&",
6117 "left" : {
6118 "type" : "field",
6119 "value" : ["standard_metadata", "deq_qdepth"]
6120 },
6121 "right" : {
6122 "type" : "hexstr",
6123 "value" : "0xffffff"
6124 }
6125 }
6126 }
6127 }
6128 ],
6129 "source_info" : {
6130 "filename" : "include/int/int_transit.p4",
6131 "line" : 59,
6132 "column" : 8,
6133 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6134 }
6135 },
6136 {
6137 "op" : "add_header",
6138 "parameters" : [
6139 {
6140 "type" : "header",
6141 "value" : "int_hop_latency"
6142 }
6143 ],
6144 "source_info" : {
6145 "filename" : "include/int/int_transit.p4",
6146 "line" : 51,
6147 "column" : 8,
6148 "source_fragment" : "hdr.int_hop_latency.setValid()"
6149 }
6150 },
6151 {
6152 "op" : "assign",
6153 "parameters" : [
6154 {
6155 "type" : "field",
6156 "value" : ["int_hop_latency", "hop_latency"]
6157 },
6158 {
6159 "type" : "field",
6160 "value" : ["standard_metadata", "deq_timedelta"]
6161 }
6162 ],
6163 "source_info" : {
6164 "filename" : "include/int/int_transit.p4",
6165 "line" : 52,
6166 "column" : 8,
6167 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6168 }
6169 },
6170 {
6171 "op" : "add_header",
6172 "parameters" : [
6173 {
6174 "type" : "header",
6175 "value" : "int_switch_id"
6176 }
6177 ],
6178 "source_info" : {
6179 "filename" : "include/int/int_transit.p4",
6180 "line" : 40,
6181 "column" : 8,
6182 "source_fragment" : "hdr.int_switch_id.setValid()"
6183 }
6184 },
6185 {
6186 "op" : "assign",
6187 "parameters" : [
6188 {
6189 "type" : "field",
6190 "value" : ["int_switch_id", "switch_id"]
6191 },
6192 {
6193 "type" : "field",
6194 "value" : ["userMetadata.int_meta", "switch_id"]
6195 }
6196 ],
6197 "source_info" : {
6198 "filename" : "include/int/int_transit.p4",
6199 "line" : 41,
6200 "column" : 8,
6201 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6202 }
6203 },
6204 {
6205 "op" : "assign",
6206 "parameters" : [
6207 {
6208 "type" : "field",
6209 "value" : ["userMetadata.int_meta", "new_words"]
6210 },
6211 {
6212 "type" : "expression",
6213 "value" : {
6214 "type" : "expression",
6215 "value" : {
6216 "op" : "&",
6217 "left" : {
6218 "type" : "expression",
6219 "value" : {
6220 "op" : "+",
6221 "left" : {
6222 "type" : "field",
6223 "value" : ["userMetadata.int_meta", "new_words"]
6224 },
6225 "right" : {
6226 "type" : "hexstr",
6227 "value" : "0x03"
6228 }
6229 }
6230 },
6231 "right" : {
6232 "type" : "hexstr",
6233 "value" : "0xff"
6234 }
6235 }
6236 }
6237 }
6238 ],
6239 "source_info" : {
6240 "filename" : "include/int/int_transit.p4",
6241 "line" : 98,
6242 "column" : 8,
6243 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
6244 }
6245 },
6246 {
6247 "op" : "assign",
6248 "parameters" : [
6249 {
6250 "type" : "field",
6251 "value" : ["userMetadata.int_meta", "new_bytes"]
6252 },
6253 {
6254 "type" : "expression",
6255 "value" : {
6256 "type" : "expression",
6257 "value" : {
6258 "op" : "&",
6259 "left" : {
6260 "type" : "expression",
6261 "value" : {
6262 "op" : "+",
6263 "left" : {
6264 "type" : "field",
6265 "value" : ["userMetadata.int_meta", "new_bytes"]
6266 },
6267 "right" : {
6268 "type" : "hexstr",
6269 "value" : "0x000c"
6270 }
6271 }
6272 },
6273 "right" : {
6274 "type" : "hexstr",
6275 "value" : "0xffff"
6276 }
6277 }
6278 }
6279 }
6280 ],
6281 "source_info" : {
6282 "filename" : "include/int/int_transit.p4",
6283 "line" : 99,
6284 "column" : 8,
6285 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
6286 }
6287 }
6288 ]
6289 },
6290 {
6291 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
6292 "id" : 71,
6293 "runtime_data" : [],
6294 "primitives" : [
6295 {
6296 "op" : "add_header",
6297 "parameters" : [
6298 {
6299 "type" : "header",
6300 "value" : "int_port_ids"
6301 }
6302 ],
6303 "source_info" : {
6304 "filename" : "include/int/int_transit.p4",
6305 "line" : 45,
6306 "column" : 8,
6307 "source_fragment" : "hdr.int_port_ids.setValid()"
6308 }
6309 },
6310 {
6311 "op" : "assign",
6312 "parameters" : [
6313 {
6314 "type" : "field",
6315 "value" : ["int_port_ids", "ingress_port_id"]
6316 },
6317 {
6318 "type" : "expression",
6319 "value" : {
6320 "type" : "expression",
6321 "value" : {
6322 "op" : "&",
6323 "left" : {
6324 "type" : "field",
6325 "value" : ["standard_metadata", "ingress_port"]
6326 },
6327 "right" : {
6328 "type" : "hexstr",
6329 "value" : "0xffff"
6330 }
6331 }
6332 }
6333 }
6334 ],
6335 "source_info" : {
6336 "filename" : "include/int/int_transit.p4",
6337 "line" : 46,
6338 "column" : 8,
6339 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6340 }
6341 },
6342 {
6343 "op" : "assign",
6344 "parameters" : [
6345 {
6346 "type" : "field",
6347 "value" : ["int_port_ids", "egress_port_id"]
6348 },
6349 {
6350 "type" : "expression",
6351 "value" : {
6352 "type" : "expression",
6353 "value" : {
6354 "op" : "&",
6355 "left" : {
6356 "type" : "field",
6357 "value" : ["standard_metadata", "egress_port"]
6358 },
6359 "right" : {
6360 "type" : "hexstr",
6361 "value" : "0xffff"
6362 }
6363 }
6364 }
6365 }
6366 ],
6367 "source_info" : {
6368 "filename" : "include/int/int_transit.p4",
6369 "line" : 47,
6370 "column" : 8,
6371 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6372 }
6373 },
6374 {
6375 "op" : "add_header",
6376 "parameters" : [
6377 {
6378 "type" : "header",
6379 "value" : "int_switch_id"
6380 }
6381 ],
6382 "source_info" : {
6383 "filename" : "include/int/int_transit.p4",
6384 "line" : 40,
6385 "column" : 8,
6386 "source_fragment" : "hdr.int_switch_id.setValid()"
6387 }
6388 },
6389 {
6390 "op" : "assign",
6391 "parameters" : [
6392 {
6393 "type" : "field",
6394 "value" : ["int_switch_id", "switch_id"]
6395 },
6396 {
6397 "type" : "field",
6398 "value" : ["userMetadata.int_meta", "switch_id"]
6399 }
6400 ],
6401 "source_info" : {
6402 "filename" : "include/int/int_transit.p4",
6403 "line" : 41,
6404 "column" : 8,
6405 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6406 }
6407 },
6408 {
6409 "op" : "assign",
6410 "parameters" : [
6411 {
6412 "type" : "field",
6413 "value" : ["userMetadata.int_meta", "new_words"]
6414 },
6415 {
6416 "type" : "expression",
6417 "value" : {
6418 "type" : "expression",
6419 "value" : {
6420 "op" : "&",
6421 "left" : {
6422 "type" : "expression",
6423 "value" : {
6424 "op" : "+",
6425 "left" : {
6426 "type" : "field",
6427 "value" : ["userMetadata.int_meta", "new_words"]
6428 },
6429 "right" : {
6430 "type" : "hexstr",
6431 "value" : "0x02"
6432 }
6433 }
6434 },
6435 "right" : {
6436 "type" : "hexstr",
6437 "value" : "0xff"
6438 }
6439 }
6440 }
6441 }
6442 ],
6443 "source_info" : {
6444 "filename" : "include/int/int_transit.p4",
6445 "line" : 93,
6446 "column" : 8,
6447 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6448 }
6449 },
6450 {
6451 "op" : "assign",
6452 "parameters" : [
6453 {
6454 "type" : "field",
6455 "value" : ["userMetadata.int_meta", "new_bytes"]
6456 },
6457 {
6458 "type" : "expression",
6459 "value" : {
6460 "type" : "expression",
6461 "value" : {
6462 "op" : "&",
6463 "left" : {
6464 "type" : "expression",
6465 "value" : {
6466 "op" : "+",
6467 "left" : {
6468 "type" : "field",
6469 "value" : ["userMetadata.int_meta", "new_bytes"]
6470 },
6471 "right" : {
6472 "type" : "hexstr",
6473 "value" : "0x0008"
6474 }
6475 }
6476 },
6477 "right" : {
6478 "type" : "hexstr",
6479 "value" : "0xffff"
6480 }
6481 }
6482 }
6483 }
6484 ],
6485 "source_info" : {
6486 "filename" : "include/int/int_transit.p4",
6487 "line" : 94,
6488 "column" : 8,
6489 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6490 }
6491 }
6492 ]
6493 },
6494 {
6495 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
6496 "id" : 72,
6497 "runtime_data" : [],
6498 "primitives" : [
6499 {
6500 "op" : "add_header",
6501 "parameters" : [
6502 {
6503 "type" : "header",
6504 "value" : "int_q_occupancy"
6505 }
6506 ],
6507 "source_info" : {
6508 "filename" : "include/int/int_transit.p4",
6509 "line" : 56,
6510 "column" : 8,
6511 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6512 }
6513 },
6514 {
6515 "op" : "assign",
6516 "parameters" : [
6517 {
6518 "type" : "field",
6519 "value" : ["int_q_occupancy", "q_id"]
6520 },
6521 {
6522 "type" : "hexstr",
6523 "value" : "0x00"
6524 }
6525 ],
6526 "source_info" : {
6527 "filename" : "include/int/int_transit.p4",
6528 "line" : 58,
6529 "column" : 8,
6530 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6531 }
6532 },
6533 {
6534 "op" : "assign",
6535 "parameters" : [
6536 {
6537 "type" : "field",
6538 "value" : ["int_q_occupancy", "q_occupancy"]
6539 },
6540 {
6541 "type" : "expression",
6542 "value" : {
6543 "type" : "expression",
6544 "value" : {
6545 "op" : "&",
6546 "left" : {
6547 "type" : "field",
6548 "value" : ["standard_metadata", "deq_qdepth"]
6549 },
6550 "right" : {
6551 "type" : "hexstr",
6552 "value" : "0xffffff"
6553 }
6554 }
6555 }
6556 }
6557 ],
6558 "source_info" : {
6559 "filename" : "include/int/int_transit.p4",
6560 "line" : 59,
6561 "column" : 8,
6562 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6563 }
6564 },
6565 {
6566 "op" : "add_header",
6567 "parameters" : [
6568 {
6569 "type" : "header",
6570 "value" : "int_port_ids"
6571 }
6572 ],
6573 "source_info" : {
6574 "filename" : "include/int/int_transit.p4",
6575 "line" : 45,
6576 "column" : 8,
6577 "source_fragment" : "hdr.int_port_ids.setValid()"
6578 }
6579 },
6580 {
6581 "op" : "assign",
6582 "parameters" : [
6583 {
6584 "type" : "field",
6585 "value" : ["int_port_ids", "ingress_port_id"]
6586 },
6587 {
6588 "type" : "expression",
6589 "value" : {
6590 "type" : "expression",
6591 "value" : {
6592 "op" : "&",
6593 "left" : {
6594 "type" : "field",
6595 "value" : ["standard_metadata", "ingress_port"]
6596 },
6597 "right" : {
6598 "type" : "hexstr",
6599 "value" : "0xffff"
6600 }
6601 }
6602 }
6603 }
6604 ],
6605 "source_info" : {
6606 "filename" : "include/int/int_transit.p4",
6607 "line" : 46,
6608 "column" : 8,
6609 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6610 }
6611 },
6612 {
6613 "op" : "assign",
6614 "parameters" : [
6615 {
6616 "type" : "field",
6617 "value" : ["int_port_ids", "egress_port_id"]
6618 },
6619 {
6620 "type" : "expression",
6621 "value" : {
6622 "type" : "expression",
6623 "value" : {
6624 "op" : "&",
6625 "left" : {
6626 "type" : "field",
6627 "value" : ["standard_metadata", "egress_port"]
6628 },
6629 "right" : {
6630 "type" : "hexstr",
6631 "value" : "0xffff"
6632 }
6633 }
6634 }
6635 }
6636 ],
6637 "source_info" : {
6638 "filename" : "include/int/int_transit.p4",
6639 "line" : 47,
6640 "column" : 8,
6641 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6642 }
6643 },
6644 {
6645 "op" : "add_header",
6646 "parameters" : [
6647 {
6648 "type" : "header",
6649 "value" : "int_switch_id"
6650 }
6651 ],
6652 "source_info" : {
6653 "filename" : "include/int/int_transit.p4",
6654 "line" : 40,
6655 "column" : 8,
6656 "source_fragment" : "hdr.int_switch_id.setValid()"
6657 }
6658 },
6659 {
6660 "op" : "assign",
6661 "parameters" : [
6662 {
6663 "type" : "field",
6664 "value" : ["int_switch_id", "switch_id"]
6665 },
6666 {
6667 "type" : "field",
6668 "value" : ["userMetadata.int_meta", "switch_id"]
6669 }
6670 ],
6671 "source_info" : {
6672 "filename" : "include/int/int_transit.p4",
6673 "line" : 41,
6674 "column" : 8,
6675 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6676 }
6677 },
6678 {
6679 "op" : "assign",
6680 "parameters" : [
6681 {
6682 "type" : "field",
6683 "value" : ["userMetadata.int_meta", "new_words"]
6684 },
6685 {
6686 "type" : "expression",
6687 "value" : {
6688 "type" : "expression",
6689 "value" : {
6690 "op" : "&",
6691 "left" : {
6692 "type" : "expression",
6693 "value" : {
6694 "op" : "+",
6695 "left" : {
6696 "type" : "field",
6697 "value" : ["userMetadata.int_meta", "new_words"]
6698 },
6699 "right" : {
6700 "type" : "hexstr",
6701 "value" : "0x03"
6702 }
6703 }
6704 },
6705 "right" : {
6706 "type" : "hexstr",
6707 "value" : "0xff"
6708 }
6709 }
6710 }
6711 }
6712 ],
6713 "source_info" : {
6714 "filename" : "include/int/int_transit.p4",
6715 "line" : 98,
6716 "column" : 8,
6717 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
6718 }
6719 },
6720 {
6721 "op" : "assign",
6722 "parameters" : [
6723 {
6724 "type" : "field",
6725 "value" : ["userMetadata.int_meta", "new_bytes"]
6726 },
6727 {
6728 "type" : "expression",
6729 "value" : {
6730 "type" : "expression",
6731 "value" : {
6732 "op" : "&",
6733 "left" : {
6734 "type" : "expression",
6735 "value" : {
6736 "op" : "+",
6737 "left" : {
6738 "type" : "field",
6739 "value" : ["userMetadata.int_meta", "new_bytes"]
6740 },
6741 "right" : {
6742 "type" : "hexstr",
6743 "value" : "0x000c"
6744 }
6745 }
6746 },
6747 "right" : {
6748 "type" : "hexstr",
6749 "value" : "0xffff"
6750 }
6751 }
6752 }
6753 }
6754 ],
6755 "source_info" : {
6756 "filename" : "include/int/int_transit.p4",
6757 "line" : 99,
6758 "column" : 8,
6759 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
6760 }
6761 }
6762 ]
6763 },
6764 {
6765 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
6766 "id" : 73,
6767 "runtime_data" : [],
6768 "primitives" : [
6769 {
6770 "op" : "add_header",
6771 "parameters" : [
6772 {
6773 "type" : "header",
6774 "value" : "int_hop_latency"
6775 }
6776 ],
6777 "source_info" : {
6778 "filename" : "include/int/int_transit.p4",
6779 "line" : 51,
6780 "column" : 8,
6781 "source_fragment" : "hdr.int_hop_latency.setValid()"
6782 }
6783 },
6784 {
6785 "op" : "assign",
6786 "parameters" : [
6787 {
6788 "type" : "field",
6789 "value" : ["int_hop_latency", "hop_latency"]
6790 },
6791 {
6792 "type" : "field",
6793 "value" : ["standard_metadata", "deq_timedelta"]
6794 }
6795 ],
6796 "source_info" : {
6797 "filename" : "include/int/int_transit.p4",
6798 "line" : 52,
6799 "column" : 8,
6800 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6801 }
6802 },
6803 {
6804 "op" : "add_header",
6805 "parameters" : [
6806 {
6807 "type" : "header",
6808 "value" : "int_port_ids"
6809 }
6810 ],
6811 "source_info" : {
6812 "filename" : "include/int/int_transit.p4",
6813 "line" : 45,
6814 "column" : 8,
6815 "source_fragment" : "hdr.int_port_ids.setValid()"
6816 }
6817 },
6818 {
6819 "op" : "assign",
6820 "parameters" : [
6821 {
6822 "type" : "field",
6823 "value" : ["int_port_ids", "ingress_port_id"]
6824 },
6825 {
6826 "type" : "expression",
6827 "value" : {
6828 "type" : "expression",
6829 "value" : {
6830 "op" : "&",
6831 "left" : {
6832 "type" : "field",
6833 "value" : ["standard_metadata", "ingress_port"]
6834 },
6835 "right" : {
6836 "type" : "hexstr",
6837 "value" : "0xffff"
6838 }
6839 }
6840 }
6841 }
6842 ],
6843 "source_info" : {
6844 "filename" : "include/int/int_transit.p4",
6845 "line" : 46,
6846 "column" : 8,
6847 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6848 }
6849 },
6850 {
6851 "op" : "assign",
6852 "parameters" : [
6853 {
6854 "type" : "field",
6855 "value" : ["int_port_ids", "egress_port_id"]
6856 },
6857 {
6858 "type" : "expression",
6859 "value" : {
6860 "type" : "expression",
6861 "value" : {
6862 "op" : "&",
6863 "left" : {
6864 "type" : "field",
6865 "value" : ["standard_metadata", "egress_port"]
6866 },
6867 "right" : {
6868 "type" : "hexstr",
6869 "value" : "0xffff"
6870 }
6871 }
6872 }
6873 }
6874 ],
6875 "source_info" : {
6876 "filename" : "include/int/int_transit.p4",
6877 "line" : 47,
6878 "column" : 8,
6879 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6880 }
6881 },
6882 {
6883 "op" : "add_header",
6884 "parameters" : [
6885 {
6886 "type" : "header",
6887 "value" : "int_switch_id"
6888 }
6889 ],
6890 "source_info" : {
6891 "filename" : "include/int/int_transit.p4",
6892 "line" : 40,
6893 "column" : 8,
6894 "source_fragment" : "hdr.int_switch_id.setValid()"
6895 }
6896 },
6897 {
6898 "op" : "assign",
6899 "parameters" : [
6900 {
6901 "type" : "field",
6902 "value" : ["int_switch_id", "switch_id"]
6903 },
6904 {
6905 "type" : "field",
6906 "value" : ["userMetadata.int_meta", "switch_id"]
6907 }
6908 ],
6909 "source_info" : {
6910 "filename" : "include/int/int_transit.p4",
6911 "line" : 41,
6912 "column" : 8,
6913 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6914 }
6915 },
6916 {
6917 "op" : "assign",
6918 "parameters" : [
6919 {
6920 "type" : "field",
6921 "value" : ["userMetadata.int_meta", "new_words"]
6922 },
6923 {
6924 "type" : "expression",
6925 "value" : {
6926 "type" : "expression",
6927 "value" : {
6928 "op" : "&",
6929 "left" : {
6930 "type" : "expression",
6931 "value" : {
6932 "op" : "+",
6933 "left" : {
6934 "type" : "field",
6935 "value" : ["userMetadata.int_meta", "new_words"]
6936 },
6937 "right" : {
6938 "type" : "hexstr",
6939 "value" : "0x03"
6940 }
6941 }
6942 },
6943 "right" : {
6944 "type" : "hexstr",
6945 "value" : "0xff"
6946 }
6947 }
6948 }
6949 }
6950 ],
6951 "source_info" : {
6952 "filename" : "include/int/int_transit.p4",
6953 "line" : 98,
6954 "column" : 8,
6955 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
6956 }
6957 },
6958 {
6959 "op" : "assign",
6960 "parameters" : [
6961 {
6962 "type" : "field",
6963 "value" : ["userMetadata.int_meta", "new_bytes"]
6964 },
6965 {
6966 "type" : "expression",
6967 "value" : {
6968 "type" : "expression",
6969 "value" : {
6970 "op" : "&",
6971 "left" : {
6972 "type" : "expression",
6973 "value" : {
6974 "op" : "+",
6975 "left" : {
6976 "type" : "field",
6977 "value" : ["userMetadata.int_meta", "new_bytes"]
6978 },
6979 "right" : {
6980 "type" : "hexstr",
6981 "value" : "0x000c"
6982 }
6983 }
6984 },
6985 "right" : {
6986 "type" : "hexstr",
6987 "value" : "0xffff"
6988 }
6989 }
6990 }
6991 }
6992 ],
6993 "source_info" : {
6994 "filename" : "include/int/int_transit.p4",
6995 "line" : 99,
6996 "column" : 8,
6997 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
6998 }
6999 }
7000 ]
7001 },
7002 {
7003 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
7004 "id" : 74,
7005 "runtime_data" : [],
7006 "primitives" : [
7007 {
7008 "op" : "add_header",
7009 "parameters" : [
7010 {
7011 "type" : "header",
7012 "value" : "int_q_occupancy"
7013 }
7014 ],
7015 "source_info" : {
7016 "filename" : "include/int/int_transit.p4",
7017 "line" : 56,
7018 "column" : 8,
7019 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7020 }
7021 },
7022 {
7023 "op" : "assign",
7024 "parameters" : [
7025 {
7026 "type" : "field",
7027 "value" : ["int_q_occupancy", "q_id"]
7028 },
7029 {
7030 "type" : "hexstr",
7031 "value" : "0x00"
7032 }
7033 ],
7034 "source_info" : {
7035 "filename" : "include/int/int_transit.p4",
7036 "line" : 58,
7037 "column" : 8,
7038 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7039 }
7040 },
7041 {
7042 "op" : "assign",
7043 "parameters" : [
7044 {
7045 "type" : "field",
7046 "value" : ["int_q_occupancy", "q_occupancy"]
7047 },
7048 {
7049 "type" : "expression",
7050 "value" : {
7051 "type" : "expression",
7052 "value" : {
7053 "op" : "&",
7054 "left" : {
7055 "type" : "field",
7056 "value" : ["standard_metadata", "deq_qdepth"]
7057 },
7058 "right" : {
7059 "type" : "hexstr",
7060 "value" : "0xffffff"
7061 }
7062 }
7063 }
7064 }
7065 ],
7066 "source_info" : {
7067 "filename" : "include/int/int_transit.p4",
7068 "line" : 59,
7069 "column" : 8,
7070 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7071 }
7072 },
7073 {
7074 "op" : "add_header",
7075 "parameters" : [
7076 {
7077 "type" : "header",
7078 "value" : "int_hop_latency"
7079 }
7080 ],
7081 "source_info" : {
7082 "filename" : "include/int/int_transit.p4",
7083 "line" : 51,
7084 "column" : 8,
7085 "source_fragment" : "hdr.int_hop_latency.setValid()"
7086 }
7087 },
7088 {
7089 "op" : "assign",
7090 "parameters" : [
7091 {
7092 "type" : "field",
7093 "value" : ["int_hop_latency", "hop_latency"]
7094 },
7095 {
7096 "type" : "field",
7097 "value" : ["standard_metadata", "deq_timedelta"]
7098 }
7099 ],
7100 "source_info" : {
7101 "filename" : "include/int/int_transit.p4",
7102 "line" : 52,
7103 "column" : 8,
7104 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7105 }
7106 },
7107 {
7108 "op" : "add_header",
7109 "parameters" : [
7110 {
7111 "type" : "header",
7112 "value" : "int_port_ids"
7113 }
7114 ],
7115 "source_info" : {
7116 "filename" : "include/int/int_transit.p4",
7117 "line" : 45,
7118 "column" : 8,
7119 "source_fragment" : "hdr.int_port_ids.setValid()"
7120 }
7121 },
7122 {
7123 "op" : "assign",
7124 "parameters" : [
7125 {
7126 "type" : "field",
7127 "value" : ["int_port_ids", "ingress_port_id"]
7128 },
7129 {
7130 "type" : "expression",
7131 "value" : {
7132 "type" : "expression",
7133 "value" : {
7134 "op" : "&",
7135 "left" : {
7136 "type" : "field",
7137 "value" : ["standard_metadata", "ingress_port"]
7138 },
7139 "right" : {
7140 "type" : "hexstr",
7141 "value" : "0xffff"
7142 }
7143 }
7144 }
7145 }
7146 ],
7147 "source_info" : {
7148 "filename" : "include/int/int_transit.p4",
7149 "line" : 46,
7150 "column" : 8,
7151 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7152 }
7153 },
7154 {
7155 "op" : "assign",
7156 "parameters" : [
7157 {
7158 "type" : "field",
7159 "value" : ["int_port_ids", "egress_port_id"]
7160 },
7161 {
7162 "type" : "expression",
7163 "value" : {
7164 "type" : "expression",
7165 "value" : {
7166 "op" : "&",
7167 "left" : {
7168 "type" : "field",
7169 "value" : ["standard_metadata", "egress_port"]
7170 },
7171 "right" : {
7172 "type" : "hexstr",
7173 "value" : "0xffff"
7174 }
7175 }
7176 }
7177 }
7178 ],
7179 "source_info" : {
7180 "filename" : "include/int/int_transit.p4",
7181 "line" : 47,
7182 "column" : 8,
7183 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7184 }
7185 },
7186 {
7187 "op" : "add_header",
7188 "parameters" : [
7189 {
7190 "type" : "header",
7191 "value" : "int_switch_id"
7192 }
7193 ],
7194 "source_info" : {
7195 "filename" : "include/int/int_transit.p4",
7196 "line" : 40,
7197 "column" : 8,
7198 "source_fragment" : "hdr.int_switch_id.setValid()"
7199 }
7200 },
7201 {
7202 "op" : "assign",
7203 "parameters" : [
7204 {
7205 "type" : "field",
7206 "value" : ["int_switch_id", "switch_id"]
7207 },
7208 {
7209 "type" : "field",
7210 "value" : ["userMetadata.int_meta", "switch_id"]
7211 }
7212 ],
7213 "source_info" : {
7214 "filename" : "include/int/int_transit.p4",
7215 "line" : 41,
7216 "column" : 8,
7217 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7218 }
7219 },
7220 {
7221 "op" : "assign",
7222 "parameters" : [
7223 {
7224 "type" : "field",
7225 "value" : ["userMetadata.int_meta", "new_words"]
7226 },
7227 {
7228 "type" : "expression",
7229 "value" : {
7230 "type" : "expression",
7231 "value" : {
7232 "op" : "&",
7233 "left" : {
7234 "type" : "expression",
7235 "value" : {
7236 "op" : "+",
7237 "left" : {
7238 "type" : "field",
7239 "value" : ["userMetadata.int_meta", "new_words"]
7240 },
7241 "right" : {
7242 "type" : "hexstr",
7243 "value" : "0x04"
7244 }
7245 }
7246 },
7247 "right" : {
7248 "type" : "hexstr",
7249 "value" : "0xff"
7250 }
7251 }
7252 }
7253 }
7254 ],
7255 "source_info" : {
7256 "filename" : "include/int/int_transit.p4",
7257 "line" : 103,
7258 "column" : 8,
7259 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
7260 }
7261 },
7262 {
7263 "op" : "assign",
7264 "parameters" : [
7265 {
7266 "type" : "field",
7267 "value" : ["userMetadata.int_meta", "new_bytes"]
7268 },
7269 {
7270 "type" : "expression",
7271 "value" : {
7272 "type" : "expression",
7273 "value" : {
7274 "op" : "&",
7275 "left" : {
7276 "type" : "expression",
7277 "value" : {
7278 "op" : "+",
7279 "left" : {
7280 "type" : "field",
7281 "value" : ["userMetadata.int_meta", "new_bytes"]
7282 },
7283 "right" : {
7284 "type" : "hexstr",
7285 "value" : "0x0010"
7286 }
7287 }
7288 },
7289 "right" : {
7290 "type" : "hexstr",
7291 "value" : "0xffff"
7292 }
7293 }
7294 }
7295 }
7296 ],
7297 "source_info" : {
7298 "filename" : "include/int/int_transit.p4",
7299 "line" : 104,
7300 "column" : 8,
7301 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
7302 }
7303 }
7304 ]
7305 },
7306 {
7307 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
7308 "id" : 75,
7309 "runtime_data" : [],
7310 "primitives" : []
7311 },
7312 {
7313 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
7314 "id" : 76,
7315 "runtime_data" : [],
7316 "primitives" : [
7317 {
7318 "op" : "add_header",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09007319 "parameters" : [
7320 {
7321 "type" : "header",
7322 "value" : "int_egress_tx_util"
7323 }
7324 ],
7325 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007326 "filename" : "include/int/int_transit.p4",
7327 "line" : 80,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +09007328 "column" : 8,
Carmelo Cascone79a3a312018-08-16 17:14:43 -07007329 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
7330 }
7331 },
7332 {
7333 "op" : "assign",
7334 "parameters" : [
7335 {
7336 "type" : "field",
7337 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
7338 },
7339 {
7340 "type" : "hexstr",
7341 "value" : "0x00000000"
7342 }
7343 ],
7344 "source_info" : {
7345 "filename" : "include/int/int_transit.p4",
7346 "line" : 82,
7347 "column" : 8,
7348 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
7349 }
7350 },
7351 {
7352 "op" : "assign",
7353 "parameters" : [
7354 {
7355 "type" : "field",
7356 "value" : ["userMetadata.int_meta", "new_words"]
7357 },
7358 {
7359 "type" : "expression",
7360 "value" : {
7361 "type" : "expression",
7362 "value" : {
7363 "op" : "&",
7364 "left" : {
7365 "type" : "expression",
7366 "value" : {
7367 "op" : "+",
7368 "left" : {
7369 "type" : "field",
7370 "value" : ["userMetadata.int_meta", "new_words"]
7371 },
7372 "right" : {
7373 "type" : "hexstr",
7374 "value" : "0x01"
7375 }
7376 }
7377 },
7378 "right" : {
7379 "type" : "hexstr",
7380 "value" : "0xff"
7381 }
7382 }
7383 }
7384 }
7385 ],
7386 "source_info" : {
7387 "filename" : "include/int/int_transit.p4",
7388 "line" : 88,
7389 "column" : 8,
7390 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
7391 }
7392 },
7393 {
7394 "op" : "assign",
7395 "parameters" : [
7396 {
7397 "type" : "field",
7398 "value" : ["userMetadata.int_meta", "new_bytes"]
7399 },
7400 {
7401 "type" : "expression",
7402 "value" : {
7403 "type" : "expression",
7404 "value" : {
7405 "op" : "&",
7406 "left" : {
7407 "type" : "expression",
7408 "value" : {
7409 "op" : "+",
7410 "left" : {
7411 "type" : "field",
7412 "value" : ["userMetadata.int_meta", "new_bytes"]
7413 },
7414 "right" : {
7415 "type" : "hexstr",
7416 "value" : "0x0004"
7417 }
7418 }
7419 },
7420 "right" : {
7421 "type" : "hexstr",
7422 "value" : "0xffff"
7423 }
7424 }
7425 }
7426 }
7427 ],
7428 "source_info" : {
7429 "filename" : "include/int/int_transit.p4",
7430 "line" : 89,
7431 "column" : 8,
7432 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
7433 }
7434 }
7435 ]
7436 },
7437 {
7438 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
7439 "id" : 77,
7440 "runtime_data" : [],
7441 "primitives" : [
7442 {
7443 "op" : "add_header",
7444 "parameters" : [
7445 {
7446 "type" : "header",
7447 "value" : "int_q_congestion"
7448 }
7449 ],
7450 "source_info" : {
7451 "filename" : "include/int/int_transit.p4",
7452 "line" : 73,
7453 "column" : 8,
7454 "source_fragment" : "hdr.int_q_congestion.setValid()"
7455 }
7456 },
7457 {
7458 "op" : "assign",
7459 "parameters" : [
7460 {
7461 "type" : "field",
7462 "value" : ["int_q_congestion", "q_id"]
7463 },
7464 {
7465 "type" : "hexstr",
7466 "value" : "0x00"
7467 }
7468 ],
7469 "source_info" : {
7470 "filename" : "include/int/int_transit.p4",
7471 "line" : 75,
7472 "column" : 8,
7473 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
7474 }
7475 },
7476 {
7477 "op" : "assign",
7478 "parameters" : [
7479 {
7480 "type" : "field",
7481 "value" : ["int_q_congestion", "q_congestion"]
7482 },
7483 {
7484 "type" : "hexstr",
7485 "value" : "0x000000"
7486 }
7487 ],
7488 "source_info" : {
7489 "filename" : "include/int/int_transit.p4",
7490 "line" : 76,
7491 "column" : 8,
7492 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
7493 }
7494 },
7495 {
7496 "op" : "assign",
7497 "parameters" : [
7498 {
7499 "type" : "field",
7500 "value" : ["userMetadata.int_meta", "new_words"]
7501 },
7502 {
7503 "type" : "expression",
7504 "value" : {
7505 "type" : "expression",
7506 "value" : {
7507 "op" : "&",
7508 "left" : {
7509 "type" : "expression",
7510 "value" : {
7511 "op" : "+",
7512 "left" : {
7513 "type" : "field",
7514 "value" : ["userMetadata.int_meta", "new_words"]
7515 },
7516 "right" : {
7517 "type" : "hexstr",
7518 "value" : "0x01"
7519 }
7520 }
7521 },
7522 "right" : {
7523 "type" : "hexstr",
7524 "value" : "0xff"
7525 }
7526 }
7527 }
7528 }
7529 ],
7530 "source_info" : {
7531 "filename" : "include/int/int_transit.p4",
7532 "line" : 88,
7533 "column" : 8,
7534 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
7535 }
7536 },
7537 {
7538 "op" : "assign",
7539 "parameters" : [
7540 {
7541 "type" : "field",
7542 "value" : ["userMetadata.int_meta", "new_bytes"]
7543 },
7544 {
7545 "type" : "expression",
7546 "value" : {
7547 "type" : "expression",
7548 "value" : {
7549 "op" : "&",
7550 "left" : {
7551 "type" : "expression",
7552 "value" : {
7553 "op" : "+",
7554 "left" : {
7555 "type" : "field",
7556 "value" : ["userMetadata.int_meta", "new_bytes"]
7557 },
7558 "right" : {
7559 "type" : "hexstr",
7560 "value" : "0x0004"
7561 }
7562 }
7563 },
7564 "right" : {
7565 "type" : "hexstr",
7566 "value" : "0xffff"
7567 }
7568 }
7569 }
7570 }
7571 ],
7572 "source_info" : {
7573 "filename" : "include/int/int_transit.p4",
7574 "line" : 89,
7575 "column" : 8,
7576 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
7577 }
7578 }
7579 ]
7580 },
7581 {
7582 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
7583 "id" : 78,
7584 "runtime_data" : [],
7585 "primitives" : [
7586 {
7587 "op" : "add_header",
7588 "parameters" : [
7589 {
7590 "type" : "header",
7591 "value" : "int_egress_tx_util"
7592 }
7593 ],
7594 "source_info" : {
7595 "filename" : "include/int/int_transit.p4",
7596 "line" : 80,
7597 "column" : 8,
7598 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
7599 }
7600 },
7601 {
7602 "op" : "assign",
7603 "parameters" : [
7604 {
7605 "type" : "field",
7606 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
7607 },
7608 {
7609 "type" : "hexstr",
7610 "value" : "0x00000000"
7611 }
7612 ],
7613 "source_info" : {
7614 "filename" : "include/int/int_transit.p4",
7615 "line" : 82,
7616 "column" : 8,
7617 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
7618 }
7619 },
7620 {
7621 "op" : "add_header",
7622 "parameters" : [
7623 {
7624 "type" : "header",
7625 "value" : "int_q_congestion"
7626 }
7627 ],
7628 "source_info" : {
7629 "filename" : "include/int/int_transit.p4",
7630 "line" : 73,
7631 "column" : 8,
7632 "source_fragment" : "hdr.int_q_congestion.setValid()"
7633 }
7634 },
7635 {
7636 "op" : "assign",
7637 "parameters" : [
7638 {
7639 "type" : "field",
7640 "value" : ["int_q_congestion", "q_id"]
7641 },
7642 {
7643 "type" : "hexstr",
7644 "value" : "0x00"
7645 }
7646 ],
7647 "source_info" : {
7648 "filename" : "include/int/int_transit.p4",
7649 "line" : 75,
7650 "column" : 8,
7651 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
7652 }
7653 },
7654 {
7655 "op" : "assign",
7656 "parameters" : [
7657 {
7658 "type" : "field",
7659 "value" : ["int_q_congestion", "q_congestion"]
7660 },
7661 {
7662 "type" : "hexstr",
7663 "value" : "0x000000"
7664 }
7665 ],
7666 "source_info" : {
7667 "filename" : "include/int/int_transit.p4",
7668 "line" : 76,
7669 "column" : 8,
7670 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
7671 }
7672 },
7673 {
7674 "op" : "assign",
7675 "parameters" : [
7676 {
7677 "type" : "field",
7678 "value" : ["userMetadata.int_meta", "new_words"]
7679 },
7680 {
7681 "type" : "expression",
7682 "value" : {
7683 "type" : "expression",
7684 "value" : {
7685 "op" : "&",
7686 "left" : {
7687 "type" : "expression",
7688 "value" : {
7689 "op" : "+",
7690 "left" : {
7691 "type" : "field",
7692 "value" : ["userMetadata.int_meta", "new_words"]
7693 },
7694 "right" : {
7695 "type" : "hexstr",
7696 "value" : "0x02"
7697 }
7698 }
7699 },
7700 "right" : {
7701 "type" : "hexstr",
7702 "value" : "0xff"
7703 }
7704 }
7705 }
7706 }
7707 ],
7708 "source_info" : {
7709 "filename" : "include/int/int_transit.p4",
7710 "line" : 93,
7711 "column" : 8,
7712 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
7713 }
7714 },
7715 {
7716 "op" : "assign",
7717 "parameters" : [
7718 {
7719 "type" : "field",
7720 "value" : ["userMetadata.int_meta", "new_bytes"]
7721 },
7722 {
7723 "type" : "expression",
7724 "value" : {
7725 "type" : "expression",
7726 "value" : {
7727 "op" : "&",
7728 "left" : {
7729 "type" : "expression",
7730 "value" : {
7731 "op" : "+",
7732 "left" : {
7733 "type" : "field",
7734 "value" : ["userMetadata.int_meta", "new_bytes"]
7735 },
7736 "right" : {
7737 "type" : "hexstr",
7738 "value" : "0x0008"
7739 }
7740 }
7741 },
7742 "right" : {
7743 "type" : "hexstr",
7744 "value" : "0xffff"
7745 }
7746 }
7747 }
7748 }
7749 ],
7750 "source_info" : {
7751 "filename" : "include/int/int_transit.p4",
7752 "line" : 94,
7753 "column" : 8,
7754 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
7755 }
7756 }
7757 ]
7758 },
7759 {
7760 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
7761 "id" : 79,
7762 "runtime_data" : [],
7763 "primitives" : [
7764 {
7765 "op" : "add_header",
7766 "parameters" : [
7767 {
7768 "type" : "header",
7769 "value" : "int_egress_tstamp"
7770 }
7771 ],
7772 "source_info" : {
7773 "filename" : "include/int/int_transit.p4",
7774 "line" : 68,
7775 "column" : 8,
7776 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
7777 }
7778 },
7779 {
7780 "op" : "assign",
7781 "parameters" : [
7782 {
7783 "type" : "field",
7784 "value" : ["int_egress_tstamp", "egress_tstamp"]
7785 },
7786 {
7787 "type" : "expression",
7788 "value" : {
7789 "type" : "expression",
7790 "value" : {
7791 "op" : "&",
7792 "left" : {
7793 "type" : "expression",
7794 "value" : {
7795 "op" : "+",
7796 "left" : {
7797 "type" : "field",
7798 "value" : ["standard_metadata", "enq_timestamp"]
7799 },
7800 "right" : {
7801 "type" : "field",
7802 "value" : ["standard_metadata", "deq_timedelta"]
7803 }
7804 }
7805 },
7806 "right" : {
7807 "type" : "hexstr",
7808 "value" : "0xffffffff"
7809 }
7810 }
7811 }
7812 }
7813 ],
7814 "source_info" : {
7815 "filename" : "include/int/int_transit.p4",
7816 "line" : 69,
7817 "column" : 8,
7818 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
7819 }
7820 },
7821 {
7822 "op" : "assign",
7823 "parameters" : [
7824 {
7825 "type" : "field",
7826 "value" : ["userMetadata.int_meta", "new_words"]
7827 },
7828 {
7829 "type" : "expression",
7830 "value" : {
7831 "type" : "expression",
7832 "value" : {
7833 "op" : "&",
7834 "left" : {
7835 "type" : "expression",
7836 "value" : {
7837 "op" : "+",
7838 "left" : {
7839 "type" : "field",
7840 "value" : ["userMetadata.int_meta", "new_words"]
7841 },
7842 "right" : {
7843 "type" : "hexstr",
7844 "value" : "0x01"
7845 }
7846 }
7847 },
7848 "right" : {
7849 "type" : "hexstr",
7850 "value" : "0xff"
7851 }
7852 }
7853 }
7854 }
7855 ],
7856 "source_info" : {
7857 "filename" : "include/int/int_transit.p4",
7858 "line" : 88,
7859 "column" : 8,
7860 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
7861 }
7862 },
7863 {
7864 "op" : "assign",
7865 "parameters" : [
7866 {
7867 "type" : "field",
7868 "value" : ["userMetadata.int_meta", "new_bytes"]
7869 },
7870 {
7871 "type" : "expression",
7872 "value" : {
7873 "type" : "expression",
7874 "value" : {
7875 "op" : "&",
7876 "left" : {
7877 "type" : "expression",
7878 "value" : {
7879 "op" : "+",
7880 "left" : {
7881 "type" : "field",
7882 "value" : ["userMetadata.int_meta", "new_bytes"]
7883 },
7884 "right" : {
7885 "type" : "hexstr",
7886 "value" : "0x0004"
7887 }
7888 }
7889 },
7890 "right" : {
7891 "type" : "hexstr",
7892 "value" : "0xffff"
7893 }
7894 }
7895 }
7896 }
7897 ],
7898 "source_info" : {
7899 "filename" : "include/int/int_transit.p4",
7900 "line" : 89,
7901 "column" : 8,
7902 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
7903 }
7904 }
7905 ]
7906 },
7907 {
7908 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
7909 "id" : 80,
7910 "runtime_data" : [],
7911 "primitives" : [
7912 {
7913 "op" : "add_header",
7914 "parameters" : [
7915 {
7916 "type" : "header",
7917 "value" : "int_egress_tx_util"
7918 }
7919 ],
7920 "source_info" : {
7921 "filename" : "include/int/int_transit.p4",
7922 "line" : 80,
7923 "column" : 8,
7924 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
7925 }
7926 },
7927 {
7928 "op" : "assign",
7929 "parameters" : [
7930 {
7931 "type" : "field",
7932 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
7933 },
7934 {
7935 "type" : "hexstr",
7936 "value" : "0x00000000"
7937 }
7938 ],
7939 "source_info" : {
7940 "filename" : "include/int/int_transit.p4",
7941 "line" : 82,
7942 "column" : 8,
7943 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
7944 }
7945 },
7946 {
7947 "op" : "add_header",
7948 "parameters" : [
7949 {
7950 "type" : "header",
7951 "value" : "int_egress_tstamp"
7952 }
7953 ],
7954 "source_info" : {
7955 "filename" : "include/int/int_transit.p4",
7956 "line" : 68,
7957 "column" : 8,
7958 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
7959 }
7960 },
7961 {
7962 "op" : "assign",
7963 "parameters" : [
7964 {
7965 "type" : "field",
7966 "value" : ["int_egress_tstamp", "egress_tstamp"]
7967 },
7968 {
7969 "type" : "expression",
7970 "value" : {
7971 "type" : "expression",
7972 "value" : {
7973 "op" : "&",
7974 "left" : {
7975 "type" : "expression",
7976 "value" : {
7977 "op" : "+",
7978 "left" : {
7979 "type" : "field",
7980 "value" : ["standard_metadata", "enq_timestamp"]
7981 },
7982 "right" : {
7983 "type" : "field",
7984 "value" : ["standard_metadata", "deq_timedelta"]
7985 }
7986 }
7987 },
7988 "right" : {
7989 "type" : "hexstr",
7990 "value" : "0xffffffff"
7991 }
7992 }
7993 }
7994 }
7995 ],
7996 "source_info" : {
7997 "filename" : "include/int/int_transit.p4",
7998 "line" : 69,
7999 "column" : 8,
8000 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8001 }
8002 },
8003 {
8004 "op" : "assign",
8005 "parameters" : [
8006 {
8007 "type" : "field",
8008 "value" : ["userMetadata.int_meta", "new_words"]
8009 },
8010 {
8011 "type" : "expression",
8012 "value" : {
8013 "type" : "expression",
8014 "value" : {
8015 "op" : "&",
8016 "left" : {
8017 "type" : "expression",
8018 "value" : {
8019 "op" : "+",
8020 "left" : {
8021 "type" : "field",
8022 "value" : ["userMetadata.int_meta", "new_words"]
8023 },
8024 "right" : {
8025 "type" : "hexstr",
8026 "value" : "0x02"
8027 }
8028 }
8029 },
8030 "right" : {
8031 "type" : "hexstr",
8032 "value" : "0xff"
8033 }
8034 }
8035 }
8036 }
8037 ],
8038 "source_info" : {
8039 "filename" : "include/int/int_transit.p4",
8040 "line" : 93,
8041 "column" : 8,
8042 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
8043 }
8044 },
8045 {
8046 "op" : "assign",
8047 "parameters" : [
8048 {
8049 "type" : "field",
8050 "value" : ["userMetadata.int_meta", "new_bytes"]
8051 },
8052 {
8053 "type" : "expression",
8054 "value" : {
8055 "type" : "expression",
8056 "value" : {
8057 "op" : "&",
8058 "left" : {
8059 "type" : "expression",
8060 "value" : {
8061 "op" : "+",
8062 "left" : {
8063 "type" : "field",
8064 "value" : ["userMetadata.int_meta", "new_bytes"]
8065 },
8066 "right" : {
8067 "type" : "hexstr",
8068 "value" : "0x0008"
8069 }
8070 }
8071 },
8072 "right" : {
8073 "type" : "hexstr",
8074 "value" : "0xffff"
8075 }
8076 }
8077 }
8078 }
8079 ],
8080 "source_info" : {
8081 "filename" : "include/int/int_transit.p4",
8082 "line" : 94,
8083 "column" : 8,
8084 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
8085 }
8086 }
8087 ]
8088 },
8089 {
8090 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
8091 "id" : 81,
8092 "runtime_data" : [],
8093 "primitives" : [
8094 {
8095 "op" : "add_header",
8096 "parameters" : [
8097 {
8098 "type" : "header",
8099 "value" : "int_q_congestion"
8100 }
8101 ],
8102 "source_info" : {
8103 "filename" : "include/int/int_transit.p4",
8104 "line" : 73,
8105 "column" : 8,
8106 "source_fragment" : "hdr.int_q_congestion.setValid()"
8107 }
8108 },
8109 {
8110 "op" : "assign",
8111 "parameters" : [
8112 {
8113 "type" : "field",
8114 "value" : ["int_q_congestion", "q_id"]
8115 },
8116 {
8117 "type" : "hexstr",
8118 "value" : "0x00"
8119 }
8120 ],
8121 "source_info" : {
8122 "filename" : "include/int/int_transit.p4",
8123 "line" : 75,
8124 "column" : 8,
8125 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8126 }
8127 },
8128 {
8129 "op" : "assign",
8130 "parameters" : [
8131 {
8132 "type" : "field",
8133 "value" : ["int_q_congestion", "q_congestion"]
8134 },
8135 {
8136 "type" : "hexstr",
8137 "value" : "0x000000"
8138 }
8139 ],
8140 "source_info" : {
8141 "filename" : "include/int/int_transit.p4",
8142 "line" : 76,
8143 "column" : 8,
8144 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8145 }
8146 },
8147 {
8148 "op" : "add_header",
8149 "parameters" : [
8150 {
8151 "type" : "header",
8152 "value" : "int_egress_tstamp"
8153 }
8154 ],
8155 "source_info" : {
8156 "filename" : "include/int/int_transit.p4",
8157 "line" : 68,
8158 "column" : 8,
8159 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8160 }
8161 },
8162 {
8163 "op" : "assign",
8164 "parameters" : [
8165 {
8166 "type" : "field",
8167 "value" : ["int_egress_tstamp", "egress_tstamp"]
8168 },
8169 {
8170 "type" : "expression",
8171 "value" : {
8172 "type" : "expression",
8173 "value" : {
8174 "op" : "&",
8175 "left" : {
8176 "type" : "expression",
8177 "value" : {
8178 "op" : "+",
8179 "left" : {
8180 "type" : "field",
8181 "value" : ["standard_metadata", "enq_timestamp"]
8182 },
8183 "right" : {
8184 "type" : "field",
8185 "value" : ["standard_metadata", "deq_timedelta"]
8186 }
8187 }
8188 },
8189 "right" : {
8190 "type" : "hexstr",
8191 "value" : "0xffffffff"
8192 }
8193 }
8194 }
8195 }
8196 ],
8197 "source_info" : {
8198 "filename" : "include/int/int_transit.p4",
8199 "line" : 69,
8200 "column" : 8,
8201 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8202 }
8203 },
8204 {
8205 "op" : "assign",
8206 "parameters" : [
8207 {
8208 "type" : "field",
8209 "value" : ["userMetadata.int_meta", "new_words"]
8210 },
8211 {
8212 "type" : "expression",
8213 "value" : {
8214 "type" : "expression",
8215 "value" : {
8216 "op" : "&",
8217 "left" : {
8218 "type" : "expression",
8219 "value" : {
8220 "op" : "+",
8221 "left" : {
8222 "type" : "field",
8223 "value" : ["userMetadata.int_meta", "new_words"]
8224 },
8225 "right" : {
8226 "type" : "hexstr",
8227 "value" : "0x02"
8228 }
8229 }
8230 },
8231 "right" : {
8232 "type" : "hexstr",
8233 "value" : "0xff"
8234 }
8235 }
8236 }
8237 }
8238 ],
8239 "source_info" : {
8240 "filename" : "include/int/int_transit.p4",
8241 "line" : 93,
8242 "column" : 8,
8243 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
8244 }
8245 },
8246 {
8247 "op" : "assign",
8248 "parameters" : [
8249 {
8250 "type" : "field",
8251 "value" : ["userMetadata.int_meta", "new_bytes"]
8252 },
8253 {
8254 "type" : "expression",
8255 "value" : {
8256 "type" : "expression",
8257 "value" : {
8258 "op" : "&",
8259 "left" : {
8260 "type" : "expression",
8261 "value" : {
8262 "op" : "+",
8263 "left" : {
8264 "type" : "field",
8265 "value" : ["userMetadata.int_meta", "new_bytes"]
8266 },
8267 "right" : {
8268 "type" : "hexstr",
8269 "value" : "0x0008"
8270 }
8271 }
8272 },
8273 "right" : {
8274 "type" : "hexstr",
8275 "value" : "0xffff"
8276 }
8277 }
8278 }
8279 }
8280 ],
8281 "source_info" : {
8282 "filename" : "include/int/int_transit.p4",
8283 "line" : 94,
8284 "column" : 8,
8285 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
8286 }
8287 }
8288 ]
8289 },
8290 {
8291 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
8292 "id" : 82,
8293 "runtime_data" : [],
8294 "primitives" : [
8295 {
8296 "op" : "add_header",
8297 "parameters" : [
8298 {
8299 "type" : "header",
8300 "value" : "int_egress_tx_util"
8301 }
8302 ],
8303 "source_info" : {
8304 "filename" : "include/int/int_transit.p4",
8305 "line" : 80,
8306 "column" : 8,
8307 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8308 }
8309 },
8310 {
8311 "op" : "assign",
8312 "parameters" : [
8313 {
8314 "type" : "field",
8315 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8316 },
8317 {
8318 "type" : "hexstr",
8319 "value" : "0x00000000"
8320 }
8321 ],
8322 "source_info" : {
8323 "filename" : "include/int/int_transit.p4",
8324 "line" : 82,
8325 "column" : 8,
8326 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8327 }
8328 },
8329 {
8330 "op" : "add_header",
8331 "parameters" : [
8332 {
8333 "type" : "header",
8334 "value" : "int_q_congestion"
8335 }
8336 ],
8337 "source_info" : {
8338 "filename" : "include/int/int_transit.p4",
8339 "line" : 73,
8340 "column" : 8,
8341 "source_fragment" : "hdr.int_q_congestion.setValid()"
8342 }
8343 },
8344 {
8345 "op" : "assign",
8346 "parameters" : [
8347 {
8348 "type" : "field",
8349 "value" : ["int_q_congestion", "q_id"]
8350 },
8351 {
8352 "type" : "hexstr",
8353 "value" : "0x00"
8354 }
8355 ],
8356 "source_info" : {
8357 "filename" : "include/int/int_transit.p4",
8358 "line" : 75,
8359 "column" : 8,
8360 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8361 }
8362 },
8363 {
8364 "op" : "assign",
8365 "parameters" : [
8366 {
8367 "type" : "field",
8368 "value" : ["int_q_congestion", "q_congestion"]
8369 },
8370 {
8371 "type" : "hexstr",
8372 "value" : "0x000000"
8373 }
8374 ],
8375 "source_info" : {
8376 "filename" : "include/int/int_transit.p4",
8377 "line" : 76,
8378 "column" : 8,
8379 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8380 }
8381 },
8382 {
8383 "op" : "add_header",
8384 "parameters" : [
8385 {
8386 "type" : "header",
8387 "value" : "int_egress_tstamp"
8388 }
8389 ],
8390 "source_info" : {
8391 "filename" : "include/int/int_transit.p4",
8392 "line" : 68,
8393 "column" : 8,
8394 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8395 }
8396 },
8397 {
8398 "op" : "assign",
8399 "parameters" : [
8400 {
8401 "type" : "field",
8402 "value" : ["int_egress_tstamp", "egress_tstamp"]
8403 },
8404 {
8405 "type" : "expression",
8406 "value" : {
8407 "type" : "expression",
8408 "value" : {
8409 "op" : "&",
8410 "left" : {
8411 "type" : "expression",
8412 "value" : {
8413 "op" : "+",
8414 "left" : {
8415 "type" : "field",
8416 "value" : ["standard_metadata", "enq_timestamp"]
8417 },
8418 "right" : {
8419 "type" : "field",
8420 "value" : ["standard_metadata", "deq_timedelta"]
8421 }
8422 }
8423 },
8424 "right" : {
8425 "type" : "hexstr",
8426 "value" : "0xffffffff"
8427 }
8428 }
8429 }
8430 }
8431 ],
8432 "source_info" : {
8433 "filename" : "include/int/int_transit.p4",
8434 "line" : 69,
8435 "column" : 8,
8436 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8437 }
8438 },
8439 {
8440 "op" : "assign",
8441 "parameters" : [
8442 {
8443 "type" : "field",
8444 "value" : ["userMetadata.int_meta", "new_words"]
8445 },
8446 {
8447 "type" : "expression",
8448 "value" : {
8449 "type" : "expression",
8450 "value" : {
8451 "op" : "&",
8452 "left" : {
8453 "type" : "expression",
8454 "value" : {
8455 "op" : "+",
8456 "left" : {
8457 "type" : "field",
8458 "value" : ["userMetadata.int_meta", "new_words"]
8459 },
8460 "right" : {
8461 "type" : "hexstr",
8462 "value" : "0x03"
8463 }
8464 }
8465 },
8466 "right" : {
8467 "type" : "hexstr",
8468 "value" : "0xff"
8469 }
8470 }
8471 }
8472 }
8473 ],
8474 "source_info" : {
8475 "filename" : "include/int/int_transit.p4",
8476 "line" : 98,
8477 "column" : 8,
8478 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
8479 }
8480 },
8481 {
8482 "op" : "assign",
8483 "parameters" : [
8484 {
8485 "type" : "field",
8486 "value" : ["userMetadata.int_meta", "new_bytes"]
8487 },
8488 {
8489 "type" : "expression",
8490 "value" : {
8491 "type" : "expression",
8492 "value" : {
8493 "op" : "&",
8494 "left" : {
8495 "type" : "expression",
8496 "value" : {
8497 "op" : "+",
8498 "left" : {
8499 "type" : "field",
8500 "value" : ["userMetadata.int_meta", "new_bytes"]
8501 },
8502 "right" : {
8503 "type" : "hexstr",
8504 "value" : "0x000c"
8505 }
8506 }
8507 },
8508 "right" : {
8509 "type" : "hexstr",
8510 "value" : "0xffff"
8511 }
8512 }
8513 }
8514 }
8515 ],
8516 "source_info" : {
8517 "filename" : "include/int/int_transit.p4",
8518 "line" : 99,
8519 "column" : 8,
8520 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
8521 }
8522 }
8523 ]
8524 },
8525 {
8526 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
8527 "id" : 83,
8528 "runtime_data" : [],
8529 "primitives" : [
8530 {
8531 "op" : "add_header",
8532 "parameters" : [
8533 {
8534 "type" : "header",
8535 "value" : "int_ingress_tstamp"
8536 }
8537 ],
8538 "source_info" : {
8539 "filename" : "include/int/int_transit.p4",
8540 "line" : 63,
8541 "column" : 8,
8542 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
8543 }
8544 },
8545 {
8546 "op" : "assign",
8547 "parameters" : [
8548 {
8549 "type" : "field",
8550 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
8551 },
8552 {
8553 "type" : "field",
8554 "value" : ["standard_metadata", "enq_timestamp"]
8555 }
8556 ],
8557 "source_info" : {
8558 "filename" : "include/int/int_transit.p4",
8559 "line" : 64,
8560 "column" : 8,
8561 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
8562 }
8563 },
8564 {
8565 "op" : "assign",
8566 "parameters" : [
8567 {
8568 "type" : "field",
8569 "value" : ["userMetadata.int_meta", "new_words"]
8570 },
8571 {
8572 "type" : "expression",
8573 "value" : {
8574 "type" : "expression",
8575 "value" : {
8576 "op" : "&",
8577 "left" : {
8578 "type" : "expression",
8579 "value" : {
8580 "op" : "+",
8581 "left" : {
8582 "type" : "field",
8583 "value" : ["userMetadata.int_meta", "new_words"]
8584 },
8585 "right" : {
8586 "type" : "hexstr",
8587 "value" : "0x01"
8588 }
8589 }
8590 },
8591 "right" : {
8592 "type" : "hexstr",
8593 "value" : "0xff"
8594 }
8595 }
8596 }
8597 }
8598 ],
8599 "source_info" : {
8600 "filename" : "include/int/int_transit.p4",
8601 "line" : 88,
8602 "column" : 8,
8603 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
8604 }
8605 },
8606 {
8607 "op" : "assign",
8608 "parameters" : [
8609 {
8610 "type" : "field",
8611 "value" : ["userMetadata.int_meta", "new_bytes"]
8612 },
8613 {
8614 "type" : "expression",
8615 "value" : {
8616 "type" : "expression",
8617 "value" : {
8618 "op" : "&",
8619 "left" : {
8620 "type" : "expression",
8621 "value" : {
8622 "op" : "+",
8623 "left" : {
8624 "type" : "field",
8625 "value" : ["userMetadata.int_meta", "new_bytes"]
8626 },
8627 "right" : {
8628 "type" : "hexstr",
8629 "value" : "0x0004"
8630 }
8631 }
8632 },
8633 "right" : {
8634 "type" : "hexstr",
8635 "value" : "0xffff"
8636 }
8637 }
8638 }
8639 }
8640 ],
8641 "source_info" : {
8642 "filename" : "include/int/int_transit.p4",
8643 "line" : 89,
8644 "column" : 8,
8645 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
8646 }
8647 }
8648 ]
8649 },
8650 {
8651 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
8652 "id" : 84,
8653 "runtime_data" : [],
8654 "primitives" : [
8655 {
8656 "op" : "add_header",
8657 "parameters" : [
8658 {
8659 "type" : "header",
8660 "value" : "int_egress_tx_util"
8661 }
8662 ],
8663 "source_info" : {
8664 "filename" : "include/int/int_transit.p4",
8665 "line" : 80,
8666 "column" : 8,
8667 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8668 }
8669 },
8670 {
8671 "op" : "assign",
8672 "parameters" : [
8673 {
8674 "type" : "field",
8675 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8676 },
8677 {
8678 "type" : "hexstr",
8679 "value" : "0x00000000"
8680 }
8681 ],
8682 "source_info" : {
8683 "filename" : "include/int/int_transit.p4",
8684 "line" : 82,
8685 "column" : 8,
8686 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8687 }
8688 },
8689 {
8690 "op" : "add_header",
8691 "parameters" : [
8692 {
8693 "type" : "header",
8694 "value" : "int_ingress_tstamp"
8695 }
8696 ],
8697 "source_info" : {
8698 "filename" : "include/int/int_transit.p4",
8699 "line" : 63,
8700 "column" : 8,
8701 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
8702 }
8703 },
8704 {
8705 "op" : "assign",
8706 "parameters" : [
8707 {
8708 "type" : "field",
8709 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
8710 },
8711 {
8712 "type" : "field",
8713 "value" : ["standard_metadata", "enq_timestamp"]
8714 }
8715 ],
8716 "source_info" : {
8717 "filename" : "include/int/int_transit.p4",
8718 "line" : 64,
8719 "column" : 8,
8720 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
8721 }
8722 },
8723 {
8724 "op" : "assign",
8725 "parameters" : [
8726 {
8727 "type" : "field",
8728 "value" : ["userMetadata.int_meta", "new_words"]
8729 },
8730 {
8731 "type" : "expression",
8732 "value" : {
8733 "type" : "expression",
8734 "value" : {
8735 "op" : "&",
8736 "left" : {
8737 "type" : "expression",
8738 "value" : {
8739 "op" : "+",
8740 "left" : {
8741 "type" : "field",
8742 "value" : ["userMetadata.int_meta", "new_words"]
8743 },
8744 "right" : {
8745 "type" : "hexstr",
8746 "value" : "0x02"
8747 }
8748 }
8749 },
8750 "right" : {
8751 "type" : "hexstr",
8752 "value" : "0xff"
8753 }
8754 }
8755 }
8756 }
8757 ],
8758 "source_info" : {
8759 "filename" : "include/int/int_transit.p4",
8760 "line" : 93,
8761 "column" : 8,
8762 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
8763 }
8764 },
8765 {
8766 "op" : "assign",
8767 "parameters" : [
8768 {
8769 "type" : "field",
8770 "value" : ["userMetadata.int_meta", "new_bytes"]
8771 },
8772 {
8773 "type" : "expression",
8774 "value" : {
8775 "type" : "expression",
8776 "value" : {
8777 "op" : "&",
8778 "left" : {
8779 "type" : "expression",
8780 "value" : {
8781 "op" : "+",
8782 "left" : {
8783 "type" : "field",
8784 "value" : ["userMetadata.int_meta", "new_bytes"]
8785 },
8786 "right" : {
8787 "type" : "hexstr",
8788 "value" : "0x0008"
8789 }
8790 }
8791 },
8792 "right" : {
8793 "type" : "hexstr",
8794 "value" : "0xffff"
8795 }
8796 }
8797 }
8798 }
8799 ],
8800 "source_info" : {
8801 "filename" : "include/int/int_transit.p4",
8802 "line" : 94,
8803 "column" : 8,
8804 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
8805 }
8806 }
8807 ]
8808 },
8809 {
8810 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
8811 "id" : 85,
8812 "runtime_data" : [],
8813 "primitives" : [
8814 {
8815 "op" : "add_header",
8816 "parameters" : [
8817 {
8818 "type" : "header",
8819 "value" : "int_q_congestion"
8820 }
8821 ],
8822 "source_info" : {
8823 "filename" : "include/int/int_transit.p4",
8824 "line" : 73,
8825 "column" : 8,
8826 "source_fragment" : "hdr.int_q_congestion.setValid()"
8827 }
8828 },
8829 {
8830 "op" : "assign",
8831 "parameters" : [
8832 {
8833 "type" : "field",
8834 "value" : ["int_q_congestion", "q_id"]
8835 },
8836 {
8837 "type" : "hexstr",
8838 "value" : "0x00"
8839 }
8840 ],
8841 "source_info" : {
8842 "filename" : "include/int/int_transit.p4",
8843 "line" : 75,
8844 "column" : 8,
8845 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8846 }
8847 },
8848 {
8849 "op" : "assign",
8850 "parameters" : [
8851 {
8852 "type" : "field",
8853 "value" : ["int_q_congestion", "q_congestion"]
8854 },
8855 {
8856 "type" : "hexstr",
8857 "value" : "0x000000"
8858 }
8859 ],
8860 "source_info" : {
8861 "filename" : "include/int/int_transit.p4",
8862 "line" : 76,
8863 "column" : 8,
8864 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8865 }
8866 },
8867 {
8868 "op" : "add_header",
8869 "parameters" : [
8870 {
8871 "type" : "header",
8872 "value" : "int_ingress_tstamp"
8873 }
8874 ],
8875 "source_info" : {
8876 "filename" : "include/int/int_transit.p4",
8877 "line" : 63,
8878 "column" : 8,
8879 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
8880 }
8881 },
8882 {
8883 "op" : "assign",
8884 "parameters" : [
8885 {
8886 "type" : "field",
8887 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
8888 },
8889 {
8890 "type" : "field",
8891 "value" : ["standard_metadata", "enq_timestamp"]
8892 }
8893 ],
8894 "source_info" : {
8895 "filename" : "include/int/int_transit.p4",
8896 "line" : 64,
8897 "column" : 8,
8898 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
8899 }
8900 },
8901 {
8902 "op" : "assign",
8903 "parameters" : [
8904 {
8905 "type" : "field",
8906 "value" : ["userMetadata.int_meta", "new_words"]
8907 },
8908 {
8909 "type" : "expression",
8910 "value" : {
8911 "type" : "expression",
8912 "value" : {
8913 "op" : "&",
8914 "left" : {
8915 "type" : "expression",
8916 "value" : {
8917 "op" : "+",
8918 "left" : {
8919 "type" : "field",
8920 "value" : ["userMetadata.int_meta", "new_words"]
8921 },
8922 "right" : {
8923 "type" : "hexstr",
8924 "value" : "0x02"
8925 }
8926 }
8927 },
8928 "right" : {
8929 "type" : "hexstr",
8930 "value" : "0xff"
8931 }
8932 }
8933 }
8934 }
8935 ],
8936 "source_info" : {
8937 "filename" : "include/int/int_transit.p4",
8938 "line" : 93,
8939 "column" : 8,
8940 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
8941 }
8942 },
8943 {
8944 "op" : "assign",
8945 "parameters" : [
8946 {
8947 "type" : "field",
8948 "value" : ["userMetadata.int_meta", "new_bytes"]
8949 },
8950 {
8951 "type" : "expression",
8952 "value" : {
8953 "type" : "expression",
8954 "value" : {
8955 "op" : "&",
8956 "left" : {
8957 "type" : "expression",
8958 "value" : {
8959 "op" : "+",
8960 "left" : {
8961 "type" : "field",
8962 "value" : ["userMetadata.int_meta", "new_bytes"]
8963 },
8964 "right" : {
8965 "type" : "hexstr",
8966 "value" : "0x0008"
8967 }
8968 }
8969 },
8970 "right" : {
8971 "type" : "hexstr",
8972 "value" : "0xffff"
8973 }
8974 }
8975 }
8976 }
8977 ],
8978 "source_info" : {
8979 "filename" : "include/int/int_transit.p4",
8980 "line" : 94,
8981 "column" : 8,
8982 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
8983 }
8984 }
8985 ]
8986 },
8987 {
8988 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
8989 "id" : 86,
8990 "runtime_data" : [],
8991 "primitives" : [
8992 {
8993 "op" : "add_header",
8994 "parameters" : [
8995 {
8996 "type" : "header",
8997 "value" : "int_egress_tx_util"
8998 }
8999 ],
9000 "source_info" : {
9001 "filename" : "include/int/int_transit.p4",
9002 "line" : 80,
9003 "column" : 8,
9004 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9005 }
9006 },
9007 {
9008 "op" : "assign",
9009 "parameters" : [
9010 {
9011 "type" : "field",
9012 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9013 },
9014 {
9015 "type" : "hexstr",
9016 "value" : "0x00000000"
9017 }
9018 ],
9019 "source_info" : {
9020 "filename" : "include/int/int_transit.p4",
9021 "line" : 82,
9022 "column" : 8,
9023 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9024 }
9025 },
9026 {
9027 "op" : "add_header",
9028 "parameters" : [
9029 {
9030 "type" : "header",
9031 "value" : "int_q_congestion"
9032 }
9033 ],
9034 "source_info" : {
9035 "filename" : "include/int/int_transit.p4",
9036 "line" : 73,
9037 "column" : 8,
9038 "source_fragment" : "hdr.int_q_congestion.setValid()"
9039 }
9040 },
9041 {
9042 "op" : "assign",
9043 "parameters" : [
9044 {
9045 "type" : "field",
9046 "value" : ["int_q_congestion", "q_id"]
9047 },
9048 {
9049 "type" : "hexstr",
9050 "value" : "0x00"
9051 }
9052 ],
9053 "source_info" : {
9054 "filename" : "include/int/int_transit.p4",
9055 "line" : 75,
9056 "column" : 8,
9057 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9058 }
9059 },
9060 {
9061 "op" : "assign",
9062 "parameters" : [
9063 {
9064 "type" : "field",
9065 "value" : ["int_q_congestion", "q_congestion"]
9066 },
9067 {
9068 "type" : "hexstr",
9069 "value" : "0x000000"
9070 }
9071 ],
9072 "source_info" : {
9073 "filename" : "include/int/int_transit.p4",
9074 "line" : 76,
9075 "column" : 8,
9076 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9077 }
9078 },
9079 {
9080 "op" : "add_header",
9081 "parameters" : [
9082 {
9083 "type" : "header",
9084 "value" : "int_ingress_tstamp"
9085 }
9086 ],
9087 "source_info" : {
9088 "filename" : "include/int/int_transit.p4",
9089 "line" : 63,
9090 "column" : 8,
9091 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9092 }
9093 },
9094 {
9095 "op" : "assign",
9096 "parameters" : [
9097 {
9098 "type" : "field",
9099 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9100 },
9101 {
9102 "type" : "field",
9103 "value" : ["standard_metadata", "enq_timestamp"]
9104 }
9105 ],
9106 "source_info" : {
9107 "filename" : "include/int/int_transit.p4",
9108 "line" : 64,
9109 "column" : 8,
9110 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9111 }
9112 },
9113 {
9114 "op" : "assign",
9115 "parameters" : [
9116 {
9117 "type" : "field",
9118 "value" : ["userMetadata.int_meta", "new_words"]
9119 },
9120 {
9121 "type" : "expression",
9122 "value" : {
9123 "type" : "expression",
9124 "value" : {
9125 "op" : "&",
9126 "left" : {
9127 "type" : "expression",
9128 "value" : {
9129 "op" : "+",
9130 "left" : {
9131 "type" : "field",
9132 "value" : ["userMetadata.int_meta", "new_words"]
9133 },
9134 "right" : {
9135 "type" : "hexstr",
9136 "value" : "0x03"
9137 }
9138 }
9139 },
9140 "right" : {
9141 "type" : "hexstr",
9142 "value" : "0xff"
9143 }
9144 }
9145 }
9146 }
9147 ],
9148 "source_info" : {
9149 "filename" : "include/int/int_transit.p4",
9150 "line" : 98,
9151 "column" : 8,
9152 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
9153 }
9154 },
9155 {
9156 "op" : "assign",
9157 "parameters" : [
9158 {
9159 "type" : "field",
9160 "value" : ["userMetadata.int_meta", "new_bytes"]
9161 },
9162 {
9163 "type" : "expression",
9164 "value" : {
9165 "type" : "expression",
9166 "value" : {
9167 "op" : "&",
9168 "left" : {
9169 "type" : "expression",
9170 "value" : {
9171 "op" : "+",
9172 "left" : {
9173 "type" : "field",
9174 "value" : ["userMetadata.int_meta", "new_bytes"]
9175 },
9176 "right" : {
9177 "type" : "hexstr",
9178 "value" : "0x000c"
9179 }
9180 }
9181 },
9182 "right" : {
9183 "type" : "hexstr",
9184 "value" : "0xffff"
9185 }
9186 }
9187 }
9188 }
9189 ],
9190 "source_info" : {
9191 "filename" : "include/int/int_transit.p4",
9192 "line" : 99,
9193 "column" : 8,
9194 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
9195 }
9196 }
9197 ]
9198 },
9199 {
9200 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
9201 "id" : 87,
9202 "runtime_data" : [],
9203 "primitives" : [
9204 {
9205 "op" : "add_header",
9206 "parameters" : [
9207 {
9208 "type" : "header",
9209 "value" : "int_egress_tstamp"
9210 }
9211 ],
9212 "source_info" : {
9213 "filename" : "include/int/int_transit.p4",
9214 "line" : 68,
9215 "column" : 8,
9216 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9217 }
9218 },
9219 {
9220 "op" : "assign",
9221 "parameters" : [
9222 {
9223 "type" : "field",
9224 "value" : ["int_egress_tstamp", "egress_tstamp"]
9225 },
9226 {
9227 "type" : "expression",
9228 "value" : {
9229 "type" : "expression",
9230 "value" : {
9231 "op" : "&",
9232 "left" : {
9233 "type" : "expression",
9234 "value" : {
9235 "op" : "+",
9236 "left" : {
9237 "type" : "field",
9238 "value" : ["standard_metadata", "enq_timestamp"]
9239 },
9240 "right" : {
9241 "type" : "field",
9242 "value" : ["standard_metadata", "deq_timedelta"]
9243 }
9244 }
9245 },
9246 "right" : {
9247 "type" : "hexstr",
9248 "value" : "0xffffffff"
9249 }
9250 }
9251 }
9252 }
9253 ],
9254 "source_info" : {
9255 "filename" : "include/int/int_transit.p4",
9256 "line" : 69,
9257 "column" : 8,
9258 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9259 }
9260 },
9261 {
9262 "op" : "add_header",
9263 "parameters" : [
9264 {
9265 "type" : "header",
9266 "value" : "int_ingress_tstamp"
9267 }
9268 ],
9269 "source_info" : {
9270 "filename" : "include/int/int_transit.p4",
9271 "line" : 63,
9272 "column" : 8,
9273 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9274 }
9275 },
9276 {
9277 "op" : "assign",
9278 "parameters" : [
9279 {
9280 "type" : "field",
9281 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9282 },
9283 {
9284 "type" : "field",
9285 "value" : ["standard_metadata", "enq_timestamp"]
9286 }
9287 ],
9288 "source_info" : {
9289 "filename" : "include/int/int_transit.p4",
9290 "line" : 64,
9291 "column" : 8,
9292 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9293 }
9294 },
9295 {
9296 "op" : "assign",
9297 "parameters" : [
9298 {
9299 "type" : "field",
9300 "value" : ["userMetadata.int_meta", "new_words"]
9301 },
9302 {
9303 "type" : "expression",
9304 "value" : {
9305 "type" : "expression",
9306 "value" : {
9307 "op" : "&",
9308 "left" : {
9309 "type" : "expression",
9310 "value" : {
9311 "op" : "+",
9312 "left" : {
9313 "type" : "field",
9314 "value" : ["userMetadata.int_meta", "new_words"]
9315 },
9316 "right" : {
9317 "type" : "hexstr",
9318 "value" : "0x02"
9319 }
9320 }
9321 },
9322 "right" : {
9323 "type" : "hexstr",
9324 "value" : "0xff"
9325 }
9326 }
9327 }
9328 }
9329 ],
9330 "source_info" : {
9331 "filename" : "include/int/int_transit.p4",
9332 "line" : 93,
9333 "column" : 8,
9334 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9335 }
9336 },
9337 {
9338 "op" : "assign",
9339 "parameters" : [
9340 {
9341 "type" : "field",
9342 "value" : ["userMetadata.int_meta", "new_bytes"]
9343 },
9344 {
9345 "type" : "expression",
9346 "value" : {
9347 "type" : "expression",
9348 "value" : {
9349 "op" : "&",
9350 "left" : {
9351 "type" : "expression",
9352 "value" : {
9353 "op" : "+",
9354 "left" : {
9355 "type" : "field",
9356 "value" : ["userMetadata.int_meta", "new_bytes"]
9357 },
9358 "right" : {
9359 "type" : "hexstr",
9360 "value" : "0x0008"
9361 }
9362 }
9363 },
9364 "right" : {
9365 "type" : "hexstr",
9366 "value" : "0xffff"
9367 }
9368 }
9369 }
9370 }
9371 ],
9372 "source_info" : {
9373 "filename" : "include/int/int_transit.p4",
9374 "line" : 94,
9375 "column" : 8,
9376 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9377 }
9378 }
9379 ]
9380 },
9381 {
9382 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
9383 "id" : 88,
9384 "runtime_data" : [],
9385 "primitives" : [
9386 {
9387 "op" : "add_header",
9388 "parameters" : [
9389 {
9390 "type" : "header",
9391 "value" : "int_egress_tx_util"
9392 }
9393 ],
9394 "source_info" : {
9395 "filename" : "include/int/int_transit.p4",
9396 "line" : 80,
9397 "column" : 8,
9398 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9399 }
9400 },
9401 {
9402 "op" : "assign",
9403 "parameters" : [
9404 {
9405 "type" : "field",
9406 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9407 },
9408 {
9409 "type" : "hexstr",
9410 "value" : "0x00000000"
9411 }
9412 ],
9413 "source_info" : {
9414 "filename" : "include/int/int_transit.p4",
9415 "line" : 82,
9416 "column" : 8,
9417 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9418 }
9419 },
9420 {
9421 "op" : "add_header",
9422 "parameters" : [
9423 {
9424 "type" : "header",
9425 "value" : "int_egress_tstamp"
9426 }
9427 ],
9428 "source_info" : {
9429 "filename" : "include/int/int_transit.p4",
9430 "line" : 68,
9431 "column" : 8,
9432 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9433 }
9434 },
9435 {
9436 "op" : "assign",
9437 "parameters" : [
9438 {
9439 "type" : "field",
9440 "value" : ["int_egress_tstamp", "egress_tstamp"]
9441 },
9442 {
9443 "type" : "expression",
9444 "value" : {
9445 "type" : "expression",
9446 "value" : {
9447 "op" : "&",
9448 "left" : {
9449 "type" : "expression",
9450 "value" : {
9451 "op" : "+",
9452 "left" : {
9453 "type" : "field",
9454 "value" : ["standard_metadata", "enq_timestamp"]
9455 },
9456 "right" : {
9457 "type" : "field",
9458 "value" : ["standard_metadata", "deq_timedelta"]
9459 }
9460 }
9461 },
9462 "right" : {
9463 "type" : "hexstr",
9464 "value" : "0xffffffff"
9465 }
9466 }
9467 }
9468 }
9469 ],
9470 "source_info" : {
9471 "filename" : "include/int/int_transit.p4",
9472 "line" : 69,
9473 "column" : 8,
9474 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9475 }
9476 },
9477 {
9478 "op" : "add_header",
9479 "parameters" : [
9480 {
9481 "type" : "header",
9482 "value" : "int_ingress_tstamp"
9483 }
9484 ],
9485 "source_info" : {
9486 "filename" : "include/int/int_transit.p4",
9487 "line" : 63,
9488 "column" : 8,
9489 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9490 }
9491 },
9492 {
9493 "op" : "assign",
9494 "parameters" : [
9495 {
9496 "type" : "field",
9497 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9498 },
9499 {
9500 "type" : "field",
9501 "value" : ["standard_metadata", "enq_timestamp"]
9502 }
9503 ],
9504 "source_info" : {
9505 "filename" : "include/int/int_transit.p4",
9506 "line" : 64,
9507 "column" : 8,
9508 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9509 }
9510 },
9511 {
9512 "op" : "assign",
9513 "parameters" : [
9514 {
9515 "type" : "field",
9516 "value" : ["userMetadata.int_meta", "new_words"]
9517 },
9518 {
9519 "type" : "expression",
9520 "value" : {
9521 "type" : "expression",
9522 "value" : {
9523 "op" : "&",
9524 "left" : {
9525 "type" : "expression",
9526 "value" : {
9527 "op" : "+",
9528 "left" : {
9529 "type" : "field",
9530 "value" : ["userMetadata.int_meta", "new_words"]
9531 },
9532 "right" : {
9533 "type" : "hexstr",
9534 "value" : "0x03"
9535 }
9536 }
9537 },
9538 "right" : {
9539 "type" : "hexstr",
9540 "value" : "0xff"
9541 }
9542 }
9543 }
9544 }
9545 ],
9546 "source_info" : {
9547 "filename" : "include/int/int_transit.p4",
9548 "line" : 98,
9549 "column" : 8,
9550 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
9551 }
9552 },
9553 {
9554 "op" : "assign",
9555 "parameters" : [
9556 {
9557 "type" : "field",
9558 "value" : ["userMetadata.int_meta", "new_bytes"]
9559 },
9560 {
9561 "type" : "expression",
9562 "value" : {
9563 "type" : "expression",
9564 "value" : {
9565 "op" : "&",
9566 "left" : {
9567 "type" : "expression",
9568 "value" : {
9569 "op" : "+",
9570 "left" : {
9571 "type" : "field",
9572 "value" : ["userMetadata.int_meta", "new_bytes"]
9573 },
9574 "right" : {
9575 "type" : "hexstr",
9576 "value" : "0x000c"
9577 }
9578 }
9579 },
9580 "right" : {
9581 "type" : "hexstr",
9582 "value" : "0xffff"
9583 }
9584 }
9585 }
9586 }
9587 ],
9588 "source_info" : {
9589 "filename" : "include/int/int_transit.p4",
9590 "line" : 99,
9591 "column" : 8,
9592 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
9593 }
9594 }
9595 ]
9596 },
9597 {
9598 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
9599 "id" : 89,
9600 "runtime_data" : [],
9601 "primitives" : [
9602 {
9603 "op" : "add_header",
9604 "parameters" : [
9605 {
9606 "type" : "header",
9607 "value" : "int_q_congestion"
9608 }
9609 ],
9610 "source_info" : {
9611 "filename" : "include/int/int_transit.p4",
9612 "line" : 73,
9613 "column" : 8,
9614 "source_fragment" : "hdr.int_q_congestion.setValid()"
9615 }
9616 },
9617 {
9618 "op" : "assign",
9619 "parameters" : [
9620 {
9621 "type" : "field",
9622 "value" : ["int_q_congestion", "q_id"]
9623 },
9624 {
9625 "type" : "hexstr",
9626 "value" : "0x00"
9627 }
9628 ],
9629 "source_info" : {
9630 "filename" : "include/int/int_transit.p4",
9631 "line" : 75,
9632 "column" : 8,
9633 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9634 }
9635 },
9636 {
9637 "op" : "assign",
9638 "parameters" : [
9639 {
9640 "type" : "field",
9641 "value" : ["int_q_congestion", "q_congestion"]
9642 },
9643 {
9644 "type" : "hexstr",
9645 "value" : "0x000000"
9646 }
9647 ],
9648 "source_info" : {
9649 "filename" : "include/int/int_transit.p4",
9650 "line" : 76,
9651 "column" : 8,
9652 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9653 }
9654 },
9655 {
9656 "op" : "add_header",
9657 "parameters" : [
9658 {
9659 "type" : "header",
9660 "value" : "int_egress_tstamp"
9661 }
9662 ],
9663 "source_info" : {
9664 "filename" : "include/int/int_transit.p4",
9665 "line" : 68,
9666 "column" : 8,
9667 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9668 }
9669 },
9670 {
9671 "op" : "assign",
9672 "parameters" : [
9673 {
9674 "type" : "field",
9675 "value" : ["int_egress_tstamp", "egress_tstamp"]
9676 },
9677 {
9678 "type" : "expression",
9679 "value" : {
9680 "type" : "expression",
9681 "value" : {
9682 "op" : "&",
9683 "left" : {
9684 "type" : "expression",
9685 "value" : {
9686 "op" : "+",
9687 "left" : {
9688 "type" : "field",
9689 "value" : ["standard_metadata", "enq_timestamp"]
9690 },
9691 "right" : {
9692 "type" : "field",
9693 "value" : ["standard_metadata", "deq_timedelta"]
9694 }
9695 }
9696 },
9697 "right" : {
9698 "type" : "hexstr",
9699 "value" : "0xffffffff"
9700 }
9701 }
9702 }
9703 }
9704 ],
9705 "source_info" : {
9706 "filename" : "include/int/int_transit.p4",
9707 "line" : 69,
9708 "column" : 8,
9709 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9710 }
9711 },
9712 {
9713 "op" : "add_header",
9714 "parameters" : [
9715 {
9716 "type" : "header",
9717 "value" : "int_ingress_tstamp"
9718 }
9719 ],
9720 "source_info" : {
9721 "filename" : "include/int/int_transit.p4",
9722 "line" : 63,
9723 "column" : 8,
9724 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9725 }
9726 },
9727 {
9728 "op" : "assign",
9729 "parameters" : [
9730 {
9731 "type" : "field",
9732 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9733 },
9734 {
9735 "type" : "field",
9736 "value" : ["standard_metadata", "enq_timestamp"]
9737 }
9738 ],
9739 "source_info" : {
9740 "filename" : "include/int/int_transit.p4",
9741 "line" : 64,
9742 "column" : 8,
9743 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9744 }
9745 },
9746 {
9747 "op" : "assign",
9748 "parameters" : [
9749 {
9750 "type" : "field",
9751 "value" : ["userMetadata.int_meta", "new_words"]
9752 },
9753 {
9754 "type" : "expression",
9755 "value" : {
9756 "type" : "expression",
9757 "value" : {
9758 "op" : "&",
9759 "left" : {
9760 "type" : "expression",
9761 "value" : {
9762 "op" : "+",
9763 "left" : {
9764 "type" : "field",
9765 "value" : ["userMetadata.int_meta", "new_words"]
9766 },
9767 "right" : {
9768 "type" : "hexstr",
9769 "value" : "0x03"
9770 }
9771 }
9772 },
9773 "right" : {
9774 "type" : "hexstr",
9775 "value" : "0xff"
9776 }
9777 }
9778 }
9779 }
9780 ],
9781 "source_info" : {
9782 "filename" : "include/int/int_transit.p4",
9783 "line" : 98,
9784 "column" : 8,
9785 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
9786 }
9787 },
9788 {
9789 "op" : "assign",
9790 "parameters" : [
9791 {
9792 "type" : "field",
9793 "value" : ["userMetadata.int_meta", "new_bytes"]
9794 },
9795 {
9796 "type" : "expression",
9797 "value" : {
9798 "type" : "expression",
9799 "value" : {
9800 "op" : "&",
9801 "left" : {
9802 "type" : "expression",
9803 "value" : {
9804 "op" : "+",
9805 "left" : {
9806 "type" : "field",
9807 "value" : ["userMetadata.int_meta", "new_bytes"]
9808 },
9809 "right" : {
9810 "type" : "hexstr",
9811 "value" : "0x000c"
9812 }
9813 }
9814 },
9815 "right" : {
9816 "type" : "hexstr",
9817 "value" : "0xffff"
9818 }
9819 }
9820 }
9821 }
9822 ],
9823 "source_info" : {
9824 "filename" : "include/int/int_transit.p4",
9825 "line" : 99,
9826 "column" : 8,
9827 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
9828 }
9829 }
9830 ]
9831 },
9832 {
9833 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
9834 "id" : 90,
9835 "runtime_data" : [],
9836 "primitives" : [
9837 {
9838 "op" : "add_header",
9839 "parameters" : [
9840 {
9841 "type" : "header",
9842 "value" : "int_egress_tx_util"
9843 }
9844 ],
9845 "source_info" : {
9846 "filename" : "include/int/int_transit.p4",
9847 "line" : 80,
9848 "column" : 8,
9849 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9850 }
9851 },
9852 {
9853 "op" : "assign",
9854 "parameters" : [
9855 {
9856 "type" : "field",
9857 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9858 },
9859 {
9860 "type" : "hexstr",
9861 "value" : "0x00000000"
9862 }
9863 ],
9864 "source_info" : {
9865 "filename" : "include/int/int_transit.p4",
9866 "line" : 82,
9867 "column" : 8,
9868 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9869 }
9870 },
9871 {
9872 "op" : "add_header",
9873 "parameters" : [
9874 {
9875 "type" : "header",
9876 "value" : "int_q_congestion"
9877 }
9878 ],
9879 "source_info" : {
9880 "filename" : "include/int/int_transit.p4",
9881 "line" : 73,
9882 "column" : 8,
9883 "source_fragment" : "hdr.int_q_congestion.setValid()"
9884 }
9885 },
9886 {
9887 "op" : "assign",
9888 "parameters" : [
9889 {
9890 "type" : "field",
9891 "value" : ["int_q_congestion", "q_id"]
9892 },
9893 {
9894 "type" : "hexstr",
9895 "value" : "0x00"
9896 }
9897 ],
9898 "source_info" : {
9899 "filename" : "include/int/int_transit.p4",
9900 "line" : 75,
9901 "column" : 8,
9902 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9903 }
9904 },
9905 {
9906 "op" : "assign",
9907 "parameters" : [
9908 {
9909 "type" : "field",
9910 "value" : ["int_q_congestion", "q_congestion"]
9911 },
9912 {
9913 "type" : "hexstr",
9914 "value" : "0x000000"
9915 }
9916 ],
9917 "source_info" : {
9918 "filename" : "include/int/int_transit.p4",
9919 "line" : 76,
9920 "column" : 8,
9921 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9922 }
9923 },
9924 {
9925 "op" : "add_header",
9926 "parameters" : [
9927 {
9928 "type" : "header",
9929 "value" : "int_egress_tstamp"
9930 }
9931 ],
9932 "source_info" : {
9933 "filename" : "include/int/int_transit.p4",
9934 "line" : 68,
9935 "column" : 8,
9936 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9937 }
9938 },
9939 {
9940 "op" : "assign",
9941 "parameters" : [
9942 {
9943 "type" : "field",
9944 "value" : ["int_egress_tstamp", "egress_tstamp"]
9945 },
9946 {
9947 "type" : "expression",
9948 "value" : {
9949 "type" : "expression",
9950 "value" : {
9951 "op" : "&",
9952 "left" : {
9953 "type" : "expression",
9954 "value" : {
9955 "op" : "+",
9956 "left" : {
9957 "type" : "field",
9958 "value" : ["standard_metadata", "enq_timestamp"]
9959 },
9960 "right" : {
9961 "type" : "field",
9962 "value" : ["standard_metadata", "deq_timedelta"]
9963 }
9964 }
9965 },
9966 "right" : {
9967 "type" : "hexstr",
9968 "value" : "0xffffffff"
9969 }
9970 }
9971 }
9972 }
9973 ],
9974 "source_info" : {
9975 "filename" : "include/int/int_transit.p4",
9976 "line" : 69,
9977 "column" : 8,
9978 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9979 }
9980 },
9981 {
9982 "op" : "add_header",
9983 "parameters" : [
9984 {
9985 "type" : "header",
9986 "value" : "int_ingress_tstamp"
9987 }
9988 ],
9989 "source_info" : {
9990 "filename" : "include/int/int_transit.p4",
9991 "line" : 63,
9992 "column" : 8,
9993 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9994 }
9995 },
9996 {
9997 "op" : "assign",
9998 "parameters" : [
9999 {
10000 "type" : "field",
10001 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10002 },
10003 {
10004 "type" : "field",
10005 "value" : ["standard_metadata", "enq_timestamp"]
10006 }
10007 ],
10008 "source_info" : {
10009 "filename" : "include/int/int_transit.p4",
10010 "line" : 64,
10011 "column" : 8,
10012 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10013 }
10014 },
10015 {
10016 "op" : "assign",
10017 "parameters" : [
10018 {
10019 "type" : "field",
10020 "value" : ["userMetadata.int_meta", "new_words"]
10021 },
10022 {
10023 "type" : "expression",
10024 "value" : {
10025 "type" : "expression",
10026 "value" : {
10027 "op" : "&",
10028 "left" : {
10029 "type" : "expression",
10030 "value" : {
10031 "op" : "+",
10032 "left" : {
10033 "type" : "field",
10034 "value" : ["userMetadata.int_meta", "new_words"]
10035 },
10036 "right" : {
10037 "type" : "hexstr",
10038 "value" : "0x04"
10039 }
10040 }
10041 },
10042 "right" : {
10043 "type" : "hexstr",
10044 "value" : "0xff"
10045 }
10046 }
10047 }
10048 }
10049 ],
10050 "source_info" : {
10051 "filename" : "include/int/int_transit.p4",
10052 "line" : 103,
10053 "column" : 8,
10054 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
10055 }
10056 },
10057 {
10058 "op" : "assign",
10059 "parameters" : [
10060 {
10061 "type" : "field",
10062 "value" : ["userMetadata.int_meta", "new_bytes"]
10063 },
10064 {
10065 "type" : "expression",
10066 "value" : {
10067 "type" : "expression",
10068 "value" : {
10069 "op" : "&",
10070 "left" : {
10071 "type" : "expression",
10072 "value" : {
10073 "op" : "+",
10074 "left" : {
10075 "type" : "field",
10076 "value" : ["userMetadata.int_meta", "new_bytes"]
10077 },
10078 "right" : {
10079 "type" : "hexstr",
10080 "value" : "0x0010"
10081 }
10082 }
10083 },
10084 "right" : {
10085 "type" : "hexstr",
10086 "value" : "0xffff"
10087 }
10088 }
10089 }
10090 }
10091 ],
10092 "source_info" : {
10093 "filename" : "include/int/int_transit.p4",
10094 "line" : 104,
10095 "column" : 8,
10096 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010097 }
10098 }
10099 ]
10100 },
10101 {
10102 "name" : "FabricEgress.pkt_io_egress.pop_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010103 "id" : 91,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010104 "runtime_data" : [],
10105 "primitives" : [
10106 {
10107 "op" : "assign",
10108 "parameters" : [
10109 {
10110 "type" : "field",
10111 "value" : ["ethernet", "ether_type"]
10112 },
10113 {
10114 "type" : "field",
10115 "value" : ["vlan_tag", "ether_type"]
10116 }
10117 ],
10118 "source_info" : {
10119 "filename" : "include/control/packetio.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010120 "line" : 40,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010121 "column" : 8,
10122 "source_fragment" : "hdr.ethernet.ether_type = hdr.vlan_tag.ether_type"
10123 }
10124 },
10125 {
10126 "op" : "remove_header",
10127 "parameters" : [
10128 {
10129 "type" : "header",
10130 "value" : "vlan_tag"
10131 }
10132 ],
10133 "source_info" : {
10134 "filename" : "include/control/packetio.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010135 "line" : 41,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010136 "column" : 8,
10137 "source_fragment" : "hdr.vlan_tag.setInvalid()"
10138 }
10139 }
10140 ]
10141 },
10142 {
10143 "name" : "FabricEgress.egress_next.pop_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010144 "id" : 92,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010145 "runtime_data" : [],
10146 "primitives" : [
10147 {
10148 "op" : "assign",
10149 "parameters" : [
10150 {
10151 "type" : "field",
10152 "value" : ["ethernet", "ether_type"]
10153 },
10154 {
10155 "type" : "field",
10156 "value" : ["vlan_tag", "ether_type"]
10157 }
10158 ],
10159 "source_info" : {
10160 "filename" : "include/control/next.p4",
10161 "line" : 253,
10162 "column" : 8,
10163 "source_fragment" : "hdr.ethernet.ether_type = hdr.vlan_tag.ether_type"
10164 }
10165 },
10166 {
10167 "op" : "remove_header",
10168 "parameters" : [
10169 {
10170 "type" : "header",
10171 "value" : "vlan_tag"
10172 }
10173 ],
10174 "source_info" : {
10175 "filename" : "include/control/next.p4",
10176 "line" : 254,
10177 "column" : 8,
10178 "source_fragment" : "hdr.vlan_tag.setInvalid()"
10179 }
10180 }
10181 ]
10182 },
10183 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010184 "name" : "act_15",
10185 "id" : 93,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010186 "runtime_data" : [],
10187 "primitives" : [
10188 {
10189 "op" : "add_header",
10190 "parameters" : [
10191 {
10192 "type" : "header",
10193 "value" : "packet_in"
10194 }
10195 ],
10196 "source_info" : {
10197 "filename" : "include/control/packetio.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010198 "line" : 57,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010199 "column" : 12,
10200 "source_fragment" : "hdr.packet_in.setValid()"
10201 }
10202 },
10203 {
10204 "op" : "assign",
10205 "parameters" : [
10206 {
10207 "type" : "field",
10208 "value" : ["packet_in", "ingress_port"]
10209 },
10210 {
10211 "type" : "field",
10212 "value" : ["standard_metadata", "ingress_port"]
10213 }
10214 ],
10215 "source_info" : {
10216 "filename" : "include/control/packetio.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010217 "line" : 58,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010218 "column" : 12,
10219 "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
10220 }
10221 }
10222 ]
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010223 },
10224 {
10225 "name" : "act_16",
10226 "id" : 94,
10227 "runtime_data" : [],
10228 "primitives" : [
10229 {
10230 "op" : "assign",
10231 "parameters" : [
10232 {
10233 "type" : "field",
10234 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned_0"]
10235 },
10236 {
10237 "type" : "expression",
10238 "value" : {
10239 "type" : "expression",
10240 "value" : {
10241 "op" : "b2d",
10242 "left" : null,
10243 "right" : {
10244 "type" : "bool",
10245 "value" : false
10246 }
10247 }
10248 }
10249 }
10250 ]
10251 }
10252 ]
10253 },
10254 {
10255 "name" : "act_17",
10256 "id" : 95,
10257 "runtime_data" : [],
10258 "primitives" : [
10259 {
10260 "op" : "assign",
10261 "parameters" : [
10262 {
10263 "type" : "field",
10264 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned_0"]
10265 },
10266 {
10267 "type" : "expression",
10268 "value" : {
10269 "type" : "expression",
10270 "value" : {
10271 "op" : "b2d",
10272 "left" : null,
10273 "right" : {
10274 "type" : "bool",
10275 "value" : true
10276 }
10277 }
10278 }
10279 }
10280 ],
10281 "source_info" : {
10282 "filename" : "include/int/int_transit.p4",
10283 "line" : 370,
10284 "column" : 12,
10285 "source_fragment" : "return"
10286 }
10287 }
10288 ]
10289 },
10290 {
10291 "name" : "act_18",
10292 "id" : 96,
10293 "runtime_data" : [],
10294 "primitives" : [
10295 {
10296 "op" : "assign",
10297 "parameters" : [
10298 {
10299 "type" : "field",
10300 "value" : ["ipv4", "total_len"]
10301 },
10302 {
10303 "type" : "expression",
10304 "value" : {
10305 "type" : "expression",
10306 "value" : {
10307 "op" : "&",
10308 "left" : {
10309 "type" : "expression",
10310 "value" : {
10311 "op" : "+",
10312 "left" : {
10313 "type" : "field",
10314 "value" : ["ipv4", "total_len"]
10315 },
10316 "right" : {
10317 "type" : "field",
10318 "value" : ["userMetadata.int_meta", "new_bytes"]
10319 }
10320 }
10321 },
10322 "right" : {
10323 "type" : "hexstr",
10324 "value" : "0xffff"
10325 }
10326 }
10327 }
10328 }
10329 ],
10330 "source_info" : {
10331 "filename" : "include/int/int_transit.p4",
10332 "line" : 378,
10333 "column" : 12,
10334 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + fmeta.int_meta.new_bytes"
10335 }
10336 }
10337 ]
10338 },
10339 {
10340 "name" : "act_19",
10341 "id" : 97,
10342 "runtime_data" : [],
10343 "primitives" : [
10344 {
10345 "op" : "assign",
10346 "parameters" : [
10347 {
10348 "type" : "field",
10349 "value" : ["int_header", "total_hop_cnt"]
10350 },
10351 {
10352 "type" : "expression",
10353 "value" : {
10354 "type" : "expression",
10355 "value" : {
10356 "op" : "&",
10357 "left" : {
10358 "type" : "expression",
10359 "value" : {
10360 "op" : "+",
10361 "left" : {
10362 "type" : "field",
10363 "value" : ["int_header", "total_hop_cnt"]
10364 },
10365 "right" : {
10366 "type" : "hexstr",
10367 "value" : "0x01"
10368 }
10369 }
10370 },
10371 "right" : {
10372 "type" : "hexstr",
10373 "value" : "0xff"
10374 }
10375 }
10376 }
10377 }
10378 ],
10379 "source_info" : {
10380 "filename" : "include/int/int_transit.p4",
10381 "line" : 375,
10382 "column" : 8,
10383 "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
10384 }
10385 }
10386 ]
10387 },
10388 {
10389 "name" : "act_20",
10390 "id" : 98,
10391 "runtime_data" : [],
10392 "primitives" : [
10393 {
10394 "op" : "assign",
10395 "parameters" : [
10396 {
10397 "type" : "field",
10398 "value" : ["udp", "len"]
10399 },
10400 {
10401 "type" : "expression",
10402 "value" : {
10403 "type" : "expression",
10404 "value" : {
10405 "op" : "&",
10406 "left" : {
10407 "type" : "expression",
10408 "value" : {
10409 "op" : "+",
10410 "left" : {
10411 "type" : "field",
10412 "value" : ["udp", "len"]
10413 },
10414 "right" : {
10415 "type" : "field",
10416 "value" : ["userMetadata.int_meta", "new_bytes"]
10417 }
10418 }
10419 },
10420 "right" : {
10421 "type" : "hexstr",
10422 "value" : "0xffff"
10423 }
10424 }
10425 }
10426 }
10427 ],
10428 "source_info" : {
10429 "filename" : "include/int/int_transit.p4",
10430 "line" : 381,
10431 "column" : 12,
10432 "source_fragment" : "hdr.udp.len = hdr.udp.len + fmeta.int_meta.new_bytes"
10433 }
10434 }
10435 ]
10436 },
10437 {
10438 "name" : "act_21",
10439 "id" : 99,
10440 "runtime_data" : [],
10441 "primitives" : [
10442 {
10443 "op" : "assign",
10444 "parameters" : [
10445 {
10446 "type" : "field",
10447 "value" : ["intl4_shim", "len_words"]
10448 },
10449 {
10450 "type" : "expression",
10451 "value" : {
10452 "type" : "expression",
10453 "value" : {
10454 "op" : "&",
10455 "left" : {
10456 "type" : "expression",
10457 "value" : {
10458 "op" : "+",
10459 "left" : {
10460 "type" : "field",
10461 "value" : ["intl4_shim", "len_words"]
10462 },
10463 "right" : {
10464 "type" : "field",
10465 "value" : ["userMetadata.int_meta", "new_words"]
10466 }
10467 }
10468 },
10469 "right" : {
10470 "type" : "hexstr",
10471 "value" : "0xff"
10472 }
10473 }
10474 }
10475 }
10476 ],
10477 "source_info" : {
10478 "filename" : "include/int/int_transit.p4",
10479 "line" : 384,
10480 "column" : 12,
10481 "source_fragment" : "hdr.intl4_shim.len_words = hdr.intl4_shim.len_words + fmeta.int_meta.new_words"
10482 }
10483 }
10484 ]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010485 }
10486 ],
10487 "pipelines" : [
10488 {
10489 "name" : "ingress",
10490 "id" : 0,
10491 "source_info" : {
10492 "filename" : "fabric.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010493 "line" : 40,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010494 "column" : 8,
10495 "source_fragment" : "FabricIngress"
10496 },
10497 "init_table" : "node_2",
10498 "tables" : [
10499 {
10500 "name" : "tbl_act",
10501 "id" : 0,
10502 "key" : [],
10503 "match_type" : "exact",
10504 "type" : "simple",
10505 "max_size" : 1024,
10506 "with_counters" : false,
10507 "support_timeout" : false,
10508 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010509 "action_ids" : [34],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010510 "actions" : ["act"],
10511 "base_default_next" : null,
10512 "next_tables" : {
10513 "act" : null
10514 },
10515 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010516 "action_id" : 34,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010517 "action_const" : true,
10518 "action_data" : [],
10519 "action_entry_const" : true
10520 }
10521 },
10522 {
10523 "name" : "FabricIngress.filtering.ingress_port_vlan",
10524 "id" : 1,
10525 "source_info" : {
10526 "filename" : "include/control/filtering.p4",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010527 "line" : 66,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010528 "column" : 10,
10529 "source_fragment" : "ingress_port_vlan"
10530 },
10531 "key" : [
10532 {
10533 "match_type" : "exact",
10534 "name" : "standard_metadata.ingress_port",
10535 "target" : ["standard_metadata", "ingress_port"],
10536 "mask" : null
10537 },
10538 {
10539 "match_type" : "exact",
10540 "name" : "hdr.vlan_tag.is_valid",
10541 "target" : ["vlan_tag", "$valid$"],
10542 "mask" : null
10543 },
10544 {
10545 "match_type" : "ternary",
10546 "name" : "hdr.vlan_tag.vlan_id",
10547 "target" : ["vlan_tag", "vlan_id"],
10548 "mask" : null
10549 }
10550 ],
10551 "match_type" : "ternary",
10552 "type" : "simple",
10553 "max_size" : 1024,
10554 "with_counters" : true,
10555 "support_timeout" : false,
10556 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010557 "action_ids" : [11, 10, 9, 12],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010558 "actions" : ["FabricIngress.filtering.push_internal_vlan", "FabricIngress.filtering.set_vlan", "FabricIngress.filtering.drop", "FabricIngress.filtering.nop_ingress_port_vlan"],
10559 "base_default_next" : null,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010560 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010561 "__HIT__" : "tbl_act_0",
10562 "__MISS__" : "tbl_act_1"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010563 },
10564 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010565 "action_id" : 11,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010566 "action_const" : true,
10567 "action_data" : ["0xffe"],
10568 "action_entry_const" : true
10569 }
10570 },
10571 {
10572 "name" : "tbl_act_0",
10573 "id" : 2,
10574 "key" : [],
10575 "match_type" : "exact",
10576 "type" : "simple",
10577 "max_size" : 1024,
10578 "with_counters" : false,
10579 "support_timeout" : false,
10580 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010581 "action_ids" : [35],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010582 "actions" : ["act_0"],
10583 "base_default_next" : "node_7",
10584 "next_tables" : {
10585 "act_0" : "node_7"
10586 },
10587 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010588 "action_id" : 35,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010589 "action_const" : true,
10590 "action_data" : [],
10591 "action_entry_const" : true
10592 }
10593 },
10594 {
10595 "name" : "tbl_act_1",
10596 "id" : 3,
10597 "key" : [],
10598 "match_type" : "exact",
10599 "type" : "simple",
10600 "max_size" : 1024,
10601 "with_counters" : false,
10602 "support_timeout" : false,
10603 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010604 "action_ids" : [36],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010605 "actions" : ["act_1"],
10606 "base_default_next" : "node_7",
10607 "next_tables" : {
10608 "act_1" : "node_7"
10609 },
10610 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010611 "action_id" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010612 "action_const" : true,
10613 "action_data" : [],
10614 "action_entry_const" : true
10615 }
10616 },
10617 {
10618 "name" : "FabricIngress.filtering.fwd_classifier",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010619 "id" : 4,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010620 "source_info" : {
10621 "filename" : "include/control/filtering.p4",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010622 "line" : 103,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010623 "column" : 10,
10624 "source_fragment" : "fwd_classifier"
10625 },
10626 "key" : [
10627 {
10628 "match_type" : "exact",
10629 "name" : "standard_metadata.ingress_port",
10630 "target" : ["standard_metadata", "ingress_port"],
10631 "mask" : null
10632 },
10633 {
Charles Chan384aea22018-08-23 22:08:02 -070010634 "match_type" : "ternary",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010635 "name" : "hdr.ethernet.dst_addr",
10636 "target" : ["ethernet", "dst_addr"],
10637 "mask" : null
10638 },
10639 {
10640 "match_type" : "exact",
10641 "name" : "hdr.vlan_tag.ether_type",
10642 "target" : ["vlan_tag", "ether_type"],
10643 "mask" : null
10644 }
10645 ],
Charles Chan384aea22018-08-23 22:08:02 -070010646 "match_type" : "ternary",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010647 "type" : "simple",
10648 "max_size" : 1024,
10649 "with_counters" : true,
10650 "support_timeout" : false,
10651 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010652 "action_ids" : [13],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010653 "actions" : ["FabricIngress.filtering.set_forwarding_type"],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010654 "base_default_next" : "node_10",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010655 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010656 "FabricIngress.filtering.set_forwarding_type" : "node_10"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010657 },
10658 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010659 "action_id" : 13,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010660 "action_const" : true,
10661 "action_data" : ["0x0"],
10662 "action_entry_const" : true
10663 }
10664 },
10665 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010666 "name" : "tbl_act_2",
10667 "id" : 5,
10668 "key" : [],
10669 "match_type" : "exact",
10670 "type" : "simple",
10671 "max_size" : 1024,
10672 "with_counters" : false,
10673 "support_timeout" : false,
10674 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010675 "action_ids" : [37],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010676 "actions" : ["act_2"],
10677 "base_default_next" : "node_10",
10678 "next_tables" : {
10679 "act_2" : "node_10"
10680 },
10681 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010682 "action_id" : 37,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010683 "action_const" : true,
10684 "action_data" : [],
10685 "action_entry_const" : true
10686 }
10687 },
10688 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010689 "name" : "FabricIngress.forwarding.bridging",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010690 "id" : 6,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010691 "source_info" : {
10692 "filename" : "include/control/forwarding.p4",
10693 "line" : 41,
10694 "column" : 10,
10695 "source_fragment" : "bridging"
10696 },
10697 "key" : [
10698 {
10699 "match_type" : "exact",
10700 "name" : "hdr.vlan_tag.vlan_id",
10701 "target" : ["vlan_tag", "vlan_id"],
10702 "mask" : null
10703 },
10704 {
10705 "match_type" : "ternary",
10706 "name" : "hdr.ethernet.dst_addr",
10707 "target" : ["ethernet", "dst_addr"],
10708 "mask" : null
10709 }
10710 ],
10711 "match_type" : "ternary",
10712 "type" : "simple",
10713 "max_size" : 1024,
10714 "with_counters" : true,
10715 "support_timeout" : false,
10716 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010717 "action_ids" : [14, 1],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010718 "actions" : ["FabricIngress.forwarding.set_next_id_bridging", "NoAction"],
10719 "base_default_next" : "FabricIngress.forwarding.acl",
10720 "next_tables" : {
10721 "FabricIngress.forwarding.set_next_id_bridging" : "FabricIngress.forwarding.acl",
10722 "NoAction" : "FabricIngress.forwarding.acl"
10723 },
10724 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010725 "action_id" : 1,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010726 "action_const" : false,
10727 "action_data" : [],
10728 "action_entry_const" : false
10729 }
10730 },
10731 {
10732 "name" : "FabricIngress.forwarding.mpls",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010733 "id" : 7,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010734 "source_info" : {
10735 "filename" : "include/control/forwarding.p4",
10736 "line" : 65,
10737 "column" : 10,
10738 "source_fragment" : "mpls"
10739 },
10740 "key" : [
10741 {
10742 "match_type" : "exact",
10743 "name" : "hdr.mpls.label",
10744 "target" : ["mpls", "label"],
10745 "mask" : null
10746 }
10747 ],
10748 "match_type" : "exact",
10749 "type" : "simple",
10750 "max_size" : 1024,
10751 "with_counters" : true,
10752 "support_timeout" : false,
10753 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010754 "action_ids" : [15, 2],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010755 "actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "NoAction"],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010756 "base_default_next" : "tbl_act_3",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010757 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010758 "FabricIngress.forwarding.pop_mpls_and_next" : "tbl_act_3",
10759 "NoAction" : "tbl_act_3"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010760 },
10761 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010762 "action_id" : 2,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010763 "action_const" : false,
10764 "action_data" : [],
10765 "action_entry_const" : false
10766 }
10767 },
10768 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010769 "name" : "tbl_act_3",
10770 "id" : 8,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010771 "key" : [],
10772 "match_type" : "exact",
10773 "type" : "simple",
10774 "max_size" : 1024,
10775 "with_counters" : false,
10776 "support_timeout" : false,
10777 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010778 "action_ids" : [38],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010779 "actions" : ["act_3"],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010780 "base_default_next" : "FabricIngress.forwarding.acl",
10781 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010782 "act_3" : "FabricIngress.forwarding.acl"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010783 },
10784 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010785 "action_id" : 38,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010786 "action_const" : true,
10787 "action_data" : [],
10788 "action_entry_const" : true
10789 }
10790 },
10791 {
Charles Chan384aea22018-08-23 22:08:02 -070010792 "name" : "FabricIngress.forwarding.routing_v4",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010793 "id" : 9,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010794 "source_info" : {
10795 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -070010796 "line" : 91,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010797 "column" : 10,
Charles Chan384aea22018-08-23 22:08:02 -070010798 "source_fragment" : "routing_v4"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010799 },
10800 "key" : [
10801 {
10802 "match_type" : "lpm",
10803 "name" : "hdr.ipv4.dst_addr",
10804 "target" : ["ipv4", "dst_addr"],
10805 "mask" : null
10806 }
10807 ],
10808 "match_type" : "lpm",
10809 "type" : "simple",
10810 "max_size" : 1024,
10811 "with_counters" : true,
10812 "support_timeout" : false,
10813 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010814 "action_ids" : [16, 17, 3],
Charles Chancd03f072018-08-31 17:46:37 -070010815 "actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "NoAction"],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010816 "base_default_next" : "FabricIngress.forwarding.acl",
10817 "next_tables" : {
Charles Chan384aea22018-08-23 22:08:02 -070010818 "FabricIngress.forwarding.set_next_id_routing_v4" : "FabricIngress.forwarding.acl",
Charles Chancd03f072018-08-31 17:46:37 -070010819 "FabricIngress.forwarding.nop_routing_v4" : "FabricIngress.forwarding.acl",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010820 "NoAction" : "FabricIngress.forwarding.acl"
10821 },
10822 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010823 "action_id" : 3,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010824 "action_const" : false,
10825 "action_data" : [],
10826 "action_entry_const" : false
10827 }
10828 },
10829 {
10830 "name" : "FabricIngress.forwarding.acl",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010831 "id" : 10,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010832 "source_info" : {
10833 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -070010834 "line" : 136,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010835 "column" : 10,
10836 "source_fragment" : "acl"
10837 },
10838 "key" : [
10839 {
10840 "match_type" : "ternary",
10841 "name" : "standard_metadata.ingress_port",
10842 "target" : ["standard_metadata", "ingress_port"],
10843 "mask" : null
10844 },
10845 {
10846 "match_type" : "ternary",
10847 "name" : "fabric_metadata.ip_proto",
10848 "target" : ["scalars", "fabric_metadata_t.ip_proto"],
10849 "mask" : null
10850 },
10851 {
10852 "match_type" : "ternary",
10853 "name" : "fabric_metadata.l4_src_port",
10854 "target" : ["scalars", "fabric_metadata_t.l4_src_port"],
10855 "mask" : null
10856 },
10857 {
10858 "match_type" : "ternary",
10859 "name" : "fabric_metadata.l4_dst_port",
10860 "target" : ["scalars", "fabric_metadata_t.l4_dst_port"],
10861 "mask" : null
10862 },
10863 {
10864 "match_type" : "ternary",
10865 "name" : "hdr.ethernet.dst_addr",
10866 "target" : ["ethernet", "dst_addr"],
10867 "mask" : null
10868 },
10869 {
10870 "match_type" : "ternary",
10871 "name" : "hdr.ethernet.src_addr",
10872 "target" : ["ethernet", "src_addr"],
10873 "mask" : null
10874 },
10875 {
10876 "match_type" : "ternary",
10877 "name" : "hdr.vlan_tag.vlan_id",
10878 "target" : ["vlan_tag", "vlan_id"],
10879 "mask" : null
10880 },
10881 {
10882 "match_type" : "ternary",
10883 "name" : "hdr.vlan_tag.ether_type",
10884 "target" : ["vlan_tag", "ether_type"],
10885 "mask" : null
10886 },
10887 {
10888 "match_type" : "ternary",
10889 "name" : "hdr.ipv4.src_addr",
10890 "target" : ["ipv4", "src_addr"],
10891 "mask" : null
10892 },
10893 {
10894 "match_type" : "ternary",
10895 "name" : "hdr.ipv4.dst_addr",
10896 "target" : ["ipv4", "dst_addr"],
10897 "mask" : null
10898 },
10899 {
10900 "match_type" : "ternary",
10901 "name" : "hdr.icmp.icmp_type",
10902 "target" : ["icmp", "icmp_type"],
10903 "mask" : null
10904 },
10905 {
10906 "match_type" : "ternary",
10907 "name" : "hdr.icmp.icmp_code",
10908 "target" : ["icmp", "icmp_code"],
10909 "mask" : null
10910 }
10911 ],
10912 "match_type" : "ternary",
10913 "type" : "simple",
10914 "max_size" : 128,
10915 "with_counters" : true,
10916 "support_timeout" : false,
10917 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010918 "action_ids" : [18, 19, 20, 21, 22],
Charles Chancf696e52018-08-16 16:25:13 -070010919 "actions" : ["FabricIngress.forwarding.set_next_id_acl", "FabricIngress.forwarding.punt_to_cpu", "FabricIngress.forwarding.clone_to_cpu", "FabricIngress.forwarding.drop", "FabricIngress.forwarding.nop_acl"],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010920 "base_default_next" : "tbl_act_4",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010921 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010922 "FabricIngress.forwarding.set_next_id_acl" : "tbl_act_4",
10923 "FabricIngress.forwarding.punt_to_cpu" : "tbl_act_4",
10924 "FabricIngress.forwarding.clone_to_cpu" : "tbl_act_4",
10925 "FabricIngress.forwarding.drop" : "tbl_act_4",
10926 "FabricIngress.forwarding.nop_acl" : "tbl_act_4"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010927 },
10928 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010929 "action_id" : 22,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010930 "action_const" : true,
10931 "action_data" : [],
10932 "action_entry_const" : true
10933 }
10934 },
10935 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010936 "name" : "tbl_act_4",
10937 "id" : 11,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010938 "key" : [],
10939 "match_type" : "exact",
10940 "type" : "simple",
10941 "max_size" : 1024,
10942 "with_counters" : false,
10943 "support_timeout" : false,
10944 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010945 "action_ids" : [39],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010946 "actions" : ["act_4"],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010947 "base_default_next" : "FabricIngress.next.vlan_meta",
10948 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010949 "act_4" : "FabricIngress.next.vlan_meta"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010950 },
10951 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010952 "action_id" : 39,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010953 "action_const" : true,
10954 "action_data" : [],
10955 "action_entry_const" : true
10956 }
10957 },
10958 {
10959 "name" : "FabricIngress.next.vlan_meta",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010960 "id" : 12,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010961 "source_info" : {
10962 "filename" : "include/control/next.p4",
10963 "line" : 65,
10964 "column" : 10,
10965 "source_fragment" : "vlan_meta"
10966 },
10967 "key" : [
10968 {
10969 "match_type" : "exact",
10970 "name" : "fabric_metadata.next_id",
10971 "target" : ["scalars", "fabric_metadata_t.next_id"],
10972 "mask" : null
10973 }
10974 ],
10975 "match_type" : "exact",
10976 "type" : "simple",
10977 "max_size" : 1024,
10978 "with_counters" : true,
10979 "support_timeout" : false,
10980 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010981 "action_ids" : [23, 7],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010982 "actions" : ["FabricIngress.next.set_vlan", "nop"],
10983 "base_default_next" : "FabricIngress.next.simple",
10984 "next_tables" : {
10985 "FabricIngress.next.set_vlan" : "FabricIngress.next.simple",
10986 "nop" : "FabricIngress.next.simple"
10987 },
10988 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070010989 "action_id" : 7,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010990 "action_const" : false,
10991 "action_data" : [],
10992 "action_entry_const" : false
10993 }
10994 },
10995 {
10996 "name" : "FabricIngress.next.simple",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070010997 "id" : 13,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090010998 "source_info" : {
10999 "filename" : "include/control/next.p4",
11000 "line" : 122,
11001 "column" : 10,
11002 "source_fragment" : "simple"
11003 },
11004 "key" : [
11005 {
11006 "match_type" : "exact",
11007 "name" : "fabric_metadata.next_id",
11008 "target" : ["scalars", "fabric_metadata_t.next_id"],
11009 "mask" : null
11010 }
11011 ],
11012 "match_type" : "exact",
11013 "type" : "simple",
11014 "max_size" : 1024,
11015 "with_counters" : true,
11016 "support_timeout" : false,
11017 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011018 "action_ids" : [24, 25, 26, 27, 28, 29, 4],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011019 "actions" : ["FabricIngress.next.output_simple", "FabricIngress.next.set_vlan_output", "FabricIngress.next.l3_routing_simple", "FabricIngress.next.mpls_routing_v4_simple", "FabricIngress.next.mpls_routing_v6_simple", "FabricIngress.next.l3_routing_vlan", "NoAction"],
11020 "base_default_next" : null,
11021 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011022 "__HIT__" : "tbl_act_5",
11023 "__MISS__" : "tbl_act_6"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011024 },
11025 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011026 "action_id" : 4,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011027 "action_const" : false,
11028 "action_data" : [],
11029 "action_entry_const" : false
11030 }
11031 },
11032 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011033 "name" : "tbl_act_5",
11034 "id" : 14,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011035 "key" : [],
11036 "match_type" : "exact",
11037 "type" : "simple",
11038 "max_size" : 1024,
11039 "with_counters" : false,
11040 "support_timeout" : false,
11041 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011042 "action_ids" : [40],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011043 "actions" : ["act_5"],
11044 "base_default_next" : "node_23",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011045 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011046 "act_5" : "node_23"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011047 },
11048 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011049 "action_id" : 40,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011050 "action_const" : true,
11051 "action_data" : [],
11052 "action_entry_const" : true
11053 }
11054 },
11055 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011056 "name" : "tbl_act_6",
11057 "id" : 15,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011058 "key" : [],
11059 "match_type" : "exact",
11060 "type" : "simple",
11061 "max_size" : 1024,
11062 "with_counters" : false,
11063 "support_timeout" : false,
11064 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011065 "action_ids" : [41],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011066 "actions" : ["act_6"],
11067 "base_default_next" : "node_23",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011068 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011069 "act_6" : "node_23"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011070 },
11071 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011072 "action_id" : 41,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011073 "action_const" : true,
11074 "action_data" : [],
11075 "action_entry_const" : true
11076 }
11077 },
11078 {
11079 "name" : "FabricIngress.next.hashed",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011080 "id" : 16,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011081 "source_info" : {
11082 "filename" : "include/control/next.p4",
11083 "line" : 175,
11084 "column" : 10,
11085 "source_fragment" : "hashed"
11086 },
11087 "key" : [
11088 {
11089 "match_type" : "exact",
11090 "name" : "fabric_metadata.next_id",
11091 "target" : ["scalars", "fabric_metadata_t.next_id"],
11092 "mask" : null
11093 }
11094 ],
11095 "match_type" : "exact",
11096 "type" : "indirect_ws",
11097 "action_profile" : "FabricIngress.next.ecmp_selector",
11098 "max_size" : 1024,
11099 "with_counters" : true,
11100 "support_timeout" : false,
11101 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011102 "action_ids" : [30, 31, 32, 5],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011103 "actions" : ["FabricIngress.next.l3_routing_hashed", "FabricIngress.next.mpls_routing_v4_hashed", "FabricIngress.next.mpls_routing_v6_hashed", "NoAction"],
11104 "base_default_next" : null,
11105 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011106 "__HIT__" : "tbl_act_7",
11107 "__MISS__" : "tbl_act_8"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011108 }
11109 },
11110 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011111 "name" : "tbl_act_7",
11112 "id" : 17,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011113 "key" : [],
11114 "match_type" : "exact",
11115 "type" : "simple",
11116 "max_size" : 1024,
11117 "with_counters" : false,
11118 "support_timeout" : false,
11119 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011120 "action_ids" : [42],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011121 "actions" : ["act_7"],
11122 "base_default_next" : "node_27",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011123 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011124 "act_7" : "node_27"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011125 },
11126 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011127 "action_id" : 42,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011128 "action_const" : true,
11129 "action_data" : [],
11130 "action_entry_const" : true
11131 }
11132 },
11133 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011134 "name" : "tbl_act_8",
11135 "id" : 18,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011136 "key" : [],
11137 "match_type" : "exact",
11138 "type" : "simple",
11139 "max_size" : 1024,
11140 "with_counters" : false,
11141 "support_timeout" : false,
11142 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011143 "action_ids" : [43],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011144 "actions" : ["act_8"],
11145 "base_default_next" : "node_27",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011146 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011147 "act_8" : "node_27"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011148 },
11149 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011150 "action_id" : 43,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011151 "action_const" : true,
11152 "action_data" : [],
11153 "action_entry_const" : true
11154 }
11155 },
11156 {
11157 "name" : "FabricIngress.next.multicast",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011158 "id" : 19,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011159 "source_info" : {
11160 "filename" : "include/control/next.p4",
11161 "line" : 207,
11162 "column" : 10,
11163 "source_fragment" : "multicast"
11164 },
11165 "key" : [
11166 {
11167 "match_type" : "exact",
11168 "name" : "fabric_metadata.next_id",
11169 "target" : ["scalars", "fabric_metadata_t.next_id"],
11170 "mask" : null
11171 }
11172 ],
11173 "match_type" : "exact",
11174 "type" : "simple",
11175 "max_size" : 1024,
11176 "with_counters" : true,
11177 "support_timeout" : false,
11178 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011179 "action_ids" : [33, 6],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011180 "actions" : ["FabricIngress.next.set_mcast_group", "NoAction"],
11181 "base_default_next" : null,
11182 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011183 "__HIT__" : "tbl_act_9",
11184 "__MISS__" : "tbl_act_10"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011185 },
11186 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011187 "action_id" : 6,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011188 "action_const" : false,
11189 "action_data" : [],
11190 "action_entry_const" : false
11191 }
11192 },
11193 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011194 "name" : "tbl_act_9",
11195 "id" : 20,
11196 "key" : [],
11197 "match_type" : "exact",
11198 "type" : "simple",
11199 "max_size" : 1024,
11200 "with_counters" : false,
11201 "support_timeout" : false,
11202 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011203 "action_ids" : [44],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011204 "actions" : ["act_9"],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011205 "base_default_next" : "node_31",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011206 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011207 "act_9" : "node_31"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011208 },
11209 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011210 "action_id" : 44,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011211 "action_const" : true,
11212 "action_data" : [],
11213 "action_entry_const" : true
11214 }
11215 },
11216 {
11217 "name" : "tbl_act_10",
11218 "id" : 21,
11219 "key" : [],
11220 "match_type" : "exact",
11221 "type" : "simple",
11222 "max_size" : 1024,
11223 "with_counters" : false,
11224 "support_timeout" : false,
11225 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011226 "action_ids" : [45],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011227 "actions" : ["act_10"],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011228 "base_default_next" : "node_31",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011229 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011230 "act_10" : "node_31"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011231 },
11232 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011233 "action_id" : 45,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011234 "action_const" : true,
11235 "action_data" : [],
11236 "action_entry_const" : true
11237 }
11238 },
11239 {
11240 "name" : "tbl_act_11",
11241 "id" : 22,
11242 "key" : [],
11243 "match_type" : "exact",
11244 "type" : "simple",
11245 "max_size" : 1024,
11246 "with_counters" : false,
11247 "support_timeout" : false,
11248 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011249 "action_ids" : [46],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011250 "actions" : ["act_11"],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011251 "base_default_next" : "node_33",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011252 "next_tables" : {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011253 "act_11" : "node_33"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011254 },
11255 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011256 "action_id" : 46,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011257 "action_const" : true,
11258 "action_data" : [],
11259 "action_entry_const" : true
11260 }
11261 },
11262 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011263 "name" : "tbl_act_12",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011264 "id" : 23,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011265 "key" : [],
11266 "match_type" : "exact",
11267 "type" : "simple",
11268 "max_size" : 1024,
11269 "with_counters" : false,
11270 "support_timeout" : false,
11271 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011272 "action_ids" : [47],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011273 "actions" : ["act_12"],
11274 "base_default_next" : "node_37",
11275 "next_tables" : {
11276 "act_12" : "node_37"
11277 },
11278 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011279 "action_id" : 47,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011280 "action_const" : true,
11281 "action_data" : [],
11282 "action_entry_const" : true
11283 }
11284 },
11285 {
11286 "name" : "tbl_act_13",
11287 "id" : 24,
11288 "key" : [],
11289 "match_type" : "exact",
11290 "type" : "simple",
11291 "max_size" : 1024,
11292 "with_counters" : false,
11293 "support_timeout" : false,
11294 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011295 "action_ids" : [48],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011296 "actions" : ["act_13"],
11297 "base_default_next" : "node_39",
11298 "next_tables" : {
11299 "act_13" : "node_39"
11300 },
11301 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011302 "action_id" : 48,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011303 "action_const" : true,
11304 "action_data" : [],
11305 "action_entry_const" : true
11306 }
11307 },
11308 {
11309 "name" : "tbl_act_14",
11310 "id" : 25,
11311 "key" : [],
11312 "match_type" : "exact",
11313 "type" : "simple",
11314 "max_size" : 1024,
11315 "with_counters" : false,
11316 "support_timeout" : false,
11317 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011318 "action_ids" : [49],
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011319 "actions" : ["act_14"],
11320 "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
11321 "next_tables" : {
11322 "act_14" : "FabricIngress.process_set_source_sink.tb_set_source"
11323 },
11324 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011325 "action_id" : 49,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011326 "action_const" : true,
11327 "action_data" : [],
11328 "action_entry_const" : true
11329 }
11330 },
11331 {
11332 "name" : "FabricIngress.process_set_source_sink.tb_set_source",
11333 "id" : 26,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011334 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011335 "filename" : "include/int/int_main.p4",
11336 "line" : 46,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011337 "column" : 10,
11338 "source_fragment" : "tb_set_source"
11339 },
11340 "key" : [
11341 {
11342 "match_type" : "exact",
11343 "name" : "standard_metadata.ingress_port",
11344 "target" : ["standard_metadata", "ingress_port"],
11345 "mask" : null
11346 }
11347 ],
11348 "match_type" : "exact",
11349 "type" : "simple",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011350 "max_size" : 511,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011351 "with_counters" : true,
11352 "support_timeout" : false,
11353 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011354 "action_ids" : [8, 0],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011355 "actions" : ["FabricIngress.process_set_source_sink.int_set_source", "NoAction"],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011356 "base_default_next" : null,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011357 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011358 "FabricIngress.process_set_source_sink.int_set_source" : null,
11359 "NoAction" : null
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011360 },
11361 "default_entry" : {
11362 "action_id" : 0,
11363 "action_const" : false,
11364 "action_data" : [],
11365 "action_entry_const" : false
11366 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011367 }
11368 ],
11369 "action_profiles" : [
11370 {
11371 "name" : "FabricIngress.next.ecmp_selector",
11372 "id" : 0,
11373 "max_size" : 64,
11374 "selector" : {
11375 "algo" : "crc16",
11376 "input" : [
11377 {
11378 "type" : "field",
11379 "value" : ["ipv4", "dst_addr"]
11380 },
11381 {
11382 "type" : "field",
11383 "value" : ["ipv4", "src_addr"]
11384 },
11385 {
11386 "type" : "field",
11387 "value" : ["scalars", "fabric_metadata_t.ip_proto"]
11388 },
11389 {
11390 "type" : "field",
11391 "value" : ["scalars", "fabric_metadata_t.l4_src_port"]
11392 },
11393 {
11394 "type" : "field",
11395 "value" : ["scalars", "fabric_metadata_t.l4_dst_port"]
11396 }
11397 ]
11398 }
11399 }
11400 ],
11401 "conditionals" : [
11402 {
11403 "name" : "node_2",
11404 "id" : 0,
11405 "source_info" : {
11406 "filename" : "include/control/packetio.p4",
11407 "line" : 25,
11408 "column" : 12,
11409 "source_fragment" : "hdr.packet_out.isValid()"
11410 },
11411 "expression" : {
11412 "type" : "expression",
11413 "value" : {
11414 "op" : "d2b",
11415 "left" : null,
11416 "right" : {
11417 "type" : "field",
11418 "value" : ["packet_out", "$valid$"]
11419 }
11420 }
11421 },
11422 "true_next" : "tbl_act",
11423 "false_next" : "FabricIngress.filtering.ingress_port_vlan"
11424 },
11425 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011426 "name" : "node_7",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011427 "id" : 1,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011428 "expression" : {
11429 "type" : "expression",
11430 "value" : {
11431 "op" : "d2b",
11432 "left" : null,
11433 "right" : {
11434 "type" : "field",
11435 "value" : ["scalars", "filtering_tmp_0"]
11436 }
11437 }
11438 },
11439 "true_next" : "FabricIngress.filtering.fwd_classifier",
11440 "false_next" : "tbl_act_2"
11441 },
11442 {
11443 "name" : "node_10",
11444 "id" : 2,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011445 "source_info" : {
11446 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -070011447 "line" : 191,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011448 "column" : 11,
11449 "source_fragment" : "fabric_metadata.fwd_type == FWD_BRIDGING"
11450 },
11451 "expression" : {
11452 "type" : "expression",
11453 "value" : {
11454 "op" : "==",
11455 "left" : {
11456 "type" : "field",
11457 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
11458 },
11459 "right" : {
11460 "type" : "hexstr",
11461 "value" : "0x00"
11462 }
11463 }
11464 },
11465 "true_next" : "FabricIngress.forwarding.bridging",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011466 "false_next" : "node_12"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011467 },
11468 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011469 "name" : "node_12",
11470 "id" : 3,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011471 "source_info" : {
11472 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -070011473 "line" : 192,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011474 "column" : 17,
11475 "source_fragment" : "fabric_metadata.fwd_type == FWD_MPLS"
11476 },
11477 "expression" : {
11478 "type" : "expression",
11479 "value" : {
11480 "op" : "==",
11481 "left" : {
11482 "type" : "field",
11483 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
11484 },
11485 "right" : {
11486 "type" : "hexstr",
11487 "value" : "0x01"
11488 }
11489 }
11490 },
11491 "true_next" : "FabricIngress.forwarding.mpls",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011492 "false_next" : "node_15"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011493 },
11494 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011495 "name" : "node_15",
11496 "id" : 4,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011497 "source_info" : {
11498 "filename" : "include/control/forwarding.p4",
Charles Chancd03f072018-08-31 17:46:37 -070011499 "line" : 198,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011500 "column" : 17,
11501 "source_fragment" : "fabric_metadata.fwd_type == FWD_IPV4_UNICAST"
11502 },
11503 "expression" : {
11504 "type" : "expression",
11505 "value" : {
11506 "op" : "==",
11507 "left" : {
11508 "type" : "field",
11509 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
11510 },
11511 "right" : {
11512 "type" : "hexstr",
11513 "value" : "0x02"
11514 }
11515 }
11516 },
Charles Chan384aea22018-08-23 22:08:02 -070011517 "true_next" : "FabricIngress.forwarding.routing_v4",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011518 "false_next" : "FabricIngress.forwarding.acl"
11519 },
11520 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011521 "name" : "node_23",
11522 "id" : 5,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011523 "source_info" : {
11524 "filename" : "include/control/next.p4",
11525 "line" : 219,
11526 "column" : 12,
11527 "source_fragment" : "!simple.apply().hit"
11528 },
11529 "expression" : {
11530 "type" : "expression",
11531 "value" : {
11532 "op" : "not",
11533 "left" : null,
11534 "right" : {
11535 "type" : "expression",
11536 "value" : {
11537 "op" : "d2b",
11538 "left" : null,
11539 "right" : {
11540 "type" : "field",
11541 "value" : ["scalars", "next_tmp_4"]
11542 }
11543 }
11544 }
11545 }
11546 },
11547 "true_next" : "FabricIngress.next.hashed",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011548 "false_next" : "node_33"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011549 },
11550 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011551 "name" : "node_27",
11552 "id" : 6,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011553 "source_info" : {
11554 "filename" : "include/control/next.p4",
11555 "line" : 220,
11556 "column" : 16,
11557 "source_fragment" : "!hashed.apply().hit"
11558 },
11559 "expression" : {
11560 "type" : "expression",
11561 "value" : {
11562 "op" : "not",
11563 "left" : null,
11564 "right" : {
11565 "type" : "expression",
11566 "value" : {
11567 "op" : "d2b",
11568 "left" : null,
11569 "right" : {
11570 "type" : "field",
11571 "value" : ["scalars", "next_tmp_3"]
11572 }
11573 }
11574 }
11575 }
11576 },
11577 "true_next" : "FabricIngress.next.multicast",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011578 "false_next" : "node_33"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011579 },
11580 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011581 "name" : "node_31",
11582 "id" : 7,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011583 "source_info" : {
11584 "filename" : "include/control/next.p4",
11585 "line" : 221,
11586 "column" : 20,
11587 "source_fragment" : "!multicast.apply().hit"
11588 },
11589 "expression" : {
11590 "type" : "expression",
11591 "value" : {
11592 "op" : "not",
11593 "left" : null,
11594 "right" : {
11595 "type" : "expression",
11596 "value" : {
11597 "op" : "d2b",
11598 "left" : null,
11599 "right" : {
11600 "type" : "field",
11601 "value" : ["scalars", "next_tmp_2"]
11602 }
11603 }
11604 }
11605 }
11606 },
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011607 "true_next" : "tbl_act_11",
11608 "false_next" : "node_33"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011609 },
11610 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011611 "name" : "node_33",
11612 "id" : 8,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011613 "expression" : {
11614 "type" : "expression",
11615 "value" : {
11616 "op" : "not",
11617 "left" : null,
11618 "right" : {
11619 "type" : "expression",
11620 "value" : {
11621 "op" : "d2b",
11622 "left" : null,
11623 "right" : {
11624 "type" : "field",
11625 "value" : ["scalars", "next_hasReturned_0"]
11626 }
11627 }
11628 }
11629 }
11630 },
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011631 "true_next" : "node_34",
11632 "false_next" : "node_37"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011633 },
11634 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011635 "name" : "node_34",
11636 "id" : 9,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011637 "source_info" : {
11638 "filename" : "include/control/next.p4",
11639 "line" : 228,
11640 "column" : 12,
11641 "source_fragment" : "!hdr.mpls.isValid()"
11642 },
11643 "expression" : {
11644 "type" : "expression",
11645 "value" : {
11646 "op" : "not",
11647 "left" : null,
11648 "right" : {
11649 "type" : "expression",
11650 "value" : {
11651 "op" : "d2b",
11652 "left" : null,
11653 "right" : {
11654 "type" : "field",
11655 "value" : ["mpls", "$valid$"]
11656 }
11657 }
11658 }
11659 }
11660 },
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011661 "true_next" : "node_35",
11662 "false_next" : "node_37"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011663 },
11664 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011665 "name" : "node_35",
11666 "id" : 10,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011667 "source_info" : {
11668 "filename" : "include/control/next.p4",
11669 "line" : 229,
11670 "column" : 15,
11671 "source_fragment" : "hdr.ipv4.isValid()"
11672 },
11673 "expression" : {
11674 "type" : "expression",
11675 "value" : {
11676 "op" : "d2b",
11677 "left" : null,
11678 "right" : {
11679 "type" : "field",
11680 "value" : ["ipv4", "$valid$"]
11681 }
11682 }
11683 },
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011684 "true_next" : "tbl_act_12",
11685 "false_next" : "node_37"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011686 },
11687 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011688 "name" : "node_37",
11689 "id" : 11,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011690 "source_info" : {
11691 "filename" : "include/control/port_counter.p4",
11692 "line" : 27,
11693 "column" : 12,
11694 "source_fragment" : "standard_metadata.egress_spec < 511"
11695 },
11696 "expression" : {
11697 "type" : "expression",
11698 "value" : {
11699 "op" : "<",
11700 "left" : {
11701 "type" : "field",
11702 "value" : ["standard_metadata", "egress_spec"]
11703 },
11704 "right" : {
11705 "type" : "hexstr",
11706 "value" : "0x01ff"
11707 }
11708 }
11709 },
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011710 "true_next" : "tbl_act_13",
11711 "false_next" : "node_39"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011712 },
11713 {
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011714 "name" : "node_39",
11715 "id" : 12,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011716 "source_info" : {
11717 "filename" : "include/control/port_counter.p4",
11718 "line" : 30,
11719 "column" : 12,
11720 "source_fragment" : "standard_metadata.ingress_port < 511"
11721 },
11722 "expression" : {
11723 "type" : "expression",
11724 "value" : {
11725 "op" : "<",
11726 "left" : {
11727 "type" : "field",
11728 "value" : ["standard_metadata", "ingress_port"]
11729 },
11730 "right" : {
11731 "type" : "hexstr",
11732 "value" : "0x01ff"
11733 }
11734 }
11735 },
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011736 "true_next" : "tbl_act_14",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011737 "false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011738 }
11739 ]
11740 },
11741 {
11742 "name" : "egress",
11743 "id" : 1,
11744 "source_info" : {
11745 "filename" : "fabric.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011746 "line" : 79,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011747 "column" : 8,
11748 "source_fragment" : "FabricEgress"
11749 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011750 "init_table" : "node_44",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011751 "tables" : [
11752 {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070011753 "name" : "tbl_pkt_io_egress_pop_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011754 "id" : 27,
11755 "key" : [],
11756 "match_type" : "exact",
11757 "type" : "simple",
11758 "max_size" : 1024,
11759 "with_counters" : false,
11760 "support_timeout" : false,
11761 "direct_meters" : null,
11762 "action_ids" : [91],
11763 "actions" : ["FabricEgress.pkt_io_egress.pop_vlan"],
11764 "base_default_next" : "node_48",
11765 "next_tables" : {
11766 "FabricEgress.pkt_io_egress.pop_vlan" : "node_48"
11767 },
11768 "default_entry" : {
11769 "action_id" : 91,
11770 "action_const" : true,
11771 "action_data" : [],
11772 "action_entry_const" : true
11773 }
11774 },
11775 {
11776 "name" : "tbl_drop_now",
11777 "id" : 28,
11778 "key" : [],
11779 "match_type" : "exact",
11780 "type" : "simple",
11781 "max_size" : 1024,
11782 "with_counters" : false,
11783 "support_timeout" : false,
11784 "direct_meters" : null,
11785 "action_ids" : [55],
11786 "actions" : ["drop_now"],
11787 "base_default_next" : "tbl_act_15",
11788 "next_tables" : {
11789 "drop_now" : "tbl_act_15"
11790 },
11791 "default_entry" : {
11792 "action_id" : 55,
11793 "action_const" : true,
11794 "action_data" : [],
11795 "action_entry_const" : true
11796 }
11797 },
11798 {
11799 "name" : "tbl_act_15",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070011800 "id" : 29,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011801 "key" : [],
11802 "match_type" : "exact",
11803 "type" : "simple",
11804 "max_size" : 1024,
11805 "with_counters" : false,
11806 "support_timeout" : false,
11807 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011808 "action_ids" : [93],
11809 "actions" : ["act_15"],
11810 "base_default_next" : null,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070011811 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011812 "act_15" : null
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070011813 },
11814 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011815 "action_id" : 93,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070011816 "action_const" : true,
11817 "action_data" : [],
11818 "action_entry_const" : true
11819 }
11820 },
11821 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011822 "name" : "tbl_drop_now_0",
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070011823 "id" : 30,
11824 "key" : [],
11825 "match_type" : "exact",
11826 "type" : "simple",
11827 "max_size" : 1024,
11828 "with_counters" : false,
11829 "support_timeout" : false,
11830 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011831 "action_ids" : [56],
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070011832 "actions" : ["drop_now"],
11833 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
11834 "next_tables" : {
11835 "drop_now" : "FabricEgress.egress_next.egress_vlan"
11836 },
11837 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011838 "action_id" : 56,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070011839 "action_const" : true,
11840 "action_data" : [],
11841 "action_entry_const" : true
11842 }
11843 },
11844 {
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011845 "name" : "FabricEgress.egress_next.egress_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011846 "id" : 31,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011847 "source_info" : {
11848 "filename" : "include/control/next.p4",
11849 "line" : 258,
11850 "column" : 10,
11851 "source_fragment" : "egress_vlan"
11852 },
11853 "key" : [
11854 {
11855 "match_type" : "exact",
11856 "name" : "hdr.vlan_tag.vlan_id",
11857 "target" : ["vlan_tag", "vlan_id"],
11858 "mask" : null
11859 },
11860 {
11861 "match_type" : "exact",
11862 "name" : "standard_metadata.egress_port",
11863 "target" : ["standard_metadata", "egress_port"],
11864 "mask" : null
11865 }
11866 ],
11867 "match_type" : "exact",
11868 "type" : "simple",
11869 "max_size" : 1024,
11870 "with_counters" : true,
11871 "support_timeout" : false,
11872 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011873 "action_ids" : [92, 54],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011874 "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011875 "base_default_next" : "node_54",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011876 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011877 "FabricEgress.egress_next.pop_vlan" : "node_54",
11878 "nop" : "node_54"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011879 },
11880 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011881 "action_id" : 54,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011882 "action_const" : false,
11883 "action_data" : [],
11884 "action_entry_const" : false
11885 }
11886 },
11887 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011888 "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
11889 "id" : 32,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011890 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011891 "filename" : "include/int/int_source.p4",
11892 "line" : 65,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011893 "column" : 10,
11894 "source_fragment" : "tb_int_source"
11895 },
11896 "key" : [
11897 {
11898 "match_type" : "ternary",
11899 "name" : "hdr.ipv4.src_addr",
11900 "target" : ["ipv4", "src_addr"],
11901 "mask" : null
11902 },
11903 {
11904 "match_type" : "ternary",
11905 "name" : "hdr.ipv4.dst_addr",
11906 "target" : ["ipv4", "dst_addr"],
11907 "mask" : null
11908 },
11909 {
11910 "match_type" : "ternary",
11911 "name" : "fabric_metadata.l4_src_port",
11912 "target" : ["scalars", "fabric_metadata_t.l4_src_port"],
11913 "mask" : null
11914 },
11915 {
11916 "match_type" : "ternary",
11917 "name" : "fabric_metadata.l4_dst_port",
11918 "target" : ["scalars", "fabric_metadata_t.l4_dst_port"],
11919 "mask" : null
11920 }
11921 ],
11922 "match_type" : "ternary",
11923 "type" : "simple",
11924 "max_size" : 1024,
11925 "with_counters" : true,
11926 "support_timeout" : false,
11927 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011928 "action_ids" : [57, 50],
11929 "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "NoAction"],
11930 "base_default_next" : "node_57",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011931 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011932 "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_57",
11933 "NoAction" : "node_57"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011934 },
11935 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011936 "action_id" : 50,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011937 "action_const" : false,
11938 "action_data" : [],
11939 "action_entry_const" : false
11940 }
11941 },
11942 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011943 "name" : "tbl_act_16",
11944 "id" : 33,
11945 "key" : [],
11946 "match_type" : "exact",
11947 "type" : "simple",
11948 "max_size" : 1024,
11949 "with_counters" : false,
11950 "support_timeout" : false,
11951 "direct_meters" : null,
11952 "action_ids" : [94],
11953 "actions" : ["act_16"],
11954 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
11955 "next_tables" : {
11956 "act_16" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
11957 },
11958 "default_entry" : {
11959 "action_id" : 94,
11960 "action_const" : true,
11961 "action_data" : [],
11962 "action_entry_const" : true
11963 }
11964 },
11965 {
11966 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
11967 "id" : 34,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011968 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011969 "filename" : "include/int/int_transit.p4",
11970 "line" : 271,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011971 "column" : 10,
11972 "source_fragment" : "tb_int_insert"
11973 },
11974 "key" : [],
11975 "match_type" : "exact",
11976 "type" : "simple",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011977 "max_size" : 1024,
11978 "with_counters" : false,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011979 "support_timeout" : false,
11980 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011981 "action_ids" : [58, 51],
11982 "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "NoAction"],
11983 "base_default_next" : "node_60",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011984 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011985 "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_60",
11986 "NoAction" : "node_60"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011987 },
11988 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011989 "action_id" : 51,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090011990 "action_const" : false,
11991 "action_data" : [],
11992 "action_entry_const" : false
11993 }
11994 },
11995 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070011996 "name" : "tbl_act_17",
11997 "id" : 35,
11998 "key" : [],
11999 "match_type" : "exact",
12000 "type" : "simple",
12001 "max_size" : 1024,
12002 "with_counters" : false,
12003 "support_timeout" : false,
12004 "direct_meters" : null,
12005 "action_ids" : [95],
12006 "actions" : ["act_17"],
12007 "base_default_next" : "node_62",
12008 "next_tables" : {
12009 "act_17" : "node_62"
12010 },
12011 "default_entry" : {
12012 "action_id" : 95,
12013 "action_const" : true,
12014 "action_data" : [],
12015 "action_entry_const" : true
12016 }
12017 },
12018 {
12019 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070012020 "id" : 36,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012021 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012022 "filename" : "include/int/int_transit.p4",
12023 "line" : 280,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012024 "column" : 10,
12025 "source_fragment" : "tb_int_inst_0003"
12026 },
12027 "key" : [
12028 {
12029 "match_type" : "exact",
12030 "name" : "hdr.int_header.instruction_mask_0003",
12031 "target" : ["int_header", "instruction_mask_0003"],
12032 "mask" : null
12033 }
12034 ],
12035 "match_type" : "exact",
12036 "type" : "simple",
12037 "max_size" : 16,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012038 "with_counters" : false,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012039 "support_timeout" : false,
12040 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012041 "action_ids" : [59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 52],
12042 "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"],
12043 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012044 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012045 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12046 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12047 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12048 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12049 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12050 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12051 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12052 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12053 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12054 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12055 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12056 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12057 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12058 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12059 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12060 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
12061 "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012062 },
12063 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012064 "action_id" : 52,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012065 "action_const" : false,
12066 "action_data" : [],
12067 "action_entry_const" : false
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012068 },
12069 "entries" : [
12070 {
12071 "match_key" : [
12072 {
12073 "match_type" : "exact",
12074 "key" : "0x00"
12075 }
12076 ],
12077 "action_entry" : {
12078 "action_id" : 59,
12079 "action_data" : []
12080 },
12081 "priority" : 1
12082 },
12083 {
12084 "match_key" : [
12085 {
12086 "match_type" : "exact",
12087 "key" : "0x01"
12088 }
12089 ],
12090 "action_entry" : {
12091 "action_id" : 60,
12092 "action_data" : []
12093 },
12094 "priority" : 2
12095 },
12096 {
12097 "match_key" : [
12098 {
12099 "match_type" : "exact",
12100 "key" : "0x02"
12101 }
12102 ],
12103 "action_entry" : {
12104 "action_id" : 61,
12105 "action_data" : []
12106 },
12107 "priority" : 3
12108 },
12109 {
12110 "match_key" : [
12111 {
12112 "match_type" : "exact",
12113 "key" : "0x03"
12114 }
12115 ],
12116 "action_entry" : {
12117 "action_id" : 62,
12118 "action_data" : []
12119 },
12120 "priority" : 4
12121 },
12122 {
12123 "match_key" : [
12124 {
12125 "match_type" : "exact",
12126 "key" : "0x04"
12127 }
12128 ],
12129 "action_entry" : {
12130 "action_id" : 63,
12131 "action_data" : []
12132 },
12133 "priority" : 5
12134 },
12135 {
12136 "match_key" : [
12137 {
12138 "match_type" : "exact",
12139 "key" : "0x05"
12140 }
12141 ],
12142 "action_entry" : {
12143 "action_id" : 64,
12144 "action_data" : []
12145 },
12146 "priority" : 6
12147 },
12148 {
12149 "match_key" : [
12150 {
12151 "match_type" : "exact",
12152 "key" : "0x06"
12153 }
12154 ],
12155 "action_entry" : {
12156 "action_id" : 65,
12157 "action_data" : []
12158 },
12159 "priority" : 7
12160 },
12161 {
12162 "match_key" : [
12163 {
12164 "match_type" : "exact",
12165 "key" : "0x07"
12166 }
12167 ],
12168 "action_entry" : {
12169 "action_id" : 66,
12170 "action_data" : []
12171 },
12172 "priority" : 8
12173 },
12174 {
12175 "match_key" : [
12176 {
12177 "match_type" : "exact",
12178 "key" : "0x08"
12179 }
12180 ],
12181 "action_entry" : {
12182 "action_id" : 67,
12183 "action_data" : []
12184 },
12185 "priority" : 9
12186 },
12187 {
12188 "match_key" : [
12189 {
12190 "match_type" : "exact",
12191 "key" : "0x09"
12192 }
12193 ],
12194 "action_entry" : {
12195 "action_id" : 68,
12196 "action_data" : []
12197 },
12198 "priority" : 10
12199 },
12200 {
12201 "match_key" : [
12202 {
12203 "match_type" : "exact",
12204 "key" : "0x0a"
12205 }
12206 ],
12207 "action_entry" : {
12208 "action_id" : 69,
12209 "action_data" : []
12210 },
12211 "priority" : 11
12212 },
12213 {
12214 "match_key" : [
12215 {
12216 "match_type" : "exact",
12217 "key" : "0x0b"
12218 }
12219 ],
12220 "action_entry" : {
12221 "action_id" : 70,
12222 "action_data" : []
12223 },
12224 "priority" : 12
12225 },
12226 {
12227 "match_key" : [
12228 {
12229 "match_type" : "exact",
12230 "key" : "0x0c"
12231 }
12232 ],
12233 "action_entry" : {
12234 "action_id" : 71,
12235 "action_data" : []
12236 },
12237 "priority" : 13
12238 },
12239 {
12240 "match_key" : [
12241 {
12242 "match_type" : "exact",
12243 "key" : "0x0d"
12244 }
12245 ],
12246 "action_entry" : {
12247 "action_id" : 72,
12248 "action_data" : []
12249 },
12250 "priority" : 14
12251 },
12252 {
12253 "match_key" : [
12254 {
12255 "match_type" : "exact",
12256 "key" : "0x0e"
12257 }
12258 ],
12259 "action_entry" : {
12260 "action_id" : 73,
12261 "action_data" : []
12262 },
12263 "priority" : 15
12264 },
12265 {
12266 "match_key" : [
12267 {
12268 "match_type" : "exact",
12269 "key" : "0x0f"
12270 }
12271 ],
12272 "action_entry" : {
12273 "action_id" : 74,
12274 "action_data" : []
12275 },
12276 "priority" : 16
12277 }
12278 ]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012279 },
12280 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012281 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070012282 "id" : 37,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012283 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012284 "filename" : "include/int/int_transit.p4",
12285 "line" : 324,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012286 "column" : 10,
12287 "source_fragment" : "tb_int_inst_0407"
12288 },
12289 "key" : [
12290 {
12291 "match_type" : "exact",
12292 "name" : "hdr.int_header.instruction_mask_0407",
12293 "target" : ["int_header", "instruction_mask_0407"],
12294 "mask" : null
12295 }
12296 ],
12297 "match_type" : "exact",
12298 "type" : "simple",
12299 "max_size" : 16,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012300 "with_counters" : false,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012301 "support_timeout" : false,
12302 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012303 "action_ids" : [75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 53],
12304 "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"],
12305 "base_default_next" : "tbl_act_18",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012306 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012307 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_18",
12308 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_18",
12309 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_18",
12310 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_18",
12311 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_18",
12312 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_18",
12313 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_18",
12314 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_18",
12315 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_18",
12316 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_18",
12317 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_18",
12318 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_18",
12319 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_18",
12320 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_18",
12321 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_18",
12322 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_18",
12323 "NoAction" : "tbl_act_18"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012324 },
12325 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012326 "action_id" : 53,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012327 "action_const" : false,
12328 "action_data" : [],
12329 "action_entry_const" : false
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012330 },
12331 "entries" : [
12332 {
12333 "match_key" : [
12334 {
12335 "match_type" : "exact",
12336 "key" : "0x00"
12337 }
12338 ],
12339 "action_entry" : {
12340 "action_id" : 75,
12341 "action_data" : []
12342 },
12343 "priority" : 1
12344 },
12345 {
12346 "match_key" : [
12347 {
12348 "match_type" : "exact",
12349 "key" : "0x01"
12350 }
12351 ],
12352 "action_entry" : {
12353 "action_id" : 76,
12354 "action_data" : []
12355 },
12356 "priority" : 2
12357 },
12358 {
12359 "match_key" : [
12360 {
12361 "match_type" : "exact",
12362 "key" : "0x02"
12363 }
12364 ],
12365 "action_entry" : {
12366 "action_id" : 77,
12367 "action_data" : []
12368 },
12369 "priority" : 3
12370 },
12371 {
12372 "match_key" : [
12373 {
12374 "match_type" : "exact",
12375 "key" : "0x03"
12376 }
12377 ],
12378 "action_entry" : {
12379 "action_id" : 78,
12380 "action_data" : []
12381 },
12382 "priority" : 4
12383 },
12384 {
12385 "match_key" : [
12386 {
12387 "match_type" : "exact",
12388 "key" : "0x04"
12389 }
12390 ],
12391 "action_entry" : {
12392 "action_id" : 79,
12393 "action_data" : []
12394 },
12395 "priority" : 5
12396 },
12397 {
12398 "match_key" : [
12399 {
12400 "match_type" : "exact",
12401 "key" : "0x05"
12402 }
12403 ],
12404 "action_entry" : {
12405 "action_id" : 80,
12406 "action_data" : []
12407 },
12408 "priority" : 6
12409 },
12410 {
12411 "match_key" : [
12412 {
12413 "match_type" : "exact",
12414 "key" : "0x06"
12415 }
12416 ],
12417 "action_entry" : {
12418 "action_id" : 81,
12419 "action_data" : []
12420 },
12421 "priority" : 7
12422 },
12423 {
12424 "match_key" : [
12425 {
12426 "match_type" : "exact",
12427 "key" : "0x07"
12428 }
12429 ],
12430 "action_entry" : {
12431 "action_id" : 82,
12432 "action_data" : []
12433 },
12434 "priority" : 8
12435 },
12436 {
12437 "match_key" : [
12438 {
12439 "match_type" : "exact",
12440 "key" : "0x08"
12441 }
12442 ],
12443 "action_entry" : {
12444 "action_id" : 83,
12445 "action_data" : []
12446 },
12447 "priority" : 9
12448 },
12449 {
12450 "match_key" : [
12451 {
12452 "match_type" : "exact",
12453 "key" : "0x09"
12454 }
12455 ],
12456 "action_entry" : {
12457 "action_id" : 84,
12458 "action_data" : []
12459 },
12460 "priority" : 10
12461 },
12462 {
12463 "match_key" : [
12464 {
12465 "match_type" : "exact",
12466 "key" : "0x0a"
12467 }
12468 ],
12469 "action_entry" : {
12470 "action_id" : 85,
12471 "action_data" : []
12472 },
12473 "priority" : 11
12474 },
12475 {
12476 "match_key" : [
12477 {
12478 "match_type" : "exact",
12479 "key" : "0x0b"
12480 }
12481 ],
12482 "action_entry" : {
12483 "action_id" : 86,
12484 "action_data" : []
12485 },
12486 "priority" : 12
12487 },
12488 {
12489 "match_key" : [
12490 {
12491 "match_type" : "exact",
12492 "key" : "0x0c"
12493 }
12494 ],
12495 "action_entry" : {
12496 "action_id" : 87,
12497 "action_data" : []
12498 },
12499 "priority" : 13
12500 },
12501 {
12502 "match_key" : [
12503 {
12504 "match_type" : "exact",
12505 "key" : "0x0d"
12506 }
12507 ],
12508 "action_entry" : {
12509 "action_id" : 88,
12510 "action_data" : []
12511 },
12512 "priority" : 14
12513 },
12514 {
12515 "match_key" : [
12516 {
12517 "match_type" : "exact",
12518 "key" : "0x0e"
12519 }
12520 ],
12521 "action_entry" : {
12522 "action_id" : 89,
12523 "action_data" : []
12524 },
12525 "priority" : 15
12526 },
12527 {
12528 "match_key" : [
12529 {
12530 "match_type" : "exact",
12531 "key" : "0x0f"
12532 }
12533 ],
12534 "action_entry" : {
12535 "action_id" : 90,
12536 "action_data" : []
12537 },
12538 "priority" : 16
12539 }
12540 ]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012541 },
12542 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012543 "name" : "tbl_act_18",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012544 "id" : 38,
12545 "key" : [],
12546 "match_type" : "exact",
12547 "type" : "simple",
12548 "max_size" : 1024,
12549 "with_counters" : false,
12550 "support_timeout" : false,
12551 "direct_meters" : null,
Charles Chancd03f072018-08-31 17:46:37 -070012552 "action_ids" : [97],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012553 "actions" : ["act_19"],
12554 "base_default_next" : "node_66",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070012555 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012556 "act_19" : "node_66"
Carmelo Cascone8a715f82018-08-20 23:16:27 -070012557 },
12558 "default_entry" : {
Charles Chancd03f072018-08-31 17:46:37 -070012559 "action_id" : 97,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070012560 "action_const" : true,
12561 "action_data" : [],
12562 "action_entry_const" : true
12563 }
12564 },
12565 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012566 "name" : "tbl_act_19",
12567 "id" : 39,
12568 "key" : [],
12569 "match_type" : "exact",
12570 "type" : "simple",
12571 "max_size" : 1024,
12572 "with_counters" : false,
12573 "support_timeout" : false,
12574 "direct_meters" : null,
12575 "action_ids" : [96],
12576 "actions" : ["act_18"],
12577 "base_default_next" : "node_68",
12578 "next_tables" : {
12579 "act_18" : "node_68"
12580 },
12581 "default_entry" : {
12582 "action_id" : 96,
12583 "action_const" : true,
12584 "action_data" : [],
12585 "action_entry_const" : true
12586 }
12587 },
12588 {
12589 "name" : "tbl_act_20",
12590 "id" : 40,
Carmelo Cascone8a715f82018-08-20 23:16:27 -070012591 "key" : [],
12592 "match_type" : "exact",
12593 "type" : "simple",
12594 "max_size" : 1024,
12595 "with_counters" : false,
12596 "support_timeout" : false,
12597 "direct_meters" : null,
Charles Chancd03f072018-08-31 17:46:37 -070012598 "action_ids" : [98],
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012599 "actions" : ["act_20"],
12600 "base_default_next" : "node_70",
Carmelo Cascone8a715f82018-08-20 23:16:27 -070012601 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012602 "act_20" : "node_70"
Carmelo Cascone8a715f82018-08-20 23:16:27 -070012603 },
12604 "default_entry" : {
Charles Chancd03f072018-08-31 17:46:37 -070012605 "action_id" : 98,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012606 "action_const" : true,
12607 "action_data" : [],
12608 "action_entry_const" : true
12609 }
12610 },
12611 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012612 "name" : "tbl_act_21",
12613 "id" : 41,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012614 "key" : [],
12615 "match_type" : "exact",
12616 "type" : "simple",
12617 "max_size" : 1024,
12618 "with_counters" : false,
12619 "support_timeout" : false,
12620 "direct_meters" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012621 "action_ids" : [99],
12622 "actions" : ["act_21"],
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012623 "base_default_next" : null,
12624 "next_tables" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012625 "act_21" : null
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012626 },
12627 "default_entry" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012628 "action_id" : 99,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012629 "action_const" : true,
12630 "action_data" : [],
12631 "action_entry_const" : true
12632 }
12633 }
12634 ],
12635 "action_profiles" : [],
12636 "conditionals" : [
12637 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012638 "name" : "node_44",
12639 "id" : 13,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012640 "source_info" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012641 "filename" : "include/control/packetio.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012642 "line" : 44,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012643 "column" : 12,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012644 "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012645 },
12646 "expression" : {
12647 "type" : "expression",
12648 "value" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012649 "op" : "==",
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012650 "left" : {
12651 "type" : "expression",
12652 "value" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012653 "op" : "d2b",
12654 "left" : null,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012655 "right" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012656 "type" : "field",
12657 "value" : ["scalars", "fabric_metadata_t.is_controller_packet_out"]
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012658 }
12659 }
12660 },
12661 "right" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012662 "type" : "bool",
12663 "value" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012664 }
12665 }
12666 },
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012667 "true_next" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012668 "false_next" : "node_45"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012669 },
12670 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012671 "name" : "node_45",
12672 "id" : 14,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012673 "source_info" : {
12674 "filename" : "include/control/packetio.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012675 "line" : 48,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012676 "column" : 12,
12677 "source_fragment" : "standard_metadata.egress_port == 255"
12678 },
12679 "expression" : {
12680 "type" : "expression",
12681 "value" : {
12682 "op" : "==",
12683 "left" : {
12684 "type" : "field",
12685 "value" : ["standard_metadata", "egress_port"]
12686 },
12687 "right" : {
12688 "type" : "hexstr",
12689 "value" : "0x00ff"
12690 }
12691 }
12692 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012693 "true_next" : "node_46",
12694 "false_next" : "node_51"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012695 },
12696 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012697 "name" : "node_46",
12698 "id" : 15,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012699 "source_info" : {
12700 "filename" : "include/control/packetio.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012701 "line" : 49,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012702 "column" : 16,
12703 "source_fragment" : "hdr.vlan_tag.isValid() && fabric_metadata.pop_vlan_when_packet_in == true"
12704 },
12705 "expression" : {
12706 "type" : "expression",
12707 "value" : {
12708 "op" : "and",
12709 "left" : {
12710 "type" : "expression",
12711 "value" : {
12712 "op" : "d2b",
12713 "left" : null,
12714 "right" : {
12715 "type" : "field",
12716 "value" : ["vlan_tag", "$valid$"]
12717 }
12718 }
12719 },
12720 "right" : {
12721 "type" : "expression",
12722 "value" : {
12723 "op" : "==",
12724 "left" : {
12725 "type" : "expression",
12726 "value" : {
12727 "op" : "d2b",
12728 "left" : null,
12729 "right" : {
12730 "type" : "field",
12731 "value" : ["scalars", "fabric_metadata_t.pop_vlan_when_packet_in"]
12732 }
12733 }
12734 },
12735 "right" : {
12736 "type" : "bool",
12737 "value" : true
12738 }
12739 }
12740 }
12741 }
12742 },
12743 "true_next" : "tbl_pkt_io_egress_pop_vlan",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012744 "false_next" : "node_48"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012745 },
12746 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012747 "name" : "node_48",
12748 "id" : 16,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012749 "source_info" : {
12750 "filename" : "include/control/packetio.p4",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012751 "line" : 52,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012752 "column" : 16,
12753 "source_fragment" : "fabric_metadata.is_multicast == true && ..."
12754 },
12755 "expression" : {
12756 "type" : "expression",
12757 "value" : {
12758 "op" : "and",
12759 "left" : {
12760 "type" : "expression",
12761 "value" : {
12762 "op" : "==",
12763 "left" : {
12764 "type" : "expression",
12765 "value" : {
12766 "op" : "d2b",
12767 "left" : null,
12768 "right" : {
12769 "type" : "field",
12770 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
12771 }
12772 }
12773 },
12774 "right" : {
12775 "type" : "bool",
12776 "value" : true
12777 }
12778 }
12779 },
12780 "right" : {
12781 "type" : "expression",
12782 "value" : {
12783 "op" : "==",
12784 "left" : {
12785 "type" : "expression",
12786 "value" : {
12787 "op" : "d2b",
12788 "left" : null,
12789 "right" : {
12790 "type" : "field",
12791 "value" : ["scalars", "fabric_metadata_t.clone_to_cpu"]
12792 }
12793 }
12794 },
12795 "right" : {
12796 "type" : "bool",
12797 "value" : false
12798 }
12799 }
12800 }
12801 }
12802 },
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012803 "true_next" : "tbl_drop_now",
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012804 "false_next" : "tbl_act_15"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012805 },
12806 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012807 "name" : "node_51",
12808 "id" : 17,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012809 "source_info" : {
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012810 "filename" : "include/control/next.p4",
12811 "line" : 272,
12812 "column" : 12,
12813 "source_fragment" : "fabric_metadata.is_multicast == true ..."
12814 },
12815 "expression" : {
12816 "type" : "expression",
12817 "value" : {
12818 "op" : "and",
12819 "left" : {
12820 "type" : "expression",
12821 "value" : {
12822 "op" : "==",
12823 "left" : {
12824 "type" : "expression",
12825 "value" : {
12826 "op" : "d2b",
12827 "left" : null,
12828 "right" : {
12829 "type" : "field",
12830 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
12831 }
12832 }
12833 },
12834 "right" : {
12835 "type" : "bool",
12836 "value" : true
12837 }
12838 }
12839 },
12840 "right" : {
12841 "type" : "expression",
12842 "value" : {
12843 "op" : "==",
12844 "left" : {
12845 "type" : "field",
12846 "value" : ["standard_metadata", "ingress_port"]
12847 },
12848 "right" : {
12849 "type" : "field",
12850 "value" : ["standard_metadata", "egress_port"]
12851 }
12852 }
12853 }
12854 }
12855 },
12856 "true_next" : "tbl_drop_now_0",
12857 "false_next" : "FabricEgress.egress_next.egress_vlan"
12858 },
12859 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012860 "name" : "node_54",
12861 "id" : 18,
Carmelo Cascone8d2d1b22018-08-27 18:33:53 -070012862 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012863 "filename" : "include/int/int_main.p4",
12864 "line" : 98,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012865 "column" : 12,
12866 "source_fragment" : "standard_metadata.ingress_port != 255 && ..."
12867 },
12868 "expression" : {
12869 "type" : "expression",
12870 "value" : {
12871 "op" : "and",
12872 "left" : {
12873 "type" : "expression",
12874 "value" : {
12875 "op" : "and",
12876 "left" : {
12877 "type" : "expression",
12878 "value" : {
12879 "op" : "!=",
12880 "left" : {
12881 "type" : "field",
12882 "value" : ["standard_metadata", "ingress_port"]
12883 },
12884 "right" : {
12885 "type" : "hexstr",
12886 "value" : "0x00ff"
12887 }
12888 }
12889 },
12890 "right" : {
12891 "type" : "expression",
12892 "value" : {
12893 "op" : "!=",
12894 "left" : {
12895 "type" : "field",
12896 "value" : ["standard_metadata", "egress_port"]
12897 },
12898 "right" : {
12899 "type" : "hexstr",
12900 "value" : "0x00ff"
12901 }
12902 }
12903 }
12904 }
12905 },
12906 "right" : {
12907 "type" : "expression",
12908 "value" : {
12909 "op" : "or",
12910 "left" : {
12911 "type" : "expression",
12912 "value" : {
12913 "op" : "d2b",
12914 "left" : null,
12915 "right" : {
12916 "type" : "field",
12917 "value" : ["udp", "$valid$"]
12918 }
12919 }
12920 },
12921 "right" : {
12922 "type" : "expression",
12923 "value" : {
12924 "op" : "d2b",
12925 "left" : null,
12926 "right" : {
12927 "type" : "field",
12928 "value" : ["tcp", "$valid$"]
12929 }
12930 }
12931 }
12932 }
12933 }
12934 }
12935 },
12936 "false_next" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012937 "true_next" : "node_55"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012938 },
12939 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012940 "name" : "node_55",
12941 "id" : 19,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012942 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012943 "filename" : "include/int/int_main.p4",
12944 "line" : 102,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012945 "column" : 16,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012946 "source_fragment" : "fabric_metadata.int_meta.source == true"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012947 },
12948 "expression" : {
12949 "type" : "expression",
12950 "value" : {
12951 "op" : "==",
12952 "left" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012953 "type" : "expression",
12954 "value" : {
12955 "op" : "d2b",
12956 "left" : null,
12957 "right" : {
12958 "type" : "field",
12959 "value" : ["userMetadata.int_meta", "source"]
12960 }
12961 }
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012962 },
12963 "right" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012964 "type" : "bool",
12965 "value" : true
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012966 }
12967 }
12968 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012969 "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
12970 "false_next" : "node_57"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012971 },
12972 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012973 "name" : "node_57",
12974 "id" : 20,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012975 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012976 "filename" : "include/int/int_main.p4",
12977 "line" : 106,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012978 "column" : 15,
12979 "source_fragment" : "hdr.int_header.isValid()"
12980 },
12981 "expression" : {
12982 "type" : "expression",
12983 "value" : {
12984 "op" : "d2b",
12985 "left" : null,
12986 "right" : {
12987 "type" : "field",
12988 "value" : ["int_header", "$valid$"]
12989 }
12990 }
12991 },
12992 "false_next" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012993 "true_next" : "tbl_act_16"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012994 },
12995 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012996 "name" : "node_60",
12997 "id" : 21,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090012998 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070012999 "filename" : "include/int/int_transit.p4",
13000 "line" : 369,
13001 "column" : 12,
13002 "source_fragment" : "fmeta.int_meta.transit == false"
13003 },
13004 "expression" : {
13005 "type" : "expression",
13006 "value" : {
13007 "op" : "==",
13008 "left" : {
13009 "type" : "expression",
13010 "value" : {
13011 "op" : "d2b",
13012 "left" : null,
13013 "right" : {
13014 "type" : "field",
13015 "value" : ["userMetadata.int_meta", "transit"]
13016 }
13017 }
13018 },
13019 "right" : {
13020 "type" : "bool",
13021 "value" : false
13022 }
13023 }
13024 },
13025 "true_next" : "tbl_act_17",
13026 "false_next" : "node_62"
13027 },
13028 {
13029 "name" : "node_62",
13030 "id" : 22,
13031 "expression" : {
13032 "type" : "expression",
13033 "value" : {
13034 "op" : "not",
13035 "left" : null,
13036 "right" : {
13037 "type" : "expression",
13038 "value" : {
13039 "op" : "d2b",
13040 "left" : null,
13041 "right" : {
13042 "type" : "field",
13043 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned_0"]
13044 }
13045 }
13046 }
13047 }
13048 },
13049 "false_next" : null,
13050 "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
13051 },
13052 {
13053 "name" : "node_66",
13054 "id" : 23,
13055 "source_info" : {
13056 "filename" : "include/int/int_transit.p4",
13057 "line" : 377,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090013058 "column" : 12,
13059 "source_fragment" : "hdr.ipv4.isValid()"
13060 },
13061 "expression" : {
13062 "type" : "expression",
13063 "value" : {
13064 "op" : "d2b",
13065 "left" : null,
13066 "right" : {
13067 "type" : "field",
13068 "value" : ["ipv4", "$valid$"]
13069 }
13070 }
13071 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013072 "true_next" : "tbl_act_19",
13073 "false_next" : "node_68"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090013074 },
13075 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013076 "name" : "node_68",
13077 "id" : 24,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090013078 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013079 "filename" : "include/int/int_transit.p4",
13080 "line" : 380,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090013081 "column" : 12,
13082 "source_fragment" : "hdr.udp.isValid()"
13083 },
13084 "expression" : {
13085 "type" : "expression",
13086 "value" : {
13087 "op" : "d2b",
13088 "left" : null,
13089 "right" : {
13090 "type" : "field",
13091 "value" : ["udp", "$valid$"]
13092 }
13093 }
13094 },
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013095 "true_next" : "tbl_act_20",
13096 "false_next" : "node_70"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090013097 },
13098 {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013099 "name" : "node_70",
13100 "id" : 25,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090013101 "source_info" : {
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013102 "filename" : "include/int/int_transit.p4",
13103 "line" : 383,
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090013104 "column" : 12,
13105 "source_fragment" : "hdr.intl4_shim.isValid()"
13106 },
13107 "expression" : {
13108 "type" : "expression",
13109 "value" : {
13110 "op" : "d2b",
13111 "left" : null,
13112 "right" : {
13113 "type" : "field",
13114 "value" : ["intl4_shim", "$valid$"]
13115 }
13116 }
13117 },
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090013118 "false_next" : null,
Carmelo Cascone79a3a312018-08-16 17:14:43 -070013119 "true_next" : "tbl_act_21"
Jonghwan Hyuned478dc2018-08-06 15:35:18 +090013120 }
13121 ]
13122 }
13123 ],
13124 "checksums" : [
13125 {
13126 "name" : "cksum",
13127 "id" : 0,
13128 "target" : ["ipv4", "hdr_checksum"],
13129 "type" : "generic",
13130 "calculation" : "calc",
13131 "if_cond" : {
13132 "type" : "expression",
13133 "value" : {
13134 "op" : "d2b",
13135 "left" : null,
13136 "right" : {
13137 "type" : "field",
13138 "value" : ["ipv4", "$valid$"]
13139 }
13140 }
13141 }
13142 },
13143 {
13144 "name" : "cksum_0",
13145 "id" : 1,
13146 "target" : ["ipv4", "hdr_checksum"],
13147 "type" : "generic",
13148 "calculation" : "calc_0",
13149 "if_cond" : {
13150 "type" : "expression",
13151 "value" : {
13152 "op" : "d2b",
13153 "left" : null,
13154 "right" : {
13155 "type" : "field",
13156 "value" : ["ipv4", "$valid$"]
13157 }
13158 }
13159 }
13160 }
13161 ],
13162 "force_arith" : [],
13163 "extern_instances" : [],
13164 "field_aliases" : [
13165 [
13166 "queueing_metadata.enq_timestamp",
13167 ["standard_metadata", "enq_timestamp"]
13168 ],
13169 [
13170 "queueing_metadata.enq_qdepth",
13171 ["standard_metadata", "enq_qdepth"]
13172 ],
13173 [
13174 "queueing_metadata.deq_timedelta",
13175 ["standard_metadata", "deq_timedelta"]
13176 ],
13177 [
13178 "queueing_metadata.deq_qdepth",
13179 ["standard_metadata", "deq_qdepth"]
13180 ],
13181 [
13182 "intrinsic_metadata.ingress_global_timestamp",
13183 ["standard_metadata", "ingress_global_timestamp"]
13184 ],
13185 [
13186 "intrinsic_metadata.egress_global_timestamp",
13187 ["standard_metadata", "egress_global_timestamp"]
13188 ],
13189 [
13190 "intrinsic_metadata.lf_field_list",
13191 ["standard_metadata", "lf_field_list"]
13192 ],
13193 [
13194 "intrinsic_metadata.mcast_grp",
13195 ["standard_metadata", "mcast_grp"]
13196 ],
13197 [
13198 "intrinsic_metadata.resubmit_flag",
13199 ["standard_metadata", "resubmit_flag"]
13200 ],
13201 [
13202 "intrinsic_metadata.egress_rid",
13203 ["standard_metadata", "egress_rid"]
13204 ],
13205 [
13206 "intrinsic_metadata.recirculate_flag",
13207 ["standard_metadata", "recirculate_flag"]
13208 ]
13209 ],
13210 "program" : "fabric.p4",
13211 "__meta__" : {
13212 "version" : [2, 18],
13213 "compiler" : "https://github.com/p4lang/p4c"
13214 }
13215}