blob: 5672dc8e16123c022a8118da56987ae88e5064f0 [file] [log] [blame]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001{
2 "header_types" : [
3 {
4 "name" : "scalars_0",
5 "id" : 0,
6 "fields" : [
7 ["last_ipv4_dscp", 6, false],
8 ["tmp", 4, false],
9 ["tmp_0", 8, false],
10 ["tmp_1", 32, false],
11 ["tmp_2", 32, false],
12 ["spgw_ingress_tmp_1", 1, false],
13 ["spgw_ingress_tmp_2", 1, false],
14 ["filtering_tmp_0", 1, false],
15 ["next_tmp_2", 1, false],
16 ["next_tmp_3", 1, false],
17 ["next_tmp_4", 1, false],
18 ["spgw_normalizer_hasReturned_0", 1, false],
19 ["spgw_ingress_hasReturned_0", 1, false],
20 ["next_hasReturned_0", 1, false],
21 ["process_int_main_process_int_transit_hasReturned_0", 1, false],
22 ["fabric_metadata_t.fwd_type", 3, false],
23 ["fabric_metadata_t.next_id", 32, false],
24 ["fabric_metadata_t.pop_vlan_when_packet_in", 1, false],
25 ["fabric_metadata_t.is_multicast", 1, false],
26 ["fabric_metadata_t.is_controller_packet_out", 1, false],
27 ["fabric_metadata_t.clone_to_cpu", 1, false],
28 ["fabric_metadata_t.ip_proto", 8, false],
29 ["fabric_metadata_t.l4_src_port", 16, false],
30 ["fabric_metadata_t.l4_dst_port", 16, false],
31 ["_padding_2", 5, false]
32 ]
33 },
34 {
35 "name" : "standard_metadata",
36 "id" : 1,
37 "fields" : [
38 ["ingress_port", 9, false],
39 ["egress_spec", 9, false],
40 ["egress_port", 9, false],
41 ["clone_spec", 32, false],
42 ["instance_type", 32, false],
43 ["drop", 1, false],
44 ["recirculate_port", 16, false],
45 ["packet_length", 32, false],
46 ["enq_timestamp", 32, false],
47 ["enq_qdepth", 19, false],
48 ["deq_timedelta", 32, false],
49 ["deq_qdepth", 19, false],
50 ["ingress_global_timestamp", 48, false],
51 ["egress_global_timestamp", 48, false],
52 ["lf_field_list", 32, false],
53 ["mcast_grp", 16, false],
54 ["resubmit_flag", 32, false],
55 ["egress_rid", 16, false],
56 ["checksum_error", 1, false],
57 ["recirculate_flag", 32, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070058 ["parser_error", 32, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070059 ["_padding", 5, false]
60 ]
61 },
62 {
63 "name" : "ethernet_t",
64 "id" : 2,
65 "fields" : [
66 ["dst_addr", 48, false],
67 ["src_addr", 48, false],
68 ["ether_type", 16, false]
69 ]
70 },
71 {
72 "name" : "vlan_tag_t",
73 "id" : 3,
74 "fields" : [
75 ["pri", 3, false],
76 ["cfi", 1, false],
77 ["vlan_id", 12, false],
78 ["ether_type", 16, false]
79 ]
80 },
81 {
82 "name" : "mpls_t",
83 "id" : 4,
84 "fields" : [
85 ["label", 20, false],
86 ["tc", 3, false],
87 ["bos", 1, false],
88 ["ttl", 8, false]
89 ]
90 },
91 {
92 "name" : "ipv4_t",
93 "id" : 5,
94 "fields" : [
95 ["version", 4, false],
96 ["ihl", 4, false],
97 ["dscp", 6, false],
98 ["ecn", 2, false],
99 ["total_len", 16, false],
100 ["identification", 16, false],
101 ["flags", 3, false],
102 ["frag_offset", 13, false],
103 ["ttl", 8, false],
104 ["protocol", 8, false],
105 ["hdr_checksum", 16, false],
106 ["src_addr", 32, false],
107 ["dst_addr", 32, false]
108 ]
109 },
110 {
111 "name" : "udp_t",
112 "id" : 6,
113 "fields" : [
114 ["src_port", 16, false],
115 ["dst_port", 16, false],
116 ["len", 16, false],
117 ["checksum", 16, false]
118 ]
119 },
120 {
121 "name" : "gtpu_t",
122 "id" : 7,
123 "fields" : [
124 ["version", 3, false],
125 ["pt", 1, false],
126 ["spare", 1, false],
127 ["ex_flag", 1, false],
128 ["seq_flag", 1, false],
129 ["npdu_flag", 1, false],
130 ["msgtype", 8, false],
131 ["msglen", 16, false],
132 ["teid", 32, false]
133 ]
134 },
135 {
136 "name" : "arp_t",
137 "id" : 8,
138 "fields" : [
139 ["hw_type", 16, false],
140 ["proto_type", 16, false],
141 ["hw_addr_len", 8, false],
142 ["proto_addr_len", 8, false],
143 ["opcode", 16, false]
144 ]
145 },
146 {
147 "name" : "tcp_t",
148 "id" : 9,
149 "fields" : [
150 ["src_port", 16, false],
151 ["dst_port", 16, false],
152 ["seq_no", 32, false],
153 ["ack_no", 32, false],
154 ["data_offset", 4, false],
155 ["res", 3, false],
156 ["ecn", 3, false],
157 ["ctrl", 6, false],
158 ["window", 16, false],
159 ["checksum", 16, false],
160 ["urgent_ptr", 16, false]
161 ]
162 },
163 {
164 "name" : "icmp_t",
165 "id" : 10,
166 "fields" : [
167 ["icmp_type", 8, false],
168 ["icmp_code", 8, false],
169 ["checksum", 16, false],
170 ["identifier", 16, false],
171 ["sequence_number", 16, false],
172 ["timestamp", 64, false]
173 ]
174 },
175 {
176 "name" : "packet_out_header_t",
177 "id" : 11,
178 "fields" : [
179 ["egress_port", 9, false],
180 ["_pad", 7, false]
181 ]
182 },
183 {
184 "name" : "packet_in_header_t",
185 "id" : 12,
186 "fields" : [
187 ["ingress_port", 9, false],
188 ["_pad", 7, false]
189 ]
190 },
191 {
192 "name" : "intl4_shim_t",
193 "id" : 13,
194 "fields" : [
195 ["int_type", 8, false],
196 ["rsvd1", 8, false],
197 ["len_words", 8, false],
198 ["rsvd2", 8, false]
199 ]
200 },
201 {
202 "name" : "int_header_t",
203 "id" : 14,
204 "fields" : [
205 ["ver", 2, false],
206 ["rep", 2, false],
207 ["c", 1, false],
208 ["e", 1, false],
209 ["rsvd1", 5, false],
210 ["ins_cnt", 5, false],
211 ["max_hop_cnt", 8, false],
212 ["total_hop_cnt", 8, false],
213 ["instruction_mask_0003", 4, false],
214 ["instruction_mask_0407", 4, false],
215 ["instruction_mask_0811", 4, false],
216 ["instruction_mask_1215", 4, false],
217 ["rsvd2", 16, false]
218 ]
219 },
220 {
221 "name" : "int_switch_id_t",
222 "id" : 15,
223 "fields" : [
224 ["switch_id", 32, false]
225 ]
226 },
227 {
228 "name" : "int_port_ids_t",
229 "id" : 16,
230 "fields" : [
231 ["ingress_port_id", 16, false],
232 ["egress_port_id", 16, false]
233 ]
234 },
235 {
236 "name" : "int_hop_latency_t",
237 "id" : 17,
238 "fields" : [
239 ["hop_latency", 32, false]
240 ]
241 },
242 {
243 "name" : "int_q_occupancy_t",
244 "id" : 18,
245 "fields" : [
246 ["q_id", 8, false],
247 ["q_occupancy", 24, false]
248 ]
249 },
250 {
251 "name" : "int_ingress_tstamp_t",
252 "id" : 19,
253 "fields" : [
254 ["ingress_tstamp", 32, false]
255 ]
256 },
257 {
258 "name" : "int_egress_tstamp_t",
259 "id" : 20,
260 "fields" : [
261 ["egress_tstamp", 32, false]
262 ]
263 },
264 {
265 "name" : "int_q_congestion_t",
266 "id" : 21,
267 "fields" : [
268 ["q_id", 8, false],
269 ["q_congestion", 24, false]
270 ]
271 },
272 {
273 "name" : "int_egress_port_tx_util_t",
274 "id" : 22,
275 "fields" : [
276 ["egress_port_tx_util", 32, false]
277 ]
278 },
279 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700280 "name" : "intl4_tail_t",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700281 "id" : 23,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700282 "fields" : [
283 ["next_proto", 8, false],
284 ["dest_port", 16, false],
285 ["padding", 2, false],
286 ["dscp", 6, false]
287 ]
288 },
289 {
290 "name" : "spgw_meta_t",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700291 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700292 "fields" : [
293 ["direction", 2, false],
294 ["ipv4_len", 16, false],
295 ["teid", 32, false],
296 ["s1u_enb_addr", 32, false],
297 ["s1u_sgw_addr", 32, false],
298 ["_padding_0", 6, false]
299 ]
300 },
301 {
302 "name" : "int_metadata_t",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700303 "id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700304 "fields" : [
305 ["source", 1, 0],
306 ["transit", 1, 0],
307 ["sink", 1, 0],
308 ["switch_id", 32, false],
309 ["new_words", 8, false],
310 ["new_bytes", 16, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700311 ["ig_tstamp", 32, false],
312 ["eg_tstamp", 32, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700313 ["_padding_1", 5, false]
314 ]
315 }
316 ],
317 "headers" : [
318 {
319 "name" : "scalars",
320 "id" : 0,
321 "header_type" : "scalars_0",
322 "metadata" : true,
323 "pi_omit" : true
324 },
325 {
326 "name" : "standard_metadata",
327 "id" : 1,
328 "header_type" : "standard_metadata",
329 "metadata" : true,
330 "pi_omit" : true
331 },
332 {
333 "name" : "ethernet",
334 "id" : 2,
335 "header_type" : "ethernet_t",
336 "metadata" : false,
337 "pi_omit" : true
338 },
339 {
340 "name" : "vlan_tag",
341 "id" : 3,
342 "header_type" : "vlan_tag_t",
343 "metadata" : false,
344 "pi_omit" : true
345 },
346 {
347 "name" : "mpls",
348 "id" : 4,
349 "header_type" : "mpls_t",
350 "metadata" : false,
351 "pi_omit" : true
352 },
353 {
354 "name" : "gtpu_ipv4",
355 "id" : 5,
356 "header_type" : "ipv4_t",
357 "metadata" : false,
358 "pi_omit" : true
359 },
360 {
361 "name" : "gtpu_udp",
362 "id" : 6,
363 "header_type" : "udp_t",
364 "metadata" : false,
365 "pi_omit" : true
366 },
367 {
368 "name" : "gtpu",
369 "id" : 7,
370 "header_type" : "gtpu_t",
371 "metadata" : false,
372 "pi_omit" : true
373 },
374 {
375 "name" : "inner_ipv4",
376 "id" : 8,
377 "header_type" : "ipv4_t",
378 "metadata" : false,
379 "pi_omit" : true
380 },
381 {
382 "name" : "inner_udp",
383 "id" : 9,
384 "header_type" : "udp_t",
385 "metadata" : false,
386 "pi_omit" : true
387 },
388 {
389 "name" : "ipv4",
390 "id" : 10,
391 "header_type" : "ipv4_t",
392 "metadata" : false,
393 "pi_omit" : true
394 },
395 {
396 "name" : "arp",
397 "id" : 11,
398 "header_type" : "arp_t",
399 "metadata" : false,
400 "pi_omit" : true
401 },
402 {
403 "name" : "tcp",
404 "id" : 12,
405 "header_type" : "tcp_t",
406 "metadata" : false,
407 "pi_omit" : true
408 },
409 {
410 "name" : "udp",
411 "id" : 13,
412 "header_type" : "udp_t",
413 "metadata" : false,
414 "pi_omit" : true
415 },
416 {
417 "name" : "icmp",
418 "id" : 14,
419 "header_type" : "icmp_t",
420 "metadata" : false,
421 "pi_omit" : true
422 },
423 {
424 "name" : "packet_out",
425 "id" : 15,
426 "header_type" : "packet_out_header_t",
427 "metadata" : false,
428 "pi_omit" : true
429 },
430 {
431 "name" : "packet_in",
432 "id" : 16,
433 "header_type" : "packet_in_header_t",
434 "metadata" : false,
435 "pi_omit" : true
436 },
437 {
438 "name" : "intl4_shim",
439 "id" : 17,
440 "header_type" : "intl4_shim_t",
441 "metadata" : false,
442 "pi_omit" : true
443 },
444 {
445 "name" : "int_header",
446 "id" : 18,
447 "header_type" : "int_header_t",
448 "metadata" : false,
449 "pi_omit" : true
450 },
451 {
452 "name" : "int_switch_id",
453 "id" : 19,
454 "header_type" : "int_switch_id_t",
455 "metadata" : false,
456 "pi_omit" : true
457 },
458 {
459 "name" : "int_port_ids",
460 "id" : 20,
461 "header_type" : "int_port_ids_t",
462 "metadata" : false,
463 "pi_omit" : true
464 },
465 {
466 "name" : "int_hop_latency",
467 "id" : 21,
468 "header_type" : "int_hop_latency_t",
469 "metadata" : false,
470 "pi_omit" : true
471 },
472 {
473 "name" : "int_q_occupancy",
474 "id" : 22,
475 "header_type" : "int_q_occupancy_t",
476 "metadata" : false,
477 "pi_omit" : true
478 },
479 {
480 "name" : "int_ingress_tstamp",
481 "id" : 23,
482 "header_type" : "int_ingress_tstamp_t",
483 "metadata" : false,
484 "pi_omit" : true
485 },
486 {
487 "name" : "int_egress_tstamp",
488 "id" : 24,
489 "header_type" : "int_egress_tstamp_t",
490 "metadata" : false,
491 "pi_omit" : true
492 },
493 {
494 "name" : "int_q_congestion",
495 "id" : 25,
496 "header_type" : "int_q_congestion_t",
497 "metadata" : false,
498 "pi_omit" : true
499 },
500 {
501 "name" : "int_egress_tx_util",
502 "id" : 26,
503 "header_type" : "int_egress_port_tx_util_t",
504 "metadata" : false,
505 "pi_omit" : true
506 },
507 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700508 "name" : "intl4_tail",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700509 "id" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700510 "header_type" : "intl4_tail_t",
511 "metadata" : false,
512 "pi_omit" : true
513 },
514 {
515 "name" : "userMetadata.spgw",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700516 "id" : 28,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700517 "header_type" : "spgw_meta_t",
518 "metadata" : true,
519 "pi_omit" : true
520 },
521 {
522 "name" : "userMetadata.int_meta",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700523 "id" : 29,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700524 "header_type" : "int_metadata_t",
525 "metadata" : true,
526 "pi_omit" : true
527 }
528 ],
529 "header_stacks" : [],
530 "header_union_types" : [],
531 "header_unions" : [],
532 "header_union_stacks" : [],
533 "field_lists" : [],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700534 "errors" : [
535 ["NoError", 1],
536 ["PacketTooShort", 2],
537 ["NoMatch", 3],
538 ["StackOutOfBounds", 4],
539 ["HeaderTooShort", 5],
540 ["ParserTimeout", 6]
541 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700542 "enums" : [],
543 "parsers" : [
544 {
545 "name" : "parser",
546 "id" : 0,
547 "init_state" : "start",
548 "parse_states" : [
549 {
550 "name" : "start",
551 "id" : 0,
552 "parser_ops" : [],
553 "transitions" : [
554 {
555 "type" : "hexstr",
556 "value" : "0x00ff",
557 "mask" : null,
558 "next_state" : "parse_packet_out"
559 },
560 {
561 "value" : "default",
562 "mask" : null,
563 "next_state" : "parse_ethernet"
564 }
565 ],
566 "transition_key" : [
567 {
568 "type" : "field",
569 "value" : ["standard_metadata", "ingress_port"]
570 }
571 ]
572 },
573 {
574 "name" : "parse_packet_out",
575 "id" : 1,
576 "parser_ops" : [
577 {
578 "parameters" : [
579 {
580 "type" : "regular",
581 "value" : "packet_out"
582 }
583 ],
584 "op" : "extract"
585 }
586 ],
587 "transitions" : [
588 {
589 "value" : "default",
590 "mask" : null,
591 "next_state" : "parse_ethernet"
592 }
593 ],
594 "transition_key" : []
595 },
596 {
597 "name" : "parse_ethernet",
598 "id" : 2,
599 "parser_ops" : [
600 {
601 "parameters" : [
602 {
603 "type" : "regular",
604 "value" : "ethernet"
605 }
606 ],
607 "op" : "extract"
608 }
609 ],
610 "transitions" : [
611 {
612 "type" : "hexstr",
613 "value" : "0x8100",
614 "mask" : null,
615 "next_state" : "parse_vlan_tag"
616 },
617 {
618 "type" : "hexstr",
619 "value" : "0x8847",
620 "mask" : null,
621 "next_state" : "parse_mpls"
622 },
623 {
624 "type" : "hexstr",
625 "value" : "0x0806",
626 "mask" : null,
627 "next_state" : "parse_arp"
628 },
629 {
630 "type" : "hexstr",
631 "value" : "0x0800",
632 "mask" : null,
633 "next_state" : "parse_ipv4"
634 },
635 {
636 "value" : "default",
637 "mask" : null,
638 "next_state" : null
639 }
640 ],
641 "transition_key" : [
642 {
643 "type" : "field",
644 "value" : ["ethernet", "ether_type"]
645 }
646 ]
647 },
648 {
649 "name" : "parse_vlan_tag",
650 "id" : 3,
651 "parser_ops" : [
652 {
653 "parameters" : [
654 {
655 "type" : "regular",
656 "value" : "vlan_tag"
657 }
658 ],
659 "op" : "extract"
660 }
661 ],
662 "transitions" : [
663 {
664 "type" : "hexstr",
665 "value" : "0x0806",
666 "mask" : null,
667 "next_state" : "parse_arp"
668 },
669 {
670 "type" : "hexstr",
671 "value" : "0x0800",
672 "mask" : null,
673 "next_state" : "parse_ipv4"
674 },
675 {
676 "type" : "hexstr",
677 "value" : "0x8847",
678 "mask" : null,
679 "next_state" : "parse_mpls"
680 },
681 {
682 "value" : "default",
683 "mask" : null,
684 "next_state" : null
685 }
686 ],
687 "transition_key" : [
688 {
689 "type" : "field",
690 "value" : ["vlan_tag", "ether_type"]
691 }
692 ]
693 },
694 {
695 "name" : "parse_mpls",
696 "id" : 4,
697 "parser_ops" : [
698 {
699 "parameters" : [
700 {
701 "type" : "regular",
702 "value" : "mpls"
703 }
704 ],
705 "op" : "extract"
706 },
707 {
708 "parameters" : [
709 {
710 "type" : "field",
711 "value" : ["scalars", "tmp"]
712 },
713 {
714 "type" : "lookahead",
715 "value" : [0, 4]
716 }
717 ],
718 "op" : "set"
719 }
720 ],
721 "transitions" : [
722 {
723 "type" : "hexstr",
724 "value" : "0x04",
725 "mask" : null,
726 "next_state" : "parse_ipv4"
727 },
728 {
729 "value" : "default",
730 "mask" : null,
731 "next_state" : "parse_ethernet"
732 }
733 ],
734 "transition_key" : [
735 {
736 "type" : "field",
737 "value" : ["scalars", "tmp"]
738 }
739 ]
740 },
741 {
742 "name" : "parse_ipv4",
743 "id" : 5,
744 "parser_ops" : [
745 {
746 "parameters" : [
747 {
748 "type" : "regular",
749 "value" : "ipv4"
750 }
751 ],
752 "op" : "extract"
753 },
754 {
755 "parameters" : [
756 {
757 "type" : "field",
758 "value" : ["scalars", "fabric_metadata_t.ip_proto"]
759 },
760 {
761 "type" : "field",
762 "value" : ["ipv4", "protocol"]
763 }
764 ],
765 "op" : "set"
766 },
767 {
768 "parameters" : [
769 {
770 "type" : "field",
771 "value" : ["scalars", "last_ipv4_dscp"]
772 },
773 {
774 "type" : "field",
775 "value" : ["ipv4", "dscp"]
776 }
777 ],
778 "op" : "set"
779 }
780 ],
781 "transitions" : [
782 {
783 "type" : "hexstr",
784 "value" : "0x06",
785 "mask" : null,
786 "next_state" : "parse_tcp"
787 },
788 {
789 "type" : "hexstr",
790 "value" : "0x11",
791 "mask" : null,
792 "next_state" : "parse_udp"
793 },
794 {
795 "type" : "hexstr",
796 "value" : "0x01",
797 "mask" : null,
798 "next_state" : "parse_icmp"
799 },
800 {
801 "value" : "default",
802 "mask" : null,
803 "next_state" : null
804 }
805 ],
806 "transition_key" : [
807 {
808 "type" : "field",
809 "value" : ["ipv4", "protocol"]
810 }
811 ]
812 },
813 {
814 "name" : "parse_arp",
815 "id" : 6,
816 "parser_ops" : [
817 {
818 "parameters" : [
819 {
820 "type" : "regular",
821 "value" : "arp"
822 }
823 ],
824 "op" : "extract"
825 }
826 ],
827 "transitions" : [
828 {
829 "value" : "default",
830 "mask" : null,
831 "next_state" : null
832 }
833 ],
834 "transition_key" : []
835 },
836 {
837 "name" : "parse_tcp",
838 "id" : 7,
839 "parser_ops" : [
840 {
841 "parameters" : [
842 {
843 "type" : "regular",
844 "value" : "tcp"
845 }
846 ],
847 "op" : "extract"
848 },
849 {
850 "parameters" : [
851 {
852 "type" : "field",
853 "value" : ["scalars", "fabric_metadata_t.l4_src_port"]
854 },
855 {
856 "type" : "field",
857 "value" : ["tcp", "src_port"]
858 }
859 ],
860 "op" : "set"
861 },
862 {
863 "parameters" : [
864 {
865 "type" : "field",
866 "value" : ["scalars", "fabric_metadata_t.l4_dst_port"]
867 },
868 {
869 "type" : "field",
870 "value" : ["tcp", "dst_port"]
871 }
872 ],
873 "op" : "set"
874 }
875 ],
876 "transitions" : [
877 {
878 "value" : "default",
879 "mask" : null,
880 "next_state" : "parse_int"
881 }
882 ],
883 "transition_key" : []
884 },
885 {
886 "name" : "parse_udp",
887 "id" : 8,
888 "parser_ops" : [
889 {
890 "parameters" : [
891 {
892 "type" : "regular",
893 "value" : "udp"
894 }
895 ],
896 "op" : "extract"
897 },
898 {
899 "parameters" : [
900 {
901 "type" : "field",
902 "value" : ["scalars", "fabric_metadata_t.l4_src_port"]
903 },
904 {
905 "type" : "field",
906 "value" : ["udp", "src_port"]
907 }
908 ],
909 "op" : "set"
910 },
911 {
912 "parameters" : [
913 {
914 "type" : "field",
915 "value" : ["scalars", "fabric_metadata_t.l4_dst_port"]
916 },
917 {
918 "type" : "field",
919 "value" : ["udp", "dst_port"]
920 }
921 ],
922 "op" : "set"
923 }
924 ],
925 "transitions" : [
926 {
927 "type" : "hexstr",
928 "value" : "0x0868",
929 "mask" : null,
930 "next_state" : "parse_gtpu"
931 },
932 {
933 "value" : "default",
934 "mask" : null,
935 "next_state" : "parse_int"
936 }
937 ],
938 "transition_key" : [
939 {
940 "type" : "field",
941 "value" : ["udp", "dst_port"]
942 }
943 ]
944 },
945 {
946 "name" : "parse_icmp",
947 "id" : 9,
948 "parser_ops" : [
949 {
950 "parameters" : [
951 {
952 "type" : "regular",
953 "value" : "icmp"
954 }
955 ],
956 "op" : "extract"
957 }
958 ],
959 "transitions" : [
960 {
961 "value" : "default",
962 "mask" : null,
963 "next_state" : null
964 }
965 ],
966 "transition_key" : []
967 },
968 {
969 "name" : "parse_gtpu",
970 "id" : 10,
971 "parser_ops" : [
972 {
973 "parameters" : [
974 {
975 "type" : "field",
976 "value" : ["scalars", "tmp_0"]
977 },
978 {
979 "type" : "expression",
980 "value" : {
981 "type" : "expression",
982 "value" : {
983 "op" : "&",
984 "left" : {
985 "type" : "expression",
986 "value" : {
987 "op" : "&",
988 "left" : {
989 "type" : "expression",
990 "value" : {
991 "op" : ">>",
992 "left" : {
993 "type" : "field",
994 "value" : ["ipv4", "dst_addr"]
995 },
996 "right" : {
997 "type" : "hexstr",
998 "value" : "0x18"
999 }
1000 }
1001 },
1002 "right" : {
1003 "type" : "hexstr",
1004 "value" : "0xffffffff"
1005 }
1006 }
1007 },
1008 "right" : {
1009 "type" : "hexstr",
1010 "value" : "0xff"
1011 }
1012 }
1013 }
1014 }
1015 ],
1016 "op" : "set"
1017 }
1018 ],
1019 "transitions" : [
1020 {
1021 "type" : "hexstr",
1022 "value" : "0x8c",
1023 "mask" : null,
1024 "next_state" : "do_parse_gtpu"
1025 },
1026 {
1027 "value" : "default",
1028 "mask" : null,
1029 "next_state" : null
1030 }
1031 ],
1032 "transition_key" : [
1033 {
1034 "type" : "field",
1035 "value" : ["scalars", "tmp_0"]
1036 }
1037 ]
1038 },
1039 {
1040 "name" : "do_parse_gtpu",
1041 "id" : 11,
1042 "parser_ops" : [
1043 {
1044 "parameters" : [
1045 {
1046 "type" : "regular",
1047 "value" : "gtpu"
1048 }
1049 ],
1050 "op" : "extract"
1051 },
1052 {
1053 "parameters" : [
1054 {
1055 "type" : "regular",
1056 "value" : "inner_ipv4"
1057 }
1058 ],
1059 "op" : "extract"
1060 },
1061 {
1062 "parameters" : [
1063 {
1064 "type" : "field",
1065 "value" : ["scalars", "last_ipv4_dscp"]
1066 },
1067 {
1068 "type" : "field",
1069 "value" : ["inner_ipv4", "dscp"]
1070 }
1071 ],
1072 "op" : "set"
1073 }
1074 ],
1075 "transitions" : [
1076 {
1077 "type" : "hexstr",
1078 "value" : "0x06",
1079 "mask" : null,
1080 "next_state" : "parse_tcp"
1081 },
1082 {
1083 "type" : "hexstr",
1084 "value" : "0x11",
1085 "mask" : null,
1086 "next_state" : "parse_inner_udp"
1087 },
1088 {
1089 "type" : "hexstr",
1090 "value" : "0x01",
1091 "mask" : null,
1092 "next_state" : "parse_icmp"
1093 },
1094 {
1095 "value" : "default",
1096 "mask" : null,
1097 "next_state" : null
1098 }
1099 ],
1100 "transition_key" : [
1101 {
1102 "type" : "field",
1103 "value" : ["inner_ipv4", "protocol"]
1104 }
1105 ]
1106 },
1107 {
1108 "name" : "parse_inner_udp",
1109 "id" : 12,
1110 "parser_ops" : [
1111 {
1112 "parameters" : [
1113 {
1114 "type" : "regular",
1115 "value" : "inner_udp"
1116 }
1117 ],
1118 "op" : "extract"
1119 },
1120 {
1121 "parameters" : [
1122 {
1123 "type" : "field",
1124 "value" : ["scalars", "fabric_metadata_t.l4_src_port"]
1125 },
1126 {
1127 "type" : "field",
1128 "value" : ["inner_udp", "src_port"]
1129 }
1130 ],
1131 "op" : "set"
1132 },
1133 {
1134 "parameters" : [
1135 {
1136 "type" : "field",
1137 "value" : ["scalars", "fabric_metadata_t.l4_dst_port"]
1138 },
1139 {
1140 "type" : "field",
1141 "value" : ["inner_udp", "dst_port"]
1142 }
1143 ],
1144 "op" : "set"
1145 }
1146 ],
1147 "transitions" : [
1148 {
1149 "value" : "default",
1150 "mask" : null,
1151 "next_state" : "parse_int"
1152 }
1153 ],
1154 "transition_key" : []
1155 },
1156 {
1157 "name" : "parse_int",
1158 "id" : 13,
1159 "parser_ops" : [],
1160 "transitions" : [
1161 {
1162 "type" : "hexstr",
1163 "value" : "0x01",
1164 "mask" : "0x01",
1165 "next_state" : "parse_intl4_shim"
1166 },
1167 {
1168 "value" : "default",
1169 "mask" : null,
1170 "next_state" : null
1171 }
1172 ],
1173 "transition_key" : [
1174 {
1175 "type" : "field",
1176 "value" : ["scalars", "last_ipv4_dscp"]
1177 }
1178 ]
1179 },
1180 {
1181 "name" : "parse_intl4_shim",
1182 "id" : 14,
1183 "parser_ops" : [
1184 {
1185 "parameters" : [
1186 {
1187 "type" : "regular",
1188 "value" : "intl4_shim"
1189 }
1190 ],
1191 "op" : "extract"
1192 },
1193 {
1194 "parameters" : [
1195 {
1196 "type" : "regular",
1197 "value" : "int_header"
1198 }
1199 ],
1200 "op" : "extract"
1201 }
1202 ],
1203 "transitions" : [
1204 {
1205 "type" : "hexstr",
1206 "value" : "0x04",
1207 "mask" : null,
1208 "next_state" : "parse_intl4_tail"
1209 },
1210 {
1211 "value" : "default",
1212 "mask" : null,
1213 "next_state" : "parse_int_data"
1214 }
1215 ],
1216 "transition_key" : [
1217 {
1218 "type" : "field",
1219 "value" : ["intl4_shim", "len_words"]
1220 }
1221 ]
1222 },
1223 {
1224 "name" : "parse_int_data",
1225 "id" : 15,
1226 "parser_ops" : [],
1227 "transitions" : [
1228 {
1229 "value" : "default",
1230 "mask" : null,
1231 "next_state" : null
1232 }
1233 ],
1234 "transition_key" : []
1235 },
1236 {
1237 "name" : "parse_intl4_tail",
1238 "id" : 16,
1239 "parser_ops" : [
1240 {
1241 "parameters" : [
1242 {
1243 "type" : "regular",
1244 "value" : "intl4_tail"
1245 }
1246 ],
1247 "op" : "extract"
1248 }
1249 ],
1250 "transitions" : [
1251 {
1252 "value" : "default",
1253 "mask" : null,
1254 "next_state" : null
1255 }
1256 ],
1257 "transition_key" : []
1258 }
1259 ]
1260 }
1261 ],
1262 "parse_vsets" : [],
1263 "deparsers" : [
1264 {
1265 "name" : "deparser",
1266 "id" : 0,
1267 "source_info" : {
1268 "filename" : "include/parser.p4",
1269 "line" : 228,
1270 "column" : 8,
1271 "source_fragment" : "FabricDeparser"
1272 },
Carmelo Cascone8e5818d2018-10-26 11:45:23 -07001273 "order" : ["packet_in", "ethernet", "vlan_tag", "mpls", "arp", "gtpu_ipv4", "gtpu_udp", "gtpu", "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", "intl4_tail"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001274 }
1275 ],
1276 "meter_arrays" : [],
1277 "counter_arrays" : [
1278 {
1279 "name" : "FabricIngress.spgw_ingress.ue_counter",
1280 "id" : 0,
1281 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001282 "binding" : "FabricIngress.spgw_ingress.dl_sess_lookup",
1283 "source_info" : {
1284 "filename" : "include/spgw.p4",
1285 "line" : 51,
1286 "column" : 50,
1287 "source_fragment" : "ue_counter"
1288 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001289 },
1290 {
1291 "name" : "FabricIngress.process_set_source_sink.counter_set_source",
1292 "id" : 1,
1293 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001294 "binding" : "FabricIngress.process_set_source_sink.tb_set_source",
1295 "source_info" : {
1296 "filename" : "include/int/int_main.p4",
1297 "line" : 39,
1298 "column" : 50,
1299 "source_fragment" : "counter_set_source"
1300 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001301 },
1302 {
1303 "name" : "FabricIngress.filtering.ingress_port_vlan_counter",
1304 "id" : 2,
1305 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001306 "binding" : "FabricIngress.filtering.ingress_port_vlan",
1307 "source_info" : {
1308 "filename" : "include/control/filtering.p4",
1309 "line" : 34,
1310 "column" : 50,
1311 "source_fragment" : "ingress_port_vlan_counter"
1312 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001313 },
1314 {
1315 "name" : "FabricIngress.filtering.fwd_classifier_counter",
1316 "id" : 3,
1317 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001318 "binding" : "FabricIngress.filtering.fwd_classifier",
1319 "source_info" : {
1320 "filename" : "include/control/filtering.p4",
1321 "line" : 96,
1322 "column" : 50,
1323 "source_fragment" : "fwd_classifier_counter"
1324 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001325 },
1326 {
1327 "name" : "FabricIngress.forwarding.bridging_counter",
1328 "id" : 4,
1329 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001330 "binding" : "FabricIngress.forwarding.bridging",
1331 "source_info" : {
1332 "filename" : "include/control/forwarding.p4",
1333 "line" : 34,
1334 "column" : 50,
1335 "source_fragment" : "bridging_counter"
1336 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001337 },
1338 {
1339 "name" : "FabricIngress.forwarding.mpls_counter",
1340 "id" : 5,
1341 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001342 "binding" : "FabricIngress.forwarding.mpls",
1343 "source_info" : {
1344 "filename" : "include/control/forwarding.p4",
1345 "line" : 57,
1346 "column" : 50,
1347 "source_fragment" : "mpls_counter"
1348 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001349 },
1350 {
1351 "name" : "FabricIngress.forwarding.routing_v4_counter",
1352 "id" : 6,
1353 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001354 "binding" : "FabricIngress.forwarding.routing_v4",
1355 "source_info" : {
1356 "filename" : "include/control/forwarding.p4",
1357 "line" : 80,
1358 "column" : 50,
1359 "source_fragment" : "routing_v4_counter"
1360 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001361 },
1362 {
1363 "name" : "FabricIngress.forwarding.acl_counter",
1364 "id" : 7,
1365 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001366 "binding" : "FabricIngress.forwarding.acl",
1367 "source_info" : {
1368 "filename" : "include/control/forwarding.p4",
1369 "line" : 107,
1370 "column" : 50,
1371 "source_fragment" : "acl_counter"
1372 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001373 },
1374 {
1375 "name" : "FabricIngress.next.vlan_meta_counter",
1376 "id" : 8,
1377 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001378 "binding" : "FabricIngress.next.vlan_meta",
1379 "source_info" : {
1380 "filename" : "include/control/next.p4",
1381 "line" : 58,
1382 "column" : 50,
1383 "source_fragment" : "vlan_meta_counter"
1384 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001385 },
1386 {
1387 "name" : "FabricIngress.next.simple_counter",
1388 "id" : 9,
1389 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001390 "binding" : "FabricIngress.next.simple",
1391 "source_info" : {
1392 "filename" : "include/control/next.p4",
1393 "line" : 82,
1394 "column" : 50,
1395 "source_fragment" : "simple_counter"
1396 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001397 },
1398 {
1399 "name" : "FabricIngress.next.hashed_counter",
1400 "id" : 10,
1401 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001402 "binding" : "FabricIngress.next.hashed",
1403 "source_info" : {
1404 "filename" : "include/control/next.p4",
1405 "line" : 146,
1406 "column" : 50,
1407 "source_fragment" : "hashed_counter"
1408 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001409 },
1410 {
1411 "name" : "FabricIngress.next.multicast_counter",
1412 "id" : 11,
1413 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001414 "binding" : "FabricIngress.next.multicast",
1415 "source_info" : {
1416 "filename" : "include/control/next.p4",
1417 "line" : 199,
1418 "column" : 50,
1419 "source_fragment" : "multicast_counter"
1420 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001421 },
1422 {
1423 "name" : "FabricIngress.port_counters_control.egress_port_counter",
1424 "id" : 12,
1425 "source_info" : {
1426 "filename" : "include/control/port_counter.p4",
1427 "line" : 23,
1428 "column" : 48,
1429 "source_fragment" : "egress_port_counter"
1430 },
1431 "size" : 511,
1432 "is_direct" : false
1433 },
1434 {
1435 "name" : "FabricIngress.port_counters_control.ingress_port_counter",
1436 "id" : 13,
1437 "source_info" : {
1438 "filename" : "include/control/port_counter.p4",
1439 "line" : 24,
1440 "column" : 48,
1441 "source_fragment" : "ingress_port_counter"
1442 },
1443 "size" : 511,
1444 "is_direct" : false
1445 },
1446 {
1447 "name" : "FabricEgress.process_int_main.process_int_source.counter_int_source",
1448 "id" : 14,
1449 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001450 "binding" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
1451 "source_info" : {
1452 "filename" : "include/int/int_source.p4",
1453 "line" : 27,
1454 "column" : 50,
1455 "source_fragment" : "counter_int_source"
1456 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001457 },
1458 {
1459 "name" : "FabricEgress.egress_next.egress_vlan_counter",
1460 "id" : 15,
1461 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001462 "binding" : "FabricEgress.egress_next.egress_vlan",
1463 "source_info" : {
1464 "filename" : "include/control/next.p4",
1465 "line" : 250,
1466 "column" : 50,
1467 "source_fragment" : "egress_vlan_counter"
1468 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001469 }
1470 ],
1471 "register_arrays" : [],
1472 "calculations" : [
1473 {
1474 "name" : "calc",
1475 "id" : 0,
1476 "source_info" : {
1477 "filename" : "include/checksum.p4",
1478 "line" : 28,
1479 "column" : 8,
1480 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
1481 },
1482 "algo" : "csum16",
1483 "input" : [
1484 {
1485 "type" : "field",
1486 "value" : ["ipv4", "version"]
1487 },
1488 {
1489 "type" : "field",
1490 "value" : ["ipv4", "ihl"]
1491 },
1492 {
1493 "type" : "field",
1494 "value" : ["ipv4", "dscp"]
1495 },
1496 {
1497 "type" : "field",
1498 "value" : ["ipv4", "ecn"]
1499 },
1500 {
1501 "type" : "field",
1502 "value" : ["ipv4", "total_len"]
1503 },
1504 {
1505 "type" : "field",
1506 "value" : ["ipv4", "identification"]
1507 },
1508 {
1509 "type" : "field",
1510 "value" : ["ipv4", "flags"]
1511 },
1512 {
1513 "type" : "field",
1514 "value" : ["ipv4", "frag_offset"]
1515 },
1516 {
1517 "type" : "field",
1518 "value" : ["ipv4", "ttl"]
1519 },
1520 {
1521 "type" : "field",
1522 "value" : ["ipv4", "protocol"]
1523 },
1524 {
1525 "type" : "field",
1526 "value" : ["ipv4", "src_addr"]
1527 },
1528 {
1529 "type" : "field",
1530 "value" : ["ipv4", "dst_addr"]
1531 }
1532 ]
1533 },
1534 {
1535 "name" : "calc_0",
1536 "id" : 1,
1537 "source_info" : {
1538 "filename" : "include/spgw.p4",
1539 "line" : 237,
1540 "column" : 8,
1541 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
1542 },
1543 "algo" : "csum16",
1544 "input" : [
1545 {
1546 "type" : "field",
1547 "value" : ["gtpu_ipv4", "version"]
1548 },
1549 {
1550 "type" : "field",
1551 "value" : ["gtpu_ipv4", "ihl"]
1552 },
1553 {
1554 "type" : "field",
1555 "value" : ["gtpu_ipv4", "dscp"]
1556 },
1557 {
1558 "type" : "field",
1559 "value" : ["gtpu_ipv4", "ecn"]
1560 },
1561 {
1562 "type" : "field",
1563 "value" : ["gtpu_ipv4", "total_len"]
1564 },
1565 {
1566 "type" : "field",
1567 "value" : ["gtpu_ipv4", "identification"]
1568 },
1569 {
1570 "type" : "field",
1571 "value" : ["gtpu_ipv4", "flags"]
1572 },
1573 {
1574 "type" : "field",
1575 "value" : ["gtpu_ipv4", "frag_offset"]
1576 },
1577 {
1578 "type" : "field",
1579 "value" : ["gtpu_ipv4", "ttl"]
1580 },
1581 {
1582 "type" : "field",
1583 "value" : ["gtpu_ipv4", "protocol"]
1584 },
1585 {
1586 "type" : "field",
1587 "value" : ["gtpu_ipv4", "src_addr"]
1588 },
1589 {
1590 "type" : "field",
1591 "value" : ["gtpu_ipv4", "dst_addr"]
1592 }
1593 ]
1594 },
1595 {
1596 "name" : "calc_1",
1597 "id" : 2,
1598 "source_info" : {
1599 "filename" : "include/checksum.p4",
1600 "line" : 57,
1601 "column" : 8,
1602 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
1603 },
1604 "algo" : "csum16",
1605 "input" : [
1606 {
1607 "type" : "field",
1608 "value" : ["ipv4", "version"]
1609 },
1610 {
1611 "type" : "field",
1612 "value" : ["ipv4", "ihl"]
1613 },
1614 {
1615 "type" : "field",
1616 "value" : ["ipv4", "dscp"]
1617 },
1618 {
1619 "type" : "field",
1620 "value" : ["ipv4", "ecn"]
1621 },
1622 {
1623 "type" : "field",
1624 "value" : ["ipv4", "total_len"]
1625 },
1626 {
1627 "type" : "field",
1628 "value" : ["ipv4", "identification"]
1629 },
1630 {
1631 "type" : "field",
1632 "value" : ["ipv4", "flags"]
1633 },
1634 {
1635 "type" : "field",
1636 "value" : ["ipv4", "frag_offset"]
1637 },
1638 {
1639 "type" : "field",
1640 "value" : ["ipv4", "ttl"]
1641 },
1642 {
1643 "type" : "field",
1644 "value" : ["ipv4", "protocol"]
1645 },
1646 {
1647 "type" : "field",
1648 "value" : ["ipv4", "src_addr"]
1649 },
1650 {
1651 "type" : "field",
1652 "value" : ["ipv4", "dst_addr"]
1653 }
1654 ]
1655 }
1656 ],
1657 "learn_lists" : [],
1658 "actions" : [
1659 {
1660 "name" : "NoAction",
1661 "id" : 0,
1662 "runtime_data" : [],
1663 "primitives" : []
1664 },
1665 {
1666 "name" : "NoAction",
1667 "id" : 1,
1668 "runtime_data" : [],
1669 "primitives" : []
1670 },
1671 {
1672 "name" : "NoAction",
1673 "id" : 2,
1674 "runtime_data" : [],
1675 "primitives" : []
1676 },
1677 {
1678 "name" : "NoAction",
1679 "id" : 3,
1680 "runtime_data" : [],
1681 "primitives" : []
1682 },
1683 {
1684 "name" : "NoAction",
1685 "id" : 4,
1686 "runtime_data" : [],
1687 "primitives" : []
1688 },
1689 {
1690 "name" : "NoAction",
1691 "id" : 5,
1692 "runtime_data" : [],
1693 "primitives" : []
1694 },
1695 {
1696 "name" : "NoAction",
1697 "id" : 6,
1698 "runtime_data" : [],
1699 "primitives" : []
1700 },
1701 {
1702 "name" : "NoAction",
1703 "id" : 7,
1704 "runtime_data" : [],
1705 "primitives" : []
1706 },
1707 {
1708 "name" : "NoAction",
1709 "id" : 8,
1710 "runtime_data" : [],
1711 "primitives" : []
1712 },
1713 {
1714 "name" : "nop",
1715 "id" : 9,
1716 "runtime_data" : [],
1717 "primitives" : []
1718 },
1719 {
1720 "name" : "drop_now",
1721 "id" : 10,
1722 "runtime_data" : [],
1723 "primitives" : [
1724 {
1725 "op" : "drop",
1726 "parameters" : [],
1727 "source_info" : {
1728 "filename" : "include/control/../action.p4",
1729 "line" : 24,
1730 "column" : 4,
1731 "source_fragment" : "mark_to_drop()"
1732 }
1733 },
1734 {
1735 "op" : "exit",
1736 "parameters" : [],
1737 "source_info" : {
1738 "filename" : "include/control/../action.p4",
1739 "line" : 25,
1740 "column" : 4,
1741 "source_fragment" : "exit"
1742 }
1743 }
1744 ]
1745 },
1746 {
1747 "name" : "FabricIngress.spgw_ingress.gtpu_decap",
1748 "id" : 11,
1749 "runtime_data" : [],
1750 "primitives" : [
1751 {
1752 "op" : "remove_header",
1753 "parameters" : [
1754 {
1755 "type" : "header",
1756 "value" : "gtpu_ipv4"
1757 }
1758 ],
1759 "source_info" : {
1760 "filename" : "include/spgw.p4",
1761 "line" : 54,
1762 "column" : 8,
1763 "source_fragment" : "gtpu_ipv4.setInvalid()"
1764 }
1765 },
1766 {
1767 "op" : "remove_header",
1768 "parameters" : [
1769 {
1770 "type" : "header",
1771 "value" : "gtpu_udp"
1772 }
1773 ],
1774 "source_info" : {
1775 "filename" : "include/spgw.p4",
1776 "line" : 55,
1777 "column" : 8,
1778 "source_fragment" : "gtpu_udp.setInvalid()"
1779 }
1780 },
1781 {
1782 "op" : "remove_header",
1783 "parameters" : [
1784 {
1785 "type" : "header",
1786 "value" : "gtpu"
1787 }
1788 ],
1789 "source_info" : {
1790 "filename" : "include/spgw.p4",
1791 "line" : 56,
1792 "column" : 8,
1793 "source_fragment" : "gtpu.setInvalid()"
1794 }
1795 }
1796 ]
1797 },
1798 {
1799 "name" : "FabricIngress.spgw_ingress.set_dl_sess_info",
1800 "id" : 12,
1801 "runtime_data" : [
1802 {
1803 "name" : "teid",
1804 "bitwidth" : 32
1805 },
1806 {
1807 "name" : "s1u_enb_addr",
1808 "bitwidth" : 32
1809 },
1810 {
1811 "name" : "s1u_sgw_addr",
1812 "bitwidth" : 32
1813 }
1814 ],
1815 "primitives" : [
1816 {
1817 "op" : "assign",
1818 "parameters" : [
1819 {
1820 "type" : "field",
1821 "value" : ["userMetadata.spgw", "teid"]
1822 },
1823 {
1824 "type" : "runtime_data",
1825 "value" : 0
1826 }
1827 ],
1828 "source_info" : {
1829 "filename" : "include/spgw.p4",
1830 "line" : 62,
1831 "column" : 8,
1832 "source_fragment" : "spgw_meta.teid = teid"
1833 }
1834 },
1835 {
1836 "op" : "assign",
1837 "parameters" : [
1838 {
1839 "type" : "field",
1840 "value" : ["userMetadata.spgw", "s1u_enb_addr"]
1841 },
1842 {
1843 "type" : "runtime_data",
1844 "value" : 1
1845 }
1846 ],
1847 "source_info" : {
1848 "filename" : "include/spgw.p4",
1849 "line" : 63,
1850 "column" : 8,
1851 "source_fragment" : "spgw_meta.s1u_enb_addr = s1u_enb_addr"
1852 }
1853 },
1854 {
1855 "op" : "assign",
1856 "parameters" : [
1857 {
1858 "type" : "field",
1859 "value" : ["userMetadata.spgw", "s1u_sgw_addr"]
1860 },
1861 {
1862 "type" : "runtime_data",
1863 "value" : 2
1864 }
1865 ],
1866 "source_info" : {
1867 "filename" : "include/spgw.p4",
1868 "line" : 64,
1869 "column" : 8,
1870 "source_fragment" : "spgw_meta.s1u_sgw_addr = s1u_sgw_addr"
1871 }
1872 }
1873 ]
1874 },
1875 {
1876 "name" : "FabricIngress.process_set_source_sink.int_set_source",
1877 "id" : 13,
1878 "runtime_data" : [],
1879 "primitives" : [
1880 {
1881 "op" : "assign",
1882 "parameters" : [
1883 {
1884 "type" : "field",
1885 "value" : ["userMetadata.int_meta", "source"]
1886 },
1887 {
1888 "type" : "expression",
1889 "value" : {
1890 "type" : "expression",
1891 "value" : {
1892 "op" : "b2d",
1893 "left" : null,
1894 "right" : {
1895 "type" : "bool",
1896 "value" : true
1897 }
1898 }
1899 }
1900 }
1901 ],
1902 "source_info" : {
1903 "filename" : "include/int/int_main.p4",
1904 "line" : 42,
1905 "column" : 8,
1906 "source_fragment" : "fabric_metadata.int_meta.source = true"
1907 }
1908 }
1909 ]
1910 },
1911 {
1912 "name" : "FabricIngress.filtering.drop",
1913 "id" : 14,
1914 "runtime_data" : [],
1915 "primitives" : [
1916 {
1917 "op" : "drop",
1918 "parameters" : [],
1919 "source_info" : {
1920 "filename" : "include/control/filtering.p4",
1921 "line" : 37,
1922 "column" : 8,
1923 "source_fragment" : "mark_to_drop()"
1924 }
1925 }
1926 ]
1927 },
1928 {
1929 "name" : "FabricIngress.filtering.set_vlan",
1930 "id" : 15,
1931 "runtime_data" : [
1932 {
1933 "name" : "new_vlan_id",
1934 "bitwidth" : 12
1935 }
1936 ],
1937 "primitives" : [
1938 {
1939 "op" : "assign",
1940 "parameters" : [
1941 {
1942 "type" : "field",
1943 "value" : ["vlan_tag", "vlan_id"]
1944 },
1945 {
1946 "type" : "runtime_data",
1947 "value" : 0
1948 }
1949 ],
1950 "source_info" : {
1951 "filename" : "include/control/filtering.p4",
1952 "line" : 42,
1953 "column" : 8,
1954 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id"
1955 }
1956 }
1957 ]
1958 },
1959 {
1960 "name" : "FabricIngress.filtering.push_internal_vlan",
1961 "id" : 16,
1962 "runtime_data" : [
1963 {
1964 "name" : "new_vlan_id",
1965 "bitwidth" : 12
1966 }
1967 ],
1968 "primitives" : [
1969 {
1970 "op" : "add_header",
1971 "parameters" : [
1972 {
1973 "type" : "header",
1974 "value" : "vlan_tag"
1975 }
1976 ],
1977 "source_info" : {
1978 "filename" : "include/control/filtering.p4",
1979 "line" : 49,
1980 "column" : 8,
1981 "source_fragment" : "hdr.vlan_tag.setValid()"
1982 }
1983 },
1984 {
1985 "op" : "assign",
1986 "parameters" : [
1987 {
1988 "type" : "field",
1989 "value" : ["vlan_tag", "cfi"]
1990 },
1991 {
1992 "type" : "hexstr",
1993 "value" : "0x00"
1994 }
1995 ],
1996 "source_info" : {
1997 "filename" : "include/control/filtering.p4",
1998 "line" : 50,
1999 "column" : 8,
2000 "source_fragment" : "hdr.vlan_tag.cfi = 0"
2001 }
2002 },
2003 {
2004 "op" : "assign",
2005 "parameters" : [
2006 {
2007 "type" : "field",
2008 "value" : ["vlan_tag", "pri"]
2009 },
2010 {
2011 "type" : "hexstr",
2012 "value" : "0x00"
2013 }
2014 ],
2015 "source_info" : {
2016 "filename" : "include/control/filtering.p4",
2017 "line" : 51,
2018 "column" : 8,
2019 "source_fragment" : "hdr.vlan_tag.pri = 0"
2020 }
2021 },
2022 {
2023 "op" : "assign",
2024 "parameters" : [
2025 {
2026 "type" : "field",
2027 "value" : ["vlan_tag", "ether_type"]
2028 },
2029 {
2030 "type" : "field",
2031 "value" : ["ethernet", "ether_type"]
2032 }
2033 ],
2034 "source_info" : {
2035 "filename" : "include/control/filtering.p4",
2036 "line" : 52,
2037 "column" : 8,
2038 "source_fragment" : "hdr.vlan_tag.ether_type = hdr.ethernet.ether_type"
2039 }
2040 },
2041 {
2042 "op" : "assign",
2043 "parameters" : [
2044 {
2045 "type" : "field",
2046 "value" : ["ethernet", "ether_type"]
2047 },
2048 {
2049 "type" : "hexstr",
2050 "value" : "0x8100"
2051 }
2052 ],
2053 "source_info" : {
2054 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07002055 "line" : 99,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002056 "column" : 31,
2057 "source_fragment" : "0x8100; ..."
2058 }
2059 },
2060 {
2061 "op" : "assign",
2062 "parameters" : [
2063 {
2064 "type" : "field",
2065 "value" : ["vlan_tag", "vlan_id"]
2066 },
2067 {
2068 "type" : "runtime_data",
2069 "value" : 0
2070 }
2071 ],
2072 "source_info" : {
2073 "filename" : "include/control/filtering.p4",
2074 "line" : 54,
2075 "column" : 8,
2076 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id"
2077 }
2078 },
2079 {
2080 "op" : "assign",
2081 "parameters" : [
2082 {
2083 "type" : "field",
2084 "value" : ["scalars", "fabric_metadata_t.pop_vlan_when_packet_in"]
2085 },
2086 {
2087 "type" : "expression",
2088 "value" : {
2089 "type" : "expression",
2090 "value" : {
2091 "op" : "b2d",
2092 "left" : null,
2093 "right" : {
2094 "type" : "bool",
2095 "value" : true
2096 }
2097 }
2098 }
2099 }
2100 ],
2101 "source_info" : {
2102 "filename" : "include/control/filtering.p4",
2103 "line" : 57,
2104 "column" : 8,
2105 "source_fragment" : "fabric_metadata.pop_vlan_when_packet_in = true"
2106 }
2107 }
2108 ]
2109 },
2110 {
2111 "name" : "FabricIngress.filtering.nop_ingress_port_vlan",
2112 "id" : 17,
2113 "runtime_data" : [],
2114 "primitives" : []
2115 },
2116 {
2117 "name" : "FabricIngress.filtering.set_forwarding_type",
2118 "id" : 18,
2119 "runtime_data" : [
2120 {
2121 "name" : "fwd_type",
2122 "bitwidth" : 3
2123 }
2124 ],
2125 "primitives" : [
2126 {
2127 "op" : "assign",
2128 "parameters" : [
2129 {
2130 "type" : "field",
2131 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
2132 },
2133 {
2134 "type" : "runtime_data",
2135 "value" : 0
2136 }
2137 ],
2138 "source_info" : {
2139 "filename" : "include/control/filtering.p4",
2140 "line" : 99,
2141 "column" : 8,
2142 "source_fragment" : "fabric_metadata.fwd_type = fwd_type"
2143 }
2144 }
2145 ]
2146 },
2147 {
2148 "name" : "FabricIngress.forwarding.set_next_id_bridging",
2149 "id" : 19,
2150 "runtime_data" : [
2151 {
2152 "name" : "next_id",
2153 "bitwidth" : 32
2154 }
2155 ],
2156 "primitives" : [
2157 {
2158 "op" : "assign",
2159 "parameters" : [
2160 {
2161 "type" : "field",
2162 "value" : ["scalars", "fabric_metadata_t.next_id"]
2163 },
2164 {
2165 "type" : "runtime_data",
2166 "value" : 0
2167 }
2168 ],
2169 "source_info" : {
2170 "filename" : "include/control/forwarding.p4",
2171 "line" : 37,
2172 "column" : 8,
2173 "source_fragment" : "fabric_metadata.next_id = next_id"
2174 }
2175 }
2176 ]
2177 },
2178 {
2179 "name" : "FabricIngress.forwarding.pop_mpls_and_next",
2180 "id" : 20,
2181 "runtime_data" : [
2182 {
2183 "name" : "next_id",
2184 "bitwidth" : 32
2185 }
2186 ],
2187 "primitives" : [
2188 {
2189 "op" : "remove_header",
2190 "parameters" : [
2191 {
2192 "type" : "header",
2193 "value" : "mpls"
2194 }
2195 ],
2196 "source_info" : {
2197 "filename" : "include/control/forwarding.p4",
2198 "line" : 60,
2199 "column" : 8,
2200 "source_fragment" : "hdr.mpls.setInvalid()"
2201 }
2202 },
2203 {
2204 "op" : "assign",
2205 "parameters" : [
2206 {
2207 "type" : "field",
2208 "value" : ["scalars", "fabric_metadata_t.next_id"]
2209 },
2210 {
2211 "type" : "runtime_data",
2212 "value" : 0
2213 }
2214 ],
2215 "source_info" : {
2216 "filename" : "include/control/forwarding.p4",
2217 "line" : 61,
2218 "column" : 8,
2219 "source_fragment" : "fabric_metadata.next_id = next_id"
2220 }
2221 }
2222 ]
2223 },
2224 {
2225 "name" : "FabricIngress.forwarding.set_next_id_routing_v4",
2226 "id" : 21,
2227 "runtime_data" : [
2228 {
2229 "name" : "next_id",
2230 "bitwidth" : 32
2231 }
2232 ],
2233 "primitives" : [
2234 {
2235 "op" : "assign",
2236 "parameters" : [
2237 {
2238 "type" : "field",
2239 "value" : ["scalars", "fabric_metadata_t.next_id"]
2240 },
2241 {
2242 "type" : "runtime_data",
2243 "value" : 0
2244 }
2245 ],
2246 "source_info" : {
2247 "filename" : "include/control/forwarding.p4",
2248 "line" : 83,
2249 "column" : 8,
2250 "source_fragment" : "fabric_metadata.next_id = next_id"
2251 }
2252 }
2253 ]
2254 },
2255 {
2256 "name" : "FabricIngress.forwarding.nop_routing_v4",
2257 "id" : 22,
2258 "runtime_data" : [],
2259 "primitives" : []
2260 },
2261 {
2262 "name" : "FabricIngress.forwarding.set_next_id_acl",
2263 "id" : 23,
2264 "runtime_data" : [
2265 {
2266 "name" : "next_id",
2267 "bitwidth" : 32
2268 }
2269 ],
2270 "primitives" : [
2271 {
2272 "op" : "assign",
2273 "parameters" : [
2274 {
2275 "type" : "field",
2276 "value" : ["scalars", "fabric_metadata_t.next_id"]
2277 },
2278 {
2279 "type" : "runtime_data",
2280 "value" : 0
2281 }
2282 ],
2283 "source_info" : {
2284 "filename" : "include/control/forwarding.p4",
2285 "line" : 110,
2286 "column" : 8,
2287 "source_fragment" : "fabric_metadata.next_id = next_id"
2288 }
2289 }
2290 ]
2291 },
2292 {
2293 "name" : "FabricIngress.forwarding.punt_to_cpu",
2294 "id" : 24,
2295 "runtime_data" : [],
2296 "primitives" : [
2297 {
2298 "op" : "assign",
2299 "parameters" : [
2300 {
2301 "type" : "field",
2302 "value" : ["standard_metadata", "egress_spec"]
2303 },
2304 {
2305 "type" : "hexstr",
2306 "value" : "0x00ff"
2307 }
2308 ],
2309 "source_info" : {
2310 "filename" : "include/control/forwarding.p4",
2311 "line" : 116,
2312 "column" : 8,
2313 "source_fragment" : "standard_metadata.egress_spec = 255"
2314 }
2315 },
2316 {
2317 "op" : "exit",
2318 "parameters" : [],
2319 "source_info" : {
2320 "filename" : "include/control/forwarding.p4",
2321 "line" : 118,
2322 "column" : 8,
2323 "source_fragment" : "exit"
2324 }
2325 }
2326 ]
2327 },
2328 {
2329 "name" : "FabricIngress.forwarding.clone_to_cpu",
2330 "id" : 25,
2331 "runtime_data" : [],
2332 "primitives" : [
2333 {
2334 "op" : "assign",
2335 "parameters" : [
2336 {
2337 "type" : "field",
2338 "value" : ["scalars", "fabric_metadata_t.clone_to_cpu"]
2339 },
2340 {
2341 "type" : "expression",
2342 "value" : {
2343 "type" : "expression",
2344 "value" : {
2345 "op" : "b2d",
2346 "left" : null,
2347 "right" : {
2348 "type" : "bool",
2349 "value" : true
2350 }
2351 }
2352 }
2353 }
2354 ],
2355 "source_info" : {
2356 "filename" : "include/control/forwarding.p4",
2357 "line" : 123,
2358 "column" : 8,
2359 "source_fragment" : "fabric_metadata.clone_to_cpu = true"
2360 }
2361 }
2362 ]
2363 },
2364 {
2365 "name" : "FabricIngress.forwarding.drop",
2366 "id" : 26,
2367 "runtime_data" : [],
2368 "primitives" : [
2369 {
2370 "op" : "drop",
2371 "parameters" : [],
2372 "source_info" : {
2373 "filename" : "include/control/forwarding.p4",
2374 "line" : 128,
2375 "column" : 8,
2376 "source_fragment" : "mark_to_drop()"
2377 }
2378 }
2379 ]
2380 },
2381 {
2382 "name" : "FabricIngress.forwarding.nop_acl",
2383 "id" : 27,
2384 "runtime_data" : [],
2385 "primitives" : []
2386 },
2387 {
2388 "name" : "FabricIngress.next.set_vlan",
2389 "id" : 28,
2390 "runtime_data" : [
2391 {
2392 "name" : "new_vlan_id",
2393 "bitwidth" : 12
2394 }
2395 ],
2396 "primitives" : [
2397 {
2398 "op" : "assign",
2399 "parameters" : [
2400 {
2401 "type" : "field",
2402 "value" : ["vlan_tag", "vlan_id"]
2403 },
2404 {
2405 "type" : "runtime_data",
2406 "value" : 0
2407 }
2408 ],
2409 "source_info" : {
2410 "filename" : "include/control/next.p4",
2411 "line" : 61,
2412 "column" : 8,
2413 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id"
2414 }
2415 }
2416 ]
2417 },
2418 {
2419 "name" : "FabricIngress.next.output_simple",
2420 "id" : 29,
2421 "runtime_data" : [
2422 {
2423 "name" : "port_num",
2424 "bitwidth" : 9
2425 }
2426 ],
2427 "primitives" : [
2428 {
2429 "op" : "assign",
2430 "parameters" : [
2431 {
2432 "type" : "field",
2433 "value" : ["standard_metadata", "egress_spec"]
2434 },
2435 {
2436 "type" : "runtime_data",
2437 "value" : 0
2438 }
2439 ],
2440 "source_info" : {
2441 "filename" : "include/control/next.p4",
2442 "line" : 85,
2443 "column" : 8,
2444 "source_fragment" : "standard_metadata.egress_spec = port_num"
2445 }
2446 }
2447 ]
2448 },
2449 {
2450 "name" : "FabricIngress.next.set_vlan_output",
2451 "id" : 30,
2452 "runtime_data" : [
2453 {
2454 "name" : "new_vlan_id",
2455 "bitwidth" : 12
2456 },
2457 {
2458 "name" : "port_num",
2459 "bitwidth" : 9
2460 }
2461 ],
2462 "primitives" : [
2463 {
2464 "op" : "assign",
2465 "parameters" : [
2466 {
2467 "type" : "field",
2468 "value" : ["vlan_tag", "vlan_id"]
2469 },
2470 {
2471 "type" : "runtime_data",
2472 "value" : 0
2473 }
2474 ],
2475 "source_info" : {
2476 "filename" : "include/control/next.p4",
2477 "line" : 90,
2478 "column" : 8,
2479 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id"
2480 }
2481 },
2482 {
2483 "op" : "assign",
2484 "parameters" : [
2485 {
2486 "type" : "field",
2487 "value" : ["standard_metadata", "egress_spec"]
2488 },
2489 {
2490 "type" : "runtime_data",
2491 "value" : 1
2492 }
2493 ],
2494 "source_info" : {
2495 "filename" : "include/control/next.p4",
2496 "line" : 85,
2497 "column" : 8,
2498 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2499 }
2500 }
2501 ]
2502 },
2503 {
2504 "name" : "FabricIngress.next.l3_routing_simple",
2505 "id" : 31,
2506 "runtime_data" : [
2507 {
2508 "name" : "port_num",
2509 "bitwidth" : 9
2510 },
2511 {
2512 "name" : "smac",
2513 "bitwidth" : 48
2514 },
2515 {
2516 "name" : "dmac",
2517 "bitwidth" : 48
2518 }
2519 ],
2520 "primitives" : [
2521 {
2522 "op" : "assign",
2523 "parameters" : [
2524 {
2525 "type" : "field",
2526 "value" : ["ethernet", "src_addr"]
2527 },
2528 {
2529 "type" : "runtime_data",
2530 "value" : 1
2531 }
2532 ],
2533 "source_info" : {
2534 "filename" : "include/control/next.p4",
2535 "line" : 37,
2536 "column" : 8,
2537 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2538 }
2539 },
2540 {
2541 "op" : "assign",
2542 "parameters" : [
2543 {
2544 "type" : "field",
2545 "value" : ["ethernet", "dst_addr"]
2546 },
2547 {
2548 "type" : "runtime_data",
2549 "value" : 2
2550 }
2551 ],
2552 "source_info" : {
2553 "filename" : "include/control/next.p4",
2554 "line" : 41,
2555 "column" : 8,
2556 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2557 }
2558 },
2559 {
2560 "op" : "assign",
2561 "parameters" : [
2562 {
2563 "type" : "field",
2564 "value" : ["standard_metadata", "egress_spec"]
2565 },
2566 {
2567 "type" : "runtime_data",
2568 "value" : 0
2569 }
2570 ],
2571 "source_info" : {
2572 "filename" : "include/control/next.p4",
2573 "line" : 85,
2574 "column" : 8,
2575 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2576 }
2577 }
2578 ]
2579 },
2580 {
2581 "name" : "FabricIngress.next.mpls_routing_v4_simple",
2582 "id" : 32,
2583 "runtime_data" : [
2584 {
2585 "name" : "port_num",
2586 "bitwidth" : 9
2587 },
2588 {
2589 "name" : "smac",
2590 "bitwidth" : 48
2591 },
2592 {
2593 "name" : "dmac",
2594 "bitwidth" : 48
2595 },
2596 {
2597 "name" : "label",
2598 "bitwidth" : 20
2599 }
2600 ],
2601 "primitives" : [
2602 {
2603 "op" : "assign",
2604 "parameters" : [
2605 {
2606 "type" : "field",
2607 "value" : ["ethernet", "src_addr"]
2608 },
2609 {
2610 "type" : "runtime_data",
2611 "value" : 1
2612 }
2613 ],
2614 "source_info" : {
2615 "filename" : "include/control/next.p4",
2616 "line" : 37,
2617 "column" : 8,
2618 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2619 }
2620 },
2621 {
2622 "op" : "assign",
2623 "parameters" : [
2624 {
2625 "type" : "field",
2626 "value" : ["ethernet", "dst_addr"]
2627 },
2628 {
2629 "type" : "runtime_data",
2630 "value" : 2
2631 }
2632 ],
2633 "source_info" : {
2634 "filename" : "include/control/next.p4",
2635 "line" : 41,
2636 "column" : 8,
2637 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2638 }
2639 },
2640 {
2641 "op" : "assign",
2642 "parameters" : [
2643 {
2644 "type" : "field",
2645 "value" : ["standard_metadata", "egress_spec"]
2646 },
2647 {
2648 "type" : "runtime_data",
2649 "value" : 0
2650 }
2651 ],
2652 "source_info" : {
2653 "filename" : "include/control/next.p4",
2654 "line" : 85,
2655 "column" : 8,
2656 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2657 }
2658 },
2659 {
2660 "op" : "add_header",
2661 "parameters" : [
2662 {
2663 "type" : "header",
2664 "value" : "mpls"
2665 }
2666 ],
2667 "source_info" : {
2668 "filename" : "include/control/next.p4",
2669 "line" : 46,
2670 "column" : 8,
2671 "source_fragment" : "hdr.mpls.setValid()"
2672 }
2673 },
2674 {
2675 "op" : "assign",
2676 "parameters" : [
2677 {
2678 "type" : "field",
2679 "value" : ["vlan_tag", "ether_type"]
2680 },
2681 {
2682 "type" : "hexstr",
2683 "value" : "0x8847"
2684 }
2685 ],
2686 "source_info" : {
2687 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07002688 "line" : 100,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002689 "column" : 31,
2690 "source_fragment" : "0x8847; ..."
2691 }
2692 },
2693 {
2694 "op" : "assign",
2695 "parameters" : [
2696 {
2697 "type" : "field",
2698 "value" : ["mpls", "label"]
2699 },
2700 {
2701 "type" : "runtime_data",
2702 "value" : 3
2703 }
2704 ],
2705 "source_info" : {
2706 "filename" : "include/control/next.p4",
2707 "line" : 48,
2708 "column" : 8,
2709 "source_fragment" : "hdr.mpls.label = label; ..."
2710 }
2711 },
2712 {
2713 "op" : "assign",
2714 "parameters" : [
2715 {
2716 "type" : "field",
2717 "value" : ["mpls", "tc"]
2718 },
2719 {
2720 "type" : "hexstr",
2721 "value" : "0x00"
2722 }
2723 ],
2724 "source_info" : {
2725 "filename" : "include/control/next.p4",
2726 "line" : 49,
2727 "column" : 8,
2728 "source_fragment" : "hdr.mpls.tc = tc; ..."
2729 }
2730 },
2731 {
2732 "op" : "assign",
2733 "parameters" : [
2734 {
2735 "type" : "field",
2736 "value" : ["mpls", "bos"]
2737 },
2738 {
2739 "type" : "hexstr",
2740 "value" : "0x01"
2741 }
2742 ],
2743 "source_info" : {
2744 "filename" : "include/control/next.p4",
2745 "line" : 50,
2746 "column" : 8,
2747 "source_fragment" : "hdr.mpls.bos = 1w1"
2748 }
2749 },
2750 {
2751 "op" : "assign",
2752 "parameters" : [
2753 {
2754 "type" : "field",
2755 "value" : ["mpls", "ttl"]
2756 },
2757 {
2758 "type" : "hexstr",
2759 "value" : "0x40"
2760 }
2761 ],
2762 "source_info" : {
2763 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07002764 "line" : 123,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002765 "column" : 32,
2766 "source_fragment" : "64; ..."
2767 }
2768 }
2769 ]
2770 },
2771 {
2772 "name" : "FabricIngress.next.mpls_routing_v6_simple",
2773 "id" : 33,
2774 "runtime_data" : [
2775 {
2776 "name" : "port_num",
2777 "bitwidth" : 9
2778 },
2779 {
2780 "name" : "smac",
2781 "bitwidth" : 48
2782 },
2783 {
2784 "name" : "dmac",
2785 "bitwidth" : 48
2786 },
2787 {
2788 "name" : "label",
2789 "bitwidth" : 20
2790 }
2791 ],
2792 "primitives" : [
2793 {
2794 "op" : "assign",
2795 "parameters" : [
2796 {
2797 "type" : "field",
2798 "value" : ["ethernet", "src_addr"]
2799 },
2800 {
2801 "type" : "runtime_data",
2802 "value" : 1
2803 }
2804 ],
2805 "source_info" : {
2806 "filename" : "include/control/next.p4",
2807 "line" : 37,
2808 "column" : 8,
2809 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2810 }
2811 },
2812 {
2813 "op" : "assign",
2814 "parameters" : [
2815 {
2816 "type" : "field",
2817 "value" : ["ethernet", "dst_addr"]
2818 },
2819 {
2820 "type" : "runtime_data",
2821 "value" : 2
2822 }
2823 ],
2824 "source_info" : {
2825 "filename" : "include/control/next.p4",
2826 "line" : 41,
2827 "column" : 8,
2828 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2829 }
2830 },
2831 {
2832 "op" : "assign",
2833 "parameters" : [
2834 {
2835 "type" : "field",
2836 "value" : ["standard_metadata", "egress_spec"]
2837 },
2838 {
2839 "type" : "runtime_data",
2840 "value" : 0
2841 }
2842 ],
2843 "source_info" : {
2844 "filename" : "include/control/next.p4",
2845 "line" : 85,
2846 "column" : 8,
2847 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2848 }
2849 },
2850 {
2851 "op" : "add_header",
2852 "parameters" : [
2853 {
2854 "type" : "header",
2855 "value" : "mpls"
2856 }
2857 ],
2858 "source_info" : {
2859 "filename" : "include/control/next.p4",
2860 "line" : 46,
2861 "column" : 8,
2862 "source_fragment" : "hdr.mpls.setValid()"
2863 }
2864 },
2865 {
2866 "op" : "assign",
2867 "parameters" : [
2868 {
2869 "type" : "field",
2870 "value" : ["vlan_tag", "ether_type"]
2871 },
2872 {
2873 "type" : "hexstr",
2874 "value" : "0x8847"
2875 }
2876 ],
2877 "source_info" : {
2878 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07002879 "line" : 100,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002880 "column" : 31,
2881 "source_fragment" : "0x8847; ..."
2882 }
2883 },
2884 {
2885 "op" : "assign",
2886 "parameters" : [
2887 {
2888 "type" : "field",
2889 "value" : ["mpls", "label"]
2890 },
2891 {
2892 "type" : "runtime_data",
2893 "value" : 3
2894 }
2895 ],
2896 "source_info" : {
2897 "filename" : "include/control/next.p4",
2898 "line" : 48,
2899 "column" : 8,
2900 "source_fragment" : "hdr.mpls.label = label; ..."
2901 }
2902 },
2903 {
2904 "op" : "assign",
2905 "parameters" : [
2906 {
2907 "type" : "field",
2908 "value" : ["mpls", "tc"]
2909 },
2910 {
2911 "type" : "hexstr",
2912 "value" : "0x00"
2913 }
2914 ],
2915 "source_info" : {
2916 "filename" : "include/control/next.p4",
2917 "line" : 49,
2918 "column" : 8,
2919 "source_fragment" : "hdr.mpls.tc = tc; ..."
2920 }
2921 },
2922 {
2923 "op" : "assign",
2924 "parameters" : [
2925 {
2926 "type" : "field",
2927 "value" : ["mpls", "bos"]
2928 },
2929 {
2930 "type" : "hexstr",
2931 "value" : "0x01"
2932 }
2933 ],
2934 "source_info" : {
2935 "filename" : "include/control/next.p4",
2936 "line" : 50,
2937 "column" : 8,
2938 "source_fragment" : "hdr.mpls.bos = 1w1"
2939 }
2940 },
2941 {
2942 "op" : "assign",
2943 "parameters" : [
2944 {
2945 "type" : "field",
2946 "value" : ["mpls", "ttl"]
2947 },
2948 {
2949 "type" : "hexstr",
2950 "value" : "0x40"
2951 }
2952 ],
2953 "source_info" : {
2954 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07002955 "line" : 123,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002956 "column" : 32,
2957 "source_fragment" : "64; ..."
2958 }
2959 }
2960 ]
2961 },
2962 {
2963 "name" : "FabricIngress.next.l3_routing_vlan",
2964 "id" : 34,
2965 "runtime_data" : [
2966 {
2967 "name" : "port_num",
2968 "bitwidth" : 9
2969 },
2970 {
2971 "name" : "smac",
2972 "bitwidth" : 48
2973 },
2974 {
2975 "name" : "dmac",
2976 "bitwidth" : 48
2977 },
2978 {
2979 "name" : "new_vlan_id",
2980 "bitwidth" : 12
2981 }
2982 ],
2983 "primitives" : [
2984 {
2985 "op" : "assign",
2986 "parameters" : [
2987 {
2988 "type" : "field",
2989 "value" : ["ethernet", "src_addr"]
2990 },
2991 {
2992 "type" : "runtime_data",
2993 "value" : 1
2994 }
2995 ],
2996 "source_info" : {
2997 "filename" : "include/control/next.p4",
2998 "line" : 37,
2999 "column" : 8,
3000 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
3001 }
3002 },
3003 {
3004 "op" : "assign",
3005 "parameters" : [
3006 {
3007 "type" : "field",
3008 "value" : ["ethernet", "dst_addr"]
3009 },
3010 {
3011 "type" : "runtime_data",
3012 "value" : 2
3013 }
3014 ],
3015 "source_info" : {
3016 "filename" : "include/control/next.p4",
3017 "line" : 41,
3018 "column" : 8,
3019 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
3020 }
3021 },
3022 {
3023 "op" : "assign",
3024 "parameters" : [
3025 {
3026 "type" : "field",
3027 "value" : ["vlan_tag", "vlan_id"]
3028 },
3029 {
3030 "type" : "runtime_data",
3031 "value" : 3
3032 }
3033 ],
3034 "source_info" : {
3035 "filename" : "include/control/next.p4",
3036 "line" : 90,
3037 "column" : 8,
3038 "source_fragment" : "hdr.vlan_tag.vlan_id = new_vlan_id; ..."
3039 }
3040 },
3041 {
3042 "op" : "assign",
3043 "parameters" : [
3044 {
3045 "type" : "field",
3046 "value" : ["standard_metadata", "egress_spec"]
3047 },
3048 {
3049 "type" : "runtime_data",
3050 "value" : 0
3051 }
3052 ],
3053 "source_info" : {
3054 "filename" : "include/control/next.p4",
3055 "line" : 85,
3056 "column" : 8,
3057 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
3058 }
3059 }
3060 ]
3061 },
3062 {
3063 "name" : "FabricIngress.next.l3_routing_hashed",
3064 "id" : 35,
3065 "runtime_data" : [
3066 {
3067 "name" : "port_num",
3068 "bitwidth" : 9
3069 },
3070 {
3071 "name" : "smac",
3072 "bitwidth" : 48
3073 },
3074 {
3075 "name" : "dmac",
3076 "bitwidth" : 48
3077 }
3078 ],
3079 "primitives" : [
3080 {
3081 "op" : "assign",
3082 "parameters" : [
3083 {
3084 "type" : "field",
3085 "value" : ["ethernet", "src_addr"]
3086 },
3087 {
3088 "type" : "runtime_data",
3089 "value" : 1
3090 }
3091 ],
3092 "source_info" : {
3093 "filename" : "include/control/next.p4",
3094 "line" : 37,
3095 "column" : 8,
3096 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
3097 }
3098 },
3099 {
3100 "op" : "assign",
3101 "parameters" : [
3102 {
3103 "type" : "field",
3104 "value" : ["ethernet", "dst_addr"]
3105 },
3106 {
3107 "type" : "runtime_data",
3108 "value" : 2
3109 }
3110 ],
3111 "source_info" : {
3112 "filename" : "include/control/next.p4",
3113 "line" : 41,
3114 "column" : 8,
3115 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
3116 }
3117 },
3118 {
3119 "op" : "assign",
3120 "parameters" : [
3121 {
3122 "type" : "field",
3123 "value" : ["standard_metadata", "egress_spec"]
3124 },
3125 {
3126 "type" : "runtime_data",
3127 "value" : 0
3128 }
3129 ],
3130 "source_info" : {
3131 "filename" : "include/control/next.p4",
3132 "line" : 149,
3133 "column" : 8,
3134 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
3135 }
3136 }
3137 ]
3138 },
3139 {
3140 "name" : "FabricIngress.next.mpls_routing_v4_hashed",
3141 "id" : 36,
3142 "runtime_data" : [
3143 {
3144 "name" : "port_num",
3145 "bitwidth" : 9
3146 },
3147 {
3148 "name" : "smac",
3149 "bitwidth" : 48
3150 },
3151 {
3152 "name" : "dmac",
3153 "bitwidth" : 48
3154 },
3155 {
3156 "name" : "label",
3157 "bitwidth" : 20
3158 }
3159 ],
3160 "primitives" : [
3161 {
3162 "op" : "assign",
3163 "parameters" : [
3164 {
3165 "type" : "field",
3166 "value" : ["ethernet", "src_addr"]
3167 },
3168 {
3169 "type" : "runtime_data",
3170 "value" : 1
3171 }
3172 ],
3173 "source_info" : {
3174 "filename" : "include/control/next.p4",
3175 "line" : 37,
3176 "column" : 8,
3177 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
3178 }
3179 },
3180 {
3181 "op" : "assign",
3182 "parameters" : [
3183 {
3184 "type" : "field",
3185 "value" : ["ethernet", "dst_addr"]
3186 },
3187 {
3188 "type" : "runtime_data",
3189 "value" : 2
3190 }
3191 ],
3192 "source_info" : {
3193 "filename" : "include/control/next.p4",
3194 "line" : 41,
3195 "column" : 8,
3196 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
3197 }
3198 },
3199 {
3200 "op" : "assign",
3201 "parameters" : [
3202 {
3203 "type" : "field",
3204 "value" : ["standard_metadata", "egress_spec"]
3205 },
3206 {
3207 "type" : "runtime_data",
3208 "value" : 0
3209 }
3210 ],
3211 "source_info" : {
3212 "filename" : "include/control/next.p4",
3213 "line" : 149,
3214 "column" : 8,
3215 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
3216 }
3217 },
3218 {
3219 "op" : "add_header",
3220 "parameters" : [
3221 {
3222 "type" : "header",
3223 "value" : "mpls"
3224 }
3225 ],
3226 "source_info" : {
3227 "filename" : "include/control/next.p4",
3228 "line" : 46,
3229 "column" : 8,
3230 "source_fragment" : "hdr.mpls.setValid()"
3231 }
3232 },
3233 {
3234 "op" : "assign",
3235 "parameters" : [
3236 {
3237 "type" : "field",
3238 "value" : ["vlan_tag", "ether_type"]
3239 },
3240 {
3241 "type" : "hexstr",
3242 "value" : "0x8847"
3243 }
3244 ],
3245 "source_info" : {
3246 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07003247 "line" : 100,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003248 "column" : 31,
3249 "source_fragment" : "0x8847; ..."
3250 }
3251 },
3252 {
3253 "op" : "assign",
3254 "parameters" : [
3255 {
3256 "type" : "field",
3257 "value" : ["mpls", "label"]
3258 },
3259 {
3260 "type" : "runtime_data",
3261 "value" : 3
3262 }
3263 ],
3264 "source_info" : {
3265 "filename" : "include/control/next.p4",
3266 "line" : 48,
3267 "column" : 8,
3268 "source_fragment" : "hdr.mpls.label = label; ..."
3269 }
3270 },
3271 {
3272 "op" : "assign",
3273 "parameters" : [
3274 {
3275 "type" : "field",
3276 "value" : ["mpls", "tc"]
3277 },
3278 {
3279 "type" : "hexstr",
3280 "value" : "0x00"
3281 }
3282 ],
3283 "source_info" : {
3284 "filename" : "include/control/next.p4",
3285 "line" : 49,
3286 "column" : 8,
3287 "source_fragment" : "hdr.mpls.tc = tc; ..."
3288 }
3289 },
3290 {
3291 "op" : "assign",
3292 "parameters" : [
3293 {
3294 "type" : "field",
3295 "value" : ["mpls", "bos"]
3296 },
3297 {
3298 "type" : "hexstr",
3299 "value" : "0x01"
3300 }
3301 ],
3302 "source_info" : {
3303 "filename" : "include/control/next.p4",
3304 "line" : 50,
3305 "column" : 8,
3306 "source_fragment" : "hdr.mpls.bos = 1w1"
3307 }
3308 },
3309 {
3310 "op" : "assign",
3311 "parameters" : [
3312 {
3313 "type" : "field",
3314 "value" : ["mpls", "ttl"]
3315 },
3316 {
3317 "type" : "hexstr",
3318 "value" : "0x40"
3319 }
3320 ],
3321 "source_info" : {
3322 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07003323 "line" : 123,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003324 "column" : 32,
3325 "source_fragment" : "64; ..."
3326 }
3327 }
3328 ]
3329 },
3330 {
3331 "name" : "FabricIngress.next.mpls_routing_v6_hashed",
3332 "id" : 37,
3333 "runtime_data" : [
3334 {
3335 "name" : "port_num",
3336 "bitwidth" : 9
3337 },
3338 {
3339 "name" : "smac",
3340 "bitwidth" : 48
3341 },
3342 {
3343 "name" : "dmac",
3344 "bitwidth" : 48
3345 },
3346 {
3347 "name" : "label",
3348 "bitwidth" : 20
3349 }
3350 ],
3351 "primitives" : [
3352 {
3353 "op" : "assign",
3354 "parameters" : [
3355 {
3356 "type" : "field",
3357 "value" : ["ethernet", "src_addr"]
3358 },
3359 {
3360 "type" : "runtime_data",
3361 "value" : 1
3362 }
3363 ],
3364 "source_info" : {
3365 "filename" : "include/control/next.p4",
3366 "line" : 37,
3367 "column" : 8,
3368 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
3369 }
3370 },
3371 {
3372 "op" : "assign",
3373 "parameters" : [
3374 {
3375 "type" : "field",
3376 "value" : ["ethernet", "dst_addr"]
3377 },
3378 {
3379 "type" : "runtime_data",
3380 "value" : 2
3381 }
3382 ],
3383 "source_info" : {
3384 "filename" : "include/control/next.p4",
3385 "line" : 41,
3386 "column" : 8,
3387 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
3388 }
3389 },
3390 {
3391 "op" : "assign",
3392 "parameters" : [
3393 {
3394 "type" : "field",
3395 "value" : ["standard_metadata", "egress_spec"]
3396 },
3397 {
3398 "type" : "runtime_data",
3399 "value" : 0
3400 }
3401 ],
3402 "source_info" : {
3403 "filename" : "include/control/next.p4",
3404 "line" : 149,
3405 "column" : 8,
3406 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
3407 }
3408 },
3409 {
3410 "op" : "add_header",
3411 "parameters" : [
3412 {
3413 "type" : "header",
3414 "value" : "mpls"
3415 }
3416 ],
3417 "source_info" : {
3418 "filename" : "include/control/next.p4",
3419 "line" : 46,
3420 "column" : 8,
3421 "source_fragment" : "hdr.mpls.setValid()"
3422 }
3423 },
3424 {
3425 "op" : "assign",
3426 "parameters" : [
3427 {
3428 "type" : "field",
3429 "value" : ["vlan_tag", "ether_type"]
3430 },
3431 {
3432 "type" : "hexstr",
3433 "value" : "0x8847"
3434 }
3435 ],
3436 "source_info" : {
3437 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07003438 "line" : 100,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003439 "column" : 31,
3440 "source_fragment" : "0x8847; ..."
3441 }
3442 },
3443 {
3444 "op" : "assign",
3445 "parameters" : [
3446 {
3447 "type" : "field",
3448 "value" : ["mpls", "label"]
3449 },
3450 {
3451 "type" : "runtime_data",
3452 "value" : 3
3453 }
3454 ],
3455 "source_info" : {
3456 "filename" : "include/control/next.p4",
3457 "line" : 48,
3458 "column" : 8,
3459 "source_fragment" : "hdr.mpls.label = label; ..."
3460 }
3461 },
3462 {
3463 "op" : "assign",
3464 "parameters" : [
3465 {
3466 "type" : "field",
3467 "value" : ["mpls", "tc"]
3468 },
3469 {
3470 "type" : "hexstr",
3471 "value" : "0x00"
3472 }
3473 ],
3474 "source_info" : {
3475 "filename" : "include/control/next.p4",
3476 "line" : 49,
3477 "column" : 8,
3478 "source_fragment" : "hdr.mpls.tc = tc; ..."
3479 }
3480 },
3481 {
3482 "op" : "assign",
3483 "parameters" : [
3484 {
3485 "type" : "field",
3486 "value" : ["mpls", "bos"]
3487 },
3488 {
3489 "type" : "hexstr",
3490 "value" : "0x01"
3491 }
3492 ],
3493 "source_info" : {
3494 "filename" : "include/control/next.p4",
3495 "line" : 50,
3496 "column" : 8,
3497 "source_fragment" : "hdr.mpls.bos = 1w1"
3498 }
3499 },
3500 {
3501 "op" : "assign",
3502 "parameters" : [
3503 {
3504 "type" : "field",
3505 "value" : ["mpls", "ttl"]
3506 },
3507 {
3508 "type" : "hexstr",
3509 "value" : "0x40"
3510 }
3511 ],
3512 "source_info" : {
3513 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07003514 "line" : 123,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003515 "column" : 32,
3516 "source_fragment" : "64; ..."
3517 }
3518 }
3519 ]
3520 },
3521 {
3522 "name" : "FabricIngress.next.set_mcast_group",
3523 "id" : 38,
3524 "runtime_data" : [
3525 {
3526 "name" : "gid",
3527 "bitwidth" : 16
3528 }
3529 ],
3530 "primitives" : [
3531 {
3532 "op" : "assign",
3533 "parameters" : [
3534 {
3535 "type" : "field",
3536 "value" : ["standard_metadata", "mcast_grp"]
3537 },
3538 {
3539 "type" : "runtime_data",
3540 "value" : 0
3541 }
3542 ],
3543 "source_info" : {
3544 "filename" : "include/control/next.p4",
3545 "line" : 202,
3546 "column" : 8,
3547 "source_fragment" : "standard_metadata.mcast_grp = gid"
3548 }
3549 },
3550 {
3551 "op" : "assign",
3552 "parameters" : [
3553 {
3554 "type" : "field",
3555 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
3556 },
3557 {
3558 "type" : "expression",
3559 "value" : {
3560 "type" : "expression",
3561 "value" : {
3562 "op" : "b2d",
3563 "left" : null,
3564 "right" : {
3565 "type" : "bool",
3566 "value" : true
3567 }
3568 }
3569 }
3570 }
3571 ],
3572 "source_info" : {
3573 "filename" : "include/control/next.p4",
3574 "line" : 203,
3575 "column" : 8,
3576 "source_fragment" : "fabric_metadata.is_multicast = true"
3577 }
3578 }
3579 ]
3580 },
3581 {
3582 "name" : "act",
3583 "id" : 39,
3584 "runtime_data" : [],
3585 "primitives" : [
3586 {
3587 "op" : "assign",
3588 "parameters" : [
3589 {
3590 "type" : "field",
3591 "value" : ["scalars", "spgw_normalizer_hasReturned_0"]
3592 },
3593 {
3594 "type" : "expression",
3595 "value" : {
3596 "type" : "expression",
3597 "value" : {
3598 "op" : "b2d",
3599 "left" : null,
3600 "right" : {
3601 "type" : "bool",
3602 "value" : true
3603 }
3604 }
3605 }
3606 }
3607 ],
3608 "source_info" : {
3609 "filename" : "include/spgw.p4",
3610 "line" : 30,
3611 "column" : 32,
3612 "source_fragment" : "return"
3613 }
3614 }
3615 ]
3616 },
3617 {
3618 "name" : "act_0",
3619 "id" : 40,
3620 "runtime_data" : [],
3621 "primitives" : [
3622 {
3623 "op" : "remove_header",
3624 "parameters" : [
3625 {
3626 "type" : "header",
3627 "value" : "gtpu_ipv4"
3628 }
3629 ],
3630 "source_info" : {
3631 "filename" : "fabric.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07003632 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003633 "column" : 50,
3634 "source_fragment" : "hdr.gtpu_ipv4"
3635 }
3636 },
3637 {
3638 "op" : "remove_header",
3639 "parameters" : [
3640 {
3641 "type" : "header",
3642 "value" : "gtpu_udp"
3643 }
3644 ],
3645 "source_info" : {
3646 "filename" : "fabric.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07003647 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003648 "column" : 65,
3649 "source_fragment" : "hdr.gtpu_udp"
3650 }
3651 },
3652 {
3653 "op" : "assign",
3654 "parameters" : [
3655 {
3656 "type" : "field",
3657 "value" : ["scalars", "spgw_normalizer_hasReturned_0"]
3658 },
3659 {
3660 "type" : "expression",
3661 "value" : {
3662 "type" : "expression",
3663 "value" : {
3664 "op" : "b2d",
3665 "left" : null,
3666 "right" : {
3667 "type" : "bool",
3668 "value" : false
3669 }
3670 }
3671 }
3672 }
3673 ]
3674 }
3675 ]
3676 },
3677 {
3678 "name" : "act_1",
3679 "id" : 41,
3680 "runtime_data" : [],
3681 "primitives" : [
3682 {
3683 "op" : "assign_header",
3684 "parameters" : [
3685 {
3686 "type" : "header",
3687 "value" : "udp"
3688 },
3689 {
3690 "type" : "header",
3691 "value" : "inner_udp"
3692 }
3693 ],
3694 "source_info" : {
3695 "filename" : "include/spgw.p4",
3696 "line" : 35,
3697 "column" : 16,
3698 "source_fragment" : "= inner_udp; ..."
3699 }
3700 }
3701 ]
3702 },
3703 {
3704 "name" : "act_2",
3705 "id" : 42,
3706 "runtime_data" : [],
3707 "primitives" : [
3708 {
3709 "op" : "remove_header",
3710 "parameters" : [
3711 {
3712 "type" : "header",
3713 "value" : "udp"
3714 }
3715 ],
3716 "source_info" : {
3717 "filename" : "include/spgw.p4",
3718 "line" : 37,
3719 "column" : 12,
3720 "source_fragment" : "udp.setInvalid()"
3721 }
3722 }
3723 ]
3724 },
3725 {
3726 "name" : "act_3",
3727 "id" : 43,
3728 "runtime_data" : [],
3729 "primitives" : [
3730 {
3731 "op" : "assign_header",
3732 "parameters" : [
3733 {
3734 "type" : "header",
3735 "value" : "gtpu_ipv4"
3736 },
3737 {
3738 "type" : "header",
3739 "value" : "ipv4"
3740 }
3741 ],
3742 "source_info" : {
3743 "filename" : "include/spgw.p4",
3744 "line" : 31,
3745 "column" : 18,
3746 "source_fragment" : "= ipv4; ..."
3747 }
3748 },
3749 {
3750 "op" : "assign_header",
3751 "parameters" : [
3752 {
3753 "type" : "header",
3754 "value" : "ipv4"
3755 },
3756 {
3757 "type" : "header",
3758 "value" : "inner_ipv4"
3759 }
3760 ],
3761 "source_info" : {
3762 "filename" : "include/spgw.p4",
3763 "line" : 32,
3764 "column" : 13,
3765 "source_fragment" : "= inner_ipv4; ..."
3766 }
3767 },
3768 {
3769 "op" : "assign_header",
3770 "parameters" : [
3771 {
3772 "type" : "header",
3773 "value" : "gtpu_udp"
3774 },
3775 {
3776 "type" : "header",
3777 "value" : "udp"
3778 }
3779 ],
3780 "source_info" : {
3781 "filename" : "include/spgw.p4",
3782 "line" : 33,
3783 "column" : 17,
3784 "source_fragment" : "= udp; ..."
3785 }
3786 }
3787 ]
3788 },
3789 {
3790 "name" : "act_4",
3791 "id" : 44,
3792 "runtime_data" : [],
3793 "primitives" : [
3794 {
3795 "op" : "assign",
3796 "parameters" : [
3797 {
3798 "type" : "field",
3799 "value" : ["standard_metadata", "egress_spec"]
3800 },
3801 {
3802 "type" : "field",
3803 "value" : ["packet_out", "egress_port"]
3804 }
3805 ],
3806 "source_info" : {
3807 "filename" : "include/control/packetio.p4",
3808 "line" : 26,
3809 "column" : 12,
3810 "source_fragment" : "standard_metadata.egress_spec = hdr.packet_out.egress_port"
3811 }
3812 },
3813 {
3814 "op" : "remove_header",
3815 "parameters" : [
3816 {
3817 "type" : "header",
3818 "value" : "packet_out"
3819 }
3820 ],
3821 "source_info" : {
3822 "filename" : "include/control/packetio.p4",
3823 "line" : 27,
3824 "column" : 12,
3825 "source_fragment" : "hdr.packet_out.setInvalid()"
3826 }
3827 },
3828 {
3829 "op" : "assign",
3830 "parameters" : [
3831 {
3832 "type" : "field",
3833 "value" : ["scalars", "fabric_metadata_t.is_controller_packet_out"]
3834 },
3835 {
3836 "type" : "expression",
3837 "value" : {
3838 "type" : "expression",
3839 "value" : {
3840 "op" : "b2d",
3841 "left" : null,
3842 "right" : {
3843 "type" : "bool",
3844 "value" : true
3845 }
3846 }
3847 }
3848 }
3849 ],
3850 "source_info" : {
3851 "filename" : "include/control/packetio.p4",
3852 "line" : 28,
3853 "column" : 12,
3854 "source_fragment" : "fabric_metadata.is_controller_packet_out = true"
3855 }
3856 }
3857 ]
3858 },
3859 {
3860 "name" : "act_5",
3861 "id" : 45,
3862 "runtime_data" : [],
3863 "primitives" : [
3864 {
3865 "op" : "assign",
3866 "parameters" : [
3867 {
3868 "type" : "field",
3869 "value" : ["scalars", "spgw_ingress_tmp_1"]
3870 },
3871 {
3872 "type" : "expression",
3873 "value" : {
3874 "type" : "expression",
3875 "value" : {
3876 "op" : "b2d",
3877 "left" : null,
3878 "right" : {
3879 "type" : "bool",
3880 "value" : true
3881 }
3882 }
3883 }
3884 }
3885 ]
3886 }
3887 ]
3888 },
3889 {
3890 "name" : "act_6",
3891 "id" : 46,
3892 "runtime_data" : [],
3893 "primitives" : [
3894 {
3895 "op" : "assign",
3896 "parameters" : [
3897 {
3898 "type" : "field",
3899 "value" : ["scalars", "spgw_ingress_tmp_1"]
3900 },
3901 {
3902 "type" : "expression",
3903 "value" : {
3904 "type" : "expression",
3905 "value" : {
3906 "op" : "b2d",
3907 "left" : null,
3908 "right" : {
3909 "type" : "bool",
3910 "value" : false
3911 }
3912 }
3913 }
3914 }
3915 ]
3916 }
3917 ]
3918 },
3919 {
3920 "name" : "act_7",
3921 "id" : 47,
3922 "runtime_data" : [],
3923 "primitives" : [
3924 {
3925 "op" : "assign",
3926 "parameters" : [
3927 {
3928 "type" : "field",
3929 "value" : ["userMetadata.spgw", "direction"]
3930 },
3931 {
3932 "type" : "hexstr",
3933 "value" : "0x01"
3934 }
3935 ],
3936 "source_info" : {
3937 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07003938 "line" : 129,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003939 "column" : 36,
3940 "source_fragment" : "2w1; ..."
3941 }
3942 }
3943 ]
3944 },
3945 {
3946 "name" : "act_8",
3947 "id" : 48,
3948 "runtime_data" : [],
3949 "primitives" : [
3950 {
3951 "op" : "assign",
3952 "parameters" : [
3953 {
3954 "type" : "field",
3955 "value" : ["scalars", "spgw_ingress_tmp_2"]
3956 },
3957 {
3958 "type" : "expression",
3959 "value" : {
3960 "type" : "expression",
3961 "value" : {
3962 "op" : "b2d",
3963 "left" : null,
3964 "right" : {
3965 "type" : "bool",
3966 "value" : true
3967 }
3968 }
3969 }
3970 }
3971 ]
3972 }
3973 ]
3974 },
3975 {
3976 "name" : "act_9",
3977 "id" : 49,
3978 "runtime_data" : [],
3979 "primitives" : [
3980 {
3981 "op" : "assign",
3982 "parameters" : [
3983 {
3984 "type" : "field",
3985 "value" : ["scalars", "spgw_ingress_tmp_2"]
3986 },
3987 {
3988 "type" : "expression",
3989 "value" : {
3990 "type" : "expression",
3991 "value" : {
3992 "op" : "b2d",
3993 "left" : null,
3994 "right" : {
3995 "type" : "bool",
3996 "value" : false
3997 }
3998 }
3999 }
4000 }
4001 ]
4002 }
4003 ]
4004 },
4005 {
4006 "name" : "act_10",
4007 "id" : 50,
4008 "runtime_data" : [],
4009 "primitives" : [
4010 {
4011 "op" : "assign",
4012 "parameters" : [
4013 {
4014 "type" : "field",
4015 "value" : ["userMetadata.spgw", "direction"]
4016 },
4017 {
4018 "type" : "hexstr",
4019 "value" : "0x02"
4020 }
4021 ],
4022 "source_info" : {
4023 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07004024 "line" : 130,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004025 "column" : 38,
4026 "source_fragment" : "2w2; ..."
4027 }
4028 }
4029 ]
4030 },
4031 {
4032 "name" : "act_11",
4033 "id" : 51,
4034 "runtime_data" : [],
4035 "primitives" : [
4036 {
4037 "op" : "assign",
4038 "parameters" : [
4039 {
4040 "type" : "field",
4041 "value" : ["userMetadata.spgw", "direction"]
4042 },
4043 {
4044 "type" : "hexstr",
4045 "value" : "0x00"
4046 }
4047 ],
4048 "source_info" : {
4049 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07004050 "line" : 128,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004051 "column" : 37,
4052 "source_fragment" : "2w0; ..."
4053 }
4054 },
4055 {
4056 "op" : "assign",
4057 "parameters" : [
4058 {
4059 "type" : "field",
4060 "value" : ["scalars", "spgw_ingress_hasReturned_0"]
4061 },
4062 {
4063 "type" : "expression",
4064 "value" : {
4065 "type" : "expression",
4066 "value" : {
4067 "op" : "b2d",
4068 "left" : null,
4069 "right" : {
4070 "type" : "bool",
4071 "value" : true
4072 }
4073 }
4074 }
4075 }
4076 ],
4077 "source_info" : {
4078 "filename" : "include/spgw.p4",
4079 "line" : 153,
4080 "column" : 12,
4081 "source_fragment" : "return"
4082 }
4083 }
4084 ]
4085 },
4086 {
4087 "name" : "act_12",
4088 "id" : 52,
4089 "runtime_data" : [],
4090 "primitives" : [
4091 {
4092 "op" : "assign",
4093 "parameters" : [
4094 {
4095 "type" : "field",
4096 "value" : ["scalars", "spgw_ingress_hasReturned_0"]
4097 },
4098 {
4099 "type" : "expression",
4100 "value" : {
4101 "type" : "expression",
4102 "value" : {
4103 "op" : "b2d",
4104 "left" : null,
4105 "right" : {
4106 "type" : "bool",
4107 "value" : false
4108 }
4109 }
4110 }
4111 }
4112 ]
4113 }
4114 ]
4115 },
4116 {
4117 "name" : "act_13",
4118 "id" : 53,
4119 "runtime_data" : [],
4120 "primitives" : [
4121 {
4122 "op" : "assign",
4123 "parameters" : [
4124 {
4125 "type" : "field",
4126 "value" : ["userMetadata.spgw", "ipv4_len"]
4127 },
4128 {
4129 "type" : "field",
4130 "value" : ["ipv4", "total_len"]
4131 }
4132 ],
4133 "source_info" : {
4134 "filename" : "include/spgw.p4",
4135 "line" : 170,
4136 "column" : 8,
4137 "source_fragment" : "spgw_meta.ipv4_len = ipv4.total_len"
4138 }
4139 }
4140 ]
4141 },
4142 {
4143 "name" : "act_14",
4144 "id" : 54,
4145 "runtime_data" : [],
4146 "primitives" : [
4147 {
4148 "op" : "assign",
4149 "parameters" : [
4150 {
4151 "type" : "field",
4152 "value" : ["scalars", "filtering_tmp_0"]
4153 },
4154 {
4155 "type" : "expression",
4156 "value" : {
4157 "type" : "expression",
4158 "value" : {
4159 "op" : "b2d",
4160 "left" : null,
4161 "right" : {
4162 "type" : "bool",
4163 "value" : true
4164 }
4165 }
4166 }
4167 }
4168 ]
4169 }
4170 ]
4171 },
4172 {
4173 "name" : "act_15",
4174 "id" : 55,
4175 "runtime_data" : [],
4176 "primitives" : [
4177 {
4178 "op" : "assign",
4179 "parameters" : [
4180 {
4181 "type" : "field",
4182 "value" : ["scalars", "filtering_tmp_0"]
4183 },
4184 {
4185 "type" : "expression",
4186 "value" : {
4187 "type" : "expression",
4188 "value" : {
4189 "op" : "b2d",
4190 "left" : null,
4191 "right" : {
4192 "type" : "bool",
4193 "value" : false
4194 }
4195 }
4196 }
4197 }
4198 ]
4199 }
4200 ]
4201 },
4202 {
4203 "name" : "act_16",
4204 "id" : 56,
4205 "runtime_data" : [],
4206 "primitives" : [
4207 {
4208 "op" : "assign",
4209 "parameters" : [
4210 {
4211 "type" : "field",
4212 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
4213 },
4214 {
4215 "type" : "hexstr",
4216 "value" : "0x07"
4217 }
4218 ],
4219 "source_info" : {
4220 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07004221 "line" : 119,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004222 "column" : 31,
4223 "source_fragment" : "7; ..."
4224 }
4225 }
4226 ]
4227 },
4228 {
4229 "name" : "act_17",
4230 "id" : 57,
4231 "runtime_data" : [],
4232 "primitives" : [
4233 {
4234 "op" : "assign",
4235 "parameters" : [
4236 {
4237 "type" : "field",
4238 "value" : ["vlan_tag", "ether_type"]
4239 },
4240 {
4241 "type" : "hexstr",
4242 "value" : "0x0800"
4243 }
4244 ],
4245 "source_info" : {
4246 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07004247 "line" : 102,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004248 "column" : 31,
4249 "source_fragment" : "0x0800; ..."
4250 }
4251 }
4252 ]
4253 },
4254 {
4255 "name" : "act_18",
4256 "id" : 58,
4257 "runtime_data" : [],
4258 "primitives" : [
4259 {
4260 "op" : "assign",
4261 "parameters" : [
4262 {
4263 "type" : "field",
4264 "value" : ["scalars", "next_hasReturned_0"]
4265 },
4266 {
4267 "type" : "expression",
4268 "value" : {
4269 "type" : "expression",
4270 "value" : {
4271 "op" : "b2d",
4272 "left" : null,
4273 "right" : {
4274 "type" : "bool",
4275 "value" : false
4276 }
4277 }
4278 }
4279 }
4280 ]
4281 }
4282 ]
4283 },
4284 {
4285 "name" : "act_19",
4286 "id" : 59,
4287 "runtime_data" : [],
4288 "primitives" : [
4289 {
4290 "op" : "assign",
4291 "parameters" : [
4292 {
4293 "type" : "field",
4294 "value" : ["scalars", "next_tmp_4"]
4295 },
4296 {
4297 "type" : "expression",
4298 "value" : {
4299 "type" : "expression",
4300 "value" : {
4301 "op" : "b2d",
4302 "left" : null,
4303 "right" : {
4304 "type" : "bool",
4305 "value" : true
4306 }
4307 }
4308 }
4309 }
4310 ]
4311 }
4312 ]
4313 },
4314 {
4315 "name" : "act_20",
4316 "id" : 60,
4317 "runtime_data" : [],
4318 "primitives" : [
4319 {
4320 "op" : "assign",
4321 "parameters" : [
4322 {
4323 "type" : "field",
4324 "value" : ["scalars", "next_tmp_4"]
4325 },
4326 {
4327 "type" : "expression",
4328 "value" : {
4329 "type" : "expression",
4330 "value" : {
4331 "op" : "b2d",
4332 "left" : null,
4333 "right" : {
4334 "type" : "bool",
4335 "value" : false
4336 }
4337 }
4338 }
4339 }
4340 ]
4341 }
4342 ]
4343 },
4344 {
4345 "name" : "act_21",
4346 "id" : 61,
4347 "runtime_data" : [],
4348 "primitives" : [
4349 {
4350 "op" : "assign",
4351 "parameters" : [
4352 {
4353 "type" : "field",
4354 "value" : ["scalars", "next_tmp_3"]
4355 },
4356 {
4357 "type" : "expression",
4358 "value" : {
4359 "type" : "expression",
4360 "value" : {
4361 "op" : "b2d",
4362 "left" : null,
4363 "right" : {
4364 "type" : "bool",
4365 "value" : true
4366 }
4367 }
4368 }
4369 }
4370 ]
4371 }
4372 ]
4373 },
4374 {
4375 "name" : "act_22",
4376 "id" : 62,
4377 "runtime_data" : [],
4378 "primitives" : [
4379 {
4380 "op" : "assign",
4381 "parameters" : [
4382 {
4383 "type" : "field",
4384 "value" : ["scalars", "next_tmp_3"]
4385 },
4386 {
4387 "type" : "expression",
4388 "value" : {
4389 "type" : "expression",
4390 "value" : {
4391 "op" : "b2d",
4392 "left" : null,
4393 "right" : {
4394 "type" : "bool",
4395 "value" : false
4396 }
4397 }
4398 }
4399 }
4400 ]
4401 }
4402 ]
4403 },
4404 {
4405 "name" : "act_23",
4406 "id" : 63,
4407 "runtime_data" : [],
4408 "primitives" : [
4409 {
4410 "op" : "assign",
4411 "parameters" : [
4412 {
4413 "type" : "field",
4414 "value" : ["scalars", "next_tmp_2"]
4415 },
4416 {
4417 "type" : "expression",
4418 "value" : {
4419 "type" : "expression",
4420 "value" : {
4421 "op" : "b2d",
4422 "left" : null,
4423 "right" : {
4424 "type" : "bool",
4425 "value" : true
4426 }
4427 }
4428 }
4429 }
4430 ]
4431 }
4432 ]
4433 },
4434 {
4435 "name" : "act_24",
4436 "id" : 64,
4437 "runtime_data" : [],
4438 "primitives" : [
4439 {
4440 "op" : "assign",
4441 "parameters" : [
4442 {
4443 "type" : "field",
4444 "value" : ["scalars", "next_tmp_2"]
4445 },
4446 {
4447 "type" : "expression",
4448 "value" : {
4449 "type" : "expression",
4450 "value" : {
4451 "op" : "b2d",
4452 "left" : null,
4453 "right" : {
4454 "type" : "bool",
4455 "value" : false
4456 }
4457 }
4458 }
4459 }
4460 ]
4461 }
4462 ]
4463 },
4464 {
4465 "name" : "act_25",
4466 "id" : 65,
4467 "runtime_data" : [],
4468 "primitives" : [
4469 {
4470 "op" : "assign",
4471 "parameters" : [
4472 {
4473 "type" : "field",
4474 "value" : ["scalars", "next_hasReturned_0"]
4475 },
4476 {
4477 "type" : "expression",
4478 "value" : {
4479 "type" : "expression",
4480 "value" : {
4481 "op" : "b2d",
4482 "left" : null,
4483 "right" : {
4484 "type" : "bool",
4485 "value" : true
4486 }
4487 }
4488 }
4489 }
4490 ],
4491 "source_info" : {
4492 "filename" : "include/control/next.p4",
4493 "line" : 223,
4494 "column" : 20,
4495 "source_fragment" : "return"
4496 }
4497 }
4498 ]
4499 },
4500 {
4501 "name" : "act_26",
4502 "id" : 66,
4503 "runtime_data" : [],
4504 "primitives" : [
4505 {
4506 "op" : "assign",
4507 "parameters" : [
4508 {
4509 "type" : "field",
4510 "value" : ["ipv4", "ttl"]
4511 },
4512 {
4513 "type" : "expression",
4514 "value" : {
4515 "type" : "expression",
4516 "value" : {
4517 "op" : "&",
4518 "left" : {
4519 "type" : "expression",
4520 "value" : {
4521 "op" : "+",
4522 "left" : {
4523 "type" : "field",
4524 "value" : ["ipv4", "ttl"]
4525 },
4526 "right" : {
4527 "type" : "hexstr",
4528 "value" : "0xff"
4529 }
4530 }
4531 },
4532 "right" : {
4533 "type" : "hexstr",
4534 "value" : "0xff"
4535 }
4536 }
4537 }
4538 }
4539 ],
4540 "source_info" : {
4541 "filename" : "include/control/next.p4",
4542 "line" : 230,
4543 "column" : 16,
4544 "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
4545 }
4546 }
4547 ]
4548 },
4549 {
4550 "name" : "act_27",
4551 "id" : 67,
4552 "runtime_data" : [],
4553 "primitives" : [
4554 {
4555 "op" : "assign",
4556 "parameters" : [
4557 {
4558 "type" : "field",
4559 "value" : ["scalars", "tmp_1"]
4560 },
4561 {
4562 "type" : "expression",
4563 "value" : {
4564 "type" : "expression",
4565 "value" : {
4566 "op" : "&",
4567 "left" : {
4568 "type" : "field",
4569 "value" : ["standard_metadata", "egress_spec"]
4570 },
4571 "right" : {
4572 "type" : "hexstr",
4573 "value" : "0xffffffff"
4574 }
4575 }
4576 }
4577 }
4578 ],
4579 "source_info" : {
4580 "filename" : "include/control/port_counter.p4",
4581 "line" : 28,
4582 "column" : 38,
4583 "source_fragment" : "(bit<32>)standard_metadata.egress_spec"
4584 }
4585 },
4586 {
4587 "op" : "count",
4588 "parameters" : [
4589 {
4590 "type" : "counter_array",
4591 "value" : "FabricIngress.port_counters_control.egress_port_counter"
4592 },
4593 {
4594 "type" : "field",
4595 "value" : ["scalars", "tmp_1"]
4596 }
4597 ],
4598 "source_info" : {
4599 "filename" : "include/control/port_counter.p4",
4600 "line" : 28,
4601 "column" : 12,
4602 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
4603 }
4604 }
4605 ]
4606 },
4607 {
4608 "name" : "act_28",
4609 "id" : 68,
4610 "runtime_data" : [],
4611 "primitives" : [
4612 {
4613 "op" : "assign",
4614 "parameters" : [
4615 {
4616 "type" : "field",
4617 "value" : ["scalars", "tmp_2"]
4618 },
4619 {
4620 "type" : "expression",
4621 "value" : {
4622 "type" : "expression",
4623 "value" : {
4624 "op" : "&",
4625 "left" : {
4626 "type" : "field",
4627 "value" : ["standard_metadata", "ingress_port"]
4628 },
4629 "right" : {
4630 "type" : "hexstr",
4631 "value" : "0xffffffff"
4632 }
4633 }
4634 }
4635 }
4636 ],
4637 "source_info" : {
4638 "filename" : "include/control/port_counter.p4",
4639 "line" : 31,
4640 "column" : 39,
4641 "source_fragment" : "(bit<32>)standard_metadata.ingress_port"
4642 }
4643 },
4644 {
4645 "op" : "count",
4646 "parameters" : [
4647 {
4648 "type" : "counter_array",
4649 "value" : "FabricIngress.port_counters_control.ingress_port_counter"
4650 },
4651 {
4652 "type" : "field",
4653 "value" : ["scalars", "tmp_2"]
4654 }
4655 ],
4656 "source_info" : {
4657 "filename" : "include/control/port_counter.p4",
4658 "line" : 31,
4659 "column" : 12,
4660 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
4661 }
4662 }
4663 ]
4664 },
4665 {
4666 "name" : "NoAction",
4667 "id" : 69,
4668 "runtime_data" : [],
4669 "primitives" : []
4670 },
4671 {
4672 "name" : "NoAction",
4673 "id" : 70,
4674 "runtime_data" : [],
4675 "primitives" : []
4676 },
4677 {
4678 "name" : "NoAction",
4679 "id" : 71,
4680 "runtime_data" : [],
4681 "primitives" : []
4682 },
4683 {
Carmelo Casconefa421582018-09-13 10:05:57 -07004684 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004685 "id" : 72,
4686 "runtime_data" : [],
4687 "primitives" : []
4688 },
4689 {
4690 "name" : "nop",
4691 "id" : 73,
4692 "runtime_data" : [],
4693 "primitives" : []
4694 },
4695 {
4696 "name" : "drop_now",
4697 "id" : 74,
4698 "runtime_data" : [],
4699 "primitives" : [
4700 {
4701 "op" : "drop",
4702 "parameters" : [],
4703 "source_info" : {
4704 "filename" : "include/control/../action.p4",
4705 "line" : 24,
4706 "column" : 4,
4707 "source_fragment" : "mark_to_drop()"
4708 }
4709 },
4710 {
4711 "op" : "exit",
4712 "parameters" : [],
4713 "source_info" : {
4714 "filename" : "include/control/../action.p4",
4715 "line" : 25,
4716 "column" : 4,
4717 "source_fragment" : "exit"
4718 }
4719 }
4720 ]
4721 },
4722 {
4723 "name" : "drop_now",
4724 "id" : 75,
4725 "runtime_data" : [],
4726 "primitives" : [
4727 {
4728 "op" : "drop",
4729 "parameters" : [],
4730 "source_info" : {
4731 "filename" : "include/control/../action.p4",
4732 "line" : 24,
4733 "column" : 4,
4734 "source_fragment" : "mark_to_drop()"
4735 }
4736 },
4737 {
4738 "op" : "exit",
4739 "parameters" : [],
4740 "source_info" : {
4741 "filename" : "include/control/../action.p4",
4742 "line" : 25,
4743 "column" : 4,
4744 "source_fragment" : "exit"
4745 }
4746 }
4747 ]
4748 },
4749 {
4750 "name" : "FabricEgress.spgw_egress.gtpu_encap",
4751 "id" : 76,
4752 "runtime_data" : [],
4753 "primitives" : [
4754 {
4755 "op" : "add_header",
4756 "parameters" : [
4757 {
4758 "type" : "header",
4759 "value" : "gtpu_ipv4"
4760 }
4761 ],
4762 "source_info" : {
4763 "filename" : "include/spgw.p4",
4764 "line" : 185,
4765 "column" : 8,
4766 "source_fragment" : "gtpu_ipv4.setValid()"
4767 }
4768 },
4769 {
4770 "op" : "assign",
4771 "parameters" : [
4772 {
4773 "type" : "field",
4774 "value" : ["gtpu_ipv4", "version"]
4775 },
4776 {
4777 "type" : "hexstr",
4778 "value" : "0x04"
4779 }
4780 ],
4781 "source_info" : {
4782 "filename" : "include/spgw.p4",
4783 "line" : 186,
4784 "column" : 8,
4785 "source_fragment" : "gtpu_ipv4.version = 4"
4786 }
4787 },
4788 {
4789 "op" : "assign",
4790 "parameters" : [
4791 {
4792 "type" : "field",
4793 "value" : ["gtpu_ipv4", "ihl"]
4794 },
4795 {
4796 "type" : "hexstr",
4797 "value" : "0x05"
4798 }
4799 ],
4800 "source_info" : {
4801 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07004802 "line" : 111,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004803 "column" : 28,
4804 "source_fragment" : "5; ..."
4805 }
4806 },
4807 {
4808 "op" : "assign",
4809 "parameters" : [
4810 {
4811 "type" : "field",
4812 "value" : ["gtpu_ipv4", "dscp"]
4813 },
4814 {
4815 "type" : "hexstr",
4816 "value" : "0x00"
4817 }
4818 ],
4819 "source_info" : {
4820 "filename" : "include/spgw.p4",
4821 "line" : 188,
4822 "column" : 8,
4823 "source_fragment" : "gtpu_ipv4.dscp = 0"
4824 }
4825 },
4826 {
4827 "op" : "assign",
4828 "parameters" : [
4829 {
4830 "type" : "field",
4831 "value" : ["gtpu_ipv4", "ecn"]
4832 },
4833 {
4834 "type" : "hexstr",
4835 "value" : "0x00"
4836 }
4837 ],
4838 "source_info" : {
4839 "filename" : "include/spgw.p4",
4840 "line" : 189,
4841 "column" : 8,
4842 "source_fragment" : "gtpu_ipv4.ecn = 0"
4843 }
4844 },
4845 {
4846 "op" : "assign",
4847 "parameters" : [
4848 {
4849 "type" : "field",
4850 "value" : ["gtpu_ipv4", "total_len"]
4851 },
4852 {
4853 "type" : "expression",
4854 "value" : {
4855 "type" : "expression",
4856 "value" : {
4857 "op" : "&",
4858 "left" : {
4859 "type" : "expression",
4860 "value" : {
4861 "op" : "+",
4862 "left" : {
4863 "type" : "field",
4864 "value" : ["ipv4", "total_len"]
4865 },
4866 "right" : {
4867 "type" : "hexstr",
4868 "value" : "0x0024"
4869 }
4870 }
4871 },
4872 "right" : {
4873 "type" : "hexstr",
4874 "value" : "0xffff"
4875 }
4876 }
4877 }
4878 }
4879 ],
4880 "source_info" : {
4881 "filename" : "include/spgw.p4",
4882 "line" : 190,
4883 "column" : 8,
4884 "source_fragment" : "gtpu_ipv4.total_len = ipv4.total_len ..."
4885 }
4886 },
4887 {
4888 "op" : "assign",
4889 "parameters" : [
4890 {
4891 "type" : "field",
4892 "value" : ["gtpu_ipv4", "identification"]
4893 },
4894 {
4895 "type" : "hexstr",
4896 "value" : "0x1513"
4897 }
4898 ],
4899 "source_info" : {
4900 "filename" : "include/spgw.p4",
4901 "line" : 192,
4902 "column" : 8,
4903 "source_fragment" : "gtpu_ipv4.identification = 0x1513"
4904 }
4905 },
4906 {
4907 "op" : "assign",
4908 "parameters" : [
4909 {
4910 "type" : "field",
4911 "value" : ["gtpu_ipv4", "flags"]
4912 },
4913 {
4914 "type" : "hexstr",
4915 "value" : "0x00"
4916 }
4917 ],
4918 "source_info" : {
4919 "filename" : "include/spgw.p4",
4920 "line" : 193,
4921 "column" : 8,
4922 "source_fragment" : "gtpu_ipv4.flags = 0"
4923 }
4924 },
4925 {
4926 "op" : "assign",
4927 "parameters" : [
4928 {
4929 "type" : "field",
4930 "value" : ["gtpu_ipv4", "frag_offset"]
4931 },
4932 {
4933 "type" : "hexstr",
4934 "value" : "0x0000"
4935 }
4936 ],
4937 "source_info" : {
4938 "filename" : "include/spgw.p4",
4939 "line" : 194,
4940 "column" : 8,
4941 "source_fragment" : "gtpu_ipv4.frag_offset = 0"
4942 }
4943 },
4944 {
4945 "op" : "assign",
4946 "parameters" : [
4947 {
4948 "type" : "field",
4949 "value" : ["gtpu_ipv4", "ttl"]
4950 },
4951 {
4952 "type" : "hexstr",
4953 "value" : "0x40"
4954 }
4955 ],
4956 "source_info" : {
4957 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07004958 "line" : 124,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004959 "column" : 32,
4960 "source_fragment" : "64; ..."
4961 }
4962 },
4963 {
4964 "op" : "assign",
4965 "parameters" : [
4966 {
4967 "type" : "field",
4968 "value" : ["gtpu_ipv4", "protocol"]
4969 },
4970 {
4971 "type" : "hexstr",
4972 "value" : "0x11"
4973 }
4974 ],
4975 "source_info" : {
4976 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07004977 "line" : 108,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004978 "column" : 25,
4979 "source_fragment" : "17; ..."
4980 }
4981 },
4982 {
4983 "op" : "assign",
4984 "parameters" : [
4985 {
4986 "type" : "field",
4987 "value" : ["gtpu_ipv4", "dst_addr"]
4988 },
4989 {
4990 "type" : "field",
4991 "value" : ["userMetadata.spgw", "s1u_enb_addr"]
4992 }
4993 ],
4994 "source_info" : {
4995 "filename" : "include/spgw.p4",
4996 "line" : 197,
4997 "column" : 8,
4998 "source_fragment" : "gtpu_ipv4.dst_addr = spgw_meta.s1u_enb_addr"
4999 }
5000 },
5001 {
5002 "op" : "assign",
5003 "parameters" : [
5004 {
5005 "type" : "field",
5006 "value" : ["gtpu_ipv4", "src_addr"]
5007 },
5008 {
5009 "type" : "field",
5010 "value" : ["userMetadata.spgw", "s1u_sgw_addr"]
5011 }
5012 ],
5013 "source_info" : {
5014 "filename" : "include/spgw.p4",
5015 "line" : 198,
5016 "column" : 8,
5017 "source_fragment" : "gtpu_ipv4.src_addr = spgw_meta.s1u_sgw_addr"
5018 }
5019 },
5020 {
5021 "op" : "assign",
5022 "parameters" : [
5023 {
5024 "type" : "field",
5025 "value" : ["gtpu_ipv4", "hdr_checksum"]
5026 },
5027 {
5028 "type" : "hexstr",
5029 "value" : "0x0000"
5030 }
5031 ],
5032 "source_info" : {
5033 "filename" : "include/spgw.p4",
5034 "line" : 199,
5035 "column" : 8,
5036 "source_fragment" : "gtpu_ipv4.hdr_checksum = 0"
5037 }
5038 },
5039 {
5040 "op" : "add_header",
5041 "parameters" : [
5042 {
5043 "type" : "header",
5044 "value" : "gtpu_udp"
5045 }
5046 ],
5047 "source_info" : {
5048 "filename" : "include/spgw.p4",
5049 "line" : 201,
5050 "column" : 8,
5051 "source_fragment" : "gtpu_udp.setValid()"
5052 }
5053 },
5054 {
5055 "op" : "assign",
5056 "parameters" : [
5057 {
5058 "type" : "field",
5059 "value" : ["gtpu_udp", "src_port"]
5060 },
5061 {
5062 "type" : "hexstr",
5063 "value" : "0x0868"
5064 }
5065 ],
5066 "source_info" : {
5067 "filename" : "include/spgw.p4",
5068 "line" : 202,
5069 "column" : 8,
5070 "source_fragment" : "gtpu_udp.src_port = 2152"
5071 }
5072 },
5073 {
5074 "op" : "assign",
5075 "parameters" : [
5076 {
5077 "type" : "field",
5078 "value" : ["gtpu_udp", "dst_port"]
5079 },
5080 {
5081 "type" : "hexstr",
5082 "value" : "0x0868"
5083 }
5084 ],
5085 "source_info" : {
5086 "filename" : "include/spgw.p4",
5087 "line" : 203,
5088 "column" : 8,
5089 "source_fragment" : "gtpu_udp.dst_port = 2152"
5090 }
5091 },
5092 {
5093 "op" : "assign",
5094 "parameters" : [
5095 {
5096 "type" : "field",
5097 "value" : ["gtpu_udp", "len"]
5098 },
5099 {
5100 "type" : "expression",
5101 "value" : {
5102 "type" : "expression",
5103 "value" : {
5104 "op" : "&",
5105 "left" : {
5106 "type" : "expression",
5107 "value" : {
5108 "op" : "+",
5109 "left" : {
5110 "type" : "field",
5111 "value" : ["userMetadata.spgw", "ipv4_len"]
5112 },
5113 "right" : {
5114 "type" : "hexstr",
5115 "value" : "0x0010"
5116 }
5117 }
5118 },
5119 "right" : {
5120 "type" : "hexstr",
5121 "value" : "0xffff"
5122 }
5123 }
5124 }
5125 }
5126 ],
5127 "source_info" : {
5128 "filename" : "include/spgw.p4",
5129 "line" : 204,
5130 "column" : 8,
5131 "source_fragment" : "gtpu_udp.len = spgw_meta.ipv4_len ..."
5132 }
5133 },
5134 {
5135 "op" : "assign",
5136 "parameters" : [
5137 {
5138 "type" : "field",
5139 "value" : ["gtpu_udp", "checksum"]
5140 },
5141 {
5142 "type" : "hexstr",
5143 "value" : "0x0000"
5144 }
5145 ],
5146 "source_info" : {
5147 "filename" : "include/spgw.p4",
5148 "line" : 206,
5149 "column" : 8,
5150 "source_fragment" : "gtpu_udp.checksum = 0"
5151 }
5152 },
5153 {
5154 "op" : "add_header",
5155 "parameters" : [
5156 {
5157 "type" : "header",
5158 "value" : "gtpu"
5159 }
5160 ],
5161 "source_info" : {
5162 "filename" : "include/spgw.p4",
5163 "line" : 208,
5164 "column" : 8,
5165 "source_fragment" : "gtpu.setValid()"
5166 }
5167 },
5168 {
5169 "op" : "assign",
5170 "parameters" : [
5171 {
5172 "type" : "field",
5173 "value" : ["gtpu", "version"]
5174 },
5175 {
5176 "type" : "hexstr",
5177 "value" : "0x01"
5178 }
5179 ],
5180 "source_info" : {
5181 "filename" : "include/spgw.p4",
5182 "line" : 209,
5183 "column" : 8,
5184 "source_fragment" : "gtpu.version = 0x01"
5185 }
5186 },
5187 {
5188 "op" : "assign",
5189 "parameters" : [
5190 {
5191 "type" : "field",
5192 "value" : ["gtpu", "pt"]
5193 },
5194 {
5195 "type" : "hexstr",
5196 "value" : "0x01"
5197 }
5198 ],
5199 "source_info" : {
5200 "filename" : "include/spgw.p4",
5201 "line" : 210,
5202 "column" : 8,
5203 "source_fragment" : "gtpu.pt = 0x01"
5204 }
5205 },
5206 {
5207 "op" : "assign",
5208 "parameters" : [
5209 {
5210 "type" : "field",
5211 "value" : ["gtpu", "spare"]
5212 },
5213 {
5214 "type" : "hexstr",
5215 "value" : "0x00"
5216 }
5217 ],
5218 "source_info" : {
5219 "filename" : "include/spgw.p4",
5220 "line" : 211,
5221 "column" : 8,
5222 "source_fragment" : "gtpu.spare = 0"
5223 }
5224 },
5225 {
5226 "op" : "assign",
5227 "parameters" : [
5228 {
5229 "type" : "field",
5230 "value" : ["gtpu", "ex_flag"]
5231 },
5232 {
5233 "type" : "hexstr",
5234 "value" : "0x00"
5235 }
5236 ],
5237 "source_info" : {
5238 "filename" : "include/spgw.p4",
5239 "line" : 212,
5240 "column" : 8,
5241 "source_fragment" : "gtpu.ex_flag = 0"
5242 }
5243 },
5244 {
5245 "op" : "assign",
5246 "parameters" : [
5247 {
5248 "type" : "field",
5249 "value" : ["gtpu", "seq_flag"]
5250 },
5251 {
5252 "type" : "hexstr",
5253 "value" : "0x00"
5254 }
5255 ],
5256 "source_info" : {
5257 "filename" : "include/spgw.p4",
5258 "line" : 213,
5259 "column" : 8,
5260 "source_fragment" : "gtpu.seq_flag = 0"
5261 }
5262 },
5263 {
5264 "op" : "assign",
5265 "parameters" : [
5266 {
5267 "type" : "field",
5268 "value" : ["gtpu", "npdu_flag"]
5269 },
5270 {
5271 "type" : "hexstr",
5272 "value" : "0x00"
5273 }
5274 ],
5275 "source_info" : {
5276 "filename" : "include/spgw.p4",
5277 "line" : 214,
5278 "column" : 8,
5279 "source_fragment" : "gtpu.npdu_flag = 0"
5280 }
5281 },
5282 {
5283 "op" : "assign",
5284 "parameters" : [
5285 {
5286 "type" : "field",
5287 "value" : ["gtpu", "msgtype"]
5288 },
5289 {
5290 "type" : "hexstr",
5291 "value" : "0xff"
5292 }
5293 ],
5294 "source_info" : {
5295 "filename" : "include/spgw.p4",
5296 "line" : 215,
5297 "column" : 8,
5298 "source_fragment" : "gtpu.msgtype = 0xff"
5299 }
5300 },
5301 {
5302 "op" : "assign",
5303 "parameters" : [
5304 {
5305 "type" : "field",
5306 "value" : ["gtpu", "msglen"]
5307 },
5308 {
5309 "type" : "field",
5310 "value" : ["userMetadata.spgw", "ipv4_len"]
5311 }
5312 ],
5313 "source_info" : {
5314 "filename" : "include/spgw.p4",
5315 "line" : 216,
5316 "column" : 8,
5317 "source_fragment" : "gtpu.msglen = spgw_meta.ipv4_len"
5318 }
5319 },
5320 {
5321 "op" : "assign",
5322 "parameters" : [
5323 {
5324 "type" : "field",
5325 "value" : ["gtpu", "teid"]
5326 },
5327 {
5328 "type" : "field",
5329 "value" : ["userMetadata.spgw", "teid"]
5330 }
5331 ],
5332 "source_info" : {
5333 "filename" : "include/spgw.p4",
5334 "line" : 217,
5335 "column" : 8,
5336 "source_fragment" : "gtpu.teid = spgw_meta.teid"
5337 }
5338 }
5339 ]
5340 },
5341 {
5342 "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
5343 "id" : 77,
5344 "runtime_data" : [
5345 {
5346 "name" : "max_hop",
5347 "bitwidth" : 8
5348 },
5349 {
5350 "name" : "ins_cnt",
5351 "bitwidth" : 5
5352 },
5353 {
5354 "name" : "ins_mask0003",
5355 "bitwidth" : 4
5356 },
5357 {
5358 "name" : "ins_mask0407",
5359 "bitwidth" : 4
5360 }
5361 ],
5362 "primitives" : [
5363 {
5364 "op" : "add_header",
5365 "parameters" : [
5366 {
5367 "type" : "header",
5368 "value" : "intl4_shim"
5369 }
5370 ],
5371 "source_info" : {
5372 "filename" : "include/int/int_source.p4",
5373 "line" : 31,
5374 "column" : 8,
5375 "source_fragment" : "hdr.intl4_shim.setValid()"
5376 }
5377 },
5378 {
5379 "op" : "assign",
5380 "parameters" : [
5381 {
5382 "type" : "field",
5383 "value" : ["intl4_shim", "int_type"]
5384 },
5385 {
5386 "type" : "hexstr",
5387 "value" : "0x01"
5388 }
5389 ],
5390 "source_info" : {
5391 "filename" : "include/int/int_source.p4",
5392 "line" : 33,
5393 "column" : 8,
5394 "source_fragment" : "hdr.intl4_shim.int_type = 1"
5395 }
5396 },
5397 {
5398 "op" : "assign",
5399 "parameters" : [
5400 {
5401 "type" : "field",
5402 "value" : ["intl4_shim", "len_words"]
5403 },
5404 {
5405 "type" : "hexstr",
5406 "value" : "0x04"
5407 }
5408 ],
5409 "source_info" : {
5410 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07005411 "line" : 139,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005412 "column" : 36,
5413 "source_fragment" : "4; ..."
5414 }
5415 },
5416 {
5417 "op" : "add_header",
5418 "parameters" : [
5419 {
5420 "type" : "header",
5421 "value" : "int_header"
5422 }
5423 ],
5424 "source_info" : {
5425 "filename" : "include/int/int_source.p4",
5426 "line" : 36,
5427 "column" : 8,
5428 "source_fragment" : "hdr.int_header.setValid()"
5429 }
5430 },
5431 {
5432 "op" : "assign",
5433 "parameters" : [
5434 {
5435 "type" : "field",
5436 "value" : ["int_header", "ver"]
5437 },
5438 {
5439 "type" : "hexstr",
5440 "value" : "0x00"
5441 }
5442 ],
5443 "source_info" : {
5444 "filename" : "include/int/int_source.p4",
5445 "line" : 37,
5446 "column" : 8,
5447 "source_fragment" : "hdr.int_header.ver = 0"
5448 }
5449 },
5450 {
5451 "op" : "assign",
5452 "parameters" : [
5453 {
5454 "type" : "field",
5455 "value" : ["int_header", "rep"]
5456 },
5457 {
5458 "type" : "hexstr",
5459 "value" : "0x00"
5460 }
5461 ],
5462 "source_info" : {
5463 "filename" : "include/int/int_source.p4",
5464 "line" : 38,
5465 "column" : 8,
5466 "source_fragment" : "hdr.int_header.rep = 0"
5467 }
5468 },
5469 {
5470 "op" : "assign",
5471 "parameters" : [
5472 {
5473 "type" : "field",
5474 "value" : ["int_header", "c"]
5475 },
5476 {
5477 "type" : "hexstr",
5478 "value" : "0x00"
5479 }
5480 ],
5481 "source_info" : {
5482 "filename" : "include/int/int_source.p4",
5483 "line" : 39,
5484 "column" : 8,
5485 "source_fragment" : "hdr.int_header.c = 0"
5486 }
5487 },
5488 {
5489 "op" : "assign",
5490 "parameters" : [
5491 {
5492 "type" : "field",
5493 "value" : ["int_header", "e"]
5494 },
5495 {
5496 "type" : "hexstr",
5497 "value" : "0x00"
5498 }
5499 ],
5500 "source_info" : {
5501 "filename" : "include/int/int_source.p4",
5502 "line" : 40,
5503 "column" : 8,
5504 "source_fragment" : "hdr.int_header.e = 0"
5505 }
5506 },
5507 {
5508 "op" : "assign",
5509 "parameters" : [
5510 {
5511 "type" : "field",
5512 "value" : ["int_header", "rsvd1"]
5513 },
5514 {
5515 "type" : "hexstr",
5516 "value" : "0x00"
5517 }
5518 ],
5519 "source_info" : {
5520 "filename" : "include/int/int_source.p4",
5521 "line" : 41,
5522 "column" : 8,
5523 "source_fragment" : "hdr.int_header.rsvd1 = 0"
5524 }
5525 },
5526 {
5527 "op" : "assign",
5528 "parameters" : [
5529 {
5530 "type" : "field",
5531 "value" : ["int_header", "ins_cnt"]
5532 },
5533 {
5534 "type" : "runtime_data",
5535 "value" : 1
5536 }
5537 ],
5538 "source_info" : {
5539 "filename" : "include/int/int_source.p4",
5540 "line" : 42,
5541 "column" : 8,
5542 "source_fragment" : "hdr.int_header.ins_cnt = ins_cnt; ..."
5543 }
5544 },
5545 {
5546 "op" : "assign",
5547 "parameters" : [
5548 {
5549 "type" : "field",
5550 "value" : ["int_header", "max_hop_cnt"]
5551 },
5552 {
5553 "type" : "runtime_data",
5554 "value" : 0
5555 }
5556 ],
5557 "source_info" : {
5558 "filename" : "include/int/int_source.p4",
5559 "line" : 43,
5560 "column" : 8,
5561 "source_fragment" : "hdr.int_header.max_hop_cnt = max_hop; ..."
5562 }
5563 },
5564 {
5565 "op" : "assign",
5566 "parameters" : [
5567 {
5568 "type" : "field",
5569 "value" : ["int_header", "total_hop_cnt"]
5570 },
5571 {
5572 "type" : "hexstr",
5573 "value" : "0x00"
5574 }
5575 ],
5576 "source_info" : {
5577 "filename" : "include/int/int_source.p4",
5578 "line" : 44,
5579 "column" : 8,
5580 "source_fragment" : "hdr.int_header.total_hop_cnt = 0"
5581 }
5582 },
5583 {
5584 "op" : "assign",
5585 "parameters" : [
5586 {
5587 "type" : "field",
5588 "value" : ["int_header", "instruction_mask_0003"]
5589 },
5590 {
5591 "type" : "runtime_data",
5592 "value" : 2
5593 }
5594 ],
5595 "source_info" : {
5596 "filename" : "include/int/int_source.p4",
5597 "line" : 45,
5598 "column" : 8,
5599 "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
5600 }
5601 },
5602 {
5603 "op" : "assign",
5604 "parameters" : [
5605 {
5606 "type" : "field",
5607 "value" : ["int_header", "instruction_mask_0407"]
5608 },
5609 {
5610 "type" : "runtime_data",
5611 "value" : 3
5612 }
5613 ],
5614 "source_info" : {
5615 "filename" : "include/int/int_source.p4",
5616 "line" : 46,
5617 "column" : 8,
5618 "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
5619 }
5620 },
5621 {
5622 "op" : "assign",
5623 "parameters" : [
5624 {
5625 "type" : "field",
5626 "value" : ["int_header", "instruction_mask_0811"]
5627 },
5628 {
5629 "type" : "hexstr",
5630 "value" : "0x00"
5631 }
5632 ],
5633 "source_info" : {
5634 "filename" : "include/int/int_source.p4",
5635 "line" : 47,
5636 "column" : 8,
5637 "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
5638 }
5639 },
5640 {
5641 "op" : "assign",
5642 "parameters" : [
5643 {
5644 "type" : "field",
5645 "value" : ["int_header", "instruction_mask_1215"]
5646 },
5647 {
5648 "type" : "hexstr",
5649 "value" : "0x00"
5650 }
5651 ],
5652 "source_info" : {
5653 "filename" : "include/int/int_source.p4",
5654 "line" : 48,
5655 "column" : 8,
5656 "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
5657 }
5658 },
5659 {
5660 "op" : "add_header",
5661 "parameters" : [
5662 {
5663 "type" : "header",
5664 "value" : "intl4_tail"
5665 }
5666 ],
5667 "source_info" : {
5668 "filename" : "include/int/int_source.p4",
5669 "line" : 50,
5670 "column" : 8,
5671 "source_fragment" : "hdr.intl4_tail.setValid()"
5672 }
5673 },
5674 {
5675 "op" : "assign",
5676 "parameters" : [
5677 {
5678 "type" : "field",
5679 "value" : ["intl4_tail", "next_proto"]
5680 },
5681 {
5682 "type" : "field",
5683 "value" : ["ipv4", "protocol"]
5684 }
5685 ],
5686 "source_info" : {
5687 "filename" : "include/int/int_source.p4",
5688 "line" : 51,
5689 "column" : 8,
5690 "source_fragment" : "hdr.intl4_tail.next_proto = hdr.ipv4.protocol"
5691 }
5692 },
5693 {
5694 "op" : "assign",
5695 "parameters" : [
5696 {
5697 "type" : "field",
5698 "value" : ["intl4_tail", "dest_port"]
5699 },
5700 {
5701 "type" : "field",
5702 "value" : ["scalars", "fabric_metadata_t.l4_dst_port"]
5703 }
5704 ],
5705 "source_info" : {
5706 "filename" : "include/int/int_source.p4",
5707 "line" : 52,
5708 "column" : 8,
5709 "source_fragment" : "hdr.intl4_tail.dest_port = fabric_metadata.l4_dst_port"
5710 }
5711 },
5712 {
5713 "op" : "assign",
5714 "parameters" : [
5715 {
5716 "type" : "field",
5717 "value" : ["intl4_tail", "dscp"]
5718 },
5719 {
5720 "type" : "field",
5721 "value" : ["ipv4", "dscp"]
5722 }
5723 ],
5724 "source_info" : {
5725 "filename" : "include/int/int_source.p4",
5726 "line" : 53,
5727 "column" : 8,
5728 "source_fragment" : "hdr.intl4_tail.dscp = hdr.ipv4.dscp"
5729 }
5730 },
5731 {
5732 "op" : "assign",
5733 "parameters" : [
5734 {
5735 "type" : "field",
5736 "value" : ["ipv4", "total_len"]
5737 },
5738 {
5739 "type" : "expression",
5740 "value" : {
5741 "type" : "expression",
5742 "value" : {
5743 "op" : "&",
5744 "left" : {
5745 "type" : "expression",
5746 "value" : {
5747 "op" : "+",
5748 "left" : {
5749 "type" : "field",
5750 "value" : ["ipv4", "total_len"]
5751 },
5752 "right" : {
5753 "type" : "hexstr",
5754 "value" : "0x0010"
5755 }
5756 }
5757 },
5758 "right" : {
5759 "type" : "hexstr",
5760 "value" : "0xffff"
5761 }
5762 }
5763 }
5764 }
5765 ],
5766 "source_info" : {
5767 "filename" : "include/int/int_source.p4",
5768 "line" : 55,
5769 "column" : 8,
5770 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + INT_HEADER_LEN_BYTES"
5771 }
5772 },
5773 {
5774 "op" : "assign",
5775 "parameters" : [
5776 {
5777 "type" : "field",
5778 "value" : ["udp", "len"]
5779 },
5780 {
5781 "type" : "expression",
5782 "value" : {
5783 "type" : "expression",
5784 "value" : {
5785 "op" : "&",
5786 "left" : {
5787 "type" : "expression",
5788 "value" : {
5789 "op" : "+",
5790 "left" : {
5791 "type" : "field",
5792 "value" : ["udp", "len"]
5793 },
5794 "right" : {
5795 "type" : "hexstr",
5796 "value" : "0x0010"
5797 }
5798 }
5799 },
5800 "right" : {
5801 "type" : "hexstr",
5802 "value" : "0xffff"
5803 }
5804 }
5805 }
5806 }
5807 ],
5808 "source_info" : {
5809 "filename" : "include/int/int_source.p4",
5810 "line" : 56,
5811 "column" : 8,
5812 "source_fragment" : "hdr.udp.len = hdr.udp.len + INT_HEADER_LEN_BYTES"
5813 }
5814 },
5815 {
5816 "op" : "assign",
5817 "parameters" : [
5818 {
5819 "type" : "field",
5820 "value" : ["ipv4", "dscp"]
5821 },
5822 {
5823 "type" : "hexstr",
5824 "value" : "0x01"
5825 }
5826 ],
5827 "source_info" : {
5828 "filename" : "include/control/../define.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07005829 "line" : 135,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005830 "column" : 24,
5831 "source_fragment" : "0x1; ..."
5832 }
5833 }
5834 ]
5835 },
5836 {
5837 "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
5838 "id" : 78,
5839 "runtime_data" : [
5840 {
5841 "name" : "switch_id",
5842 "bitwidth" : 32
5843 }
5844 ],
5845 "primitives" : [
5846 {
5847 "op" : "assign",
5848 "parameters" : [
5849 {
5850 "type" : "field",
5851 "value" : ["userMetadata.int_meta", "transit"]
5852 },
5853 {
5854 "type" : "expression",
5855 "value" : {
5856 "type" : "expression",
5857 "value" : {
5858 "op" : "b2d",
5859 "left" : null,
5860 "right" : {
5861 "type" : "bool",
5862 "value" : true
5863 }
5864 }
5865 }
5866 }
5867 ],
5868 "source_info" : {
5869 "filename" : "include/int/int_transit.p4",
5870 "line" : 26,
5871 "column" : 8,
5872 "source_fragment" : "fmeta.int_meta.transit = true"
5873 }
5874 },
5875 {
5876 "op" : "assign",
5877 "parameters" : [
5878 {
5879 "type" : "field",
5880 "value" : ["userMetadata.int_meta", "switch_id"]
5881 },
5882 {
5883 "type" : "runtime_data",
5884 "value" : 0
5885 }
5886 ],
5887 "source_info" : {
5888 "filename" : "include/int/int_transit.p4",
5889 "line" : 31,
5890 "column" : 8,
5891 "source_fragment" : "fmeta.int_meta.switch_id = switch_id"
5892 }
5893 }
5894 ]
5895 },
5896 {
5897 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
5898 "id" : 79,
5899 "runtime_data" : [],
5900 "primitives" : []
5901 },
5902 {
5903 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
5904 "id" : 80,
5905 "runtime_data" : [],
5906 "primitives" : [
5907 {
5908 "op" : "add_header",
5909 "parameters" : [
5910 {
5911 "type" : "header",
5912 "value" : "int_q_occupancy"
5913 }
5914 ],
5915 "source_info" : {
5916 "filename" : "include/int/int_transit.p4",
5917 "line" : 56,
5918 "column" : 8,
5919 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5920 }
5921 },
5922 {
5923 "op" : "assign",
5924 "parameters" : [
5925 {
5926 "type" : "field",
5927 "value" : ["int_q_occupancy", "q_id"]
5928 },
5929 {
5930 "type" : "hexstr",
5931 "value" : "0x00"
5932 }
5933 ],
5934 "source_info" : {
5935 "filename" : "include/int/int_transit.p4",
5936 "line" : 58,
5937 "column" : 8,
5938 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5939 }
5940 },
5941 {
5942 "op" : "assign",
5943 "parameters" : [
5944 {
5945 "type" : "field",
5946 "value" : ["int_q_occupancy", "q_occupancy"]
5947 },
5948 {
5949 "type" : "expression",
5950 "value" : {
5951 "type" : "expression",
5952 "value" : {
5953 "op" : "&",
5954 "left" : {
5955 "type" : "field",
5956 "value" : ["standard_metadata", "deq_qdepth"]
5957 },
5958 "right" : {
5959 "type" : "hexstr",
5960 "value" : "0xffffff"
5961 }
5962 }
5963 }
5964 }
5965 ],
5966 "source_info" : {
5967 "filename" : "include/int/int_transit.p4",
5968 "line" : 59,
5969 "column" : 8,
5970 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5971 }
5972 },
5973 {
5974 "op" : "assign",
5975 "parameters" : [
5976 {
5977 "type" : "field",
5978 "value" : ["userMetadata.int_meta", "new_words"]
5979 },
5980 {
5981 "type" : "expression",
5982 "value" : {
5983 "type" : "expression",
5984 "value" : {
5985 "op" : "&",
5986 "left" : {
5987 "type" : "expression",
5988 "value" : {
5989 "op" : "+",
5990 "left" : {
5991 "type" : "field",
5992 "value" : ["userMetadata.int_meta", "new_words"]
5993 },
5994 "right" : {
5995 "type" : "hexstr",
5996 "value" : "0x01"
5997 }
5998 }
5999 },
6000 "right" : {
6001 "type" : "hexstr",
6002 "value" : "0xff"
6003 }
6004 }
6005 }
6006 }
6007 ],
6008 "source_info" : {
6009 "filename" : "include/int/int_transit.p4",
6010 "line" : 88,
6011 "column" : 8,
6012 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
6013 }
6014 },
6015 {
6016 "op" : "assign",
6017 "parameters" : [
6018 {
6019 "type" : "field",
6020 "value" : ["userMetadata.int_meta", "new_bytes"]
6021 },
6022 {
6023 "type" : "expression",
6024 "value" : {
6025 "type" : "expression",
6026 "value" : {
6027 "op" : "&",
6028 "left" : {
6029 "type" : "expression",
6030 "value" : {
6031 "op" : "+",
6032 "left" : {
6033 "type" : "field",
6034 "value" : ["userMetadata.int_meta", "new_bytes"]
6035 },
6036 "right" : {
6037 "type" : "hexstr",
6038 "value" : "0x0004"
6039 }
6040 }
6041 },
6042 "right" : {
6043 "type" : "hexstr",
6044 "value" : "0xffff"
6045 }
6046 }
6047 }
6048 }
6049 ],
6050 "source_info" : {
6051 "filename" : "include/int/int_transit.p4",
6052 "line" : 89,
6053 "column" : 8,
6054 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
6055 }
6056 }
6057 ]
6058 },
6059 {
6060 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
6061 "id" : 81,
6062 "runtime_data" : [],
6063 "primitives" : [
6064 {
6065 "op" : "add_header",
6066 "parameters" : [
6067 {
6068 "type" : "header",
6069 "value" : "int_hop_latency"
6070 }
6071 ],
6072 "source_info" : {
6073 "filename" : "include/int/int_transit.p4",
6074 "line" : 51,
6075 "column" : 8,
6076 "source_fragment" : "hdr.int_hop_latency.setValid()"
6077 }
6078 },
6079 {
6080 "op" : "assign",
6081 "parameters" : [
6082 {
6083 "type" : "field",
6084 "value" : ["int_hop_latency", "hop_latency"]
6085 },
6086 {
6087 "type" : "field",
6088 "value" : ["standard_metadata", "deq_timedelta"]
6089 }
6090 ],
6091 "source_info" : {
6092 "filename" : "include/int/int_transit.p4",
6093 "line" : 52,
6094 "column" : 8,
6095 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6096 }
6097 },
6098 {
6099 "op" : "assign",
6100 "parameters" : [
6101 {
6102 "type" : "field",
6103 "value" : ["userMetadata.int_meta", "new_words"]
6104 },
6105 {
6106 "type" : "expression",
6107 "value" : {
6108 "type" : "expression",
6109 "value" : {
6110 "op" : "&",
6111 "left" : {
6112 "type" : "expression",
6113 "value" : {
6114 "op" : "+",
6115 "left" : {
6116 "type" : "field",
6117 "value" : ["userMetadata.int_meta", "new_words"]
6118 },
6119 "right" : {
6120 "type" : "hexstr",
6121 "value" : "0x01"
6122 }
6123 }
6124 },
6125 "right" : {
6126 "type" : "hexstr",
6127 "value" : "0xff"
6128 }
6129 }
6130 }
6131 }
6132 ],
6133 "source_info" : {
6134 "filename" : "include/int/int_transit.p4",
6135 "line" : 88,
6136 "column" : 8,
6137 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
6138 }
6139 },
6140 {
6141 "op" : "assign",
6142 "parameters" : [
6143 {
6144 "type" : "field",
6145 "value" : ["userMetadata.int_meta", "new_bytes"]
6146 },
6147 {
6148 "type" : "expression",
6149 "value" : {
6150 "type" : "expression",
6151 "value" : {
6152 "op" : "&",
6153 "left" : {
6154 "type" : "expression",
6155 "value" : {
6156 "op" : "+",
6157 "left" : {
6158 "type" : "field",
6159 "value" : ["userMetadata.int_meta", "new_bytes"]
6160 },
6161 "right" : {
6162 "type" : "hexstr",
6163 "value" : "0x0004"
6164 }
6165 }
6166 },
6167 "right" : {
6168 "type" : "hexstr",
6169 "value" : "0xffff"
6170 }
6171 }
6172 }
6173 }
6174 ],
6175 "source_info" : {
6176 "filename" : "include/int/int_transit.p4",
6177 "line" : 89,
6178 "column" : 8,
6179 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
6180 }
6181 }
6182 ]
6183 },
6184 {
6185 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
6186 "id" : 82,
6187 "runtime_data" : [],
6188 "primitives" : [
6189 {
6190 "op" : "add_header",
6191 "parameters" : [
6192 {
6193 "type" : "header",
6194 "value" : "int_q_occupancy"
6195 }
6196 ],
6197 "source_info" : {
6198 "filename" : "include/int/int_transit.p4",
6199 "line" : 56,
6200 "column" : 8,
6201 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6202 }
6203 },
6204 {
6205 "op" : "assign",
6206 "parameters" : [
6207 {
6208 "type" : "field",
6209 "value" : ["int_q_occupancy", "q_id"]
6210 },
6211 {
6212 "type" : "hexstr",
6213 "value" : "0x00"
6214 }
6215 ],
6216 "source_info" : {
6217 "filename" : "include/int/int_transit.p4",
6218 "line" : 58,
6219 "column" : 8,
6220 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6221 }
6222 },
6223 {
6224 "op" : "assign",
6225 "parameters" : [
6226 {
6227 "type" : "field",
6228 "value" : ["int_q_occupancy", "q_occupancy"]
6229 },
6230 {
6231 "type" : "expression",
6232 "value" : {
6233 "type" : "expression",
6234 "value" : {
6235 "op" : "&",
6236 "left" : {
6237 "type" : "field",
6238 "value" : ["standard_metadata", "deq_qdepth"]
6239 },
6240 "right" : {
6241 "type" : "hexstr",
6242 "value" : "0xffffff"
6243 }
6244 }
6245 }
6246 }
6247 ],
6248 "source_info" : {
6249 "filename" : "include/int/int_transit.p4",
6250 "line" : 59,
6251 "column" : 8,
6252 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6253 }
6254 },
6255 {
6256 "op" : "add_header",
6257 "parameters" : [
6258 {
6259 "type" : "header",
6260 "value" : "int_hop_latency"
6261 }
6262 ],
6263 "source_info" : {
6264 "filename" : "include/int/int_transit.p4",
6265 "line" : 51,
6266 "column" : 8,
6267 "source_fragment" : "hdr.int_hop_latency.setValid()"
6268 }
6269 },
6270 {
6271 "op" : "assign",
6272 "parameters" : [
6273 {
6274 "type" : "field",
6275 "value" : ["int_hop_latency", "hop_latency"]
6276 },
6277 {
6278 "type" : "field",
6279 "value" : ["standard_metadata", "deq_timedelta"]
6280 }
6281 ],
6282 "source_info" : {
6283 "filename" : "include/int/int_transit.p4",
6284 "line" : 52,
6285 "column" : 8,
6286 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6287 }
6288 },
6289 {
6290 "op" : "assign",
6291 "parameters" : [
6292 {
6293 "type" : "field",
6294 "value" : ["userMetadata.int_meta", "new_words"]
6295 },
6296 {
6297 "type" : "expression",
6298 "value" : {
6299 "type" : "expression",
6300 "value" : {
6301 "op" : "&",
6302 "left" : {
6303 "type" : "expression",
6304 "value" : {
6305 "op" : "+",
6306 "left" : {
6307 "type" : "field",
6308 "value" : ["userMetadata.int_meta", "new_words"]
6309 },
6310 "right" : {
6311 "type" : "hexstr",
6312 "value" : "0x02"
6313 }
6314 }
6315 },
6316 "right" : {
6317 "type" : "hexstr",
6318 "value" : "0xff"
6319 }
6320 }
6321 }
6322 }
6323 ],
6324 "source_info" : {
6325 "filename" : "include/int/int_transit.p4",
6326 "line" : 93,
6327 "column" : 8,
6328 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6329 }
6330 },
6331 {
6332 "op" : "assign",
6333 "parameters" : [
6334 {
6335 "type" : "field",
6336 "value" : ["userMetadata.int_meta", "new_bytes"]
6337 },
6338 {
6339 "type" : "expression",
6340 "value" : {
6341 "type" : "expression",
6342 "value" : {
6343 "op" : "&",
6344 "left" : {
6345 "type" : "expression",
6346 "value" : {
6347 "op" : "+",
6348 "left" : {
6349 "type" : "field",
6350 "value" : ["userMetadata.int_meta", "new_bytes"]
6351 },
6352 "right" : {
6353 "type" : "hexstr",
6354 "value" : "0x0008"
6355 }
6356 }
6357 },
6358 "right" : {
6359 "type" : "hexstr",
6360 "value" : "0xffff"
6361 }
6362 }
6363 }
6364 }
6365 ],
6366 "source_info" : {
6367 "filename" : "include/int/int_transit.p4",
6368 "line" : 94,
6369 "column" : 8,
6370 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6371 }
6372 }
6373 ]
6374 },
6375 {
6376 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
6377 "id" : 83,
6378 "runtime_data" : [],
6379 "primitives" : [
6380 {
6381 "op" : "add_header",
6382 "parameters" : [
6383 {
6384 "type" : "header",
6385 "value" : "int_port_ids"
6386 }
6387 ],
6388 "source_info" : {
6389 "filename" : "include/int/int_transit.p4",
6390 "line" : 45,
6391 "column" : 8,
6392 "source_fragment" : "hdr.int_port_ids.setValid()"
6393 }
6394 },
6395 {
6396 "op" : "assign",
6397 "parameters" : [
6398 {
6399 "type" : "field",
6400 "value" : ["int_port_ids", "ingress_port_id"]
6401 },
6402 {
6403 "type" : "expression",
6404 "value" : {
6405 "type" : "expression",
6406 "value" : {
6407 "op" : "&",
6408 "left" : {
6409 "type" : "field",
6410 "value" : ["standard_metadata", "ingress_port"]
6411 },
6412 "right" : {
6413 "type" : "hexstr",
6414 "value" : "0xffff"
6415 }
6416 }
6417 }
6418 }
6419 ],
6420 "source_info" : {
6421 "filename" : "include/int/int_transit.p4",
6422 "line" : 46,
6423 "column" : 8,
6424 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6425 }
6426 },
6427 {
6428 "op" : "assign",
6429 "parameters" : [
6430 {
6431 "type" : "field",
6432 "value" : ["int_port_ids", "egress_port_id"]
6433 },
6434 {
6435 "type" : "expression",
6436 "value" : {
6437 "type" : "expression",
6438 "value" : {
6439 "op" : "&",
6440 "left" : {
6441 "type" : "field",
6442 "value" : ["standard_metadata", "egress_port"]
6443 },
6444 "right" : {
6445 "type" : "hexstr",
6446 "value" : "0xffff"
6447 }
6448 }
6449 }
6450 }
6451 ],
6452 "source_info" : {
6453 "filename" : "include/int/int_transit.p4",
6454 "line" : 47,
6455 "column" : 8,
6456 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6457 }
6458 },
6459 {
6460 "op" : "assign",
6461 "parameters" : [
6462 {
6463 "type" : "field",
6464 "value" : ["userMetadata.int_meta", "new_words"]
6465 },
6466 {
6467 "type" : "expression",
6468 "value" : {
6469 "type" : "expression",
6470 "value" : {
6471 "op" : "&",
6472 "left" : {
6473 "type" : "expression",
6474 "value" : {
6475 "op" : "+",
6476 "left" : {
6477 "type" : "field",
6478 "value" : ["userMetadata.int_meta", "new_words"]
6479 },
6480 "right" : {
6481 "type" : "hexstr",
6482 "value" : "0x01"
6483 }
6484 }
6485 },
6486 "right" : {
6487 "type" : "hexstr",
6488 "value" : "0xff"
6489 }
6490 }
6491 }
6492 }
6493 ],
6494 "source_info" : {
6495 "filename" : "include/int/int_transit.p4",
6496 "line" : 88,
6497 "column" : 8,
6498 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
6499 }
6500 },
6501 {
6502 "op" : "assign",
6503 "parameters" : [
6504 {
6505 "type" : "field",
6506 "value" : ["userMetadata.int_meta", "new_bytes"]
6507 },
6508 {
6509 "type" : "expression",
6510 "value" : {
6511 "type" : "expression",
6512 "value" : {
6513 "op" : "&",
6514 "left" : {
6515 "type" : "expression",
6516 "value" : {
6517 "op" : "+",
6518 "left" : {
6519 "type" : "field",
6520 "value" : ["userMetadata.int_meta", "new_bytes"]
6521 },
6522 "right" : {
6523 "type" : "hexstr",
6524 "value" : "0x0004"
6525 }
6526 }
6527 },
6528 "right" : {
6529 "type" : "hexstr",
6530 "value" : "0xffff"
6531 }
6532 }
6533 }
6534 }
6535 ],
6536 "source_info" : {
6537 "filename" : "include/int/int_transit.p4",
6538 "line" : 89,
6539 "column" : 8,
6540 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
6541 }
6542 }
6543 ]
6544 },
6545 {
6546 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
6547 "id" : 84,
6548 "runtime_data" : [],
6549 "primitives" : [
6550 {
6551 "op" : "add_header",
6552 "parameters" : [
6553 {
6554 "type" : "header",
6555 "value" : "int_q_occupancy"
6556 }
6557 ],
6558 "source_info" : {
6559 "filename" : "include/int/int_transit.p4",
6560 "line" : 56,
6561 "column" : 8,
6562 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6563 }
6564 },
6565 {
6566 "op" : "assign",
6567 "parameters" : [
6568 {
6569 "type" : "field",
6570 "value" : ["int_q_occupancy", "q_id"]
6571 },
6572 {
6573 "type" : "hexstr",
6574 "value" : "0x00"
6575 }
6576 ],
6577 "source_info" : {
6578 "filename" : "include/int/int_transit.p4",
6579 "line" : 58,
6580 "column" : 8,
6581 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6582 }
6583 },
6584 {
6585 "op" : "assign",
6586 "parameters" : [
6587 {
6588 "type" : "field",
6589 "value" : ["int_q_occupancy", "q_occupancy"]
6590 },
6591 {
6592 "type" : "expression",
6593 "value" : {
6594 "type" : "expression",
6595 "value" : {
6596 "op" : "&",
6597 "left" : {
6598 "type" : "field",
6599 "value" : ["standard_metadata", "deq_qdepth"]
6600 },
6601 "right" : {
6602 "type" : "hexstr",
6603 "value" : "0xffffff"
6604 }
6605 }
6606 }
6607 }
6608 ],
6609 "source_info" : {
6610 "filename" : "include/int/int_transit.p4",
6611 "line" : 59,
6612 "column" : 8,
6613 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6614 }
6615 },
6616 {
6617 "op" : "add_header",
6618 "parameters" : [
6619 {
6620 "type" : "header",
6621 "value" : "int_port_ids"
6622 }
6623 ],
6624 "source_info" : {
6625 "filename" : "include/int/int_transit.p4",
6626 "line" : 45,
6627 "column" : 8,
6628 "source_fragment" : "hdr.int_port_ids.setValid()"
6629 }
6630 },
6631 {
6632 "op" : "assign",
6633 "parameters" : [
6634 {
6635 "type" : "field",
6636 "value" : ["int_port_ids", "ingress_port_id"]
6637 },
6638 {
6639 "type" : "expression",
6640 "value" : {
6641 "type" : "expression",
6642 "value" : {
6643 "op" : "&",
6644 "left" : {
6645 "type" : "field",
6646 "value" : ["standard_metadata", "ingress_port"]
6647 },
6648 "right" : {
6649 "type" : "hexstr",
6650 "value" : "0xffff"
6651 }
6652 }
6653 }
6654 }
6655 ],
6656 "source_info" : {
6657 "filename" : "include/int/int_transit.p4",
6658 "line" : 46,
6659 "column" : 8,
6660 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6661 }
6662 },
6663 {
6664 "op" : "assign",
6665 "parameters" : [
6666 {
6667 "type" : "field",
6668 "value" : ["int_port_ids", "egress_port_id"]
6669 },
6670 {
6671 "type" : "expression",
6672 "value" : {
6673 "type" : "expression",
6674 "value" : {
6675 "op" : "&",
6676 "left" : {
6677 "type" : "field",
6678 "value" : ["standard_metadata", "egress_port"]
6679 },
6680 "right" : {
6681 "type" : "hexstr",
6682 "value" : "0xffff"
6683 }
6684 }
6685 }
6686 }
6687 ],
6688 "source_info" : {
6689 "filename" : "include/int/int_transit.p4",
6690 "line" : 47,
6691 "column" : 8,
6692 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6693 }
6694 },
6695 {
6696 "op" : "assign",
6697 "parameters" : [
6698 {
6699 "type" : "field",
6700 "value" : ["userMetadata.int_meta", "new_words"]
6701 },
6702 {
6703 "type" : "expression",
6704 "value" : {
6705 "type" : "expression",
6706 "value" : {
6707 "op" : "&",
6708 "left" : {
6709 "type" : "expression",
6710 "value" : {
6711 "op" : "+",
6712 "left" : {
6713 "type" : "field",
6714 "value" : ["userMetadata.int_meta", "new_words"]
6715 },
6716 "right" : {
6717 "type" : "hexstr",
6718 "value" : "0x02"
6719 }
6720 }
6721 },
6722 "right" : {
6723 "type" : "hexstr",
6724 "value" : "0xff"
6725 }
6726 }
6727 }
6728 }
6729 ],
6730 "source_info" : {
6731 "filename" : "include/int/int_transit.p4",
6732 "line" : 93,
6733 "column" : 8,
6734 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6735 }
6736 },
6737 {
6738 "op" : "assign",
6739 "parameters" : [
6740 {
6741 "type" : "field",
6742 "value" : ["userMetadata.int_meta", "new_bytes"]
6743 },
6744 {
6745 "type" : "expression",
6746 "value" : {
6747 "type" : "expression",
6748 "value" : {
6749 "op" : "&",
6750 "left" : {
6751 "type" : "expression",
6752 "value" : {
6753 "op" : "+",
6754 "left" : {
6755 "type" : "field",
6756 "value" : ["userMetadata.int_meta", "new_bytes"]
6757 },
6758 "right" : {
6759 "type" : "hexstr",
6760 "value" : "0x0008"
6761 }
6762 }
6763 },
6764 "right" : {
6765 "type" : "hexstr",
6766 "value" : "0xffff"
6767 }
6768 }
6769 }
6770 }
6771 ],
6772 "source_info" : {
6773 "filename" : "include/int/int_transit.p4",
6774 "line" : 94,
6775 "column" : 8,
6776 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6777 }
6778 }
6779 ]
6780 },
6781 {
6782 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
6783 "id" : 85,
6784 "runtime_data" : [],
6785 "primitives" : [
6786 {
6787 "op" : "add_header",
6788 "parameters" : [
6789 {
6790 "type" : "header",
6791 "value" : "int_hop_latency"
6792 }
6793 ],
6794 "source_info" : {
6795 "filename" : "include/int/int_transit.p4",
6796 "line" : 51,
6797 "column" : 8,
6798 "source_fragment" : "hdr.int_hop_latency.setValid()"
6799 }
6800 },
6801 {
6802 "op" : "assign",
6803 "parameters" : [
6804 {
6805 "type" : "field",
6806 "value" : ["int_hop_latency", "hop_latency"]
6807 },
6808 {
6809 "type" : "field",
6810 "value" : ["standard_metadata", "deq_timedelta"]
6811 }
6812 ],
6813 "source_info" : {
6814 "filename" : "include/int/int_transit.p4",
6815 "line" : 52,
6816 "column" : 8,
6817 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6818 }
6819 },
6820 {
6821 "op" : "add_header",
6822 "parameters" : [
6823 {
6824 "type" : "header",
6825 "value" : "int_port_ids"
6826 }
6827 ],
6828 "source_info" : {
6829 "filename" : "include/int/int_transit.p4",
6830 "line" : 45,
6831 "column" : 8,
6832 "source_fragment" : "hdr.int_port_ids.setValid()"
6833 }
6834 },
6835 {
6836 "op" : "assign",
6837 "parameters" : [
6838 {
6839 "type" : "field",
6840 "value" : ["int_port_ids", "ingress_port_id"]
6841 },
6842 {
6843 "type" : "expression",
6844 "value" : {
6845 "type" : "expression",
6846 "value" : {
6847 "op" : "&",
6848 "left" : {
6849 "type" : "field",
6850 "value" : ["standard_metadata", "ingress_port"]
6851 },
6852 "right" : {
6853 "type" : "hexstr",
6854 "value" : "0xffff"
6855 }
6856 }
6857 }
6858 }
6859 ],
6860 "source_info" : {
6861 "filename" : "include/int/int_transit.p4",
6862 "line" : 46,
6863 "column" : 8,
6864 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6865 }
6866 },
6867 {
6868 "op" : "assign",
6869 "parameters" : [
6870 {
6871 "type" : "field",
6872 "value" : ["int_port_ids", "egress_port_id"]
6873 },
6874 {
6875 "type" : "expression",
6876 "value" : {
6877 "type" : "expression",
6878 "value" : {
6879 "op" : "&",
6880 "left" : {
6881 "type" : "field",
6882 "value" : ["standard_metadata", "egress_port"]
6883 },
6884 "right" : {
6885 "type" : "hexstr",
6886 "value" : "0xffff"
6887 }
6888 }
6889 }
6890 }
6891 ],
6892 "source_info" : {
6893 "filename" : "include/int/int_transit.p4",
6894 "line" : 47,
6895 "column" : 8,
6896 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6897 }
6898 },
6899 {
6900 "op" : "assign",
6901 "parameters" : [
6902 {
6903 "type" : "field",
6904 "value" : ["userMetadata.int_meta", "new_words"]
6905 },
6906 {
6907 "type" : "expression",
6908 "value" : {
6909 "type" : "expression",
6910 "value" : {
6911 "op" : "&",
6912 "left" : {
6913 "type" : "expression",
6914 "value" : {
6915 "op" : "+",
6916 "left" : {
6917 "type" : "field",
6918 "value" : ["userMetadata.int_meta", "new_words"]
6919 },
6920 "right" : {
6921 "type" : "hexstr",
6922 "value" : "0x02"
6923 }
6924 }
6925 },
6926 "right" : {
6927 "type" : "hexstr",
6928 "value" : "0xff"
6929 }
6930 }
6931 }
6932 }
6933 ],
6934 "source_info" : {
6935 "filename" : "include/int/int_transit.p4",
6936 "line" : 93,
6937 "column" : 8,
6938 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6939 }
6940 },
6941 {
6942 "op" : "assign",
6943 "parameters" : [
6944 {
6945 "type" : "field",
6946 "value" : ["userMetadata.int_meta", "new_bytes"]
6947 },
6948 {
6949 "type" : "expression",
6950 "value" : {
6951 "type" : "expression",
6952 "value" : {
6953 "op" : "&",
6954 "left" : {
6955 "type" : "expression",
6956 "value" : {
6957 "op" : "+",
6958 "left" : {
6959 "type" : "field",
6960 "value" : ["userMetadata.int_meta", "new_bytes"]
6961 },
6962 "right" : {
6963 "type" : "hexstr",
6964 "value" : "0x0008"
6965 }
6966 }
6967 },
6968 "right" : {
6969 "type" : "hexstr",
6970 "value" : "0xffff"
6971 }
6972 }
6973 }
6974 }
6975 ],
6976 "source_info" : {
6977 "filename" : "include/int/int_transit.p4",
6978 "line" : 94,
6979 "column" : 8,
6980 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6981 }
6982 }
6983 ]
6984 },
6985 {
6986 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
6987 "id" : 86,
6988 "runtime_data" : [],
6989 "primitives" : [
6990 {
6991 "op" : "add_header",
6992 "parameters" : [
6993 {
6994 "type" : "header",
6995 "value" : "int_q_occupancy"
6996 }
6997 ],
6998 "source_info" : {
6999 "filename" : "include/int/int_transit.p4",
7000 "line" : 56,
7001 "column" : 8,
7002 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7003 }
7004 },
7005 {
7006 "op" : "assign",
7007 "parameters" : [
7008 {
7009 "type" : "field",
7010 "value" : ["int_q_occupancy", "q_id"]
7011 },
7012 {
7013 "type" : "hexstr",
7014 "value" : "0x00"
7015 }
7016 ],
7017 "source_info" : {
7018 "filename" : "include/int/int_transit.p4",
7019 "line" : 58,
7020 "column" : 8,
7021 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7022 }
7023 },
7024 {
7025 "op" : "assign",
7026 "parameters" : [
7027 {
7028 "type" : "field",
7029 "value" : ["int_q_occupancy", "q_occupancy"]
7030 },
7031 {
7032 "type" : "expression",
7033 "value" : {
7034 "type" : "expression",
7035 "value" : {
7036 "op" : "&",
7037 "left" : {
7038 "type" : "field",
7039 "value" : ["standard_metadata", "deq_qdepth"]
7040 },
7041 "right" : {
7042 "type" : "hexstr",
7043 "value" : "0xffffff"
7044 }
7045 }
7046 }
7047 }
7048 ],
7049 "source_info" : {
7050 "filename" : "include/int/int_transit.p4",
7051 "line" : 59,
7052 "column" : 8,
7053 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7054 }
7055 },
7056 {
7057 "op" : "add_header",
7058 "parameters" : [
7059 {
7060 "type" : "header",
7061 "value" : "int_hop_latency"
7062 }
7063 ],
7064 "source_info" : {
7065 "filename" : "include/int/int_transit.p4",
7066 "line" : 51,
7067 "column" : 8,
7068 "source_fragment" : "hdr.int_hop_latency.setValid()"
7069 }
7070 },
7071 {
7072 "op" : "assign",
7073 "parameters" : [
7074 {
7075 "type" : "field",
7076 "value" : ["int_hop_latency", "hop_latency"]
7077 },
7078 {
7079 "type" : "field",
7080 "value" : ["standard_metadata", "deq_timedelta"]
7081 }
7082 ],
7083 "source_info" : {
7084 "filename" : "include/int/int_transit.p4",
7085 "line" : 52,
7086 "column" : 8,
7087 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7088 }
7089 },
7090 {
7091 "op" : "add_header",
7092 "parameters" : [
7093 {
7094 "type" : "header",
7095 "value" : "int_port_ids"
7096 }
7097 ],
7098 "source_info" : {
7099 "filename" : "include/int/int_transit.p4",
7100 "line" : 45,
7101 "column" : 8,
7102 "source_fragment" : "hdr.int_port_ids.setValid()"
7103 }
7104 },
7105 {
7106 "op" : "assign",
7107 "parameters" : [
7108 {
7109 "type" : "field",
7110 "value" : ["int_port_ids", "ingress_port_id"]
7111 },
7112 {
7113 "type" : "expression",
7114 "value" : {
7115 "type" : "expression",
7116 "value" : {
7117 "op" : "&",
7118 "left" : {
7119 "type" : "field",
7120 "value" : ["standard_metadata", "ingress_port"]
7121 },
7122 "right" : {
7123 "type" : "hexstr",
7124 "value" : "0xffff"
7125 }
7126 }
7127 }
7128 }
7129 ],
7130 "source_info" : {
7131 "filename" : "include/int/int_transit.p4",
7132 "line" : 46,
7133 "column" : 8,
7134 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7135 }
7136 },
7137 {
7138 "op" : "assign",
7139 "parameters" : [
7140 {
7141 "type" : "field",
7142 "value" : ["int_port_ids", "egress_port_id"]
7143 },
7144 {
7145 "type" : "expression",
7146 "value" : {
7147 "type" : "expression",
7148 "value" : {
7149 "op" : "&",
7150 "left" : {
7151 "type" : "field",
7152 "value" : ["standard_metadata", "egress_port"]
7153 },
7154 "right" : {
7155 "type" : "hexstr",
7156 "value" : "0xffff"
7157 }
7158 }
7159 }
7160 }
7161 ],
7162 "source_info" : {
7163 "filename" : "include/int/int_transit.p4",
7164 "line" : 47,
7165 "column" : 8,
7166 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7167 }
7168 },
7169 {
7170 "op" : "assign",
7171 "parameters" : [
7172 {
7173 "type" : "field",
7174 "value" : ["userMetadata.int_meta", "new_words"]
7175 },
7176 {
7177 "type" : "expression",
7178 "value" : {
7179 "type" : "expression",
7180 "value" : {
7181 "op" : "&",
7182 "left" : {
7183 "type" : "expression",
7184 "value" : {
7185 "op" : "+",
7186 "left" : {
7187 "type" : "field",
7188 "value" : ["userMetadata.int_meta", "new_words"]
7189 },
7190 "right" : {
7191 "type" : "hexstr",
7192 "value" : "0x03"
7193 }
7194 }
7195 },
7196 "right" : {
7197 "type" : "hexstr",
7198 "value" : "0xff"
7199 }
7200 }
7201 }
7202 }
7203 ],
7204 "source_info" : {
7205 "filename" : "include/int/int_transit.p4",
7206 "line" : 98,
7207 "column" : 8,
7208 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
7209 }
7210 },
7211 {
7212 "op" : "assign",
7213 "parameters" : [
7214 {
7215 "type" : "field",
7216 "value" : ["userMetadata.int_meta", "new_bytes"]
7217 },
7218 {
7219 "type" : "expression",
7220 "value" : {
7221 "type" : "expression",
7222 "value" : {
7223 "op" : "&",
7224 "left" : {
7225 "type" : "expression",
7226 "value" : {
7227 "op" : "+",
7228 "left" : {
7229 "type" : "field",
7230 "value" : ["userMetadata.int_meta", "new_bytes"]
7231 },
7232 "right" : {
7233 "type" : "hexstr",
7234 "value" : "0x000c"
7235 }
7236 }
7237 },
7238 "right" : {
7239 "type" : "hexstr",
7240 "value" : "0xffff"
7241 }
7242 }
7243 }
7244 }
7245 ],
7246 "source_info" : {
7247 "filename" : "include/int/int_transit.p4",
7248 "line" : 99,
7249 "column" : 8,
7250 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
7251 }
7252 }
7253 ]
7254 },
7255 {
7256 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
7257 "id" : 87,
7258 "runtime_data" : [],
7259 "primitives" : [
7260 {
7261 "op" : "add_header",
7262 "parameters" : [
7263 {
7264 "type" : "header",
7265 "value" : "int_switch_id"
7266 }
7267 ],
7268 "source_info" : {
7269 "filename" : "include/int/int_transit.p4",
7270 "line" : 40,
7271 "column" : 8,
7272 "source_fragment" : "hdr.int_switch_id.setValid()"
7273 }
7274 },
7275 {
7276 "op" : "assign",
7277 "parameters" : [
7278 {
7279 "type" : "field",
7280 "value" : ["int_switch_id", "switch_id"]
7281 },
7282 {
7283 "type" : "field",
7284 "value" : ["userMetadata.int_meta", "switch_id"]
7285 }
7286 ],
7287 "source_info" : {
7288 "filename" : "include/int/int_transit.p4",
7289 "line" : 41,
7290 "column" : 8,
7291 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7292 }
7293 },
7294 {
7295 "op" : "assign",
7296 "parameters" : [
7297 {
7298 "type" : "field",
7299 "value" : ["userMetadata.int_meta", "new_words"]
7300 },
7301 {
7302 "type" : "expression",
7303 "value" : {
7304 "type" : "expression",
7305 "value" : {
7306 "op" : "&",
7307 "left" : {
7308 "type" : "expression",
7309 "value" : {
7310 "op" : "+",
7311 "left" : {
7312 "type" : "field",
7313 "value" : ["userMetadata.int_meta", "new_words"]
7314 },
7315 "right" : {
7316 "type" : "hexstr",
7317 "value" : "0x01"
7318 }
7319 }
7320 },
7321 "right" : {
7322 "type" : "hexstr",
7323 "value" : "0xff"
7324 }
7325 }
7326 }
7327 }
7328 ],
7329 "source_info" : {
7330 "filename" : "include/int/int_transit.p4",
7331 "line" : 88,
7332 "column" : 8,
7333 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
7334 }
7335 },
7336 {
7337 "op" : "assign",
7338 "parameters" : [
7339 {
7340 "type" : "field",
7341 "value" : ["userMetadata.int_meta", "new_bytes"]
7342 },
7343 {
7344 "type" : "expression",
7345 "value" : {
7346 "type" : "expression",
7347 "value" : {
7348 "op" : "&",
7349 "left" : {
7350 "type" : "expression",
7351 "value" : {
7352 "op" : "+",
7353 "left" : {
7354 "type" : "field",
7355 "value" : ["userMetadata.int_meta", "new_bytes"]
7356 },
7357 "right" : {
7358 "type" : "hexstr",
7359 "value" : "0x0004"
7360 }
7361 }
7362 },
7363 "right" : {
7364 "type" : "hexstr",
7365 "value" : "0xffff"
7366 }
7367 }
7368 }
7369 }
7370 ],
7371 "source_info" : {
7372 "filename" : "include/int/int_transit.p4",
7373 "line" : 89,
7374 "column" : 8,
7375 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
7376 }
7377 }
7378 ]
7379 },
7380 {
7381 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
7382 "id" : 88,
7383 "runtime_data" : [],
7384 "primitives" : [
7385 {
7386 "op" : "add_header",
7387 "parameters" : [
7388 {
7389 "type" : "header",
7390 "value" : "int_q_occupancy"
7391 }
7392 ],
7393 "source_info" : {
7394 "filename" : "include/int/int_transit.p4",
7395 "line" : 56,
7396 "column" : 8,
7397 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7398 }
7399 },
7400 {
7401 "op" : "assign",
7402 "parameters" : [
7403 {
7404 "type" : "field",
7405 "value" : ["int_q_occupancy", "q_id"]
7406 },
7407 {
7408 "type" : "hexstr",
7409 "value" : "0x00"
7410 }
7411 ],
7412 "source_info" : {
7413 "filename" : "include/int/int_transit.p4",
7414 "line" : 58,
7415 "column" : 8,
7416 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7417 }
7418 },
7419 {
7420 "op" : "assign",
7421 "parameters" : [
7422 {
7423 "type" : "field",
7424 "value" : ["int_q_occupancy", "q_occupancy"]
7425 },
7426 {
7427 "type" : "expression",
7428 "value" : {
7429 "type" : "expression",
7430 "value" : {
7431 "op" : "&",
7432 "left" : {
7433 "type" : "field",
7434 "value" : ["standard_metadata", "deq_qdepth"]
7435 },
7436 "right" : {
7437 "type" : "hexstr",
7438 "value" : "0xffffff"
7439 }
7440 }
7441 }
7442 }
7443 ],
7444 "source_info" : {
7445 "filename" : "include/int/int_transit.p4",
7446 "line" : 59,
7447 "column" : 8,
7448 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7449 }
7450 },
7451 {
7452 "op" : "add_header",
7453 "parameters" : [
7454 {
7455 "type" : "header",
7456 "value" : "int_switch_id"
7457 }
7458 ],
7459 "source_info" : {
7460 "filename" : "include/int/int_transit.p4",
7461 "line" : 40,
7462 "column" : 8,
7463 "source_fragment" : "hdr.int_switch_id.setValid()"
7464 }
7465 },
7466 {
7467 "op" : "assign",
7468 "parameters" : [
7469 {
7470 "type" : "field",
7471 "value" : ["int_switch_id", "switch_id"]
7472 },
7473 {
7474 "type" : "field",
7475 "value" : ["userMetadata.int_meta", "switch_id"]
7476 }
7477 ],
7478 "source_info" : {
7479 "filename" : "include/int/int_transit.p4",
7480 "line" : 41,
7481 "column" : 8,
7482 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7483 }
7484 },
7485 {
7486 "op" : "assign",
7487 "parameters" : [
7488 {
7489 "type" : "field",
7490 "value" : ["userMetadata.int_meta", "new_words"]
7491 },
7492 {
7493 "type" : "expression",
7494 "value" : {
7495 "type" : "expression",
7496 "value" : {
7497 "op" : "&",
7498 "left" : {
7499 "type" : "expression",
7500 "value" : {
7501 "op" : "+",
7502 "left" : {
7503 "type" : "field",
7504 "value" : ["userMetadata.int_meta", "new_words"]
7505 },
7506 "right" : {
7507 "type" : "hexstr",
7508 "value" : "0x02"
7509 }
7510 }
7511 },
7512 "right" : {
7513 "type" : "hexstr",
7514 "value" : "0xff"
7515 }
7516 }
7517 }
7518 }
7519 ],
7520 "source_info" : {
7521 "filename" : "include/int/int_transit.p4",
7522 "line" : 93,
7523 "column" : 8,
7524 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
7525 }
7526 },
7527 {
7528 "op" : "assign",
7529 "parameters" : [
7530 {
7531 "type" : "field",
7532 "value" : ["userMetadata.int_meta", "new_bytes"]
7533 },
7534 {
7535 "type" : "expression",
7536 "value" : {
7537 "type" : "expression",
7538 "value" : {
7539 "op" : "&",
7540 "left" : {
7541 "type" : "expression",
7542 "value" : {
7543 "op" : "+",
7544 "left" : {
7545 "type" : "field",
7546 "value" : ["userMetadata.int_meta", "new_bytes"]
7547 },
7548 "right" : {
7549 "type" : "hexstr",
7550 "value" : "0x0008"
7551 }
7552 }
7553 },
7554 "right" : {
7555 "type" : "hexstr",
7556 "value" : "0xffff"
7557 }
7558 }
7559 }
7560 }
7561 ],
7562 "source_info" : {
7563 "filename" : "include/int/int_transit.p4",
7564 "line" : 94,
7565 "column" : 8,
7566 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
7567 }
7568 }
7569 ]
7570 },
7571 {
7572 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
7573 "id" : 89,
7574 "runtime_data" : [],
7575 "primitives" : [
7576 {
7577 "op" : "add_header",
7578 "parameters" : [
7579 {
7580 "type" : "header",
7581 "value" : "int_hop_latency"
7582 }
7583 ],
7584 "source_info" : {
7585 "filename" : "include/int/int_transit.p4",
7586 "line" : 51,
7587 "column" : 8,
7588 "source_fragment" : "hdr.int_hop_latency.setValid()"
7589 }
7590 },
7591 {
7592 "op" : "assign",
7593 "parameters" : [
7594 {
7595 "type" : "field",
7596 "value" : ["int_hop_latency", "hop_latency"]
7597 },
7598 {
7599 "type" : "field",
7600 "value" : ["standard_metadata", "deq_timedelta"]
7601 }
7602 ],
7603 "source_info" : {
7604 "filename" : "include/int/int_transit.p4",
7605 "line" : 52,
7606 "column" : 8,
7607 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7608 }
7609 },
7610 {
7611 "op" : "add_header",
7612 "parameters" : [
7613 {
7614 "type" : "header",
7615 "value" : "int_switch_id"
7616 }
7617 ],
7618 "source_info" : {
7619 "filename" : "include/int/int_transit.p4",
7620 "line" : 40,
7621 "column" : 8,
7622 "source_fragment" : "hdr.int_switch_id.setValid()"
7623 }
7624 },
7625 {
7626 "op" : "assign",
7627 "parameters" : [
7628 {
7629 "type" : "field",
7630 "value" : ["int_switch_id", "switch_id"]
7631 },
7632 {
7633 "type" : "field",
7634 "value" : ["userMetadata.int_meta", "switch_id"]
7635 }
7636 ],
7637 "source_info" : {
7638 "filename" : "include/int/int_transit.p4",
7639 "line" : 41,
7640 "column" : 8,
7641 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7642 }
7643 },
7644 {
7645 "op" : "assign",
7646 "parameters" : [
7647 {
7648 "type" : "field",
7649 "value" : ["userMetadata.int_meta", "new_words"]
7650 },
7651 {
7652 "type" : "expression",
7653 "value" : {
7654 "type" : "expression",
7655 "value" : {
7656 "op" : "&",
7657 "left" : {
7658 "type" : "expression",
7659 "value" : {
7660 "op" : "+",
7661 "left" : {
7662 "type" : "field",
7663 "value" : ["userMetadata.int_meta", "new_words"]
7664 },
7665 "right" : {
7666 "type" : "hexstr",
7667 "value" : "0x02"
7668 }
7669 }
7670 },
7671 "right" : {
7672 "type" : "hexstr",
7673 "value" : "0xff"
7674 }
7675 }
7676 }
7677 }
7678 ],
7679 "source_info" : {
7680 "filename" : "include/int/int_transit.p4",
7681 "line" : 93,
7682 "column" : 8,
7683 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
7684 }
7685 },
7686 {
7687 "op" : "assign",
7688 "parameters" : [
7689 {
7690 "type" : "field",
7691 "value" : ["userMetadata.int_meta", "new_bytes"]
7692 },
7693 {
7694 "type" : "expression",
7695 "value" : {
7696 "type" : "expression",
7697 "value" : {
7698 "op" : "&",
7699 "left" : {
7700 "type" : "expression",
7701 "value" : {
7702 "op" : "+",
7703 "left" : {
7704 "type" : "field",
7705 "value" : ["userMetadata.int_meta", "new_bytes"]
7706 },
7707 "right" : {
7708 "type" : "hexstr",
7709 "value" : "0x0008"
7710 }
7711 }
7712 },
7713 "right" : {
7714 "type" : "hexstr",
7715 "value" : "0xffff"
7716 }
7717 }
7718 }
7719 }
7720 ],
7721 "source_info" : {
7722 "filename" : "include/int/int_transit.p4",
7723 "line" : 94,
7724 "column" : 8,
7725 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
7726 }
7727 }
7728 ]
7729 },
7730 {
7731 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
7732 "id" : 90,
7733 "runtime_data" : [],
7734 "primitives" : [
7735 {
7736 "op" : "add_header",
7737 "parameters" : [
7738 {
7739 "type" : "header",
7740 "value" : "int_q_occupancy"
7741 }
7742 ],
7743 "source_info" : {
7744 "filename" : "include/int/int_transit.p4",
7745 "line" : 56,
7746 "column" : 8,
7747 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7748 }
7749 },
7750 {
7751 "op" : "assign",
7752 "parameters" : [
7753 {
7754 "type" : "field",
7755 "value" : ["int_q_occupancy", "q_id"]
7756 },
7757 {
7758 "type" : "hexstr",
7759 "value" : "0x00"
7760 }
7761 ],
7762 "source_info" : {
7763 "filename" : "include/int/int_transit.p4",
7764 "line" : 58,
7765 "column" : 8,
7766 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7767 }
7768 },
7769 {
7770 "op" : "assign",
7771 "parameters" : [
7772 {
7773 "type" : "field",
7774 "value" : ["int_q_occupancy", "q_occupancy"]
7775 },
7776 {
7777 "type" : "expression",
7778 "value" : {
7779 "type" : "expression",
7780 "value" : {
7781 "op" : "&",
7782 "left" : {
7783 "type" : "field",
7784 "value" : ["standard_metadata", "deq_qdepth"]
7785 },
7786 "right" : {
7787 "type" : "hexstr",
7788 "value" : "0xffffff"
7789 }
7790 }
7791 }
7792 }
7793 ],
7794 "source_info" : {
7795 "filename" : "include/int/int_transit.p4",
7796 "line" : 59,
7797 "column" : 8,
7798 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7799 }
7800 },
7801 {
7802 "op" : "add_header",
7803 "parameters" : [
7804 {
7805 "type" : "header",
7806 "value" : "int_hop_latency"
7807 }
7808 ],
7809 "source_info" : {
7810 "filename" : "include/int/int_transit.p4",
7811 "line" : 51,
7812 "column" : 8,
7813 "source_fragment" : "hdr.int_hop_latency.setValid()"
7814 }
7815 },
7816 {
7817 "op" : "assign",
7818 "parameters" : [
7819 {
7820 "type" : "field",
7821 "value" : ["int_hop_latency", "hop_latency"]
7822 },
7823 {
7824 "type" : "field",
7825 "value" : ["standard_metadata", "deq_timedelta"]
7826 }
7827 ],
7828 "source_info" : {
7829 "filename" : "include/int/int_transit.p4",
7830 "line" : 52,
7831 "column" : 8,
7832 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7833 }
7834 },
7835 {
7836 "op" : "add_header",
7837 "parameters" : [
7838 {
7839 "type" : "header",
7840 "value" : "int_switch_id"
7841 }
7842 ],
7843 "source_info" : {
7844 "filename" : "include/int/int_transit.p4",
7845 "line" : 40,
7846 "column" : 8,
7847 "source_fragment" : "hdr.int_switch_id.setValid()"
7848 }
7849 },
7850 {
7851 "op" : "assign",
7852 "parameters" : [
7853 {
7854 "type" : "field",
7855 "value" : ["int_switch_id", "switch_id"]
7856 },
7857 {
7858 "type" : "field",
7859 "value" : ["userMetadata.int_meta", "switch_id"]
7860 }
7861 ],
7862 "source_info" : {
7863 "filename" : "include/int/int_transit.p4",
7864 "line" : 41,
7865 "column" : 8,
7866 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7867 }
7868 },
7869 {
7870 "op" : "assign",
7871 "parameters" : [
7872 {
7873 "type" : "field",
7874 "value" : ["userMetadata.int_meta", "new_words"]
7875 },
7876 {
7877 "type" : "expression",
7878 "value" : {
7879 "type" : "expression",
7880 "value" : {
7881 "op" : "&",
7882 "left" : {
7883 "type" : "expression",
7884 "value" : {
7885 "op" : "+",
7886 "left" : {
7887 "type" : "field",
7888 "value" : ["userMetadata.int_meta", "new_words"]
7889 },
7890 "right" : {
7891 "type" : "hexstr",
7892 "value" : "0x03"
7893 }
7894 }
7895 },
7896 "right" : {
7897 "type" : "hexstr",
7898 "value" : "0xff"
7899 }
7900 }
7901 }
7902 }
7903 ],
7904 "source_info" : {
7905 "filename" : "include/int/int_transit.p4",
7906 "line" : 98,
7907 "column" : 8,
7908 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
7909 }
7910 },
7911 {
7912 "op" : "assign",
7913 "parameters" : [
7914 {
7915 "type" : "field",
7916 "value" : ["userMetadata.int_meta", "new_bytes"]
7917 },
7918 {
7919 "type" : "expression",
7920 "value" : {
7921 "type" : "expression",
7922 "value" : {
7923 "op" : "&",
7924 "left" : {
7925 "type" : "expression",
7926 "value" : {
7927 "op" : "+",
7928 "left" : {
7929 "type" : "field",
7930 "value" : ["userMetadata.int_meta", "new_bytes"]
7931 },
7932 "right" : {
7933 "type" : "hexstr",
7934 "value" : "0x000c"
7935 }
7936 }
7937 },
7938 "right" : {
7939 "type" : "hexstr",
7940 "value" : "0xffff"
7941 }
7942 }
7943 }
7944 }
7945 ],
7946 "source_info" : {
7947 "filename" : "include/int/int_transit.p4",
7948 "line" : 99,
7949 "column" : 8,
7950 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
7951 }
7952 }
7953 ]
7954 },
7955 {
7956 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
7957 "id" : 91,
7958 "runtime_data" : [],
7959 "primitives" : [
7960 {
7961 "op" : "add_header",
7962 "parameters" : [
7963 {
7964 "type" : "header",
7965 "value" : "int_port_ids"
7966 }
7967 ],
7968 "source_info" : {
7969 "filename" : "include/int/int_transit.p4",
7970 "line" : 45,
7971 "column" : 8,
7972 "source_fragment" : "hdr.int_port_ids.setValid()"
7973 }
7974 },
7975 {
7976 "op" : "assign",
7977 "parameters" : [
7978 {
7979 "type" : "field",
7980 "value" : ["int_port_ids", "ingress_port_id"]
7981 },
7982 {
7983 "type" : "expression",
7984 "value" : {
7985 "type" : "expression",
7986 "value" : {
7987 "op" : "&",
7988 "left" : {
7989 "type" : "field",
7990 "value" : ["standard_metadata", "ingress_port"]
7991 },
7992 "right" : {
7993 "type" : "hexstr",
7994 "value" : "0xffff"
7995 }
7996 }
7997 }
7998 }
7999 ],
8000 "source_info" : {
8001 "filename" : "include/int/int_transit.p4",
8002 "line" : 46,
8003 "column" : 8,
8004 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
8005 }
8006 },
8007 {
8008 "op" : "assign",
8009 "parameters" : [
8010 {
8011 "type" : "field",
8012 "value" : ["int_port_ids", "egress_port_id"]
8013 },
8014 {
8015 "type" : "expression",
8016 "value" : {
8017 "type" : "expression",
8018 "value" : {
8019 "op" : "&",
8020 "left" : {
8021 "type" : "field",
8022 "value" : ["standard_metadata", "egress_port"]
8023 },
8024 "right" : {
8025 "type" : "hexstr",
8026 "value" : "0xffff"
8027 }
8028 }
8029 }
8030 }
8031 ],
8032 "source_info" : {
8033 "filename" : "include/int/int_transit.p4",
8034 "line" : 47,
8035 "column" : 8,
8036 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
8037 }
8038 },
8039 {
8040 "op" : "add_header",
8041 "parameters" : [
8042 {
8043 "type" : "header",
8044 "value" : "int_switch_id"
8045 }
8046 ],
8047 "source_info" : {
8048 "filename" : "include/int/int_transit.p4",
8049 "line" : 40,
8050 "column" : 8,
8051 "source_fragment" : "hdr.int_switch_id.setValid()"
8052 }
8053 },
8054 {
8055 "op" : "assign",
8056 "parameters" : [
8057 {
8058 "type" : "field",
8059 "value" : ["int_switch_id", "switch_id"]
8060 },
8061 {
8062 "type" : "field",
8063 "value" : ["userMetadata.int_meta", "switch_id"]
8064 }
8065 ],
8066 "source_info" : {
8067 "filename" : "include/int/int_transit.p4",
8068 "line" : 41,
8069 "column" : 8,
8070 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
8071 }
8072 },
8073 {
8074 "op" : "assign",
8075 "parameters" : [
8076 {
8077 "type" : "field",
8078 "value" : ["userMetadata.int_meta", "new_words"]
8079 },
8080 {
8081 "type" : "expression",
8082 "value" : {
8083 "type" : "expression",
8084 "value" : {
8085 "op" : "&",
8086 "left" : {
8087 "type" : "expression",
8088 "value" : {
8089 "op" : "+",
8090 "left" : {
8091 "type" : "field",
8092 "value" : ["userMetadata.int_meta", "new_words"]
8093 },
8094 "right" : {
8095 "type" : "hexstr",
8096 "value" : "0x02"
8097 }
8098 }
8099 },
8100 "right" : {
8101 "type" : "hexstr",
8102 "value" : "0xff"
8103 }
8104 }
8105 }
8106 }
8107 ],
8108 "source_info" : {
8109 "filename" : "include/int/int_transit.p4",
8110 "line" : 93,
8111 "column" : 8,
8112 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
8113 }
8114 },
8115 {
8116 "op" : "assign",
8117 "parameters" : [
8118 {
8119 "type" : "field",
8120 "value" : ["userMetadata.int_meta", "new_bytes"]
8121 },
8122 {
8123 "type" : "expression",
8124 "value" : {
8125 "type" : "expression",
8126 "value" : {
8127 "op" : "&",
8128 "left" : {
8129 "type" : "expression",
8130 "value" : {
8131 "op" : "+",
8132 "left" : {
8133 "type" : "field",
8134 "value" : ["userMetadata.int_meta", "new_bytes"]
8135 },
8136 "right" : {
8137 "type" : "hexstr",
8138 "value" : "0x0008"
8139 }
8140 }
8141 },
8142 "right" : {
8143 "type" : "hexstr",
8144 "value" : "0xffff"
8145 }
8146 }
8147 }
8148 }
8149 ],
8150 "source_info" : {
8151 "filename" : "include/int/int_transit.p4",
8152 "line" : 94,
8153 "column" : 8,
8154 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
8155 }
8156 }
8157 ]
8158 },
8159 {
8160 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
8161 "id" : 92,
8162 "runtime_data" : [],
8163 "primitives" : [
8164 {
8165 "op" : "add_header",
8166 "parameters" : [
8167 {
8168 "type" : "header",
8169 "value" : "int_q_occupancy"
8170 }
8171 ],
8172 "source_info" : {
8173 "filename" : "include/int/int_transit.p4",
8174 "line" : 56,
8175 "column" : 8,
8176 "source_fragment" : "hdr.int_q_occupancy.setValid()"
8177 }
8178 },
8179 {
8180 "op" : "assign",
8181 "parameters" : [
8182 {
8183 "type" : "field",
8184 "value" : ["int_q_occupancy", "q_id"]
8185 },
8186 {
8187 "type" : "hexstr",
8188 "value" : "0x00"
8189 }
8190 ],
8191 "source_info" : {
8192 "filename" : "include/int/int_transit.p4",
8193 "line" : 58,
8194 "column" : 8,
8195 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
8196 }
8197 },
8198 {
8199 "op" : "assign",
8200 "parameters" : [
8201 {
8202 "type" : "field",
8203 "value" : ["int_q_occupancy", "q_occupancy"]
8204 },
8205 {
8206 "type" : "expression",
8207 "value" : {
8208 "type" : "expression",
8209 "value" : {
8210 "op" : "&",
8211 "left" : {
8212 "type" : "field",
8213 "value" : ["standard_metadata", "deq_qdepth"]
8214 },
8215 "right" : {
8216 "type" : "hexstr",
8217 "value" : "0xffffff"
8218 }
8219 }
8220 }
8221 }
8222 ],
8223 "source_info" : {
8224 "filename" : "include/int/int_transit.p4",
8225 "line" : 59,
8226 "column" : 8,
8227 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
8228 }
8229 },
8230 {
8231 "op" : "add_header",
8232 "parameters" : [
8233 {
8234 "type" : "header",
8235 "value" : "int_port_ids"
8236 }
8237 ],
8238 "source_info" : {
8239 "filename" : "include/int/int_transit.p4",
8240 "line" : 45,
8241 "column" : 8,
8242 "source_fragment" : "hdr.int_port_ids.setValid()"
8243 }
8244 },
8245 {
8246 "op" : "assign",
8247 "parameters" : [
8248 {
8249 "type" : "field",
8250 "value" : ["int_port_ids", "ingress_port_id"]
8251 },
8252 {
8253 "type" : "expression",
8254 "value" : {
8255 "type" : "expression",
8256 "value" : {
8257 "op" : "&",
8258 "left" : {
8259 "type" : "field",
8260 "value" : ["standard_metadata", "ingress_port"]
8261 },
8262 "right" : {
8263 "type" : "hexstr",
8264 "value" : "0xffff"
8265 }
8266 }
8267 }
8268 }
8269 ],
8270 "source_info" : {
8271 "filename" : "include/int/int_transit.p4",
8272 "line" : 46,
8273 "column" : 8,
8274 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
8275 }
8276 },
8277 {
8278 "op" : "assign",
8279 "parameters" : [
8280 {
8281 "type" : "field",
8282 "value" : ["int_port_ids", "egress_port_id"]
8283 },
8284 {
8285 "type" : "expression",
8286 "value" : {
8287 "type" : "expression",
8288 "value" : {
8289 "op" : "&",
8290 "left" : {
8291 "type" : "field",
8292 "value" : ["standard_metadata", "egress_port"]
8293 },
8294 "right" : {
8295 "type" : "hexstr",
8296 "value" : "0xffff"
8297 }
8298 }
8299 }
8300 }
8301 ],
8302 "source_info" : {
8303 "filename" : "include/int/int_transit.p4",
8304 "line" : 47,
8305 "column" : 8,
8306 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
8307 }
8308 },
8309 {
8310 "op" : "add_header",
8311 "parameters" : [
8312 {
8313 "type" : "header",
8314 "value" : "int_switch_id"
8315 }
8316 ],
8317 "source_info" : {
8318 "filename" : "include/int/int_transit.p4",
8319 "line" : 40,
8320 "column" : 8,
8321 "source_fragment" : "hdr.int_switch_id.setValid()"
8322 }
8323 },
8324 {
8325 "op" : "assign",
8326 "parameters" : [
8327 {
8328 "type" : "field",
8329 "value" : ["int_switch_id", "switch_id"]
8330 },
8331 {
8332 "type" : "field",
8333 "value" : ["userMetadata.int_meta", "switch_id"]
8334 }
8335 ],
8336 "source_info" : {
8337 "filename" : "include/int/int_transit.p4",
8338 "line" : 41,
8339 "column" : 8,
8340 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
8341 }
8342 },
8343 {
8344 "op" : "assign",
8345 "parameters" : [
8346 {
8347 "type" : "field",
8348 "value" : ["userMetadata.int_meta", "new_words"]
8349 },
8350 {
8351 "type" : "expression",
8352 "value" : {
8353 "type" : "expression",
8354 "value" : {
8355 "op" : "&",
8356 "left" : {
8357 "type" : "expression",
8358 "value" : {
8359 "op" : "+",
8360 "left" : {
8361 "type" : "field",
8362 "value" : ["userMetadata.int_meta", "new_words"]
8363 },
8364 "right" : {
8365 "type" : "hexstr",
8366 "value" : "0x03"
8367 }
8368 }
8369 },
8370 "right" : {
8371 "type" : "hexstr",
8372 "value" : "0xff"
8373 }
8374 }
8375 }
8376 }
8377 ],
8378 "source_info" : {
8379 "filename" : "include/int/int_transit.p4",
8380 "line" : 98,
8381 "column" : 8,
8382 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
8383 }
8384 },
8385 {
8386 "op" : "assign",
8387 "parameters" : [
8388 {
8389 "type" : "field",
8390 "value" : ["userMetadata.int_meta", "new_bytes"]
8391 },
8392 {
8393 "type" : "expression",
8394 "value" : {
8395 "type" : "expression",
8396 "value" : {
8397 "op" : "&",
8398 "left" : {
8399 "type" : "expression",
8400 "value" : {
8401 "op" : "+",
8402 "left" : {
8403 "type" : "field",
8404 "value" : ["userMetadata.int_meta", "new_bytes"]
8405 },
8406 "right" : {
8407 "type" : "hexstr",
8408 "value" : "0x000c"
8409 }
8410 }
8411 },
8412 "right" : {
8413 "type" : "hexstr",
8414 "value" : "0xffff"
8415 }
8416 }
8417 }
8418 }
8419 ],
8420 "source_info" : {
8421 "filename" : "include/int/int_transit.p4",
8422 "line" : 99,
8423 "column" : 8,
8424 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
8425 }
8426 }
8427 ]
8428 },
8429 {
8430 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
8431 "id" : 93,
8432 "runtime_data" : [],
8433 "primitives" : [
8434 {
8435 "op" : "add_header",
8436 "parameters" : [
8437 {
8438 "type" : "header",
8439 "value" : "int_hop_latency"
8440 }
8441 ],
8442 "source_info" : {
8443 "filename" : "include/int/int_transit.p4",
8444 "line" : 51,
8445 "column" : 8,
8446 "source_fragment" : "hdr.int_hop_latency.setValid()"
8447 }
8448 },
8449 {
8450 "op" : "assign",
8451 "parameters" : [
8452 {
8453 "type" : "field",
8454 "value" : ["int_hop_latency", "hop_latency"]
8455 },
8456 {
8457 "type" : "field",
8458 "value" : ["standard_metadata", "deq_timedelta"]
8459 }
8460 ],
8461 "source_info" : {
8462 "filename" : "include/int/int_transit.p4",
8463 "line" : 52,
8464 "column" : 8,
8465 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
8466 }
8467 },
8468 {
8469 "op" : "add_header",
8470 "parameters" : [
8471 {
8472 "type" : "header",
8473 "value" : "int_port_ids"
8474 }
8475 ],
8476 "source_info" : {
8477 "filename" : "include/int/int_transit.p4",
8478 "line" : 45,
8479 "column" : 8,
8480 "source_fragment" : "hdr.int_port_ids.setValid()"
8481 }
8482 },
8483 {
8484 "op" : "assign",
8485 "parameters" : [
8486 {
8487 "type" : "field",
8488 "value" : ["int_port_ids", "ingress_port_id"]
8489 },
8490 {
8491 "type" : "expression",
8492 "value" : {
8493 "type" : "expression",
8494 "value" : {
8495 "op" : "&",
8496 "left" : {
8497 "type" : "field",
8498 "value" : ["standard_metadata", "ingress_port"]
8499 },
8500 "right" : {
8501 "type" : "hexstr",
8502 "value" : "0xffff"
8503 }
8504 }
8505 }
8506 }
8507 ],
8508 "source_info" : {
8509 "filename" : "include/int/int_transit.p4",
8510 "line" : 46,
8511 "column" : 8,
8512 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
8513 }
8514 },
8515 {
8516 "op" : "assign",
8517 "parameters" : [
8518 {
8519 "type" : "field",
8520 "value" : ["int_port_ids", "egress_port_id"]
8521 },
8522 {
8523 "type" : "expression",
8524 "value" : {
8525 "type" : "expression",
8526 "value" : {
8527 "op" : "&",
8528 "left" : {
8529 "type" : "field",
8530 "value" : ["standard_metadata", "egress_port"]
8531 },
8532 "right" : {
8533 "type" : "hexstr",
8534 "value" : "0xffff"
8535 }
8536 }
8537 }
8538 }
8539 ],
8540 "source_info" : {
8541 "filename" : "include/int/int_transit.p4",
8542 "line" : 47,
8543 "column" : 8,
8544 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
8545 }
8546 },
8547 {
8548 "op" : "add_header",
8549 "parameters" : [
8550 {
8551 "type" : "header",
8552 "value" : "int_switch_id"
8553 }
8554 ],
8555 "source_info" : {
8556 "filename" : "include/int/int_transit.p4",
8557 "line" : 40,
8558 "column" : 8,
8559 "source_fragment" : "hdr.int_switch_id.setValid()"
8560 }
8561 },
8562 {
8563 "op" : "assign",
8564 "parameters" : [
8565 {
8566 "type" : "field",
8567 "value" : ["int_switch_id", "switch_id"]
8568 },
8569 {
8570 "type" : "field",
8571 "value" : ["userMetadata.int_meta", "switch_id"]
8572 }
8573 ],
8574 "source_info" : {
8575 "filename" : "include/int/int_transit.p4",
8576 "line" : 41,
8577 "column" : 8,
8578 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
8579 }
8580 },
8581 {
8582 "op" : "assign",
8583 "parameters" : [
8584 {
8585 "type" : "field",
8586 "value" : ["userMetadata.int_meta", "new_words"]
8587 },
8588 {
8589 "type" : "expression",
8590 "value" : {
8591 "type" : "expression",
8592 "value" : {
8593 "op" : "&",
8594 "left" : {
8595 "type" : "expression",
8596 "value" : {
8597 "op" : "+",
8598 "left" : {
8599 "type" : "field",
8600 "value" : ["userMetadata.int_meta", "new_words"]
8601 },
8602 "right" : {
8603 "type" : "hexstr",
8604 "value" : "0x03"
8605 }
8606 }
8607 },
8608 "right" : {
8609 "type" : "hexstr",
8610 "value" : "0xff"
8611 }
8612 }
8613 }
8614 }
8615 ],
8616 "source_info" : {
8617 "filename" : "include/int/int_transit.p4",
8618 "line" : 98,
8619 "column" : 8,
8620 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
8621 }
8622 },
8623 {
8624 "op" : "assign",
8625 "parameters" : [
8626 {
8627 "type" : "field",
8628 "value" : ["userMetadata.int_meta", "new_bytes"]
8629 },
8630 {
8631 "type" : "expression",
8632 "value" : {
8633 "type" : "expression",
8634 "value" : {
8635 "op" : "&",
8636 "left" : {
8637 "type" : "expression",
8638 "value" : {
8639 "op" : "+",
8640 "left" : {
8641 "type" : "field",
8642 "value" : ["userMetadata.int_meta", "new_bytes"]
8643 },
8644 "right" : {
8645 "type" : "hexstr",
8646 "value" : "0x000c"
8647 }
8648 }
8649 },
8650 "right" : {
8651 "type" : "hexstr",
8652 "value" : "0xffff"
8653 }
8654 }
8655 }
8656 }
8657 ],
8658 "source_info" : {
8659 "filename" : "include/int/int_transit.p4",
8660 "line" : 99,
8661 "column" : 8,
8662 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
8663 }
8664 }
8665 ]
8666 },
8667 {
8668 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
8669 "id" : 94,
8670 "runtime_data" : [],
8671 "primitives" : [
8672 {
8673 "op" : "add_header",
8674 "parameters" : [
8675 {
8676 "type" : "header",
8677 "value" : "int_q_occupancy"
8678 }
8679 ],
8680 "source_info" : {
8681 "filename" : "include/int/int_transit.p4",
8682 "line" : 56,
8683 "column" : 8,
8684 "source_fragment" : "hdr.int_q_occupancy.setValid()"
8685 }
8686 },
8687 {
8688 "op" : "assign",
8689 "parameters" : [
8690 {
8691 "type" : "field",
8692 "value" : ["int_q_occupancy", "q_id"]
8693 },
8694 {
8695 "type" : "hexstr",
8696 "value" : "0x00"
8697 }
8698 ],
8699 "source_info" : {
8700 "filename" : "include/int/int_transit.p4",
8701 "line" : 58,
8702 "column" : 8,
8703 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
8704 }
8705 },
8706 {
8707 "op" : "assign",
8708 "parameters" : [
8709 {
8710 "type" : "field",
8711 "value" : ["int_q_occupancy", "q_occupancy"]
8712 },
8713 {
8714 "type" : "expression",
8715 "value" : {
8716 "type" : "expression",
8717 "value" : {
8718 "op" : "&",
8719 "left" : {
8720 "type" : "field",
8721 "value" : ["standard_metadata", "deq_qdepth"]
8722 },
8723 "right" : {
8724 "type" : "hexstr",
8725 "value" : "0xffffff"
8726 }
8727 }
8728 }
8729 }
8730 ],
8731 "source_info" : {
8732 "filename" : "include/int/int_transit.p4",
8733 "line" : 59,
8734 "column" : 8,
8735 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
8736 }
8737 },
8738 {
8739 "op" : "add_header",
8740 "parameters" : [
8741 {
8742 "type" : "header",
8743 "value" : "int_hop_latency"
8744 }
8745 ],
8746 "source_info" : {
8747 "filename" : "include/int/int_transit.p4",
8748 "line" : 51,
8749 "column" : 8,
8750 "source_fragment" : "hdr.int_hop_latency.setValid()"
8751 }
8752 },
8753 {
8754 "op" : "assign",
8755 "parameters" : [
8756 {
8757 "type" : "field",
8758 "value" : ["int_hop_latency", "hop_latency"]
8759 },
8760 {
8761 "type" : "field",
8762 "value" : ["standard_metadata", "deq_timedelta"]
8763 }
8764 ],
8765 "source_info" : {
8766 "filename" : "include/int/int_transit.p4",
8767 "line" : 52,
8768 "column" : 8,
8769 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
8770 }
8771 },
8772 {
8773 "op" : "add_header",
8774 "parameters" : [
8775 {
8776 "type" : "header",
8777 "value" : "int_port_ids"
8778 }
8779 ],
8780 "source_info" : {
8781 "filename" : "include/int/int_transit.p4",
8782 "line" : 45,
8783 "column" : 8,
8784 "source_fragment" : "hdr.int_port_ids.setValid()"
8785 }
8786 },
8787 {
8788 "op" : "assign",
8789 "parameters" : [
8790 {
8791 "type" : "field",
8792 "value" : ["int_port_ids", "ingress_port_id"]
8793 },
8794 {
8795 "type" : "expression",
8796 "value" : {
8797 "type" : "expression",
8798 "value" : {
8799 "op" : "&",
8800 "left" : {
8801 "type" : "field",
8802 "value" : ["standard_metadata", "ingress_port"]
8803 },
8804 "right" : {
8805 "type" : "hexstr",
8806 "value" : "0xffff"
8807 }
8808 }
8809 }
8810 }
8811 ],
8812 "source_info" : {
8813 "filename" : "include/int/int_transit.p4",
8814 "line" : 46,
8815 "column" : 8,
8816 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
8817 }
8818 },
8819 {
8820 "op" : "assign",
8821 "parameters" : [
8822 {
8823 "type" : "field",
8824 "value" : ["int_port_ids", "egress_port_id"]
8825 },
8826 {
8827 "type" : "expression",
8828 "value" : {
8829 "type" : "expression",
8830 "value" : {
8831 "op" : "&",
8832 "left" : {
8833 "type" : "field",
8834 "value" : ["standard_metadata", "egress_port"]
8835 },
8836 "right" : {
8837 "type" : "hexstr",
8838 "value" : "0xffff"
8839 }
8840 }
8841 }
8842 }
8843 ],
8844 "source_info" : {
8845 "filename" : "include/int/int_transit.p4",
8846 "line" : 47,
8847 "column" : 8,
8848 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
8849 }
8850 },
8851 {
8852 "op" : "add_header",
8853 "parameters" : [
8854 {
8855 "type" : "header",
8856 "value" : "int_switch_id"
8857 }
8858 ],
8859 "source_info" : {
8860 "filename" : "include/int/int_transit.p4",
8861 "line" : 40,
8862 "column" : 8,
8863 "source_fragment" : "hdr.int_switch_id.setValid()"
8864 }
8865 },
8866 {
8867 "op" : "assign",
8868 "parameters" : [
8869 {
8870 "type" : "field",
8871 "value" : ["int_switch_id", "switch_id"]
8872 },
8873 {
8874 "type" : "field",
8875 "value" : ["userMetadata.int_meta", "switch_id"]
8876 }
8877 ],
8878 "source_info" : {
8879 "filename" : "include/int/int_transit.p4",
8880 "line" : 41,
8881 "column" : 8,
8882 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
8883 }
8884 },
8885 {
8886 "op" : "assign",
8887 "parameters" : [
8888 {
8889 "type" : "field",
8890 "value" : ["userMetadata.int_meta", "new_words"]
8891 },
8892 {
8893 "type" : "expression",
8894 "value" : {
8895 "type" : "expression",
8896 "value" : {
8897 "op" : "&",
8898 "left" : {
8899 "type" : "expression",
8900 "value" : {
8901 "op" : "+",
8902 "left" : {
8903 "type" : "field",
8904 "value" : ["userMetadata.int_meta", "new_words"]
8905 },
8906 "right" : {
8907 "type" : "hexstr",
8908 "value" : "0x04"
8909 }
8910 }
8911 },
8912 "right" : {
8913 "type" : "hexstr",
8914 "value" : "0xff"
8915 }
8916 }
8917 }
8918 }
8919 ],
8920 "source_info" : {
8921 "filename" : "include/int/int_transit.p4",
8922 "line" : 103,
8923 "column" : 8,
8924 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
8925 }
8926 },
8927 {
8928 "op" : "assign",
8929 "parameters" : [
8930 {
8931 "type" : "field",
8932 "value" : ["userMetadata.int_meta", "new_bytes"]
8933 },
8934 {
8935 "type" : "expression",
8936 "value" : {
8937 "type" : "expression",
8938 "value" : {
8939 "op" : "&",
8940 "left" : {
8941 "type" : "expression",
8942 "value" : {
8943 "op" : "+",
8944 "left" : {
8945 "type" : "field",
8946 "value" : ["userMetadata.int_meta", "new_bytes"]
8947 },
8948 "right" : {
8949 "type" : "hexstr",
8950 "value" : "0x0010"
8951 }
8952 }
8953 },
8954 "right" : {
8955 "type" : "hexstr",
8956 "value" : "0xffff"
8957 }
8958 }
8959 }
8960 }
8961 ],
8962 "source_info" : {
8963 "filename" : "include/int/int_transit.p4",
8964 "line" : 104,
8965 "column" : 8,
8966 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
8967 }
8968 }
8969 ]
8970 },
8971 {
8972 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
8973 "id" : 95,
8974 "runtime_data" : [],
8975 "primitives" : []
8976 },
8977 {
8978 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
8979 "id" : 96,
8980 "runtime_data" : [],
8981 "primitives" : [
8982 {
8983 "op" : "add_header",
8984 "parameters" : [
8985 {
8986 "type" : "header",
8987 "value" : "int_egress_tx_util"
8988 }
8989 ],
8990 "source_info" : {
8991 "filename" : "include/int/int_transit.p4",
8992 "line" : 80,
8993 "column" : 8,
8994 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8995 }
8996 },
8997 {
8998 "op" : "assign",
8999 "parameters" : [
9000 {
9001 "type" : "field",
9002 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9003 },
9004 {
9005 "type" : "hexstr",
9006 "value" : "0x00000000"
9007 }
9008 ],
9009 "source_info" : {
9010 "filename" : "include/int/int_transit.p4",
9011 "line" : 82,
9012 "column" : 8,
9013 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9014 }
9015 },
9016 {
9017 "op" : "assign",
9018 "parameters" : [
9019 {
9020 "type" : "field",
9021 "value" : ["userMetadata.int_meta", "new_words"]
9022 },
9023 {
9024 "type" : "expression",
9025 "value" : {
9026 "type" : "expression",
9027 "value" : {
9028 "op" : "&",
9029 "left" : {
9030 "type" : "expression",
9031 "value" : {
9032 "op" : "+",
9033 "left" : {
9034 "type" : "field",
9035 "value" : ["userMetadata.int_meta", "new_words"]
9036 },
9037 "right" : {
9038 "type" : "hexstr",
9039 "value" : "0x01"
9040 }
9041 }
9042 },
9043 "right" : {
9044 "type" : "hexstr",
9045 "value" : "0xff"
9046 }
9047 }
9048 }
9049 }
9050 ],
9051 "source_info" : {
9052 "filename" : "include/int/int_transit.p4",
9053 "line" : 88,
9054 "column" : 8,
9055 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
9056 }
9057 },
9058 {
9059 "op" : "assign",
9060 "parameters" : [
9061 {
9062 "type" : "field",
9063 "value" : ["userMetadata.int_meta", "new_bytes"]
9064 },
9065 {
9066 "type" : "expression",
9067 "value" : {
9068 "type" : "expression",
9069 "value" : {
9070 "op" : "&",
9071 "left" : {
9072 "type" : "expression",
9073 "value" : {
9074 "op" : "+",
9075 "left" : {
9076 "type" : "field",
9077 "value" : ["userMetadata.int_meta", "new_bytes"]
9078 },
9079 "right" : {
9080 "type" : "hexstr",
9081 "value" : "0x0004"
9082 }
9083 }
9084 },
9085 "right" : {
9086 "type" : "hexstr",
9087 "value" : "0xffff"
9088 }
9089 }
9090 }
9091 }
9092 ],
9093 "source_info" : {
9094 "filename" : "include/int/int_transit.p4",
9095 "line" : 89,
9096 "column" : 8,
9097 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
9098 }
9099 }
9100 ]
9101 },
9102 {
9103 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
9104 "id" : 97,
9105 "runtime_data" : [],
9106 "primitives" : [
9107 {
9108 "op" : "add_header",
9109 "parameters" : [
9110 {
9111 "type" : "header",
9112 "value" : "int_q_congestion"
9113 }
9114 ],
9115 "source_info" : {
9116 "filename" : "include/int/int_transit.p4",
9117 "line" : 73,
9118 "column" : 8,
9119 "source_fragment" : "hdr.int_q_congestion.setValid()"
9120 }
9121 },
9122 {
9123 "op" : "assign",
9124 "parameters" : [
9125 {
9126 "type" : "field",
9127 "value" : ["int_q_congestion", "q_id"]
9128 },
9129 {
9130 "type" : "hexstr",
9131 "value" : "0x00"
9132 }
9133 ],
9134 "source_info" : {
9135 "filename" : "include/int/int_transit.p4",
9136 "line" : 75,
9137 "column" : 8,
9138 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9139 }
9140 },
9141 {
9142 "op" : "assign",
9143 "parameters" : [
9144 {
9145 "type" : "field",
9146 "value" : ["int_q_congestion", "q_congestion"]
9147 },
9148 {
9149 "type" : "hexstr",
9150 "value" : "0x000000"
9151 }
9152 ],
9153 "source_info" : {
9154 "filename" : "include/int/int_transit.p4",
9155 "line" : 76,
9156 "column" : 8,
9157 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9158 }
9159 },
9160 {
9161 "op" : "assign",
9162 "parameters" : [
9163 {
9164 "type" : "field",
9165 "value" : ["userMetadata.int_meta", "new_words"]
9166 },
9167 {
9168 "type" : "expression",
9169 "value" : {
9170 "type" : "expression",
9171 "value" : {
9172 "op" : "&",
9173 "left" : {
9174 "type" : "expression",
9175 "value" : {
9176 "op" : "+",
9177 "left" : {
9178 "type" : "field",
9179 "value" : ["userMetadata.int_meta", "new_words"]
9180 },
9181 "right" : {
9182 "type" : "hexstr",
9183 "value" : "0x01"
9184 }
9185 }
9186 },
9187 "right" : {
9188 "type" : "hexstr",
9189 "value" : "0xff"
9190 }
9191 }
9192 }
9193 }
9194 ],
9195 "source_info" : {
9196 "filename" : "include/int/int_transit.p4",
9197 "line" : 88,
9198 "column" : 8,
9199 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
9200 }
9201 },
9202 {
9203 "op" : "assign",
9204 "parameters" : [
9205 {
9206 "type" : "field",
9207 "value" : ["userMetadata.int_meta", "new_bytes"]
9208 },
9209 {
9210 "type" : "expression",
9211 "value" : {
9212 "type" : "expression",
9213 "value" : {
9214 "op" : "&",
9215 "left" : {
9216 "type" : "expression",
9217 "value" : {
9218 "op" : "+",
9219 "left" : {
9220 "type" : "field",
9221 "value" : ["userMetadata.int_meta", "new_bytes"]
9222 },
9223 "right" : {
9224 "type" : "hexstr",
9225 "value" : "0x0004"
9226 }
9227 }
9228 },
9229 "right" : {
9230 "type" : "hexstr",
9231 "value" : "0xffff"
9232 }
9233 }
9234 }
9235 }
9236 ],
9237 "source_info" : {
9238 "filename" : "include/int/int_transit.p4",
9239 "line" : 89,
9240 "column" : 8,
9241 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
9242 }
9243 }
9244 ]
9245 },
9246 {
9247 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
9248 "id" : 98,
9249 "runtime_data" : [],
9250 "primitives" : [
9251 {
9252 "op" : "add_header",
9253 "parameters" : [
9254 {
9255 "type" : "header",
9256 "value" : "int_egress_tx_util"
9257 }
9258 ],
9259 "source_info" : {
9260 "filename" : "include/int/int_transit.p4",
9261 "line" : 80,
9262 "column" : 8,
9263 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9264 }
9265 },
9266 {
9267 "op" : "assign",
9268 "parameters" : [
9269 {
9270 "type" : "field",
9271 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9272 },
9273 {
9274 "type" : "hexstr",
9275 "value" : "0x00000000"
9276 }
9277 ],
9278 "source_info" : {
9279 "filename" : "include/int/int_transit.p4",
9280 "line" : 82,
9281 "column" : 8,
9282 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9283 }
9284 },
9285 {
9286 "op" : "add_header",
9287 "parameters" : [
9288 {
9289 "type" : "header",
9290 "value" : "int_q_congestion"
9291 }
9292 ],
9293 "source_info" : {
9294 "filename" : "include/int/int_transit.p4",
9295 "line" : 73,
9296 "column" : 8,
9297 "source_fragment" : "hdr.int_q_congestion.setValid()"
9298 }
9299 },
9300 {
9301 "op" : "assign",
9302 "parameters" : [
9303 {
9304 "type" : "field",
9305 "value" : ["int_q_congestion", "q_id"]
9306 },
9307 {
9308 "type" : "hexstr",
9309 "value" : "0x00"
9310 }
9311 ],
9312 "source_info" : {
9313 "filename" : "include/int/int_transit.p4",
9314 "line" : 75,
9315 "column" : 8,
9316 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9317 }
9318 },
9319 {
9320 "op" : "assign",
9321 "parameters" : [
9322 {
9323 "type" : "field",
9324 "value" : ["int_q_congestion", "q_congestion"]
9325 },
9326 {
9327 "type" : "hexstr",
9328 "value" : "0x000000"
9329 }
9330 ],
9331 "source_info" : {
9332 "filename" : "include/int/int_transit.p4",
9333 "line" : 76,
9334 "column" : 8,
9335 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9336 }
9337 },
9338 {
9339 "op" : "assign",
9340 "parameters" : [
9341 {
9342 "type" : "field",
9343 "value" : ["userMetadata.int_meta", "new_words"]
9344 },
9345 {
9346 "type" : "expression",
9347 "value" : {
9348 "type" : "expression",
9349 "value" : {
9350 "op" : "&",
9351 "left" : {
9352 "type" : "expression",
9353 "value" : {
9354 "op" : "+",
9355 "left" : {
9356 "type" : "field",
9357 "value" : ["userMetadata.int_meta", "new_words"]
9358 },
9359 "right" : {
9360 "type" : "hexstr",
9361 "value" : "0x02"
9362 }
9363 }
9364 },
9365 "right" : {
9366 "type" : "hexstr",
9367 "value" : "0xff"
9368 }
9369 }
9370 }
9371 }
9372 ],
9373 "source_info" : {
9374 "filename" : "include/int/int_transit.p4",
9375 "line" : 93,
9376 "column" : 8,
9377 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9378 }
9379 },
9380 {
9381 "op" : "assign",
9382 "parameters" : [
9383 {
9384 "type" : "field",
9385 "value" : ["userMetadata.int_meta", "new_bytes"]
9386 },
9387 {
9388 "type" : "expression",
9389 "value" : {
9390 "type" : "expression",
9391 "value" : {
9392 "op" : "&",
9393 "left" : {
9394 "type" : "expression",
9395 "value" : {
9396 "op" : "+",
9397 "left" : {
9398 "type" : "field",
9399 "value" : ["userMetadata.int_meta", "new_bytes"]
9400 },
9401 "right" : {
9402 "type" : "hexstr",
9403 "value" : "0x0008"
9404 }
9405 }
9406 },
9407 "right" : {
9408 "type" : "hexstr",
9409 "value" : "0xffff"
9410 }
9411 }
9412 }
9413 }
9414 ],
9415 "source_info" : {
9416 "filename" : "include/int/int_transit.p4",
9417 "line" : 94,
9418 "column" : 8,
9419 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9420 }
9421 }
9422 ]
9423 },
9424 {
9425 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
9426 "id" : 99,
9427 "runtime_data" : [],
9428 "primitives" : [
9429 {
9430 "op" : "add_header",
9431 "parameters" : [
9432 {
9433 "type" : "header",
9434 "value" : "int_egress_tstamp"
9435 }
9436 ],
9437 "source_info" : {
9438 "filename" : "include/int/int_transit.p4",
9439 "line" : 68,
9440 "column" : 8,
9441 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9442 }
9443 },
9444 {
9445 "op" : "assign",
9446 "parameters" : [
9447 {
9448 "type" : "field",
9449 "value" : ["int_egress_tstamp", "egress_tstamp"]
9450 },
9451 {
9452 "type" : "expression",
9453 "value" : {
9454 "type" : "expression",
9455 "value" : {
9456 "op" : "&",
9457 "left" : {
9458 "type" : "expression",
9459 "value" : {
9460 "op" : "+",
9461 "left" : {
9462 "type" : "field",
9463 "value" : ["standard_metadata", "enq_timestamp"]
9464 },
9465 "right" : {
9466 "type" : "field",
9467 "value" : ["standard_metadata", "deq_timedelta"]
9468 }
9469 }
9470 },
9471 "right" : {
9472 "type" : "hexstr",
9473 "value" : "0xffffffff"
9474 }
9475 }
9476 }
9477 }
9478 ],
9479 "source_info" : {
9480 "filename" : "include/int/int_transit.p4",
9481 "line" : 69,
9482 "column" : 8,
9483 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9484 }
9485 },
9486 {
9487 "op" : "assign",
9488 "parameters" : [
9489 {
9490 "type" : "field",
9491 "value" : ["userMetadata.int_meta", "new_words"]
9492 },
9493 {
9494 "type" : "expression",
9495 "value" : {
9496 "type" : "expression",
9497 "value" : {
9498 "op" : "&",
9499 "left" : {
9500 "type" : "expression",
9501 "value" : {
9502 "op" : "+",
9503 "left" : {
9504 "type" : "field",
9505 "value" : ["userMetadata.int_meta", "new_words"]
9506 },
9507 "right" : {
9508 "type" : "hexstr",
9509 "value" : "0x01"
9510 }
9511 }
9512 },
9513 "right" : {
9514 "type" : "hexstr",
9515 "value" : "0xff"
9516 }
9517 }
9518 }
9519 }
9520 ],
9521 "source_info" : {
9522 "filename" : "include/int/int_transit.p4",
9523 "line" : 88,
9524 "column" : 8,
9525 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
9526 }
9527 },
9528 {
9529 "op" : "assign",
9530 "parameters" : [
9531 {
9532 "type" : "field",
9533 "value" : ["userMetadata.int_meta", "new_bytes"]
9534 },
9535 {
9536 "type" : "expression",
9537 "value" : {
9538 "type" : "expression",
9539 "value" : {
9540 "op" : "&",
9541 "left" : {
9542 "type" : "expression",
9543 "value" : {
9544 "op" : "+",
9545 "left" : {
9546 "type" : "field",
9547 "value" : ["userMetadata.int_meta", "new_bytes"]
9548 },
9549 "right" : {
9550 "type" : "hexstr",
9551 "value" : "0x0004"
9552 }
9553 }
9554 },
9555 "right" : {
9556 "type" : "hexstr",
9557 "value" : "0xffff"
9558 }
9559 }
9560 }
9561 }
9562 ],
9563 "source_info" : {
9564 "filename" : "include/int/int_transit.p4",
9565 "line" : 89,
9566 "column" : 8,
9567 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
9568 }
9569 }
9570 ]
9571 },
9572 {
9573 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
9574 "id" : 100,
9575 "runtime_data" : [],
9576 "primitives" : [
9577 {
9578 "op" : "add_header",
9579 "parameters" : [
9580 {
9581 "type" : "header",
9582 "value" : "int_egress_tx_util"
9583 }
9584 ],
9585 "source_info" : {
9586 "filename" : "include/int/int_transit.p4",
9587 "line" : 80,
9588 "column" : 8,
9589 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9590 }
9591 },
9592 {
9593 "op" : "assign",
9594 "parameters" : [
9595 {
9596 "type" : "field",
9597 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9598 },
9599 {
9600 "type" : "hexstr",
9601 "value" : "0x00000000"
9602 }
9603 ],
9604 "source_info" : {
9605 "filename" : "include/int/int_transit.p4",
9606 "line" : 82,
9607 "column" : 8,
9608 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9609 }
9610 },
9611 {
9612 "op" : "add_header",
9613 "parameters" : [
9614 {
9615 "type" : "header",
9616 "value" : "int_egress_tstamp"
9617 }
9618 ],
9619 "source_info" : {
9620 "filename" : "include/int/int_transit.p4",
9621 "line" : 68,
9622 "column" : 8,
9623 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9624 }
9625 },
9626 {
9627 "op" : "assign",
9628 "parameters" : [
9629 {
9630 "type" : "field",
9631 "value" : ["int_egress_tstamp", "egress_tstamp"]
9632 },
9633 {
9634 "type" : "expression",
9635 "value" : {
9636 "type" : "expression",
9637 "value" : {
9638 "op" : "&",
9639 "left" : {
9640 "type" : "expression",
9641 "value" : {
9642 "op" : "+",
9643 "left" : {
9644 "type" : "field",
9645 "value" : ["standard_metadata", "enq_timestamp"]
9646 },
9647 "right" : {
9648 "type" : "field",
9649 "value" : ["standard_metadata", "deq_timedelta"]
9650 }
9651 }
9652 },
9653 "right" : {
9654 "type" : "hexstr",
9655 "value" : "0xffffffff"
9656 }
9657 }
9658 }
9659 }
9660 ],
9661 "source_info" : {
9662 "filename" : "include/int/int_transit.p4",
9663 "line" : 69,
9664 "column" : 8,
9665 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9666 }
9667 },
9668 {
9669 "op" : "assign",
9670 "parameters" : [
9671 {
9672 "type" : "field",
9673 "value" : ["userMetadata.int_meta", "new_words"]
9674 },
9675 {
9676 "type" : "expression",
9677 "value" : {
9678 "type" : "expression",
9679 "value" : {
9680 "op" : "&",
9681 "left" : {
9682 "type" : "expression",
9683 "value" : {
9684 "op" : "+",
9685 "left" : {
9686 "type" : "field",
9687 "value" : ["userMetadata.int_meta", "new_words"]
9688 },
9689 "right" : {
9690 "type" : "hexstr",
9691 "value" : "0x02"
9692 }
9693 }
9694 },
9695 "right" : {
9696 "type" : "hexstr",
9697 "value" : "0xff"
9698 }
9699 }
9700 }
9701 }
9702 ],
9703 "source_info" : {
9704 "filename" : "include/int/int_transit.p4",
9705 "line" : 93,
9706 "column" : 8,
9707 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9708 }
9709 },
9710 {
9711 "op" : "assign",
9712 "parameters" : [
9713 {
9714 "type" : "field",
9715 "value" : ["userMetadata.int_meta", "new_bytes"]
9716 },
9717 {
9718 "type" : "expression",
9719 "value" : {
9720 "type" : "expression",
9721 "value" : {
9722 "op" : "&",
9723 "left" : {
9724 "type" : "expression",
9725 "value" : {
9726 "op" : "+",
9727 "left" : {
9728 "type" : "field",
9729 "value" : ["userMetadata.int_meta", "new_bytes"]
9730 },
9731 "right" : {
9732 "type" : "hexstr",
9733 "value" : "0x0008"
9734 }
9735 }
9736 },
9737 "right" : {
9738 "type" : "hexstr",
9739 "value" : "0xffff"
9740 }
9741 }
9742 }
9743 }
9744 ],
9745 "source_info" : {
9746 "filename" : "include/int/int_transit.p4",
9747 "line" : 94,
9748 "column" : 8,
9749 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9750 }
9751 }
9752 ]
9753 },
9754 {
9755 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
9756 "id" : 101,
9757 "runtime_data" : [],
9758 "primitives" : [
9759 {
9760 "op" : "add_header",
9761 "parameters" : [
9762 {
9763 "type" : "header",
9764 "value" : "int_q_congestion"
9765 }
9766 ],
9767 "source_info" : {
9768 "filename" : "include/int/int_transit.p4",
9769 "line" : 73,
9770 "column" : 8,
9771 "source_fragment" : "hdr.int_q_congestion.setValid()"
9772 }
9773 },
9774 {
9775 "op" : "assign",
9776 "parameters" : [
9777 {
9778 "type" : "field",
9779 "value" : ["int_q_congestion", "q_id"]
9780 },
9781 {
9782 "type" : "hexstr",
9783 "value" : "0x00"
9784 }
9785 ],
9786 "source_info" : {
9787 "filename" : "include/int/int_transit.p4",
9788 "line" : 75,
9789 "column" : 8,
9790 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9791 }
9792 },
9793 {
9794 "op" : "assign",
9795 "parameters" : [
9796 {
9797 "type" : "field",
9798 "value" : ["int_q_congestion", "q_congestion"]
9799 },
9800 {
9801 "type" : "hexstr",
9802 "value" : "0x000000"
9803 }
9804 ],
9805 "source_info" : {
9806 "filename" : "include/int/int_transit.p4",
9807 "line" : 76,
9808 "column" : 8,
9809 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9810 }
9811 },
9812 {
9813 "op" : "add_header",
9814 "parameters" : [
9815 {
9816 "type" : "header",
9817 "value" : "int_egress_tstamp"
9818 }
9819 ],
9820 "source_info" : {
9821 "filename" : "include/int/int_transit.p4",
9822 "line" : 68,
9823 "column" : 8,
9824 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9825 }
9826 },
9827 {
9828 "op" : "assign",
9829 "parameters" : [
9830 {
9831 "type" : "field",
9832 "value" : ["int_egress_tstamp", "egress_tstamp"]
9833 },
9834 {
9835 "type" : "expression",
9836 "value" : {
9837 "type" : "expression",
9838 "value" : {
9839 "op" : "&",
9840 "left" : {
9841 "type" : "expression",
9842 "value" : {
9843 "op" : "+",
9844 "left" : {
9845 "type" : "field",
9846 "value" : ["standard_metadata", "enq_timestamp"]
9847 },
9848 "right" : {
9849 "type" : "field",
9850 "value" : ["standard_metadata", "deq_timedelta"]
9851 }
9852 }
9853 },
9854 "right" : {
9855 "type" : "hexstr",
9856 "value" : "0xffffffff"
9857 }
9858 }
9859 }
9860 }
9861 ],
9862 "source_info" : {
9863 "filename" : "include/int/int_transit.p4",
9864 "line" : 69,
9865 "column" : 8,
9866 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9867 }
9868 },
9869 {
9870 "op" : "assign",
9871 "parameters" : [
9872 {
9873 "type" : "field",
9874 "value" : ["userMetadata.int_meta", "new_words"]
9875 },
9876 {
9877 "type" : "expression",
9878 "value" : {
9879 "type" : "expression",
9880 "value" : {
9881 "op" : "&",
9882 "left" : {
9883 "type" : "expression",
9884 "value" : {
9885 "op" : "+",
9886 "left" : {
9887 "type" : "field",
9888 "value" : ["userMetadata.int_meta", "new_words"]
9889 },
9890 "right" : {
9891 "type" : "hexstr",
9892 "value" : "0x02"
9893 }
9894 }
9895 },
9896 "right" : {
9897 "type" : "hexstr",
9898 "value" : "0xff"
9899 }
9900 }
9901 }
9902 }
9903 ],
9904 "source_info" : {
9905 "filename" : "include/int/int_transit.p4",
9906 "line" : 93,
9907 "column" : 8,
9908 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9909 }
9910 },
9911 {
9912 "op" : "assign",
9913 "parameters" : [
9914 {
9915 "type" : "field",
9916 "value" : ["userMetadata.int_meta", "new_bytes"]
9917 },
9918 {
9919 "type" : "expression",
9920 "value" : {
9921 "type" : "expression",
9922 "value" : {
9923 "op" : "&",
9924 "left" : {
9925 "type" : "expression",
9926 "value" : {
9927 "op" : "+",
9928 "left" : {
9929 "type" : "field",
9930 "value" : ["userMetadata.int_meta", "new_bytes"]
9931 },
9932 "right" : {
9933 "type" : "hexstr",
9934 "value" : "0x0008"
9935 }
9936 }
9937 },
9938 "right" : {
9939 "type" : "hexstr",
9940 "value" : "0xffff"
9941 }
9942 }
9943 }
9944 }
9945 ],
9946 "source_info" : {
9947 "filename" : "include/int/int_transit.p4",
9948 "line" : 94,
9949 "column" : 8,
9950 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9951 }
9952 }
9953 ]
9954 },
9955 {
9956 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
9957 "id" : 102,
9958 "runtime_data" : [],
9959 "primitives" : [
9960 {
9961 "op" : "add_header",
9962 "parameters" : [
9963 {
9964 "type" : "header",
9965 "value" : "int_egress_tx_util"
9966 }
9967 ],
9968 "source_info" : {
9969 "filename" : "include/int/int_transit.p4",
9970 "line" : 80,
9971 "column" : 8,
9972 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9973 }
9974 },
9975 {
9976 "op" : "assign",
9977 "parameters" : [
9978 {
9979 "type" : "field",
9980 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9981 },
9982 {
9983 "type" : "hexstr",
9984 "value" : "0x00000000"
9985 }
9986 ],
9987 "source_info" : {
9988 "filename" : "include/int/int_transit.p4",
9989 "line" : 82,
9990 "column" : 8,
9991 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9992 }
9993 },
9994 {
9995 "op" : "add_header",
9996 "parameters" : [
9997 {
9998 "type" : "header",
9999 "value" : "int_q_congestion"
10000 }
10001 ],
10002 "source_info" : {
10003 "filename" : "include/int/int_transit.p4",
10004 "line" : 73,
10005 "column" : 8,
10006 "source_fragment" : "hdr.int_q_congestion.setValid()"
10007 }
10008 },
10009 {
10010 "op" : "assign",
10011 "parameters" : [
10012 {
10013 "type" : "field",
10014 "value" : ["int_q_congestion", "q_id"]
10015 },
10016 {
10017 "type" : "hexstr",
10018 "value" : "0x00"
10019 }
10020 ],
10021 "source_info" : {
10022 "filename" : "include/int/int_transit.p4",
10023 "line" : 75,
10024 "column" : 8,
10025 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10026 }
10027 },
10028 {
10029 "op" : "assign",
10030 "parameters" : [
10031 {
10032 "type" : "field",
10033 "value" : ["int_q_congestion", "q_congestion"]
10034 },
10035 {
10036 "type" : "hexstr",
10037 "value" : "0x000000"
10038 }
10039 ],
10040 "source_info" : {
10041 "filename" : "include/int/int_transit.p4",
10042 "line" : 76,
10043 "column" : 8,
10044 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10045 }
10046 },
10047 {
10048 "op" : "add_header",
10049 "parameters" : [
10050 {
10051 "type" : "header",
10052 "value" : "int_egress_tstamp"
10053 }
10054 ],
10055 "source_info" : {
10056 "filename" : "include/int/int_transit.p4",
10057 "line" : 68,
10058 "column" : 8,
10059 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10060 }
10061 },
10062 {
10063 "op" : "assign",
10064 "parameters" : [
10065 {
10066 "type" : "field",
10067 "value" : ["int_egress_tstamp", "egress_tstamp"]
10068 },
10069 {
10070 "type" : "expression",
10071 "value" : {
10072 "type" : "expression",
10073 "value" : {
10074 "op" : "&",
10075 "left" : {
10076 "type" : "expression",
10077 "value" : {
10078 "op" : "+",
10079 "left" : {
10080 "type" : "field",
10081 "value" : ["standard_metadata", "enq_timestamp"]
10082 },
10083 "right" : {
10084 "type" : "field",
10085 "value" : ["standard_metadata", "deq_timedelta"]
10086 }
10087 }
10088 },
10089 "right" : {
10090 "type" : "hexstr",
10091 "value" : "0xffffffff"
10092 }
10093 }
10094 }
10095 }
10096 ],
10097 "source_info" : {
10098 "filename" : "include/int/int_transit.p4",
10099 "line" : 69,
10100 "column" : 8,
10101 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10102 }
10103 },
10104 {
10105 "op" : "assign",
10106 "parameters" : [
10107 {
10108 "type" : "field",
10109 "value" : ["userMetadata.int_meta", "new_words"]
10110 },
10111 {
10112 "type" : "expression",
10113 "value" : {
10114 "type" : "expression",
10115 "value" : {
10116 "op" : "&",
10117 "left" : {
10118 "type" : "expression",
10119 "value" : {
10120 "op" : "+",
10121 "left" : {
10122 "type" : "field",
10123 "value" : ["userMetadata.int_meta", "new_words"]
10124 },
10125 "right" : {
10126 "type" : "hexstr",
10127 "value" : "0x03"
10128 }
10129 }
10130 },
10131 "right" : {
10132 "type" : "hexstr",
10133 "value" : "0xff"
10134 }
10135 }
10136 }
10137 }
10138 ],
10139 "source_info" : {
10140 "filename" : "include/int/int_transit.p4",
10141 "line" : 98,
10142 "column" : 8,
10143 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
10144 }
10145 },
10146 {
10147 "op" : "assign",
10148 "parameters" : [
10149 {
10150 "type" : "field",
10151 "value" : ["userMetadata.int_meta", "new_bytes"]
10152 },
10153 {
10154 "type" : "expression",
10155 "value" : {
10156 "type" : "expression",
10157 "value" : {
10158 "op" : "&",
10159 "left" : {
10160 "type" : "expression",
10161 "value" : {
10162 "op" : "+",
10163 "left" : {
10164 "type" : "field",
10165 "value" : ["userMetadata.int_meta", "new_bytes"]
10166 },
10167 "right" : {
10168 "type" : "hexstr",
10169 "value" : "0x000c"
10170 }
10171 }
10172 },
10173 "right" : {
10174 "type" : "hexstr",
10175 "value" : "0xffff"
10176 }
10177 }
10178 }
10179 }
10180 ],
10181 "source_info" : {
10182 "filename" : "include/int/int_transit.p4",
10183 "line" : 99,
10184 "column" : 8,
10185 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
10186 }
10187 }
10188 ]
10189 },
10190 {
10191 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
10192 "id" : 103,
10193 "runtime_data" : [],
10194 "primitives" : [
10195 {
10196 "op" : "add_header",
10197 "parameters" : [
10198 {
10199 "type" : "header",
10200 "value" : "int_ingress_tstamp"
10201 }
10202 ],
10203 "source_info" : {
10204 "filename" : "include/int/int_transit.p4",
10205 "line" : 63,
10206 "column" : 8,
10207 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10208 }
10209 },
10210 {
10211 "op" : "assign",
10212 "parameters" : [
10213 {
10214 "type" : "field",
10215 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10216 },
10217 {
10218 "type" : "field",
10219 "value" : ["standard_metadata", "enq_timestamp"]
10220 }
10221 ],
10222 "source_info" : {
10223 "filename" : "include/int/int_transit.p4",
10224 "line" : 64,
10225 "column" : 8,
10226 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10227 }
10228 },
10229 {
10230 "op" : "assign",
10231 "parameters" : [
10232 {
10233 "type" : "field",
10234 "value" : ["userMetadata.int_meta", "new_words"]
10235 },
10236 {
10237 "type" : "expression",
10238 "value" : {
10239 "type" : "expression",
10240 "value" : {
10241 "op" : "&",
10242 "left" : {
10243 "type" : "expression",
10244 "value" : {
10245 "op" : "+",
10246 "left" : {
10247 "type" : "field",
10248 "value" : ["userMetadata.int_meta", "new_words"]
10249 },
10250 "right" : {
10251 "type" : "hexstr",
10252 "value" : "0x01"
10253 }
10254 }
10255 },
10256 "right" : {
10257 "type" : "hexstr",
10258 "value" : "0xff"
10259 }
10260 }
10261 }
10262 }
10263 ],
10264 "source_info" : {
10265 "filename" : "include/int/int_transit.p4",
10266 "line" : 88,
10267 "column" : 8,
10268 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
10269 }
10270 },
10271 {
10272 "op" : "assign",
10273 "parameters" : [
10274 {
10275 "type" : "field",
10276 "value" : ["userMetadata.int_meta", "new_bytes"]
10277 },
10278 {
10279 "type" : "expression",
10280 "value" : {
10281 "type" : "expression",
10282 "value" : {
10283 "op" : "&",
10284 "left" : {
10285 "type" : "expression",
10286 "value" : {
10287 "op" : "+",
10288 "left" : {
10289 "type" : "field",
10290 "value" : ["userMetadata.int_meta", "new_bytes"]
10291 },
10292 "right" : {
10293 "type" : "hexstr",
10294 "value" : "0x0004"
10295 }
10296 }
10297 },
10298 "right" : {
10299 "type" : "hexstr",
10300 "value" : "0xffff"
10301 }
10302 }
10303 }
10304 }
10305 ],
10306 "source_info" : {
10307 "filename" : "include/int/int_transit.p4",
10308 "line" : 89,
10309 "column" : 8,
10310 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
10311 }
10312 }
10313 ]
10314 },
10315 {
10316 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
10317 "id" : 104,
10318 "runtime_data" : [],
10319 "primitives" : [
10320 {
10321 "op" : "add_header",
10322 "parameters" : [
10323 {
10324 "type" : "header",
10325 "value" : "int_egress_tx_util"
10326 }
10327 ],
10328 "source_info" : {
10329 "filename" : "include/int/int_transit.p4",
10330 "line" : 80,
10331 "column" : 8,
10332 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10333 }
10334 },
10335 {
10336 "op" : "assign",
10337 "parameters" : [
10338 {
10339 "type" : "field",
10340 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10341 },
10342 {
10343 "type" : "hexstr",
10344 "value" : "0x00000000"
10345 }
10346 ],
10347 "source_info" : {
10348 "filename" : "include/int/int_transit.p4",
10349 "line" : 82,
10350 "column" : 8,
10351 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10352 }
10353 },
10354 {
10355 "op" : "add_header",
10356 "parameters" : [
10357 {
10358 "type" : "header",
10359 "value" : "int_ingress_tstamp"
10360 }
10361 ],
10362 "source_info" : {
10363 "filename" : "include/int/int_transit.p4",
10364 "line" : 63,
10365 "column" : 8,
10366 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10367 }
10368 },
10369 {
10370 "op" : "assign",
10371 "parameters" : [
10372 {
10373 "type" : "field",
10374 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10375 },
10376 {
10377 "type" : "field",
10378 "value" : ["standard_metadata", "enq_timestamp"]
10379 }
10380 ],
10381 "source_info" : {
10382 "filename" : "include/int/int_transit.p4",
10383 "line" : 64,
10384 "column" : 8,
10385 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10386 }
10387 },
10388 {
10389 "op" : "assign",
10390 "parameters" : [
10391 {
10392 "type" : "field",
10393 "value" : ["userMetadata.int_meta", "new_words"]
10394 },
10395 {
10396 "type" : "expression",
10397 "value" : {
10398 "type" : "expression",
10399 "value" : {
10400 "op" : "&",
10401 "left" : {
10402 "type" : "expression",
10403 "value" : {
10404 "op" : "+",
10405 "left" : {
10406 "type" : "field",
10407 "value" : ["userMetadata.int_meta", "new_words"]
10408 },
10409 "right" : {
10410 "type" : "hexstr",
10411 "value" : "0x02"
10412 }
10413 }
10414 },
10415 "right" : {
10416 "type" : "hexstr",
10417 "value" : "0xff"
10418 }
10419 }
10420 }
10421 }
10422 ],
10423 "source_info" : {
10424 "filename" : "include/int/int_transit.p4",
10425 "line" : 93,
10426 "column" : 8,
10427 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
10428 }
10429 },
10430 {
10431 "op" : "assign",
10432 "parameters" : [
10433 {
10434 "type" : "field",
10435 "value" : ["userMetadata.int_meta", "new_bytes"]
10436 },
10437 {
10438 "type" : "expression",
10439 "value" : {
10440 "type" : "expression",
10441 "value" : {
10442 "op" : "&",
10443 "left" : {
10444 "type" : "expression",
10445 "value" : {
10446 "op" : "+",
10447 "left" : {
10448 "type" : "field",
10449 "value" : ["userMetadata.int_meta", "new_bytes"]
10450 },
10451 "right" : {
10452 "type" : "hexstr",
10453 "value" : "0x0008"
10454 }
10455 }
10456 },
10457 "right" : {
10458 "type" : "hexstr",
10459 "value" : "0xffff"
10460 }
10461 }
10462 }
10463 }
10464 ],
10465 "source_info" : {
10466 "filename" : "include/int/int_transit.p4",
10467 "line" : 94,
10468 "column" : 8,
10469 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
10470 }
10471 }
10472 ]
10473 },
10474 {
10475 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
10476 "id" : 105,
10477 "runtime_data" : [],
10478 "primitives" : [
10479 {
10480 "op" : "add_header",
10481 "parameters" : [
10482 {
10483 "type" : "header",
10484 "value" : "int_q_congestion"
10485 }
10486 ],
10487 "source_info" : {
10488 "filename" : "include/int/int_transit.p4",
10489 "line" : 73,
10490 "column" : 8,
10491 "source_fragment" : "hdr.int_q_congestion.setValid()"
10492 }
10493 },
10494 {
10495 "op" : "assign",
10496 "parameters" : [
10497 {
10498 "type" : "field",
10499 "value" : ["int_q_congestion", "q_id"]
10500 },
10501 {
10502 "type" : "hexstr",
10503 "value" : "0x00"
10504 }
10505 ],
10506 "source_info" : {
10507 "filename" : "include/int/int_transit.p4",
10508 "line" : 75,
10509 "column" : 8,
10510 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10511 }
10512 },
10513 {
10514 "op" : "assign",
10515 "parameters" : [
10516 {
10517 "type" : "field",
10518 "value" : ["int_q_congestion", "q_congestion"]
10519 },
10520 {
10521 "type" : "hexstr",
10522 "value" : "0x000000"
10523 }
10524 ],
10525 "source_info" : {
10526 "filename" : "include/int/int_transit.p4",
10527 "line" : 76,
10528 "column" : 8,
10529 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10530 }
10531 },
10532 {
10533 "op" : "add_header",
10534 "parameters" : [
10535 {
10536 "type" : "header",
10537 "value" : "int_ingress_tstamp"
10538 }
10539 ],
10540 "source_info" : {
10541 "filename" : "include/int/int_transit.p4",
10542 "line" : 63,
10543 "column" : 8,
10544 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10545 }
10546 },
10547 {
10548 "op" : "assign",
10549 "parameters" : [
10550 {
10551 "type" : "field",
10552 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10553 },
10554 {
10555 "type" : "field",
10556 "value" : ["standard_metadata", "enq_timestamp"]
10557 }
10558 ],
10559 "source_info" : {
10560 "filename" : "include/int/int_transit.p4",
10561 "line" : 64,
10562 "column" : 8,
10563 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10564 }
10565 },
10566 {
10567 "op" : "assign",
10568 "parameters" : [
10569 {
10570 "type" : "field",
10571 "value" : ["userMetadata.int_meta", "new_words"]
10572 },
10573 {
10574 "type" : "expression",
10575 "value" : {
10576 "type" : "expression",
10577 "value" : {
10578 "op" : "&",
10579 "left" : {
10580 "type" : "expression",
10581 "value" : {
10582 "op" : "+",
10583 "left" : {
10584 "type" : "field",
10585 "value" : ["userMetadata.int_meta", "new_words"]
10586 },
10587 "right" : {
10588 "type" : "hexstr",
10589 "value" : "0x02"
10590 }
10591 }
10592 },
10593 "right" : {
10594 "type" : "hexstr",
10595 "value" : "0xff"
10596 }
10597 }
10598 }
10599 }
10600 ],
10601 "source_info" : {
10602 "filename" : "include/int/int_transit.p4",
10603 "line" : 93,
10604 "column" : 8,
10605 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
10606 }
10607 },
10608 {
10609 "op" : "assign",
10610 "parameters" : [
10611 {
10612 "type" : "field",
10613 "value" : ["userMetadata.int_meta", "new_bytes"]
10614 },
10615 {
10616 "type" : "expression",
10617 "value" : {
10618 "type" : "expression",
10619 "value" : {
10620 "op" : "&",
10621 "left" : {
10622 "type" : "expression",
10623 "value" : {
10624 "op" : "+",
10625 "left" : {
10626 "type" : "field",
10627 "value" : ["userMetadata.int_meta", "new_bytes"]
10628 },
10629 "right" : {
10630 "type" : "hexstr",
10631 "value" : "0x0008"
10632 }
10633 }
10634 },
10635 "right" : {
10636 "type" : "hexstr",
10637 "value" : "0xffff"
10638 }
10639 }
10640 }
10641 }
10642 ],
10643 "source_info" : {
10644 "filename" : "include/int/int_transit.p4",
10645 "line" : 94,
10646 "column" : 8,
10647 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
10648 }
10649 }
10650 ]
10651 },
10652 {
10653 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
10654 "id" : 106,
10655 "runtime_data" : [],
10656 "primitives" : [
10657 {
10658 "op" : "add_header",
10659 "parameters" : [
10660 {
10661 "type" : "header",
10662 "value" : "int_egress_tx_util"
10663 }
10664 ],
10665 "source_info" : {
10666 "filename" : "include/int/int_transit.p4",
10667 "line" : 80,
10668 "column" : 8,
10669 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10670 }
10671 },
10672 {
10673 "op" : "assign",
10674 "parameters" : [
10675 {
10676 "type" : "field",
10677 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10678 },
10679 {
10680 "type" : "hexstr",
10681 "value" : "0x00000000"
10682 }
10683 ],
10684 "source_info" : {
10685 "filename" : "include/int/int_transit.p4",
10686 "line" : 82,
10687 "column" : 8,
10688 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10689 }
10690 },
10691 {
10692 "op" : "add_header",
10693 "parameters" : [
10694 {
10695 "type" : "header",
10696 "value" : "int_q_congestion"
10697 }
10698 ],
10699 "source_info" : {
10700 "filename" : "include/int/int_transit.p4",
10701 "line" : 73,
10702 "column" : 8,
10703 "source_fragment" : "hdr.int_q_congestion.setValid()"
10704 }
10705 },
10706 {
10707 "op" : "assign",
10708 "parameters" : [
10709 {
10710 "type" : "field",
10711 "value" : ["int_q_congestion", "q_id"]
10712 },
10713 {
10714 "type" : "hexstr",
10715 "value" : "0x00"
10716 }
10717 ],
10718 "source_info" : {
10719 "filename" : "include/int/int_transit.p4",
10720 "line" : 75,
10721 "column" : 8,
10722 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10723 }
10724 },
10725 {
10726 "op" : "assign",
10727 "parameters" : [
10728 {
10729 "type" : "field",
10730 "value" : ["int_q_congestion", "q_congestion"]
10731 },
10732 {
10733 "type" : "hexstr",
10734 "value" : "0x000000"
10735 }
10736 ],
10737 "source_info" : {
10738 "filename" : "include/int/int_transit.p4",
10739 "line" : 76,
10740 "column" : 8,
10741 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10742 }
10743 },
10744 {
10745 "op" : "add_header",
10746 "parameters" : [
10747 {
10748 "type" : "header",
10749 "value" : "int_ingress_tstamp"
10750 }
10751 ],
10752 "source_info" : {
10753 "filename" : "include/int/int_transit.p4",
10754 "line" : 63,
10755 "column" : 8,
10756 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10757 }
10758 },
10759 {
10760 "op" : "assign",
10761 "parameters" : [
10762 {
10763 "type" : "field",
10764 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10765 },
10766 {
10767 "type" : "field",
10768 "value" : ["standard_metadata", "enq_timestamp"]
10769 }
10770 ],
10771 "source_info" : {
10772 "filename" : "include/int/int_transit.p4",
10773 "line" : 64,
10774 "column" : 8,
10775 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10776 }
10777 },
10778 {
10779 "op" : "assign",
10780 "parameters" : [
10781 {
10782 "type" : "field",
10783 "value" : ["userMetadata.int_meta", "new_words"]
10784 },
10785 {
10786 "type" : "expression",
10787 "value" : {
10788 "type" : "expression",
10789 "value" : {
10790 "op" : "&",
10791 "left" : {
10792 "type" : "expression",
10793 "value" : {
10794 "op" : "+",
10795 "left" : {
10796 "type" : "field",
10797 "value" : ["userMetadata.int_meta", "new_words"]
10798 },
10799 "right" : {
10800 "type" : "hexstr",
10801 "value" : "0x03"
10802 }
10803 }
10804 },
10805 "right" : {
10806 "type" : "hexstr",
10807 "value" : "0xff"
10808 }
10809 }
10810 }
10811 }
10812 ],
10813 "source_info" : {
10814 "filename" : "include/int/int_transit.p4",
10815 "line" : 98,
10816 "column" : 8,
10817 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
10818 }
10819 },
10820 {
10821 "op" : "assign",
10822 "parameters" : [
10823 {
10824 "type" : "field",
10825 "value" : ["userMetadata.int_meta", "new_bytes"]
10826 },
10827 {
10828 "type" : "expression",
10829 "value" : {
10830 "type" : "expression",
10831 "value" : {
10832 "op" : "&",
10833 "left" : {
10834 "type" : "expression",
10835 "value" : {
10836 "op" : "+",
10837 "left" : {
10838 "type" : "field",
10839 "value" : ["userMetadata.int_meta", "new_bytes"]
10840 },
10841 "right" : {
10842 "type" : "hexstr",
10843 "value" : "0x000c"
10844 }
10845 }
10846 },
10847 "right" : {
10848 "type" : "hexstr",
10849 "value" : "0xffff"
10850 }
10851 }
10852 }
10853 }
10854 ],
10855 "source_info" : {
10856 "filename" : "include/int/int_transit.p4",
10857 "line" : 99,
10858 "column" : 8,
10859 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
10860 }
10861 }
10862 ]
10863 },
10864 {
10865 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
10866 "id" : 107,
10867 "runtime_data" : [],
10868 "primitives" : [
10869 {
10870 "op" : "add_header",
10871 "parameters" : [
10872 {
10873 "type" : "header",
10874 "value" : "int_egress_tstamp"
10875 }
10876 ],
10877 "source_info" : {
10878 "filename" : "include/int/int_transit.p4",
10879 "line" : 68,
10880 "column" : 8,
10881 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10882 }
10883 },
10884 {
10885 "op" : "assign",
10886 "parameters" : [
10887 {
10888 "type" : "field",
10889 "value" : ["int_egress_tstamp", "egress_tstamp"]
10890 },
10891 {
10892 "type" : "expression",
10893 "value" : {
10894 "type" : "expression",
10895 "value" : {
10896 "op" : "&",
10897 "left" : {
10898 "type" : "expression",
10899 "value" : {
10900 "op" : "+",
10901 "left" : {
10902 "type" : "field",
10903 "value" : ["standard_metadata", "enq_timestamp"]
10904 },
10905 "right" : {
10906 "type" : "field",
10907 "value" : ["standard_metadata", "deq_timedelta"]
10908 }
10909 }
10910 },
10911 "right" : {
10912 "type" : "hexstr",
10913 "value" : "0xffffffff"
10914 }
10915 }
10916 }
10917 }
10918 ],
10919 "source_info" : {
10920 "filename" : "include/int/int_transit.p4",
10921 "line" : 69,
10922 "column" : 8,
10923 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10924 }
10925 },
10926 {
10927 "op" : "add_header",
10928 "parameters" : [
10929 {
10930 "type" : "header",
10931 "value" : "int_ingress_tstamp"
10932 }
10933 ],
10934 "source_info" : {
10935 "filename" : "include/int/int_transit.p4",
10936 "line" : 63,
10937 "column" : 8,
10938 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10939 }
10940 },
10941 {
10942 "op" : "assign",
10943 "parameters" : [
10944 {
10945 "type" : "field",
10946 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10947 },
10948 {
10949 "type" : "field",
10950 "value" : ["standard_metadata", "enq_timestamp"]
10951 }
10952 ],
10953 "source_info" : {
10954 "filename" : "include/int/int_transit.p4",
10955 "line" : 64,
10956 "column" : 8,
10957 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10958 }
10959 },
10960 {
10961 "op" : "assign",
10962 "parameters" : [
10963 {
10964 "type" : "field",
10965 "value" : ["userMetadata.int_meta", "new_words"]
10966 },
10967 {
10968 "type" : "expression",
10969 "value" : {
10970 "type" : "expression",
10971 "value" : {
10972 "op" : "&",
10973 "left" : {
10974 "type" : "expression",
10975 "value" : {
10976 "op" : "+",
10977 "left" : {
10978 "type" : "field",
10979 "value" : ["userMetadata.int_meta", "new_words"]
10980 },
10981 "right" : {
10982 "type" : "hexstr",
10983 "value" : "0x02"
10984 }
10985 }
10986 },
10987 "right" : {
10988 "type" : "hexstr",
10989 "value" : "0xff"
10990 }
10991 }
10992 }
10993 }
10994 ],
10995 "source_info" : {
10996 "filename" : "include/int/int_transit.p4",
10997 "line" : 93,
10998 "column" : 8,
10999 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
11000 }
11001 },
11002 {
11003 "op" : "assign",
11004 "parameters" : [
11005 {
11006 "type" : "field",
11007 "value" : ["userMetadata.int_meta", "new_bytes"]
11008 },
11009 {
11010 "type" : "expression",
11011 "value" : {
11012 "type" : "expression",
11013 "value" : {
11014 "op" : "&",
11015 "left" : {
11016 "type" : "expression",
11017 "value" : {
11018 "op" : "+",
11019 "left" : {
11020 "type" : "field",
11021 "value" : ["userMetadata.int_meta", "new_bytes"]
11022 },
11023 "right" : {
11024 "type" : "hexstr",
11025 "value" : "0x0008"
11026 }
11027 }
11028 },
11029 "right" : {
11030 "type" : "hexstr",
11031 "value" : "0xffff"
11032 }
11033 }
11034 }
11035 }
11036 ],
11037 "source_info" : {
11038 "filename" : "include/int/int_transit.p4",
11039 "line" : 94,
11040 "column" : 8,
11041 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
11042 }
11043 }
11044 ]
11045 },
11046 {
11047 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
11048 "id" : 108,
11049 "runtime_data" : [],
11050 "primitives" : [
11051 {
11052 "op" : "add_header",
11053 "parameters" : [
11054 {
11055 "type" : "header",
11056 "value" : "int_egress_tx_util"
11057 }
11058 ],
11059 "source_info" : {
11060 "filename" : "include/int/int_transit.p4",
11061 "line" : 80,
11062 "column" : 8,
11063 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
11064 }
11065 },
11066 {
11067 "op" : "assign",
11068 "parameters" : [
11069 {
11070 "type" : "field",
11071 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
11072 },
11073 {
11074 "type" : "hexstr",
11075 "value" : "0x00000000"
11076 }
11077 ],
11078 "source_info" : {
11079 "filename" : "include/int/int_transit.p4",
11080 "line" : 82,
11081 "column" : 8,
11082 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
11083 }
11084 },
11085 {
11086 "op" : "add_header",
11087 "parameters" : [
11088 {
11089 "type" : "header",
11090 "value" : "int_egress_tstamp"
11091 }
11092 ],
11093 "source_info" : {
11094 "filename" : "include/int/int_transit.p4",
11095 "line" : 68,
11096 "column" : 8,
11097 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
11098 }
11099 },
11100 {
11101 "op" : "assign",
11102 "parameters" : [
11103 {
11104 "type" : "field",
11105 "value" : ["int_egress_tstamp", "egress_tstamp"]
11106 },
11107 {
11108 "type" : "expression",
11109 "value" : {
11110 "type" : "expression",
11111 "value" : {
11112 "op" : "&",
11113 "left" : {
11114 "type" : "expression",
11115 "value" : {
11116 "op" : "+",
11117 "left" : {
11118 "type" : "field",
11119 "value" : ["standard_metadata", "enq_timestamp"]
11120 },
11121 "right" : {
11122 "type" : "field",
11123 "value" : ["standard_metadata", "deq_timedelta"]
11124 }
11125 }
11126 },
11127 "right" : {
11128 "type" : "hexstr",
11129 "value" : "0xffffffff"
11130 }
11131 }
11132 }
11133 }
11134 ],
11135 "source_info" : {
11136 "filename" : "include/int/int_transit.p4",
11137 "line" : 69,
11138 "column" : 8,
11139 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
11140 }
11141 },
11142 {
11143 "op" : "add_header",
11144 "parameters" : [
11145 {
11146 "type" : "header",
11147 "value" : "int_ingress_tstamp"
11148 }
11149 ],
11150 "source_info" : {
11151 "filename" : "include/int/int_transit.p4",
11152 "line" : 63,
11153 "column" : 8,
11154 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
11155 }
11156 },
11157 {
11158 "op" : "assign",
11159 "parameters" : [
11160 {
11161 "type" : "field",
11162 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
11163 },
11164 {
11165 "type" : "field",
11166 "value" : ["standard_metadata", "enq_timestamp"]
11167 }
11168 ],
11169 "source_info" : {
11170 "filename" : "include/int/int_transit.p4",
11171 "line" : 64,
11172 "column" : 8,
11173 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
11174 }
11175 },
11176 {
11177 "op" : "assign",
11178 "parameters" : [
11179 {
11180 "type" : "field",
11181 "value" : ["userMetadata.int_meta", "new_words"]
11182 },
11183 {
11184 "type" : "expression",
11185 "value" : {
11186 "type" : "expression",
11187 "value" : {
11188 "op" : "&",
11189 "left" : {
11190 "type" : "expression",
11191 "value" : {
11192 "op" : "+",
11193 "left" : {
11194 "type" : "field",
11195 "value" : ["userMetadata.int_meta", "new_words"]
11196 },
11197 "right" : {
11198 "type" : "hexstr",
11199 "value" : "0x03"
11200 }
11201 }
11202 },
11203 "right" : {
11204 "type" : "hexstr",
11205 "value" : "0xff"
11206 }
11207 }
11208 }
11209 }
11210 ],
11211 "source_info" : {
11212 "filename" : "include/int/int_transit.p4",
11213 "line" : 98,
11214 "column" : 8,
11215 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
11216 }
11217 },
11218 {
11219 "op" : "assign",
11220 "parameters" : [
11221 {
11222 "type" : "field",
11223 "value" : ["userMetadata.int_meta", "new_bytes"]
11224 },
11225 {
11226 "type" : "expression",
11227 "value" : {
11228 "type" : "expression",
11229 "value" : {
11230 "op" : "&",
11231 "left" : {
11232 "type" : "expression",
11233 "value" : {
11234 "op" : "+",
11235 "left" : {
11236 "type" : "field",
11237 "value" : ["userMetadata.int_meta", "new_bytes"]
11238 },
11239 "right" : {
11240 "type" : "hexstr",
11241 "value" : "0x000c"
11242 }
11243 }
11244 },
11245 "right" : {
11246 "type" : "hexstr",
11247 "value" : "0xffff"
11248 }
11249 }
11250 }
11251 }
11252 ],
11253 "source_info" : {
11254 "filename" : "include/int/int_transit.p4",
11255 "line" : 99,
11256 "column" : 8,
11257 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
11258 }
11259 }
11260 ]
11261 },
11262 {
11263 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
11264 "id" : 109,
11265 "runtime_data" : [],
11266 "primitives" : [
11267 {
11268 "op" : "add_header",
11269 "parameters" : [
11270 {
11271 "type" : "header",
11272 "value" : "int_q_congestion"
11273 }
11274 ],
11275 "source_info" : {
11276 "filename" : "include/int/int_transit.p4",
11277 "line" : 73,
11278 "column" : 8,
11279 "source_fragment" : "hdr.int_q_congestion.setValid()"
11280 }
11281 },
11282 {
11283 "op" : "assign",
11284 "parameters" : [
11285 {
11286 "type" : "field",
11287 "value" : ["int_q_congestion", "q_id"]
11288 },
11289 {
11290 "type" : "hexstr",
11291 "value" : "0x00"
11292 }
11293 ],
11294 "source_info" : {
11295 "filename" : "include/int/int_transit.p4",
11296 "line" : 75,
11297 "column" : 8,
11298 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
11299 }
11300 },
11301 {
11302 "op" : "assign",
11303 "parameters" : [
11304 {
11305 "type" : "field",
11306 "value" : ["int_q_congestion", "q_congestion"]
11307 },
11308 {
11309 "type" : "hexstr",
11310 "value" : "0x000000"
11311 }
11312 ],
11313 "source_info" : {
11314 "filename" : "include/int/int_transit.p4",
11315 "line" : 76,
11316 "column" : 8,
11317 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
11318 }
11319 },
11320 {
11321 "op" : "add_header",
11322 "parameters" : [
11323 {
11324 "type" : "header",
11325 "value" : "int_egress_tstamp"
11326 }
11327 ],
11328 "source_info" : {
11329 "filename" : "include/int/int_transit.p4",
11330 "line" : 68,
11331 "column" : 8,
11332 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
11333 }
11334 },
11335 {
11336 "op" : "assign",
11337 "parameters" : [
11338 {
11339 "type" : "field",
11340 "value" : ["int_egress_tstamp", "egress_tstamp"]
11341 },
11342 {
11343 "type" : "expression",
11344 "value" : {
11345 "type" : "expression",
11346 "value" : {
11347 "op" : "&",
11348 "left" : {
11349 "type" : "expression",
11350 "value" : {
11351 "op" : "+",
11352 "left" : {
11353 "type" : "field",
11354 "value" : ["standard_metadata", "enq_timestamp"]
11355 },
11356 "right" : {
11357 "type" : "field",
11358 "value" : ["standard_metadata", "deq_timedelta"]
11359 }
11360 }
11361 },
11362 "right" : {
11363 "type" : "hexstr",
11364 "value" : "0xffffffff"
11365 }
11366 }
11367 }
11368 }
11369 ],
11370 "source_info" : {
11371 "filename" : "include/int/int_transit.p4",
11372 "line" : 69,
11373 "column" : 8,
11374 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
11375 }
11376 },
11377 {
11378 "op" : "add_header",
11379 "parameters" : [
11380 {
11381 "type" : "header",
11382 "value" : "int_ingress_tstamp"
11383 }
11384 ],
11385 "source_info" : {
11386 "filename" : "include/int/int_transit.p4",
11387 "line" : 63,
11388 "column" : 8,
11389 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
11390 }
11391 },
11392 {
11393 "op" : "assign",
11394 "parameters" : [
11395 {
11396 "type" : "field",
11397 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
11398 },
11399 {
11400 "type" : "field",
11401 "value" : ["standard_metadata", "enq_timestamp"]
11402 }
11403 ],
11404 "source_info" : {
11405 "filename" : "include/int/int_transit.p4",
11406 "line" : 64,
11407 "column" : 8,
11408 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
11409 }
11410 },
11411 {
11412 "op" : "assign",
11413 "parameters" : [
11414 {
11415 "type" : "field",
11416 "value" : ["userMetadata.int_meta", "new_words"]
11417 },
11418 {
11419 "type" : "expression",
11420 "value" : {
11421 "type" : "expression",
11422 "value" : {
11423 "op" : "&",
11424 "left" : {
11425 "type" : "expression",
11426 "value" : {
11427 "op" : "+",
11428 "left" : {
11429 "type" : "field",
11430 "value" : ["userMetadata.int_meta", "new_words"]
11431 },
11432 "right" : {
11433 "type" : "hexstr",
11434 "value" : "0x03"
11435 }
11436 }
11437 },
11438 "right" : {
11439 "type" : "hexstr",
11440 "value" : "0xff"
11441 }
11442 }
11443 }
11444 }
11445 ],
11446 "source_info" : {
11447 "filename" : "include/int/int_transit.p4",
11448 "line" : 98,
11449 "column" : 8,
11450 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
11451 }
11452 },
11453 {
11454 "op" : "assign",
11455 "parameters" : [
11456 {
11457 "type" : "field",
11458 "value" : ["userMetadata.int_meta", "new_bytes"]
11459 },
11460 {
11461 "type" : "expression",
11462 "value" : {
11463 "type" : "expression",
11464 "value" : {
11465 "op" : "&",
11466 "left" : {
11467 "type" : "expression",
11468 "value" : {
11469 "op" : "+",
11470 "left" : {
11471 "type" : "field",
11472 "value" : ["userMetadata.int_meta", "new_bytes"]
11473 },
11474 "right" : {
11475 "type" : "hexstr",
11476 "value" : "0x000c"
11477 }
11478 }
11479 },
11480 "right" : {
11481 "type" : "hexstr",
11482 "value" : "0xffff"
11483 }
11484 }
11485 }
11486 }
11487 ],
11488 "source_info" : {
11489 "filename" : "include/int/int_transit.p4",
11490 "line" : 99,
11491 "column" : 8,
11492 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
11493 }
11494 }
11495 ]
11496 },
11497 {
11498 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
11499 "id" : 110,
11500 "runtime_data" : [],
11501 "primitives" : [
11502 {
11503 "op" : "add_header",
11504 "parameters" : [
11505 {
11506 "type" : "header",
11507 "value" : "int_egress_tx_util"
11508 }
11509 ],
11510 "source_info" : {
11511 "filename" : "include/int/int_transit.p4",
11512 "line" : 80,
11513 "column" : 8,
11514 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
11515 }
11516 },
11517 {
11518 "op" : "assign",
11519 "parameters" : [
11520 {
11521 "type" : "field",
11522 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
11523 },
11524 {
11525 "type" : "hexstr",
11526 "value" : "0x00000000"
11527 }
11528 ],
11529 "source_info" : {
11530 "filename" : "include/int/int_transit.p4",
11531 "line" : 82,
11532 "column" : 8,
11533 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
11534 }
11535 },
11536 {
11537 "op" : "add_header",
11538 "parameters" : [
11539 {
11540 "type" : "header",
11541 "value" : "int_q_congestion"
11542 }
11543 ],
11544 "source_info" : {
11545 "filename" : "include/int/int_transit.p4",
11546 "line" : 73,
11547 "column" : 8,
11548 "source_fragment" : "hdr.int_q_congestion.setValid()"
11549 }
11550 },
11551 {
11552 "op" : "assign",
11553 "parameters" : [
11554 {
11555 "type" : "field",
11556 "value" : ["int_q_congestion", "q_id"]
11557 },
11558 {
11559 "type" : "hexstr",
11560 "value" : "0x00"
11561 }
11562 ],
11563 "source_info" : {
11564 "filename" : "include/int/int_transit.p4",
11565 "line" : 75,
11566 "column" : 8,
11567 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
11568 }
11569 },
11570 {
11571 "op" : "assign",
11572 "parameters" : [
11573 {
11574 "type" : "field",
11575 "value" : ["int_q_congestion", "q_congestion"]
11576 },
11577 {
11578 "type" : "hexstr",
11579 "value" : "0x000000"
11580 }
11581 ],
11582 "source_info" : {
11583 "filename" : "include/int/int_transit.p4",
11584 "line" : 76,
11585 "column" : 8,
11586 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
11587 }
11588 },
11589 {
11590 "op" : "add_header",
11591 "parameters" : [
11592 {
11593 "type" : "header",
11594 "value" : "int_egress_tstamp"
11595 }
11596 ],
11597 "source_info" : {
11598 "filename" : "include/int/int_transit.p4",
11599 "line" : 68,
11600 "column" : 8,
11601 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
11602 }
11603 },
11604 {
11605 "op" : "assign",
11606 "parameters" : [
11607 {
11608 "type" : "field",
11609 "value" : ["int_egress_tstamp", "egress_tstamp"]
11610 },
11611 {
11612 "type" : "expression",
11613 "value" : {
11614 "type" : "expression",
11615 "value" : {
11616 "op" : "&",
11617 "left" : {
11618 "type" : "expression",
11619 "value" : {
11620 "op" : "+",
11621 "left" : {
11622 "type" : "field",
11623 "value" : ["standard_metadata", "enq_timestamp"]
11624 },
11625 "right" : {
11626 "type" : "field",
11627 "value" : ["standard_metadata", "deq_timedelta"]
11628 }
11629 }
11630 },
11631 "right" : {
11632 "type" : "hexstr",
11633 "value" : "0xffffffff"
11634 }
11635 }
11636 }
11637 }
11638 ],
11639 "source_info" : {
11640 "filename" : "include/int/int_transit.p4",
11641 "line" : 69,
11642 "column" : 8,
11643 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
11644 }
11645 },
11646 {
11647 "op" : "add_header",
11648 "parameters" : [
11649 {
11650 "type" : "header",
11651 "value" : "int_ingress_tstamp"
11652 }
11653 ],
11654 "source_info" : {
11655 "filename" : "include/int/int_transit.p4",
11656 "line" : 63,
11657 "column" : 8,
11658 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
11659 }
11660 },
11661 {
11662 "op" : "assign",
11663 "parameters" : [
11664 {
11665 "type" : "field",
11666 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
11667 },
11668 {
11669 "type" : "field",
11670 "value" : ["standard_metadata", "enq_timestamp"]
11671 }
11672 ],
11673 "source_info" : {
11674 "filename" : "include/int/int_transit.p4",
11675 "line" : 64,
11676 "column" : 8,
11677 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
11678 }
11679 },
11680 {
11681 "op" : "assign",
11682 "parameters" : [
11683 {
11684 "type" : "field",
11685 "value" : ["userMetadata.int_meta", "new_words"]
11686 },
11687 {
11688 "type" : "expression",
11689 "value" : {
11690 "type" : "expression",
11691 "value" : {
11692 "op" : "&",
11693 "left" : {
11694 "type" : "expression",
11695 "value" : {
11696 "op" : "+",
11697 "left" : {
11698 "type" : "field",
11699 "value" : ["userMetadata.int_meta", "new_words"]
11700 },
11701 "right" : {
11702 "type" : "hexstr",
11703 "value" : "0x04"
11704 }
11705 }
11706 },
11707 "right" : {
11708 "type" : "hexstr",
11709 "value" : "0xff"
11710 }
11711 }
11712 }
11713 }
11714 ],
11715 "source_info" : {
11716 "filename" : "include/int/int_transit.p4",
11717 "line" : 103,
11718 "column" : 8,
11719 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
11720 }
11721 },
11722 {
11723 "op" : "assign",
11724 "parameters" : [
11725 {
11726 "type" : "field",
11727 "value" : ["userMetadata.int_meta", "new_bytes"]
11728 },
11729 {
11730 "type" : "expression",
11731 "value" : {
11732 "type" : "expression",
11733 "value" : {
11734 "op" : "&",
11735 "left" : {
11736 "type" : "expression",
11737 "value" : {
11738 "op" : "+",
11739 "left" : {
11740 "type" : "field",
11741 "value" : ["userMetadata.int_meta", "new_bytes"]
11742 },
11743 "right" : {
11744 "type" : "hexstr",
11745 "value" : "0x0010"
11746 }
11747 }
11748 },
11749 "right" : {
11750 "type" : "hexstr",
11751 "value" : "0xffff"
11752 }
11753 }
11754 }
11755 }
11756 ],
11757 "source_info" : {
11758 "filename" : "include/int/int_transit.p4",
11759 "line" : 104,
11760 "column" : 8,
11761 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
11762 }
11763 }
11764 ]
11765 },
11766 {
11767 "name" : "FabricEgress.pkt_io_egress.pop_vlan",
11768 "id" : 111,
11769 "runtime_data" : [],
11770 "primitives" : [
11771 {
11772 "op" : "assign",
11773 "parameters" : [
11774 {
11775 "type" : "field",
11776 "value" : ["ethernet", "ether_type"]
11777 },
11778 {
11779 "type" : "field",
11780 "value" : ["vlan_tag", "ether_type"]
11781 }
11782 ],
11783 "source_info" : {
11784 "filename" : "include/control/packetio.p4",
11785 "line" : 40,
11786 "column" : 8,
11787 "source_fragment" : "hdr.ethernet.ether_type = hdr.vlan_tag.ether_type"
11788 }
11789 },
11790 {
11791 "op" : "remove_header",
11792 "parameters" : [
11793 {
11794 "type" : "header",
11795 "value" : "vlan_tag"
11796 }
11797 ],
11798 "source_info" : {
11799 "filename" : "include/control/packetio.p4",
11800 "line" : 41,
11801 "column" : 8,
11802 "source_fragment" : "hdr.vlan_tag.setInvalid()"
11803 }
11804 }
11805 ]
11806 },
11807 {
11808 "name" : "FabricEgress.egress_next.pop_vlan",
11809 "id" : 112,
11810 "runtime_data" : [],
11811 "primitives" : [
11812 {
11813 "op" : "assign",
11814 "parameters" : [
11815 {
11816 "type" : "field",
11817 "value" : ["ethernet", "ether_type"]
11818 },
11819 {
11820 "type" : "field",
11821 "value" : ["vlan_tag", "ether_type"]
11822 }
11823 ],
11824 "source_info" : {
11825 "filename" : "include/control/next.p4",
11826 "line" : 253,
11827 "column" : 8,
11828 "source_fragment" : "hdr.ethernet.ether_type = hdr.vlan_tag.ether_type"
11829 }
11830 },
11831 {
11832 "op" : "remove_header",
11833 "parameters" : [
11834 {
11835 "type" : "header",
11836 "value" : "vlan_tag"
11837 }
11838 ],
11839 "source_info" : {
11840 "filename" : "include/control/next.p4",
11841 "line" : 254,
11842 "column" : 8,
11843 "source_fragment" : "hdr.vlan_tag.setInvalid()"
11844 }
11845 }
11846 ]
11847 },
11848 {
11849 "name" : "act_29",
11850 "id" : 113,
11851 "runtime_data" : [],
11852 "primitives" : [
11853 {
11854 "op" : "add_header",
11855 "parameters" : [
11856 {
11857 "type" : "header",
11858 "value" : "packet_in"
11859 }
11860 ],
11861 "source_info" : {
11862 "filename" : "include/control/packetio.p4",
11863 "line" : 57,
11864 "column" : 12,
11865 "source_fragment" : "hdr.packet_in.setValid()"
11866 }
11867 },
11868 {
11869 "op" : "assign",
11870 "parameters" : [
11871 {
11872 "type" : "field",
11873 "value" : ["packet_in", "ingress_port"]
11874 },
11875 {
11876 "type" : "field",
11877 "value" : ["standard_metadata", "ingress_port"]
11878 }
11879 ],
11880 "source_info" : {
11881 "filename" : "include/control/packetio.p4",
11882 "line" : 58,
11883 "column" : 12,
11884 "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
11885 }
11886 }
11887 ]
11888 },
11889 {
11890 "name" : "act_30",
11891 "id" : 114,
11892 "runtime_data" : [],
11893 "primitives" : [
11894 {
11895 "op" : "assign",
11896 "parameters" : [
11897 {
11898 "type" : "field",
11899 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned_0"]
11900 },
11901 {
11902 "type" : "expression",
11903 "value" : {
11904 "type" : "expression",
11905 "value" : {
11906 "op" : "b2d",
11907 "left" : null,
11908 "right" : {
11909 "type" : "bool",
11910 "value" : false
11911 }
11912 }
11913 }
11914 }
11915 ]
11916 }
11917 ]
11918 },
11919 {
11920 "name" : "act_31",
11921 "id" : 115,
11922 "runtime_data" : [],
11923 "primitives" : [
11924 {
11925 "op" : "assign",
11926 "parameters" : [
11927 {
11928 "type" : "field",
11929 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned_0"]
11930 },
11931 {
11932 "type" : "expression",
11933 "value" : {
11934 "type" : "expression",
11935 "value" : {
11936 "op" : "b2d",
11937 "left" : null,
11938 "right" : {
11939 "type" : "bool",
11940 "value" : true
11941 }
11942 }
11943 }
11944 }
11945 ],
11946 "source_info" : {
11947 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070011948 "line" : 376,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011949 "column" : 12,
11950 "source_fragment" : "return"
11951 }
11952 }
11953 ]
11954 },
11955 {
11956 "name" : "act_32",
11957 "id" : 116,
11958 "runtime_data" : [],
11959 "primitives" : [
11960 {
11961 "op" : "assign",
11962 "parameters" : [
11963 {
11964 "type" : "field",
11965 "value" : ["ipv4", "total_len"]
11966 },
11967 {
11968 "type" : "expression",
11969 "value" : {
11970 "type" : "expression",
11971 "value" : {
11972 "op" : "&",
11973 "left" : {
11974 "type" : "expression",
11975 "value" : {
11976 "op" : "+",
11977 "left" : {
11978 "type" : "field",
11979 "value" : ["ipv4", "total_len"]
11980 },
11981 "right" : {
11982 "type" : "field",
11983 "value" : ["userMetadata.int_meta", "new_bytes"]
11984 }
11985 }
11986 },
11987 "right" : {
11988 "type" : "hexstr",
11989 "value" : "0xffff"
11990 }
11991 }
11992 }
11993 }
11994 ],
11995 "source_info" : {
11996 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070011997 "line" : 384,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011998 "column" : 12,
11999 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + fmeta.int_meta.new_bytes"
12000 }
12001 }
12002 ]
12003 },
12004 {
12005 "name" : "act_33",
12006 "id" : 117,
12007 "runtime_data" : [],
12008 "primitives" : [
12009 {
12010 "op" : "assign",
12011 "parameters" : [
12012 {
12013 "type" : "field",
12014 "value" : ["int_header", "total_hop_cnt"]
12015 },
12016 {
12017 "type" : "expression",
12018 "value" : {
12019 "type" : "expression",
12020 "value" : {
12021 "op" : "&",
12022 "left" : {
12023 "type" : "expression",
12024 "value" : {
12025 "op" : "+",
12026 "left" : {
12027 "type" : "field",
12028 "value" : ["int_header", "total_hop_cnt"]
12029 },
12030 "right" : {
12031 "type" : "hexstr",
12032 "value" : "0x01"
12033 }
12034 }
12035 },
12036 "right" : {
12037 "type" : "hexstr",
12038 "value" : "0xff"
12039 }
12040 }
12041 }
12042 }
12043 ],
12044 "source_info" : {
12045 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012046 "line" : 381,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012047 "column" : 8,
12048 "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
12049 }
12050 }
12051 ]
12052 },
12053 {
12054 "name" : "act_34",
12055 "id" : 118,
12056 "runtime_data" : [],
12057 "primitives" : [
12058 {
12059 "op" : "assign",
12060 "parameters" : [
12061 {
12062 "type" : "field",
12063 "value" : ["udp", "len"]
12064 },
12065 {
12066 "type" : "expression",
12067 "value" : {
12068 "type" : "expression",
12069 "value" : {
12070 "op" : "&",
12071 "left" : {
12072 "type" : "expression",
12073 "value" : {
12074 "op" : "+",
12075 "left" : {
12076 "type" : "field",
12077 "value" : ["udp", "len"]
12078 },
12079 "right" : {
12080 "type" : "field",
12081 "value" : ["userMetadata.int_meta", "new_bytes"]
12082 }
12083 }
12084 },
12085 "right" : {
12086 "type" : "hexstr",
12087 "value" : "0xffff"
12088 }
12089 }
12090 }
12091 }
12092 ],
12093 "source_info" : {
12094 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012095 "line" : 387,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012096 "column" : 12,
12097 "source_fragment" : "hdr.udp.len = hdr.udp.len + fmeta.int_meta.new_bytes"
12098 }
12099 }
12100 ]
12101 },
12102 {
12103 "name" : "act_35",
12104 "id" : 119,
12105 "runtime_data" : [],
12106 "primitives" : [
12107 {
12108 "op" : "assign",
12109 "parameters" : [
12110 {
12111 "type" : "field",
12112 "value" : ["intl4_shim", "len_words"]
12113 },
12114 {
12115 "type" : "expression",
12116 "value" : {
12117 "type" : "expression",
12118 "value" : {
12119 "op" : "&",
12120 "left" : {
12121 "type" : "expression",
12122 "value" : {
12123 "op" : "+",
12124 "left" : {
12125 "type" : "field",
12126 "value" : ["intl4_shim", "len_words"]
12127 },
12128 "right" : {
12129 "type" : "field",
12130 "value" : ["userMetadata.int_meta", "new_words"]
12131 }
12132 }
12133 },
12134 "right" : {
12135 "type" : "hexstr",
12136 "value" : "0xff"
12137 }
12138 }
12139 }
12140 }
12141 ],
12142 "source_info" : {
12143 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012144 "line" : 390,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012145 "column" : 12,
12146 "source_fragment" : "hdr.intl4_shim.len_words = hdr.intl4_shim.len_words + fmeta.int_meta.new_words"
12147 }
12148 }
12149 ]
12150 }
12151 ],
12152 "pipelines" : [
12153 {
12154 "name" : "ingress",
12155 "id" : 0,
12156 "source_info" : {
12157 "filename" : "fabric.p4",
12158 "line" : 40,
12159 "column" : 8,
12160 "source_fragment" : "FabricIngress"
12161 },
12162 "init_table" : "tbl_act",
12163 "tables" : [
12164 {
12165 "name" : "tbl_act",
12166 "id" : 0,
12167 "key" : [],
12168 "match_type" : "exact",
12169 "type" : "simple",
12170 "max_size" : 1024,
12171 "with_counters" : false,
12172 "support_timeout" : false,
12173 "direct_meters" : null,
12174 "action_ids" : [40],
12175 "actions" : ["act_0"],
12176 "base_default_next" : "node_3",
12177 "next_tables" : {
12178 "act_0" : "node_3"
12179 },
12180 "default_entry" : {
12181 "action_id" : 40,
12182 "action_const" : true,
12183 "action_data" : [],
12184 "action_entry_const" : true
12185 }
12186 },
12187 {
12188 "name" : "tbl_act_0",
12189 "id" : 1,
12190 "key" : [],
12191 "match_type" : "exact",
12192 "type" : "simple",
12193 "max_size" : 1024,
12194 "with_counters" : false,
12195 "support_timeout" : false,
12196 "direct_meters" : null,
12197 "action_ids" : [39],
12198 "actions" : ["act"],
12199 "base_default_next" : "node_5",
12200 "next_tables" : {
12201 "act" : "node_5"
12202 },
12203 "default_entry" : {
12204 "action_id" : 39,
12205 "action_const" : true,
12206 "action_data" : [],
12207 "action_entry_const" : true
12208 }
12209 },
12210 {
12211 "name" : "tbl_act_1",
12212 "id" : 2,
12213 "key" : [],
12214 "match_type" : "exact",
12215 "type" : "simple",
12216 "max_size" : 1024,
12217 "with_counters" : false,
12218 "support_timeout" : false,
12219 "direct_meters" : null,
12220 "action_ids" : [43],
12221 "actions" : ["act_3"],
12222 "base_default_next" : "node_7",
12223 "next_tables" : {
12224 "act_3" : "node_7"
12225 },
12226 "default_entry" : {
12227 "action_id" : 43,
12228 "action_const" : true,
12229 "action_data" : [],
12230 "action_entry_const" : true
12231 }
12232 },
12233 {
12234 "name" : "tbl_act_2",
12235 "id" : 3,
12236 "key" : [],
12237 "match_type" : "exact",
12238 "type" : "simple",
12239 "max_size" : 1024,
12240 "with_counters" : false,
12241 "support_timeout" : false,
12242 "direct_meters" : null,
12243 "action_ids" : [41],
12244 "actions" : ["act_1"],
12245 "base_default_next" : "node_10",
12246 "next_tables" : {
12247 "act_1" : "node_10"
12248 },
12249 "default_entry" : {
12250 "action_id" : 41,
12251 "action_const" : true,
12252 "action_data" : [],
12253 "action_entry_const" : true
12254 }
12255 },
12256 {
12257 "name" : "tbl_act_3",
12258 "id" : 4,
12259 "key" : [],
12260 "match_type" : "exact",
12261 "type" : "simple",
12262 "max_size" : 1024,
12263 "with_counters" : false,
12264 "support_timeout" : false,
12265 "direct_meters" : null,
12266 "action_ids" : [42],
12267 "actions" : ["act_2"],
12268 "base_default_next" : "node_10",
12269 "next_tables" : {
12270 "act_2" : "node_10"
12271 },
12272 "default_entry" : {
12273 "action_id" : 42,
12274 "action_const" : true,
12275 "action_data" : [],
12276 "action_entry_const" : true
12277 }
12278 },
12279 {
12280 "name" : "tbl_act_4",
12281 "id" : 5,
12282 "key" : [],
12283 "match_type" : "exact",
12284 "type" : "simple",
12285 "max_size" : 1024,
12286 "with_counters" : false,
12287 "support_timeout" : false,
12288 "direct_meters" : null,
12289 "action_ids" : [44],
12290 "actions" : ["act_4"],
12291 "base_default_next" : null,
12292 "next_tables" : {
12293 "act_4" : null
12294 },
12295 "default_entry" : {
12296 "action_id" : 44,
12297 "action_const" : true,
12298 "action_data" : [],
12299 "action_entry_const" : true
12300 }
12301 },
12302 {
12303 "name" : "tbl_act_5",
12304 "id" : 6,
12305 "key" : [],
12306 "match_type" : "exact",
12307 "type" : "simple",
12308 "max_size" : 1024,
12309 "with_counters" : false,
12310 "support_timeout" : false,
12311 "direct_meters" : null,
12312 "action_ids" : [52],
12313 "actions" : ["act_12"],
12314 "base_default_next" : "node_13",
12315 "next_tables" : {
12316 "act_12" : "node_13"
12317 },
12318 "default_entry" : {
12319 "action_id" : 52,
12320 "action_const" : true,
12321 "action_data" : [],
12322 "action_entry_const" : true
12323 }
12324 },
12325 {
12326 "name" : "FabricIngress.spgw_ingress.s1u_filter_table",
12327 "id" : 7,
12328 "source_info" : {
12329 "filename" : "include/spgw.p4",
12330 "line" : 79,
12331 "column" : 10,
12332 "source_fragment" : "s1u_filter_table"
12333 },
12334 "key" : [
12335 {
12336 "match_type" : "exact",
12337 "name" : "gtpu_ipv4.dst_addr",
12338 "target" : ["gtpu_ipv4", "dst_addr"],
12339 "mask" : null
12340 }
12341 ],
12342 "match_type" : "exact",
12343 "type" : "simple",
12344 "max_size" : 1024,
12345 "with_counters" : false,
12346 "support_timeout" : false,
12347 "direct_meters" : null,
12348 "action_ids" : [1],
12349 "actions" : ["NoAction"],
12350 "base_default_next" : null,
12351 "next_tables" : {
12352 "__HIT__" : "tbl_act_6",
12353 "__MISS__" : "tbl_act_7"
12354 },
12355 "default_entry" : {
12356 "action_id" : 1,
12357 "action_const" : false,
12358 "action_data" : [],
12359 "action_entry_const" : false
12360 }
12361 },
12362 {
12363 "name" : "tbl_act_6",
12364 "id" : 8,
12365 "key" : [],
12366 "match_type" : "exact",
12367 "type" : "simple",
12368 "max_size" : 1024,
12369 "with_counters" : false,
12370 "support_timeout" : false,
12371 "direct_meters" : null,
12372 "action_ids" : [45],
12373 "actions" : ["act_5"],
12374 "base_default_next" : "node_17",
12375 "next_tables" : {
12376 "act_5" : "node_17"
12377 },
12378 "default_entry" : {
12379 "action_id" : 45,
12380 "action_const" : true,
12381 "action_data" : [],
12382 "action_entry_const" : true
12383 }
12384 },
12385 {
12386 "name" : "tbl_act_7",
12387 "id" : 9,
12388 "key" : [],
12389 "match_type" : "exact",
12390 "type" : "simple",
12391 "max_size" : 1024,
12392 "with_counters" : false,
12393 "support_timeout" : false,
12394 "direct_meters" : null,
12395 "action_ids" : [46],
12396 "actions" : ["act_6"],
12397 "base_default_next" : "node_17",
12398 "next_tables" : {
12399 "act_6" : "node_17"
12400 },
12401 "default_entry" : {
12402 "action_id" : 46,
12403 "action_const" : true,
12404 "action_data" : [],
12405 "action_entry_const" : true
12406 }
12407 },
12408 {
12409 "name" : "tbl_drop_now",
12410 "id" : 10,
12411 "key" : [],
12412 "match_type" : "exact",
12413 "type" : "simple",
12414 "max_size" : 1024,
12415 "with_counters" : false,
12416 "support_timeout" : false,
12417 "direct_meters" : null,
12418 "action_ids" : [10],
12419 "actions" : ["drop_now"],
12420 "base_default_next" : "tbl_act_8",
12421 "next_tables" : {
12422 "drop_now" : "tbl_act_8"
12423 },
12424 "default_entry" : {
12425 "action_id" : 10,
12426 "action_const" : true,
12427 "action_data" : [],
12428 "action_entry_const" : true
12429 }
12430 },
12431 {
12432 "name" : "tbl_act_8",
12433 "id" : 11,
12434 "key" : [],
12435 "match_type" : "exact",
12436 "type" : "simple",
12437 "max_size" : 1024,
12438 "with_counters" : false,
12439 "support_timeout" : false,
12440 "direct_meters" : null,
12441 "action_ids" : [47],
12442 "actions" : ["act_7"],
12443 "base_default_next" : "tbl_spgw_ingress_gtpu_decap",
12444 "next_tables" : {
12445 "act_7" : "tbl_spgw_ingress_gtpu_decap"
12446 },
12447 "default_entry" : {
12448 "action_id" : 47,
12449 "action_const" : true,
12450 "action_data" : [],
12451 "action_entry_const" : true
12452 }
12453 },
12454 {
12455 "name" : "tbl_spgw_ingress_gtpu_decap",
12456 "id" : 12,
12457 "key" : [],
12458 "match_type" : "exact",
12459 "type" : "simple",
12460 "max_size" : 1024,
12461 "with_counters" : false,
12462 "support_timeout" : false,
12463 "direct_meters" : null,
12464 "action_ids" : [11],
12465 "actions" : ["FabricIngress.spgw_ingress.gtpu_decap"],
12466 "base_default_next" : "node_27",
12467 "next_tables" : {
12468 "FabricIngress.spgw_ingress.gtpu_decap" : "node_27"
12469 },
12470 "default_entry" : {
12471 "action_id" : 11,
12472 "action_const" : true,
12473 "action_data" : [],
12474 "action_entry_const" : true
12475 }
12476 },
12477 {
12478 "name" : "FabricIngress.spgw_ingress.dl_sess_lookup",
12479 "id" : 13,
12480 "source_info" : {
12481 "filename" : "include/spgw.p4",
12482 "line" : 68,
12483 "column" : 10,
12484 "source_fragment" : "dl_sess_lookup"
12485 },
12486 "key" : [
12487 {
12488 "match_type" : "exact",
12489 "name" : "ipv4.dst_addr",
12490 "target" : ["ipv4", "dst_addr"],
12491 "mask" : null
12492 }
12493 ],
12494 "match_type" : "exact",
12495 "type" : "simple",
12496 "max_size" : 1024,
12497 "with_counters" : true,
12498 "support_timeout" : false,
12499 "direct_meters" : null,
12500 "action_ids" : [12, 0],
12501 "actions" : ["FabricIngress.spgw_ingress.set_dl_sess_info", "NoAction"],
12502 "base_default_next" : null,
12503 "next_tables" : {
12504 "__HIT__" : "tbl_act_9",
12505 "__MISS__" : "tbl_act_10"
12506 },
12507 "default_entry" : {
12508 "action_id" : 0,
12509 "action_const" : false,
12510 "action_data" : [],
12511 "action_entry_const" : false
12512 }
12513 },
12514 {
12515 "name" : "tbl_act_9",
12516 "id" : 14,
12517 "key" : [],
12518 "match_type" : "exact",
12519 "type" : "simple",
12520 "max_size" : 1024,
12521 "with_counters" : false,
12522 "support_timeout" : false,
12523 "direct_meters" : null,
12524 "action_ids" : [48],
12525 "actions" : ["act_8"],
12526 "base_default_next" : "node_24",
12527 "next_tables" : {
12528 "act_8" : "node_24"
12529 },
12530 "default_entry" : {
12531 "action_id" : 48,
12532 "action_const" : true,
12533 "action_data" : [],
12534 "action_entry_const" : true
12535 }
12536 },
12537 {
12538 "name" : "tbl_act_10",
12539 "id" : 15,
12540 "key" : [],
12541 "match_type" : "exact",
12542 "type" : "simple",
12543 "max_size" : 1024,
12544 "with_counters" : false,
12545 "support_timeout" : false,
12546 "direct_meters" : null,
12547 "action_ids" : [49],
12548 "actions" : ["act_9"],
12549 "base_default_next" : "node_24",
12550 "next_tables" : {
12551 "act_9" : "node_24"
12552 },
12553 "default_entry" : {
12554 "action_id" : 49,
12555 "action_const" : true,
12556 "action_data" : [],
12557 "action_entry_const" : true
12558 }
12559 },
12560 {
12561 "name" : "tbl_act_11",
12562 "id" : 16,
12563 "key" : [],
12564 "match_type" : "exact",
12565 "type" : "simple",
12566 "max_size" : 1024,
12567 "with_counters" : false,
12568 "support_timeout" : false,
12569 "direct_meters" : null,
12570 "action_ids" : [50],
12571 "actions" : ["act_10"],
12572 "base_default_next" : "node_27",
12573 "next_tables" : {
12574 "act_10" : "node_27"
12575 },
12576 "default_entry" : {
12577 "action_id" : 50,
12578 "action_const" : true,
12579 "action_data" : [],
12580 "action_entry_const" : true
12581 }
12582 },
12583 {
12584 "name" : "tbl_act_12",
12585 "id" : 17,
12586 "key" : [],
12587 "match_type" : "exact",
12588 "type" : "simple",
12589 "max_size" : 1024,
12590 "with_counters" : false,
12591 "support_timeout" : false,
12592 "direct_meters" : null,
12593 "action_ids" : [51],
12594 "actions" : ["act_11"],
12595 "base_default_next" : "node_27",
12596 "next_tables" : {
12597 "act_11" : "node_27"
12598 },
12599 "default_entry" : {
12600 "action_id" : 51,
12601 "action_const" : true,
12602 "action_data" : [],
12603 "action_entry_const" : true
12604 }
12605 },
12606 {
12607 "name" : "tbl_act_13",
12608 "id" : 18,
12609 "key" : [],
12610 "match_type" : "exact",
12611 "type" : "simple",
12612 "max_size" : 1024,
12613 "with_counters" : false,
12614 "support_timeout" : false,
12615 "direct_meters" : null,
12616 "action_ids" : [53],
12617 "actions" : ["act_13"],
12618 "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
12619 "next_tables" : {
12620 "act_13" : "FabricIngress.filtering.ingress_port_vlan"
12621 },
12622 "default_entry" : {
12623 "action_id" : 53,
12624 "action_const" : true,
12625 "action_data" : [],
12626 "action_entry_const" : true
12627 }
12628 },
12629 {
12630 "name" : "FabricIngress.filtering.ingress_port_vlan",
12631 "id" : 19,
12632 "source_info" : {
12633 "filename" : "include/control/filtering.p4",
12634 "line" : 66,
12635 "column" : 10,
12636 "source_fragment" : "ingress_port_vlan"
12637 },
12638 "key" : [
12639 {
12640 "match_type" : "exact",
12641 "name" : "standard_metadata.ingress_port",
12642 "target" : ["standard_metadata", "ingress_port"],
12643 "mask" : null
12644 },
12645 {
12646 "match_type" : "exact",
12647 "name" : "hdr.vlan_tag.is_valid",
12648 "target" : ["vlan_tag", "$valid$"],
12649 "mask" : null
12650 },
12651 {
12652 "match_type" : "ternary",
12653 "name" : "hdr.vlan_tag.vlan_id",
12654 "target" : ["vlan_tag", "vlan_id"],
12655 "mask" : null
12656 }
12657 ],
12658 "match_type" : "ternary",
12659 "type" : "simple",
12660 "max_size" : 1024,
12661 "with_counters" : true,
12662 "support_timeout" : false,
12663 "direct_meters" : null,
12664 "action_ids" : [16, 15, 14, 17],
12665 "actions" : ["FabricIngress.filtering.push_internal_vlan", "FabricIngress.filtering.set_vlan", "FabricIngress.filtering.drop", "FabricIngress.filtering.nop_ingress_port_vlan"],
12666 "base_default_next" : null,
12667 "next_tables" : {
12668 "__HIT__" : "tbl_act_14",
12669 "__MISS__" : "tbl_act_15"
12670 },
12671 "default_entry" : {
12672 "action_id" : 16,
12673 "action_const" : true,
12674 "action_data" : ["0xffe"],
12675 "action_entry_const" : true
12676 }
12677 },
12678 {
12679 "name" : "tbl_act_14",
12680 "id" : 20,
12681 "key" : [],
12682 "match_type" : "exact",
12683 "type" : "simple",
12684 "max_size" : 1024,
12685 "with_counters" : false,
12686 "support_timeout" : false,
12687 "direct_meters" : null,
12688 "action_ids" : [54],
12689 "actions" : ["act_14"],
12690 "base_default_next" : "node_32",
12691 "next_tables" : {
12692 "act_14" : "node_32"
12693 },
12694 "default_entry" : {
12695 "action_id" : 54,
12696 "action_const" : true,
12697 "action_data" : [],
12698 "action_entry_const" : true
12699 }
12700 },
12701 {
12702 "name" : "tbl_act_15",
12703 "id" : 21,
12704 "key" : [],
12705 "match_type" : "exact",
12706 "type" : "simple",
12707 "max_size" : 1024,
12708 "with_counters" : false,
12709 "support_timeout" : false,
12710 "direct_meters" : null,
12711 "action_ids" : [55],
12712 "actions" : ["act_15"],
12713 "base_default_next" : "node_32",
12714 "next_tables" : {
12715 "act_15" : "node_32"
12716 },
12717 "default_entry" : {
12718 "action_id" : 55,
12719 "action_const" : true,
12720 "action_data" : [],
12721 "action_entry_const" : true
12722 }
12723 },
12724 {
12725 "name" : "FabricIngress.filtering.fwd_classifier",
12726 "id" : 22,
12727 "source_info" : {
12728 "filename" : "include/control/filtering.p4",
12729 "line" : 103,
12730 "column" : 10,
12731 "source_fragment" : "fwd_classifier"
12732 },
12733 "key" : [
12734 {
12735 "match_type" : "exact",
12736 "name" : "standard_metadata.ingress_port",
12737 "target" : ["standard_metadata", "ingress_port"],
12738 "mask" : null
12739 },
12740 {
12741 "match_type" : "ternary",
12742 "name" : "hdr.ethernet.dst_addr",
12743 "target" : ["ethernet", "dst_addr"],
12744 "mask" : null
12745 },
12746 {
12747 "match_type" : "exact",
12748 "name" : "hdr.vlan_tag.ether_type",
12749 "target" : ["vlan_tag", "ether_type"],
12750 "mask" : null
12751 }
12752 ],
12753 "match_type" : "ternary",
12754 "type" : "simple",
12755 "max_size" : 1024,
12756 "with_counters" : true,
12757 "support_timeout" : false,
12758 "direct_meters" : null,
12759 "action_ids" : [18],
12760 "actions" : ["FabricIngress.filtering.set_forwarding_type"],
12761 "base_default_next" : "node_35",
12762 "next_tables" : {
12763 "FabricIngress.filtering.set_forwarding_type" : "node_35"
12764 },
12765 "default_entry" : {
12766 "action_id" : 18,
12767 "action_const" : true,
12768 "action_data" : ["0x0"],
12769 "action_entry_const" : true
12770 }
12771 },
12772 {
12773 "name" : "tbl_act_16",
12774 "id" : 23,
12775 "key" : [],
12776 "match_type" : "exact",
12777 "type" : "simple",
12778 "max_size" : 1024,
12779 "with_counters" : false,
12780 "support_timeout" : false,
12781 "direct_meters" : null,
12782 "action_ids" : [56],
12783 "actions" : ["act_16"],
12784 "base_default_next" : "node_35",
12785 "next_tables" : {
12786 "act_16" : "node_35"
12787 },
12788 "default_entry" : {
12789 "action_id" : 56,
12790 "action_const" : true,
12791 "action_data" : [],
12792 "action_entry_const" : true
12793 }
12794 },
12795 {
12796 "name" : "FabricIngress.forwarding.bridging",
12797 "id" : 24,
12798 "source_info" : {
12799 "filename" : "include/control/forwarding.p4",
12800 "line" : 41,
12801 "column" : 10,
12802 "source_fragment" : "bridging"
12803 },
12804 "key" : [
12805 {
12806 "match_type" : "exact",
12807 "name" : "hdr.vlan_tag.vlan_id",
12808 "target" : ["vlan_tag", "vlan_id"],
12809 "mask" : null
12810 },
12811 {
12812 "match_type" : "ternary",
12813 "name" : "hdr.ethernet.dst_addr",
12814 "target" : ["ethernet", "dst_addr"],
12815 "mask" : null
12816 }
12817 ],
12818 "match_type" : "ternary",
12819 "type" : "simple",
12820 "max_size" : 1024,
12821 "with_counters" : true,
12822 "support_timeout" : false,
12823 "direct_meters" : null,
12824 "action_ids" : [19, 3],
12825 "actions" : ["FabricIngress.forwarding.set_next_id_bridging", "NoAction"],
12826 "base_default_next" : "FabricIngress.forwarding.acl",
12827 "next_tables" : {
12828 "FabricIngress.forwarding.set_next_id_bridging" : "FabricIngress.forwarding.acl",
12829 "NoAction" : "FabricIngress.forwarding.acl"
12830 },
12831 "default_entry" : {
12832 "action_id" : 3,
12833 "action_const" : false,
12834 "action_data" : [],
12835 "action_entry_const" : false
12836 }
12837 },
12838 {
12839 "name" : "FabricIngress.forwarding.mpls",
12840 "id" : 25,
12841 "source_info" : {
12842 "filename" : "include/control/forwarding.p4",
12843 "line" : 65,
12844 "column" : 10,
12845 "source_fragment" : "mpls"
12846 },
12847 "key" : [
12848 {
12849 "match_type" : "exact",
12850 "name" : "hdr.mpls.label",
12851 "target" : ["mpls", "label"],
12852 "mask" : null
12853 }
12854 ],
12855 "match_type" : "exact",
12856 "type" : "simple",
12857 "max_size" : 1024,
12858 "with_counters" : true,
12859 "support_timeout" : false,
12860 "direct_meters" : null,
12861 "action_ids" : [20, 4],
12862 "actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "NoAction"],
12863 "base_default_next" : "tbl_act_17",
12864 "next_tables" : {
12865 "FabricIngress.forwarding.pop_mpls_and_next" : "tbl_act_17",
12866 "NoAction" : "tbl_act_17"
12867 },
12868 "default_entry" : {
12869 "action_id" : 4,
12870 "action_const" : false,
12871 "action_data" : [],
12872 "action_entry_const" : false
12873 }
12874 },
12875 {
12876 "name" : "tbl_act_17",
12877 "id" : 26,
12878 "key" : [],
12879 "match_type" : "exact",
12880 "type" : "simple",
12881 "max_size" : 1024,
12882 "with_counters" : false,
12883 "support_timeout" : false,
12884 "direct_meters" : null,
12885 "action_ids" : [57],
12886 "actions" : ["act_17"],
12887 "base_default_next" : "FabricIngress.forwarding.acl",
12888 "next_tables" : {
12889 "act_17" : "FabricIngress.forwarding.acl"
12890 },
12891 "default_entry" : {
12892 "action_id" : 57,
12893 "action_const" : true,
12894 "action_data" : [],
12895 "action_entry_const" : true
12896 }
12897 },
12898 {
12899 "name" : "FabricIngress.forwarding.routing_v4",
12900 "id" : 27,
12901 "source_info" : {
12902 "filename" : "include/control/forwarding.p4",
12903 "line" : 91,
12904 "column" : 10,
12905 "source_fragment" : "routing_v4"
12906 },
12907 "key" : [
12908 {
12909 "match_type" : "lpm",
12910 "name" : "hdr.ipv4.dst_addr",
12911 "target" : ["ipv4", "dst_addr"],
12912 "mask" : null
12913 }
12914 ],
12915 "match_type" : "lpm",
12916 "type" : "simple",
12917 "max_size" : 1024,
12918 "with_counters" : true,
12919 "support_timeout" : false,
12920 "direct_meters" : null,
12921 "action_ids" : [21, 22, 5],
12922 "actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "NoAction"],
12923 "base_default_next" : "FabricIngress.forwarding.acl",
12924 "next_tables" : {
12925 "FabricIngress.forwarding.set_next_id_routing_v4" : "FabricIngress.forwarding.acl",
12926 "FabricIngress.forwarding.nop_routing_v4" : "FabricIngress.forwarding.acl",
12927 "NoAction" : "FabricIngress.forwarding.acl"
12928 },
12929 "default_entry" : {
12930 "action_id" : 5,
12931 "action_const" : false,
12932 "action_data" : [],
12933 "action_entry_const" : false
12934 }
12935 },
12936 {
12937 "name" : "FabricIngress.forwarding.acl",
12938 "id" : 28,
12939 "source_info" : {
12940 "filename" : "include/control/forwarding.p4",
12941 "line" : 136,
12942 "column" : 10,
12943 "source_fragment" : "acl"
12944 },
12945 "key" : [
12946 {
12947 "match_type" : "ternary",
12948 "name" : "standard_metadata.ingress_port",
12949 "target" : ["standard_metadata", "ingress_port"],
12950 "mask" : null
12951 },
12952 {
12953 "match_type" : "ternary",
12954 "name" : "fabric_metadata.ip_proto",
12955 "target" : ["scalars", "fabric_metadata_t.ip_proto"],
12956 "mask" : null
12957 },
12958 {
12959 "match_type" : "ternary",
12960 "name" : "fabric_metadata.l4_src_port",
12961 "target" : ["scalars", "fabric_metadata_t.l4_src_port"],
12962 "mask" : null
12963 },
12964 {
12965 "match_type" : "ternary",
12966 "name" : "fabric_metadata.l4_dst_port",
12967 "target" : ["scalars", "fabric_metadata_t.l4_dst_port"],
12968 "mask" : null
12969 },
12970 {
12971 "match_type" : "ternary",
12972 "name" : "hdr.ethernet.dst_addr",
12973 "target" : ["ethernet", "dst_addr"],
12974 "mask" : null
12975 },
12976 {
12977 "match_type" : "ternary",
12978 "name" : "hdr.ethernet.src_addr",
12979 "target" : ["ethernet", "src_addr"],
12980 "mask" : null
12981 },
12982 {
12983 "match_type" : "ternary",
12984 "name" : "hdr.vlan_tag.vlan_id",
12985 "target" : ["vlan_tag", "vlan_id"],
12986 "mask" : null
12987 },
12988 {
12989 "match_type" : "ternary",
12990 "name" : "hdr.vlan_tag.ether_type",
12991 "target" : ["vlan_tag", "ether_type"],
12992 "mask" : null
12993 },
12994 {
12995 "match_type" : "ternary",
12996 "name" : "hdr.ipv4.src_addr",
12997 "target" : ["ipv4", "src_addr"],
12998 "mask" : null
12999 },
13000 {
13001 "match_type" : "ternary",
13002 "name" : "hdr.ipv4.dst_addr",
13003 "target" : ["ipv4", "dst_addr"],
13004 "mask" : null
13005 },
13006 {
13007 "match_type" : "ternary",
13008 "name" : "hdr.icmp.icmp_type",
13009 "target" : ["icmp", "icmp_type"],
13010 "mask" : null
13011 },
13012 {
13013 "match_type" : "ternary",
13014 "name" : "hdr.icmp.icmp_code",
13015 "target" : ["icmp", "icmp_code"],
13016 "mask" : null
13017 }
13018 ],
13019 "match_type" : "ternary",
13020 "type" : "simple",
13021 "max_size" : 128,
13022 "with_counters" : true,
13023 "support_timeout" : false,
13024 "direct_meters" : null,
13025 "action_ids" : [23, 24, 25, 26, 27],
13026 "actions" : ["FabricIngress.forwarding.set_next_id_acl", "FabricIngress.forwarding.punt_to_cpu", "FabricIngress.forwarding.clone_to_cpu", "FabricIngress.forwarding.drop", "FabricIngress.forwarding.nop_acl"],
13027 "base_default_next" : "tbl_act_18",
13028 "next_tables" : {
13029 "FabricIngress.forwarding.set_next_id_acl" : "tbl_act_18",
13030 "FabricIngress.forwarding.punt_to_cpu" : "tbl_act_18",
13031 "FabricIngress.forwarding.clone_to_cpu" : "tbl_act_18",
13032 "FabricIngress.forwarding.drop" : "tbl_act_18",
13033 "FabricIngress.forwarding.nop_acl" : "tbl_act_18"
13034 },
13035 "default_entry" : {
13036 "action_id" : 27,
13037 "action_const" : true,
13038 "action_data" : [],
13039 "action_entry_const" : true
13040 }
13041 },
13042 {
13043 "name" : "tbl_act_18",
13044 "id" : 29,
13045 "key" : [],
13046 "match_type" : "exact",
13047 "type" : "simple",
13048 "max_size" : 1024,
13049 "with_counters" : false,
13050 "support_timeout" : false,
13051 "direct_meters" : null,
13052 "action_ids" : [58],
13053 "actions" : ["act_18"],
13054 "base_default_next" : "FabricIngress.next.vlan_meta",
13055 "next_tables" : {
13056 "act_18" : "FabricIngress.next.vlan_meta"
13057 },
13058 "default_entry" : {
13059 "action_id" : 58,
13060 "action_const" : true,
13061 "action_data" : [],
13062 "action_entry_const" : true
13063 }
13064 },
13065 {
13066 "name" : "FabricIngress.next.vlan_meta",
13067 "id" : 30,
13068 "source_info" : {
13069 "filename" : "include/control/next.p4",
13070 "line" : 65,
13071 "column" : 10,
13072 "source_fragment" : "vlan_meta"
13073 },
13074 "key" : [
13075 {
13076 "match_type" : "exact",
13077 "name" : "fabric_metadata.next_id",
13078 "target" : ["scalars", "fabric_metadata_t.next_id"],
13079 "mask" : null
13080 }
13081 ],
13082 "match_type" : "exact",
13083 "type" : "simple",
13084 "max_size" : 1024,
13085 "with_counters" : true,
13086 "support_timeout" : false,
13087 "direct_meters" : null,
13088 "action_ids" : [28, 9],
13089 "actions" : ["FabricIngress.next.set_vlan", "nop"],
13090 "base_default_next" : "FabricIngress.next.simple",
13091 "next_tables" : {
13092 "FabricIngress.next.set_vlan" : "FabricIngress.next.simple",
13093 "nop" : "FabricIngress.next.simple"
13094 },
13095 "default_entry" : {
13096 "action_id" : 9,
13097 "action_const" : false,
13098 "action_data" : [],
13099 "action_entry_const" : false
13100 }
13101 },
13102 {
13103 "name" : "FabricIngress.next.simple",
13104 "id" : 31,
13105 "source_info" : {
13106 "filename" : "include/control/next.p4",
13107 "line" : 122,
13108 "column" : 10,
13109 "source_fragment" : "simple"
13110 },
13111 "key" : [
13112 {
13113 "match_type" : "exact",
13114 "name" : "fabric_metadata.next_id",
13115 "target" : ["scalars", "fabric_metadata_t.next_id"],
13116 "mask" : null
13117 }
13118 ],
13119 "match_type" : "exact",
13120 "type" : "simple",
13121 "max_size" : 1024,
13122 "with_counters" : true,
13123 "support_timeout" : false,
13124 "direct_meters" : null,
13125 "action_ids" : [29, 30, 31, 32, 33, 34, 6],
13126 "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"],
13127 "base_default_next" : null,
13128 "next_tables" : {
13129 "__HIT__" : "tbl_act_19",
13130 "__MISS__" : "tbl_act_20"
13131 },
13132 "default_entry" : {
13133 "action_id" : 6,
13134 "action_const" : false,
13135 "action_data" : [],
13136 "action_entry_const" : false
13137 }
13138 },
13139 {
13140 "name" : "tbl_act_19",
13141 "id" : 32,
13142 "key" : [],
13143 "match_type" : "exact",
13144 "type" : "simple",
13145 "max_size" : 1024,
13146 "with_counters" : false,
13147 "support_timeout" : false,
13148 "direct_meters" : null,
13149 "action_ids" : [59],
13150 "actions" : ["act_19"],
13151 "base_default_next" : "node_48",
13152 "next_tables" : {
13153 "act_19" : "node_48"
13154 },
13155 "default_entry" : {
13156 "action_id" : 59,
13157 "action_const" : true,
13158 "action_data" : [],
13159 "action_entry_const" : true
13160 }
13161 },
13162 {
13163 "name" : "tbl_act_20",
13164 "id" : 33,
13165 "key" : [],
13166 "match_type" : "exact",
13167 "type" : "simple",
13168 "max_size" : 1024,
13169 "with_counters" : false,
13170 "support_timeout" : false,
13171 "direct_meters" : null,
13172 "action_ids" : [60],
13173 "actions" : ["act_20"],
13174 "base_default_next" : "node_48",
13175 "next_tables" : {
13176 "act_20" : "node_48"
13177 },
13178 "default_entry" : {
13179 "action_id" : 60,
13180 "action_const" : true,
13181 "action_data" : [],
13182 "action_entry_const" : true
13183 }
13184 },
13185 {
13186 "name" : "FabricIngress.next.hashed",
13187 "id" : 34,
13188 "source_info" : {
13189 "filename" : "include/control/next.p4",
13190 "line" : 175,
13191 "column" : 10,
13192 "source_fragment" : "hashed"
13193 },
13194 "key" : [
13195 {
13196 "match_type" : "exact",
13197 "name" : "fabric_metadata.next_id",
13198 "target" : ["scalars", "fabric_metadata_t.next_id"],
13199 "mask" : null
13200 }
13201 ],
13202 "match_type" : "exact",
13203 "type" : "indirect_ws",
13204 "action_profile" : "FabricIngress.next.ecmp_selector",
13205 "max_size" : 1024,
13206 "with_counters" : true,
13207 "support_timeout" : false,
13208 "direct_meters" : null,
13209 "action_ids" : [35, 36, 37, 7],
13210 "actions" : ["FabricIngress.next.l3_routing_hashed", "FabricIngress.next.mpls_routing_v4_hashed", "FabricIngress.next.mpls_routing_v6_hashed", "NoAction"],
13211 "base_default_next" : null,
13212 "next_tables" : {
13213 "__HIT__" : "tbl_act_21",
13214 "__MISS__" : "tbl_act_22"
13215 }
13216 },
13217 {
13218 "name" : "tbl_act_21",
13219 "id" : 35,
13220 "key" : [],
13221 "match_type" : "exact",
13222 "type" : "simple",
13223 "max_size" : 1024,
13224 "with_counters" : false,
13225 "support_timeout" : false,
13226 "direct_meters" : null,
13227 "action_ids" : [61],
13228 "actions" : ["act_21"],
13229 "base_default_next" : "node_52",
13230 "next_tables" : {
13231 "act_21" : "node_52"
13232 },
13233 "default_entry" : {
13234 "action_id" : 61,
13235 "action_const" : true,
13236 "action_data" : [],
13237 "action_entry_const" : true
13238 }
13239 },
13240 {
13241 "name" : "tbl_act_22",
13242 "id" : 36,
13243 "key" : [],
13244 "match_type" : "exact",
13245 "type" : "simple",
13246 "max_size" : 1024,
13247 "with_counters" : false,
13248 "support_timeout" : false,
13249 "direct_meters" : null,
13250 "action_ids" : [62],
13251 "actions" : ["act_22"],
13252 "base_default_next" : "node_52",
13253 "next_tables" : {
13254 "act_22" : "node_52"
13255 },
13256 "default_entry" : {
13257 "action_id" : 62,
13258 "action_const" : true,
13259 "action_data" : [],
13260 "action_entry_const" : true
13261 }
13262 },
13263 {
13264 "name" : "FabricIngress.next.multicast",
13265 "id" : 37,
13266 "source_info" : {
13267 "filename" : "include/control/next.p4",
13268 "line" : 207,
13269 "column" : 10,
13270 "source_fragment" : "multicast"
13271 },
13272 "key" : [
13273 {
13274 "match_type" : "exact",
13275 "name" : "fabric_metadata.next_id",
13276 "target" : ["scalars", "fabric_metadata_t.next_id"],
13277 "mask" : null
13278 }
13279 ],
13280 "match_type" : "exact",
13281 "type" : "simple",
13282 "max_size" : 1024,
13283 "with_counters" : true,
13284 "support_timeout" : false,
13285 "direct_meters" : null,
13286 "action_ids" : [38, 8],
13287 "actions" : ["FabricIngress.next.set_mcast_group", "NoAction"],
13288 "base_default_next" : null,
13289 "next_tables" : {
13290 "__HIT__" : "tbl_act_23",
13291 "__MISS__" : "tbl_act_24"
13292 },
13293 "default_entry" : {
13294 "action_id" : 8,
13295 "action_const" : false,
13296 "action_data" : [],
13297 "action_entry_const" : false
13298 }
13299 },
13300 {
13301 "name" : "tbl_act_23",
13302 "id" : 38,
13303 "key" : [],
13304 "match_type" : "exact",
13305 "type" : "simple",
13306 "max_size" : 1024,
13307 "with_counters" : false,
13308 "support_timeout" : false,
13309 "direct_meters" : null,
13310 "action_ids" : [63],
13311 "actions" : ["act_23"],
13312 "base_default_next" : "node_56",
13313 "next_tables" : {
13314 "act_23" : "node_56"
13315 },
13316 "default_entry" : {
13317 "action_id" : 63,
13318 "action_const" : true,
13319 "action_data" : [],
13320 "action_entry_const" : true
13321 }
13322 },
13323 {
13324 "name" : "tbl_act_24",
13325 "id" : 39,
13326 "key" : [],
13327 "match_type" : "exact",
13328 "type" : "simple",
13329 "max_size" : 1024,
13330 "with_counters" : false,
13331 "support_timeout" : false,
13332 "direct_meters" : null,
13333 "action_ids" : [64],
13334 "actions" : ["act_24"],
13335 "base_default_next" : "node_56",
13336 "next_tables" : {
13337 "act_24" : "node_56"
13338 },
13339 "default_entry" : {
13340 "action_id" : 64,
13341 "action_const" : true,
13342 "action_data" : [],
13343 "action_entry_const" : true
13344 }
13345 },
13346 {
13347 "name" : "tbl_act_25",
13348 "id" : 40,
13349 "key" : [],
13350 "match_type" : "exact",
13351 "type" : "simple",
13352 "max_size" : 1024,
13353 "with_counters" : false,
13354 "support_timeout" : false,
13355 "direct_meters" : null,
13356 "action_ids" : [65],
13357 "actions" : ["act_25"],
13358 "base_default_next" : "node_58",
13359 "next_tables" : {
13360 "act_25" : "node_58"
13361 },
13362 "default_entry" : {
13363 "action_id" : 65,
13364 "action_const" : true,
13365 "action_data" : [],
13366 "action_entry_const" : true
13367 }
13368 },
13369 {
13370 "name" : "tbl_act_26",
13371 "id" : 41,
13372 "key" : [],
13373 "match_type" : "exact",
13374 "type" : "simple",
13375 "max_size" : 1024,
13376 "with_counters" : false,
13377 "support_timeout" : false,
13378 "direct_meters" : null,
13379 "action_ids" : [66],
13380 "actions" : ["act_26"],
13381 "base_default_next" : "node_62",
13382 "next_tables" : {
13383 "act_26" : "node_62"
13384 },
13385 "default_entry" : {
13386 "action_id" : 66,
13387 "action_const" : true,
13388 "action_data" : [],
13389 "action_entry_const" : true
13390 }
13391 },
13392 {
13393 "name" : "tbl_act_27",
13394 "id" : 42,
13395 "key" : [],
13396 "match_type" : "exact",
13397 "type" : "simple",
13398 "max_size" : 1024,
13399 "with_counters" : false,
13400 "support_timeout" : false,
13401 "direct_meters" : null,
13402 "action_ids" : [67],
13403 "actions" : ["act_27"],
13404 "base_default_next" : "node_64",
13405 "next_tables" : {
13406 "act_27" : "node_64"
13407 },
13408 "default_entry" : {
13409 "action_id" : 67,
13410 "action_const" : true,
13411 "action_data" : [],
13412 "action_entry_const" : true
13413 }
13414 },
13415 {
13416 "name" : "tbl_act_28",
13417 "id" : 43,
13418 "key" : [],
13419 "match_type" : "exact",
13420 "type" : "simple",
13421 "max_size" : 1024,
13422 "with_counters" : false,
13423 "support_timeout" : false,
13424 "direct_meters" : null,
13425 "action_ids" : [68],
13426 "actions" : ["act_28"],
13427 "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
13428 "next_tables" : {
13429 "act_28" : "FabricIngress.process_set_source_sink.tb_set_source"
13430 },
13431 "default_entry" : {
13432 "action_id" : 68,
13433 "action_const" : true,
13434 "action_data" : [],
13435 "action_entry_const" : true
13436 }
13437 },
13438 {
13439 "name" : "FabricIngress.process_set_source_sink.tb_set_source",
13440 "id" : 44,
13441 "source_info" : {
13442 "filename" : "include/int/int_main.p4",
13443 "line" : 46,
13444 "column" : 10,
13445 "source_fragment" : "tb_set_source"
13446 },
13447 "key" : [
13448 {
13449 "match_type" : "exact",
13450 "name" : "standard_metadata.ingress_port",
13451 "target" : ["standard_metadata", "ingress_port"],
13452 "mask" : null
13453 }
13454 ],
13455 "match_type" : "exact",
13456 "type" : "simple",
13457 "max_size" : 511,
13458 "with_counters" : true,
13459 "support_timeout" : false,
13460 "direct_meters" : null,
13461 "action_ids" : [13, 2],
13462 "actions" : ["FabricIngress.process_set_source_sink.int_set_source", "NoAction"],
13463 "base_default_next" : null,
13464 "next_tables" : {
13465 "FabricIngress.process_set_source_sink.int_set_source" : null,
13466 "NoAction" : null
13467 },
13468 "default_entry" : {
13469 "action_id" : 2,
13470 "action_const" : false,
13471 "action_data" : [],
13472 "action_entry_const" : false
13473 }
13474 }
13475 ],
13476 "action_profiles" : [
13477 {
13478 "name" : "FabricIngress.next.ecmp_selector",
13479 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013480 "source_info" : {
13481 "filename" : "include/control/next.p4",
13482 "line" : 145,
13483 "column" : 55,
13484 "source_fragment" : "ecmp_selector"
13485 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013486 "max_size" : 64,
13487 "selector" : {
13488 "algo" : "crc16",
13489 "input" : [
13490 {
13491 "type" : "field",
13492 "value" : ["ipv4", "dst_addr"]
13493 },
13494 {
13495 "type" : "field",
13496 "value" : ["ipv4", "src_addr"]
13497 },
13498 {
13499 "type" : "field",
13500 "value" : ["scalars", "fabric_metadata_t.ip_proto"]
13501 },
13502 {
13503 "type" : "field",
13504 "value" : ["scalars", "fabric_metadata_t.l4_src_port"]
13505 },
13506 {
13507 "type" : "field",
13508 "value" : ["scalars", "fabric_metadata_t.l4_dst_port"]
13509 }
13510 ]
13511 }
13512 }
13513 ],
13514 "conditionals" : [
13515 {
13516 "name" : "node_3",
13517 "id" : 0,
13518 "source_info" : {
13519 "filename" : "include/spgw.p4",
13520 "line" : 30,
13521 "column" : 12,
13522 "source_fragment" : "! is_gtpu_encapped"
13523 },
13524 "expression" : {
13525 "type" : "expression",
13526 "value" : {
13527 "op" : "not",
13528 "left" : null,
13529 "right" : {
13530 "type" : "expression",
13531 "value" : {
13532 "op" : "d2b",
13533 "left" : null,
13534 "right" : {
13535 "type" : "field",
13536 "value" : ["gtpu", "$valid$"]
13537 }
13538 }
13539 }
13540 }
13541 },
13542 "true_next" : "tbl_act_0",
13543 "false_next" : "node_5"
13544 },
13545 {
13546 "name" : "node_5",
13547 "id" : 1,
13548 "expression" : {
13549 "type" : "expression",
13550 "value" : {
13551 "op" : "not",
13552 "left" : null,
13553 "right" : {
13554 "type" : "expression",
13555 "value" : {
13556 "op" : "d2b",
13557 "left" : null,
13558 "right" : {
13559 "type" : "field",
13560 "value" : ["scalars", "spgw_normalizer_hasReturned_0"]
13561 }
13562 }
13563 }
13564 }
13565 },
13566 "true_next" : "tbl_act_1",
13567 "false_next" : "node_10"
13568 },
13569 {
13570 "name" : "node_7",
13571 "id" : 2,
13572 "source_info" : {
13573 "filename" : "include/spgw.p4",
13574 "line" : 34,
13575 "column" : 12,
13576 "source_fragment" : "inner_udp.isValid()"
13577 },
13578 "expression" : {
13579 "type" : "expression",
13580 "value" : {
13581 "op" : "d2b",
13582 "left" : null,
13583 "right" : {
13584 "type" : "field",
13585 "value" : ["inner_udp", "$valid$"]
13586 }
13587 }
13588 },
13589 "true_next" : "tbl_act_2",
13590 "false_next" : "tbl_act_3"
13591 },
13592 {
13593 "name" : "node_10",
13594 "id" : 3,
13595 "source_info" : {
13596 "filename" : "include/control/packetio.p4",
13597 "line" : 25,
13598 "column" : 12,
13599 "source_fragment" : "hdr.packet_out.isValid()"
13600 },
13601 "expression" : {
13602 "type" : "expression",
13603 "value" : {
13604 "op" : "d2b",
13605 "left" : null,
13606 "right" : {
13607 "type" : "field",
13608 "value" : ["packet_out", "$valid$"]
13609 }
13610 }
13611 },
13612 "true_next" : "tbl_act_4",
13613 "false_next" : "tbl_act_5"
13614 },
13615 {
13616 "name" : "node_13",
13617 "id" : 4,
13618 "source_info" : {
13619 "filename" : "include/spgw.p4",
13620 "line" : 139,
13621 "column" : 12,
13622 "source_fragment" : "gtpu.isValid()"
13623 },
13624 "expression" : {
13625 "type" : "expression",
13626 "value" : {
13627 "op" : "d2b",
13628 "left" : null,
13629 "right" : {
13630 "type" : "field",
13631 "value" : ["gtpu", "$valid$"]
13632 }
13633 }
13634 },
13635 "true_next" : "FabricIngress.spgw_ingress.s1u_filter_table",
13636 "false_next" : "FabricIngress.spgw_ingress.dl_sess_lookup"
13637 },
13638 {
13639 "name" : "node_17",
13640 "id" : 5,
13641 "source_info" : {
13642 "filename" : "include/spgw.p4",
13643 "line" : 143,
13644 "column" : 16,
13645 "source_fragment" : "!s1u_filter_table.apply().hit"
13646 },
13647 "expression" : {
13648 "type" : "expression",
13649 "value" : {
13650 "op" : "not",
13651 "left" : null,
13652 "right" : {
13653 "type" : "expression",
13654 "value" : {
13655 "op" : "d2b",
13656 "left" : null,
13657 "right" : {
13658 "type" : "field",
13659 "value" : ["scalars", "spgw_ingress_tmp_1"]
13660 }
13661 }
13662 }
13663 }
13664 },
13665 "true_next" : "tbl_drop_now",
13666 "false_next" : "tbl_act_8"
13667 },
13668 {
13669 "name" : "node_24",
13670 "id" : 6,
13671 "expression" : {
13672 "type" : "expression",
13673 "value" : {
13674 "op" : "d2b",
13675 "left" : null,
13676 "right" : {
13677 "type" : "field",
13678 "value" : ["scalars", "spgw_ingress_tmp_2"]
13679 }
13680 }
13681 },
13682 "true_next" : "tbl_act_11",
13683 "false_next" : "tbl_act_12"
13684 },
13685 {
13686 "name" : "node_27",
13687 "id" : 7,
13688 "expression" : {
13689 "type" : "expression",
13690 "value" : {
13691 "op" : "not",
13692 "left" : null,
13693 "right" : {
13694 "type" : "expression",
13695 "value" : {
13696 "op" : "d2b",
13697 "left" : null,
13698 "right" : {
13699 "type" : "field",
13700 "value" : ["scalars", "spgw_ingress_hasReturned_0"]
13701 }
13702 }
13703 }
13704 }
13705 },
13706 "true_next" : "tbl_act_13",
13707 "false_next" : "FabricIngress.filtering.ingress_port_vlan"
13708 },
13709 {
13710 "name" : "node_32",
13711 "id" : 8,
13712 "expression" : {
13713 "type" : "expression",
13714 "value" : {
13715 "op" : "d2b",
13716 "left" : null,
13717 "right" : {
13718 "type" : "field",
13719 "value" : ["scalars", "filtering_tmp_0"]
13720 }
13721 }
13722 },
13723 "true_next" : "FabricIngress.filtering.fwd_classifier",
13724 "false_next" : "tbl_act_16"
13725 },
13726 {
13727 "name" : "node_35",
13728 "id" : 9,
13729 "source_info" : {
13730 "filename" : "include/control/forwarding.p4",
13731 "line" : 191,
13732 "column" : 11,
13733 "source_fragment" : "fabric_metadata.fwd_type == FWD_BRIDGING"
13734 },
13735 "expression" : {
13736 "type" : "expression",
13737 "value" : {
13738 "op" : "==",
13739 "left" : {
13740 "type" : "field",
13741 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
13742 },
13743 "right" : {
13744 "type" : "hexstr",
13745 "value" : "0x00"
13746 }
13747 }
13748 },
13749 "true_next" : "FabricIngress.forwarding.bridging",
13750 "false_next" : "node_37"
13751 },
13752 {
13753 "name" : "node_37",
13754 "id" : 10,
13755 "source_info" : {
13756 "filename" : "include/control/forwarding.p4",
13757 "line" : 192,
13758 "column" : 17,
13759 "source_fragment" : "fabric_metadata.fwd_type == FWD_MPLS"
13760 },
13761 "expression" : {
13762 "type" : "expression",
13763 "value" : {
13764 "op" : "==",
13765 "left" : {
13766 "type" : "field",
13767 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
13768 },
13769 "right" : {
13770 "type" : "hexstr",
13771 "value" : "0x01"
13772 }
13773 }
13774 },
13775 "true_next" : "FabricIngress.forwarding.mpls",
13776 "false_next" : "node_40"
13777 },
13778 {
13779 "name" : "node_40",
13780 "id" : 11,
13781 "source_info" : {
13782 "filename" : "include/control/forwarding.p4",
13783 "line" : 198,
13784 "column" : 17,
13785 "source_fragment" : "fabric_metadata.fwd_type == FWD_IPV4_UNICAST"
13786 },
13787 "expression" : {
13788 "type" : "expression",
13789 "value" : {
13790 "op" : "==",
13791 "left" : {
13792 "type" : "field",
13793 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
13794 },
13795 "right" : {
13796 "type" : "hexstr",
13797 "value" : "0x02"
13798 }
13799 }
13800 },
13801 "true_next" : "FabricIngress.forwarding.routing_v4",
13802 "false_next" : "FabricIngress.forwarding.acl"
13803 },
13804 {
13805 "name" : "node_48",
13806 "id" : 12,
13807 "source_info" : {
13808 "filename" : "include/control/next.p4",
13809 "line" : 219,
13810 "column" : 12,
13811 "source_fragment" : "!simple.apply().hit"
13812 },
13813 "expression" : {
13814 "type" : "expression",
13815 "value" : {
13816 "op" : "not",
13817 "left" : null,
13818 "right" : {
13819 "type" : "expression",
13820 "value" : {
13821 "op" : "d2b",
13822 "left" : null,
13823 "right" : {
13824 "type" : "field",
13825 "value" : ["scalars", "next_tmp_4"]
13826 }
13827 }
13828 }
13829 }
13830 },
13831 "true_next" : "FabricIngress.next.hashed",
13832 "false_next" : "node_58"
13833 },
13834 {
13835 "name" : "node_52",
13836 "id" : 13,
13837 "source_info" : {
13838 "filename" : "include/control/next.p4",
13839 "line" : 220,
13840 "column" : 16,
13841 "source_fragment" : "!hashed.apply().hit"
13842 },
13843 "expression" : {
13844 "type" : "expression",
13845 "value" : {
13846 "op" : "not",
13847 "left" : null,
13848 "right" : {
13849 "type" : "expression",
13850 "value" : {
13851 "op" : "d2b",
13852 "left" : null,
13853 "right" : {
13854 "type" : "field",
13855 "value" : ["scalars", "next_tmp_3"]
13856 }
13857 }
13858 }
13859 }
13860 },
13861 "true_next" : "FabricIngress.next.multicast",
13862 "false_next" : "node_58"
13863 },
13864 {
13865 "name" : "node_56",
13866 "id" : 14,
13867 "source_info" : {
13868 "filename" : "include/control/next.p4",
13869 "line" : 221,
13870 "column" : 20,
13871 "source_fragment" : "!multicast.apply().hit"
13872 },
13873 "expression" : {
13874 "type" : "expression",
13875 "value" : {
13876 "op" : "not",
13877 "left" : null,
13878 "right" : {
13879 "type" : "expression",
13880 "value" : {
13881 "op" : "d2b",
13882 "left" : null,
13883 "right" : {
13884 "type" : "field",
13885 "value" : ["scalars", "next_tmp_2"]
13886 }
13887 }
13888 }
13889 }
13890 },
13891 "true_next" : "tbl_act_25",
13892 "false_next" : "node_58"
13893 },
13894 {
13895 "name" : "node_58",
13896 "id" : 15,
13897 "expression" : {
13898 "type" : "expression",
13899 "value" : {
13900 "op" : "not",
13901 "left" : null,
13902 "right" : {
13903 "type" : "expression",
13904 "value" : {
13905 "op" : "d2b",
13906 "left" : null,
13907 "right" : {
13908 "type" : "field",
13909 "value" : ["scalars", "next_hasReturned_0"]
13910 }
13911 }
13912 }
13913 }
13914 },
13915 "true_next" : "node_59",
13916 "false_next" : "node_62"
13917 },
13918 {
13919 "name" : "node_59",
13920 "id" : 16,
13921 "source_info" : {
13922 "filename" : "include/control/next.p4",
13923 "line" : 228,
13924 "column" : 12,
13925 "source_fragment" : "!hdr.mpls.isValid()"
13926 },
13927 "expression" : {
13928 "type" : "expression",
13929 "value" : {
13930 "op" : "not",
13931 "left" : null,
13932 "right" : {
13933 "type" : "expression",
13934 "value" : {
13935 "op" : "d2b",
13936 "left" : null,
13937 "right" : {
13938 "type" : "field",
13939 "value" : ["mpls", "$valid$"]
13940 }
13941 }
13942 }
13943 }
13944 },
13945 "true_next" : "node_60",
13946 "false_next" : "node_62"
13947 },
13948 {
13949 "name" : "node_60",
13950 "id" : 17,
13951 "source_info" : {
13952 "filename" : "include/control/next.p4",
13953 "line" : 229,
13954 "column" : 15,
13955 "source_fragment" : "hdr.ipv4.isValid()"
13956 },
13957 "expression" : {
13958 "type" : "expression",
13959 "value" : {
13960 "op" : "d2b",
13961 "left" : null,
13962 "right" : {
13963 "type" : "field",
13964 "value" : ["ipv4", "$valid$"]
13965 }
13966 }
13967 },
13968 "true_next" : "tbl_act_26",
13969 "false_next" : "node_62"
13970 },
13971 {
13972 "name" : "node_62",
13973 "id" : 18,
13974 "source_info" : {
13975 "filename" : "include/control/port_counter.p4",
13976 "line" : 27,
13977 "column" : 12,
13978 "source_fragment" : "standard_metadata.egress_spec < 511"
13979 },
13980 "expression" : {
13981 "type" : "expression",
13982 "value" : {
13983 "op" : "<",
13984 "left" : {
13985 "type" : "field",
13986 "value" : ["standard_metadata", "egress_spec"]
13987 },
13988 "right" : {
13989 "type" : "hexstr",
13990 "value" : "0x01ff"
13991 }
13992 }
13993 },
13994 "true_next" : "tbl_act_27",
13995 "false_next" : "node_64"
13996 },
13997 {
13998 "name" : "node_64",
13999 "id" : 19,
14000 "source_info" : {
14001 "filename" : "include/control/port_counter.p4",
14002 "line" : 30,
14003 "column" : 12,
14004 "source_fragment" : "standard_metadata.ingress_port < 511"
14005 },
14006 "expression" : {
14007 "type" : "expression",
14008 "value" : {
14009 "op" : "<",
14010 "left" : {
14011 "type" : "field",
14012 "value" : ["standard_metadata", "ingress_port"]
14013 },
14014 "right" : {
14015 "type" : "hexstr",
14016 "value" : "0x01ff"
14017 }
14018 }
14019 },
14020 "true_next" : "tbl_act_28",
14021 "false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
14022 }
14023 ]
14024 },
14025 {
14026 "name" : "egress",
14027 "id" : 1,
14028 "source_info" : {
14029 "filename" : "fabric.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014030 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014031 "column" : 8,
14032 "source_fragment" : "FabricEgress"
14033 },
14034 "init_table" : "node_69",
14035 "tables" : [
14036 {
14037 "name" : "tbl_pkt_io_egress_pop_vlan",
14038 "id" : 45,
14039 "key" : [],
14040 "match_type" : "exact",
14041 "type" : "simple",
14042 "max_size" : 1024,
14043 "with_counters" : false,
14044 "support_timeout" : false,
14045 "direct_meters" : null,
14046 "action_ids" : [111],
14047 "actions" : ["FabricEgress.pkt_io_egress.pop_vlan"],
14048 "base_default_next" : "node_73",
14049 "next_tables" : {
14050 "FabricEgress.pkt_io_egress.pop_vlan" : "node_73"
14051 },
14052 "default_entry" : {
14053 "action_id" : 111,
14054 "action_const" : true,
14055 "action_data" : [],
14056 "action_entry_const" : true
14057 }
14058 },
14059 {
14060 "name" : "tbl_drop_now_0",
14061 "id" : 46,
14062 "key" : [],
14063 "match_type" : "exact",
14064 "type" : "simple",
14065 "max_size" : 1024,
14066 "with_counters" : false,
14067 "support_timeout" : false,
14068 "direct_meters" : null,
14069 "action_ids" : [74],
14070 "actions" : ["drop_now"],
14071 "base_default_next" : "tbl_act_29",
14072 "next_tables" : {
14073 "drop_now" : "tbl_act_29"
14074 },
14075 "default_entry" : {
14076 "action_id" : 74,
14077 "action_const" : true,
14078 "action_data" : [],
14079 "action_entry_const" : true
14080 }
14081 },
14082 {
14083 "name" : "tbl_act_29",
14084 "id" : 47,
14085 "key" : [],
14086 "match_type" : "exact",
14087 "type" : "simple",
14088 "max_size" : 1024,
14089 "with_counters" : false,
14090 "support_timeout" : false,
14091 "direct_meters" : null,
14092 "action_ids" : [113],
14093 "actions" : ["act_29"],
14094 "base_default_next" : null,
14095 "next_tables" : {
14096 "act_29" : null
14097 },
14098 "default_entry" : {
14099 "action_id" : 113,
14100 "action_const" : true,
14101 "action_data" : [],
14102 "action_entry_const" : true
14103 }
14104 },
14105 {
14106 "name" : "tbl_drop_now_1",
14107 "id" : 48,
14108 "key" : [],
14109 "match_type" : "exact",
14110 "type" : "simple",
14111 "max_size" : 1024,
14112 "with_counters" : false,
14113 "support_timeout" : false,
14114 "direct_meters" : null,
14115 "action_ids" : [75],
14116 "actions" : ["drop_now"],
14117 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
14118 "next_tables" : {
14119 "drop_now" : "FabricEgress.egress_next.egress_vlan"
14120 },
14121 "default_entry" : {
14122 "action_id" : 75,
14123 "action_const" : true,
14124 "action_data" : [],
14125 "action_entry_const" : true
14126 }
14127 },
14128 {
14129 "name" : "FabricEgress.egress_next.egress_vlan",
14130 "id" : 49,
14131 "source_info" : {
14132 "filename" : "include/control/next.p4",
14133 "line" : 258,
14134 "column" : 10,
14135 "source_fragment" : "egress_vlan"
14136 },
14137 "key" : [
14138 {
14139 "match_type" : "exact",
14140 "name" : "hdr.vlan_tag.vlan_id",
14141 "target" : ["vlan_tag", "vlan_id"],
14142 "mask" : null
14143 },
14144 {
14145 "match_type" : "exact",
14146 "name" : "standard_metadata.egress_port",
14147 "target" : ["standard_metadata", "egress_port"],
14148 "mask" : null
14149 }
14150 ],
14151 "match_type" : "exact",
14152 "type" : "simple",
14153 "max_size" : 1024,
14154 "with_counters" : true,
14155 "support_timeout" : false,
14156 "direct_meters" : null,
14157 "action_ids" : [112, 73],
14158 "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
14159 "base_default_next" : "node_79",
14160 "next_tables" : {
14161 "FabricEgress.egress_next.pop_vlan" : "node_79",
14162 "nop" : "node_79"
14163 },
14164 "default_entry" : {
14165 "action_id" : 73,
14166 "action_const" : false,
14167 "action_data" : [],
14168 "action_entry_const" : false
14169 }
14170 },
14171 {
14172 "name" : "tbl_spgw_egress_gtpu_encap",
14173 "id" : 50,
14174 "key" : [],
14175 "match_type" : "exact",
14176 "type" : "simple",
14177 "max_size" : 1024,
14178 "with_counters" : false,
14179 "support_timeout" : false,
14180 "direct_meters" : null,
14181 "action_ids" : [76],
14182 "actions" : ["FabricEgress.spgw_egress.gtpu_encap"],
14183 "base_default_next" : "node_81",
14184 "next_tables" : {
14185 "FabricEgress.spgw_egress.gtpu_encap" : "node_81"
14186 },
14187 "default_entry" : {
14188 "action_id" : 76,
14189 "action_const" : true,
14190 "action_data" : [],
14191 "action_entry_const" : true
14192 }
14193 },
14194 {
14195 "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
14196 "id" : 51,
14197 "source_info" : {
14198 "filename" : "include/int/int_source.p4",
14199 "line" : 65,
14200 "column" : 10,
14201 "source_fragment" : "tb_int_source"
14202 },
14203 "key" : [
14204 {
14205 "match_type" : "ternary",
14206 "name" : "hdr.ipv4.src_addr",
14207 "target" : ["ipv4", "src_addr"],
14208 "mask" : null
14209 },
14210 {
14211 "match_type" : "ternary",
14212 "name" : "hdr.ipv4.dst_addr",
14213 "target" : ["ipv4", "dst_addr"],
14214 "mask" : null
14215 },
14216 {
14217 "match_type" : "ternary",
14218 "name" : "fabric_metadata.l4_src_port",
14219 "target" : ["scalars", "fabric_metadata_t.l4_src_port"],
14220 "mask" : null
14221 },
14222 {
14223 "match_type" : "ternary",
14224 "name" : "fabric_metadata.l4_dst_port",
14225 "target" : ["scalars", "fabric_metadata_t.l4_dst_port"],
14226 "mask" : null
14227 }
14228 ],
14229 "match_type" : "ternary",
14230 "type" : "simple",
14231 "max_size" : 1024,
14232 "with_counters" : true,
14233 "support_timeout" : false,
14234 "direct_meters" : null,
14235 "action_ids" : [77, 69],
14236 "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "NoAction"],
14237 "base_default_next" : "node_84",
14238 "next_tables" : {
14239 "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_84",
14240 "NoAction" : "node_84"
14241 },
14242 "default_entry" : {
14243 "action_id" : 69,
14244 "action_const" : false,
14245 "action_data" : [],
14246 "action_entry_const" : false
14247 }
14248 },
14249 {
14250 "name" : "tbl_act_30",
14251 "id" : 52,
14252 "key" : [],
14253 "match_type" : "exact",
14254 "type" : "simple",
14255 "max_size" : 1024,
14256 "with_counters" : false,
14257 "support_timeout" : false,
14258 "direct_meters" : null,
14259 "action_ids" : [114],
14260 "actions" : ["act_30"],
14261 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
14262 "next_tables" : {
14263 "act_30" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
14264 },
14265 "default_entry" : {
14266 "action_id" : 114,
14267 "action_const" : true,
14268 "action_data" : [],
14269 "action_entry_const" : true
14270 }
14271 },
14272 {
14273 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
14274 "id" : 53,
14275 "source_info" : {
14276 "filename" : "include/int/int_transit.p4",
14277 "line" : 271,
14278 "column" : 10,
14279 "source_fragment" : "tb_int_insert"
14280 },
Carmelo Casconefa421582018-09-13 10:05:57 -070014281 "key" : [
14282 {
14283 "match_type" : "exact",
14284 "name" : "hdr.int_header.is_valid",
14285 "target" : ["int_header", "$valid$"],
14286 "mask" : null
14287 }
14288 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014289 "match_type" : "exact",
14290 "type" : "simple",
Carmelo Casconefa421582018-09-13 10:05:57 -070014291 "max_size" : 1,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014292 "with_counters" : false,
14293 "support_timeout" : false,
14294 "direct_meters" : null,
Carmelo Casconefa421582018-09-13 10:05:57 -070014295 "action_ids" : [78, 72],
14296 "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014297 "base_default_next" : "node_87",
14298 "next_tables" : {
14299 "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_87",
Carmelo Casconefa421582018-09-13 10:05:57 -070014300 "nop" : "node_87"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014301 },
14302 "default_entry" : {
Carmelo Casconefa421582018-09-13 10:05:57 -070014303 "action_id" : 72,
14304 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014305 "action_data" : [],
Carmelo Casconefa421582018-09-13 10:05:57 -070014306 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014307 }
14308 },
14309 {
14310 "name" : "tbl_act_31",
14311 "id" : 54,
14312 "key" : [],
14313 "match_type" : "exact",
14314 "type" : "simple",
14315 "max_size" : 1024,
14316 "with_counters" : false,
14317 "support_timeout" : false,
14318 "direct_meters" : null,
14319 "action_ids" : [115],
14320 "actions" : ["act_31"],
14321 "base_default_next" : "node_89",
14322 "next_tables" : {
14323 "act_31" : "node_89"
14324 },
14325 "default_entry" : {
14326 "action_id" : 115,
14327 "action_const" : true,
14328 "action_data" : [],
14329 "action_entry_const" : true
14330 }
14331 },
14332 {
14333 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
14334 "id" : 55,
14335 "source_info" : {
14336 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014337 "line" : 286,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014338 "column" : 10,
14339 "source_fragment" : "tb_int_inst_0003"
14340 },
14341 "key" : [
14342 {
14343 "match_type" : "exact",
14344 "name" : "hdr.int_header.instruction_mask_0003",
14345 "target" : ["int_header", "instruction_mask_0003"],
14346 "mask" : null
14347 }
14348 ],
14349 "match_type" : "exact",
14350 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014351 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014352 "with_counters" : false,
14353 "support_timeout" : false,
14354 "direct_meters" : null,
Carmelo Casconefa421582018-09-13 10:05:57 -070014355 "action_ids" : [79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 70],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014356 "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"],
14357 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14358 "next_tables" : {
14359 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14360 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14361 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14362 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14363 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14364 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14365 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14366 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14367 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14368 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14369 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14370 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14371 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14372 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14373 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14374 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14375 "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
14376 },
14377 "default_entry" : {
Carmelo Casconefa421582018-09-13 10:05:57 -070014378 "action_id" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014379 "action_const" : false,
14380 "action_data" : [],
14381 "action_entry_const" : false
14382 },
14383 "entries" : [
14384 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014385 "source_info" : {
14386 "filename" : "include/int/int_transit.p4",
14387 "line" : 310,
14388 "column" : 12,
14389 "source_fragment" : "(0x0) : int_set_header_0003_i0()"
14390 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014391 "match_key" : [
14392 {
14393 "match_type" : "exact",
14394 "key" : "0x00"
14395 }
14396 ],
14397 "action_entry" : {
14398 "action_id" : 79,
14399 "action_data" : []
14400 },
14401 "priority" : 1
14402 },
14403 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014404 "source_info" : {
14405 "filename" : "include/int/int_transit.p4",
14406 "line" : 311,
14407 "column" : 12,
14408 "source_fragment" : "(0x1) : int_set_header_0003_i1()"
14409 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014410 "match_key" : [
14411 {
14412 "match_type" : "exact",
14413 "key" : "0x01"
14414 }
14415 ],
14416 "action_entry" : {
14417 "action_id" : 80,
14418 "action_data" : []
14419 },
14420 "priority" : 2
14421 },
14422 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014423 "source_info" : {
14424 "filename" : "include/int/int_transit.p4",
14425 "line" : 312,
14426 "column" : 12,
14427 "source_fragment" : "(0x2) : int_set_header_0003_i2()"
14428 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014429 "match_key" : [
14430 {
14431 "match_type" : "exact",
14432 "key" : "0x02"
14433 }
14434 ],
14435 "action_entry" : {
14436 "action_id" : 81,
14437 "action_data" : []
14438 },
14439 "priority" : 3
14440 },
14441 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014442 "source_info" : {
14443 "filename" : "include/int/int_transit.p4",
14444 "line" : 313,
14445 "column" : 12,
14446 "source_fragment" : "(0x3) : int_set_header_0003_i3()"
14447 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014448 "match_key" : [
14449 {
14450 "match_type" : "exact",
14451 "key" : "0x03"
14452 }
14453 ],
14454 "action_entry" : {
14455 "action_id" : 82,
14456 "action_data" : []
14457 },
14458 "priority" : 4
14459 },
14460 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014461 "source_info" : {
14462 "filename" : "include/int/int_transit.p4",
14463 "line" : 314,
14464 "column" : 12,
14465 "source_fragment" : "(0x4) : int_set_header_0003_i4()"
14466 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014467 "match_key" : [
14468 {
14469 "match_type" : "exact",
14470 "key" : "0x04"
14471 }
14472 ],
14473 "action_entry" : {
14474 "action_id" : 83,
14475 "action_data" : []
14476 },
14477 "priority" : 5
14478 },
14479 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014480 "source_info" : {
14481 "filename" : "include/int/int_transit.p4",
14482 "line" : 315,
14483 "column" : 12,
14484 "source_fragment" : "(0x5) : int_set_header_0003_i5()"
14485 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014486 "match_key" : [
14487 {
14488 "match_type" : "exact",
14489 "key" : "0x05"
14490 }
14491 ],
14492 "action_entry" : {
14493 "action_id" : 84,
14494 "action_data" : []
14495 },
14496 "priority" : 6
14497 },
14498 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014499 "source_info" : {
14500 "filename" : "include/int/int_transit.p4",
14501 "line" : 316,
14502 "column" : 12,
14503 "source_fragment" : "(0x6) : int_set_header_0003_i6()"
14504 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014505 "match_key" : [
14506 {
14507 "match_type" : "exact",
14508 "key" : "0x06"
14509 }
14510 ],
14511 "action_entry" : {
14512 "action_id" : 85,
14513 "action_data" : []
14514 },
14515 "priority" : 7
14516 },
14517 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014518 "source_info" : {
14519 "filename" : "include/int/int_transit.p4",
14520 "line" : 317,
14521 "column" : 12,
14522 "source_fragment" : "(0x7) : int_set_header_0003_i7()"
14523 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014524 "match_key" : [
14525 {
14526 "match_type" : "exact",
14527 "key" : "0x07"
14528 }
14529 ],
14530 "action_entry" : {
14531 "action_id" : 86,
14532 "action_data" : []
14533 },
14534 "priority" : 8
14535 },
14536 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014537 "source_info" : {
14538 "filename" : "include/int/int_transit.p4",
14539 "line" : 318,
14540 "column" : 12,
14541 "source_fragment" : "(0x8) : int_set_header_0003_i8()"
14542 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014543 "match_key" : [
14544 {
14545 "match_type" : "exact",
14546 "key" : "0x08"
14547 }
14548 ],
14549 "action_entry" : {
14550 "action_id" : 87,
14551 "action_data" : []
14552 },
14553 "priority" : 9
14554 },
14555 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014556 "source_info" : {
14557 "filename" : "include/int/int_transit.p4",
14558 "line" : 319,
14559 "column" : 12,
14560 "source_fragment" : "(0x9) : int_set_header_0003_i9()"
14561 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014562 "match_key" : [
14563 {
14564 "match_type" : "exact",
14565 "key" : "0x09"
14566 }
14567 ],
14568 "action_entry" : {
14569 "action_id" : 88,
14570 "action_data" : []
14571 },
14572 "priority" : 10
14573 },
14574 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014575 "source_info" : {
14576 "filename" : "include/int/int_transit.p4",
14577 "line" : 320,
14578 "column" : 12,
14579 "source_fragment" : "(0xA) : int_set_header_0003_i10()"
14580 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014581 "match_key" : [
14582 {
14583 "match_type" : "exact",
14584 "key" : "0x0a"
14585 }
14586 ],
14587 "action_entry" : {
14588 "action_id" : 89,
14589 "action_data" : []
14590 },
14591 "priority" : 11
14592 },
14593 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014594 "source_info" : {
14595 "filename" : "include/int/int_transit.p4",
14596 "line" : 321,
14597 "column" : 12,
14598 "source_fragment" : "(0xB) : int_set_header_0003_i11()"
14599 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014600 "match_key" : [
14601 {
14602 "match_type" : "exact",
14603 "key" : "0x0b"
14604 }
14605 ],
14606 "action_entry" : {
14607 "action_id" : 90,
14608 "action_data" : []
14609 },
14610 "priority" : 12
14611 },
14612 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014613 "source_info" : {
14614 "filename" : "include/int/int_transit.p4",
14615 "line" : 322,
14616 "column" : 12,
14617 "source_fragment" : "(0xC) : int_set_header_0003_i12()"
14618 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014619 "match_key" : [
14620 {
14621 "match_type" : "exact",
14622 "key" : "0x0c"
14623 }
14624 ],
14625 "action_entry" : {
14626 "action_id" : 91,
14627 "action_data" : []
14628 },
14629 "priority" : 13
14630 },
14631 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014632 "source_info" : {
14633 "filename" : "include/int/int_transit.p4",
14634 "line" : 323,
14635 "column" : 12,
14636 "source_fragment" : "(0xD) : int_set_header_0003_i13()"
14637 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014638 "match_key" : [
14639 {
14640 "match_type" : "exact",
14641 "key" : "0x0d"
14642 }
14643 ],
14644 "action_entry" : {
14645 "action_id" : 92,
14646 "action_data" : []
14647 },
14648 "priority" : 14
14649 },
14650 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014651 "source_info" : {
14652 "filename" : "include/int/int_transit.p4",
14653 "line" : 324,
14654 "column" : 12,
14655 "source_fragment" : "(0xE) : int_set_header_0003_i14()"
14656 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014657 "match_key" : [
14658 {
14659 "match_type" : "exact",
14660 "key" : "0x0e"
14661 }
14662 ],
14663 "action_entry" : {
14664 "action_id" : 93,
14665 "action_data" : []
14666 },
14667 "priority" : 15
14668 },
14669 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014670 "source_info" : {
14671 "filename" : "include/int/int_transit.p4",
14672 "line" : 325,
14673 "column" : 12,
14674 "source_fragment" : "(0xF) : int_set_header_0003_i15()"
14675 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014676 "match_key" : [
14677 {
14678 "match_type" : "exact",
14679 "key" : "0x0f"
14680 }
14681 ],
14682 "action_entry" : {
14683 "action_id" : 94,
14684 "action_data" : []
14685 },
14686 "priority" : 16
14687 }
14688 ]
14689 },
14690 {
14691 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14692 "id" : 56,
14693 "source_info" : {
14694 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014695 "line" : 330,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014696 "column" : 10,
14697 "source_fragment" : "tb_int_inst_0407"
14698 },
14699 "key" : [
14700 {
14701 "match_type" : "exact",
14702 "name" : "hdr.int_header.instruction_mask_0407",
14703 "target" : ["int_header", "instruction_mask_0407"],
14704 "mask" : null
14705 }
14706 ],
14707 "match_type" : "exact",
14708 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014709 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014710 "with_counters" : false,
14711 "support_timeout" : false,
14712 "direct_meters" : null,
Carmelo Casconefa421582018-09-13 10:05:57 -070014713 "action_ids" : [95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 71],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014714 "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"],
14715 "base_default_next" : "tbl_act_32",
14716 "next_tables" : {
14717 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_32",
14718 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_32",
14719 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_32",
14720 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_32",
14721 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_32",
14722 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_32",
14723 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_32",
14724 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_32",
14725 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_32",
14726 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_32",
14727 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_32",
14728 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_32",
14729 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_32",
14730 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_32",
14731 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_32",
14732 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_32",
14733 "NoAction" : "tbl_act_32"
14734 },
14735 "default_entry" : {
Carmelo Casconefa421582018-09-13 10:05:57 -070014736 "action_id" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014737 "action_const" : false,
14738 "action_data" : [],
14739 "action_entry_const" : false
14740 },
14741 "entries" : [
14742 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014743 "source_info" : {
14744 "filename" : "include/int/int_transit.p4",
14745 "line" : 354,
14746 "column" : 12,
14747 "source_fragment" : "(0x0) : int_set_header_0407_i0()"
14748 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014749 "match_key" : [
14750 {
14751 "match_type" : "exact",
14752 "key" : "0x00"
14753 }
14754 ],
14755 "action_entry" : {
14756 "action_id" : 95,
14757 "action_data" : []
14758 },
14759 "priority" : 1
14760 },
14761 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014762 "source_info" : {
14763 "filename" : "include/int/int_transit.p4",
14764 "line" : 355,
14765 "column" : 12,
14766 "source_fragment" : "(0x1) : int_set_header_0407_i1()"
14767 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014768 "match_key" : [
14769 {
14770 "match_type" : "exact",
14771 "key" : "0x01"
14772 }
14773 ],
14774 "action_entry" : {
14775 "action_id" : 96,
14776 "action_data" : []
14777 },
14778 "priority" : 2
14779 },
14780 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014781 "source_info" : {
14782 "filename" : "include/int/int_transit.p4",
14783 "line" : 356,
14784 "column" : 12,
14785 "source_fragment" : "(0x2) : int_set_header_0407_i2()"
14786 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014787 "match_key" : [
14788 {
14789 "match_type" : "exact",
14790 "key" : "0x02"
14791 }
14792 ],
14793 "action_entry" : {
14794 "action_id" : 97,
14795 "action_data" : []
14796 },
14797 "priority" : 3
14798 },
14799 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014800 "source_info" : {
14801 "filename" : "include/int/int_transit.p4",
14802 "line" : 357,
14803 "column" : 12,
14804 "source_fragment" : "(0x3) : int_set_header_0407_i3()"
14805 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014806 "match_key" : [
14807 {
14808 "match_type" : "exact",
14809 "key" : "0x03"
14810 }
14811 ],
14812 "action_entry" : {
14813 "action_id" : 98,
14814 "action_data" : []
14815 },
14816 "priority" : 4
14817 },
14818 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014819 "source_info" : {
14820 "filename" : "include/int/int_transit.p4",
14821 "line" : 358,
14822 "column" : 12,
14823 "source_fragment" : "(0x4) : int_set_header_0407_i4()"
14824 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014825 "match_key" : [
14826 {
14827 "match_type" : "exact",
14828 "key" : "0x04"
14829 }
14830 ],
14831 "action_entry" : {
14832 "action_id" : 99,
14833 "action_data" : []
14834 },
14835 "priority" : 5
14836 },
14837 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014838 "source_info" : {
14839 "filename" : "include/int/int_transit.p4",
14840 "line" : 359,
14841 "column" : 12,
14842 "source_fragment" : "(0x5) : int_set_header_0407_i5()"
14843 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014844 "match_key" : [
14845 {
14846 "match_type" : "exact",
14847 "key" : "0x05"
14848 }
14849 ],
14850 "action_entry" : {
14851 "action_id" : 100,
14852 "action_data" : []
14853 },
14854 "priority" : 6
14855 },
14856 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014857 "source_info" : {
14858 "filename" : "include/int/int_transit.p4",
14859 "line" : 360,
14860 "column" : 12,
14861 "source_fragment" : "(0x6) : int_set_header_0407_i6()"
14862 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014863 "match_key" : [
14864 {
14865 "match_type" : "exact",
14866 "key" : "0x06"
14867 }
14868 ],
14869 "action_entry" : {
14870 "action_id" : 101,
14871 "action_data" : []
14872 },
14873 "priority" : 7
14874 },
14875 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014876 "source_info" : {
14877 "filename" : "include/int/int_transit.p4",
14878 "line" : 361,
14879 "column" : 12,
14880 "source_fragment" : "(0x7) : int_set_header_0407_i7()"
14881 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014882 "match_key" : [
14883 {
14884 "match_type" : "exact",
14885 "key" : "0x07"
14886 }
14887 ],
14888 "action_entry" : {
14889 "action_id" : 102,
14890 "action_data" : []
14891 },
14892 "priority" : 8
14893 },
14894 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014895 "source_info" : {
14896 "filename" : "include/int/int_transit.p4",
14897 "line" : 362,
14898 "column" : 12,
14899 "source_fragment" : "(0x8) : int_set_header_0407_i8()"
14900 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014901 "match_key" : [
14902 {
14903 "match_type" : "exact",
14904 "key" : "0x08"
14905 }
14906 ],
14907 "action_entry" : {
14908 "action_id" : 103,
14909 "action_data" : []
14910 },
14911 "priority" : 9
14912 },
14913 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014914 "source_info" : {
14915 "filename" : "include/int/int_transit.p4",
14916 "line" : 363,
14917 "column" : 12,
14918 "source_fragment" : "(0x9) : int_set_header_0407_i9()"
14919 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014920 "match_key" : [
14921 {
14922 "match_type" : "exact",
14923 "key" : "0x09"
14924 }
14925 ],
14926 "action_entry" : {
14927 "action_id" : 104,
14928 "action_data" : []
14929 },
14930 "priority" : 10
14931 },
14932 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014933 "source_info" : {
14934 "filename" : "include/int/int_transit.p4",
14935 "line" : 364,
14936 "column" : 12,
14937 "source_fragment" : "(0xA) : int_set_header_0407_i10()"
14938 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014939 "match_key" : [
14940 {
14941 "match_type" : "exact",
14942 "key" : "0x0a"
14943 }
14944 ],
14945 "action_entry" : {
14946 "action_id" : 105,
14947 "action_data" : []
14948 },
14949 "priority" : 11
14950 },
14951 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014952 "source_info" : {
14953 "filename" : "include/int/int_transit.p4",
14954 "line" : 365,
14955 "column" : 12,
14956 "source_fragment" : "(0xB) : int_set_header_0407_i11()"
14957 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014958 "match_key" : [
14959 {
14960 "match_type" : "exact",
14961 "key" : "0x0b"
14962 }
14963 ],
14964 "action_entry" : {
14965 "action_id" : 106,
14966 "action_data" : []
14967 },
14968 "priority" : 12
14969 },
14970 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014971 "source_info" : {
14972 "filename" : "include/int/int_transit.p4",
14973 "line" : 366,
14974 "column" : 12,
14975 "source_fragment" : "(0xC) : int_set_header_0407_i12()"
14976 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014977 "match_key" : [
14978 {
14979 "match_type" : "exact",
14980 "key" : "0x0c"
14981 }
14982 ],
14983 "action_entry" : {
14984 "action_id" : 107,
14985 "action_data" : []
14986 },
14987 "priority" : 13
14988 },
14989 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014990 "source_info" : {
14991 "filename" : "include/int/int_transit.p4",
14992 "line" : 367,
14993 "column" : 12,
14994 "source_fragment" : "(0xD) : int_set_header_0407_i13()"
14995 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014996 "match_key" : [
14997 {
14998 "match_type" : "exact",
14999 "key" : "0x0d"
15000 }
15001 ],
15002 "action_entry" : {
15003 "action_id" : 108,
15004 "action_data" : []
15005 },
15006 "priority" : 14
15007 },
15008 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015009 "source_info" : {
15010 "filename" : "include/int/int_transit.p4",
15011 "line" : 368,
15012 "column" : 12,
15013 "source_fragment" : "(0xE) : int_set_header_0407_i14()"
15014 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015015 "match_key" : [
15016 {
15017 "match_type" : "exact",
15018 "key" : "0x0e"
15019 }
15020 ],
15021 "action_entry" : {
15022 "action_id" : 109,
15023 "action_data" : []
15024 },
15025 "priority" : 15
15026 },
15027 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015028 "source_info" : {
15029 "filename" : "include/int/int_transit.p4",
15030 "line" : 369,
15031 "column" : 12,
15032 "source_fragment" : "(0xF) : int_set_header_0407_i15()"
15033 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015034 "match_key" : [
15035 {
15036 "match_type" : "exact",
15037 "key" : "0x0f"
15038 }
15039 ],
15040 "action_entry" : {
15041 "action_id" : 110,
15042 "action_data" : []
15043 },
15044 "priority" : 16
15045 }
15046 ]
15047 },
15048 {
15049 "name" : "tbl_act_32",
15050 "id" : 57,
15051 "key" : [],
15052 "match_type" : "exact",
15053 "type" : "simple",
15054 "max_size" : 1024,
15055 "with_counters" : false,
15056 "support_timeout" : false,
15057 "direct_meters" : null,
15058 "action_ids" : [117],
15059 "actions" : ["act_33"],
15060 "base_default_next" : "node_93",
15061 "next_tables" : {
15062 "act_33" : "node_93"
15063 },
15064 "default_entry" : {
15065 "action_id" : 117,
15066 "action_const" : true,
15067 "action_data" : [],
15068 "action_entry_const" : true
15069 }
15070 },
15071 {
15072 "name" : "tbl_act_33",
15073 "id" : 58,
15074 "key" : [],
15075 "match_type" : "exact",
15076 "type" : "simple",
15077 "max_size" : 1024,
15078 "with_counters" : false,
15079 "support_timeout" : false,
15080 "direct_meters" : null,
15081 "action_ids" : [116],
15082 "actions" : ["act_32"],
15083 "base_default_next" : "node_95",
15084 "next_tables" : {
15085 "act_32" : "node_95"
15086 },
15087 "default_entry" : {
15088 "action_id" : 116,
15089 "action_const" : true,
15090 "action_data" : [],
15091 "action_entry_const" : true
15092 }
15093 },
15094 {
15095 "name" : "tbl_act_34",
15096 "id" : 59,
15097 "key" : [],
15098 "match_type" : "exact",
15099 "type" : "simple",
15100 "max_size" : 1024,
15101 "with_counters" : false,
15102 "support_timeout" : false,
15103 "direct_meters" : null,
15104 "action_ids" : [118],
15105 "actions" : ["act_34"],
15106 "base_default_next" : "node_97",
15107 "next_tables" : {
15108 "act_34" : "node_97"
15109 },
15110 "default_entry" : {
15111 "action_id" : 118,
15112 "action_const" : true,
15113 "action_data" : [],
15114 "action_entry_const" : true
15115 }
15116 },
15117 {
15118 "name" : "tbl_act_35",
15119 "id" : 60,
15120 "key" : [],
15121 "match_type" : "exact",
15122 "type" : "simple",
15123 "max_size" : 1024,
15124 "with_counters" : false,
15125 "support_timeout" : false,
15126 "direct_meters" : null,
15127 "action_ids" : [119],
15128 "actions" : ["act_35"],
15129 "base_default_next" : null,
15130 "next_tables" : {
15131 "act_35" : null
15132 },
15133 "default_entry" : {
15134 "action_id" : 119,
15135 "action_const" : true,
15136 "action_data" : [],
15137 "action_entry_const" : true
15138 }
15139 }
15140 ],
15141 "action_profiles" : [],
15142 "conditionals" : [
15143 {
15144 "name" : "node_69",
15145 "id" : 20,
15146 "source_info" : {
15147 "filename" : "include/control/packetio.p4",
15148 "line" : 44,
15149 "column" : 12,
15150 "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
15151 },
15152 "expression" : {
15153 "type" : "expression",
15154 "value" : {
15155 "op" : "==",
15156 "left" : {
15157 "type" : "expression",
15158 "value" : {
15159 "op" : "d2b",
15160 "left" : null,
15161 "right" : {
15162 "type" : "field",
15163 "value" : ["scalars", "fabric_metadata_t.is_controller_packet_out"]
15164 }
15165 }
15166 },
15167 "right" : {
15168 "type" : "bool",
15169 "value" : true
15170 }
15171 }
15172 },
15173 "true_next" : null,
15174 "false_next" : "node_70"
15175 },
15176 {
15177 "name" : "node_70",
15178 "id" : 21,
15179 "source_info" : {
15180 "filename" : "include/control/packetio.p4",
15181 "line" : 48,
15182 "column" : 12,
15183 "source_fragment" : "standard_metadata.egress_port == 255"
15184 },
15185 "expression" : {
15186 "type" : "expression",
15187 "value" : {
15188 "op" : "==",
15189 "left" : {
15190 "type" : "field",
15191 "value" : ["standard_metadata", "egress_port"]
15192 },
15193 "right" : {
15194 "type" : "hexstr",
15195 "value" : "0x00ff"
15196 }
15197 }
15198 },
15199 "true_next" : "node_71",
15200 "false_next" : "node_76"
15201 },
15202 {
15203 "name" : "node_71",
15204 "id" : 22,
15205 "source_info" : {
15206 "filename" : "include/control/packetio.p4",
15207 "line" : 49,
15208 "column" : 16,
15209 "source_fragment" : "hdr.vlan_tag.isValid() && fabric_metadata.pop_vlan_when_packet_in == true"
15210 },
15211 "expression" : {
15212 "type" : "expression",
15213 "value" : {
15214 "op" : "and",
15215 "left" : {
15216 "type" : "expression",
15217 "value" : {
15218 "op" : "d2b",
15219 "left" : null,
15220 "right" : {
15221 "type" : "field",
15222 "value" : ["vlan_tag", "$valid$"]
15223 }
15224 }
15225 },
15226 "right" : {
15227 "type" : "expression",
15228 "value" : {
15229 "op" : "==",
15230 "left" : {
15231 "type" : "expression",
15232 "value" : {
15233 "op" : "d2b",
15234 "left" : null,
15235 "right" : {
15236 "type" : "field",
15237 "value" : ["scalars", "fabric_metadata_t.pop_vlan_when_packet_in"]
15238 }
15239 }
15240 },
15241 "right" : {
15242 "type" : "bool",
15243 "value" : true
15244 }
15245 }
15246 }
15247 }
15248 },
15249 "true_next" : "tbl_pkt_io_egress_pop_vlan",
15250 "false_next" : "node_73"
15251 },
15252 {
15253 "name" : "node_73",
15254 "id" : 23,
15255 "source_info" : {
15256 "filename" : "include/control/packetio.p4",
15257 "line" : 52,
15258 "column" : 16,
15259 "source_fragment" : "fabric_metadata.is_multicast == true && ..."
15260 },
15261 "expression" : {
15262 "type" : "expression",
15263 "value" : {
15264 "op" : "and",
15265 "left" : {
15266 "type" : "expression",
15267 "value" : {
15268 "op" : "==",
15269 "left" : {
15270 "type" : "expression",
15271 "value" : {
15272 "op" : "d2b",
15273 "left" : null,
15274 "right" : {
15275 "type" : "field",
15276 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
15277 }
15278 }
15279 },
15280 "right" : {
15281 "type" : "bool",
15282 "value" : true
15283 }
15284 }
15285 },
15286 "right" : {
15287 "type" : "expression",
15288 "value" : {
15289 "op" : "==",
15290 "left" : {
15291 "type" : "expression",
15292 "value" : {
15293 "op" : "d2b",
15294 "left" : null,
15295 "right" : {
15296 "type" : "field",
15297 "value" : ["scalars", "fabric_metadata_t.clone_to_cpu"]
15298 }
15299 }
15300 },
15301 "right" : {
15302 "type" : "bool",
15303 "value" : false
15304 }
15305 }
15306 }
15307 }
15308 },
15309 "true_next" : "tbl_drop_now_0",
15310 "false_next" : "tbl_act_29"
15311 },
15312 {
15313 "name" : "node_76",
15314 "id" : 24,
15315 "source_info" : {
15316 "filename" : "include/control/next.p4",
15317 "line" : 272,
15318 "column" : 12,
15319 "source_fragment" : "fabric_metadata.is_multicast == true ..."
15320 },
15321 "expression" : {
15322 "type" : "expression",
15323 "value" : {
15324 "op" : "and",
15325 "left" : {
15326 "type" : "expression",
15327 "value" : {
15328 "op" : "==",
15329 "left" : {
15330 "type" : "expression",
15331 "value" : {
15332 "op" : "d2b",
15333 "left" : null,
15334 "right" : {
15335 "type" : "field",
15336 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
15337 }
15338 }
15339 },
15340 "right" : {
15341 "type" : "bool",
15342 "value" : true
15343 }
15344 }
15345 },
15346 "right" : {
15347 "type" : "expression",
15348 "value" : {
15349 "op" : "==",
15350 "left" : {
15351 "type" : "field",
15352 "value" : ["standard_metadata", "ingress_port"]
15353 },
15354 "right" : {
15355 "type" : "field",
15356 "value" : ["standard_metadata", "egress_port"]
15357 }
15358 }
15359 }
15360 }
15361 },
15362 "true_next" : "tbl_drop_now_1",
15363 "false_next" : "FabricEgress.egress_next.egress_vlan"
15364 },
15365 {
15366 "name" : "node_79",
15367 "id" : 25,
15368 "source_info" : {
15369 "filename" : "include/spgw.p4",
15370 "line" : 221,
15371 "column" : 12,
15372 "source_fragment" : "spgw_meta.direction == SPGW_DIR_DOWNLINK"
15373 },
15374 "expression" : {
15375 "type" : "expression",
15376 "value" : {
15377 "op" : "==",
15378 "left" : {
15379 "type" : "field",
15380 "value" : ["userMetadata.spgw", "direction"]
15381 },
15382 "right" : {
15383 "type" : "hexstr",
15384 "value" : "0x02"
15385 }
15386 }
15387 },
15388 "true_next" : "tbl_spgw_egress_gtpu_encap",
15389 "false_next" : "node_81"
15390 },
15391 {
15392 "name" : "node_81",
15393 "id" : 26,
15394 "source_info" : {
15395 "filename" : "include/int/int_main.p4",
15396 "line" : 98,
15397 "column" : 12,
15398 "source_fragment" : "standard_metadata.ingress_port != 255 && ..."
15399 },
15400 "expression" : {
15401 "type" : "expression",
15402 "value" : {
15403 "op" : "and",
15404 "left" : {
15405 "type" : "expression",
15406 "value" : {
15407 "op" : "and",
15408 "left" : {
15409 "type" : "expression",
15410 "value" : {
15411 "op" : "!=",
15412 "left" : {
15413 "type" : "field",
15414 "value" : ["standard_metadata", "ingress_port"]
15415 },
15416 "right" : {
15417 "type" : "hexstr",
15418 "value" : "0x00ff"
15419 }
15420 }
15421 },
15422 "right" : {
15423 "type" : "expression",
15424 "value" : {
15425 "op" : "!=",
15426 "left" : {
15427 "type" : "field",
15428 "value" : ["standard_metadata", "egress_port"]
15429 },
15430 "right" : {
15431 "type" : "hexstr",
15432 "value" : "0x00ff"
15433 }
15434 }
15435 }
15436 }
15437 },
15438 "right" : {
15439 "type" : "expression",
15440 "value" : {
15441 "op" : "or",
15442 "left" : {
15443 "type" : "expression",
15444 "value" : {
15445 "op" : "d2b",
15446 "left" : null,
15447 "right" : {
15448 "type" : "field",
15449 "value" : ["udp", "$valid$"]
15450 }
15451 }
15452 },
15453 "right" : {
15454 "type" : "expression",
15455 "value" : {
15456 "op" : "d2b",
15457 "left" : null,
15458 "right" : {
15459 "type" : "field",
15460 "value" : ["tcp", "$valid$"]
15461 }
15462 }
15463 }
15464 }
15465 }
15466 }
15467 },
15468 "false_next" : null,
15469 "true_next" : "node_82"
15470 },
15471 {
15472 "name" : "node_82",
15473 "id" : 27,
15474 "source_info" : {
15475 "filename" : "include/int/int_main.p4",
15476 "line" : 102,
15477 "column" : 16,
15478 "source_fragment" : "fabric_metadata.int_meta.source == true"
15479 },
15480 "expression" : {
15481 "type" : "expression",
15482 "value" : {
15483 "op" : "==",
15484 "left" : {
15485 "type" : "expression",
15486 "value" : {
15487 "op" : "d2b",
15488 "left" : null,
15489 "right" : {
15490 "type" : "field",
15491 "value" : ["userMetadata.int_meta", "source"]
15492 }
15493 }
15494 },
15495 "right" : {
15496 "type" : "bool",
15497 "value" : true
15498 }
15499 }
15500 },
15501 "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
15502 "false_next" : "node_84"
15503 },
15504 {
15505 "name" : "node_84",
15506 "id" : 28,
15507 "source_info" : {
15508 "filename" : "include/int/int_main.p4",
15509 "line" : 106,
15510 "column" : 15,
15511 "source_fragment" : "hdr.int_header.isValid()"
15512 },
15513 "expression" : {
15514 "type" : "expression",
15515 "value" : {
15516 "op" : "d2b",
15517 "left" : null,
15518 "right" : {
15519 "type" : "field",
15520 "value" : ["int_header", "$valid$"]
15521 }
15522 }
15523 },
15524 "false_next" : null,
15525 "true_next" : "tbl_act_30"
15526 },
15527 {
15528 "name" : "node_87",
15529 "id" : 29,
15530 "source_info" : {
15531 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015532 "line" : 375,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015533 "column" : 12,
15534 "source_fragment" : "fmeta.int_meta.transit == false"
15535 },
15536 "expression" : {
15537 "type" : "expression",
15538 "value" : {
15539 "op" : "==",
15540 "left" : {
15541 "type" : "expression",
15542 "value" : {
15543 "op" : "d2b",
15544 "left" : null,
15545 "right" : {
15546 "type" : "field",
15547 "value" : ["userMetadata.int_meta", "transit"]
15548 }
15549 }
15550 },
15551 "right" : {
15552 "type" : "bool",
15553 "value" : false
15554 }
15555 }
15556 },
15557 "true_next" : "tbl_act_31",
15558 "false_next" : "node_89"
15559 },
15560 {
15561 "name" : "node_89",
15562 "id" : 30,
15563 "expression" : {
15564 "type" : "expression",
15565 "value" : {
15566 "op" : "not",
15567 "left" : null,
15568 "right" : {
15569 "type" : "expression",
15570 "value" : {
15571 "op" : "d2b",
15572 "left" : null,
15573 "right" : {
15574 "type" : "field",
15575 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned_0"]
15576 }
15577 }
15578 }
15579 }
15580 },
15581 "false_next" : null,
15582 "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
15583 },
15584 {
15585 "name" : "node_93",
15586 "id" : 31,
15587 "source_info" : {
15588 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015589 "line" : 383,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015590 "column" : 12,
15591 "source_fragment" : "hdr.ipv4.isValid()"
15592 },
15593 "expression" : {
15594 "type" : "expression",
15595 "value" : {
15596 "op" : "d2b",
15597 "left" : null,
15598 "right" : {
15599 "type" : "field",
15600 "value" : ["ipv4", "$valid$"]
15601 }
15602 }
15603 },
15604 "true_next" : "tbl_act_33",
15605 "false_next" : "node_95"
15606 },
15607 {
15608 "name" : "node_95",
15609 "id" : 32,
15610 "source_info" : {
15611 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015612 "line" : 386,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015613 "column" : 12,
15614 "source_fragment" : "hdr.udp.isValid()"
15615 },
15616 "expression" : {
15617 "type" : "expression",
15618 "value" : {
15619 "op" : "d2b",
15620 "left" : null,
15621 "right" : {
15622 "type" : "field",
15623 "value" : ["udp", "$valid$"]
15624 }
15625 }
15626 },
15627 "true_next" : "tbl_act_34",
15628 "false_next" : "node_97"
15629 },
15630 {
15631 "name" : "node_97",
15632 "id" : 33,
15633 "source_info" : {
15634 "filename" : "include/int/int_transit.p4",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015635 "line" : 389,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015636 "column" : 12,
15637 "source_fragment" : "hdr.intl4_shim.isValid()"
15638 },
15639 "expression" : {
15640 "type" : "expression",
15641 "value" : {
15642 "op" : "d2b",
15643 "left" : null,
15644 "right" : {
15645 "type" : "field",
15646 "value" : ["intl4_shim", "$valid$"]
15647 }
15648 }
15649 },
15650 "false_next" : null,
15651 "true_next" : "tbl_act_35"
15652 }
15653 ]
15654 }
15655 ],
15656 "checksums" : [
15657 {
15658 "name" : "cksum",
15659 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015660 "source_info" : {
15661 "filename" : "include/checksum.p4",
15662 "line" : 28,
15663 "column" : 8,
15664 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
15665 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015666 "target" : ["ipv4", "hdr_checksum"],
15667 "type" : "generic",
15668 "calculation" : "calc",
15669 "if_cond" : {
15670 "type" : "expression",
15671 "value" : {
15672 "op" : "d2b",
15673 "left" : null,
15674 "right" : {
15675 "type" : "field",
15676 "value" : ["ipv4", "$valid$"]
15677 }
15678 }
15679 }
15680 },
15681 {
15682 "name" : "cksum_0",
15683 "id" : 1,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015684 "source_info" : {
15685 "filename" : "include/spgw.p4",
15686 "line" : 237,
15687 "column" : 8,
15688 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
15689 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015690 "target" : ["gtpu_ipv4", "hdr_checksum"],
15691 "type" : "generic",
15692 "calculation" : "calc_0",
15693 "if_cond" : {
15694 "type" : "expression",
15695 "value" : {
15696 "op" : "d2b",
15697 "left" : null,
15698 "right" : {
15699 "type" : "field",
15700 "value" : ["gtpu_ipv4", "$valid$"]
15701 }
15702 }
15703 }
15704 },
15705 {
15706 "name" : "cksum_1",
15707 "id" : 2,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015708 "source_info" : {
15709 "filename" : "include/checksum.p4",
15710 "line" : 57,
15711 "column" : 8,
15712 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
15713 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015714 "target" : ["ipv4", "hdr_checksum"],
15715 "type" : "generic",
15716 "calculation" : "calc_1",
15717 "if_cond" : {
15718 "type" : "expression",
15719 "value" : {
15720 "op" : "d2b",
15721 "left" : null,
15722 "right" : {
15723 "type" : "field",
15724 "value" : ["ipv4", "$valid$"]
15725 }
15726 }
15727 }
15728 }
15729 ],
15730 "force_arith" : [],
15731 "extern_instances" : [],
15732 "field_aliases" : [
15733 [
15734 "queueing_metadata.enq_timestamp",
15735 ["standard_metadata", "enq_timestamp"]
15736 ],
15737 [
15738 "queueing_metadata.enq_qdepth",
15739 ["standard_metadata", "enq_qdepth"]
15740 ],
15741 [
15742 "queueing_metadata.deq_timedelta",
15743 ["standard_metadata", "deq_timedelta"]
15744 ],
15745 [
15746 "queueing_metadata.deq_qdepth",
15747 ["standard_metadata", "deq_qdepth"]
15748 ],
15749 [
15750 "intrinsic_metadata.ingress_global_timestamp",
15751 ["standard_metadata", "ingress_global_timestamp"]
15752 ],
15753 [
15754 "intrinsic_metadata.egress_global_timestamp",
15755 ["standard_metadata", "egress_global_timestamp"]
15756 ],
15757 [
15758 "intrinsic_metadata.lf_field_list",
15759 ["standard_metadata", "lf_field_list"]
15760 ],
15761 [
15762 "intrinsic_metadata.mcast_grp",
15763 ["standard_metadata", "mcast_grp"]
15764 ],
15765 [
15766 "intrinsic_metadata.resubmit_flag",
15767 ["standard_metadata", "resubmit_flag"]
15768 ],
15769 [
15770 "intrinsic_metadata.egress_rid",
15771 ["standard_metadata", "egress_rid"]
15772 ],
15773 [
15774 "intrinsic_metadata.recirculate_flag",
15775 ["standard_metadata", "recirculate_flag"]
15776 ]
15777 ],
15778 "program" : "fabric.p4",
15779 "__meta__" : {
15780 "version" : [2, 18],
15781 "compiler" : "https://github.com/p4lang/p4c"
15782 }
15783}