blob: f83c2ea3c6bceba699f1c9901e700fe722ce2e33 [file] [log] [blame]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001{
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002 "header_types" : [
3 {
4 "name" : "scalars_0",
5 "id" : 0,
6 "fields" : [
Jonghwan Hyun8be03392017-12-04 15:48:44 -08007 ["tmp", 1, false],
8 ["tmp_0", 1, false],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009 ["tmp_1", 32, false],
Jonghwan Hyun8be03392017-12-04 15:48:44 -080010 ["tmp_2", 32, false],
11 ["tmp_3", 32, false],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080012 ["local_metadata_t.l4_src_port", 16, false],
13 ["local_metadata_t.l4_dst_port", 16, false],
14 ["local_metadata_t.next_hop_id", 16, false],
Jonghwan Hyun8be03392017-12-04 15:48:44 -080015 ["local_metadata_t.selector", 16, false],
Keesjan Karsten23368892018-05-22 10:46:01 +000016 ["_padding_2", 6, false]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080017 ]
18 },
19 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080020 "name" : "standard_metadata",
Carmelo Cascone6af4e172018-06-15 16:01:30 +020021 "id" : 1,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080022 "fields" : [
23 ["ingress_port", 9, false],
24 ["egress_spec", 9, false],
25 ["egress_port", 9, false],
26 ["clone_spec", 32, false],
27 ["instance_type", 32, false],
28 ["drop", 1, false],
29 ["recirculate_port", 16, false],
30 ["packet_length", 32, false],
31 ["enq_timestamp", 32, false],
32 ["enq_qdepth", 19, false],
33 ["deq_timedelta", 32, false],
34 ["deq_qdepth", 19, false],
35 ["ingress_global_timestamp", 48, false],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070036 ["egress_global_timestamp", 48, false],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080037 ["lf_field_list", 32, false],
38 ["mcast_grp", 16, false],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070039 ["resubmit_flag", 32, false],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080040 ["egress_rid", 16, false],
41 ["checksum_error", 1, false],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070042 ["recirculate_flag", 32, false],
Carmelo Casconeb0f45fe2018-10-11 08:31:59 -070043 ["parser_error", 32, false],
Carmelo Cascone6af4e172018-06-15 16:01:30 +020044 ["_padding_0", 5, false]
45 ]
46 },
47 {
48 "name" : "packet_out_header_t",
49 "id" : 2,
50 "fields" : [
51 ["egress_port", 9, false],
52 ["_padding", 7, false]
53 ]
54 },
55 {
56 "name" : "packet_in_header_t",
57 "id" : 3,
58 "fields" : [
59 ["ingress_port", 9, false],
60 ["_padding", 7, false]
61 ]
62 },
63 {
64 "name" : "ethernet_t",
65 "id" : 4,
66 "fields" : [
67 ["dst_addr", 48, false],
68 ["src_addr", 48, false],
69 ["ether_type", 16, false]
70 ]
71 },
72 {
73 "name" : "ipv4_t",
74 "id" : 5,
75 "fields" : [
76 ["version", 4, false],
77 ["ihl", 4, false],
78 ["dscp", 6, false],
79 ["ecn", 2, false],
80 ["len", 16, false],
81 ["identification", 16, false],
82 ["flags", 3, false],
83 ["frag_offset", 13, false],
84 ["ttl", 8, false],
85 ["protocol", 8, false],
86 ["hdr_checksum", 16, false],
87 ["src_addr", 32, false],
88 ["dst_addr", 32, false]
89 ]
90 },
91 {
92 "name" : "tcp_t",
93 "id" : 6,
94 "fields" : [
95 ["src_port", 16, false],
96 ["dst_port", 16, false],
97 ["seq_no", 32, false],
98 ["ack_no", 32, false],
99 ["data_offset", 4, false],
100 ["res", 3, false],
101 ["ecn", 3, false],
102 ["ctrl", 6, false],
103 ["window", 16, false],
104 ["checksum", 16, false],
105 ["urgent_ptr", 16, false]
106 ]
107 },
108 {
109 "name" : "udp_t",
110 "id" : 7,
111 "fields" : [
112 ["src_port", 16, false],
113 ["dst_port", 16, false],
114 ["length_", 16, false],
115 ["checksum", 16, false]
116 ]
117 },
118 {
119 "name" : "intl4_shim_t",
120 "id" : 8,
121 "fields" : [
122 ["int_type", 8, false],
123 ["rsvd1", 8, false],
124 ["len", 8, false],
125 ["rsvd2", 8, false]
126 ]
127 },
128 {
129 "name" : "int_header_t",
130 "id" : 9,
131 "fields" : [
132 ["ver", 2, false],
133 ["rep", 2, false],
134 ["c", 1, false],
135 ["e", 1, false],
136 ["rsvd1", 5, false],
137 ["ins_cnt", 5, false],
138 ["max_hop_cnt", 8, false],
139 ["total_hop_cnt", 8, false],
140 ["instruction_mask_0003", 4, false],
141 ["instruction_mask_0407", 4, false],
142 ["instruction_mask_0811", 4, false],
143 ["instruction_mask_1215", 4, false],
144 ["rsvd2", 16, false]
145 ]
146 },
147 {
148 "name" : "int_data_t",
149 "id" : 10,
150 "fields" : [
151 ["data", "*"]
152 ],
153 "max_length" : 1004
154 },
155 {
156 "name" : "int_switch_id_t",
157 "id" : 11,
158 "fields" : [
159 ["switch_id", 32, false]
160 ]
161 },
162 {
163 "name" : "int_port_ids_t",
164 "id" : 12,
165 "fields" : [
166 ["ingress_port_id", 16, false],
167 ["egress_port_id", 16, false]
168 ]
169 },
170 {
171 "name" : "int_hop_latency_t",
172 "id" : 13,
173 "fields" : [
174 ["hop_latency", 32, false]
175 ]
176 },
177 {
178 "name" : "int_q_occupancy_t",
179 "id" : 14,
180 "fields" : [
181 ["q_id", 8, false],
182 ["q_occupancy", 24, false]
183 ]
184 },
185 {
186 "name" : "int_ingress_tstamp_t",
187 "id" : 15,
188 "fields" : [
189 ["ingress_tstamp", 32, false]
190 ]
191 },
192 {
193 "name" : "int_egress_tstamp_t",
194 "id" : 16,
195 "fields" : [
196 ["egress_tstamp", 32, false]
197 ]
198 },
199 {
200 "name" : "int_q_congestion_t",
201 "id" : 17,
202 "fields" : [
203 ["q_id", 8, false],
204 ["q_congestion", 24, false]
205 ]
206 },
207 {
208 "name" : "int_egress_port_tx_util_t",
209 "id" : 18,
210 "fields" : [
211 ["egress_port_tx_util", 32, false]
212 ]
213 },
214 {
215 "name" : "intl4_tail_t",
216 "id" : 19,
217 "fields" : [
218 ["next_proto", 8, false],
219 ["dest_port", 16, false],
220 ["dscp", 8, false]
221 ]
222 },
223 {
224 "name" : "int_metadata_t",
225 "id" : 20,
226 "fields" : [
227 ["switch_id", 32, false],
228 ["insert_byte_cnt", 16, false],
229 ["source", 1, false],
230 ["sink", 1, false],
231 ["mirror_id", 8, false],
232 ["flow_id", 16, false],
233 ["metadata_len", 8, false],
234 ["_padding_1", 6, false]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800235 ]
236 }
237 ],
238 "headers" : [
239 {
240 "name" : "scalars",
241 "id" : 0,
242 "header_type" : "scalars_0",
243 "metadata" : true,
244 "pi_omit" : true
245 },
246 {
247 "name" : "standard_metadata",
248 "id" : 1,
249 "header_type" : "standard_metadata",
250 "metadata" : true,
251 "pi_omit" : true
252 },
253 {
254 "name" : "packet_out",
255 "id" : 2,
256 "header_type" : "packet_out_header_t",
257 "metadata" : false,
258 "pi_omit" : true
259 },
260 {
261 "name" : "packet_in",
262 "id" : 3,
263 "header_type" : "packet_in_header_t",
264 "metadata" : false,
265 "pi_omit" : true
266 },
267 {
268 "name" : "ethernet",
269 "id" : 4,
270 "header_type" : "ethernet_t",
271 "metadata" : false,
272 "pi_omit" : true
273 },
274 {
275 "name" : "ipv4",
276 "id" : 5,
277 "header_type" : "ipv4_t",
278 "metadata" : false,
279 "pi_omit" : true
280 },
281 {
282 "name" : "tcp",
283 "id" : 6,
284 "header_type" : "tcp_t",
285 "metadata" : false,
286 "pi_omit" : true
287 },
288 {
289 "name" : "udp",
290 "id" : 7,
291 "header_type" : "udp_t",
292 "metadata" : false,
293 "pi_omit" : true
294 },
295 {
296 "name" : "intl4_shim",
297 "id" : 8,
298 "header_type" : "intl4_shim_t",
299 "metadata" : false,
300 "pi_omit" : true
301 },
302 {
303 "name" : "int_header",
304 "id" : 9,
305 "header_type" : "int_header_t",
306 "metadata" : false,
307 "pi_omit" : true
308 },
309 {
310 "name" : "int_data",
311 "id" : 10,
312 "header_type" : "int_data_t",
313 "metadata" : false,
314 "pi_omit" : true
315 },
316 {
317 "name" : "int_switch_id",
318 "id" : 11,
319 "header_type" : "int_switch_id_t",
320 "metadata" : false,
321 "pi_omit" : true
322 },
323 {
324 "name" : "int_port_ids",
325 "id" : 12,
326 "header_type" : "int_port_ids_t",
327 "metadata" : false,
328 "pi_omit" : true
329 },
330 {
331 "name" : "int_hop_latency",
332 "id" : 13,
333 "header_type" : "int_hop_latency_t",
334 "metadata" : false,
335 "pi_omit" : true
336 },
337 {
338 "name" : "int_q_occupancy",
339 "id" : 14,
340 "header_type" : "int_q_occupancy_t",
341 "metadata" : false,
342 "pi_omit" : true
343 },
344 {
345 "name" : "int_ingress_tstamp",
346 "id" : 15,
347 "header_type" : "int_ingress_tstamp_t",
348 "metadata" : false,
349 "pi_omit" : true
350 },
351 {
352 "name" : "int_egress_tstamp",
353 "id" : 16,
354 "header_type" : "int_egress_tstamp_t",
355 "metadata" : false,
356 "pi_omit" : true
357 },
358 {
359 "name" : "int_q_congestion",
360 "id" : 17,
361 "header_type" : "int_q_congestion_t",
362 "metadata" : false,
363 "pi_omit" : true
364 },
365 {
366 "name" : "int_egress_tx_util",
367 "id" : 18,
368 "header_type" : "int_egress_port_tx_util_t",
369 "metadata" : false,
370 "pi_omit" : true
371 },
372 {
373 "name" : "intl4_tail",
374 "id" : 19,
375 "header_type" : "intl4_tail_t",
376 "metadata" : false,
377 "pi_omit" : true
378 },
379 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700380 "name" : "userMetadata.int_meta",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800381 "id" : 20,
382 "header_type" : "int_metadata_t",
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800383 "metadata" : true,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800384 "pi_omit" : true
385 }
386 ],
387 "header_stacks" : [],
388 "header_union_types" : [],
389 "header_unions" : [],
390 "header_union_stacks" : [],
391 "field_lists" : [],
Carmelo Casconeb0f45fe2018-10-11 08:31:59 -0700392 "errors" : [
393 ["NoError", 1],
394 ["PacketTooShort", 2],
395 ["NoMatch", 3],
396 ["StackOutOfBounds", 4],
397 ["HeaderTooShort", 5],
398 ["ParserTimeout", 6]
399 ],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800400 "enums" : [],
401 "parsers" : [
402 {
403 "name" : "parser",
404 "id" : 0,
405 "init_state" : "start",
406 "parse_states" : [
407 {
408 "name" : "start",
409 "id" : 0,
410 "parser_ops" : [],
411 "transitions" : [
412 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700413 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800414 "value" : "0x00ff",
415 "mask" : null,
416 "next_state" : "parse_packet_out"
417 },
418 {
419 "value" : "default",
420 "mask" : null,
421 "next_state" : "parse_ethernet"
422 }
423 ],
424 "transition_key" : [
425 {
426 "type" : "field",
427 "value" : ["standard_metadata", "ingress_port"]
428 }
429 ]
430 },
431 {
432 "name" : "parse_packet_out",
433 "id" : 1,
434 "parser_ops" : [
435 {
436 "parameters" : [
437 {
438 "type" : "regular",
439 "value" : "packet_out"
440 }
441 ],
442 "op" : "extract"
443 }
444 ],
445 "transitions" : [
446 {
447 "value" : "default",
448 "mask" : null,
449 "next_state" : "parse_ethernet"
450 }
451 ],
452 "transition_key" : []
453 },
454 {
455 "name" : "parse_ethernet",
456 "id" : 2,
457 "parser_ops" : [
458 {
459 "parameters" : [
460 {
461 "type" : "regular",
462 "value" : "ethernet"
463 }
464 ],
465 "op" : "extract"
466 }
467 ],
468 "transitions" : [
469 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700470 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800471 "value" : "0x0800",
472 "mask" : null,
473 "next_state" : "parse_ipv4"
474 },
475 {
476 "value" : "default",
477 "mask" : null,
478 "next_state" : null
479 }
480 ],
481 "transition_key" : [
482 {
483 "type" : "field",
484 "value" : ["ethernet", "ether_type"]
485 }
486 ]
487 },
488 {
489 "name" : "parse_ipv4",
490 "id" : 3,
491 "parser_ops" : [
492 {
493 "parameters" : [
494 {
495 "type" : "regular",
496 "value" : "ipv4"
497 }
498 ],
499 "op" : "extract"
500 }
501 ],
502 "transitions" : [
503 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700504 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800505 "value" : "0x06",
506 "mask" : null,
507 "next_state" : "parse_tcp"
508 },
509 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700510 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800511 "value" : "0x11",
512 "mask" : null,
513 "next_state" : "parse_udp"
514 },
515 {
516 "value" : "default",
517 "mask" : null,
518 "next_state" : null
519 }
520 ],
521 "transition_key" : [
522 {
523 "type" : "field",
524 "value" : ["ipv4", "protocol"]
525 }
526 ]
527 },
528 {
529 "name" : "parse_tcp",
530 "id" : 4,
531 "parser_ops" : [
532 {
533 "parameters" : [
534 {
535 "type" : "regular",
536 "value" : "tcp"
537 }
538 ],
539 "op" : "extract"
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800540 },
541 {
542 "parameters" : [
543 {
544 "type" : "field",
545 "value" : ["scalars", "local_metadata_t.l4_src_port"]
546 },
547 {
548 "type" : "field",
549 "value" : ["tcp", "src_port"]
550 }
551 ],
552 "op" : "set"
553 },
554 {
555 "parameters" : [
556 {
557 "type" : "field",
558 "value" : ["scalars", "local_metadata_t.l4_dst_port"]
559 },
560 {
561 "type" : "field",
562 "value" : ["tcp", "dst_port"]
563 }
564 ],
565 "op" : "set"
566 },
567 {
568 "parameters" : [
569 {
570 "type" : "field",
571 "value" : ["scalars", "tmp"]
572 },
573 {
574 "type" : "expression",
575 "value" : {
576 "type" : "expression",
577 "value" : {
578 "op" : "?",
579 "left" : {
580 "type" : "hexstr",
581 "value" : "0x01"
582 },
583 "right" : {
584 "type" : "hexstr",
585 "value" : "0x00"
586 },
587 "cond" : {
588 "type" : "expression",
589 "value" : {
590 "op" : "==",
591 "left" : {
592 "type" : "expression",
593 "value" : {
594 "op" : "&",
595 "left" : {
596 "type" : "field",
597 "value" : ["ipv4", "dscp"]
598 },
599 "right" : {
600 "type" : "hexstr",
601 "value" : "0x01"
602 }
603 }
604 },
605 "right" : {
606 "type" : "hexstr",
607 "value" : "0x01"
608 }
609 }
610 }
611 }
612 }
613 }
614 ],
615 "op" : "set"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800616 }
617 ],
618 "transitions" : [
619 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700620 "type" : "hexstr",
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800621 "value" : "0x01",
622 "mask" : null,
623 "next_state" : "parse_intl4_shim"
624 },
625 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800626 "value" : "default",
627 "mask" : null,
628 "next_state" : null
629 }
630 ],
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800631 "transition_key" : [
632 {
633 "type" : "field",
634 "value" : ["scalars", "tmp"]
635 }
636 ]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800637 },
638 {
639 "name" : "parse_udp",
640 "id" : 5,
641 "parser_ops" : [
642 {
643 "parameters" : [
644 {
645 "type" : "regular",
646 "value" : "udp"
647 }
648 ],
649 "op" : "extract"
650 },
651 {
652 "parameters" : [
653 {
654 "type" : "field",
655 "value" : ["scalars", "local_metadata_t.l4_src_port"]
656 },
657 {
658 "type" : "field",
659 "value" : ["udp", "src_port"]
660 }
661 ],
662 "op" : "set"
663 },
664 {
665 "parameters" : [
666 {
667 "type" : "field",
668 "value" : ["scalars", "local_metadata_t.l4_dst_port"]
669 },
670 {
671 "type" : "field",
672 "value" : ["udp", "dst_port"]
673 }
674 ],
675 "op" : "set"
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800676 },
677 {
678 "parameters" : [
679 {
680 "type" : "field",
681 "value" : ["scalars", "tmp_0"]
682 },
683 {
684 "type" : "expression",
685 "value" : {
686 "type" : "expression",
687 "value" : {
688 "op" : "?",
689 "left" : {
690 "type" : "hexstr",
691 "value" : "0x01"
692 },
693 "right" : {
694 "type" : "hexstr",
695 "value" : "0x00"
696 },
697 "cond" : {
698 "type" : "expression",
699 "value" : {
700 "op" : "==",
701 "left" : {
702 "type" : "expression",
703 "value" : {
704 "op" : "&",
705 "left" : {
706 "type" : "field",
707 "value" : ["ipv4", "dscp"]
708 },
709 "right" : {
710 "type" : "hexstr",
711 "value" : "0x01"
712 }
713 }
714 },
715 "right" : {
716 "type" : "hexstr",
717 "value" : "0x01"
718 }
719 }
720 }
721 }
722 }
723 }
724 ],
725 "op" : "set"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800726 }
727 ],
728 "transitions" : [
729 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700730 "type" : "hexstr",
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800731 "value" : "0x01",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800732 "mask" : null,
733 "next_state" : "parse_intl4_shim"
734 },
735 {
736 "value" : "default",
737 "mask" : null,
738 "next_state" : null
739 }
740 ],
741 "transition_key" : [
742 {
743 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800744 "value" : ["scalars", "tmp_0"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800745 }
746 ]
747 },
748 {
749 "name" : "parse_intl4_shim",
750 "id" : 6,
751 "parser_ops" : [
752 {
753 "parameters" : [
754 {
755 "type" : "regular",
756 "value" : "intl4_shim"
757 }
758 ],
759 "op" : "extract"
760 },
761 {
762 "parameters" : [
763 {
764 "type" : "regular",
765 "value" : "int_header"
766 }
767 ],
768 "op" : "extract"
769 },
770 {
771 "parameters" : [
772 {
773 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700774 "value" : ["userMetadata.int_meta", "metadata_len"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800775 },
776 {
777 "type" : "expression",
778 "value" : {
779 "type" : "expression",
780 "value" : {
781 "op" : "&",
782 "left" : {
783 "type" : "expression",
784 "value" : {
785 "op" : "+",
786 "left" : {
787 "type" : "field",
788 "value" : ["intl4_shim", "len"]
789 },
790 "right" : {
791 "type" : "hexstr",
792 "value" : "0xfc"
793 }
794 }
795 },
796 "right" : {
797 "type" : "hexstr",
798 "value" : "0xff"
799 }
800 }
801 }
802 }
803 ],
804 "op" : "set"
805 }
806 ],
807 "transitions" : [
808 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700809 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800810 "value" : "0x00",
811 "mask" : null,
812 "next_state" : "parse_intl4_tail"
813 },
814 {
815 "value" : "default",
816 "mask" : null,
817 "next_state" : "parse_int_data"
818 }
819 ],
820 "transition_key" : [
821 {
822 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700823 "value" : ["userMetadata.int_meta", "metadata_len"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800824 }
825 ]
826 },
827 {
828 "name" : "parse_int_data",
829 "id" : 7,
830 "parser_ops" : [
831 {
832 "parameters" : [
833 {
834 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800835 "value" : ["scalars", "tmp_1"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800836 },
837 {
838 "type" : "expression",
839 "value" : {
840 "type" : "expression",
841 "value" : {
842 "op" : "&",
843 "left" : {
844 "type" : "expression",
845 "value" : {
846 "op" : "&",
847 "left" : {
848 "type" : "expression",
849 "value" : {
850 "op" : "<<",
851 "left" : {
852 "type" : "expression",
853 "value" : {
854 "op" : "&",
855 "left" : {
856 "type" : "expression",
857 "value" : {
858 "op" : "+",
859 "left" : {
860 "type" : "field",
861 "value" : ["intl4_shim", "len"]
862 },
863 "right" : {
864 "type" : "hexstr",
865 "value" : "0xfc"
866 }
867 }
868 },
869 "right" : {
870 "type" : "hexstr",
871 "value" : "0xff"
872 }
873 }
874 },
875 "right" : {
876 "type" : "hexstr",
877 "value" : "0x5"
878 }
879 }
880 },
881 "right" : {
882 "type" : "hexstr",
883 "value" : "0xff"
884 }
885 }
886 },
887 "right" : {
888 "type" : "hexstr",
889 "value" : "0xffffffff"
890 }
891 }
892 }
893 }
894 ],
895 "op" : "set"
896 },
897 {
898 "parameters" : [
899 {
900 "type" : "regular",
901 "value" : "int_data"
902 },
903 {
904 "type" : "expression",
905 "value" : {
906 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800907 "value" : ["scalars", "tmp_1"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800908 }
909 }
910 ],
911 "op" : "extract_VL"
912 }
913 ],
914 "transitions" : [
915 {
916 "value" : "default",
917 "mask" : null,
918 "next_state" : "parse_intl4_tail"
919 }
920 ],
921 "transition_key" : []
922 },
923 {
924 "name" : "parse_intl4_tail",
925 "id" : 8,
926 "parser_ops" : [
927 {
928 "parameters" : [
929 {
930 "type" : "regular",
931 "value" : "intl4_tail"
932 }
933 ],
934 "op" : "extract"
935 }
936 ],
937 "transitions" : [
938 {
939 "value" : "default",
940 "mask" : null,
941 "next_state" : null
942 }
943 ],
944 "transition_key" : []
945 }
946 ]
947 }
948 ],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700949 "parse_vsets" : [],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800950 "deparsers" : [
951 {
952 "name" : "deparser",
953 "id" : 0,
954 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700955 "filename" : "include/int_parser.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800956 "line" : 104,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800957 "column" : 8,
958 "source_fragment" : "int_deparser"
959 },
960 "order" : ["packet_in", "ethernet", "ipv4", "tcp", "udp", "intl4_shim", "int_header", "int_switch_id", "int_port_ids", "int_hop_latency", "int_q_occupancy", "int_ingress_tstamp", "int_egress_tstamp", "int_q_congestion", "int_egress_tx_util", "int_data", "intl4_tail"]
961 }
962 ],
963 "meter_arrays" : [],
964 "counter_arrays" : [
965 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700966 "name" : "ingress.port_counters_ingress.ingress_port_counter",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800967 "id" : 0,
968 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700969 "filename" : "include/port_counters.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800970 "line" : 26,
971 "column" : 38,
972 "source_fragment" : "ingress_port_counter"
973 },
974 "size" : 511,
975 "is_direct" : false
976 },
977 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700978 "name" : "ingress.table0_control.table0_counter",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800979 "id" : 1,
980 "is_direct" : true,
Carmelo Casconeb0f45fe2018-10-11 08:31:59 -0700981 "binding" : "ingress.table0_control.table0",
982 "source_info" : {
983 "filename" : "include/table0.p4",
984 "line" : 27,
985 "column" : 50,
986 "source_fragment" : "table0_counter"
987 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800988 },
989 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700990 "name" : "egress.process_set_source_sink.counter_set_source",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800991 "id" : 2,
992 "is_direct" : true,
Carmelo Casconeb0f45fe2018-10-11 08:31:59 -0700993 "binding" : "egress.process_set_source_sink.tb_set_source",
994 "source_info" : {
995 "filename" : "include/int_source.p4",
996 "line" : 90,
997 "column" : 50,
998 "source_fragment" : "counter_set_source"
999 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001000 },
1001 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001002 "name" : "egress.process_set_source_sink.counter_set_sink",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001003 "id" : 3,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001004 "is_direct" : true,
Carmelo Casconeb0f45fe2018-10-11 08:31:59 -07001005 "binding" : "egress.process_set_source_sink.tb_set_sink",
1006 "source_info" : {
1007 "filename" : "include/int_source.p4",
1008 "line" : 91,
1009 "column" : 50,
1010 "source_fragment" : "counter_set_sink"
1011 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001012 },
1013 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001014 "name" : "egress.process_int_source.counter_int_source",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001015 "id" : 4,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001016 "is_direct" : true,
Carmelo Casconeb0f45fe2018-10-11 08:31:59 -07001017 "binding" : "egress.process_int_source.tb_int_source",
1018 "source_info" : {
1019 "filename" : "include/int_source.p4",
1020 "line" : 27,
1021 "column" : 50,
1022 "source_fragment" : "counter_int_source"
1023 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001024 },
1025 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001026 "name" : "egress.process_int_transit.counter_int_insert",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001027 "id" : 5,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001028 "is_direct" : true,
Carmelo Casconeb0f45fe2018-10-11 08:31:59 -07001029 "binding" : "egress.process_int_transit.tb_int_insert",
1030 "source_info" : {
1031 "filename" : "include/int_transit.p4",
1032 "line" : 25,
1033 "column" : 50,
1034 "source_fragment" : "counter_int_insert"
1035 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001036 },
1037 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001038 "name" : "egress.process_int_transit.counter_int_inst_0003",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001039 "id" : 6,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001040 "is_direct" : true,
Carmelo Casconeb0f45fe2018-10-11 08:31:59 -07001041 "binding" : "egress.process_int_transit.tb_int_inst_0003",
1042 "source_info" : {
1043 "filename" : "include/int_transit.p4",
1044 "line" : 26,
1045 "column" : 50,
1046 "source_fragment" : "counter_int_inst_0003"
1047 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001048 },
1049 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001050 "name" : "egress.process_int_transit.counter_int_inst_0407",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001051 "id" : 7,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001052 "is_direct" : true,
Carmelo Casconeb0f45fe2018-10-11 08:31:59 -07001053 "binding" : "egress.process_int_transit.tb_int_inst_0407",
1054 "source_info" : {
1055 "filename" : "include/int_transit.p4",
1056 "line" : 27,
1057 "column" : 50,
1058 "source_fragment" : "counter_int_inst_0407"
1059 }
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001060 },
1061 {
1062 "name" : "egress.port_counters_egress.egress_port_counter",
1063 "id" : 8,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001064 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001065 "filename" : "include/port_counters.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001066 "line" : 36,
1067 "column" : 38,
1068 "source_fragment" : "egress_port_counter"
1069 },
1070 "size" : 511,
1071 "is_direct" : false
1072 }
1073 ],
1074 "register_arrays" : [],
1075 "calculations" : [],
1076 "learn_lists" : [],
1077 "actions" : [
1078 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001079 "name" : "_drop",
Keesjan Karsten23368892018-05-22 10:46:01 +00001080 "id" : 0,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001081 "runtime_data" : [],
1082 "primitives" : [
1083 {
1084 "op" : "drop",
1085 "parameters" : [],
1086 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001087 "filename" : "include/actions.p4",
Keesjan Karsten23368892018-05-22 10:46:01 +00001088 "line" : 24,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001089 "column" : 4,
1090 "source_fragment" : "mark_to_drop()"
1091 }
1092 }
1093 ]
1094 },
1095 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001096 "name" : "ingress.table0_control.set_next_hop_id",
Keesjan Karsten23368892018-05-22 10:46:01 +00001097 "id" : 1,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001098 "runtime_data" : [
1099 {
1100 "name" : "next_hop_id",
1101 "bitwidth" : 16
1102 }
1103 ],
1104 "primitives" : [
1105 {
1106 "op" : "assign",
1107 "parameters" : [
1108 {
1109 "type" : "field",
1110 "value" : ["scalars", "local_metadata_t.next_hop_id"]
1111 },
1112 {
1113 "type" : "runtime_data",
1114 "value" : 0
1115 }
1116 ],
1117 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001118 "filename" : "include/table0.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001119 "line" : 30,
1120 "column" : 8,
1121 "source_fragment" : "local_metadata.next_hop_id = next_hop_id"
1122 }
1123 }
1124 ]
1125 },
1126 {
Keesjan Karsten23368892018-05-22 10:46:01 +00001127 "name" : "ingress.table0_control.send_to_cpu",
1128 "id" : 2,
1129 "runtime_data" : [],
1130 "primitives" : [
1131 {
1132 "op" : "assign",
1133 "parameters" : [
1134 {
1135 "type" : "field",
1136 "value" : ["standard_metadata", "egress_spec"]
1137 },
1138 {
1139 "type" : "hexstr",
1140 "value" : "0x00ff"
1141 }
1142 ],
1143 "source_info" : {
1144 "filename" : "include/defines.p4",
1145 "line" : 28,
1146 "column" : 24,
1147 "source_fragment" : "255; ..."
1148 }
1149 }
1150 ]
1151 },
1152 {
1153 "name" : "ingress.table0_control.set_egress_port",
1154 "id" : 3,
1155 "runtime_data" : [
1156 {
1157 "name" : "port",
1158 "bitwidth" : 9
1159 }
1160 ],
1161 "primitives" : [
1162 {
1163 "op" : "assign",
1164 "parameters" : [
1165 {
1166 "type" : "field",
1167 "value" : ["standard_metadata", "egress_spec"]
1168 },
1169 {
1170 "type" : "runtime_data",
1171 "value" : 0
1172 }
1173 ],
1174 "source_info" : {
1175 "filename" : "include/table0.p4",
1176 "line" : 38,
1177 "column" : 8,
1178 "source_fragment" : "standard_metadata.egress_spec = port"
1179 }
1180 }
1181 ]
1182 },
1183 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001184 "name" : "act",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001185 "id" : 4,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001186 "runtime_data" : [],
1187 "primitives" : [
1188 {
1189 "op" : "assign",
1190 "parameters" : [
1191 {
1192 "type" : "field",
1193 "value" : ["standard_metadata", "egress_spec"]
1194 },
1195 {
1196 "type" : "field",
1197 "value" : ["packet_out", "egress_port"]
1198 }
1199 ],
1200 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001201 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001202 "line" : 27,
1203 "column" : 12,
1204 "source_fragment" : "standard_metadata.egress_spec = hdr.packet_out.egress_port"
1205 }
1206 },
1207 {
1208 "op" : "remove_header",
1209 "parameters" : [
1210 {
1211 "type" : "header",
1212 "value" : "packet_out"
1213 }
1214 ],
1215 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001216 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001217 "line" : 28,
1218 "column" : 12,
1219 "source_fragment" : "hdr.packet_out.setInvalid()"
1220 }
1221 }
1222 ]
1223 },
1224 {
1225 "name" : "act_0",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001226 "id" : 5,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001227 "runtime_data" : [],
1228 "primitives" : [
1229 {
1230 "op" : "assign",
1231 "parameters" : [
1232 {
1233 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001234 "value" : ["scalars", "tmp_2"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001235 },
1236 {
1237 "type" : "expression",
1238 "value" : {
1239 "type" : "expression",
1240 "value" : {
1241 "op" : "&",
1242 "left" : {
1243 "type" : "field",
1244 "value" : ["standard_metadata", "ingress_port"]
1245 },
1246 "right" : {
1247 "type" : "hexstr",
1248 "value" : "0xffffffff"
1249 }
1250 }
1251 }
1252 }
Carmelo Cascone6af4e172018-06-15 16:01:30 +02001253 ],
1254 "source_info" : {
1255 "filename" : "include/port_counters.p4",
1256 "line" : 29,
1257 "column" : 35,
1258 "source_fragment" : "(bit<32>) standard_metadata.ingress_port"
1259 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001260 },
1261 {
1262 "op" : "count",
1263 "parameters" : [
1264 {
1265 "type" : "counter_array",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001266 "value" : "ingress.port_counters_ingress.ingress_port_counter"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001267 },
1268 {
1269 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001270 "value" : ["scalars", "tmp_2"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001271 }
1272 ],
1273 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001274 "filename" : "include/port_counters.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001275 "line" : 29,
1276 "column" : 8,
1277 "source_fragment" : "ingress_port_counter.count((bit<32>) standard_metadata.ingress_port)"
1278 }
1279 }
1280 ]
1281 },
1282 {
1283 "name" : "NoAction",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001284 "id" : 6,
1285 "runtime_data" : [],
1286 "primitives" : []
1287 },
1288 {
1289 "name" : "NoAction",
1290 "id" : 7,
1291 "runtime_data" : [],
1292 "primitives" : []
1293 },
1294 {
1295 "name" : "NoAction",
1296 "id" : 8,
1297 "runtime_data" : [],
1298 "primitives" : []
1299 },
1300 {
1301 "name" : "NoAction",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001302 "id" : 9,
1303 "runtime_data" : [],
1304 "primitives" : []
1305 },
1306 {
1307 "name" : "NoAction",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001308 "id" : 10,
1309 "runtime_data" : [],
1310 "primitives" : []
1311 },
1312 {
1313 "name" : "NoAction",
1314 "id" : 11,
1315 "runtime_data" : [],
1316 "primitives" : []
1317 },
1318 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001319 "name" : "egress.process_set_source_sink.int_set_source",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001320 "id" : 12,
1321 "runtime_data" : [],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001322 "primitives" : [
1323 {
1324 "op" : "assign",
1325 "parameters" : [
1326 {
1327 "type" : "field",
1328 "value" : ["userMetadata.int_meta", "source"]
1329 },
1330 {
1331 "type" : "hexstr",
1332 "value" : "0x01"
1333 }
1334 ],
1335 "source_info" : {
1336 "filename" : "include/int_source.p4",
1337 "line" : 94,
1338 "column" : 8,
1339 "source_fragment" : "local_metadata.int_meta.source = 1"
1340 }
1341 }
1342 ]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001343 },
1344 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001345 "name" : "egress.process_set_source_sink.int_set_sink",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001346 "id" : 13,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001347 "runtime_data" : [],
1348 "primitives" : [
1349 {
1350 "op" : "assign",
1351 "parameters" : [
1352 {
1353 "type" : "field",
1354 "value" : ["userMetadata.int_meta", "sink"]
1355 },
1356 {
1357 "type" : "hexstr",
1358 "value" : "0x01"
1359 }
1360 ],
1361 "source_info" : {
1362 "filename" : "include/int_source.p4",
1363 "line" : 98,
1364 "column" : 8,
1365 "source_fragment" : "local_metadata.int_meta.sink = 1"
1366 }
1367 }
1368 ]
1369 },
1370 {
1371 "name" : "egress.process_int_source.int_source_dscp",
1372 "id" : 14,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001373 "runtime_data" : [
1374 {
1375 "name" : "max_hop",
1376 "bitwidth" : 8
1377 },
1378 {
1379 "name" : "ins_cnt",
1380 "bitwidth" : 5
1381 },
1382 {
1383 "name" : "ins_mask0003",
1384 "bitwidth" : 4
1385 },
1386 {
1387 "name" : "ins_mask0407",
1388 "bitwidth" : 4
1389 }
1390 ],
1391 "primitives" : [
1392 {
1393 "op" : "add_header",
1394 "parameters" : [
1395 {
1396 "type" : "header",
1397 "value" : "intl4_shim"
1398 }
1399 ],
1400 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001401 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001402 "line" : 31,
1403 "column" : 8,
1404 "source_fragment" : "hdr.intl4_shim.setValid()"
1405 }
1406 },
1407 {
1408 "op" : "assign",
1409 "parameters" : [
1410 {
1411 "type" : "field",
1412 "value" : ["intl4_shim", "int_type"]
1413 },
1414 {
1415 "type" : "hexstr",
1416 "value" : "0x01"
1417 }
1418 ],
1419 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001420 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001421 "line" : 33,
1422 "column" : 8,
1423 "source_fragment" : "hdr.intl4_shim.int_type = 1"
1424 }
1425 },
1426 {
1427 "op" : "assign",
1428 "parameters" : [
1429 {
1430 "type" : "field",
1431 "value" : ["intl4_shim", "len"]
1432 },
1433 {
1434 "type" : "hexstr",
1435 "value" : "0x04"
1436 }
1437 ],
1438 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001439 "filename" : "include/int_definitions.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001440 "line" : 29,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001441 "column" : 35,
1442 "source_fragment" : "4; ..."
1443 }
1444 },
1445 {
1446 "op" : "add_header",
1447 "parameters" : [
1448 {
1449 "type" : "header",
1450 "value" : "int_header"
1451 }
1452 ],
1453 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001454 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001455 "line" : 37,
1456 "column" : 8,
1457 "source_fragment" : "hdr.int_header.setValid()"
1458 }
1459 },
1460 {
1461 "op" : "assign",
1462 "parameters" : [
1463 {
1464 "type" : "field",
1465 "value" : ["int_header", "ver"]
1466 },
1467 {
1468 "type" : "hexstr",
1469 "value" : "0x00"
1470 }
1471 ],
1472 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001473 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001474 "line" : 38,
1475 "column" : 8,
1476 "source_fragment" : "hdr.int_header.ver = 0"
1477 }
1478 },
1479 {
1480 "op" : "assign",
1481 "parameters" : [
1482 {
1483 "type" : "field",
1484 "value" : ["int_header", "rep"]
1485 },
1486 {
1487 "type" : "hexstr",
1488 "value" : "0x00"
1489 }
1490 ],
1491 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001492 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001493 "line" : 39,
1494 "column" : 8,
1495 "source_fragment" : "hdr.int_header.rep = 0"
1496 }
1497 },
1498 {
1499 "op" : "assign",
1500 "parameters" : [
1501 {
1502 "type" : "field",
1503 "value" : ["int_header", "c"]
1504 },
1505 {
1506 "type" : "hexstr",
1507 "value" : "0x00"
1508 }
1509 ],
1510 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001511 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001512 "line" : 40,
1513 "column" : 8,
1514 "source_fragment" : "hdr.int_header.c = 0"
1515 }
1516 },
1517 {
1518 "op" : "assign",
1519 "parameters" : [
1520 {
1521 "type" : "field",
1522 "value" : ["int_header", "e"]
1523 },
1524 {
1525 "type" : "hexstr",
1526 "value" : "0x00"
1527 }
1528 ],
1529 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001530 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001531 "line" : 41,
1532 "column" : 8,
1533 "source_fragment" : "hdr.int_header.e = 0"
1534 }
1535 },
1536 {
1537 "op" : "assign",
1538 "parameters" : [
1539 {
1540 "type" : "field",
1541 "value" : ["int_header", "rsvd1"]
1542 },
1543 {
1544 "type" : "hexstr",
1545 "value" : "0x00"
1546 }
1547 ],
1548 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001549 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001550 "line" : 42,
1551 "column" : 8,
1552 "source_fragment" : "hdr.int_header.rsvd1 = 0"
1553 }
1554 },
1555 {
1556 "op" : "assign",
1557 "parameters" : [
1558 {
1559 "type" : "field",
1560 "value" : ["int_header", "ins_cnt"]
1561 },
1562 {
1563 "type" : "runtime_data",
1564 "value" : 1
1565 }
1566 ],
1567 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001568 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001569 "line" : 43,
1570 "column" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001571 "source_fragment" : "hdr.int_header.ins_cnt = ins_cnt; ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001572 }
1573 },
1574 {
1575 "op" : "assign",
1576 "parameters" : [
1577 {
1578 "type" : "field",
1579 "value" : ["int_header", "max_hop_cnt"]
1580 },
1581 {
1582 "type" : "runtime_data",
1583 "value" : 0
1584 }
1585 ],
1586 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001587 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001588 "line" : 44,
1589 "column" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001590 "source_fragment" : "hdr.int_header.max_hop_cnt = max_hop; ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001591 }
1592 },
1593 {
1594 "op" : "assign",
1595 "parameters" : [
1596 {
1597 "type" : "field",
1598 "value" : ["int_header", "total_hop_cnt"]
1599 },
1600 {
1601 "type" : "hexstr",
1602 "value" : "0x00"
1603 }
1604 ],
1605 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001606 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001607 "line" : 45,
1608 "column" : 8,
1609 "source_fragment" : "hdr.int_header.total_hop_cnt = 0"
1610 }
1611 },
1612 {
1613 "op" : "assign",
1614 "parameters" : [
1615 {
1616 "type" : "field",
1617 "value" : ["int_header", "instruction_mask_0003"]
1618 },
1619 {
1620 "type" : "runtime_data",
1621 "value" : 2
1622 }
1623 ],
1624 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001625 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001626 "line" : 46,
1627 "column" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001628 "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001629 }
1630 },
1631 {
1632 "op" : "assign",
1633 "parameters" : [
1634 {
1635 "type" : "field",
1636 "value" : ["int_header", "instruction_mask_0407"]
1637 },
1638 {
1639 "type" : "runtime_data",
1640 "value" : 3
1641 }
1642 ],
1643 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001644 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001645 "line" : 47,
1646 "column" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001647 "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001648 }
1649 },
1650 {
1651 "op" : "assign",
1652 "parameters" : [
1653 {
1654 "type" : "field",
1655 "value" : ["int_header", "instruction_mask_0811"]
1656 },
1657 {
1658 "type" : "hexstr",
1659 "value" : "0x00"
1660 }
1661 ],
1662 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001663 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001664 "line" : 48,
1665 "column" : 8,
1666 "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
1667 }
1668 },
1669 {
1670 "op" : "assign",
1671 "parameters" : [
1672 {
1673 "type" : "field",
1674 "value" : ["int_header", "instruction_mask_1215"]
1675 },
1676 {
1677 "type" : "hexstr",
1678 "value" : "0x00"
1679 }
1680 ],
1681 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001682 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001683 "line" : 49,
1684 "column" : 8,
1685 "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
1686 }
1687 },
1688 {
1689 "op" : "add_header",
1690 "parameters" : [
1691 {
1692 "type" : "header",
1693 "value" : "intl4_tail"
1694 }
1695 ],
1696 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001697 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001698 "line" : 52,
1699 "column" : 8,
1700 "source_fragment" : "hdr.intl4_tail.setValid()"
1701 }
1702 },
1703 {
1704 "op" : "assign",
1705 "parameters" : [
1706 {
1707 "type" : "field",
1708 "value" : ["intl4_tail", "next_proto"]
1709 },
1710 {
1711 "type" : "field",
1712 "value" : ["ipv4", "protocol"]
1713 }
1714 ],
1715 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001716 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001717 "line" : 53,
1718 "column" : 8,
1719 "source_fragment" : "hdr.intl4_tail.next_proto = hdr.ipv4.protocol"
1720 }
1721 },
1722 {
1723 "op" : "assign",
1724 "parameters" : [
1725 {
1726 "type" : "field",
1727 "value" : ["intl4_tail", "dest_port"]
1728 },
1729 {
1730 "type" : "field",
1731 "value" : ["scalars", "local_metadata_t.l4_dst_port"]
1732 }
1733 ],
1734 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001735 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001736 "line" : 54,
1737 "column" : 8,
1738 "source_fragment" : "hdr.intl4_tail.dest_port = local_metadata.l4_dst_port"
1739 }
1740 },
1741 {
1742 "op" : "assign",
1743 "parameters" : [
1744 {
1745 "type" : "field",
1746 "value" : ["intl4_tail", "dscp"]
1747 },
1748 {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001749 "type" : "expression",
1750 "value" : {
1751 "type" : "expression",
1752 "value" : {
1753 "op" : "&",
1754 "left" : {
1755 "type" : "field",
1756 "value" : ["ipv4", "dscp"]
1757 },
1758 "right" : {
1759 "type" : "hexstr",
1760 "value" : "0xff"
1761 }
1762 }
1763 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001764 }
1765 ],
1766 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001767 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001768 "line" : 55,
1769 "column" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001770 "source_fragment" : "hdr.intl4_tail.dscp = (bit<8>) hdr.ipv4.dscp"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001771 }
1772 },
1773 {
1774 "op" : "assign",
1775 "parameters" : [
1776 {
1777 "type" : "field",
1778 "value" : ["ipv4", "len"]
1779 },
1780 {
1781 "type" : "expression",
1782 "value" : {
1783 "type" : "expression",
1784 "value" : {
1785 "op" : "&",
1786 "left" : {
1787 "type" : "expression",
1788 "value" : {
1789 "op" : "+",
1790 "left" : {
1791 "type" : "field",
1792 "value" : ["ipv4", "len"]
1793 },
1794 "right" : {
1795 "type" : "hexstr",
1796 "value" : "0x0010"
1797 }
1798 }
1799 },
1800 "right" : {
1801 "type" : "hexstr",
1802 "value" : "0xffff"
1803 }
1804 }
1805 }
1806 }
1807 ],
1808 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001809 "filename" : "include/int_source.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001810 "line" : 58,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001811 "column" : 8,
1812 "source_fragment" : "hdr.ipv4.len = hdr.ipv4.len + 16"
1813 }
1814 },
1815 {
1816 "op" : "assign",
1817 "parameters" : [
1818 {
1819 "type" : "field",
1820 "value" : ["udp", "length_"]
1821 },
1822 {
1823 "type" : "expression",
1824 "value" : {
1825 "type" : "expression",
1826 "value" : {
1827 "op" : "&",
1828 "left" : {
1829 "type" : "expression",
1830 "value" : {
1831 "op" : "+",
1832 "left" : {
1833 "type" : "field",
1834 "value" : ["udp", "length_"]
1835 },
1836 "right" : {
1837 "type" : "hexstr",
1838 "value" : "0x0010"
1839 }
1840 }
1841 },
1842 "right" : {
1843 "type" : "hexstr",
1844 "value" : "0xffff"
1845 }
1846 }
1847 }
1848 }
1849 ],
1850 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001851 "filename" : "include/int_source.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001852 "line" : 59,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001853 "column" : 8,
1854 "source_fragment" : "hdr.udp.length_ = hdr.udp.length_ + 16"
1855 }
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001856 },
1857 {
1858 "op" : "assign",
1859 "parameters" : [
1860 {
1861 "type" : "field",
1862 "value" : ["ipv4", "dscp"]
1863 },
1864 {
1865 "type" : "hexstr",
1866 "value" : "0x01"
1867 }
1868 ],
1869 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001870 "filename" : "include/int_definitions.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001871 "line" : 24,
1872 "column" : 24,
1873 "source_fragment" : "0x1; ..."
1874 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001875 }
1876 ]
1877 },
1878 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001879 "name" : "egress.process_int_transit.int_update_total_hop_cnt",
1880 "id" : 15,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001881 "runtime_data" : [],
1882 "primitives" : [
1883 {
1884 "op" : "assign",
1885 "parameters" : [
1886 {
1887 "type" : "field",
1888 "value" : ["int_header", "total_hop_cnt"]
1889 },
1890 {
1891 "type" : "expression",
1892 "value" : {
1893 "type" : "expression",
1894 "value" : {
1895 "op" : "&",
1896 "left" : {
1897 "type" : "expression",
1898 "value" : {
1899 "op" : "+",
1900 "left" : {
1901 "type" : "field",
1902 "value" : ["int_header", "total_hop_cnt"]
1903 },
1904 "right" : {
1905 "type" : "hexstr",
1906 "value" : "0x01"
1907 }
1908 }
1909 },
1910 "right" : {
1911 "type" : "hexstr",
1912 "value" : "0xff"
1913 }
1914 }
1915 }
1916 }
1917 ],
1918 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001919 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001920 "line" : 30,
1921 "column" : 8,
1922 "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
1923 }
1924 }
1925 ]
1926 },
1927 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001928 "name" : "egress.process_int_transit.int_transit",
1929 "id" : 16,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001930 "runtime_data" : [
1931 {
1932 "name" : "switch_id",
1933 "bitwidth" : 32
1934 }
1935 ],
1936 "primitives" : [
1937 {
1938 "op" : "assign",
1939 "parameters" : [
1940 {
1941 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001942 "value" : ["userMetadata.int_meta", "switch_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001943 },
1944 {
1945 "type" : "runtime_data",
1946 "value" : 0
1947 }
1948 ],
1949 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001950 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001951 "line" : 34,
1952 "column" : 8,
1953 "source_fragment" : "local_metadata.int_meta.switch_id = switch_id"
1954 }
1955 },
1956 {
1957 "op" : "assign",
1958 "parameters" : [
1959 {
1960 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001961 "value" : ["userMetadata.int_meta", "insert_byte_cnt"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001962 },
1963 {
1964 "type" : "expression",
1965 "value" : {
1966 "type" : "expression",
1967 "value" : {
1968 "op" : "&",
1969 "left" : {
1970 "type" : "expression",
1971 "value" : {
1972 "op" : "<<",
1973 "left" : {
1974 "type" : "expression",
1975 "value" : {
1976 "op" : "&",
1977 "left" : {
1978 "type" : "field",
1979 "value" : ["int_header", "ins_cnt"]
1980 },
1981 "right" : {
1982 "type" : "hexstr",
1983 "value" : "0xffff"
1984 }
1985 }
1986 },
1987 "right" : {
1988 "type" : "hexstr",
1989 "value" : "0x2"
1990 }
1991 }
1992 },
1993 "right" : {
1994 "type" : "hexstr",
1995 "value" : "0xffff"
1996 }
1997 }
1998 }
1999 }
2000 ],
2001 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002002 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002003 "line" : 35,
2004 "column" : 8,
2005 "source_fragment" : "local_metadata.int_meta.insert_byte_cnt = (bit<16>) hdr.int_header.ins_cnt << 2"
2006 }
2007 }
2008 ]
2009 },
2010 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002011 "name" : "egress.process_int_transit.int_set_header_0003_i0",
2012 "id" : 17,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002013 "runtime_data" : [],
2014 "primitives" : []
2015 },
2016 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002017 "name" : "egress.process_int_transit.int_set_header_0003_i1",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002018 "id" : 18,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002019 "runtime_data" : [],
2020 "primitives" : [
2021 {
2022 "op" : "add_header",
2023 "parameters" : [
2024 {
2025 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002026 "value" : "int_q_occupancy"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002027 }
2028 ],
2029 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002030 "filename" : "include/int_transit.p4",
2031 "line" : 57,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002032 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002033 "source_fragment" : "hdr.int_q_occupancy.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002034 }
2035 },
2036 {
2037 "op" : "assign",
2038 "parameters" : [
2039 {
2040 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002041 "value" : ["int_q_occupancy", "q_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002042 },
2043 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002044 "type" : "hexstr",
2045 "value" : "0x00"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002046 }
2047 ],
2048 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002049 "filename" : "include/int_transit.p4",
2050 "line" : 58,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002051 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002052 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
2053 }
2054 },
2055 {
2056 "op" : "assign",
2057 "parameters" : [
2058 {
2059 "type" : "field",
2060 "value" : ["int_q_occupancy", "q_occupancy"]
2061 },
2062 {
2063 "type" : "expression",
2064 "value" : {
2065 "type" : "expression",
2066 "value" : {
2067 "op" : "&",
2068 "left" : {
2069 "type" : "field",
2070 "value" : ["standard_metadata", "deq_qdepth"]
2071 },
2072 "right" : {
2073 "type" : "hexstr",
2074 "value" : "0xffffff"
2075 }
2076 }
2077 }
2078 }
2079 ],
2080 "source_info" : {
2081 "filename" : "include/int_transit.p4",
2082 "line" : 61,
2083 "column" : 8,
2084 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002085 }
2086 }
2087 ]
2088 },
2089 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002090 "name" : "egress.process_int_transit.int_set_header_0003_i2",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002091 "id" : 19,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002092 "runtime_data" : [],
2093 "primitives" : [
2094 {
2095 "op" : "add_header",
2096 "parameters" : [
2097 {
2098 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002099 "value" : "int_hop_latency"
2100 }
2101 ],
2102 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002103 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002104 "line" : 51,
2105 "column" : 8,
2106 "source_fragment" : "hdr.int_hop_latency.setValid()"
2107 }
2108 },
2109 {
2110 "op" : "assign",
2111 "parameters" : [
2112 {
2113 "type" : "field",
2114 "value" : ["int_hop_latency", "hop_latency"]
2115 },
2116 {
2117 "type" : "field",
2118 "value" : ["standard_metadata", "deq_timedelta"]
2119 }
2120 ],
2121 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002122 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002123 "line" : 52,
2124 "column" : 8,
2125 "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
2126 }
2127 }
2128 ]
2129 },
2130 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002131 "name" : "egress.process_int_transit.int_set_header_0003_i3",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002132 "id" : 20,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002133 "runtime_data" : [],
2134 "primitives" : [
2135 {
2136 "op" : "add_header",
2137 "parameters" : [
2138 {
2139 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002140 "value" : "int_q_occupancy"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002141 }
2142 ],
2143 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002144 "filename" : "include/int_transit.p4",
2145 "line" : 57,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002146 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002147 "source_fragment" : "hdr.int_q_occupancy.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002148 }
2149 },
2150 {
2151 "op" : "assign",
2152 "parameters" : [
2153 {
2154 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002155 "value" : ["int_q_occupancy", "q_id"]
2156 },
2157 {
2158 "type" : "hexstr",
2159 "value" : "0x00"
2160 }
2161 ],
2162 "source_info" : {
2163 "filename" : "include/int_transit.p4",
2164 "line" : 58,
2165 "column" : 8,
2166 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
2167 }
2168 },
2169 {
2170 "op" : "assign",
2171 "parameters" : [
2172 {
2173 "type" : "field",
2174 "value" : ["int_q_occupancy", "q_occupancy"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002175 },
2176 {
2177 "type" : "expression",
2178 "value" : {
2179 "type" : "expression",
2180 "value" : {
2181 "op" : "&",
2182 "left" : {
2183 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002184 "value" : ["standard_metadata", "deq_qdepth"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002185 },
2186 "right" : {
2187 "type" : "hexstr",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002188 "value" : "0xffffff"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002189 }
2190 }
2191 }
2192 }
2193 ],
2194 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002195 "filename" : "include/int_transit.p4",
2196 "line" : 61,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002197 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002198 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
2199 }
2200 },
2201 {
2202 "op" : "add_header",
2203 "parameters" : [
2204 {
2205 "type" : "header",
2206 "value" : "int_hop_latency"
2207 }
2208 ],
2209 "source_info" : {
2210 "filename" : "include/int_transit.p4",
2211 "line" : 51,
2212 "column" : 8,
2213 "source_fragment" : "hdr.int_hop_latency.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002214 }
2215 },
2216 {
2217 "op" : "assign",
2218 "parameters" : [
2219 {
2220 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002221 "value" : ["int_hop_latency", "hop_latency"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002222 },
2223 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002224 "type" : "field",
2225 "value" : ["standard_metadata", "deq_timedelta"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002226 }
2227 ],
2228 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002229 "filename" : "include/int_transit.p4",
2230 "line" : 52,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002231 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002232 "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002233 }
2234 }
2235 ]
2236 },
2237 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002238 "name" : "egress.process_int_transit.int_set_header_0003_i4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002239 "id" : 21,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002240 "runtime_data" : [],
2241 "primitives" : [
2242 {
2243 "op" : "add_header",
2244 "parameters" : [
2245 {
2246 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002247 "value" : "int_port_ids"
2248 }
2249 ],
2250 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002251 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002252 "line" : 44,
2253 "column" : 8,
2254 "source_fragment" : "hdr.int_port_ids.setValid()"
2255 }
2256 },
2257 {
2258 "op" : "assign",
2259 "parameters" : [
2260 {
2261 "type" : "field",
2262 "value" : ["int_port_ids", "ingress_port_id"]
2263 },
2264 {
2265 "type" : "expression",
2266 "value" : {
2267 "type" : "expression",
2268 "value" : {
2269 "op" : "&",
2270 "left" : {
2271 "type" : "field",
2272 "value" : ["standard_metadata", "ingress_port"]
2273 },
2274 "right" : {
2275 "type" : "hexstr",
2276 "value" : "0xffff"
2277 }
2278 }
2279 }
2280 }
2281 ],
2282 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002283 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002284 "line" : 45,
2285 "column" : 8,
2286 "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
2287 }
2288 },
2289 {
2290 "op" : "assign",
2291 "parameters" : [
2292 {
2293 "type" : "field",
2294 "value" : ["int_port_ids", "egress_port_id"]
2295 },
2296 {
2297 "type" : "expression",
2298 "value" : {
2299 "type" : "expression",
2300 "value" : {
2301 "op" : "&",
2302 "left" : {
2303 "type" : "field",
2304 "value" : ["standard_metadata", "egress_port"]
2305 },
2306 "right" : {
2307 "type" : "hexstr",
2308 "value" : "0xffff"
2309 }
2310 }
2311 }
2312 }
2313 ],
2314 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002315 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002316 "line" : 47,
2317 "column" : 8,
2318 "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
2319 }
2320 }
2321 ]
2322 },
2323 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002324 "name" : "egress.process_int_transit.int_set_header_0003_i5",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002325 "id" : 22,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002326 "runtime_data" : [],
2327 "primitives" : [
2328 {
2329 "op" : "add_header",
2330 "parameters" : [
2331 {
2332 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002333 "value" : "int_q_occupancy"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002334 }
2335 ],
2336 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002337 "filename" : "include/int_transit.p4",
2338 "line" : 57,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002339 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002340 "source_fragment" : "hdr.int_q_occupancy.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002341 }
2342 },
2343 {
2344 "op" : "assign",
2345 "parameters" : [
2346 {
2347 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002348 "value" : ["int_q_occupancy", "q_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002349 },
2350 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002351 "type" : "hexstr",
2352 "value" : "0x00"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002353 }
2354 ],
2355 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002356 "filename" : "include/int_transit.p4",
2357 "line" : 58,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002358 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002359 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
2360 }
2361 },
2362 {
2363 "op" : "assign",
2364 "parameters" : [
2365 {
2366 "type" : "field",
2367 "value" : ["int_q_occupancy", "q_occupancy"]
2368 },
2369 {
2370 "type" : "expression",
2371 "value" : {
2372 "type" : "expression",
2373 "value" : {
2374 "op" : "&",
2375 "left" : {
2376 "type" : "field",
2377 "value" : ["standard_metadata", "deq_qdepth"]
2378 },
2379 "right" : {
2380 "type" : "hexstr",
2381 "value" : "0xffffff"
2382 }
2383 }
2384 }
2385 }
2386 ],
2387 "source_info" : {
2388 "filename" : "include/int_transit.p4",
2389 "line" : 61,
2390 "column" : 8,
2391 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002392 }
2393 },
2394 {
2395 "op" : "add_header",
2396 "parameters" : [
2397 {
2398 "type" : "header",
2399 "value" : "int_port_ids"
2400 }
2401 ],
2402 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002403 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002404 "line" : 44,
2405 "column" : 8,
2406 "source_fragment" : "hdr.int_port_ids.setValid()"
2407 }
2408 },
2409 {
2410 "op" : "assign",
2411 "parameters" : [
2412 {
2413 "type" : "field",
2414 "value" : ["int_port_ids", "ingress_port_id"]
2415 },
2416 {
2417 "type" : "expression",
2418 "value" : {
2419 "type" : "expression",
2420 "value" : {
2421 "op" : "&",
2422 "left" : {
2423 "type" : "field",
2424 "value" : ["standard_metadata", "ingress_port"]
2425 },
2426 "right" : {
2427 "type" : "hexstr",
2428 "value" : "0xffff"
2429 }
2430 }
2431 }
2432 }
2433 ],
2434 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002435 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002436 "line" : 45,
2437 "column" : 8,
2438 "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
2439 }
2440 },
2441 {
2442 "op" : "assign",
2443 "parameters" : [
2444 {
2445 "type" : "field",
2446 "value" : ["int_port_ids", "egress_port_id"]
2447 },
2448 {
2449 "type" : "expression",
2450 "value" : {
2451 "type" : "expression",
2452 "value" : {
2453 "op" : "&",
2454 "left" : {
2455 "type" : "field",
2456 "value" : ["standard_metadata", "egress_port"]
2457 },
2458 "right" : {
2459 "type" : "hexstr",
2460 "value" : "0xffff"
2461 }
2462 }
2463 }
2464 }
2465 ],
2466 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002467 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002468 "line" : 47,
2469 "column" : 8,
2470 "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
2471 }
2472 }
2473 ]
2474 },
2475 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002476 "name" : "egress.process_int_transit.int_set_header_0003_i6",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002477 "id" : 23,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002478 "runtime_data" : [],
2479 "primitives" : [
2480 {
2481 "op" : "add_header",
2482 "parameters" : [
2483 {
2484 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002485 "value" : "int_hop_latency"
2486 }
2487 ],
2488 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002489 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002490 "line" : 51,
2491 "column" : 8,
2492 "source_fragment" : "hdr.int_hop_latency.setValid()"
2493 }
2494 },
2495 {
2496 "op" : "assign",
2497 "parameters" : [
2498 {
2499 "type" : "field",
2500 "value" : ["int_hop_latency", "hop_latency"]
2501 },
2502 {
2503 "type" : "field",
2504 "value" : ["standard_metadata", "deq_timedelta"]
2505 }
2506 ],
2507 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002508 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002509 "line" : 52,
2510 "column" : 8,
2511 "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
2512 }
2513 },
2514 {
2515 "op" : "add_header",
2516 "parameters" : [
2517 {
2518 "type" : "header",
2519 "value" : "int_port_ids"
2520 }
2521 ],
2522 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002523 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002524 "line" : 44,
2525 "column" : 8,
2526 "source_fragment" : "hdr.int_port_ids.setValid()"
2527 }
2528 },
2529 {
2530 "op" : "assign",
2531 "parameters" : [
2532 {
2533 "type" : "field",
2534 "value" : ["int_port_ids", "ingress_port_id"]
2535 },
2536 {
2537 "type" : "expression",
2538 "value" : {
2539 "type" : "expression",
2540 "value" : {
2541 "op" : "&",
2542 "left" : {
2543 "type" : "field",
2544 "value" : ["standard_metadata", "ingress_port"]
2545 },
2546 "right" : {
2547 "type" : "hexstr",
2548 "value" : "0xffff"
2549 }
2550 }
2551 }
2552 }
2553 ],
2554 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002555 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002556 "line" : 45,
2557 "column" : 8,
2558 "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
2559 }
2560 },
2561 {
2562 "op" : "assign",
2563 "parameters" : [
2564 {
2565 "type" : "field",
2566 "value" : ["int_port_ids", "egress_port_id"]
2567 },
2568 {
2569 "type" : "expression",
2570 "value" : {
2571 "type" : "expression",
2572 "value" : {
2573 "op" : "&",
2574 "left" : {
2575 "type" : "field",
2576 "value" : ["standard_metadata", "egress_port"]
2577 },
2578 "right" : {
2579 "type" : "hexstr",
2580 "value" : "0xffff"
2581 }
2582 }
2583 }
2584 }
2585 ],
2586 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002587 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002588 "line" : 47,
2589 "column" : 8,
2590 "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
2591 }
2592 }
2593 ]
2594 },
2595 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002596 "name" : "egress.process_int_transit.int_set_header_0003_i7",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002597 "id" : 24,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002598 "runtime_data" : [],
2599 "primitives" : [
2600 {
2601 "op" : "add_header",
2602 "parameters" : [
2603 {
2604 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002605 "value" : "int_q_occupancy"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002606 }
2607 ],
2608 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002609 "filename" : "include/int_transit.p4",
2610 "line" : 57,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002611 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002612 "source_fragment" : "hdr.int_q_occupancy.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002613 }
2614 },
2615 {
2616 "op" : "assign",
2617 "parameters" : [
2618 {
2619 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002620 "value" : ["int_q_occupancy", "q_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002621 },
2622 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002623 "type" : "hexstr",
2624 "value" : "0x00"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002625 }
2626 ],
2627 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002628 "filename" : "include/int_transit.p4",
2629 "line" : 58,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002630 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002631 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
2632 }
2633 },
2634 {
2635 "op" : "assign",
2636 "parameters" : [
2637 {
2638 "type" : "field",
2639 "value" : ["int_q_occupancy", "q_occupancy"]
2640 },
2641 {
2642 "type" : "expression",
2643 "value" : {
2644 "type" : "expression",
2645 "value" : {
2646 "op" : "&",
2647 "left" : {
2648 "type" : "field",
2649 "value" : ["standard_metadata", "deq_qdepth"]
2650 },
2651 "right" : {
2652 "type" : "hexstr",
2653 "value" : "0xffffff"
2654 }
2655 }
2656 }
2657 }
2658 ],
2659 "source_info" : {
2660 "filename" : "include/int_transit.p4",
2661 "line" : 61,
2662 "column" : 8,
2663 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
2664 }
2665 },
2666 {
2667 "op" : "add_header",
2668 "parameters" : [
2669 {
2670 "type" : "header",
2671 "value" : "int_hop_latency"
2672 }
2673 ],
2674 "source_info" : {
2675 "filename" : "include/int_transit.p4",
2676 "line" : 51,
2677 "column" : 8,
2678 "source_fragment" : "hdr.int_hop_latency.setValid()"
2679 }
2680 },
2681 {
2682 "op" : "assign",
2683 "parameters" : [
2684 {
2685 "type" : "field",
2686 "value" : ["int_hop_latency", "hop_latency"]
2687 },
2688 {
2689 "type" : "field",
2690 "value" : ["standard_metadata", "deq_timedelta"]
2691 }
2692 ],
2693 "source_info" : {
2694 "filename" : "include/int_transit.p4",
2695 "line" : 52,
2696 "column" : 8,
2697 "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
2698 }
2699 },
2700 {
2701 "op" : "add_header",
2702 "parameters" : [
2703 {
2704 "type" : "header",
2705 "value" : "int_port_ids"
2706 }
2707 ],
2708 "source_info" : {
2709 "filename" : "include/int_transit.p4",
2710 "line" : 44,
2711 "column" : 8,
2712 "source_fragment" : "hdr.int_port_ids.setValid()"
2713 }
2714 },
2715 {
2716 "op" : "assign",
2717 "parameters" : [
2718 {
2719 "type" : "field",
2720 "value" : ["int_port_ids", "ingress_port_id"]
2721 },
2722 {
2723 "type" : "expression",
2724 "value" : {
2725 "type" : "expression",
2726 "value" : {
2727 "op" : "&",
2728 "left" : {
2729 "type" : "field",
2730 "value" : ["standard_metadata", "ingress_port"]
2731 },
2732 "right" : {
2733 "type" : "hexstr",
2734 "value" : "0xffff"
2735 }
2736 }
2737 }
2738 }
2739 ],
2740 "source_info" : {
2741 "filename" : "include/int_transit.p4",
2742 "line" : 45,
2743 "column" : 8,
2744 "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
2745 }
2746 },
2747 {
2748 "op" : "assign",
2749 "parameters" : [
2750 {
2751 "type" : "field",
2752 "value" : ["int_port_ids", "egress_port_id"]
2753 },
2754 {
2755 "type" : "expression",
2756 "value" : {
2757 "type" : "expression",
2758 "value" : {
2759 "op" : "&",
2760 "left" : {
2761 "type" : "field",
2762 "value" : ["standard_metadata", "egress_port"]
2763 },
2764 "right" : {
2765 "type" : "hexstr",
2766 "value" : "0xffff"
2767 }
2768 }
2769 }
2770 }
2771 ],
2772 "source_info" : {
2773 "filename" : "include/int_transit.p4",
2774 "line" : 47,
2775 "column" : 8,
2776 "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002777 }
2778 }
2779 ]
2780 },
2781 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002782 "name" : "egress.process_int_transit.int_set_header_0003_i8",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002783 "id" : 25,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002784 "runtime_data" : [],
2785 "primitives" : [
2786 {
2787 "op" : "add_header",
2788 "parameters" : [
2789 {
2790 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002791 "value" : "int_switch_id"
2792 }
2793 ],
2794 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002795 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002796 "line" : 40,
2797 "column" : 8,
2798 "source_fragment" : "hdr.int_switch_id.setValid()"
2799 }
2800 },
2801 {
2802 "op" : "assign",
2803 "parameters" : [
2804 {
2805 "type" : "field",
2806 "value" : ["int_switch_id", "switch_id"]
2807 },
2808 {
2809 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002810 "value" : ["userMetadata.int_meta", "switch_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002811 }
2812 ],
2813 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002814 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002815 "line" : 41,
2816 "column" : 8,
2817 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
2818 }
2819 }
2820 ]
2821 },
2822 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002823 "name" : "egress.process_int_transit.int_set_header_0003_i9",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002824 "id" : 26,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002825 "runtime_data" : [],
2826 "primitives" : [
2827 {
2828 "op" : "add_header",
2829 "parameters" : [
2830 {
2831 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002832 "value" : "int_q_occupancy"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002833 }
2834 ],
2835 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002836 "filename" : "include/int_transit.p4",
2837 "line" : 57,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002838 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002839 "source_fragment" : "hdr.int_q_occupancy.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002840 }
2841 },
2842 {
2843 "op" : "assign",
2844 "parameters" : [
2845 {
2846 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002847 "value" : ["int_q_occupancy", "q_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002848 },
2849 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002850 "type" : "hexstr",
2851 "value" : "0x00"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002852 }
2853 ],
2854 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002855 "filename" : "include/int_transit.p4",
2856 "line" : 58,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002857 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002858 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
2859 }
2860 },
2861 {
2862 "op" : "assign",
2863 "parameters" : [
2864 {
2865 "type" : "field",
2866 "value" : ["int_q_occupancy", "q_occupancy"]
2867 },
2868 {
2869 "type" : "expression",
2870 "value" : {
2871 "type" : "expression",
2872 "value" : {
2873 "op" : "&",
2874 "left" : {
2875 "type" : "field",
2876 "value" : ["standard_metadata", "deq_qdepth"]
2877 },
2878 "right" : {
2879 "type" : "hexstr",
2880 "value" : "0xffffff"
2881 }
2882 }
2883 }
2884 }
2885 ],
2886 "source_info" : {
2887 "filename" : "include/int_transit.p4",
2888 "line" : 61,
2889 "column" : 8,
2890 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002891 }
2892 },
2893 {
2894 "op" : "add_header",
2895 "parameters" : [
2896 {
2897 "type" : "header",
2898 "value" : "int_switch_id"
2899 }
2900 ],
2901 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002902 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002903 "line" : 40,
2904 "column" : 8,
2905 "source_fragment" : "hdr.int_switch_id.setValid()"
2906 }
2907 },
2908 {
2909 "op" : "assign",
2910 "parameters" : [
2911 {
2912 "type" : "field",
2913 "value" : ["int_switch_id", "switch_id"]
2914 },
2915 {
2916 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002917 "value" : ["userMetadata.int_meta", "switch_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002918 }
2919 ],
2920 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002921 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002922 "line" : 41,
2923 "column" : 8,
2924 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
2925 }
2926 }
2927 ]
2928 },
2929 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002930 "name" : "egress.process_int_transit.int_set_header_0003_i10",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08002931 "id" : 27,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002932 "runtime_data" : [],
2933 "primitives" : [
2934 {
2935 "op" : "add_header",
2936 "parameters" : [
2937 {
2938 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002939 "value" : "int_hop_latency"
2940 }
2941 ],
2942 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002943 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002944 "line" : 51,
2945 "column" : 8,
2946 "source_fragment" : "hdr.int_hop_latency.setValid()"
2947 }
2948 },
2949 {
2950 "op" : "assign",
2951 "parameters" : [
2952 {
2953 "type" : "field",
2954 "value" : ["int_hop_latency", "hop_latency"]
2955 },
2956 {
2957 "type" : "field",
2958 "value" : ["standard_metadata", "deq_timedelta"]
2959 }
2960 ],
2961 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002962 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002963 "line" : 52,
2964 "column" : 8,
2965 "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
2966 }
2967 },
2968 {
2969 "op" : "add_header",
2970 "parameters" : [
2971 {
2972 "type" : "header",
2973 "value" : "int_switch_id"
2974 }
2975 ],
2976 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002977 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002978 "line" : 40,
2979 "column" : 8,
2980 "source_fragment" : "hdr.int_switch_id.setValid()"
2981 }
2982 },
2983 {
2984 "op" : "assign",
2985 "parameters" : [
2986 {
2987 "type" : "field",
2988 "value" : ["int_switch_id", "switch_id"]
2989 },
2990 {
2991 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002992 "value" : ["userMetadata.int_meta", "switch_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002993 }
2994 ],
2995 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002996 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002997 "line" : 41,
2998 "column" : 8,
2999 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
3000 }
3001 }
3002 ]
3003 },
3004 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003005 "name" : "egress.process_int_transit.int_set_header_0003_i11",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08003006 "id" : 28,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003007 "runtime_data" : [],
3008 "primitives" : [
3009 {
3010 "op" : "add_header",
3011 "parameters" : [
3012 {
3013 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003014 "value" : "int_q_occupancy"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003015 }
3016 ],
3017 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003018 "filename" : "include/int_transit.p4",
3019 "line" : 57,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003020 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003021 "source_fragment" : "hdr.int_q_occupancy.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003022 }
3023 },
3024 {
3025 "op" : "assign",
3026 "parameters" : [
3027 {
3028 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003029 "value" : ["int_q_occupancy", "q_id"]
3030 },
3031 {
3032 "type" : "hexstr",
3033 "value" : "0x00"
3034 }
3035 ],
3036 "source_info" : {
3037 "filename" : "include/int_transit.p4",
3038 "line" : 58,
3039 "column" : 8,
3040 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
3041 }
3042 },
3043 {
3044 "op" : "assign",
3045 "parameters" : [
3046 {
3047 "type" : "field",
3048 "value" : ["int_q_occupancy", "q_occupancy"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003049 },
3050 {
3051 "type" : "expression",
3052 "value" : {
3053 "type" : "expression",
3054 "value" : {
3055 "op" : "&",
3056 "left" : {
3057 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003058 "value" : ["standard_metadata", "deq_qdepth"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003059 },
3060 "right" : {
3061 "type" : "hexstr",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003062 "value" : "0xffffff"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003063 }
3064 }
3065 }
3066 }
3067 ],
3068 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003069 "filename" : "include/int_transit.p4",
3070 "line" : 61,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003071 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003072 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
3073 }
3074 },
3075 {
3076 "op" : "add_header",
3077 "parameters" : [
3078 {
3079 "type" : "header",
3080 "value" : "int_hop_latency"
3081 }
3082 ],
3083 "source_info" : {
3084 "filename" : "include/int_transit.p4",
3085 "line" : 51,
3086 "column" : 8,
3087 "source_fragment" : "hdr.int_hop_latency.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003088 }
3089 },
3090 {
3091 "op" : "assign",
3092 "parameters" : [
3093 {
3094 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003095 "value" : ["int_hop_latency", "hop_latency"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003096 },
3097 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003098 "type" : "field",
3099 "value" : ["standard_metadata", "deq_timedelta"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003100 }
3101 ],
3102 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003103 "filename" : "include/int_transit.p4",
3104 "line" : 52,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003105 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003106 "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003107 }
3108 },
3109 {
3110 "op" : "add_header",
3111 "parameters" : [
3112 {
3113 "type" : "header",
3114 "value" : "int_switch_id"
3115 }
3116 ],
3117 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003118 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003119 "line" : 40,
3120 "column" : 8,
3121 "source_fragment" : "hdr.int_switch_id.setValid()"
3122 }
3123 },
3124 {
3125 "op" : "assign",
3126 "parameters" : [
3127 {
3128 "type" : "field",
3129 "value" : ["int_switch_id", "switch_id"]
3130 },
3131 {
3132 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003133 "value" : ["userMetadata.int_meta", "switch_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003134 }
3135 ],
3136 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003137 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003138 "line" : 41,
3139 "column" : 8,
3140 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
3141 }
3142 }
3143 ]
3144 },
3145 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003146 "name" : "egress.process_int_transit.int_set_header_0003_i12",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08003147 "id" : 29,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003148 "runtime_data" : [],
3149 "primitives" : [
3150 {
3151 "op" : "add_header",
3152 "parameters" : [
3153 {
3154 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003155 "value" : "int_port_ids"
3156 }
3157 ],
3158 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003159 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003160 "line" : 44,
3161 "column" : 8,
3162 "source_fragment" : "hdr.int_port_ids.setValid()"
3163 }
3164 },
3165 {
3166 "op" : "assign",
3167 "parameters" : [
3168 {
3169 "type" : "field",
3170 "value" : ["int_port_ids", "ingress_port_id"]
3171 },
3172 {
3173 "type" : "expression",
3174 "value" : {
3175 "type" : "expression",
3176 "value" : {
3177 "op" : "&",
3178 "left" : {
3179 "type" : "field",
3180 "value" : ["standard_metadata", "ingress_port"]
3181 },
3182 "right" : {
3183 "type" : "hexstr",
3184 "value" : "0xffff"
3185 }
3186 }
3187 }
3188 }
3189 ],
3190 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003191 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003192 "line" : 45,
3193 "column" : 8,
3194 "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
3195 }
3196 },
3197 {
3198 "op" : "assign",
3199 "parameters" : [
3200 {
3201 "type" : "field",
3202 "value" : ["int_port_ids", "egress_port_id"]
3203 },
3204 {
3205 "type" : "expression",
3206 "value" : {
3207 "type" : "expression",
3208 "value" : {
3209 "op" : "&",
3210 "left" : {
3211 "type" : "field",
3212 "value" : ["standard_metadata", "egress_port"]
3213 },
3214 "right" : {
3215 "type" : "hexstr",
3216 "value" : "0xffff"
3217 }
3218 }
3219 }
3220 }
3221 ],
3222 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003223 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003224 "line" : 47,
3225 "column" : 8,
3226 "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
3227 }
3228 },
3229 {
3230 "op" : "add_header",
3231 "parameters" : [
3232 {
3233 "type" : "header",
3234 "value" : "int_switch_id"
3235 }
3236 ],
3237 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003238 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003239 "line" : 40,
3240 "column" : 8,
3241 "source_fragment" : "hdr.int_switch_id.setValid()"
3242 }
3243 },
3244 {
3245 "op" : "assign",
3246 "parameters" : [
3247 {
3248 "type" : "field",
3249 "value" : ["int_switch_id", "switch_id"]
3250 },
3251 {
3252 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003253 "value" : ["userMetadata.int_meta", "switch_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003254 }
3255 ],
3256 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003257 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003258 "line" : 41,
3259 "column" : 8,
3260 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
3261 }
3262 }
3263 ]
3264 },
3265 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003266 "name" : "egress.process_int_transit.int_set_header_0003_i13",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08003267 "id" : 30,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003268 "runtime_data" : [],
3269 "primitives" : [
3270 {
3271 "op" : "add_header",
3272 "parameters" : [
3273 {
3274 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003275 "value" : "int_q_occupancy"
3276 }
3277 ],
3278 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003279 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003280 "line" : 57,
3281 "column" : 8,
3282 "source_fragment" : "hdr.int_q_occupancy.setValid()"
3283 }
3284 },
3285 {
3286 "op" : "assign",
3287 "parameters" : [
3288 {
3289 "type" : "field",
3290 "value" : ["int_q_occupancy", "q_id"]
3291 },
3292 {
3293 "type" : "hexstr",
3294 "value" : "0x00"
3295 }
3296 ],
3297 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003298 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003299 "line" : 58,
3300 "column" : 8,
3301 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
3302 }
3303 },
3304 {
3305 "op" : "assign",
3306 "parameters" : [
3307 {
3308 "type" : "field",
3309 "value" : ["int_q_occupancy", "q_occupancy"]
3310 },
3311 {
3312 "type" : "expression",
3313 "value" : {
3314 "type" : "expression",
3315 "value" : {
3316 "op" : "&",
3317 "left" : {
3318 "type" : "field",
3319 "value" : ["standard_metadata", "deq_qdepth"]
3320 },
3321 "right" : {
3322 "type" : "hexstr",
3323 "value" : "0xffffff"
3324 }
3325 }
3326 }
3327 }
3328 ],
3329 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003330 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003331 "line" : 61,
3332 "column" : 8,
3333 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
3334 }
3335 },
3336 {
3337 "op" : "add_header",
3338 "parameters" : [
3339 {
3340 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003341 "value" : "int_port_ids"
3342 }
3343 ],
3344 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003345 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003346 "line" : 44,
3347 "column" : 8,
3348 "source_fragment" : "hdr.int_port_ids.setValid()"
3349 }
3350 },
3351 {
3352 "op" : "assign",
3353 "parameters" : [
3354 {
3355 "type" : "field",
3356 "value" : ["int_port_ids", "ingress_port_id"]
3357 },
3358 {
3359 "type" : "expression",
3360 "value" : {
3361 "type" : "expression",
3362 "value" : {
3363 "op" : "&",
3364 "left" : {
3365 "type" : "field",
3366 "value" : ["standard_metadata", "ingress_port"]
3367 },
3368 "right" : {
3369 "type" : "hexstr",
3370 "value" : "0xffff"
3371 }
3372 }
3373 }
3374 }
3375 ],
3376 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003377 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003378 "line" : 45,
3379 "column" : 8,
3380 "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
3381 }
3382 },
3383 {
3384 "op" : "assign",
3385 "parameters" : [
3386 {
3387 "type" : "field",
3388 "value" : ["int_port_ids", "egress_port_id"]
3389 },
3390 {
3391 "type" : "expression",
3392 "value" : {
3393 "type" : "expression",
3394 "value" : {
3395 "op" : "&",
3396 "left" : {
3397 "type" : "field",
3398 "value" : ["standard_metadata", "egress_port"]
3399 },
3400 "right" : {
3401 "type" : "hexstr",
3402 "value" : "0xffff"
3403 }
3404 }
3405 }
3406 }
3407 ],
3408 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003409 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003410 "line" : 47,
3411 "column" : 8,
3412 "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
3413 }
3414 },
3415 {
3416 "op" : "add_header",
3417 "parameters" : [
3418 {
3419 "type" : "header",
3420 "value" : "int_switch_id"
3421 }
3422 ],
3423 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003424 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003425 "line" : 40,
3426 "column" : 8,
3427 "source_fragment" : "hdr.int_switch_id.setValid()"
3428 }
3429 },
3430 {
3431 "op" : "assign",
3432 "parameters" : [
3433 {
3434 "type" : "field",
3435 "value" : ["int_switch_id", "switch_id"]
3436 },
3437 {
3438 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003439 "value" : ["userMetadata.int_meta", "switch_id"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003440 }
3441 ],
3442 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003443 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003444 "line" : 41,
3445 "column" : 8,
3446 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
3447 }
3448 }
3449 ]
3450 },
3451 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003452 "name" : "egress.process_int_transit.int_set_header_0003_i14",
3453 "id" : 31,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003454 "runtime_data" : [],
3455 "primitives" : [
3456 {
3457 "op" : "add_header",
3458 "parameters" : [
3459 {
3460 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003461 "value" : "int_hop_latency"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003462 }
3463 ],
3464 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003465 "filename" : "include/int_transit.p4",
3466 "line" : 51,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003467 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003468 "source_fragment" : "hdr.int_hop_latency.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003469 }
3470 },
3471 {
3472 "op" : "assign",
3473 "parameters" : [
3474 {
3475 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003476 "value" : ["int_hop_latency", "hop_latency"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003477 },
3478 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003479 "type" : "field",
3480 "value" : ["standard_metadata", "deq_timedelta"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003481 }
3482 ],
3483 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003484 "filename" : "include/int_transit.p4",
3485 "line" : 52,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003486 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003487 "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
3488 }
3489 },
3490 {
3491 "op" : "add_header",
3492 "parameters" : [
3493 {
3494 "type" : "header",
3495 "value" : "int_port_ids"
3496 }
3497 ],
3498 "source_info" : {
3499 "filename" : "include/int_transit.p4",
3500 "line" : 44,
3501 "column" : 8,
3502 "source_fragment" : "hdr.int_port_ids.setValid()"
3503 }
3504 },
3505 {
3506 "op" : "assign",
3507 "parameters" : [
3508 {
3509 "type" : "field",
3510 "value" : ["int_port_ids", "ingress_port_id"]
3511 },
3512 {
3513 "type" : "expression",
3514 "value" : {
3515 "type" : "expression",
3516 "value" : {
3517 "op" : "&",
3518 "left" : {
3519 "type" : "field",
3520 "value" : ["standard_metadata", "ingress_port"]
3521 },
3522 "right" : {
3523 "type" : "hexstr",
3524 "value" : "0xffff"
3525 }
3526 }
3527 }
3528 }
3529 ],
3530 "source_info" : {
3531 "filename" : "include/int_transit.p4",
3532 "line" : 45,
3533 "column" : 8,
3534 "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
3535 }
3536 },
3537 {
3538 "op" : "assign",
3539 "parameters" : [
3540 {
3541 "type" : "field",
3542 "value" : ["int_port_ids", "egress_port_id"]
3543 },
3544 {
3545 "type" : "expression",
3546 "value" : {
3547 "type" : "expression",
3548 "value" : {
3549 "op" : "&",
3550 "left" : {
3551 "type" : "field",
3552 "value" : ["standard_metadata", "egress_port"]
3553 },
3554 "right" : {
3555 "type" : "hexstr",
3556 "value" : "0xffff"
3557 }
3558 }
3559 }
3560 }
3561 ],
3562 "source_info" : {
3563 "filename" : "include/int_transit.p4",
3564 "line" : 47,
3565 "column" : 8,
3566 "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
3567 }
3568 },
3569 {
3570 "op" : "add_header",
3571 "parameters" : [
3572 {
3573 "type" : "header",
3574 "value" : "int_switch_id"
3575 }
3576 ],
3577 "source_info" : {
3578 "filename" : "include/int_transit.p4",
3579 "line" : 40,
3580 "column" : 8,
3581 "source_fragment" : "hdr.int_switch_id.setValid()"
3582 }
3583 },
3584 {
3585 "op" : "assign",
3586 "parameters" : [
3587 {
3588 "type" : "field",
3589 "value" : ["int_switch_id", "switch_id"]
3590 },
3591 {
3592 "type" : "field",
3593 "value" : ["userMetadata.int_meta", "switch_id"]
3594 }
3595 ],
3596 "source_info" : {
3597 "filename" : "include/int_transit.p4",
3598 "line" : 41,
3599 "column" : 8,
3600 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003601 }
3602 }
3603 ]
3604 },
3605 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003606 "name" : "egress.process_int_transit.int_set_header_0003_i15",
3607 "id" : 32,
3608 "runtime_data" : [],
3609 "primitives" : [
3610 {
3611 "op" : "add_header",
3612 "parameters" : [
3613 {
3614 "type" : "header",
3615 "value" : "int_q_occupancy"
3616 }
3617 ],
3618 "source_info" : {
3619 "filename" : "include/int_transit.p4",
3620 "line" : 57,
3621 "column" : 8,
3622 "source_fragment" : "hdr.int_q_occupancy.setValid()"
3623 }
3624 },
3625 {
3626 "op" : "assign",
3627 "parameters" : [
3628 {
3629 "type" : "field",
3630 "value" : ["int_q_occupancy", "q_id"]
3631 },
3632 {
3633 "type" : "hexstr",
3634 "value" : "0x00"
3635 }
3636 ],
3637 "source_info" : {
3638 "filename" : "include/int_transit.p4",
3639 "line" : 58,
3640 "column" : 8,
3641 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
3642 }
3643 },
3644 {
3645 "op" : "assign",
3646 "parameters" : [
3647 {
3648 "type" : "field",
3649 "value" : ["int_q_occupancy", "q_occupancy"]
3650 },
3651 {
3652 "type" : "expression",
3653 "value" : {
3654 "type" : "expression",
3655 "value" : {
3656 "op" : "&",
3657 "left" : {
3658 "type" : "field",
3659 "value" : ["standard_metadata", "deq_qdepth"]
3660 },
3661 "right" : {
3662 "type" : "hexstr",
3663 "value" : "0xffffff"
3664 }
3665 }
3666 }
3667 }
3668 ],
3669 "source_info" : {
3670 "filename" : "include/int_transit.p4",
3671 "line" : 61,
3672 "column" : 8,
3673 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
3674 }
3675 },
3676 {
3677 "op" : "add_header",
3678 "parameters" : [
3679 {
3680 "type" : "header",
3681 "value" : "int_hop_latency"
3682 }
3683 ],
3684 "source_info" : {
3685 "filename" : "include/int_transit.p4",
3686 "line" : 51,
3687 "column" : 8,
3688 "source_fragment" : "hdr.int_hop_latency.setValid()"
3689 }
3690 },
3691 {
3692 "op" : "assign",
3693 "parameters" : [
3694 {
3695 "type" : "field",
3696 "value" : ["int_hop_latency", "hop_latency"]
3697 },
3698 {
3699 "type" : "field",
3700 "value" : ["standard_metadata", "deq_timedelta"]
3701 }
3702 ],
3703 "source_info" : {
3704 "filename" : "include/int_transit.p4",
3705 "line" : 52,
3706 "column" : 8,
3707 "source_fragment" : "hdr.int_hop_latency.hop_latency = ..."
3708 }
3709 },
3710 {
3711 "op" : "add_header",
3712 "parameters" : [
3713 {
3714 "type" : "header",
3715 "value" : "int_port_ids"
3716 }
3717 ],
3718 "source_info" : {
3719 "filename" : "include/int_transit.p4",
3720 "line" : 44,
3721 "column" : 8,
3722 "source_fragment" : "hdr.int_port_ids.setValid()"
3723 }
3724 },
3725 {
3726 "op" : "assign",
3727 "parameters" : [
3728 {
3729 "type" : "field",
3730 "value" : ["int_port_ids", "ingress_port_id"]
3731 },
3732 {
3733 "type" : "expression",
3734 "value" : {
3735 "type" : "expression",
3736 "value" : {
3737 "op" : "&",
3738 "left" : {
3739 "type" : "field",
3740 "value" : ["standard_metadata", "ingress_port"]
3741 },
3742 "right" : {
3743 "type" : "hexstr",
3744 "value" : "0xffff"
3745 }
3746 }
3747 }
3748 }
3749 ],
3750 "source_info" : {
3751 "filename" : "include/int_transit.p4",
3752 "line" : 45,
3753 "column" : 8,
3754 "source_fragment" : "hdr.int_port_ids.ingress_port_id = ..."
3755 }
3756 },
3757 {
3758 "op" : "assign",
3759 "parameters" : [
3760 {
3761 "type" : "field",
3762 "value" : ["int_port_ids", "egress_port_id"]
3763 },
3764 {
3765 "type" : "expression",
3766 "value" : {
3767 "type" : "expression",
3768 "value" : {
3769 "op" : "&",
3770 "left" : {
3771 "type" : "field",
3772 "value" : ["standard_metadata", "egress_port"]
3773 },
3774 "right" : {
3775 "type" : "hexstr",
3776 "value" : "0xffff"
3777 }
3778 }
3779 }
3780 }
3781 ],
3782 "source_info" : {
3783 "filename" : "include/int_transit.p4",
3784 "line" : 47,
3785 "column" : 8,
3786 "source_fragment" : "hdr.int_port_ids.egress_port_id = ..."
3787 }
3788 },
3789 {
3790 "op" : "add_header",
3791 "parameters" : [
3792 {
3793 "type" : "header",
3794 "value" : "int_switch_id"
3795 }
3796 ],
3797 "source_info" : {
3798 "filename" : "include/int_transit.p4",
3799 "line" : 40,
3800 "column" : 8,
3801 "source_fragment" : "hdr.int_switch_id.setValid()"
3802 }
3803 },
3804 {
3805 "op" : "assign",
3806 "parameters" : [
3807 {
3808 "type" : "field",
3809 "value" : ["int_switch_id", "switch_id"]
3810 },
3811 {
3812 "type" : "field",
3813 "value" : ["userMetadata.int_meta", "switch_id"]
3814 }
3815 ],
3816 "source_info" : {
3817 "filename" : "include/int_transit.p4",
3818 "line" : 41,
3819 "column" : 8,
3820 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
3821 }
3822 }
3823 ]
3824 },
3825 {
3826 "name" : "egress.process_int_transit.int_set_header_0407_i0",
3827 "id" : 33,
3828 "runtime_data" : [],
3829 "primitives" : []
3830 },
3831 {
3832 "name" : "egress.process_int_transit.int_set_header_0407_i1",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08003833 "id" : 34,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003834 "runtime_data" : [],
3835 "primitives" : [
3836 {
3837 "op" : "add_header",
3838 "parameters" : [
3839 {
3840 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003841 "value" : "int_egress_tx_util"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003842 }
3843 ],
3844 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003845 "filename" : "include/int_transit.p4",
3846 "line" : 88,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003847 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003848 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003849 }
3850 },
3851 {
3852 "op" : "assign",
3853 "parameters" : [
3854 {
3855 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003856 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003857 },
3858 {
3859 "type" : "hexstr",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003860 "value" : "0x00000000"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003861 }
3862 ],
3863 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003864 "filename" : "include/int_transit.p4",
3865 "line" : 89,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003866 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003867 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003868 }
3869 }
3870 ]
3871 },
3872 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003873 "name" : "egress.process_int_transit.int_set_header_0407_i2",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08003874 "id" : 35,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003875 "runtime_data" : [],
3876 "primitives" : [
3877 {
3878 "op" : "add_header",
3879 "parameters" : [
3880 {
3881 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003882 "value" : "int_q_congestion"
3883 }
3884 ],
3885 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003886 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003887 "line" : 78,
3888 "column" : 8,
3889 "source_fragment" : "hdr.int_q_congestion.setValid()"
3890 }
3891 },
3892 {
3893 "op" : "assign",
3894 "parameters" : [
3895 {
3896 "type" : "field",
3897 "value" : ["int_q_congestion", "q_id"]
3898 },
3899 {
3900 "type" : "hexstr",
3901 "value" : "0x00"
3902 }
3903 ],
3904 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003905 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003906 "line" : 79,
3907 "column" : 8,
3908 "source_fragment" : "hdr.int_q_congestion.q_id = ..."
3909 }
3910 },
3911 {
3912 "op" : "assign",
3913 "parameters" : [
3914 {
3915 "type" : "field",
3916 "value" : ["int_q_congestion", "q_congestion"]
3917 },
3918 {
3919 "type" : "hexstr",
3920 "value" : "0x000000"
3921 }
3922 ],
3923 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003924 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003925 "line" : 82,
3926 "column" : 8,
3927 "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
3928 }
3929 }
3930 ]
3931 },
3932 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003933 "name" : "egress.process_int_transit.int_set_header_0407_i3",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08003934 "id" : 36,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003935 "runtime_data" : [],
3936 "primitives" : [
3937 {
3938 "op" : "add_header",
3939 "parameters" : [
3940 {
3941 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003942 "value" : "int_egress_tx_util"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003943 }
3944 ],
3945 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003946 "filename" : "include/int_transit.p4",
3947 "line" : 88,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003948 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003949 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003950 }
3951 },
3952 {
3953 "op" : "assign",
3954 "parameters" : [
3955 {
3956 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003957 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003958 },
3959 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003960 "type" : "hexstr",
3961 "value" : "0x00000000"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003962 }
3963 ],
3964 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003965 "filename" : "include/int_transit.p4",
3966 "line" : 89,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08003967 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07003968 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
3969 }
3970 },
3971 {
3972 "op" : "add_header",
3973 "parameters" : [
3974 {
3975 "type" : "header",
3976 "value" : "int_q_congestion"
3977 }
3978 ],
3979 "source_info" : {
3980 "filename" : "include/int_transit.p4",
3981 "line" : 78,
3982 "column" : 8,
3983 "source_fragment" : "hdr.int_q_congestion.setValid()"
3984 }
3985 },
3986 {
3987 "op" : "assign",
3988 "parameters" : [
3989 {
3990 "type" : "field",
3991 "value" : ["int_q_congestion", "q_id"]
3992 },
3993 {
3994 "type" : "hexstr",
3995 "value" : "0x00"
3996 }
3997 ],
3998 "source_info" : {
3999 "filename" : "include/int_transit.p4",
4000 "line" : 79,
4001 "column" : 8,
4002 "source_fragment" : "hdr.int_q_congestion.q_id = ..."
4003 }
4004 },
4005 {
4006 "op" : "assign",
4007 "parameters" : [
4008 {
4009 "type" : "field",
4010 "value" : ["int_q_congestion", "q_congestion"]
4011 },
4012 {
4013 "type" : "hexstr",
4014 "value" : "0x000000"
4015 }
4016 ],
4017 "source_info" : {
4018 "filename" : "include/int_transit.p4",
4019 "line" : 82,
4020 "column" : 8,
4021 "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004022 }
4023 }
4024 ]
4025 },
4026 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004027 "name" : "egress.process_int_transit.int_set_header_0407_i4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004028 "id" : 37,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004029 "runtime_data" : [],
4030 "primitives" : [
4031 {
4032 "op" : "add_header",
4033 "parameters" : [
4034 {
4035 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004036 "value" : "int_egress_tstamp"
4037 }
4038 ],
4039 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004040 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004041 "line" : 70,
4042 "column" : 8,
4043 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
4044 }
4045 },
4046 {
4047 "op" : "assign",
4048 "parameters" : [
4049 {
4050 "type" : "field",
4051 "value" : ["int_egress_tstamp", "egress_tstamp"]
4052 },
4053 {
4054 "type" : "expression",
4055 "value" : {
4056 "type" : "expression",
4057 "value" : {
4058 "op" : "&",
4059 "left" : {
4060 "type" : "expression",
4061 "value" : {
4062 "op" : "+",
4063 "left" : {
4064 "type" : "field",
4065 "value" : ["standard_metadata", "enq_timestamp"]
4066 },
4067 "right" : {
4068 "type" : "field",
4069 "value" : ["standard_metadata", "deq_timedelta"]
4070 }
4071 }
4072 },
4073 "right" : {
4074 "type" : "hexstr",
4075 "value" : "0xffffffff"
4076 }
4077 }
4078 }
4079 }
4080 ],
4081 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004082 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004083 "line" : 71,
4084 "column" : 8,
4085 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
4086 }
4087 }
4088 ]
4089 },
4090 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004091 "name" : "egress.process_int_transit.int_set_header_0407_i5",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004092 "id" : 38,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004093 "runtime_data" : [],
4094 "primitives" : [
4095 {
4096 "op" : "add_header",
4097 "parameters" : [
4098 {
4099 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004100 "value" : "int_egress_tx_util"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004101 }
4102 ],
4103 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004104 "filename" : "include/int_transit.p4",
4105 "line" : 88,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004106 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004107 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004108 }
4109 },
4110 {
4111 "op" : "assign",
4112 "parameters" : [
4113 {
4114 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004115 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004116 },
4117 {
4118 "type" : "hexstr",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004119 "value" : "0x00000000"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004120 }
4121 ],
4122 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004123 "filename" : "include/int_transit.p4",
4124 "line" : 89,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004125 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004126 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004127 }
4128 },
4129 {
4130 "op" : "add_header",
4131 "parameters" : [
4132 {
4133 "type" : "header",
4134 "value" : "int_egress_tstamp"
4135 }
4136 ],
4137 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004138 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004139 "line" : 70,
4140 "column" : 8,
4141 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
4142 }
4143 },
4144 {
4145 "op" : "assign",
4146 "parameters" : [
4147 {
4148 "type" : "field",
4149 "value" : ["int_egress_tstamp", "egress_tstamp"]
4150 },
4151 {
4152 "type" : "expression",
4153 "value" : {
4154 "type" : "expression",
4155 "value" : {
4156 "op" : "&",
4157 "left" : {
4158 "type" : "expression",
4159 "value" : {
4160 "op" : "+",
4161 "left" : {
4162 "type" : "field",
4163 "value" : ["standard_metadata", "enq_timestamp"]
4164 },
4165 "right" : {
4166 "type" : "field",
4167 "value" : ["standard_metadata", "deq_timedelta"]
4168 }
4169 }
4170 },
4171 "right" : {
4172 "type" : "hexstr",
4173 "value" : "0xffffffff"
4174 }
4175 }
4176 }
4177 }
4178 ],
4179 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004180 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004181 "line" : 71,
4182 "column" : 8,
4183 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
4184 }
4185 }
4186 ]
4187 },
4188 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004189 "name" : "egress.process_int_transit.int_set_header_0407_i6",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004190 "id" : 39,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004191 "runtime_data" : [],
4192 "primitives" : [
4193 {
4194 "op" : "add_header",
4195 "parameters" : [
4196 {
4197 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004198 "value" : "int_q_congestion"
4199 }
4200 ],
4201 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004202 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004203 "line" : 78,
4204 "column" : 8,
4205 "source_fragment" : "hdr.int_q_congestion.setValid()"
4206 }
4207 },
4208 {
4209 "op" : "assign",
4210 "parameters" : [
4211 {
4212 "type" : "field",
4213 "value" : ["int_q_congestion", "q_id"]
4214 },
4215 {
4216 "type" : "hexstr",
4217 "value" : "0x00"
4218 }
4219 ],
4220 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004221 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004222 "line" : 79,
4223 "column" : 8,
4224 "source_fragment" : "hdr.int_q_congestion.q_id = ..."
4225 }
4226 },
4227 {
4228 "op" : "assign",
4229 "parameters" : [
4230 {
4231 "type" : "field",
4232 "value" : ["int_q_congestion", "q_congestion"]
4233 },
4234 {
4235 "type" : "hexstr",
4236 "value" : "0x000000"
4237 }
4238 ],
4239 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004240 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004241 "line" : 82,
4242 "column" : 8,
4243 "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
4244 }
4245 },
4246 {
4247 "op" : "add_header",
4248 "parameters" : [
4249 {
4250 "type" : "header",
4251 "value" : "int_egress_tstamp"
4252 }
4253 ],
4254 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004255 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004256 "line" : 70,
4257 "column" : 8,
4258 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
4259 }
4260 },
4261 {
4262 "op" : "assign",
4263 "parameters" : [
4264 {
4265 "type" : "field",
4266 "value" : ["int_egress_tstamp", "egress_tstamp"]
4267 },
4268 {
4269 "type" : "expression",
4270 "value" : {
4271 "type" : "expression",
4272 "value" : {
4273 "op" : "&",
4274 "left" : {
4275 "type" : "expression",
4276 "value" : {
4277 "op" : "+",
4278 "left" : {
4279 "type" : "field",
4280 "value" : ["standard_metadata", "enq_timestamp"]
4281 },
4282 "right" : {
4283 "type" : "field",
4284 "value" : ["standard_metadata", "deq_timedelta"]
4285 }
4286 }
4287 },
4288 "right" : {
4289 "type" : "hexstr",
4290 "value" : "0xffffffff"
4291 }
4292 }
4293 }
4294 }
4295 ],
4296 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004297 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004298 "line" : 71,
4299 "column" : 8,
4300 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
4301 }
4302 }
4303 ]
4304 },
4305 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004306 "name" : "egress.process_int_transit.int_set_header_0407_i7",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004307 "id" : 40,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004308 "runtime_data" : [],
4309 "primitives" : [
4310 {
4311 "op" : "add_header",
4312 "parameters" : [
4313 {
4314 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004315 "value" : "int_egress_tx_util"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004316 }
4317 ],
4318 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004319 "filename" : "include/int_transit.p4",
4320 "line" : 88,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004321 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004322 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004323 }
4324 },
4325 {
4326 "op" : "assign",
4327 "parameters" : [
4328 {
4329 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004330 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004331 },
4332 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004333 "type" : "hexstr",
4334 "value" : "0x00000000"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004335 }
4336 ],
4337 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004338 "filename" : "include/int_transit.p4",
4339 "line" : 89,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004340 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004341 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
4342 }
4343 },
4344 {
4345 "op" : "add_header",
4346 "parameters" : [
4347 {
4348 "type" : "header",
4349 "value" : "int_q_congestion"
4350 }
4351 ],
4352 "source_info" : {
4353 "filename" : "include/int_transit.p4",
4354 "line" : 78,
4355 "column" : 8,
4356 "source_fragment" : "hdr.int_q_congestion.setValid()"
4357 }
4358 },
4359 {
4360 "op" : "assign",
4361 "parameters" : [
4362 {
4363 "type" : "field",
4364 "value" : ["int_q_congestion", "q_id"]
4365 },
4366 {
4367 "type" : "hexstr",
4368 "value" : "0x00"
4369 }
4370 ],
4371 "source_info" : {
4372 "filename" : "include/int_transit.p4",
4373 "line" : 79,
4374 "column" : 8,
4375 "source_fragment" : "hdr.int_q_congestion.q_id = ..."
4376 }
4377 },
4378 {
4379 "op" : "assign",
4380 "parameters" : [
4381 {
4382 "type" : "field",
4383 "value" : ["int_q_congestion", "q_congestion"]
4384 },
4385 {
4386 "type" : "hexstr",
4387 "value" : "0x000000"
4388 }
4389 ],
4390 "source_info" : {
4391 "filename" : "include/int_transit.p4",
4392 "line" : 82,
4393 "column" : 8,
4394 "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
4395 }
4396 },
4397 {
4398 "op" : "add_header",
4399 "parameters" : [
4400 {
4401 "type" : "header",
4402 "value" : "int_egress_tstamp"
4403 }
4404 ],
4405 "source_info" : {
4406 "filename" : "include/int_transit.p4",
4407 "line" : 70,
4408 "column" : 8,
4409 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
4410 }
4411 },
4412 {
4413 "op" : "assign",
4414 "parameters" : [
4415 {
4416 "type" : "field",
4417 "value" : ["int_egress_tstamp", "egress_tstamp"]
4418 },
4419 {
4420 "type" : "expression",
4421 "value" : {
4422 "type" : "expression",
4423 "value" : {
4424 "op" : "&",
4425 "left" : {
4426 "type" : "expression",
4427 "value" : {
4428 "op" : "+",
4429 "left" : {
4430 "type" : "field",
4431 "value" : ["standard_metadata", "enq_timestamp"]
4432 },
4433 "right" : {
4434 "type" : "field",
4435 "value" : ["standard_metadata", "deq_timedelta"]
4436 }
4437 }
4438 },
4439 "right" : {
4440 "type" : "hexstr",
4441 "value" : "0xffffffff"
4442 }
4443 }
4444 }
4445 }
4446 ],
4447 "source_info" : {
4448 "filename" : "include/int_transit.p4",
4449 "line" : 71,
4450 "column" : 8,
4451 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004452 }
4453 }
4454 ]
4455 },
4456 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004457 "name" : "egress.process_int_transit.int_set_header_0407_i8",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004458 "id" : 41,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004459 "runtime_data" : [],
4460 "primitives" : [
4461 {
4462 "op" : "add_header",
4463 "parameters" : [
4464 {
4465 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004466 "value" : "int_ingress_tstamp"
4467 }
4468 ],
4469 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004470 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004471 "line" : 65,
4472 "column" : 8,
4473 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
4474 }
4475 },
4476 {
4477 "op" : "assign",
4478 "parameters" : [
4479 {
4480 "type" : "field",
4481 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
4482 },
4483 {
4484 "type" : "field",
4485 "value" : ["standard_metadata", "enq_timestamp"]
4486 }
4487 ],
4488 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004489 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004490 "line" : 66,
4491 "column" : 8,
4492 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
4493 }
4494 }
4495 ]
4496 },
4497 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004498 "name" : "egress.process_int_transit.int_set_header_0407_i9",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004499 "id" : 42,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004500 "runtime_data" : [],
4501 "primitives" : [
4502 {
4503 "op" : "add_header",
4504 "parameters" : [
4505 {
4506 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004507 "value" : "int_egress_tx_util"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004508 }
4509 ],
4510 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004511 "filename" : "include/int_transit.p4",
4512 "line" : 88,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004513 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004514 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004515 }
4516 },
4517 {
4518 "op" : "assign",
4519 "parameters" : [
4520 {
4521 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004522 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004523 },
4524 {
4525 "type" : "hexstr",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004526 "value" : "0x00000000"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004527 }
4528 ],
4529 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004530 "filename" : "include/int_transit.p4",
4531 "line" : 89,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004532 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004533 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004534 }
4535 },
4536 {
4537 "op" : "add_header",
4538 "parameters" : [
4539 {
4540 "type" : "header",
4541 "value" : "int_ingress_tstamp"
4542 }
4543 ],
4544 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004545 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004546 "line" : 65,
4547 "column" : 8,
4548 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
4549 }
4550 },
4551 {
4552 "op" : "assign",
4553 "parameters" : [
4554 {
4555 "type" : "field",
4556 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
4557 },
4558 {
4559 "type" : "field",
4560 "value" : ["standard_metadata", "enq_timestamp"]
4561 }
4562 ],
4563 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004564 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004565 "line" : 66,
4566 "column" : 8,
4567 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
4568 }
4569 }
4570 ]
4571 },
4572 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004573 "name" : "egress.process_int_transit.int_set_header_0407_i10",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004574 "id" : 43,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004575 "runtime_data" : [],
4576 "primitives" : [
4577 {
4578 "op" : "add_header",
4579 "parameters" : [
4580 {
4581 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004582 "value" : "int_q_congestion"
4583 }
4584 ],
4585 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004586 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004587 "line" : 78,
4588 "column" : 8,
4589 "source_fragment" : "hdr.int_q_congestion.setValid()"
4590 }
4591 },
4592 {
4593 "op" : "assign",
4594 "parameters" : [
4595 {
4596 "type" : "field",
4597 "value" : ["int_q_congestion", "q_id"]
4598 },
4599 {
4600 "type" : "hexstr",
4601 "value" : "0x00"
4602 }
4603 ],
4604 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004605 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004606 "line" : 79,
4607 "column" : 8,
4608 "source_fragment" : "hdr.int_q_congestion.q_id = ..."
4609 }
4610 },
4611 {
4612 "op" : "assign",
4613 "parameters" : [
4614 {
4615 "type" : "field",
4616 "value" : ["int_q_congestion", "q_congestion"]
4617 },
4618 {
4619 "type" : "hexstr",
4620 "value" : "0x000000"
4621 }
4622 ],
4623 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004624 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004625 "line" : 82,
4626 "column" : 8,
4627 "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
4628 }
4629 },
4630 {
4631 "op" : "add_header",
4632 "parameters" : [
4633 {
4634 "type" : "header",
4635 "value" : "int_ingress_tstamp"
4636 }
4637 ],
4638 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004639 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004640 "line" : 65,
4641 "column" : 8,
4642 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
4643 }
4644 },
4645 {
4646 "op" : "assign",
4647 "parameters" : [
4648 {
4649 "type" : "field",
4650 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
4651 },
4652 {
4653 "type" : "field",
4654 "value" : ["standard_metadata", "enq_timestamp"]
4655 }
4656 ],
4657 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004658 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004659 "line" : 66,
4660 "column" : 8,
4661 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
4662 }
4663 }
4664 ]
4665 },
4666 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004667 "name" : "egress.process_int_transit.int_set_header_0407_i11",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004668 "id" : 44,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004669 "runtime_data" : [],
4670 "primitives" : [
4671 {
4672 "op" : "add_header",
4673 "parameters" : [
4674 {
4675 "type" : "header",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004676 "value" : "int_egress_tx_util"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004677 }
4678 ],
4679 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004680 "filename" : "include/int_transit.p4",
4681 "line" : 88,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004682 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004683 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004684 }
4685 },
4686 {
4687 "op" : "assign",
4688 "parameters" : [
4689 {
4690 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004691 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004692 },
4693 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004694 "type" : "hexstr",
4695 "value" : "0x00000000"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004696 }
4697 ],
4698 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004699 "filename" : "include/int_transit.p4",
4700 "line" : 89,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004701 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004702 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
4703 }
4704 },
4705 {
4706 "op" : "add_header",
4707 "parameters" : [
4708 {
4709 "type" : "header",
4710 "value" : "int_q_congestion"
4711 }
4712 ],
4713 "source_info" : {
4714 "filename" : "include/int_transit.p4",
4715 "line" : 78,
4716 "column" : 8,
4717 "source_fragment" : "hdr.int_q_congestion.setValid()"
4718 }
4719 },
4720 {
4721 "op" : "assign",
4722 "parameters" : [
4723 {
4724 "type" : "field",
4725 "value" : ["int_q_congestion", "q_id"]
4726 },
4727 {
4728 "type" : "hexstr",
4729 "value" : "0x00"
4730 }
4731 ],
4732 "source_info" : {
4733 "filename" : "include/int_transit.p4",
4734 "line" : 79,
4735 "column" : 8,
4736 "source_fragment" : "hdr.int_q_congestion.q_id = ..."
4737 }
4738 },
4739 {
4740 "op" : "assign",
4741 "parameters" : [
4742 {
4743 "type" : "field",
4744 "value" : ["int_q_congestion", "q_congestion"]
4745 },
4746 {
4747 "type" : "hexstr",
4748 "value" : "0x000000"
4749 }
4750 ],
4751 "source_info" : {
4752 "filename" : "include/int_transit.p4",
4753 "line" : 82,
4754 "column" : 8,
4755 "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004756 }
4757 },
4758 {
4759 "op" : "add_header",
4760 "parameters" : [
4761 {
4762 "type" : "header",
4763 "value" : "int_ingress_tstamp"
4764 }
4765 ],
4766 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004767 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004768 "line" : 65,
4769 "column" : 8,
4770 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
4771 }
4772 },
4773 {
4774 "op" : "assign",
4775 "parameters" : [
4776 {
4777 "type" : "field",
4778 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
4779 },
4780 {
4781 "type" : "field",
4782 "value" : ["standard_metadata", "enq_timestamp"]
4783 }
4784 ],
4785 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004786 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004787 "line" : 66,
4788 "column" : 8,
4789 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
4790 }
4791 }
4792 ]
4793 },
4794 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004795 "name" : "egress.process_int_transit.int_set_header_0407_i12",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004796 "id" : 45,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004797 "runtime_data" : [],
4798 "primitives" : [
4799 {
4800 "op" : "add_header",
4801 "parameters" : [
4802 {
4803 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004804 "value" : "int_egress_tstamp"
4805 }
4806 ],
4807 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004808 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004809 "line" : 70,
4810 "column" : 8,
4811 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
4812 }
4813 },
4814 {
4815 "op" : "assign",
4816 "parameters" : [
4817 {
4818 "type" : "field",
4819 "value" : ["int_egress_tstamp", "egress_tstamp"]
4820 },
4821 {
4822 "type" : "expression",
4823 "value" : {
4824 "type" : "expression",
4825 "value" : {
4826 "op" : "&",
4827 "left" : {
4828 "type" : "expression",
4829 "value" : {
4830 "op" : "+",
4831 "left" : {
4832 "type" : "field",
4833 "value" : ["standard_metadata", "enq_timestamp"]
4834 },
4835 "right" : {
4836 "type" : "field",
4837 "value" : ["standard_metadata", "deq_timedelta"]
4838 }
4839 }
4840 },
4841 "right" : {
4842 "type" : "hexstr",
4843 "value" : "0xffffffff"
4844 }
4845 }
4846 }
4847 }
4848 ],
4849 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004850 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004851 "line" : 71,
4852 "column" : 8,
4853 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
4854 }
4855 },
4856 {
4857 "op" : "add_header",
4858 "parameters" : [
4859 {
4860 "type" : "header",
4861 "value" : "int_ingress_tstamp"
4862 }
4863 ],
4864 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004865 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004866 "line" : 65,
4867 "column" : 8,
4868 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
4869 }
4870 },
4871 {
4872 "op" : "assign",
4873 "parameters" : [
4874 {
4875 "type" : "field",
4876 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
4877 },
4878 {
4879 "type" : "field",
4880 "value" : ["standard_metadata", "enq_timestamp"]
4881 }
4882 ],
4883 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004884 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004885 "line" : 66,
4886 "column" : 8,
4887 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
4888 }
4889 }
4890 ]
4891 },
4892 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004893 "name" : "egress.process_int_transit.int_set_header_0407_i13",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08004894 "id" : 46,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004895 "runtime_data" : [],
4896 "primitives" : [
4897 {
4898 "op" : "add_header",
4899 "parameters" : [
4900 {
4901 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004902 "value" : "int_egress_tx_util"
4903 }
4904 ],
4905 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004906 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004907 "line" : 88,
4908 "column" : 8,
4909 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
4910 }
4911 },
4912 {
4913 "op" : "assign",
4914 "parameters" : [
4915 {
4916 "type" : "field",
4917 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
4918 },
4919 {
4920 "type" : "hexstr",
4921 "value" : "0x00000000"
4922 }
4923 ],
4924 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004925 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004926 "line" : 89,
4927 "column" : 8,
4928 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
4929 }
4930 },
4931 {
4932 "op" : "add_header",
4933 "parameters" : [
4934 {
4935 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004936 "value" : "int_egress_tstamp"
4937 }
4938 ],
4939 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004940 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004941 "line" : 70,
4942 "column" : 8,
4943 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
4944 }
4945 },
4946 {
4947 "op" : "assign",
4948 "parameters" : [
4949 {
4950 "type" : "field",
4951 "value" : ["int_egress_tstamp", "egress_tstamp"]
4952 },
4953 {
4954 "type" : "expression",
4955 "value" : {
4956 "type" : "expression",
4957 "value" : {
4958 "op" : "&",
4959 "left" : {
4960 "type" : "expression",
4961 "value" : {
4962 "op" : "+",
4963 "left" : {
4964 "type" : "field",
4965 "value" : ["standard_metadata", "enq_timestamp"]
4966 },
4967 "right" : {
4968 "type" : "field",
4969 "value" : ["standard_metadata", "deq_timedelta"]
4970 }
4971 }
4972 },
4973 "right" : {
4974 "type" : "hexstr",
4975 "value" : "0xffffffff"
4976 }
4977 }
4978 }
4979 }
4980 ],
4981 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004982 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004983 "line" : 71,
4984 "column" : 8,
4985 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
4986 }
4987 },
4988 {
4989 "op" : "add_header",
4990 "parameters" : [
4991 {
4992 "type" : "header",
4993 "value" : "int_ingress_tstamp"
4994 }
4995 ],
4996 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07004997 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08004998 "line" : 65,
4999 "column" : 8,
5000 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
5001 }
5002 },
5003 {
5004 "op" : "assign",
5005 "parameters" : [
5006 {
5007 "type" : "field",
5008 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
5009 },
5010 {
5011 "type" : "field",
5012 "value" : ["standard_metadata", "enq_timestamp"]
5013 }
5014 ],
5015 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005016 "filename" : "include/int_transit.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005017 "line" : 66,
5018 "column" : 8,
5019 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
5020 }
5021 }
5022 ]
5023 },
5024 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005025 "name" : "egress.process_int_transit.int_set_header_0407_i14",
5026 "id" : 47,
5027 "runtime_data" : [],
5028 "primitives" : [
5029 {
5030 "op" : "add_header",
5031 "parameters" : [
5032 {
5033 "type" : "header",
5034 "value" : "int_q_congestion"
5035 }
5036 ],
5037 "source_info" : {
5038 "filename" : "include/int_transit.p4",
5039 "line" : 78,
5040 "column" : 8,
5041 "source_fragment" : "hdr.int_q_congestion.setValid()"
5042 }
5043 },
5044 {
5045 "op" : "assign",
5046 "parameters" : [
5047 {
5048 "type" : "field",
5049 "value" : ["int_q_congestion", "q_id"]
5050 },
5051 {
5052 "type" : "hexstr",
5053 "value" : "0x00"
5054 }
5055 ],
5056 "source_info" : {
5057 "filename" : "include/int_transit.p4",
5058 "line" : 79,
5059 "column" : 8,
5060 "source_fragment" : "hdr.int_q_congestion.q_id = ..."
5061 }
5062 },
5063 {
5064 "op" : "assign",
5065 "parameters" : [
5066 {
5067 "type" : "field",
5068 "value" : ["int_q_congestion", "q_congestion"]
5069 },
5070 {
5071 "type" : "hexstr",
5072 "value" : "0x000000"
5073 }
5074 ],
5075 "source_info" : {
5076 "filename" : "include/int_transit.p4",
5077 "line" : 82,
5078 "column" : 8,
5079 "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
5080 }
5081 },
5082 {
5083 "op" : "add_header",
5084 "parameters" : [
5085 {
5086 "type" : "header",
5087 "value" : "int_egress_tstamp"
5088 }
5089 ],
5090 "source_info" : {
5091 "filename" : "include/int_transit.p4",
5092 "line" : 70,
5093 "column" : 8,
5094 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
5095 }
5096 },
5097 {
5098 "op" : "assign",
5099 "parameters" : [
5100 {
5101 "type" : "field",
5102 "value" : ["int_egress_tstamp", "egress_tstamp"]
5103 },
5104 {
5105 "type" : "expression",
5106 "value" : {
5107 "type" : "expression",
5108 "value" : {
5109 "op" : "&",
5110 "left" : {
5111 "type" : "expression",
5112 "value" : {
5113 "op" : "+",
5114 "left" : {
5115 "type" : "field",
5116 "value" : ["standard_metadata", "enq_timestamp"]
5117 },
5118 "right" : {
5119 "type" : "field",
5120 "value" : ["standard_metadata", "deq_timedelta"]
5121 }
5122 }
5123 },
5124 "right" : {
5125 "type" : "hexstr",
5126 "value" : "0xffffffff"
5127 }
5128 }
5129 }
5130 }
5131 ],
5132 "source_info" : {
5133 "filename" : "include/int_transit.p4",
5134 "line" : 71,
5135 "column" : 8,
5136 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
5137 }
5138 },
5139 {
5140 "op" : "add_header",
5141 "parameters" : [
5142 {
5143 "type" : "header",
5144 "value" : "int_ingress_tstamp"
5145 }
5146 ],
5147 "source_info" : {
5148 "filename" : "include/int_transit.p4",
5149 "line" : 65,
5150 "column" : 8,
5151 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
5152 }
5153 },
5154 {
5155 "op" : "assign",
5156 "parameters" : [
5157 {
5158 "type" : "field",
5159 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
5160 },
5161 {
5162 "type" : "field",
5163 "value" : ["standard_metadata", "enq_timestamp"]
5164 }
5165 ],
5166 "source_info" : {
5167 "filename" : "include/int_transit.p4",
5168 "line" : 66,
5169 "column" : 8,
5170 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
5171 }
5172 }
5173 ]
5174 },
5175 {
5176 "name" : "egress.process_int_transit.int_set_header_0407_i15",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005177 "id" : 48,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005178 "runtime_data" : [],
5179 "primitives" : [
5180 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005181 "op" : "add_header",
5182 "parameters" : [
5183 {
5184 "type" : "header",
5185 "value" : "int_egress_tx_util"
5186 }
5187 ],
5188 "source_info" : {
5189 "filename" : "include/int_transit.p4",
5190 "line" : 88,
5191 "column" : 8,
5192 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
5193 }
5194 },
5195 {
5196 "op" : "assign",
5197 "parameters" : [
5198 {
5199 "type" : "field",
5200 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
5201 },
5202 {
5203 "type" : "hexstr",
5204 "value" : "0x00000000"
5205 }
5206 ],
5207 "source_info" : {
5208 "filename" : "include/int_transit.p4",
5209 "line" : 89,
5210 "column" : 8,
5211 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
5212 }
5213 },
5214 {
5215 "op" : "add_header",
5216 "parameters" : [
5217 {
5218 "type" : "header",
5219 "value" : "int_q_congestion"
5220 }
5221 ],
5222 "source_info" : {
5223 "filename" : "include/int_transit.p4",
5224 "line" : 78,
5225 "column" : 8,
5226 "source_fragment" : "hdr.int_q_congestion.setValid()"
5227 }
5228 },
5229 {
5230 "op" : "assign",
5231 "parameters" : [
5232 {
5233 "type" : "field",
5234 "value" : ["int_q_congestion", "q_id"]
5235 },
5236 {
5237 "type" : "hexstr",
5238 "value" : "0x00"
5239 }
5240 ],
5241 "source_info" : {
5242 "filename" : "include/int_transit.p4",
5243 "line" : 79,
5244 "column" : 8,
5245 "source_fragment" : "hdr.int_q_congestion.q_id = ..."
5246 }
5247 },
5248 {
5249 "op" : "assign",
5250 "parameters" : [
5251 {
5252 "type" : "field",
5253 "value" : ["int_q_congestion", "q_congestion"]
5254 },
5255 {
5256 "type" : "hexstr",
5257 "value" : "0x000000"
5258 }
5259 ],
5260 "source_info" : {
5261 "filename" : "include/int_transit.p4",
5262 "line" : 82,
5263 "column" : 8,
5264 "source_fragment" : "hdr.int_q_congestion.q_congestion = ..."
5265 }
5266 },
5267 {
5268 "op" : "add_header",
5269 "parameters" : [
5270 {
5271 "type" : "header",
5272 "value" : "int_egress_tstamp"
5273 }
5274 ],
5275 "source_info" : {
5276 "filename" : "include/int_transit.p4",
5277 "line" : 70,
5278 "column" : 8,
5279 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
5280 }
5281 },
5282 {
5283 "op" : "assign",
5284 "parameters" : [
5285 {
5286 "type" : "field",
5287 "value" : ["int_egress_tstamp", "egress_tstamp"]
5288 },
5289 {
5290 "type" : "expression",
5291 "value" : {
5292 "type" : "expression",
5293 "value" : {
5294 "op" : "&",
5295 "left" : {
5296 "type" : "expression",
5297 "value" : {
5298 "op" : "+",
5299 "left" : {
5300 "type" : "field",
5301 "value" : ["standard_metadata", "enq_timestamp"]
5302 },
5303 "right" : {
5304 "type" : "field",
5305 "value" : ["standard_metadata", "deq_timedelta"]
5306 }
5307 }
5308 },
5309 "right" : {
5310 "type" : "hexstr",
5311 "value" : "0xffffffff"
5312 }
5313 }
5314 }
5315 }
5316 ],
5317 "source_info" : {
5318 "filename" : "include/int_transit.p4",
5319 "line" : 71,
5320 "column" : 8,
5321 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
5322 }
5323 },
5324 {
5325 "op" : "add_header",
5326 "parameters" : [
5327 {
5328 "type" : "header",
5329 "value" : "int_ingress_tstamp"
5330 }
5331 ],
5332 "source_info" : {
5333 "filename" : "include/int_transit.p4",
5334 "line" : 65,
5335 "column" : 8,
5336 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
5337 }
5338 },
5339 {
5340 "op" : "assign",
5341 "parameters" : [
5342 {
5343 "type" : "field",
5344 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
5345 },
5346 {
5347 "type" : "field",
5348 "value" : ["standard_metadata", "enq_timestamp"]
5349 }
5350 ],
5351 "source_info" : {
5352 "filename" : "include/int_transit.p4",
5353 "line" : 66,
5354 "column" : 8,
5355 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
5356 }
5357 }
5358 ]
5359 },
5360 {
5361 "name" : "egress.process_int_outer_encap.int_update_ipv4",
5362 "id" : 49,
5363 "runtime_data" : [],
5364 "primitives" : [
5365 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005366 "op" : "assign",
5367 "parameters" : [
5368 {
5369 "type" : "field",
5370 "value" : ["ipv4", "len"]
5371 },
5372 {
5373 "type" : "expression",
5374 "value" : {
5375 "type" : "expression",
5376 "value" : {
5377 "op" : "&",
5378 "left" : {
5379 "type" : "expression",
5380 "value" : {
5381 "op" : "+",
5382 "left" : {
5383 "type" : "field",
5384 "value" : ["ipv4", "len"]
5385 },
5386 "right" : {
5387 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005388 "value" : ["userMetadata.int_meta", "insert_byte_cnt"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005389 }
5390 }
5391 },
5392 "right" : {
5393 "type" : "hexstr",
5394 "value" : "0xffff"
5395 }
5396 }
5397 }
5398 }
5399 ],
5400 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005401 "filename" : "include/int_transit.p4",
5402 "line" : 304,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005403 "column" : 8,
5404 "source_fragment" : "hdr.ipv4.len = hdr.ipv4.len + local_metadata.int_meta.insert_byte_cnt"
5405 }
5406 }
5407 ]
5408 },
5409 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005410 "name" : "egress.process_int_outer_encap.int_update_udp",
5411 "id" : 50,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005412 "runtime_data" : [],
5413 "primitives" : [
5414 {
5415 "op" : "assign",
5416 "parameters" : [
5417 {
5418 "type" : "field",
5419 "value" : ["udp", "length_"]
5420 },
5421 {
5422 "type" : "expression",
5423 "value" : {
5424 "type" : "expression",
5425 "value" : {
5426 "op" : "&",
5427 "left" : {
5428 "type" : "expression",
5429 "value" : {
5430 "op" : "+",
5431 "left" : {
5432 "type" : "field",
5433 "value" : ["udp", "length_"]
5434 },
5435 "right" : {
5436 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005437 "value" : ["userMetadata.int_meta", "insert_byte_cnt"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005438 }
5439 }
5440 },
5441 "right" : {
5442 "type" : "hexstr",
5443 "value" : "0xffff"
5444 }
5445 }
5446 }
5447 }
5448 ],
5449 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005450 "filename" : "include/int_transit.p4",
5451 "line" : 307,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005452 "column" : 8,
5453 "source_fragment" : "hdr.udp.length_ = hdr.udp.length_ + local_metadata.int_meta.insert_byte_cnt"
5454 }
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005455 }
5456 ]
5457 },
5458 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005459 "name" : "egress.process_int_outer_encap.int_update_shim",
5460 "id" : 51,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005461 "runtime_data" : [],
5462 "primitives" : [
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005463 {
5464 "op" : "assign",
5465 "parameters" : [
5466 {
5467 "type" : "field",
5468 "value" : ["intl4_shim", "len"]
5469 },
5470 {
5471 "type" : "expression",
5472 "value" : {
5473 "type" : "expression",
5474 "value" : {
5475 "op" : "&",
5476 "left" : {
5477 "type" : "expression",
5478 "value" : {
5479 "op" : "+",
5480 "left" : {
5481 "type" : "field",
5482 "value" : ["intl4_shim", "len"]
5483 },
5484 "right" : {
5485 "type" : "expression",
5486 "value" : {
5487 "op" : "&",
5488 "left" : {
5489 "type" : "field",
5490 "value" : ["int_header", "ins_cnt"]
5491 },
5492 "right" : {
5493 "type" : "hexstr",
5494 "value" : "0xff"
5495 }
5496 }
5497 }
5498 }
5499 },
5500 "right" : {
5501 "type" : "hexstr",
5502 "value" : "0xff"
5503 }
5504 }
5505 }
5506 }
5507 ],
5508 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005509 "filename" : "include/int_transit.p4",
5510 "line" : 310,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005511 "column" : 8,
5512 "source_fragment" : "hdr.intl4_shim.len = hdr.intl4_shim.len + (bit<8>)hdr.int_header.ins_cnt"
5513 }
5514 }
5515 ]
5516 },
5517 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005518 "name" : "egress.process_int_sink.restore_header",
5519 "id" : 52,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005520 "runtime_data" : [],
5521 "primitives" : [
5522 {
5523 "op" : "assign",
5524 "parameters" : [
5525 {
5526 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005527 "value" : ["udp", "dst_port"]
5528 },
5529 {
5530 "type" : "field",
5531 "value" : ["intl4_tail", "dest_port"]
5532 }
5533 ],
5534 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005535 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005536 "line" : 27,
5537 "column" : 8,
5538 "source_fragment" : "hdr.udp.dst_port = hdr.intl4_tail.dest_port"
5539 }
5540 },
5541 {
5542 "op" : "assign",
5543 "parameters" : [
5544 {
5545 "type" : "field",
5546 "value" : ["ipv4", "dscp"]
5547 },
5548 {
5549 "type" : "expression",
5550 "value" : {
5551 "type" : "expression",
5552 "value" : {
5553 "op" : "&",
5554 "left" : {
5555 "type" : "field",
5556 "value" : ["intl4_tail", "dscp"]
5557 },
5558 "right" : {
5559 "type" : "hexstr",
5560 "value" : "0x3f"
5561 }
5562 }
5563 }
5564 }
5565 ],
5566 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005567 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005568 "line" : 28,
5569 "column" : 8,
5570 "source_fragment" : "hdr.ipv4.dscp = (bit<6>)hdr.intl4_tail.dscp"
5571 }
5572 }
5573 ]
5574 },
5575 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005576 "name" : "egress.process_int_sink.int_sink",
5577 "id" : 53,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005578 "runtime_data" : [],
5579 "primitives" : [
5580 {
5581 "op" : "assign",
5582 "parameters" : [
5583 {
5584 "type" : "field",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005585 "value" : ["ipv4", "len"]
5586 },
5587 {
5588 "type" : "expression",
5589 "value" : {
5590 "type" : "expression",
5591 "value" : {
5592 "op" : "&",
5593 "left" : {
5594 "type" : "expression",
5595 "value" : {
5596 "op" : "-",
5597 "left" : {
5598 "type" : "field",
5599 "value" : ["ipv4", "len"]
5600 },
5601 "right" : {
5602 "type" : "expression",
5603 "value" : {
5604 "op" : "&",
5605 "left" : {
5606 "type" : "expression",
5607 "value" : {
5608 "op" : "&",
5609 "left" : {
5610 "type" : "expression",
5611 "value" : {
5612 "op" : "<<",
5613 "left" : {
5614 "type" : "expression",
5615 "value" : {
5616 "op" : "&",
5617 "left" : {
5618 "type" : "expression",
5619 "value" : {
5620 "op" : "-",
5621 "left" : {
5622 "type" : "field",
5623 "value" : ["intl4_shim", "len"]
5624 },
5625 "right" : {
5626 "type" : "expression",
5627 "value" : {
5628 "op" : "&",
5629 "left" : {
5630 "type" : "field",
5631 "value" : ["int_header", "ins_cnt"]
5632 },
5633 "right" : {
5634 "type" : "hexstr",
5635 "value" : "0xff"
5636 }
5637 }
5638 }
5639 }
5640 },
5641 "right" : {
5642 "type" : "hexstr",
5643 "value" : "0xff"
5644 }
5645 }
5646 },
5647 "right" : {
5648 "type" : "hexstr",
5649 "value" : "0x2"
5650 }
5651 }
5652 },
5653 "right" : {
5654 "type" : "hexstr",
5655 "value" : "0xff"
5656 }
5657 }
5658 },
5659 "right" : {
5660 "type" : "hexstr",
5661 "value" : "0xffff"
5662 }
5663 }
5664 }
5665 }
5666 },
5667 "right" : {
5668 "type" : "hexstr",
5669 "value" : "0xffff"
5670 }
5671 }
5672 }
5673 }
5674 ],
5675 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005676 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005677 "line" : 33,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005678 "column" : 8,
5679 "source_fragment" : "hdr.ipv4.len = hdr.ipv4.len - (bit<16>)((hdr.intl4_shim.len - (bit<8>)hdr.int_header.ins_cnt) << 2)"
5680 }
5681 },
5682 {
5683 "op" : "assign",
5684 "parameters" : [
5685 {
5686 "type" : "field",
5687 "value" : ["udp", "length_"]
5688 },
5689 {
5690 "type" : "expression",
5691 "value" : {
5692 "type" : "expression",
5693 "value" : {
5694 "op" : "&",
5695 "left" : {
5696 "type" : "expression",
5697 "value" : {
5698 "op" : "-",
5699 "left" : {
5700 "type" : "field",
5701 "value" : ["udp", "length_"]
5702 },
5703 "right" : {
5704 "type" : "expression",
5705 "value" : {
5706 "op" : "&",
5707 "left" : {
5708 "type" : "expression",
5709 "value" : {
5710 "op" : "&",
5711 "left" : {
5712 "type" : "expression",
5713 "value" : {
5714 "op" : "<<",
5715 "left" : {
5716 "type" : "expression",
5717 "value" : {
5718 "op" : "&",
5719 "left" : {
5720 "type" : "expression",
5721 "value" : {
5722 "op" : "-",
5723 "left" : {
5724 "type" : "field",
5725 "value" : ["intl4_shim", "len"]
5726 },
5727 "right" : {
5728 "type" : "expression",
5729 "value" : {
5730 "op" : "&",
5731 "left" : {
5732 "type" : "field",
5733 "value" : ["int_header", "ins_cnt"]
5734 },
5735 "right" : {
5736 "type" : "hexstr",
5737 "value" : "0xff"
5738 }
5739 }
5740 }
5741 }
5742 },
5743 "right" : {
5744 "type" : "hexstr",
5745 "value" : "0xff"
5746 }
5747 }
5748 },
5749 "right" : {
5750 "type" : "hexstr",
5751 "value" : "0x2"
5752 }
5753 }
5754 },
5755 "right" : {
5756 "type" : "hexstr",
5757 "value" : "0xff"
5758 }
5759 }
5760 },
5761 "right" : {
5762 "type" : "hexstr",
5763 "value" : "0xffff"
5764 }
5765 }
5766 }
5767 }
5768 },
5769 "right" : {
5770 "type" : "hexstr",
5771 "value" : "0xffff"
5772 }
5773 }
5774 }
5775 }
5776 ],
5777 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005778 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005779 "line" : 34,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005780 "column" : 8,
5781 "source_fragment" : "hdr.udp.length_ = hdr.udp.length_ - (bit<16>)((hdr.intl4_shim.len - (bit<8>)hdr.int_header.ins_cnt) << 2)"
5782 }
5783 },
5784 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005785 "op" : "remove_header",
5786 "parameters" : [
5787 {
5788 "type" : "header",
5789 "value" : "int_header"
5790 }
5791 ],
5792 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005793 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005794 "line" : 36,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005795 "column" : 8,
5796 "source_fragment" : "hdr.int_header.setInvalid()"
5797 }
5798 },
5799 {
5800 "op" : "remove_header",
5801 "parameters" : [
5802 {
5803 "type" : "header",
5804 "value" : "int_data"
5805 }
5806 ],
5807 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005808 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005809 "line" : 37,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005810 "column" : 8,
5811 "source_fragment" : "hdr.int_data.setInvalid()"
5812 }
5813 },
5814 {
5815 "op" : "remove_header",
5816 "parameters" : [
5817 {
5818 "type" : "header",
5819 "value" : "intl4_shim"
5820 }
5821 ],
5822 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005823 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005824 "line" : 38,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005825 "column" : 8,
5826 "source_fragment" : "hdr.intl4_shim.setInvalid()"
5827 }
5828 },
5829 {
5830 "op" : "remove_header",
5831 "parameters" : [
5832 {
5833 "type" : "header",
5834 "value" : "intl4_tail"
5835 }
5836 ],
5837 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005838 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005839 "line" : 39,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005840 "column" : 8,
5841 "source_fragment" : "hdr.intl4_tail.setInvalid()"
5842 }
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005843 },
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005844 {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005845 "op" : "remove_header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005846 "parameters" : [
5847 {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005848 "type" : "header",
5849 "value" : "int_switch_id"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005850 }
5851 ],
5852 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005853 "filename" : "include/int_sink.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005854 "line" : 40,
5855 "column" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005856 "source_fragment" : "hdr.int_switch_id.setInvalid()"
5857 }
5858 },
5859 {
5860 "op" : "remove_header",
5861 "parameters" : [
5862 {
5863 "type" : "header",
5864 "value" : "int_port_ids"
5865 }
5866 ],
5867 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005868 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005869 "line" : 41,
5870 "column" : 8,
5871 "source_fragment" : "hdr.int_port_ids.setInvalid()"
5872 }
5873 },
5874 {
5875 "op" : "remove_header",
5876 "parameters" : [
5877 {
5878 "type" : "header",
5879 "value" : "int_hop_latency"
5880 }
5881 ],
5882 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005883 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005884 "line" : 42,
5885 "column" : 8,
5886 "source_fragment" : "hdr.int_hop_latency.setInvalid()"
5887 }
5888 },
5889 {
5890 "op" : "remove_header",
5891 "parameters" : [
5892 {
5893 "type" : "header",
5894 "value" : "int_q_occupancy"
5895 }
5896 ],
5897 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005898 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005899 "line" : 43,
5900 "column" : 8,
5901 "source_fragment" : "hdr.int_q_occupancy.setInvalid()"
5902 }
5903 },
5904 {
5905 "op" : "remove_header",
5906 "parameters" : [
5907 {
5908 "type" : "header",
5909 "value" : "int_ingress_tstamp"
5910 }
5911 ],
5912 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005913 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005914 "line" : 44,
5915 "column" : 8,
5916 "source_fragment" : "hdr.int_ingress_tstamp.setInvalid()"
5917 }
5918 },
5919 {
5920 "op" : "remove_header",
5921 "parameters" : [
5922 {
5923 "type" : "header",
5924 "value" : "int_egress_tstamp"
5925 }
5926 ],
5927 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005928 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005929 "line" : 45,
5930 "column" : 8,
5931 "source_fragment" : "hdr.int_egress_tstamp.setInvalid()"
5932 }
5933 },
5934 {
5935 "op" : "remove_header",
5936 "parameters" : [
5937 {
5938 "type" : "header",
5939 "value" : "int_q_congestion"
5940 }
5941 ],
5942 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005943 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005944 "line" : 46,
5945 "column" : 8,
5946 "source_fragment" : "hdr.int_q_congestion.setInvalid()"
5947 }
5948 },
5949 {
5950 "op" : "remove_header",
5951 "parameters" : [
5952 {
5953 "type" : "header",
5954 "value" : "int_egress_tx_util"
5955 }
5956 ],
5957 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005958 "filename" : "include/int_sink.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08005959 "line" : 47,
5960 "column" : 8,
5961 "source_fragment" : "hdr.int_egress_tx_util.setInvalid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005962 }
5963 }
5964 ]
5965 },
5966 {
5967 "name" : "act_1",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005968 "id" : 54,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005969 "runtime_data" : [],
5970 "primitives" : [
5971 {
5972 "op" : "add_header",
5973 "parameters" : [
5974 {
5975 "type" : "header",
5976 "value" : "packet_in"
5977 }
5978 ],
5979 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005980 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08005981 "line" : 38,
5982 "column" : 12,
5983 "source_fragment" : "hdr.packet_in.setValid()"
5984 }
5985 },
5986 {
5987 "op" : "assign",
5988 "parameters" : [
5989 {
5990 "type" : "field",
5991 "value" : ["packet_in", "ingress_port"]
5992 },
5993 {
5994 "type" : "field",
5995 "value" : ["standard_metadata", "ingress_port"]
5996 }
5997 ],
5998 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07005999 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006000 "line" : 39,
6001 "column" : 12,
6002 "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
6003 }
6004 }
6005 ]
6006 },
6007 {
6008 "name" : "act_2",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006009 "id" : 55,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006010 "runtime_data" : [],
6011 "primitives" : [
6012 {
6013 "op" : "assign",
6014 "parameters" : [
6015 {
6016 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006017 "value" : ["scalars", "tmp_3"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006018 },
6019 {
6020 "type" : "expression",
6021 "value" : {
6022 "type" : "expression",
6023 "value" : {
6024 "op" : "&",
6025 "left" : {
6026 "type" : "field",
6027 "value" : ["standard_metadata", "egress_port"]
6028 },
6029 "right" : {
6030 "type" : "hexstr",
6031 "value" : "0xffffffff"
6032 }
6033 }
6034 }
6035 }
Carmelo Cascone6af4e172018-06-15 16:01:30 +02006036 ],
6037 "source_info" : {
6038 "filename" : "include/port_counters.p4",
6039 "line" : 39,
6040 "column" : 34,
6041 "source_fragment" : "(bit<32>) standard_metadata.egress_port"
6042 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006043 },
6044 {
6045 "op" : "count",
6046 "parameters" : [
6047 {
6048 "type" : "counter_array",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006049 "value" : "egress.port_counters_egress.egress_port_counter"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006050 },
6051 {
6052 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006053 "value" : ["scalars", "tmp_3"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006054 }
6055 ],
6056 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006057 "filename" : "include/port_counters.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006058 "line" : 39,
6059 "column" : 8,
6060 "source_fragment" : "egress_port_counter.count((bit<32>) standard_metadata.egress_port)"
6061 }
6062 }
6063 ]
6064 }
6065 ],
6066 "pipelines" : [
6067 {
6068 "name" : "ingress",
6069 "id" : 0,
6070 "source_info" : {
6071 "filename" : "int.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006072 "line" : 35,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006073 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006074 "source_fragment" : "ingress"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006075 },
6076 "init_table" : "tbl_act",
6077 "tables" : [
6078 {
6079 "name" : "tbl_act",
6080 "id" : 0,
6081 "key" : [],
6082 "match_type" : "exact",
6083 "type" : "simple",
6084 "max_size" : 1024,
6085 "with_counters" : false,
6086 "support_timeout" : false,
6087 "direct_meters" : null,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006088 "action_ids" : [5],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006089 "actions" : ["act_0"],
6090 "base_default_next" : "node_3",
6091 "next_tables" : {
6092 "act_0" : "node_3"
6093 },
6094 "default_entry" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006095 "action_id" : 5,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006096 "action_const" : true,
6097 "action_data" : [],
6098 "action_entry_const" : true
6099 }
6100 },
6101 {
6102 "name" : "tbl_act_0",
6103 "id" : 1,
6104 "key" : [],
6105 "match_type" : "exact",
6106 "type" : "simple",
6107 "max_size" : 1024,
6108 "with_counters" : false,
6109 "support_timeout" : false,
6110 "direct_meters" : null,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006111 "action_ids" : [4],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006112 "actions" : ["act"],
6113 "base_default_next" : null,
6114 "next_tables" : {
6115 "act" : null
6116 },
6117 "default_entry" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006118 "action_id" : 4,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006119 "action_const" : true,
6120 "action_data" : [],
6121 "action_entry_const" : true
6122 }
6123 },
6124 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006125 "name" : "ingress.table0_control.table0",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006126 "id" : 2,
6127 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006128 "filename" : "include/table0.p4",
Keesjan Karsten23368892018-05-22 10:46:01 +00006129 "line" : 41,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006130 "column" : 10,
6131 "source_fragment" : "table0"
6132 },
6133 "key" : [
6134 {
6135 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006136 "name" : "standard_metadata.ingress_port",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006137 "target" : ["standard_metadata", "ingress_port"],
6138 "mask" : null
6139 },
6140 {
6141 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006142 "name" : "hdr.ethernet.src_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006143 "target" : ["ethernet", "src_addr"],
6144 "mask" : null
6145 },
6146 {
6147 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006148 "name" : "hdr.ethernet.dst_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006149 "target" : ["ethernet", "dst_addr"],
6150 "mask" : null
6151 },
6152 {
6153 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006154 "name" : "hdr.ethernet.ether_type",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006155 "target" : ["ethernet", "ether_type"],
6156 "mask" : null
6157 },
6158 {
6159 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006160 "name" : "hdr.ipv4.src_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006161 "target" : ["ipv4", "src_addr"],
6162 "mask" : null
6163 },
6164 {
6165 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006166 "name" : "hdr.ipv4.dst_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006167 "target" : ["ipv4", "dst_addr"],
6168 "mask" : null
6169 },
6170 {
6171 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006172 "name" : "hdr.ipv4.protocol",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006173 "target" : ["ipv4", "protocol"],
6174 "mask" : null
6175 },
6176 {
6177 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006178 "name" : "local_metadata.l4_src_port",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006179 "target" : ["scalars", "local_metadata_t.l4_src_port"],
6180 "mask" : null
6181 },
6182 {
6183 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006184 "name" : "local_metadata.l4_dst_port",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006185 "target" : ["scalars", "local_metadata_t.l4_dst_port"],
6186 "mask" : null
6187 }
6188 ],
6189 "match_type" : "ternary",
6190 "type" : "simple",
6191 "max_size" : 1024,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006192 "with_counters" : true,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006193 "support_timeout" : false,
6194 "direct_meters" : null,
Keesjan Karsten23368892018-05-22 10:46:01 +00006195 "action_ids" : [3, 2, 1, 0],
6196 "actions" : ["ingress.table0_control.set_egress_port", "ingress.table0_control.send_to_cpu", "ingress.table0_control.set_next_hop_id", "_drop"],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006197 "base_default_next" : null,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006198 "next_tables" : {
Keesjan Karsten23368892018-05-22 10:46:01 +00006199 "ingress.table0_control.set_egress_port" : null,
6200 "ingress.table0_control.send_to_cpu" : null,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006201 "ingress.table0_control.set_next_hop_id" : null,
6202 "_drop" : null
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006203 },
6204 "default_entry" : {
Keesjan Karsten23368892018-05-22 10:46:01 +00006205 "action_id" : 0,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006206 "action_const" : true,
6207 "action_data" : [],
6208 "action_entry_const" : true
6209 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006210 }
6211 ],
6212 "action_profiles" : [],
6213 "conditionals" : [
6214 {
6215 "name" : "node_3",
6216 "id" : 0,
6217 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006218 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006219 "line" : 26,
6220 "column" : 12,
6221 "source_fragment" : "standard_metadata.ingress_port == CPU_PORT"
6222 },
6223 "expression" : {
6224 "type" : "expression",
6225 "value" : {
6226 "op" : "==",
6227 "left" : {
6228 "type" : "field",
6229 "value" : ["standard_metadata", "ingress_port"]
6230 },
6231 "right" : {
6232 "type" : "hexstr",
6233 "value" : "0x00ff"
6234 }
6235 }
6236 },
6237 "true_next" : "tbl_act_0",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006238 "false_next" : "ingress.table0_control.table0"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006239 }
6240 ]
6241 },
6242 {
6243 "name" : "egress",
6244 "id" : 1,
6245 "source_info" : {
6246 "filename" : "int.p4",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006247 "line" : 47,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006248 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006249 "source_fragment" : "egress"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006250 },
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006251 "init_table" : "node_8",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006252 "tables" : [
6253 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006254 "name" : "egress.process_set_source_sink.tb_set_source",
6255 "id" : 3,
6256 "source_info" : {
6257 "filename" : "include/int_source.p4",
6258 "line" : 101,
6259 "column" : 10,
6260 "source_fragment" : "tb_set_source"
6261 },
6262 "key" : [
6263 {
6264 "match_type" : "exact",
6265 "name" : "standard_metadata.ingress_port",
6266 "target" : ["standard_metadata", "ingress_port"],
6267 "mask" : null
6268 }
6269 ],
6270 "match_type" : "exact",
6271 "type" : "simple",
6272 "max_size" : 256,
6273 "with_counters" : true,
6274 "support_timeout" : false,
6275 "direct_meters" : null,
6276 "action_ids" : [12, 6],
6277 "actions" : ["egress.process_set_source_sink.int_set_source", "NoAction"],
6278 "base_default_next" : "egress.process_set_source_sink.tb_set_sink",
6279 "next_tables" : {
6280 "egress.process_set_source_sink.int_set_source" : "egress.process_set_source_sink.tb_set_sink",
6281 "NoAction" : "egress.process_set_source_sink.tb_set_sink"
6282 },
6283 "default_entry" : {
6284 "action_id" : 6,
6285 "action_const" : false,
6286 "action_data" : [],
6287 "action_entry_const" : false
6288 }
6289 },
6290 {
6291 "name" : "egress.process_set_source_sink.tb_set_sink",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006292 "id" : 4,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006293 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006294 "filename" : "include/int_source.p4",
6295 "line" : 111,
6296 "column" : 10,
6297 "source_fragment" : "tb_set_sink"
6298 },
6299 "key" : [
6300 {
6301 "match_type" : "exact",
6302 "name" : "standard_metadata.egress_port",
6303 "target" : ["standard_metadata", "egress_port"],
6304 "mask" : null
6305 }
6306 ],
6307 "match_type" : "exact",
6308 "type" : "simple",
6309 "max_size" : 256,
6310 "with_counters" : true,
6311 "support_timeout" : false,
6312 "direct_meters" : null,
6313 "action_ids" : [13, 7],
6314 "actions" : ["egress.process_set_source_sink.int_set_sink", "NoAction"],
6315 "base_default_next" : "node_11",
6316 "next_tables" : {
6317 "egress.process_set_source_sink.int_set_sink" : "node_11",
6318 "NoAction" : "node_11"
6319 },
6320 "default_entry" : {
6321 "action_id" : 7,
6322 "action_const" : false,
6323 "action_data" : [],
6324 "action_entry_const" : false
6325 }
6326 },
6327 {
6328 "name" : "egress.process_int_source.tb_int_source",
6329 "id" : 5,
6330 "source_info" : {
6331 "filename" : "include/int_source.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006332 "line" : 66,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006333 "column" : 10,
6334 "source_fragment" : "tb_int_source"
6335 },
6336 "key" : [
6337 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006338 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006339 "name" : "hdr.ipv4.src_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006340 "target" : ["ipv4", "src_addr"],
6341 "mask" : null
6342 },
6343 {
6344 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006345 "name" : "hdr.ipv4.dst_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006346 "target" : ["ipv4", "dst_addr"],
6347 "mask" : null
6348 },
6349 {
6350 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006351 "name" : "local_metadata.l4_src_port",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006352 "target" : ["scalars", "local_metadata_t.l4_src_port"],
6353 "mask" : null
6354 },
6355 {
6356 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006357 "name" : "local_metadata.l4_dst_port",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006358 "target" : ["scalars", "local_metadata_t.l4_dst_port"],
6359 "mask" : null
6360 }
6361 ],
6362 "match_type" : "ternary",
6363 "type" : "simple",
6364 "max_size" : 1024,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006365 "with_counters" : true,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006366 "support_timeout" : false,
6367 "direct_meters" : null,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006368 "action_ids" : [14, 8],
6369 "actions" : ["egress.process_int_source.int_source_dscp", "NoAction"],
6370 "base_default_next" : "node_13",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006371 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006372 "egress.process_int_source.int_source_dscp" : "node_13",
6373 "NoAction" : "node_13"
6374 },
6375 "default_entry" : {
6376 "action_id" : 8,
6377 "action_const" : false,
6378 "action_data" : [],
6379 "action_entry_const" : false
6380 }
6381 },
6382 {
6383 "name" : "egress.process_int_transit.tb_int_insert",
6384 "id" : 6,
6385 "source_info" : {
6386 "filename" : "include/int_transit.p4",
6387 "line" : 227,
6388 "column" : 10,
6389 "source_fragment" : "tb_int_insert"
6390 },
6391 "key" : [],
6392 "match_type" : "exact",
6393 "type" : "simple",
6394 "max_size" : 2,
6395 "with_counters" : true,
6396 "support_timeout" : false,
6397 "direct_meters" : null,
6398 "action_ids" : [16, 9],
6399 "actions" : ["egress.process_int_transit.int_transit", "NoAction"],
6400 "base_default_next" : "egress.process_int_transit.tb_int_inst_0003",
6401 "next_tables" : {
6402 "egress.process_int_transit.int_transit" : "egress.process_int_transit.tb_int_inst_0003",
6403 "NoAction" : "egress.process_int_transit.tb_int_inst_0003"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006404 },
6405 "default_entry" : {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006406 "action_id" : 9,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006407 "action_const" : false,
6408 "action_data" : [],
6409 "action_entry_const" : false
6410 }
6411 },
6412 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006413 "name" : "egress.process_int_transit.tb_int_inst_0003",
6414 "id" : 7,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006415 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006416 "filename" : "include/int_transit.p4",
6417 "line" : 237,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006418 "column" : 10,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006419 "source_fragment" : "tb_int_inst_0003"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006420 },
6421 "key" : [
6422 {
6423 "match_type" : "exact",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006424 "name" : "hdr.int_header.instruction_mask_0003",
6425 "target" : ["int_header", "instruction_mask_0003"],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006426 "mask" : null
6427 }
6428 ],
6429 "match_type" : "exact",
6430 "type" : "simple",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006431 "max_size" : 16,
6432 "with_counters" : true,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006433 "support_timeout" : false,
6434 "direct_meters" : null,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006435 "action_ids" : [17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 10],
6436 "actions" : ["egress.process_int_transit.int_set_header_0003_i0", "egress.process_int_transit.int_set_header_0003_i1", "egress.process_int_transit.int_set_header_0003_i2", "egress.process_int_transit.int_set_header_0003_i3", "egress.process_int_transit.int_set_header_0003_i4", "egress.process_int_transit.int_set_header_0003_i5", "egress.process_int_transit.int_set_header_0003_i6", "egress.process_int_transit.int_set_header_0003_i7", "egress.process_int_transit.int_set_header_0003_i8", "egress.process_int_transit.int_set_header_0003_i9", "egress.process_int_transit.int_set_header_0003_i10", "egress.process_int_transit.int_set_header_0003_i11", "egress.process_int_transit.int_set_header_0003_i12", "egress.process_int_transit.int_set_header_0003_i13", "egress.process_int_transit.int_set_header_0003_i14", "egress.process_int_transit.int_set_header_0003_i15", "NoAction"],
6437 "base_default_next" : "egress.process_int_transit.tb_int_inst_0407",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006438 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006439 "egress.process_int_transit.int_set_header_0003_i0" : "egress.process_int_transit.tb_int_inst_0407",
6440 "egress.process_int_transit.int_set_header_0003_i1" : "egress.process_int_transit.tb_int_inst_0407",
6441 "egress.process_int_transit.int_set_header_0003_i2" : "egress.process_int_transit.tb_int_inst_0407",
6442 "egress.process_int_transit.int_set_header_0003_i3" : "egress.process_int_transit.tb_int_inst_0407",
6443 "egress.process_int_transit.int_set_header_0003_i4" : "egress.process_int_transit.tb_int_inst_0407",
6444 "egress.process_int_transit.int_set_header_0003_i5" : "egress.process_int_transit.tb_int_inst_0407",
6445 "egress.process_int_transit.int_set_header_0003_i6" : "egress.process_int_transit.tb_int_inst_0407",
6446 "egress.process_int_transit.int_set_header_0003_i7" : "egress.process_int_transit.tb_int_inst_0407",
6447 "egress.process_int_transit.int_set_header_0003_i8" : "egress.process_int_transit.tb_int_inst_0407",
6448 "egress.process_int_transit.int_set_header_0003_i9" : "egress.process_int_transit.tb_int_inst_0407",
6449 "egress.process_int_transit.int_set_header_0003_i10" : "egress.process_int_transit.tb_int_inst_0407",
6450 "egress.process_int_transit.int_set_header_0003_i11" : "egress.process_int_transit.tb_int_inst_0407",
6451 "egress.process_int_transit.int_set_header_0003_i12" : "egress.process_int_transit.tb_int_inst_0407",
6452 "egress.process_int_transit.int_set_header_0003_i13" : "egress.process_int_transit.tb_int_inst_0407",
6453 "egress.process_int_transit.int_set_header_0003_i14" : "egress.process_int_transit.tb_int_inst_0407",
6454 "egress.process_int_transit.int_set_header_0003_i15" : "egress.process_int_transit.tb_int_inst_0407",
6455 "NoAction" : "egress.process_int_transit.tb_int_inst_0407"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006456 },
6457 "default_entry" : {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006458 "action_id" : 10,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006459 "action_const" : false,
6460 "action_data" : [],
6461 "action_entry_const" : false
6462 }
6463 },
6464 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006465 "name" : "egress.process_int_transit.tb_int_inst_0407",
6466 "id" : 8,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006467 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006468 "filename" : "include/int_transit.p4",
6469 "line" : 264,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006470 "column" : 10,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006471 "source_fragment" : "tb_int_inst_0407"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006472 },
6473 "key" : [
6474 {
6475 "match_type" : "exact",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006476 "name" : "hdr.int_header.instruction_mask_0407",
6477 "target" : ["int_header", "instruction_mask_0407"],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006478 "mask" : null
6479 }
6480 ],
6481 "match_type" : "exact",
6482 "type" : "simple",
6483 "max_size" : 16,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006484 "with_counters" : true,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006485 "support_timeout" : false,
6486 "direct_meters" : null,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006487 "action_ids" : [33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 11],
6488 "actions" : ["egress.process_int_transit.int_set_header_0407_i0", "egress.process_int_transit.int_set_header_0407_i1", "egress.process_int_transit.int_set_header_0407_i2", "egress.process_int_transit.int_set_header_0407_i3", "egress.process_int_transit.int_set_header_0407_i4", "egress.process_int_transit.int_set_header_0407_i5", "egress.process_int_transit.int_set_header_0407_i6", "egress.process_int_transit.int_set_header_0407_i7", "egress.process_int_transit.int_set_header_0407_i8", "egress.process_int_transit.int_set_header_0407_i9", "egress.process_int_transit.int_set_header_0407_i10", "egress.process_int_transit.int_set_header_0407_i11", "egress.process_int_transit.int_set_header_0407_i12", "egress.process_int_transit.int_set_header_0407_i13", "egress.process_int_transit.int_set_header_0407_i14", "egress.process_int_transit.int_set_header_0407_i15", "NoAction"],
6489 "base_default_next" : "tbl_process_int_transit_int_update_total_hop_cnt",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006490 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006491 "egress.process_int_transit.int_set_header_0407_i0" : "tbl_process_int_transit_int_update_total_hop_cnt",
6492 "egress.process_int_transit.int_set_header_0407_i1" : "tbl_process_int_transit_int_update_total_hop_cnt",
6493 "egress.process_int_transit.int_set_header_0407_i2" : "tbl_process_int_transit_int_update_total_hop_cnt",
6494 "egress.process_int_transit.int_set_header_0407_i3" : "tbl_process_int_transit_int_update_total_hop_cnt",
6495 "egress.process_int_transit.int_set_header_0407_i4" : "tbl_process_int_transit_int_update_total_hop_cnt",
6496 "egress.process_int_transit.int_set_header_0407_i5" : "tbl_process_int_transit_int_update_total_hop_cnt",
6497 "egress.process_int_transit.int_set_header_0407_i6" : "tbl_process_int_transit_int_update_total_hop_cnt",
6498 "egress.process_int_transit.int_set_header_0407_i7" : "tbl_process_int_transit_int_update_total_hop_cnt",
6499 "egress.process_int_transit.int_set_header_0407_i8" : "tbl_process_int_transit_int_update_total_hop_cnt",
6500 "egress.process_int_transit.int_set_header_0407_i9" : "tbl_process_int_transit_int_update_total_hop_cnt",
6501 "egress.process_int_transit.int_set_header_0407_i10" : "tbl_process_int_transit_int_update_total_hop_cnt",
6502 "egress.process_int_transit.int_set_header_0407_i11" : "tbl_process_int_transit_int_update_total_hop_cnt",
6503 "egress.process_int_transit.int_set_header_0407_i12" : "tbl_process_int_transit_int_update_total_hop_cnt",
6504 "egress.process_int_transit.int_set_header_0407_i13" : "tbl_process_int_transit_int_update_total_hop_cnt",
6505 "egress.process_int_transit.int_set_header_0407_i14" : "tbl_process_int_transit_int_update_total_hop_cnt",
6506 "egress.process_int_transit.int_set_header_0407_i15" : "tbl_process_int_transit_int_update_total_hop_cnt",
6507 "NoAction" : "tbl_process_int_transit_int_update_total_hop_cnt"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006508 },
6509 "default_entry" : {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006510 "action_id" : 11,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006511 "action_const" : false,
6512 "action_data" : [],
6513 "action_entry_const" : false
6514 }
6515 },
6516 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006517 "name" : "tbl_process_int_transit_int_update_total_hop_cnt",
6518 "id" : 9,
6519 "key" : [],
6520 "match_type" : "exact",
6521 "type" : "simple",
6522 "max_size" : 1024,
6523 "with_counters" : false,
6524 "support_timeout" : false,
6525 "direct_meters" : null,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006526 "action_ids" : [15],
6527 "actions" : ["egress.process_int_transit.int_update_total_hop_cnt"],
6528 "base_default_next" : "node_18",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006529 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006530 "egress.process_int_transit.int_update_total_hop_cnt" : "node_18"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006531 },
6532 "default_entry" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006533 "action_id" : 15,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006534 "action_const" : true,
6535 "action_data" : [],
6536 "action_entry_const" : true
6537 }
6538 },
6539 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006540 "name" : "tbl_process_int_outer_encap_int_update_ipv4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006541 "id" : 10,
6542 "key" : [],
6543 "match_type" : "exact",
6544 "type" : "simple",
6545 "max_size" : 1024,
6546 "with_counters" : false,
6547 "support_timeout" : false,
6548 "direct_meters" : null,
6549 "action_ids" : [49],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006550 "actions" : ["egress.process_int_outer_encap.int_update_ipv4"],
6551 "base_default_next" : "node_20",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006552 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006553 "egress.process_int_outer_encap.int_update_ipv4" : "node_20"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006554 },
6555 "default_entry" : {
6556 "action_id" : 49,
6557 "action_const" : true,
6558 "action_data" : [],
6559 "action_entry_const" : true
6560 }
6561 },
6562 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006563 "name" : "tbl_process_int_outer_encap_int_update_udp",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006564 "id" : 11,
6565 "key" : [],
6566 "match_type" : "exact",
6567 "type" : "simple",
6568 "max_size" : 1024,
6569 "with_counters" : false,
6570 "support_timeout" : false,
6571 "direct_meters" : null,
6572 "action_ids" : [50],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006573 "actions" : ["egress.process_int_outer_encap.int_update_udp"],
6574 "base_default_next" : "node_22",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006575 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006576 "egress.process_int_outer_encap.int_update_udp" : "node_22"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006577 },
6578 "default_entry" : {
6579 "action_id" : 50,
6580 "action_const" : true,
6581 "action_data" : [],
6582 "action_entry_const" : true
6583 }
6584 },
6585 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006586 "name" : "tbl_process_int_outer_encap_int_update_shim",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006587 "id" : 12,
6588 "key" : [],
6589 "match_type" : "exact",
6590 "type" : "simple",
6591 "max_size" : 1024,
6592 "with_counters" : false,
6593 "support_timeout" : false,
6594 "direct_meters" : null,
6595 "action_ids" : [51],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006596 "actions" : ["egress.process_int_outer_encap.int_update_shim"],
6597 "base_default_next" : "node_24",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006598 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006599 "egress.process_int_outer_encap.int_update_shim" : "node_24"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006600 },
6601 "default_entry" : {
6602 "action_id" : 51,
6603 "action_const" : true,
6604 "action_data" : [],
6605 "action_entry_const" : true
6606 }
6607 },
6608 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006609 "name" : "tbl_process_int_sink_restore_header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006610 "id" : 13,
6611 "key" : [],
6612 "match_type" : "exact",
6613 "type" : "simple",
6614 "max_size" : 1024,
6615 "with_counters" : false,
6616 "support_timeout" : false,
6617 "direct_meters" : null,
6618 "action_ids" : [52],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006619 "actions" : ["egress.process_int_sink.restore_header"],
6620 "base_default_next" : "tbl_process_int_sink_int_sink",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006621 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006622 "egress.process_int_sink.restore_header" : "tbl_process_int_sink_int_sink"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006623 },
6624 "default_entry" : {
6625 "action_id" : 52,
6626 "action_const" : true,
6627 "action_data" : [],
6628 "action_entry_const" : true
6629 }
6630 },
6631 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006632 "name" : "tbl_process_int_sink_int_sink",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006633 "id" : 14,
6634 "key" : [],
6635 "match_type" : "exact",
6636 "type" : "simple",
6637 "max_size" : 1024,
6638 "with_counters" : false,
6639 "support_timeout" : false,
6640 "direct_meters" : null,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006641 "action_ids" : [53],
6642 "actions" : ["egress.process_int_sink.int_sink"],
6643 "base_default_next" : "tbl_act_1",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006644 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006645 "egress.process_int_sink.int_sink" : "tbl_act_1"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006646 },
6647 "default_entry" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006648 "action_id" : 53,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006649 "action_const" : true,
6650 "action_data" : [],
6651 "action_entry_const" : true
6652 }
6653 },
6654 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006655 "name" : "tbl_act_1",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006656 "id" : 15,
6657 "key" : [],
6658 "match_type" : "exact",
6659 "type" : "simple",
6660 "max_size" : 1024,
6661 "with_counters" : false,
6662 "support_timeout" : false,
6663 "direct_meters" : null,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006664 "action_ids" : [55],
6665 "actions" : ["act_2"],
Keesjan Karsten23368892018-05-22 10:46:01 +00006666 "base_default_next" : "node_28",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006667 "next_tables" : {
Keesjan Karsten23368892018-05-22 10:46:01 +00006668 "act_2" : "node_28"
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006669 },
6670 "default_entry" : {
6671 "action_id" : 55,
6672 "action_const" : true,
6673 "action_data" : [],
6674 "action_entry_const" : true
6675 }
6676 },
6677 {
6678 "name" : "tbl_act_2",
6679 "id" : 16,
6680 "key" : [],
6681 "match_type" : "exact",
6682 "type" : "simple",
6683 "max_size" : 1024,
6684 "with_counters" : false,
6685 "support_timeout" : false,
6686 "direct_meters" : null,
6687 "action_ids" : [54],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006688 "actions" : ["act_1"],
6689 "base_default_next" : null,
6690 "next_tables" : {
6691 "act_1" : null
6692 },
6693 "default_entry" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006694 "action_id" : 54,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006695 "action_const" : true,
6696 "action_data" : [],
6697 "action_entry_const" : true
6698 }
6699 }
6700 ],
6701 "action_profiles" : [],
6702 "conditionals" : [
6703 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006704 "name" : "node_8",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006705 "id" : 1,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006706 "source_info" : {
6707 "filename" : "int.p4",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006708 "line" : 53,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006709 "column" : 12,
6710 "source_fragment" : "standard_metadata.ingress_port != CPU_PORT && ..."
6711 },
6712 "expression" : {
6713 "type" : "expression",
6714 "value" : {
6715 "op" : "and",
6716 "left" : {
6717 "type" : "expression",
6718 "value" : {
6719 "op" : "and",
6720 "left" : {
6721 "type" : "expression",
6722 "value" : {
6723 "op" : "!=",
6724 "left" : {
6725 "type" : "field",
6726 "value" : ["standard_metadata", "ingress_port"]
6727 },
6728 "right" : {
6729 "type" : "hexstr",
6730 "value" : "0x00ff"
6731 }
6732 }
6733 },
6734 "right" : {
6735 "type" : "expression",
6736 "value" : {
6737 "op" : "!=",
6738 "left" : {
6739 "type" : "field",
6740 "value" : ["standard_metadata", "egress_port"]
6741 },
6742 "right" : {
6743 "type" : "hexstr",
6744 "value" : "0x00ff"
6745 }
6746 }
6747 }
6748 }
6749 },
6750 "right" : {
6751 "type" : "expression",
6752 "value" : {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006753 "op" : "or",
6754 "left" : {
6755 "type" : "expression",
6756 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006757 "op" : "d2b",
6758 "left" : null,
6759 "right" : {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006760 "type" : "field",
6761 "value" : ["udp", "$valid$"]
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006762 }
6763 }
6764 },
6765 "right" : {
6766 "type" : "expression",
6767 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006768 "op" : "d2b",
6769 "left" : null,
6770 "right" : {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006771 "type" : "field",
6772 "value" : ["tcp", "$valid$"]
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006773 }
6774 }
6775 }
6776 }
6777 }
6778 }
6779 },
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006780 "true_next" : "egress.process_set_source_sink.tb_set_source",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006781 "false_next" : "tbl_act_1"
6782 },
6783 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006784 "name" : "node_11",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006785 "id" : 2,
6786 "source_info" : {
6787 "filename" : "int.p4",
6788 "line" : 57,
6789 "column" : 16,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006790 "source_fragment" : "local_metadata.int_meta.source == 1"
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006791 },
6792 "expression" : {
6793 "type" : "expression",
6794 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006795 "op" : "==",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006796 "left" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006797 "type" : "field",
6798 "value" : ["userMetadata.int_meta", "source"]
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006799 },
6800 "right" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006801 "type" : "hexstr",
6802 "value" : "0x01"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006803 }
6804 }
6805 },
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006806 "true_next" : "egress.process_int_source.tb_int_source",
6807 "false_next" : "node_13"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006808 },
6809 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006810 "name" : "node_13",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006811 "id" : 3,
6812 "source_info" : {
6813 "filename" : "int.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006814 "line" : 60,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006815 "column" : 15,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006816 "source_fragment" : "hdr.int_header.isValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006817 },
6818 "expression" : {
6819 "type" : "expression",
6820 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006821 "op" : "d2b",
6822 "left" : null,
6823 "right" : {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006824 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006825 "value" : ["int_header", "$valid$"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006826 }
6827 }
6828 },
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006829 "true_next" : "egress.process_int_transit.tb_int_insert",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006830 "false_next" : "tbl_act_1"
6831 },
6832 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006833 "name" : "node_18",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006834 "id" : 4,
6835 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006836 "filename" : "include/int_transit.p4",
6837 "line" : 314,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006838 "column" : 12,
6839 "source_fragment" : "hdr.ipv4.isValid()"
6840 },
6841 "expression" : {
6842 "type" : "expression",
6843 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006844 "op" : "d2b",
6845 "left" : null,
6846 "right" : {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006847 "type" : "field",
6848 "value" : ["ipv4", "$valid$"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006849 }
6850 }
6851 },
6852 "true_next" : "tbl_process_int_outer_encap_int_update_ipv4",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006853 "false_next" : "node_20"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006854 },
6855 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006856 "name" : "node_20",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006857 "id" : 5,
6858 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006859 "filename" : "include/int_transit.p4",
6860 "line" : 317,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006861 "column" : 12,
6862 "source_fragment" : "hdr.udp.isValid()"
6863 },
6864 "expression" : {
6865 "type" : "expression",
6866 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006867 "op" : "d2b",
6868 "left" : null,
6869 "right" : {
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006870 "type" : "field",
6871 "value" : ["udp", "$valid$"]
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006872 }
6873 }
6874 },
6875 "true_next" : "tbl_process_int_outer_encap_int_update_udp",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006876 "false_next" : "node_22"
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006877 },
6878 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006879 "name" : "node_22",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006880 "id" : 6,
6881 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006882 "filename" : "include/int_transit.p4",
6883 "line" : 320,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006884 "column" : 12,
6885 "source_fragment" : "hdr.intl4_shim.isValid()"
6886 },
6887 "expression" : {
6888 "type" : "expression",
6889 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006890 "op" : "d2b",
6891 "left" : null,
6892 "right" : {
6893 "type" : "field",
6894 "value" : ["intl4_shim", "$valid$"]
6895 }
6896 }
6897 },
6898 "true_next" : "tbl_process_int_outer_encap_int_update_shim",
6899 "false_next" : "node_24"
6900 },
6901 {
6902 "name" : "node_24",
6903 "id" : 7,
6904 "source_info" : {
6905 "filename" : "int.p4",
6906 "line" : 64,
6907 "column" : 20,
6908 "source_fragment" : "local_metadata.int_meta.sink == 1"
6909 },
6910 "expression" : {
6911 "type" : "expression",
6912 "value" : {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006913 "op" : "==",
6914 "left" : {
6915 "type" : "field",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006916 "value" : ["userMetadata.int_meta", "sink"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006917 },
6918 "right" : {
6919 "type" : "hexstr",
6920 "value" : "0x01"
6921 }
6922 }
6923 },
Jonghwan Hyun8be03392017-12-04 15:48:44 -08006924 "true_next" : "tbl_process_int_sink_restore_header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006925 "false_next" : "tbl_act_1"
6926 },
6927 {
Keesjan Karsten23368892018-05-22 10:46:01 +00006928 "name" : "node_28",
6929 "id" : 8,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006930 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006931 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006932 "line" : 37,
6933 "column" : 12,
6934 "source_fragment" : "standard_metadata.egress_port == CPU_PORT"
6935 },
6936 "expression" : {
6937 "type" : "expression",
6938 "value" : {
6939 "op" : "==",
6940 "left" : {
6941 "type" : "field",
6942 "value" : ["standard_metadata", "egress_port"]
6943 },
6944 "right" : {
6945 "type" : "hexstr",
6946 "value" : "0x00ff"
6947 }
6948 }
6949 },
6950 "false_next" : null,
6951 "true_next" : "tbl_act_2"
6952 }
6953 ]
6954 }
6955 ],
6956 "checksums" : [],
6957 "force_arith" : [],
6958 "extern_instances" : [],
6959 "field_aliases" : [
6960 [
6961 "queueing_metadata.enq_timestamp",
6962 ["standard_metadata", "enq_timestamp"]
6963 ],
6964 [
6965 "queueing_metadata.enq_qdepth",
6966 ["standard_metadata", "enq_qdepth"]
6967 ],
6968 [
6969 "queueing_metadata.deq_timedelta",
6970 ["standard_metadata", "deq_timedelta"]
6971 ],
6972 [
6973 "queueing_metadata.deq_qdepth",
6974 ["standard_metadata", "deq_qdepth"]
6975 ],
6976 [
6977 "intrinsic_metadata.ingress_global_timestamp",
6978 ["standard_metadata", "ingress_global_timestamp"]
6979 ],
6980 [
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006981 "intrinsic_metadata.egress_global_timestamp",
6982 ["standard_metadata", "egress_global_timestamp"]
6983 ],
6984 [
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08006985 "intrinsic_metadata.lf_field_list",
6986 ["standard_metadata", "lf_field_list"]
6987 ],
6988 [
6989 "intrinsic_metadata.mcast_grp",
6990 ["standard_metadata", "mcast_grp"]
6991 ],
6992 [
6993 "intrinsic_metadata.resubmit_flag",
6994 ["standard_metadata", "resubmit_flag"]
6995 ],
6996 [
6997 "intrinsic_metadata.egress_rid",
6998 ["standard_metadata", "egress_rid"]
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07006999 ],
7000 [
7001 "intrinsic_metadata.recirculate_flag",
7002 ["standard_metadata", "recirculate_flag"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08007003 ]
Carmelo Cascone6af4e172018-06-15 16:01:30 +02007004 ],
7005 "program" : "int.p4",
7006 "__meta__" : {
7007 "version" : [2, 18],
7008 "compiler" : "https://github.com/p4lang/p4c"
7009 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08007010}