blob: 39b7f712f2c1d9fc50aace86a45ba0e9d4cc9b1d [file] [log] [blame]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001{
2 "header_types" : [
3 {
4 "name" : "scalars_0",
5 "id" : 0,
6 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007 ["last_ipv4_dscp_0", 6, false],
8 ["tmp_0", 4, false],
9 ["tmp", 8, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010 ["tmp_1", 32, false],
11 ["tmp_2", 32, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012 ["spgw_ingress_tmp", 1, false],
13 ["spgw_ingress_tmp_0", 1, false],
14 ["spgw_normalizer_hasReturned", 1, false],
15 ["spgw_ingress_hasReturned", 1, false],
16 ["egress_next_tmp", 1, false],
17 ["process_int_main_process_int_transit_hasReturned", 1, false],
18 ["fabric_metadata_t.eth_type", 16, false],
19 ["fabric_metadata_t.ip_eth_type", 16, false],
20 ["fabric_metadata_t.vlan_id", 12, false],
21 ["fabric_metadata_t.vlan_pri", 3, false],
22 ["fabric_metadata_t.vlan_cfi", 1, false],
23 ["fabric_metadata_t.mpls_label", 20, false],
24 ["fabric_metadata_t.mpls_ttl", 8, false],
25 ["fabric_metadata_t.skip_forwarding", 1, false],
26 ["fabric_metadata_t.skip_next", 1, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070027 ["fabric_metadata_t.fwd_type", 3, false],
28 ["fabric_metadata_t.next_id", 32, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070029 ["fabric_metadata_t.is_multicast", 1, false],
30 ["fabric_metadata_t.is_controller_packet_out", 1, false],
31 ["fabric_metadata_t.clone_to_cpu", 1, false],
32 ["fabric_metadata_t.ip_proto", 8, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080033 ["fabric_metadata_t.l4_sport", 16, false],
34 ["fabric_metadata_t.l4_dport", 16, false],
35 ["_padding_2", 4, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070036 ]
37 },
38 {
39 "name" : "standard_metadata",
40 "id" : 1,
41 "fields" : [
42 ["ingress_port", 9, false],
43 ["egress_spec", 9, false],
44 ["egress_port", 9, false],
45 ["clone_spec", 32, false],
46 ["instance_type", 32, false],
47 ["drop", 1, false],
48 ["recirculate_port", 16, false],
49 ["packet_length", 32, false],
50 ["enq_timestamp", 32, false],
51 ["enq_qdepth", 19, false],
52 ["deq_timedelta", 32, false],
53 ["deq_qdepth", 19, false],
54 ["ingress_global_timestamp", 48, false],
55 ["egress_global_timestamp", 48, false],
56 ["lf_field_list", 32, false],
57 ["mcast_grp", 16, false],
58 ["resubmit_flag", 32, false],
59 ["egress_rid", 16, false],
60 ["checksum_error", 1, false],
61 ["recirculate_flag", 32, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070062 ["parser_error", 32, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070063 ["_padding", 5, false]
64 ]
65 },
66 {
67 "name" : "ethernet_t",
68 "id" : 2,
69 "fields" : [
70 ["dst_addr", 48, false],
71 ["src_addr", 48, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080072 ["eth_type", 16, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070073 ]
74 },
75 {
76 "name" : "vlan_tag_t",
77 "id" : 3,
78 "fields" : [
79 ["pri", 3, false],
80 ["cfi", 1, false],
81 ["vlan_id", 12, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080082 ["eth_type", 16, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070083 ]
84 },
85 {
86 "name" : "mpls_t",
87 "id" : 4,
88 "fields" : [
89 ["label", 20, false],
90 ["tc", 3, false],
91 ["bos", 1, false],
92 ["ttl", 8, false]
93 ]
94 },
95 {
96 "name" : "ipv4_t",
97 "id" : 5,
98 "fields" : [
99 ["version", 4, false],
100 ["ihl", 4, false],
101 ["dscp", 6, false],
102 ["ecn", 2, false],
103 ["total_len", 16, false],
104 ["identification", 16, false],
105 ["flags", 3, false],
106 ["frag_offset", 13, false],
107 ["ttl", 8, false],
108 ["protocol", 8, false],
109 ["hdr_checksum", 16, false],
110 ["src_addr", 32, false],
111 ["dst_addr", 32, false]
112 ]
113 },
114 {
115 "name" : "udp_t",
116 "id" : 6,
117 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800118 ["sport", 16, false],
119 ["dport", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700120 ["len", 16, false],
121 ["checksum", 16, false]
122 ]
123 },
124 {
125 "name" : "gtpu_t",
126 "id" : 7,
127 "fields" : [
128 ["version", 3, false],
129 ["pt", 1, false],
130 ["spare", 1, false],
131 ["ex_flag", 1, false],
132 ["seq_flag", 1, false],
133 ["npdu_flag", 1, false],
134 ["msgtype", 8, false],
135 ["msglen", 16, false],
136 ["teid", 32, false]
137 ]
138 },
139 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800140 "name" : "tcp_t",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700141 "id" : 8,
142 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800143 ["sport", 16, false],
144 ["dport", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700145 ["seq_no", 32, false],
146 ["ack_no", 32, false],
147 ["data_offset", 4, false],
148 ["res", 3, false],
149 ["ecn", 3, false],
150 ["ctrl", 6, false],
151 ["window", 16, false],
152 ["checksum", 16, false],
153 ["urgent_ptr", 16, false]
154 ]
155 },
156 {
157 "name" : "icmp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800158 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700159 "fields" : [
160 ["icmp_type", 8, false],
161 ["icmp_code", 8, false],
162 ["checksum", 16, false],
163 ["identifier", 16, false],
164 ["sequence_number", 16, false],
165 ["timestamp", 64, false]
166 ]
167 },
168 {
169 "name" : "packet_out_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800170 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700171 "fields" : [
172 ["egress_port", 9, false],
173 ["_pad", 7, false]
174 ]
175 },
176 {
177 "name" : "packet_in_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800178 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700179 "fields" : [
180 ["ingress_port", 9, false],
181 ["_pad", 7, false]
182 ]
183 },
184 {
185 "name" : "intl4_shim_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800186 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700187 "fields" : [
188 ["int_type", 8, false],
189 ["rsvd1", 8, false],
190 ["len_words", 8, false],
191 ["rsvd2", 8, false]
192 ]
193 },
194 {
195 "name" : "int_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800196 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700197 "fields" : [
198 ["ver", 2, false],
199 ["rep", 2, false],
200 ["c", 1, false],
201 ["e", 1, false],
202 ["rsvd1", 5, false],
203 ["ins_cnt", 5, false],
204 ["max_hop_cnt", 8, false],
205 ["total_hop_cnt", 8, false],
206 ["instruction_mask_0003", 4, false],
207 ["instruction_mask_0407", 4, false],
208 ["instruction_mask_0811", 4, false],
209 ["instruction_mask_1215", 4, false],
210 ["rsvd2", 16, false]
211 ]
212 },
213 {
214 "name" : "int_switch_id_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800215 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700216 "fields" : [
217 ["switch_id", 32, false]
218 ]
219 },
220 {
221 "name" : "int_port_ids_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800222 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700223 "fields" : [
224 ["ingress_port_id", 16, false],
225 ["egress_port_id", 16, false]
226 ]
227 },
228 {
229 "name" : "int_hop_latency_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800230 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700231 "fields" : [
232 ["hop_latency", 32, false]
233 ]
234 },
235 {
236 "name" : "int_q_occupancy_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800237 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700238 "fields" : [
239 ["q_id", 8, false],
240 ["q_occupancy", 24, false]
241 ]
242 },
243 {
244 "name" : "int_ingress_tstamp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800245 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700246 "fields" : [
247 ["ingress_tstamp", 32, false]
248 ]
249 },
250 {
251 "name" : "int_egress_tstamp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800252 "id" : 19,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700253 "fields" : [
254 ["egress_tstamp", 32, false]
255 ]
256 },
257 {
258 "name" : "int_q_congestion_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800259 "id" : 20,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700260 "fields" : [
261 ["q_id", 8, false],
262 ["q_congestion", 24, false]
263 ]
264 },
265 {
266 "name" : "int_egress_port_tx_util_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800267 "id" : 21,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700268 "fields" : [
269 ["egress_port_tx_util", 32, false]
270 ]
271 },
272 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700273 "name" : "intl4_tail_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800274 "id" : 22,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700275 "fields" : [
276 ["next_proto", 8, false],
277 ["dest_port", 16, false],
278 ["padding", 2, false],
279 ["dscp", 6, false]
280 ]
281 },
282 {
283 "name" : "spgw_meta_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800284 "id" : 23,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700285 "fields" : [
286 ["direction", 2, false],
287 ["ipv4_len", 16, false],
288 ["teid", 32, false],
289 ["s1u_enb_addr", 32, false],
290 ["s1u_sgw_addr", 32, false],
291 ["_padding_0", 6, false]
292 ]
293 },
294 {
295 "name" : "int_metadata_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800296 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700297 "fields" : [
298 ["source", 1, 0],
299 ["transit", 1, 0],
300 ["sink", 1, 0],
301 ["switch_id", 32, false],
302 ["new_words", 8, false],
303 ["new_bytes", 16, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700304 ["ig_tstamp", 32, false],
305 ["eg_tstamp", 32, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700306 ["_padding_1", 5, false]
307 ]
308 }
309 ],
310 "headers" : [
311 {
312 "name" : "scalars",
313 "id" : 0,
314 "header_type" : "scalars_0",
315 "metadata" : true,
316 "pi_omit" : true
317 },
318 {
319 "name" : "standard_metadata",
320 "id" : 1,
321 "header_type" : "standard_metadata",
322 "metadata" : true,
323 "pi_omit" : true
324 },
325 {
326 "name" : "ethernet",
327 "id" : 2,
328 "header_type" : "ethernet_t",
329 "metadata" : false,
330 "pi_omit" : true
331 },
332 {
333 "name" : "vlan_tag",
334 "id" : 3,
335 "header_type" : "vlan_tag_t",
336 "metadata" : false,
337 "pi_omit" : true
338 },
339 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800340 "name" : "inner_vlan_tag",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700341 "id" : 4,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800342 "header_type" : "vlan_tag_t",
343 "metadata" : false,
344 "pi_omit" : true
345 },
346 {
347 "name" : "mpls",
348 "id" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700349 "header_type" : "mpls_t",
350 "metadata" : false,
351 "pi_omit" : true
352 },
353 {
354 "name" : "gtpu_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800355 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700356 "header_type" : "ipv4_t",
357 "metadata" : false,
358 "pi_omit" : true
359 },
360 {
361 "name" : "gtpu_udp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800362 "id" : 7,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700363 "header_type" : "udp_t",
364 "metadata" : false,
365 "pi_omit" : true
366 },
367 {
368 "name" : "gtpu",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800369 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700370 "header_type" : "gtpu_t",
371 "metadata" : false,
372 "pi_omit" : true
373 },
374 {
375 "name" : "inner_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800376 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700377 "header_type" : "ipv4_t",
378 "metadata" : false,
379 "pi_omit" : true
380 },
381 {
382 "name" : "inner_udp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800383 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700384 "header_type" : "udp_t",
385 "metadata" : false,
386 "pi_omit" : true
387 },
388 {
389 "name" : "ipv4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700390 "id" : 11,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800391 "header_type" : "ipv4_t",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700392 "metadata" : false,
393 "pi_omit" : true
394 },
395 {
396 "name" : "tcp",
397 "id" : 12,
398 "header_type" : "tcp_t",
399 "metadata" : false,
400 "pi_omit" : true
401 },
402 {
403 "name" : "udp",
404 "id" : 13,
405 "header_type" : "udp_t",
406 "metadata" : false,
407 "pi_omit" : true
408 },
409 {
410 "name" : "icmp",
411 "id" : 14,
412 "header_type" : "icmp_t",
413 "metadata" : false,
414 "pi_omit" : true
415 },
416 {
417 "name" : "packet_out",
418 "id" : 15,
419 "header_type" : "packet_out_header_t",
420 "metadata" : false,
421 "pi_omit" : true
422 },
423 {
424 "name" : "packet_in",
425 "id" : 16,
426 "header_type" : "packet_in_header_t",
427 "metadata" : false,
428 "pi_omit" : true
429 },
430 {
431 "name" : "intl4_shim",
432 "id" : 17,
433 "header_type" : "intl4_shim_t",
434 "metadata" : false,
435 "pi_omit" : true
436 },
437 {
438 "name" : "int_header",
439 "id" : 18,
440 "header_type" : "int_header_t",
441 "metadata" : false,
442 "pi_omit" : true
443 },
444 {
445 "name" : "int_switch_id",
446 "id" : 19,
447 "header_type" : "int_switch_id_t",
448 "metadata" : false,
449 "pi_omit" : true
450 },
451 {
452 "name" : "int_port_ids",
453 "id" : 20,
454 "header_type" : "int_port_ids_t",
455 "metadata" : false,
456 "pi_omit" : true
457 },
458 {
459 "name" : "int_hop_latency",
460 "id" : 21,
461 "header_type" : "int_hop_latency_t",
462 "metadata" : false,
463 "pi_omit" : true
464 },
465 {
466 "name" : "int_q_occupancy",
467 "id" : 22,
468 "header_type" : "int_q_occupancy_t",
469 "metadata" : false,
470 "pi_omit" : true
471 },
472 {
473 "name" : "int_ingress_tstamp",
474 "id" : 23,
475 "header_type" : "int_ingress_tstamp_t",
476 "metadata" : false,
477 "pi_omit" : true
478 },
479 {
480 "name" : "int_egress_tstamp",
481 "id" : 24,
482 "header_type" : "int_egress_tstamp_t",
483 "metadata" : false,
484 "pi_omit" : true
485 },
486 {
487 "name" : "int_q_congestion",
488 "id" : 25,
489 "header_type" : "int_q_congestion_t",
490 "metadata" : false,
491 "pi_omit" : true
492 },
493 {
494 "name" : "int_egress_tx_util",
495 "id" : 26,
496 "header_type" : "int_egress_port_tx_util_t",
497 "metadata" : false,
498 "pi_omit" : true
499 },
500 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700501 "name" : "intl4_tail",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700502 "id" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700503 "header_type" : "intl4_tail_t",
504 "metadata" : false,
505 "pi_omit" : true
506 },
507 {
508 "name" : "userMetadata.spgw",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700509 "id" : 28,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700510 "header_type" : "spgw_meta_t",
511 "metadata" : true,
512 "pi_omit" : true
513 },
514 {
515 "name" : "userMetadata.int_meta",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700516 "id" : 29,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700517 "header_type" : "int_metadata_t",
518 "metadata" : true,
519 "pi_omit" : true
520 }
521 ],
522 "header_stacks" : [],
523 "header_union_types" : [],
524 "header_unions" : [],
525 "header_union_stacks" : [],
526 "field_lists" : [],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700527 "errors" : [
528 ["NoError", 1],
529 ["PacketTooShort", 2],
530 ["NoMatch", 3],
531 ["StackOutOfBounds", 4],
532 ["HeaderTooShort", 5],
533 ["ParserTimeout", 6]
534 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700535 "enums" : [],
536 "parsers" : [
537 {
538 "name" : "parser",
539 "id" : 0,
540 "init_state" : "start",
541 "parse_states" : [
542 {
543 "name" : "start",
544 "id" : 0,
545 "parser_ops" : [],
546 "transitions" : [
547 {
548 "type" : "hexstr",
549 "value" : "0x00ff",
550 "mask" : null,
551 "next_state" : "parse_packet_out"
552 },
553 {
554 "value" : "default",
555 "mask" : null,
556 "next_state" : "parse_ethernet"
557 }
558 ],
559 "transition_key" : [
560 {
561 "type" : "field",
562 "value" : ["standard_metadata", "ingress_port"]
563 }
564 ]
565 },
566 {
567 "name" : "parse_packet_out",
568 "id" : 1,
569 "parser_ops" : [
570 {
571 "parameters" : [
572 {
573 "type" : "regular",
574 "value" : "packet_out"
575 }
576 ],
577 "op" : "extract"
578 }
579 ],
580 "transitions" : [
581 {
582 "value" : "default",
583 "mask" : null,
584 "next_state" : "parse_ethernet"
585 }
586 ],
587 "transition_key" : []
588 },
589 {
590 "name" : "parse_ethernet",
591 "id" : 2,
592 "parser_ops" : [
593 {
594 "parameters" : [
595 {
596 "type" : "regular",
597 "value" : "ethernet"
598 }
599 ],
600 "op" : "extract"
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800601 },
602 {
603 "parameters" : [
604 {
605 "type" : "field",
606 "value" : ["scalars", "fabric_metadata_t.eth_type"]
607 },
608 {
609 "type" : "field",
610 "value" : ["ethernet", "eth_type"]
611 }
612 ],
613 "op" : "set"
614 },
615 {
616 "parameters" : [
617 {
618 "type" : "field",
619 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
620 },
621 {
622 "type" : "hexstr",
623 "value" : "0x0ffe"
624 }
625 ],
626 "op" : "set"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700627 }
628 ],
629 "transitions" : [
630 {
631 "type" : "hexstr",
632 "value" : "0x8100",
633 "mask" : null,
634 "next_state" : "parse_vlan_tag"
635 },
636 {
637 "type" : "hexstr",
638 "value" : "0x8847",
639 "mask" : null,
640 "next_state" : "parse_mpls"
641 },
642 {
643 "type" : "hexstr",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700644 "value" : "0x0800",
645 "mask" : null,
646 "next_state" : "parse_ipv4"
647 },
648 {
649 "value" : "default",
650 "mask" : null,
651 "next_state" : null
652 }
653 ],
654 "transition_key" : [
655 {
656 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800657 "value" : ["ethernet", "eth_type"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700658 }
659 ]
660 },
661 {
662 "name" : "parse_vlan_tag",
663 "id" : 3,
664 "parser_ops" : [
665 {
666 "parameters" : [
667 {
668 "type" : "regular",
669 "value" : "vlan_tag"
670 }
671 ],
672 "op" : "extract"
673 }
674 ],
675 "transitions" : [
676 {
677 "type" : "hexstr",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800678 "value" : "0x0800",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700679 "mask" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800680 "next_state" : "parse_ipv4"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700681 },
682 {
683 "type" : "hexstr",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800684 "value" : "0x8847",
685 "mask" : null,
686 "next_state" : "parse_mpls"
687 },
688 {
689 "type" : "hexstr",
690 "value" : "0x8100",
691 "mask" : null,
692 "next_state" : "parse_inner_vlan_tag"
693 },
694 {
695 "value" : "default",
696 "mask" : null,
697 "next_state" : null
698 }
699 ],
700 "transition_key" : [
701 {
702 "type" : "field",
703 "value" : ["vlan_tag", "eth_type"]
704 }
705 ]
706 },
707 {
708 "name" : "parse_inner_vlan_tag",
709 "id" : 4,
710 "parser_ops" : [
711 {
712 "parameters" : [
713 {
714 "type" : "regular",
715 "value" : "inner_vlan_tag"
716 }
717 ],
718 "op" : "extract"
719 }
720 ],
721 "transitions" : [
722 {
723 "type" : "hexstr",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700724 "value" : "0x0800",
725 "mask" : null,
726 "next_state" : "parse_ipv4"
727 },
728 {
729 "type" : "hexstr",
730 "value" : "0x8847",
731 "mask" : null,
732 "next_state" : "parse_mpls"
733 },
734 {
735 "value" : "default",
736 "mask" : null,
737 "next_state" : null
738 }
739 ],
740 "transition_key" : [
741 {
742 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800743 "value" : ["inner_vlan_tag", "eth_type"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700744 }
745 ]
746 },
747 {
748 "name" : "parse_mpls",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800749 "id" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700750 "parser_ops" : [
751 {
752 "parameters" : [
753 {
754 "type" : "regular",
755 "value" : "mpls"
756 }
757 ],
758 "op" : "extract"
759 },
760 {
761 "parameters" : [
762 {
763 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800764 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
765 },
766 {
767 "type" : "field",
768 "value" : ["mpls", "label"]
769 }
770 ],
771 "op" : "set"
772 },
773 {
774 "parameters" : [
775 {
776 "type" : "field",
777 "value" : ["scalars", "fabric_metadata_t.mpls_ttl"]
778 },
779 {
780 "type" : "field",
781 "value" : ["mpls", "ttl"]
782 }
783 ],
784 "op" : "set"
785 },
786 {
787 "parameters" : [
788 {
789 "type" : "field",
790 "value" : ["scalars", "tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700791 },
792 {
793 "type" : "lookahead",
794 "value" : [0, 4]
795 }
796 ],
797 "op" : "set"
798 }
799 ],
800 "transitions" : [
801 {
802 "type" : "hexstr",
803 "value" : "0x04",
804 "mask" : null,
805 "next_state" : "parse_ipv4"
806 },
807 {
808 "value" : "default",
809 "mask" : null,
810 "next_state" : "parse_ethernet"
811 }
812 ],
813 "transition_key" : [
814 {
815 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800816 "value" : ["scalars", "tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700817 }
818 ]
819 },
820 {
821 "name" : "parse_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800822 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700823 "parser_ops" : [
824 {
825 "parameters" : [
826 {
827 "type" : "regular",
828 "value" : "ipv4"
829 }
830 ],
831 "op" : "extract"
832 },
833 {
834 "parameters" : [
835 {
836 "type" : "field",
837 "value" : ["scalars", "fabric_metadata_t.ip_proto"]
838 },
839 {
840 "type" : "field",
841 "value" : ["ipv4", "protocol"]
842 }
843 ],
844 "op" : "set"
845 },
846 {
847 "parameters" : [
848 {
849 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800850 "value" : ["scalars", "fabric_metadata_t.ip_eth_type"]
851 },
852 {
853 "type" : "hexstr",
854 "value" : "0x0800"
855 }
856 ],
857 "op" : "set"
858 },
859 {
860 "parameters" : [
861 {
862 "type" : "field",
863 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700864 },
865 {
866 "type" : "field",
867 "value" : ["ipv4", "dscp"]
868 }
869 ],
870 "op" : "set"
871 }
872 ],
873 "transitions" : [
874 {
875 "type" : "hexstr",
876 "value" : "0x06",
877 "mask" : null,
878 "next_state" : "parse_tcp"
879 },
880 {
881 "type" : "hexstr",
882 "value" : "0x11",
883 "mask" : null,
884 "next_state" : "parse_udp"
885 },
886 {
887 "type" : "hexstr",
888 "value" : "0x01",
889 "mask" : null,
890 "next_state" : "parse_icmp"
891 },
892 {
893 "value" : "default",
894 "mask" : null,
895 "next_state" : null
896 }
897 ],
898 "transition_key" : [
899 {
900 "type" : "field",
901 "value" : ["ipv4", "protocol"]
902 }
903 ]
904 },
905 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700906 "name" : "parse_tcp",
907 "id" : 7,
908 "parser_ops" : [
909 {
910 "parameters" : [
911 {
912 "type" : "regular",
913 "value" : "tcp"
914 }
915 ],
916 "op" : "extract"
917 },
918 {
919 "parameters" : [
920 {
921 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800922 "value" : ["scalars", "fabric_metadata_t.l4_sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700923 },
924 {
925 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800926 "value" : ["tcp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700927 }
928 ],
929 "op" : "set"
930 },
931 {
932 "parameters" : [
933 {
934 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800935 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700936 },
937 {
938 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800939 "value" : ["tcp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700940 }
941 ],
942 "op" : "set"
943 }
944 ],
945 "transitions" : [
946 {
947 "value" : "default",
948 "mask" : null,
949 "next_state" : "parse_int"
950 }
951 ],
952 "transition_key" : []
953 },
954 {
955 "name" : "parse_udp",
956 "id" : 8,
957 "parser_ops" : [
958 {
959 "parameters" : [
960 {
961 "type" : "regular",
962 "value" : "udp"
963 }
964 ],
965 "op" : "extract"
966 },
967 {
968 "parameters" : [
969 {
970 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800971 "value" : ["scalars", "fabric_metadata_t.l4_sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700972 },
973 {
974 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800975 "value" : ["udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700976 }
977 ],
978 "op" : "set"
979 },
980 {
981 "parameters" : [
982 {
983 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800984 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700985 },
986 {
987 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800988 "value" : ["udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700989 }
990 ],
991 "op" : "set"
992 }
993 ],
994 "transitions" : [
995 {
996 "type" : "hexstr",
997 "value" : "0x0868",
998 "mask" : null,
999 "next_state" : "parse_gtpu"
1000 },
1001 {
1002 "value" : "default",
1003 "mask" : null,
1004 "next_state" : "parse_int"
1005 }
1006 ],
1007 "transition_key" : [
1008 {
1009 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001010 "value" : ["udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001011 }
1012 ]
1013 },
1014 {
1015 "name" : "parse_icmp",
1016 "id" : 9,
1017 "parser_ops" : [
1018 {
1019 "parameters" : [
1020 {
1021 "type" : "regular",
1022 "value" : "icmp"
1023 }
1024 ],
1025 "op" : "extract"
1026 }
1027 ],
1028 "transitions" : [
1029 {
1030 "value" : "default",
1031 "mask" : null,
1032 "next_state" : null
1033 }
1034 ],
1035 "transition_key" : []
1036 },
1037 {
1038 "name" : "parse_gtpu",
1039 "id" : 10,
1040 "parser_ops" : [
1041 {
1042 "parameters" : [
1043 {
1044 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001045 "value" : ["scalars", "tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001046 },
1047 {
1048 "type" : "expression",
1049 "value" : {
1050 "type" : "expression",
1051 "value" : {
1052 "op" : "&",
1053 "left" : {
1054 "type" : "expression",
1055 "value" : {
1056 "op" : "&",
1057 "left" : {
1058 "type" : "expression",
1059 "value" : {
1060 "op" : ">>",
1061 "left" : {
1062 "type" : "field",
1063 "value" : ["ipv4", "dst_addr"]
1064 },
1065 "right" : {
1066 "type" : "hexstr",
1067 "value" : "0x18"
1068 }
1069 }
1070 },
1071 "right" : {
1072 "type" : "hexstr",
1073 "value" : "0xffffffff"
1074 }
1075 }
1076 },
1077 "right" : {
1078 "type" : "hexstr",
1079 "value" : "0xff"
1080 }
1081 }
1082 }
1083 }
1084 ],
1085 "op" : "set"
1086 }
1087 ],
1088 "transitions" : [
1089 {
1090 "type" : "hexstr",
1091 "value" : "0x8c",
1092 "mask" : null,
1093 "next_state" : "do_parse_gtpu"
1094 },
1095 {
1096 "value" : "default",
1097 "mask" : null,
1098 "next_state" : null
1099 }
1100 ],
1101 "transition_key" : [
1102 {
1103 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001104 "value" : ["scalars", "tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001105 }
1106 ]
1107 },
1108 {
1109 "name" : "do_parse_gtpu",
1110 "id" : 11,
1111 "parser_ops" : [
1112 {
1113 "parameters" : [
1114 {
1115 "type" : "regular",
1116 "value" : "gtpu"
1117 }
1118 ],
1119 "op" : "extract"
1120 },
1121 {
1122 "parameters" : [
1123 {
1124 "type" : "regular",
1125 "value" : "inner_ipv4"
1126 }
1127 ],
1128 "op" : "extract"
1129 },
1130 {
1131 "parameters" : [
1132 {
1133 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001134 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001135 },
1136 {
1137 "type" : "field",
1138 "value" : ["inner_ipv4", "dscp"]
1139 }
1140 ],
1141 "op" : "set"
1142 }
1143 ],
1144 "transitions" : [
1145 {
1146 "type" : "hexstr",
1147 "value" : "0x06",
1148 "mask" : null,
1149 "next_state" : "parse_tcp"
1150 },
1151 {
1152 "type" : "hexstr",
1153 "value" : "0x11",
1154 "mask" : null,
1155 "next_state" : "parse_inner_udp"
1156 },
1157 {
1158 "type" : "hexstr",
1159 "value" : "0x01",
1160 "mask" : null,
1161 "next_state" : "parse_icmp"
1162 },
1163 {
1164 "value" : "default",
1165 "mask" : null,
1166 "next_state" : null
1167 }
1168 ],
1169 "transition_key" : [
1170 {
1171 "type" : "field",
1172 "value" : ["inner_ipv4", "protocol"]
1173 }
1174 ]
1175 },
1176 {
1177 "name" : "parse_inner_udp",
1178 "id" : 12,
1179 "parser_ops" : [
1180 {
1181 "parameters" : [
1182 {
1183 "type" : "regular",
1184 "value" : "inner_udp"
1185 }
1186 ],
1187 "op" : "extract"
1188 },
1189 {
1190 "parameters" : [
1191 {
1192 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001193 "value" : ["scalars", "fabric_metadata_t.l4_sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001194 },
1195 {
1196 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001197 "value" : ["inner_udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001198 }
1199 ],
1200 "op" : "set"
1201 },
1202 {
1203 "parameters" : [
1204 {
1205 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001206 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001207 },
1208 {
1209 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001210 "value" : ["inner_udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001211 }
1212 ],
1213 "op" : "set"
1214 }
1215 ],
1216 "transitions" : [
1217 {
1218 "value" : "default",
1219 "mask" : null,
1220 "next_state" : "parse_int"
1221 }
1222 ],
1223 "transition_key" : []
1224 },
1225 {
1226 "name" : "parse_int",
1227 "id" : 13,
1228 "parser_ops" : [],
1229 "transitions" : [
1230 {
1231 "type" : "hexstr",
1232 "value" : "0x01",
1233 "mask" : "0x01",
1234 "next_state" : "parse_intl4_shim"
1235 },
1236 {
1237 "value" : "default",
1238 "mask" : null,
1239 "next_state" : null
1240 }
1241 ],
1242 "transition_key" : [
1243 {
1244 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001245 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001246 }
1247 ]
1248 },
1249 {
1250 "name" : "parse_intl4_shim",
1251 "id" : 14,
1252 "parser_ops" : [
1253 {
1254 "parameters" : [
1255 {
1256 "type" : "regular",
1257 "value" : "intl4_shim"
1258 }
1259 ],
1260 "op" : "extract"
1261 },
1262 {
1263 "parameters" : [
1264 {
1265 "type" : "regular",
1266 "value" : "int_header"
1267 }
1268 ],
1269 "op" : "extract"
1270 }
1271 ],
1272 "transitions" : [
1273 {
1274 "type" : "hexstr",
1275 "value" : "0x04",
1276 "mask" : null,
1277 "next_state" : "parse_intl4_tail"
1278 },
1279 {
1280 "value" : "default",
1281 "mask" : null,
1282 "next_state" : "parse_int_data"
1283 }
1284 ],
1285 "transition_key" : [
1286 {
1287 "type" : "field",
1288 "value" : ["intl4_shim", "len_words"]
1289 }
1290 ]
1291 },
1292 {
1293 "name" : "parse_int_data",
1294 "id" : 15,
1295 "parser_ops" : [],
1296 "transitions" : [
1297 {
1298 "value" : "default",
1299 "mask" : null,
1300 "next_state" : null
1301 }
1302 ],
1303 "transition_key" : []
1304 },
1305 {
1306 "name" : "parse_intl4_tail",
1307 "id" : 16,
1308 "parser_ops" : [
1309 {
1310 "parameters" : [
1311 {
1312 "type" : "regular",
1313 "value" : "intl4_tail"
1314 }
1315 ],
1316 "op" : "extract"
1317 }
1318 ],
1319 "transitions" : [
1320 {
1321 "value" : "default",
1322 "mask" : null,
1323 "next_state" : null
1324 }
1325 ],
1326 "transition_key" : []
1327 }
1328 ]
1329 }
1330 ],
1331 "parse_vsets" : [],
1332 "deparsers" : [
1333 {
1334 "name" : "deparser",
1335 "id" : 0,
1336 "source_info" : {
1337 "filename" : "include/parser.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001338 "line" : 243,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001339 "column" : 8,
1340 "source_fragment" : "FabricDeparser"
1341 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001342 "order" : ["packet_in", "ethernet", "vlan_tag", "inner_vlan_tag", "mpls", "gtpu_ipv4", "gtpu_udp", "gtpu", "ipv4", "tcp", "udp", "icmp", "intl4_shim", "int_header", "int_switch_id", "int_port_ids", "int_hop_latency", "int_q_occupancy", "int_ingress_tstamp", "int_egress_tstamp", "int_q_congestion", "int_egress_tx_util", "intl4_tail"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001343 }
1344 ],
1345 "meter_arrays" : [],
1346 "counter_arrays" : [
1347 {
1348 "name" : "FabricIngress.spgw_ingress.ue_counter",
1349 "id" : 0,
1350 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001351 "binding" : "FabricIngress.spgw_ingress.dl_sess_lookup",
1352 "source_info" : {
1353 "filename" : "include/spgw.p4",
1354 "line" : 51,
1355 "column" : 50,
1356 "source_fragment" : "ue_counter"
1357 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001358 },
1359 {
1360 "name" : "FabricIngress.process_set_source_sink.counter_set_source",
1361 "id" : 1,
1362 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001363 "binding" : "FabricIngress.process_set_source_sink.tb_set_source",
1364 "source_info" : {
1365 "filename" : "include/int/int_main.p4",
1366 "line" : 39,
1367 "column" : 50,
1368 "source_fragment" : "counter_set_source"
1369 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001370 },
1371 {
1372 "name" : "FabricIngress.filtering.ingress_port_vlan_counter",
1373 "id" : 2,
1374 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001375 "binding" : "FabricIngress.filtering.ingress_port_vlan",
1376 "source_info" : {
1377 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001378 "line" : 31,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001379 "column" : 50,
1380 "source_fragment" : "ingress_port_vlan_counter"
1381 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001382 },
1383 {
1384 "name" : "FabricIngress.filtering.fwd_classifier_counter",
1385 "id" : 3,
1386 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001387 "binding" : "FabricIngress.filtering.fwd_classifier",
1388 "source_info" : {
1389 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001390 "line" : 79,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001391 "column" : 50,
1392 "source_fragment" : "fwd_classifier_counter"
1393 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001394 },
1395 {
1396 "name" : "FabricIngress.forwarding.bridging_counter",
1397 "id" : 4,
1398 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001399 "binding" : "FabricIngress.forwarding.bridging",
1400 "source_info" : {
1401 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001402 "line" : 36,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001403 "column" : 50,
1404 "source_fragment" : "bridging_counter"
1405 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001406 },
1407 {
1408 "name" : "FabricIngress.forwarding.mpls_counter",
1409 "id" : 5,
1410 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001411 "binding" : "FabricIngress.forwarding.mpls",
1412 "source_info" : {
1413 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001414 "line" : 59,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001415 "column" : 50,
1416 "source_fragment" : "mpls_counter"
1417 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001418 },
1419 {
1420 "name" : "FabricIngress.forwarding.routing_v4_counter",
1421 "id" : 6,
1422 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001423 "binding" : "FabricIngress.forwarding.routing_v4",
1424 "source_info" : {
1425 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001426 "line" : 82,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001427 "column" : 50,
1428 "source_fragment" : "routing_v4_counter"
1429 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001430 },
1431 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001432 "name" : "FabricIngress.acl.acl_counter",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001433 "id" : 7,
1434 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001435 "binding" : "FabricIngress.acl.acl",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001436 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001437 "filename" : "include/control/acl.p4",
1438 "line" : 30,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001439 "column" : 50,
1440 "source_fragment" : "acl_counter"
1441 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001442 },
1443 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001444 "name" : "FabricIngress.next.next_vlan_counter",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001445 "id" : 8,
1446 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001447 "binding" : "FabricIngress.next.next_vlan",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001448 "source_info" : {
1449 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001450 "line" : 67,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001451 "column" : 50,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001452 "source_fragment" : "next_vlan_counter"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001453 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001454 },
1455 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001456 "name" : "FabricIngress.next.xconnect_counter",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001457 "id" : 9,
1458 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001459 "binding" : "FabricIngress.next.xconnect",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001460 "source_info" : {
1461 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001462 "line" : 91,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001463 "column" : 50,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001464 "source_fragment" : "xconnect_counter"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001465 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001466 },
1467 {
1468 "name" : "FabricIngress.next.hashed_counter",
1469 "id" : 10,
1470 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001471 "binding" : "FabricIngress.next.hashed",
1472 "source_info" : {
1473 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001474 "line" : 162,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001475 "column" : 50,
1476 "source_fragment" : "hashed_counter"
1477 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001478 },
1479 {
1480 "name" : "FabricIngress.next.multicast_counter",
1481 "id" : 11,
1482 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001483 "binding" : "FabricIngress.next.multicast",
1484 "source_info" : {
1485 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001486 "line" : 205,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001487 "column" : 50,
1488 "source_fragment" : "multicast_counter"
1489 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001490 },
1491 {
1492 "name" : "FabricIngress.port_counters_control.egress_port_counter",
1493 "id" : 12,
1494 "source_info" : {
1495 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001496 "line" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001497 "column" : 48,
1498 "source_fragment" : "egress_port_counter"
1499 },
1500 "size" : 511,
1501 "is_direct" : false
1502 },
1503 {
1504 "name" : "FabricIngress.port_counters_control.ingress_port_counter",
1505 "id" : 13,
1506 "source_info" : {
1507 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001508 "line" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001509 "column" : 48,
1510 "source_fragment" : "ingress_port_counter"
1511 },
1512 "size" : 511,
1513 "is_direct" : false
1514 },
1515 {
1516 "name" : "FabricEgress.process_int_main.process_int_source.counter_int_source",
1517 "id" : 14,
1518 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001519 "binding" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
1520 "source_info" : {
1521 "filename" : "include/int/int_source.p4",
1522 "line" : 27,
1523 "column" : 50,
1524 "source_fragment" : "counter_int_source"
1525 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001526 },
1527 {
1528 "name" : "FabricEgress.egress_next.egress_vlan_counter",
1529 "id" : 15,
1530 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001531 "binding" : "FabricEgress.egress_next.egress_vlan",
1532 "source_info" : {
1533 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001534 "line" : 277,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001535 "column" : 50,
1536 "source_fragment" : "egress_vlan_counter"
1537 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001538 }
1539 ],
1540 "register_arrays" : [],
1541 "calculations" : [
1542 {
1543 "name" : "calc",
1544 "id" : 0,
1545 "source_info" : {
1546 "filename" : "include/checksum.p4",
1547 "line" : 28,
1548 "column" : 8,
1549 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
1550 },
1551 "algo" : "csum16",
1552 "input" : [
1553 {
1554 "type" : "field",
1555 "value" : ["ipv4", "version"]
1556 },
1557 {
1558 "type" : "field",
1559 "value" : ["ipv4", "ihl"]
1560 },
1561 {
1562 "type" : "field",
1563 "value" : ["ipv4", "dscp"]
1564 },
1565 {
1566 "type" : "field",
1567 "value" : ["ipv4", "ecn"]
1568 },
1569 {
1570 "type" : "field",
1571 "value" : ["ipv4", "total_len"]
1572 },
1573 {
1574 "type" : "field",
1575 "value" : ["ipv4", "identification"]
1576 },
1577 {
1578 "type" : "field",
1579 "value" : ["ipv4", "flags"]
1580 },
1581 {
1582 "type" : "field",
1583 "value" : ["ipv4", "frag_offset"]
1584 },
1585 {
1586 "type" : "field",
1587 "value" : ["ipv4", "ttl"]
1588 },
1589 {
1590 "type" : "field",
1591 "value" : ["ipv4", "protocol"]
1592 },
1593 {
1594 "type" : "field",
1595 "value" : ["ipv4", "src_addr"]
1596 },
1597 {
1598 "type" : "field",
1599 "value" : ["ipv4", "dst_addr"]
1600 }
1601 ]
1602 },
1603 {
1604 "name" : "calc_0",
1605 "id" : 1,
1606 "source_info" : {
1607 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001608 "line" : 242,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001609 "column" : 8,
1610 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
1611 },
1612 "algo" : "csum16",
1613 "input" : [
1614 {
1615 "type" : "field",
1616 "value" : ["gtpu_ipv4", "version"]
1617 },
1618 {
1619 "type" : "field",
1620 "value" : ["gtpu_ipv4", "ihl"]
1621 },
1622 {
1623 "type" : "field",
1624 "value" : ["gtpu_ipv4", "dscp"]
1625 },
1626 {
1627 "type" : "field",
1628 "value" : ["gtpu_ipv4", "ecn"]
1629 },
1630 {
1631 "type" : "field",
1632 "value" : ["gtpu_ipv4", "total_len"]
1633 },
1634 {
1635 "type" : "field",
1636 "value" : ["gtpu_ipv4", "identification"]
1637 },
1638 {
1639 "type" : "field",
1640 "value" : ["gtpu_ipv4", "flags"]
1641 },
1642 {
1643 "type" : "field",
1644 "value" : ["gtpu_ipv4", "frag_offset"]
1645 },
1646 {
1647 "type" : "field",
1648 "value" : ["gtpu_ipv4", "ttl"]
1649 },
1650 {
1651 "type" : "field",
1652 "value" : ["gtpu_ipv4", "protocol"]
1653 },
1654 {
1655 "type" : "field",
1656 "value" : ["gtpu_ipv4", "src_addr"]
1657 },
1658 {
1659 "type" : "field",
1660 "value" : ["gtpu_ipv4", "dst_addr"]
1661 }
1662 ]
1663 },
1664 {
1665 "name" : "calc_1",
1666 "id" : 2,
1667 "source_info" : {
1668 "filename" : "include/checksum.p4",
1669 "line" : 57,
1670 "column" : 8,
1671 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
1672 },
1673 "algo" : "csum16",
1674 "input" : [
1675 {
1676 "type" : "field",
1677 "value" : ["ipv4", "version"]
1678 },
1679 {
1680 "type" : "field",
1681 "value" : ["ipv4", "ihl"]
1682 },
1683 {
1684 "type" : "field",
1685 "value" : ["ipv4", "dscp"]
1686 },
1687 {
1688 "type" : "field",
1689 "value" : ["ipv4", "ecn"]
1690 },
1691 {
1692 "type" : "field",
1693 "value" : ["ipv4", "total_len"]
1694 },
1695 {
1696 "type" : "field",
1697 "value" : ["ipv4", "identification"]
1698 },
1699 {
1700 "type" : "field",
1701 "value" : ["ipv4", "flags"]
1702 },
1703 {
1704 "type" : "field",
1705 "value" : ["ipv4", "frag_offset"]
1706 },
1707 {
1708 "type" : "field",
1709 "value" : ["ipv4", "ttl"]
1710 },
1711 {
1712 "type" : "field",
1713 "value" : ["ipv4", "protocol"]
1714 },
1715 {
1716 "type" : "field",
1717 "value" : ["ipv4", "src_addr"]
1718 },
1719 {
1720 "type" : "field",
1721 "value" : ["ipv4", "dst_addr"]
1722 }
1723 ]
1724 }
1725 ],
1726 "learn_lists" : [],
1727 "actions" : [
1728 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001729 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001730 "id" : 0,
1731 "runtime_data" : [],
1732 "primitives" : []
1733 },
1734 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001735 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001736 "id" : 1,
1737 "runtime_data" : [],
1738 "primitives" : []
1739 },
1740 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001741 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001742 "id" : 2,
1743 "runtime_data" : [],
1744 "primitives" : []
1745 },
1746 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001747 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001748 "id" : 3,
1749 "runtime_data" : [],
1750 "primitives" : []
1751 },
1752 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001753 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001754 "id" : 4,
1755 "runtime_data" : [],
1756 "primitives" : []
1757 },
1758 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001759 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001760 "id" : 5,
1761 "runtime_data" : [],
1762 "primitives" : []
1763 },
1764 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001765 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001766 "id" : 6,
1767 "runtime_data" : [],
1768 "primitives" : []
1769 },
1770 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001771 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001772 "id" : 7,
1773 "runtime_data" : [],
1774 "primitives" : []
1775 },
1776 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001777 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001778 "id" : 8,
1779 "runtime_data" : [],
1780 "primitives" : []
1781 },
1782 {
1783 "name" : "nop",
1784 "id" : 9,
1785 "runtime_data" : [],
1786 "primitives" : []
1787 },
1788 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001789 "name" : "FabricIngress.spgw_ingress.gtpu_decap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001790 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001791 "runtime_data" : [],
1792 "primitives" : [
1793 {
1794 "op" : "remove_header",
1795 "parameters" : [
1796 {
1797 "type" : "header",
1798 "value" : "gtpu_ipv4"
1799 }
1800 ],
1801 "source_info" : {
1802 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001803 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001804 "column" : 8,
1805 "source_fragment" : "gtpu_ipv4.setInvalid()"
1806 }
1807 },
1808 {
1809 "op" : "remove_header",
1810 "parameters" : [
1811 {
1812 "type" : "header",
1813 "value" : "gtpu_udp"
1814 }
1815 ],
1816 "source_info" : {
1817 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001818 "line" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001819 "column" : 8,
1820 "source_fragment" : "gtpu_udp.setInvalid()"
1821 }
1822 },
1823 {
1824 "op" : "remove_header",
1825 "parameters" : [
1826 {
1827 "type" : "header",
1828 "value" : "gtpu"
1829 }
1830 ],
1831 "source_info" : {
1832 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001833 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001834 "column" : 8,
1835 "source_fragment" : "gtpu.setInvalid()"
1836 }
1837 }
1838 ]
1839 },
1840 {
1841 "name" : "FabricIngress.spgw_ingress.set_dl_sess_info",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001842 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001843 "runtime_data" : [
1844 {
1845 "name" : "teid",
1846 "bitwidth" : 32
1847 },
1848 {
1849 "name" : "s1u_enb_addr",
1850 "bitwidth" : 32
1851 },
1852 {
1853 "name" : "s1u_sgw_addr",
1854 "bitwidth" : 32
1855 }
1856 ],
1857 "primitives" : [
1858 {
1859 "op" : "assign",
1860 "parameters" : [
1861 {
1862 "type" : "field",
1863 "value" : ["userMetadata.spgw", "teid"]
1864 },
1865 {
1866 "type" : "runtime_data",
1867 "value" : 0
1868 }
1869 ],
1870 "source_info" : {
1871 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001872 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001873 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001874 "source_fragment" : "fabric_meta.spgw.teid = teid"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001875 }
1876 },
1877 {
1878 "op" : "assign",
1879 "parameters" : [
1880 {
1881 "type" : "field",
1882 "value" : ["userMetadata.spgw", "s1u_enb_addr"]
1883 },
1884 {
1885 "type" : "runtime_data",
1886 "value" : 1
1887 }
1888 ],
1889 "source_info" : {
1890 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001891 "line" : 64,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001892 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001893 "source_fragment" : "fabric_meta.spgw.s1u_enb_addr = s1u_enb_addr"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001894 }
1895 },
1896 {
1897 "op" : "assign",
1898 "parameters" : [
1899 {
1900 "type" : "field",
1901 "value" : ["userMetadata.spgw", "s1u_sgw_addr"]
1902 },
1903 {
1904 "type" : "runtime_data",
1905 "value" : 2
1906 }
1907 ],
1908 "source_info" : {
1909 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001910 "line" : 65,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001911 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001912 "source_fragment" : "fabric_meta.spgw.s1u_sgw_addr = s1u_sgw_addr"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001913 }
1914 }
1915 ]
1916 },
1917 {
1918 "name" : "FabricIngress.process_set_source_sink.int_set_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001919 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001920 "runtime_data" : [],
1921 "primitives" : [
1922 {
1923 "op" : "assign",
1924 "parameters" : [
1925 {
1926 "type" : "field",
1927 "value" : ["userMetadata.int_meta", "source"]
1928 },
1929 {
1930 "type" : "expression",
1931 "value" : {
1932 "type" : "expression",
1933 "value" : {
1934 "op" : "b2d",
1935 "left" : null,
1936 "right" : {
1937 "type" : "bool",
1938 "value" : true
1939 }
1940 }
1941 }
1942 }
1943 ],
1944 "source_info" : {
1945 "filename" : "include/int/int_main.p4",
1946 "line" : 42,
1947 "column" : 8,
1948 "source_fragment" : "fabric_metadata.int_meta.source = true"
1949 }
1950 }
1951 ]
1952 },
1953 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001954 "name" : "FabricIngress.filtering.deny",
1955 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001956 "runtime_data" : [],
1957 "primitives" : [
1958 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001959 "op" : "assign",
1960 "parameters" : [
1961 {
1962 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001963 "value" : ["scalars", "fabric_metadata_t.skip_forwarding"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001964 },
1965 {
1966 "type" : "expression",
1967 "value" : {
1968 "type" : "expression",
1969 "value" : {
1970 "op" : "b2d",
1971 "left" : null,
1972 "right" : {
1973 "type" : "bool",
1974 "value" : true
1975 }
1976 }
1977 }
1978 }
1979 ],
1980 "source_info" : {
1981 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001982 "line" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001983 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001984 "source_fragment" : "fabric_metadata.skip_forwarding = true"
1985 }
1986 },
1987 {
1988 "op" : "assign",
1989 "parameters" : [
1990 {
1991 "type" : "field",
1992 "value" : ["scalars", "fabric_metadata_t.skip_next"]
1993 },
1994 {
1995 "type" : "expression",
1996 "value" : {
1997 "type" : "expression",
1998 "value" : {
1999 "op" : "b2d",
2000 "left" : null,
2001 "right" : {
2002 "type" : "bool",
2003 "value" : true
2004 }
2005 }
2006 }
2007 }
2008 ],
2009 "source_info" : {
2010 "filename" : "include/control/filtering.p4",
2011 "line" : 37,
2012 "column" : 8,
2013 "source_fragment" : "fabric_metadata.skip_next = true"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002014 }
2015 }
2016 ]
2017 },
2018 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002019 "name" : "FabricIngress.filtering.permit",
2020 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002021 "runtime_data" : [],
2022 "primitives" : []
2023 },
2024 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002025 "name" : "FabricIngress.filtering.permit_with_internal_vlan",
2026 "id" : 15,
2027 "runtime_data" : [
2028 {
2029 "name" : "vlan_id",
2030 "bitwidth" : 12
2031 }
2032 ],
2033 "primitives" : [
2034 {
2035 "op" : "assign",
2036 "parameters" : [
2037 {
2038 "type" : "field",
2039 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
2040 },
2041 {
2042 "type" : "runtime_data",
2043 "value" : 0
2044 }
2045 ],
2046 "source_info" : {
2047 "filename" : "include/control/filtering.p4",
2048 "line" : 47,
2049 "column" : 8,
2050 "source_fragment" : "fabric_metadata.vlan_id = vlan_id"
2051 }
2052 }
2053 ]
2054 },
2055 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002056 "name" : "FabricIngress.filtering.set_forwarding_type",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002057 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002058 "runtime_data" : [
2059 {
2060 "name" : "fwd_type",
2061 "bitwidth" : 3
2062 }
2063 ],
2064 "primitives" : [
2065 {
2066 "op" : "assign",
2067 "parameters" : [
2068 {
2069 "type" : "field",
2070 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
2071 },
2072 {
2073 "type" : "runtime_data",
2074 "value" : 0
2075 }
2076 ],
2077 "source_info" : {
2078 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002079 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002080 "column" : 8,
2081 "source_fragment" : "fabric_metadata.fwd_type = fwd_type"
2082 }
2083 }
2084 ]
2085 },
2086 {
2087 "name" : "FabricIngress.forwarding.set_next_id_bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002088 "id" : 17,
2089 "runtime_data" : [
2090 {
2091 "name" : "next_id",
2092 "bitwidth" : 32
2093 }
2094 ],
2095 "primitives" : [
2096 {
2097 "op" : "assign",
2098 "parameters" : [
2099 {
2100 "type" : "field",
2101 "value" : ["scalars", "fabric_metadata_t.next_id"]
2102 },
2103 {
2104 "type" : "runtime_data",
2105 "value" : 0
2106 }
2107 ],
2108 "source_info" : {
2109 "filename" : "include/control/forwarding.p4",
2110 "line" : 30,
2111 "column" : 8,
2112 "source_fragment" : "fabric_metadata.next_id = next_id; ..."
2113 }
2114 }
2115 ]
2116 },
2117 {
2118 "name" : "FabricIngress.forwarding.pop_mpls_and_next",
2119 "id" : 18,
2120 "runtime_data" : [
2121 {
2122 "name" : "next_id",
2123 "bitwidth" : 32
2124 }
2125 ],
2126 "primitives" : [
2127 {
2128 "op" : "assign",
2129 "parameters" : [
2130 {
2131 "type" : "field",
2132 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
2133 },
2134 {
2135 "type" : "hexstr",
2136 "value" : "0x000000"
2137 }
2138 ],
2139 "source_info" : {
2140 "filename" : "include/control/forwarding.p4",
2141 "line" : 62,
2142 "column" : 8,
2143 "source_fragment" : "fabric_metadata.mpls_label = 0"
2144 }
2145 },
2146 {
2147 "op" : "assign",
2148 "parameters" : [
2149 {
2150 "type" : "field",
2151 "value" : ["scalars", "fabric_metadata_t.next_id"]
2152 },
2153 {
2154 "type" : "runtime_data",
2155 "value" : 0
2156 }
2157 ],
2158 "source_info" : {
2159 "filename" : "include/control/forwarding.p4",
2160 "line" : 30,
2161 "column" : 8,
2162 "source_fragment" : "fabric_metadata.next_id = next_id; ..."
2163 }
2164 }
2165 ]
2166 },
2167 {
2168 "name" : "FabricIngress.forwarding.set_next_id_routing_v4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002169 "id" : 19,
2170 "runtime_data" : [
2171 {
2172 "name" : "next_id",
2173 "bitwidth" : 32
2174 }
2175 ],
2176 "primitives" : [
2177 {
2178 "op" : "assign",
2179 "parameters" : [
2180 {
2181 "type" : "field",
2182 "value" : ["scalars", "fabric_metadata_t.next_id"]
2183 },
2184 {
2185 "type" : "runtime_data",
2186 "value" : 0
2187 }
2188 ],
2189 "source_info" : {
2190 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002191 "line" : 30,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002192 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002193 "source_fragment" : "fabric_metadata.next_id = next_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002194 }
2195 }
2196 ]
2197 },
2198 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002199 "name" : "FabricIngress.forwarding.nop_routing_v4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002200 "id" : 20,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002201 "runtime_data" : [],
2202 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002203 },
2204 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002205 "name" : "FabricIngress.acl.set_next_id_acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002206 "id" : 21,
2207 "runtime_data" : [
2208 {
2209 "name" : "next_id",
2210 "bitwidth" : 32
2211 }
2212 ],
2213 "primitives" : [
2214 {
2215 "op" : "assign",
2216 "parameters" : [
2217 {
2218 "type" : "field",
2219 "value" : ["scalars", "fabric_metadata_t.next_id"]
2220 },
2221 {
2222 "type" : "runtime_data",
2223 "value" : 0
2224 }
2225 ],
2226 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002227 "filename" : "include/control/acl.p4",
2228 "line" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002229 "column" : 8,
2230 "source_fragment" : "fabric_metadata.next_id = next_id"
2231 }
2232 }
2233 ]
2234 },
2235 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002236 "name" : "FabricIngress.acl.punt_to_cpu",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002237 "id" : 22,
2238 "runtime_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002239 "primitives" : [
2240 {
2241 "op" : "assign",
2242 "parameters" : [
2243 {
2244 "type" : "field",
2245 "value" : ["standard_metadata", "egress_spec"]
2246 },
2247 {
2248 "type" : "hexstr",
2249 "value" : "0x00ff"
2250 }
2251 ],
2252 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002253 "filename" : "include/control/acl.p4",
2254 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002255 "column" : 8,
2256 "source_fragment" : "standard_metadata.egress_spec = 255"
2257 }
2258 },
2259 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002260 "op" : "assign",
2261 "parameters" : [
2262 {
2263 "type" : "field",
2264 "value" : ["scalars", "fabric_metadata_t.skip_next"]
2265 },
2266 {
2267 "type" : "expression",
2268 "value" : {
2269 "type" : "expression",
2270 "value" : {
2271 "op" : "b2d",
2272 "left" : null,
2273 "right" : {
2274 "type" : "bool",
2275 "value" : true
2276 }
2277 }
2278 }
2279 }
2280 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002281 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002282 "filename" : "include/control/acl.p4",
2283 "line" : 40,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002284 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002285 "source_fragment" : "fabric_metadata.skip_next = true"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002286 }
2287 }
2288 ]
2289 },
2290 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002291 "name" : "FabricIngress.acl.clone_to_cpu",
2292 "id" : 23,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002293 "runtime_data" : [],
2294 "primitives" : [
2295 {
2296 "op" : "assign",
2297 "parameters" : [
2298 {
2299 "type" : "field",
2300 "value" : ["scalars", "fabric_metadata_t.clone_to_cpu"]
2301 },
2302 {
2303 "type" : "expression",
2304 "value" : {
2305 "type" : "expression",
2306 "value" : {
2307 "op" : "b2d",
2308 "left" : null,
2309 "right" : {
2310 "type" : "bool",
2311 "value" : true
2312 }
2313 }
2314 }
2315 }
2316 ],
2317 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002318 "filename" : "include/control/acl.p4",
2319 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002320 "column" : 8,
2321 "source_fragment" : "fabric_metadata.clone_to_cpu = true"
2322 }
2323 }
2324 ]
2325 },
2326 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002327 "name" : "FabricIngress.acl.drop",
2328 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002329 "runtime_data" : [],
2330 "primitives" : [
2331 {
2332 "op" : "drop",
2333 "parameters" : [],
2334 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002335 "filename" : "include/control/acl.p4",
2336 "line" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002337 "column" : 8,
2338 "source_fragment" : "mark_to_drop()"
2339 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002340 },
2341 {
2342 "op" : "assign",
2343 "parameters" : [
2344 {
2345 "type" : "field",
2346 "value" : ["scalars", "fabric_metadata_t.skip_next"]
2347 },
2348 {
2349 "type" : "expression",
2350 "value" : {
2351 "type" : "expression",
2352 "value" : {
2353 "op" : "b2d",
2354 "left" : null,
2355 "right" : {
2356 "type" : "bool",
2357 "value" : true
2358 }
2359 }
2360 }
2361 }
2362 ],
2363 "source_info" : {
2364 "filename" : "include/control/acl.p4",
2365 "line" : 52,
2366 "column" : 8,
2367 "source_fragment" : "fabric_metadata.skip_next = true"
2368 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002369 }
2370 ]
2371 },
2372 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002373 "name" : "FabricIngress.acl.nop_acl",
2374 "id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002375 "runtime_data" : [],
2376 "primitives" : []
2377 },
2378 {
2379 "name" : "FabricIngress.next.set_vlan",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002380 "id" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002381 "runtime_data" : [
2382 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002383 "name" : "vlan_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002384 "bitwidth" : 12
2385 }
2386 ],
2387 "primitives" : [
2388 {
2389 "op" : "assign",
2390 "parameters" : [
2391 {
2392 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002393 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002394 },
2395 {
2396 "type" : "runtime_data",
2397 "value" : 0
2398 }
2399 ],
2400 "source_info" : {
2401 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002402 "line" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002403 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002404 "source_fragment" : "fabric_metadata.vlan_id = vlan_id"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002405 }
2406 }
2407 ]
2408 },
2409 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002410 "name" : "FabricIngress.next.output_xconnect",
2411 "id" : 27,
2412 "runtime_data" : [
2413 {
2414 "name" : "port_num",
2415 "bitwidth" : 9
2416 }
2417 ],
2418 "primitives" : [
2419 {
2420 "op" : "assign",
2421 "parameters" : [
2422 {
2423 "type" : "field",
2424 "value" : ["standard_metadata", "egress_spec"]
2425 },
2426 {
2427 "type" : "runtime_data",
2428 "value" : 0
2429 }
2430 ],
2431 "source_info" : {
2432 "filename" : "include/control/next.p4",
2433 "line" : 31,
2434 "column" : 5,
2435 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2436 }
2437 }
2438 ]
2439 },
2440 {
2441 "name" : "FabricIngress.next.set_next_id_xconnect",
2442 "id" : 28,
2443 "runtime_data" : [
2444 {
2445 "name" : "next_id",
2446 "bitwidth" : 32
2447 }
2448 ],
2449 "primitives" : [
2450 {
2451 "op" : "assign",
2452 "parameters" : [
2453 {
2454 "type" : "field",
2455 "value" : ["scalars", "fabric_metadata_t.next_id"]
2456 },
2457 {
2458 "type" : "runtime_data",
2459 "value" : 0
2460 }
2461 ],
2462 "source_info" : {
2463 "filename" : "include/control/next.p4",
2464 "line" : 99,
2465 "column" : 8,
2466 "source_fragment" : "fabric_metadata.next_id = next_id"
2467 }
2468 }
2469 ]
2470 },
2471 {
2472 "name" : "FabricIngress.next.output_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002473 "id" : 29,
2474 "runtime_data" : [
2475 {
2476 "name" : "port_num",
2477 "bitwidth" : 9
2478 }
2479 ],
2480 "primitives" : [
2481 {
2482 "op" : "assign",
2483 "parameters" : [
2484 {
2485 "type" : "field",
2486 "value" : ["standard_metadata", "egress_spec"]
2487 },
2488 {
2489 "type" : "runtime_data",
2490 "value" : 0
2491 }
2492 ],
2493 "source_info" : {
2494 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002495 "line" : 31,
2496 "column" : 5,
2497 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002498 }
2499 }
2500 ]
2501 },
2502 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002503 "name" : "FabricIngress.next.routing_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002504 "id" : 30,
2505 "runtime_data" : [
2506 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002507 "name" : "port_num",
2508 "bitwidth" : 9
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002509 },
2510 {
2511 "name" : "smac",
2512 "bitwidth" : 48
2513 },
2514 {
2515 "name" : "dmac",
2516 "bitwidth" : 48
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002517 }
2518 ],
2519 "primitives" : [
2520 {
2521 "op" : "assign",
2522 "parameters" : [
2523 {
2524 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002525 "value" : ["ethernet", "src_addr"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002526 },
2527 {
2528 "type" : "runtime_data",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002529 "value" : 1
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002530 }
2531 ],
2532 "source_info" : {
2533 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002534 "line" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002535 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002536 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2537 }
2538 },
2539 {
2540 "op" : "assign",
2541 "parameters" : [
2542 {
2543 "type" : "field",
2544 "value" : ["ethernet", "dst_addr"]
2545 },
2546 {
2547 "type" : "runtime_data",
2548 "value" : 2
2549 }
2550 ],
2551 "source_info" : {
2552 "filename" : "include/control/next.p4",
2553 "line" : 41,
2554 "column" : 8,
2555 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002556 }
2557 },
2558 {
2559 "op" : "assign",
2560 "parameters" : [
2561 {
2562 "type" : "field",
2563 "value" : ["standard_metadata", "egress_spec"]
2564 },
2565 {
2566 "type" : "runtime_data",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002567 "value" : 0
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002568 }
2569 ],
2570 "source_info" : {
2571 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002572 "line" : 31,
2573 "column" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002574 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2575 }
2576 }
2577 ]
2578 },
2579 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002580 "name" : "FabricIngress.next.mpls_routing_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002581 "id" : 31,
2582 "runtime_data" : [
2583 {
2584 "name" : "port_num",
2585 "bitwidth" : 9
2586 },
2587 {
2588 "name" : "smac",
2589 "bitwidth" : 48
2590 },
2591 {
2592 "name" : "dmac",
2593 "bitwidth" : 48
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002594 },
2595 {
2596 "name" : "label",
2597 "bitwidth" : 20
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002598 }
2599 ],
2600 "primitives" : [
2601 {
2602 "op" : "assign",
2603 "parameters" : [
2604 {
2605 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002606 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
2607 },
2608 {
2609 "type" : "runtime_data",
2610 "value" : 3
2611 }
2612 ],
2613 "source_info" : {
2614 "filename" : "include/control/next.p4",
2615 "line" : 46,
2616 "column" : 8,
2617 "source_fragment" : "fabric_metadata.mpls_label = label; ..."
2618 }
2619 },
2620 {
2621 "op" : "assign",
2622 "parameters" : [
2623 {
2624 "type" : "field",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002625 "value" : ["ethernet", "src_addr"]
2626 },
2627 {
2628 "type" : "runtime_data",
2629 "value" : 1
2630 }
2631 ],
2632 "source_info" : {
2633 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002634 "line" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002635 "column" : 8,
2636 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2637 }
2638 },
2639 {
2640 "op" : "assign",
2641 "parameters" : [
2642 {
2643 "type" : "field",
2644 "value" : ["ethernet", "dst_addr"]
2645 },
2646 {
2647 "type" : "runtime_data",
2648 "value" : 2
2649 }
2650 ],
2651 "source_info" : {
2652 "filename" : "include/control/next.p4",
2653 "line" : 41,
2654 "column" : 8,
2655 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2656 }
2657 },
2658 {
2659 "op" : "assign",
2660 "parameters" : [
2661 {
2662 "type" : "field",
2663 "value" : ["standard_metadata", "egress_spec"]
2664 },
2665 {
2666 "type" : "runtime_data",
2667 "value" : 0
2668 }
2669 ],
2670 "source_info" : {
2671 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002672 "line" : 31,
2673 "column" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002674 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2675 }
2676 }
2677 ]
2678 },
2679 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002680 "name" : "FabricIngress.next.set_mcast_group_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002681 "id" : 32,
2682 "runtime_data" : [
2683 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002684 "name" : "group_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002685 "bitwidth" : 16
2686 }
2687 ],
2688 "primitives" : [
2689 {
2690 "op" : "assign",
2691 "parameters" : [
2692 {
2693 "type" : "field",
2694 "value" : ["standard_metadata", "mcast_grp"]
2695 },
2696 {
2697 "type" : "runtime_data",
2698 "value" : 0
2699 }
2700 ],
2701 "source_info" : {
2702 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002703 "line" : 208,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002704 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002705 "source_fragment" : "standard_metadata.mcast_grp = group_id"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002706 }
2707 },
2708 {
2709 "op" : "assign",
2710 "parameters" : [
2711 {
2712 "type" : "field",
2713 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
2714 },
2715 {
2716 "type" : "expression",
2717 "value" : {
2718 "type" : "expression",
2719 "value" : {
2720 "op" : "b2d",
2721 "left" : null,
2722 "right" : {
2723 "type" : "bool",
2724 "value" : true
2725 }
2726 }
2727 }
2728 }
2729 ],
2730 "source_info" : {
2731 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002732 "line" : 209,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002733 "column" : 8,
2734 "source_fragment" : "fabric_metadata.is_multicast = true"
2735 }
2736 }
2737 ]
2738 },
2739 {
2740 "name" : "act",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002741 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002742 "runtime_data" : [],
2743 "primitives" : [
2744 {
2745 "op" : "assign",
2746 "parameters" : [
2747 {
2748 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002749 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002750 },
2751 {
2752 "type" : "expression",
2753 "value" : {
2754 "type" : "expression",
2755 "value" : {
2756 "op" : "b2d",
2757 "left" : null,
2758 "right" : {
2759 "type" : "bool",
2760 "value" : true
2761 }
2762 }
2763 }
2764 }
2765 ],
2766 "source_info" : {
2767 "filename" : "include/spgw.p4",
2768 "line" : 30,
2769 "column" : 32,
2770 "source_fragment" : "return"
2771 }
2772 }
2773 ]
2774 },
2775 {
2776 "name" : "act_0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002777 "id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002778 "runtime_data" : [],
2779 "primitives" : [
2780 {
2781 "op" : "remove_header",
2782 "parameters" : [
2783 {
2784 "type" : "header",
2785 "value" : "gtpu_ipv4"
2786 }
2787 ],
2788 "source_info" : {
2789 "filename" : "fabric.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002790 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002791 "column" : 50,
2792 "source_fragment" : "hdr.gtpu_ipv4"
2793 }
2794 },
2795 {
2796 "op" : "remove_header",
2797 "parameters" : [
2798 {
2799 "type" : "header",
2800 "value" : "gtpu_udp"
2801 }
2802 ],
2803 "source_info" : {
2804 "filename" : "fabric.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002805 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002806 "column" : 65,
2807 "source_fragment" : "hdr.gtpu_udp"
2808 }
2809 },
2810 {
2811 "op" : "assign",
2812 "parameters" : [
2813 {
2814 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002815 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002816 },
2817 {
2818 "type" : "expression",
2819 "value" : {
2820 "type" : "expression",
2821 "value" : {
2822 "op" : "b2d",
2823 "left" : null,
2824 "right" : {
2825 "type" : "bool",
2826 "value" : false
2827 }
2828 }
2829 }
2830 }
2831 ]
2832 }
2833 ]
2834 },
2835 {
2836 "name" : "act_1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002837 "id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002838 "runtime_data" : [],
2839 "primitives" : [
2840 {
2841 "op" : "assign_header",
2842 "parameters" : [
2843 {
2844 "type" : "header",
2845 "value" : "udp"
2846 },
2847 {
2848 "type" : "header",
2849 "value" : "inner_udp"
2850 }
2851 ],
2852 "source_info" : {
2853 "filename" : "include/spgw.p4",
2854 "line" : 35,
2855 "column" : 16,
2856 "source_fragment" : "= inner_udp; ..."
2857 }
2858 }
2859 ]
2860 },
2861 {
2862 "name" : "act_2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002863 "id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002864 "runtime_data" : [],
2865 "primitives" : [
2866 {
2867 "op" : "remove_header",
2868 "parameters" : [
2869 {
2870 "type" : "header",
2871 "value" : "udp"
2872 }
2873 ],
2874 "source_info" : {
2875 "filename" : "include/spgw.p4",
2876 "line" : 37,
2877 "column" : 12,
2878 "source_fragment" : "udp.setInvalid()"
2879 }
2880 }
2881 ]
2882 },
2883 {
2884 "name" : "act_3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002885 "id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002886 "runtime_data" : [],
2887 "primitives" : [
2888 {
2889 "op" : "assign_header",
2890 "parameters" : [
2891 {
2892 "type" : "header",
2893 "value" : "gtpu_ipv4"
2894 },
2895 {
2896 "type" : "header",
2897 "value" : "ipv4"
2898 }
2899 ],
2900 "source_info" : {
2901 "filename" : "include/spgw.p4",
2902 "line" : 31,
2903 "column" : 18,
2904 "source_fragment" : "= ipv4; ..."
2905 }
2906 },
2907 {
2908 "op" : "assign_header",
2909 "parameters" : [
2910 {
2911 "type" : "header",
2912 "value" : "ipv4"
2913 },
2914 {
2915 "type" : "header",
2916 "value" : "inner_ipv4"
2917 }
2918 ],
2919 "source_info" : {
2920 "filename" : "include/spgw.p4",
2921 "line" : 32,
2922 "column" : 13,
2923 "source_fragment" : "= inner_ipv4; ..."
2924 }
2925 },
2926 {
2927 "op" : "assign_header",
2928 "parameters" : [
2929 {
2930 "type" : "header",
2931 "value" : "gtpu_udp"
2932 },
2933 {
2934 "type" : "header",
2935 "value" : "udp"
2936 }
2937 ],
2938 "source_info" : {
2939 "filename" : "include/spgw.p4",
2940 "line" : 33,
2941 "column" : 17,
2942 "source_fragment" : "= udp; ..."
2943 }
2944 }
2945 ]
2946 },
2947 {
2948 "name" : "act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002949 "id" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002950 "runtime_data" : [],
2951 "primitives" : [
2952 {
2953 "op" : "assign",
2954 "parameters" : [
2955 {
2956 "type" : "field",
2957 "value" : ["standard_metadata", "egress_spec"]
2958 },
2959 {
2960 "type" : "field",
2961 "value" : ["packet_out", "egress_port"]
2962 }
2963 ],
2964 "source_info" : {
2965 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002966 "line" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002967 "column" : 12,
2968 "source_fragment" : "standard_metadata.egress_spec = hdr.packet_out.egress_port"
2969 }
2970 },
2971 {
2972 "op" : "remove_header",
2973 "parameters" : [
2974 {
2975 "type" : "header",
2976 "value" : "packet_out"
2977 }
2978 ],
2979 "source_info" : {
2980 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002981 "line" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002982 "column" : 12,
2983 "source_fragment" : "hdr.packet_out.setInvalid()"
2984 }
2985 },
2986 {
2987 "op" : "assign",
2988 "parameters" : [
2989 {
2990 "type" : "field",
2991 "value" : ["scalars", "fabric_metadata_t.is_controller_packet_out"]
2992 },
2993 {
2994 "type" : "expression",
2995 "value" : {
2996 "type" : "expression",
2997 "value" : {
2998 "op" : "b2d",
2999 "left" : null,
3000 "right" : {
3001 "type" : "bool",
3002 "value" : true
3003 }
3004 }
3005 }
3006 }
3007 ],
3008 "source_info" : {
3009 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003010 "line" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003011 "column" : 12,
3012 "source_fragment" : "fabric_metadata.is_controller_packet_out = true"
3013 }
3014 }
3015 ]
3016 },
3017 {
3018 "name" : "act_5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003019 "id" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003020 "runtime_data" : [],
3021 "primitives" : [
3022 {
3023 "op" : "assign",
3024 "parameters" : [
3025 {
3026 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003027 "value" : ["scalars", "fabric_metadata_t.eth_type"]
3028 },
3029 {
3030 "type" : "field",
3031 "value" : ["vlan_tag", "eth_type"]
3032 }
3033 ],
3034 "source_info" : {
3035 "filename" : "include/control/filtering.p4",
3036 "line" : 103,
3037 "column" : 12,
3038 "source_fragment" : "fabric_metadata.eth_type = hdr.vlan_tag.eth_type"
3039 }
3040 },
3041 {
3042 "op" : "assign",
3043 "parameters" : [
3044 {
3045 "type" : "field",
3046 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
3047 },
3048 {
3049 "type" : "field",
3050 "value" : ["vlan_tag", "vlan_id"]
3051 }
3052 ],
3053 "source_info" : {
3054 "filename" : "include/control/filtering.p4",
3055 "line" : 104,
3056 "column" : 12,
3057 "source_fragment" : "fabric_metadata.vlan_id = hdr.vlan_tag.vlan_id"
3058 }
3059 },
3060 {
3061 "op" : "assign",
3062 "parameters" : [
3063 {
3064 "type" : "field",
3065 "value" : ["scalars", "fabric_metadata_t.vlan_pri"]
3066 },
3067 {
3068 "type" : "field",
3069 "value" : ["vlan_tag", "pri"]
3070 }
3071 ],
3072 "source_info" : {
3073 "filename" : "include/control/filtering.p4",
3074 "line" : 105,
3075 "column" : 12,
3076 "source_fragment" : "fabric_metadata.vlan_pri = hdr.vlan_tag.pri"
3077 }
3078 },
3079 {
3080 "op" : "assign",
3081 "parameters" : [
3082 {
3083 "type" : "field",
3084 "value" : ["scalars", "fabric_metadata_t.vlan_cfi"]
3085 },
3086 {
3087 "type" : "field",
3088 "value" : ["vlan_tag", "cfi"]
3089 }
3090 ],
3091 "source_info" : {
3092 "filename" : "include/control/filtering.p4",
3093 "line" : 106,
3094 "column" : 12,
3095 "source_fragment" : "fabric_metadata.vlan_cfi = hdr.vlan_tag.cfi"
3096 }
3097 }
3098 ]
3099 },
3100 {
3101 "name" : "act_6",
3102 "id" : 40,
3103 "runtime_data" : [],
3104 "primitives" : [
3105 {
3106 "op" : "assign",
3107 "parameters" : [
3108 {
3109 "type" : "field",
3110 "value" : ["scalars", "fabric_metadata_t.mpls_ttl"]
3111 },
3112 {
3113 "type" : "hexstr",
3114 "value" : "0x41"
3115 }
3116 ],
3117 "source_info" : {
3118 "filename" : "include/control/filtering.p4",
3119 "line" : 113,
3120 "column" : 12,
3121 "source_fragment" : "fabric_metadata.mpls_ttl = DEFAULT_MPLS_TTL + 1"
3122 }
3123 }
3124 ]
3125 },
3126 {
3127 "name" : "act_7",
3128 "id" : 41,
3129 "runtime_data" : [],
3130 "primitives" : [
3131 {
3132 "op" : "assign",
3133 "parameters" : [
3134 {
3135 "type" : "field",
3136 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003137 },
3138 {
3139 "type" : "expression",
3140 "value" : {
3141 "type" : "expression",
3142 "value" : {
3143 "op" : "b2d",
3144 "left" : null,
3145 "right" : {
3146 "type" : "bool",
3147 "value" : true
3148 }
3149 }
3150 }
3151 }
3152 ]
3153 }
3154 ]
3155 },
3156 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003157 "name" : "act_8",
3158 "id" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003159 "runtime_data" : [],
3160 "primitives" : [
3161 {
3162 "op" : "assign",
3163 "parameters" : [
3164 {
3165 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003166 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003167 },
3168 {
3169 "type" : "expression",
3170 "value" : {
3171 "type" : "expression",
3172 "value" : {
3173 "op" : "b2d",
3174 "left" : null,
3175 "right" : {
3176 "type" : "bool",
3177 "value" : false
3178 }
3179 }
3180 }
3181 }
3182 ]
3183 }
3184 ]
3185 },
3186 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003187 "name" : "act_9",
3188 "id" : 43,
3189 "runtime_data" : [],
3190 "primitives" : [
3191 {
3192 "op" : "drop",
3193 "parameters" : [],
3194 "source_info" : {
3195 "filename" : "include/spgw.p4",
3196 "line" : 148,
3197 "column" : 16,
3198 "source_fragment" : "mark_to_drop()"
3199 }
3200 }
3201 ]
3202 },
3203 {
3204 "name" : "act_10",
3205 "id" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003206 "runtime_data" : [],
3207 "primitives" : [
3208 {
3209 "op" : "assign",
3210 "parameters" : [
3211 {
3212 "type" : "field",
3213 "value" : ["userMetadata.spgw", "direction"]
3214 },
3215 {
3216 "type" : "hexstr",
3217 "value" : "0x01"
3218 }
3219 ],
3220 "source_info" : {
3221 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003222 "line" : 137,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003223 "column" : 36,
3224 "source_fragment" : "2w1; ..."
3225 }
3226 }
3227 ]
3228 },
3229 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003230 "name" : "act_11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003231 "id" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003232 "runtime_data" : [],
3233 "primitives" : [
3234 {
3235 "op" : "assign",
3236 "parameters" : [
3237 {
3238 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003239 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003240 },
3241 {
3242 "type" : "expression",
3243 "value" : {
3244 "type" : "expression",
3245 "value" : {
3246 "op" : "b2d",
3247 "left" : null,
3248 "right" : {
3249 "type" : "bool",
3250 "value" : true
3251 }
3252 }
3253 }
3254 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003255 ]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003256 }
3257 ]
3258 },
3259 {
3260 "name" : "act_12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003261 "id" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003262 "runtime_data" : [],
3263 "primitives" : [
3264 {
3265 "op" : "assign",
3266 "parameters" : [
3267 {
3268 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003269 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003270 },
3271 {
3272 "type" : "expression",
3273 "value" : {
3274 "type" : "expression",
3275 "value" : {
3276 "op" : "b2d",
3277 "left" : null,
3278 "right" : {
3279 "type" : "bool",
3280 "value" : false
3281 }
3282 }
3283 }
3284 }
3285 ]
3286 }
3287 ]
3288 },
3289 {
3290 "name" : "act_13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003291 "id" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003292 "runtime_data" : [],
3293 "primitives" : [
3294 {
3295 "op" : "assign",
3296 "parameters" : [
3297 {
3298 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003299 "value" : ["userMetadata.spgw", "direction"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003300 },
3301 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003302 "type" : "hexstr",
3303 "value" : "0x02"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003304 }
3305 ],
3306 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003307 "filename" : "include/control/../define.p4",
3308 "line" : 138,
3309 "column" : 38,
3310 "source_fragment" : "2w2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003311 }
3312 }
3313 ]
3314 },
3315 {
3316 "name" : "act_14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003317 "id" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003318 "runtime_data" : [],
3319 "primitives" : [
3320 {
3321 "op" : "assign",
3322 "parameters" : [
3323 {
3324 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003325 "value" : ["userMetadata.spgw", "direction"]
3326 },
3327 {
3328 "type" : "hexstr",
3329 "value" : "0x00"
3330 }
3331 ],
3332 "source_info" : {
3333 "filename" : "include/control/../define.p4",
3334 "line" : 136,
3335 "column" : 37,
3336 "source_fragment" : "2w0; ..."
3337 }
3338 },
3339 {
3340 "op" : "assign",
3341 "parameters" : [
3342 {
3343 "type" : "field",
3344 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003345 },
3346 {
3347 "type" : "expression",
3348 "value" : {
3349 "type" : "expression",
3350 "value" : {
3351 "op" : "b2d",
3352 "left" : null,
3353 "right" : {
3354 "type" : "bool",
3355 "value" : true
3356 }
3357 }
3358 }
3359 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003360 ],
3361 "source_info" : {
3362 "filename" : "include/spgw.p4",
3363 "line" : 157,
3364 "column" : 12,
3365 "source_fragment" : "return"
3366 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003367 }
3368 ]
3369 },
3370 {
3371 "name" : "act_15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003372 "id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003373 "runtime_data" : [],
3374 "primitives" : [
3375 {
3376 "op" : "assign",
3377 "parameters" : [
3378 {
3379 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003380 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003381 },
3382 {
3383 "type" : "expression",
3384 "value" : {
3385 "type" : "expression",
3386 "value" : {
3387 "op" : "b2d",
3388 "left" : null,
3389 "right" : {
3390 "type" : "bool",
3391 "value" : false
3392 }
3393 }
3394 }
3395 }
3396 ]
3397 }
3398 ]
3399 },
3400 {
3401 "name" : "act_16",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003402 "id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003403 "runtime_data" : [],
3404 "primitives" : [
3405 {
3406 "op" : "assign",
3407 "parameters" : [
3408 {
3409 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003410 "value" : ["userMetadata.spgw", "ipv4_len"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003411 },
3412 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003413 "type" : "field",
3414 "value" : ["ipv4", "total_len"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003415 }
3416 ],
3417 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003418 "filename" : "include/spgw.p4",
3419 "line" : 174,
3420 "column" : 8,
3421 "source_fragment" : "fabric_meta.spgw.ipv4_len = ipv4.total_len"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003422 }
3423 }
3424 ]
3425 },
3426 {
3427 "name" : "act_17",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003428 "id" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003429 "runtime_data" : [],
3430 "primitives" : [
3431 {
3432 "op" : "assign",
3433 "parameters" : [
3434 {
3435 "type" : "field",
3436 "value" : ["scalars", "tmp_1"]
3437 },
3438 {
3439 "type" : "expression",
3440 "value" : {
3441 "type" : "expression",
3442 "value" : {
3443 "op" : "&",
3444 "left" : {
3445 "type" : "field",
3446 "value" : ["standard_metadata", "egress_spec"]
3447 },
3448 "right" : {
3449 "type" : "hexstr",
3450 "value" : "0xffffffff"
3451 }
3452 }
3453 }
3454 }
3455 ],
3456 "source_info" : {
3457 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003458 "line" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003459 "column" : 38,
3460 "source_fragment" : "(bit<32>)standard_metadata.egress_spec"
3461 }
3462 },
3463 {
3464 "op" : "count",
3465 "parameters" : [
3466 {
3467 "type" : "counter_array",
3468 "value" : "FabricIngress.port_counters_control.egress_port_counter"
3469 },
3470 {
3471 "type" : "field",
3472 "value" : ["scalars", "tmp_1"]
3473 }
3474 ],
3475 "source_info" : {
3476 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003477 "line" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003478 "column" : 12,
3479 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
3480 }
3481 }
3482 ]
3483 },
3484 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003485 "name" : "act_18",
3486 "id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003487 "runtime_data" : [],
3488 "primitives" : [
3489 {
3490 "op" : "assign",
3491 "parameters" : [
3492 {
3493 "type" : "field",
3494 "value" : ["scalars", "tmp_2"]
3495 },
3496 {
3497 "type" : "expression",
3498 "value" : {
3499 "type" : "expression",
3500 "value" : {
3501 "op" : "&",
3502 "left" : {
3503 "type" : "field",
3504 "value" : ["standard_metadata", "ingress_port"]
3505 },
3506 "right" : {
3507 "type" : "hexstr",
3508 "value" : "0xffffffff"
3509 }
3510 }
3511 }
3512 }
3513 ],
3514 "source_info" : {
3515 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003516 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003517 "column" : 39,
3518 "source_fragment" : "(bit<32>)standard_metadata.ingress_port"
3519 }
3520 },
3521 {
3522 "op" : "count",
3523 "parameters" : [
3524 {
3525 "type" : "counter_array",
3526 "value" : "FabricIngress.port_counters_control.ingress_port_counter"
3527 },
3528 {
3529 "type" : "field",
3530 "value" : ["scalars", "tmp_2"]
3531 }
3532 ],
3533 "source_info" : {
3534 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003535 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003536 "column" : 12,
3537 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
3538 }
3539 }
3540 ]
3541 },
3542 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003543 "name" : "nop",
3544 "id" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003545 "runtime_data" : [],
3546 "primitives" : []
3547 },
3548 {
Carmelo Casconefa421582018-09-13 10:05:57 -07003549 "name" : "nop",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003550 "id" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003551 "runtime_data" : [],
3552 "primitives" : []
3553 },
3554 {
3555 "name" : "nop",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003556 "id" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003557 "runtime_data" : [],
3558 "primitives" : []
3559 },
3560 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003561 "name" : "NoAction",
3562 "id" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003563 "runtime_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003564 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003565 },
3566 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003567 "name" : "NoAction",
3568 "id" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003569 "runtime_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003570 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003571 },
3572 {
3573 "name" : "FabricEgress.spgw_egress.gtpu_encap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003574 "id" : 58,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003575 "runtime_data" : [],
3576 "primitives" : [
3577 {
3578 "op" : "add_header",
3579 "parameters" : [
3580 {
3581 "type" : "header",
3582 "value" : "gtpu_ipv4"
3583 }
3584 ],
3585 "source_info" : {
3586 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003587 "line" : 190,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003588 "column" : 8,
3589 "source_fragment" : "gtpu_ipv4.setValid()"
3590 }
3591 },
3592 {
3593 "op" : "assign",
3594 "parameters" : [
3595 {
3596 "type" : "field",
3597 "value" : ["gtpu_ipv4", "version"]
3598 },
3599 {
3600 "type" : "hexstr",
3601 "value" : "0x04"
3602 }
3603 ],
3604 "source_info" : {
3605 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003606 "line" : 191,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003607 "column" : 8,
3608 "source_fragment" : "gtpu_ipv4.version = 4"
3609 }
3610 },
3611 {
3612 "op" : "assign",
3613 "parameters" : [
3614 {
3615 "type" : "field",
3616 "value" : ["gtpu_ipv4", "ihl"]
3617 },
3618 {
3619 "type" : "hexstr",
3620 "value" : "0x05"
3621 }
3622 ],
3623 "source_info" : {
3624 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003625 "line" : 119,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003626 "column" : 28,
3627 "source_fragment" : "5; ..."
3628 }
3629 },
3630 {
3631 "op" : "assign",
3632 "parameters" : [
3633 {
3634 "type" : "field",
3635 "value" : ["gtpu_ipv4", "dscp"]
3636 },
3637 {
3638 "type" : "hexstr",
3639 "value" : "0x00"
3640 }
3641 ],
3642 "source_info" : {
3643 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003644 "line" : 193,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003645 "column" : 8,
3646 "source_fragment" : "gtpu_ipv4.dscp = 0"
3647 }
3648 },
3649 {
3650 "op" : "assign",
3651 "parameters" : [
3652 {
3653 "type" : "field",
3654 "value" : ["gtpu_ipv4", "ecn"]
3655 },
3656 {
3657 "type" : "hexstr",
3658 "value" : "0x00"
3659 }
3660 ],
3661 "source_info" : {
3662 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003663 "line" : 194,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003664 "column" : 8,
3665 "source_fragment" : "gtpu_ipv4.ecn = 0"
3666 }
3667 },
3668 {
3669 "op" : "assign",
3670 "parameters" : [
3671 {
3672 "type" : "field",
3673 "value" : ["gtpu_ipv4", "total_len"]
3674 },
3675 {
3676 "type" : "expression",
3677 "value" : {
3678 "type" : "expression",
3679 "value" : {
3680 "op" : "&",
3681 "left" : {
3682 "type" : "expression",
3683 "value" : {
3684 "op" : "+",
3685 "left" : {
3686 "type" : "field",
3687 "value" : ["ipv4", "total_len"]
3688 },
3689 "right" : {
3690 "type" : "hexstr",
3691 "value" : "0x0024"
3692 }
3693 }
3694 },
3695 "right" : {
3696 "type" : "hexstr",
3697 "value" : "0xffff"
3698 }
3699 }
3700 }
3701 }
3702 ],
3703 "source_info" : {
3704 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003705 "line" : 195,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003706 "column" : 8,
3707 "source_fragment" : "gtpu_ipv4.total_len = ipv4.total_len ..."
3708 }
3709 },
3710 {
3711 "op" : "assign",
3712 "parameters" : [
3713 {
3714 "type" : "field",
3715 "value" : ["gtpu_ipv4", "identification"]
3716 },
3717 {
3718 "type" : "hexstr",
3719 "value" : "0x1513"
3720 }
3721 ],
3722 "source_info" : {
3723 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003724 "line" : 197,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003725 "column" : 8,
3726 "source_fragment" : "gtpu_ipv4.identification = 0x1513"
3727 }
3728 },
3729 {
3730 "op" : "assign",
3731 "parameters" : [
3732 {
3733 "type" : "field",
3734 "value" : ["gtpu_ipv4", "flags"]
3735 },
3736 {
3737 "type" : "hexstr",
3738 "value" : "0x00"
3739 }
3740 ],
3741 "source_info" : {
3742 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003743 "line" : 198,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003744 "column" : 8,
3745 "source_fragment" : "gtpu_ipv4.flags = 0"
3746 }
3747 },
3748 {
3749 "op" : "assign",
3750 "parameters" : [
3751 {
3752 "type" : "field",
3753 "value" : ["gtpu_ipv4", "frag_offset"]
3754 },
3755 {
3756 "type" : "hexstr",
3757 "value" : "0x0000"
3758 }
3759 ],
3760 "source_info" : {
3761 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003762 "line" : 199,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003763 "column" : 8,
3764 "source_fragment" : "gtpu_ipv4.frag_offset = 0"
3765 }
3766 },
3767 {
3768 "op" : "assign",
3769 "parameters" : [
3770 {
3771 "type" : "field",
3772 "value" : ["gtpu_ipv4", "ttl"]
3773 },
3774 {
3775 "type" : "hexstr",
3776 "value" : "0x40"
3777 }
3778 ],
3779 "source_info" : {
3780 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003781 "line" : 132,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003782 "column" : 32,
3783 "source_fragment" : "64; ..."
3784 }
3785 },
3786 {
3787 "op" : "assign",
3788 "parameters" : [
3789 {
3790 "type" : "field",
3791 "value" : ["gtpu_ipv4", "protocol"]
3792 },
3793 {
3794 "type" : "hexstr",
3795 "value" : "0x11"
3796 }
3797 ],
3798 "source_info" : {
3799 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003800 "line" : 116,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003801 "column" : 25,
3802 "source_fragment" : "17; ..."
3803 }
3804 },
3805 {
3806 "op" : "assign",
3807 "parameters" : [
3808 {
3809 "type" : "field",
3810 "value" : ["gtpu_ipv4", "dst_addr"]
3811 },
3812 {
3813 "type" : "field",
3814 "value" : ["userMetadata.spgw", "s1u_enb_addr"]
3815 }
3816 ],
3817 "source_info" : {
3818 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003819 "line" : 202,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003820 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003821 "source_fragment" : "gtpu_ipv4.dst_addr = fabric_meta.spgw.s1u_enb_addr"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003822 }
3823 },
3824 {
3825 "op" : "assign",
3826 "parameters" : [
3827 {
3828 "type" : "field",
3829 "value" : ["gtpu_ipv4", "src_addr"]
3830 },
3831 {
3832 "type" : "field",
3833 "value" : ["userMetadata.spgw", "s1u_sgw_addr"]
3834 }
3835 ],
3836 "source_info" : {
3837 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003838 "line" : 203,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003839 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003840 "source_fragment" : "gtpu_ipv4.src_addr = fabric_meta.spgw.s1u_sgw_addr"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003841 }
3842 },
3843 {
3844 "op" : "assign",
3845 "parameters" : [
3846 {
3847 "type" : "field",
3848 "value" : ["gtpu_ipv4", "hdr_checksum"]
3849 },
3850 {
3851 "type" : "hexstr",
3852 "value" : "0x0000"
3853 }
3854 ],
3855 "source_info" : {
3856 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003857 "line" : 204,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003858 "column" : 8,
3859 "source_fragment" : "gtpu_ipv4.hdr_checksum = 0"
3860 }
3861 },
3862 {
3863 "op" : "add_header",
3864 "parameters" : [
3865 {
3866 "type" : "header",
3867 "value" : "gtpu_udp"
3868 }
3869 ],
3870 "source_info" : {
3871 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003872 "line" : 206,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003873 "column" : 8,
3874 "source_fragment" : "gtpu_udp.setValid()"
3875 }
3876 },
3877 {
3878 "op" : "assign",
3879 "parameters" : [
3880 {
3881 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003882 "value" : ["gtpu_udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003883 },
3884 {
3885 "type" : "hexstr",
3886 "value" : "0x0868"
3887 }
3888 ],
3889 "source_info" : {
3890 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003891 "line" : 207,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003892 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003893 "source_fragment" : "gtpu_udp.sport = 2152"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003894 }
3895 },
3896 {
3897 "op" : "assign",
3898 "parameters" : [
3899 {
3900 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003901 "value" : ["gtpu_udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003902 },
3903 {
3904 "type" : "hexstr",
3905 "value" : "0x0868"
3906 }
3907 ],
3908 "source_info" : {
3909 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003910 "line" : 208,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003911 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003912 "source_fragment" : "gtpu_udp.dport = 2152"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003913 }
3914 },
3915 {
3916 "op" : "assign",
3917 "parameters" : [
3918 {
3919 "type" : "field",
3920 "value" : ["gtpu_udp", "len"]
3921 },
3922 {
3923 "type" : "expression",
3924 "value" : {
3925 "type" : "expression",
3926 "value" : {
3927 "op" : "&",
3928 "left" : {
3929 "type" : "expression",
3930 "value" : {
3931 "op" : "+",
3932 "left" : {
3933 "type" : "field",
3934 "value" : ["userMetadata.spgw", "ipv4_len"]
3935 },
3936 "right" : {
3937 "type" : "hexstr",
3938 "value" : "0x0010"
3939 }
3940 }
3941 },
3942 "right" : {
3943 "type" : "hexstr",
3944 "value" : "0xffff"
3945 }
3946 }
3947 }
3948 }
3949 ],
3950 "source_info" : {
3951 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003952 "line" : 209,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003953 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003954 "source_fragment" : "gtpu_udp.len = fabric_meta.spgw.ipv4_len ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003955 }
3956 },
3957 {
3958 "op" : "assign",
3959 "parameters" : [
3960 {
3961 "type" : "field",
3962 "value" : ["gtpu_udp", "checksum"]
3963 },
3964 {
3965 "type" : "hexstr",
3966 "value" : "0x0000"
3967 }
3968 ],
3969 "source_info" : {
3970 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003971 "line" : 211,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003972 "column" : 8,
3973 "source_fragment" : "gtpu_udp.checksum = 0"
3974 }
3975 },
3976 {
3977 "op" : "add_header",
3978 "parameters" : [
3979 {
3980 "type" : "header",
3981 "value" : "gtpu"
3982 }
3983 ],
3984 "source_info" : {
3985 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003986 "line" : 213,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003987 "column" : 8,
3988 "source_fragment" : "gtpu.setValid()"
3989 }
3990 },
3991 {
3992 "op" : "assign",
3993 "parameters" : [
3994 {
3995 "type" : "field",
3996 "value" : ["gtpu", "version"]
3997 },
3998 {
3999 "type" : "hexstr",
4000 "value" : "0x01"
4001 }
4002 ],
4003 "source_info" : {
4004 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004005 "line" : 214,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004006 "column" : 8,
4007 "source_fragment" : "gtpu.version = 0x01"
4008 }
4009 },
4010 {
4011 "op" : "assign",
4012 "parameters" : [
4013 {
4014 "type" : "field",
4015 "value" : ["gtpu", "pt"]
4016 },
4017 {
4018 "type" : "hexstr",
4019 "value" : "0x01"
4020 }
4021 ],
4022 "source_info" : {
4023 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004024 "line" : 215,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004025 "column" : 8,
4026 "source_fragment" : "gtpu.pt = 0x01"
4027 }
4028 },
4029 {
4030 "op" : "assign",
4031 "parameters" : [
4032 {
4033 "type" : "field",
4034 "value" : ["gtpu", "spare"]
4035 },
4036 {
4037 "type" : "hexstr",
4038 "value" : "0x00"
4039 }
4040 ],
4041 "source_info" : {
4042 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004043 "line" : 216,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004044 "column" : 8,
4045 "source_fragment" : "gtpu.spare = 0"
4046 }
4047 },
4048 {
4049 "op" : "assign",
4050 "parameters" : [
4051 {
4052 "type" : "field",
4053 "value" : ["gtpu", "ex_flag"]
4054 },
4055 {
4056 "type" : "hexstr",
4057 "value" : "0x00"
4058 }
4059 ],
4060 "source_info" : {
4061 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004062 "line" : 217,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004063 "column" : 8,
4064 "source_fragment" : "gtpu.ex_flag = 0"
4065 }
4066 },
4067 {
4068 "op" : "assign",
4069 "parameters" : [
4070 {
4071 "type" : "field",
4072 "value" : ["gtpu", "seq_flag"]
4073 },
4074 {
4075 "type" : "hexstr",
4076 "value" : "0x00"
4077 }
4078 ],
4079 "source_info" : {
4080 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004081 "line" : 218,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004082 "column" : 8,
4083 "source_fragment" : "gtpu.seq_flag = 0"
4084 }
4085 },
4086 {
4087 "op" : "assign",
4088 "parameters" : [
4089 {
4090 "type" : "field",
4091 "value" : ["gtpu", "npdu_flag"]
4092 },
4093 {
4094 "type" : "hexstr",
4095 "value" : "0x00"
4096 }
4097 ],
4098 "source_info" : {
4099 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004100 "line" : 219,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004101 "column" : 8,
4102 "source_fragment" : "gtpu.npdu_flag = 0"
4103 }
4104 },
4105 {
4106 "op" : "assign",
4107 "parameters" : [
4108 {
4109 "type" : "field",
4110 "value" : ["gtpu", "msgtype"]
4111 },
4112 {
4113 "type" : "hexstr",
4114 "value" : "0xff"
4115 }
4116 ],
4117 "source_info" : {
4118 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004119 "line" : 220,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004120 "column" : 8,
4121 "source_fragment" : "gtpu.msgtype = 0xff"
4122 }
4123 },
4124 {
4125 "op" : "assign",
4126 "parameters" : [
4127 {
4128 "type" : "field",
4129 "value" : ["gtpu", "msglen"]
4130 },
4131 {
4132 "type" : "field",
4133 "value" : ["userMetadata.spgw", "ipv4_len"]
4134 }
4135 ],
4136 "source_info" : {
4137 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004138 "line" : 221,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004139 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004140 "source_fragment" : "gtpu.msglen = fabric_meta.spgw.ipv4_len"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004141 }
4142 },
4143 {
4144 "op" : "assign",
4145 "parameters" : [
4146 {
4147 "type" : "field",
4148 "value" : ["gtpu", "teid"]
4149 },
4150 {
4151 "type" : "field",
4152 "value" : ["userMetadata.spgw", "teid"]
4153 }
4154 ],
4155 "source_info" : {
4156 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004157 "line" : 222,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004158 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004159 "source_fragment" : "gtpu.teid = fabric_meta.spgw.teid"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004160 }
4161 }
4162 ]
4163 },
4164 {
4165 "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004166 "id" : 59,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004167 "runtime_data" : [
4168 {
4169 "name" : "max_hop",
4170 "bitwidth" : 8
4171 },
4172 {
4173 "name" : "ins_cnt",
4174 "bitwidth" : 5
4175 },
4176 {
4177 "name" : "ins_mask0003",
4178 "bitwidth" : 4
4179 },
4180 {
4181 "name" : "ins_mask0407",
4182 "bitwidth" : 4
4183 }
4184 ],
4185 "primitives" : [
4186 {
4187 "op" : "add_header",
4188 "parameters" : [
4189 {
4190 "type" : "header",
4191 "value" : "intl4_shim"
4192 }
4193 ],
4194 "source_info" : {
4195 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004196 "line" : 32,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004197 "column" : 8,
4198 "source_fragment" : "hdr.intl4_shim.setValid()"
4199 }
4200 },
4201 {
4202 "op" : "assign",
4203 "parameters" : [
4204 {
4205 "type" : "field",
4206 "value" : ["intl4_shim", "int_type"]
4207 },
4208 {
4209 "type" : "hexstr",
4210 "value" : "0x01"
4211 }
4212 ],
4213 "source_info" : {
4214 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004215 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004216 "column" : 8,
4217 "source_fragment" : "hdr.intl4_shim.int_type = 1"
4218 }
4219 },
4220 {
4221 "op" : "assign",
4222 "parameters" : [
4223 {
4224 "type" : "field",
4225 "value" : ["intl4_shim", "len_words"]
4226 },
4227 {
4228 "type" : "hexstr",
4229 "value" : "0x04"
4230 }
4231 ],
4232 "source_info" : {
4233 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004234 "line" : 147,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004235 "column" : 36,
4236 "source_fragment" : "4; ..."
4237 }
4238 },
4239 {
4240 "op" : "add_header",
4241 "parameters" : [
4242 {
4243 "type" : "header",
4244 "value" : "int_header"
4245 }
4246 ],
4247 "source_info" : {
4248 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004249 "line" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004250 "column" : 8,
4251 "source_fragment" : "hdr.int_header.setValid()"
4252 }
4253 },
4254 {
4255 "op" : "assign",
4256 "parameters" : [
4257 {
4258 "type" : "field",
4259 "value" : ["int_header", "ver"]
4260 },
4261 {
4262 "type" : "hexstr",
4263 "value" : "0x00"
4264 }
4265 ],
4266 "source_info" : {
4267 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004268 "line" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004269 "column" : 8,
4270 "source_fragment" : "hdr.int_header.ver = 0"
4271 }
4272 },
4273 {
4274 "op" : "assign",
4275 "parameters" : [
4276 {
4277 "type" : "field",
4278 "value" : ["int_header", "rep"]
4279 },
4280 {
4281 "type" : "hexstr",
4282 "value" : "0x00"
4283 }
4284 ],
4285 "source_info" : {
4286 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004287 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004288 "column" : 8,
4289 "source_fragment" : "hdr.int_header.rep = 0"
4290 }
4291 },
4292 {
4293 "op" : "assign",
4294 "parameters" : [
4295 {
4296 "type" : "field",
4297 "value" : ["int_header", "c"]
4298 },
4299 {
4300 "type" : "hexstr",
4301 "value" : "0x00"
4302 }
4303 ],
4304 "source_info" : {
4305 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004306 "line" : 40,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004307 "column" : 8,
4308 "source_fragment" : "hdr.int_header.c = 0"
4309 }
4310 },
4311 {
4312 "op" : "assign",
4313 "parameters" : [
4314 {
4315 "type" : "field",
4316 "value" : ["int_header", "e"]
4317 },
4318 {
4319 "type" : "hexstr",
4320 "value" : "0x00"
4321 }
4322 ],
4323 "source_info" : {
4324 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004325 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004326 "column" : 8,
4327 "source_fragment" : "hdr.int_header.e = 0"
4328 }
4329 },
4330 {
4331 "op" : "assign",
4332 "parameters" : [
4333 {
4334 "type" : "field",
4335 "value" : ["int_header", "rsvd1"]
4336 },
4337 {
4338 "type" : "hexstr",
4339 "value" : "0x00"
4340 }
4341 ],
4342 "source_info" : {
4343 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004344 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004345 "column" : 8,
4346 "source_fragment" : "hdr.int_header.rsvd1 = 0"
4347 }
4348 },
4349 {
4350 "op" : "assign",
4351 "parameters" : [
4352 {
4353 "type" : "field",
4354 "value" : ["int_header", "ins_cnt"]
4355 },
4356 {
4357 "type" : "runtime_data",
4358 "value" : 1
4359 }
4360 ],
4361 "source_info" : {
4362 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004363 "line" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004364 "column" : 8,
4365 "source_fragment" : "hdr.int_header.ins_cnt = ins_cnt; ..."
4366 }
4367 },
4368 {
4369 "op" : "assign",
4370 "parameters" : [
4371 {
4372 "type" : "field",
4373 "value" : ["int_header", "max_hop_cnt"]
4374 },
4375 {
4376 "type" : "runtime_data",
4377 "value" : 0
4378 }
4379 ],
4380 "source_info" : {
4381 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004382 "line" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004383 "column" : 8,
4384 "source_fragment" : "hdr.int_header.max_hop_cnt = max_hop; ..."
4385 }
4386 },
4387 {
4388 "op" : "assign",
4389 "parameters" : [
4390 {
4391 "type" : "field",
4392 "value" : ["int_header", "total_hop_cnt"]
4393 },
4394 {
4395 "type" : "hexstr",
4396 "value" : "0x00"
4397 }
4398 ],
4399 "source_info" : {
4400 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004401 "line" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004402 "column" : 8,
4403 "source_fragment" : "hdr.int_header.total_hop_cnt = 0"
4404 }
4405 },
4406 {
4407 "op" : "assign",
4408 "parameters" : [
4409 {
4410 "type" : "field",
4411 "value" : ["int_header", "instruction_mask_0003"]
4412 },
4413 {
4414 "type" : "runtime_data",
4415 "value" : 2
4416 }
4417 ],
4418 "source_info" : {
4419 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004420 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004421 "column" : 8,
4422 "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
4423 }
4424 },
4425 {
4426 "op" : "assign",
4427 "parameters" : [
4428 {
4429 "type" : "field",
4430 "value" : ["int_header", "instruction_mask_0407"]
4431 },
4432 {
4433 "type" : "runtime_data",
4434 "value" : 3
4435 }
4436 ],
4437 "source_info" : {
4438 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004439 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004440 "column" : 8,
4441 "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
4442 }
4443 },
4444 {
4445 "op" : "assign",
4446 "parameters" : [
4447 {
4448 "type" : "field",
4449 "value" : ["int_header", "instruction_mask_0811"]
4450 },
4451 {
4452 "type" : "hexstr",
4453 "value" : "0x00"
4454 }
4455 ],
4456 "source_info" : {
4457 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004458 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004459 "column" : 8,
4460 "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
4461 }
4462 },
4463 {
4464 "op" : "assign",
4465 "parameters" : [
4466 {
4467 "type" : "field",
4468 "value" : ["int_header", "instruction_mask_1215"]
4469 },
4470 {
4471 "type" : "hexstr",
4472 "value" : "0x00"
4473 }
4474 ],
4475 "source_info" : {
4476 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004477 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004478 "column" : 8,
4479 "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
4480 }
4481 },
4482 {
4483 "op" : "add_header",
4484 "parameters" : [
4485 {
4486 "type" : "header",
4487 "value" : "intl4_tail"
4488 }
4489 ],
4490 "source_info" : {
4491 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004492 "line" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004493 "column" : 8,
4494 "source_fragment" : "hdr.intl4_tail.setValid()"
4495 }
4496 },
4497 {
4498 "op" : "assign",
4499 "parameters" : [
4500 {
4501 "type" : "field",
4502 "value" : ["intl4_tail", "next_proto"]
4503 },
4504 {
4505 "type" : "field",
4506 "value" : ["ipv4", "protocol"]
4507 }
4508 ],
4509 "source_info" : {
4510 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004511 "line" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004512 "column" : 8,
4513 "source_fragment" : "hdr.intl4_tail.next_proto = hdr.ipv4.protocol"
4514 }
4515 },
4516 {
4517 "op" : "assign",
4518 "parameters" : [
4519 {
4520 "type" : "field",
4521 "value" : ["intl4_tail", "dest_port"]
4522 },
4523 {
4524 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004525 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004526 }
4527 ],
4528 "source_info" : {
4529 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004530 "line" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004531 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004532 "source_fragment" : "hdr.intl4_tail.dest_port = fabric_metadata.l4_dport"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004533 }
4534 },
4535 {
4536 "op" : "assign",
4537 "parameters" : [
4538 {
4539 "type" : "field",
4540 "value" : ["intl4_tail", "dscp"]
4541 },
4542 {
4543 "type" : "field",
4544 "value" : ["ipv4", "dscp"]
4545 }
4546 ],
4547 "source_info" : {
4548 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004549 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004550 "column" : 8,
4551 "source_fragment" : "hdr.intl4_tail.dscp = hdr.ipv4.dscp"
4552 }
4553 },
4554 {
4555 "op" : "assign",
4556 "parameters" : [
4557 {
4558 "type" : "field",
4559 "value" : ["ipv4", "total_len"]
4560 },
4561 {
4562 "type" : "expression",
4563 "value" : {
4564 "type" : "expression",
4565 "value" : {
4566 "op" : "&",
4567 "left" : {
4568 "type" : "expression",
4569 "value" : {
4570 "op" : "+",
4571 "left" : {
4572 "type" : "field",
4573 "value" : ["ipv4", "total_len"]
4574 },
4575 "right" : {
4576 "type" : "hexstr",
4577 "value" : "0x0010"
4578 }
4579 }
4580 },
4581 "right" : {
4582 "type" : "hexstr",
4583 "value" : "0xffff"
4584 }
4585 }
4586 }
4587 }
4588 ],
4589 "source_info" : {
4590 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004591 "line" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004592 "column" : 8,
4593 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + INT_HEADER_LEN_BYTES"
4594 }
4595 },
4596 {
4597 "op" : "assign",
4598 "parameters" : [
4599 {
4600 "type" : "field",
4601 "value" : ["udp", "len"]
4602 },
4603 {
4604 "type" : "expression",
4605 "value" : {
4606 "type" : "expression",
4607 "value" : {
4608 "op" : "&",
4609 "left" : {
4610 "type" : "expression",
4611 "value" : {
4612 "op" : "+",
4613 "left" : {
4614 "type" : "field",
4615 "value" : ["udp", "len"]
4616 },
4617 "right" : {
4618 "type" : "hexstr",
4619 "value" : "0x0010"
4620 }
4621 }
4622 },
4623 "right" : {
4624 "type" : "hexstr",
4625 "value" : "0xffff"
4626 }
4627 }
4628 }
4629 }
4630 ],
4631 "source_info" : {
4632 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004633 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004634 "column" : 8,
4635 "source_fragment" : "hdr.udp.len = hdr.udp.len + INT_HEADER_LEN_BYTES"
4636 }
4637 },
4638 {
4639 "op" : "assign",
4640 "parameters" : [
4641 {
4642 "type" : "field",
4643 "value" : ["ipv4", "dscp"]
4644 },
4645 {
4646 "type" : "hexstr",
4647 "value" : "0x01"
4648 }
4649 ],
4650 "source_info" : {
4651 "filename" : "include/control/../define.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004652 "line" : 143,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004653 "column" : 24,
4654 "source_fragment" : "0x1; ..."
4655 }
4656 }
4657 ]
4658 },
4659 {
4660 "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004661 "id" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004662 "runtime_data" : [
4663 {
4664 "name" : "switch_id",
4665 "bitwidth" : 32
4666 }
4667 ],
4668 "primitives" : [
4669 {
4670 "op" : "assign",
4671 "parameters" : [
4672 {
4673 "type" : "field",
4674 "value" : ["userMetadata.int_meta", "transit"]
4675 },
4676 {
4677 "type" : "expression",
4678 "value" : {
4679 "type" : "expression",
4680 "value" : {
4681 "op" : "b2d",
4682 "left" : null,
4683 "right" : {
4684 "type" : "bool",
4685 "value" : true
4686 }
4687 }
4688 }
4689 }
4690 ],
4691 "source_info" : {
4692 "filename" : "include/int/int_transit.p4",
4693 "line" : 26,
4694 "column" : 8,
4695 "source_fragment" : "fmeta.int_meta.transit = true"
4696 }
4697 },
4698 {
4699 "op" : "assign",
4700 "parameters" : [
4701 {
4702 "type" : "field",
4703 "value" : ["userMetadata.int_meta", "switch_id"]
4704 },
4705 {
4706 "type" : "runtime_data",
4707 "value" : 0
4708 }
4709 ],
4710 "source_info" : {
4711 "filename" : "include/int/int_transit.p4",
4712 "line" : 31,
4713 "column" : 8,
4714 "source_fragment" : "fmeta.int_meta.switch_id = switch_id"
4715 }
4716 }
4717 ]
4718 },
4719 {
4720 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004721 "id" : 61,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004722 "runtime_data" : [],
4723 "primitives" : []
4724 },
4725 {
4726 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004727 "id" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004728 "runtime_data" : [],
4729 "primitives" : [
4730 {
4731 "op" : "add_header",
4732 "parameters" : [
4733 {
4734 "type" : "header",
4735 "value" : "int_q_occupancy"
4736 }
4737 ],
4738 "source_info" : {
4739 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004740 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004741 "column" : 8,
4742 "source_fragment" : "hdr.int_q_occupancy.setValid()"
4743 }
4744 },
4745 {
4746 "op" : "assign",
4747 "parameters" : [
4748 {
4749 "type" : "field",
4750 "value" : ["int_q_occupancy", "q_id"]
4751 },
4752 {
4753 "type" : "hexstr",
4754 "value" : "0x00"
4755 }
4756 ],
4757 "source_info" : {
4758 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004759 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004760 "column" : 8,
4761 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
4762 }
4763 },
4764 {
4765 "op" : "assign",
4766 "parameters" : [
4767 {
4768 "type" : "field",
4769 "value" : ["int_q_occupancy", "q_occupancy"]
4770 },
4771 {
4772 "type" : "expression",
4773 "value" : {
4774 "type" : "expression",
4775 "value" : {
4776 "op" : "&",
4777 "left" : {
4778 "type" : "field",
4779 "value" : ["standard_metadata", "deq_qdepth"]
4780 },
4781 "right" : {
4782 "type" : "hexstr",
4783 "value" : "0xffffff"
4784 }
4785 }
4786 }
4787 }
4788 ],
4789 "source_info" : {
4790 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004791 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004792 "column" : 8,
4793 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
4794 }
4795 },
4796 {
4797 "op" : "assign",
4798 "parameters" : [
4799 {
4800 "type" : "field",
4801 "value" : ["userMetadata.int_meta", "new_words"]
4802 },
4803 {
4804 "type" : "expression",
4805 "value" : {
4806 "type" : "expression",
4807 "value" : {
4808 "op" : "&",
4809 "left" : {
4810 "type" : "expression",
4811 "value" : {
4812 "op" : "+",
4813 "left" : {
4814 "type" : "field",
4815 "value" : ["userMetadata.int_meta", "new_words"]
4816 },
4817 "right" : {
4818 "type" : "hexstr",
4819 "value" : "0x01"
4820 }
4821 }
4822 },
4823 "right" : {
4824 "type" : "hexstr",
4825 "value" : "0xff"
4826 }
4827 }
4828 }
4829 }
4830 ],
4831 "source_info" : {
4832 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004833 "line" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004834 "column" : 8,
4835 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
4836 }
4837 },
4838 {
4839 "op" : "assign",
4840 "parameters" : [
4841 {
4842 "type" : "field",
4843 "value" : ["userMetadata.int_meta", "new_bytes"]
4844 },
4845 {
4846 "type" : "expression",
4847 "value" : {
4848 "type" : "expression",
4849 "value" : {
4850 "op" : "&",
4851 "left" : {
4852 "type" : "expression",
4853 "value" : {
4854 "op" : "+",
4855 "left" : {
4856 "type" : "field",
4857 "value" : ["userMetadata.int_meta", "new_bytes"]
4858 },
4859 "right" : {
4860 "type" : "hexstr",
4861 "value" : "0x0004"
4862 }
4863 }
4864 },
4865 "right" : {
4866 "type" : "hexstr",
4867 "value" : "0xffff"
4868 }
4869 }
4870 }
4871 }
4872 ],
4873 "source_info" : {
4874 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004875 "line" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004876 "column" : 8,
4877 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
4878 }
4879 }
4880 ]
4881 },
4882 {
4883 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004884 "id" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004885 "runtime_data" : [],
4886 "primitives" : [
4887 {
4888 "op" : "add_header",
4889 "parameters" : [
4890 {
4891 "type" : "header",
4892 "value" : "int_hop_latency"
4893 }
4894 ],
4895 "source_info" : {
4896 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004897 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004898 "column" : 8,
4899 "source_fragment" : "hdr.int_hop_latency.setValid()"
4900 }
4901 },
4902 {
4903 "op" : "assign",
4904 "parameters" : [
4905 {
4906 "type" : "field",
4907 "value" : ["int_hop_latency", "hop_latency"]
4908 },
4909 {
4910 "type" : "field",
4911 "value" : ["standard_metadata", "deq_timedelta"]
4912 }
4913 ],
4914 "source_info" : {
4915 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004916 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004917 "column" : 8,
4918 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
4919 }
4920 },
4921 {
4922 "op" : "assign",
4923 "parameters" : [
4924 {
4925 "type" : "field",
4926 "value" : ["userMetadata.int_meta", "new_words"]
4927 },
4928 {
4929 "type" : "expression",
4930 "value" : {
4931 "type" : "expression",
4932 "value" : {
4933 "op" : "&",
4934 "left" : {
4935 "type" : "expression",
4936 "value" : {
4937 "op" : "+",
4938 "left" : {
4939 "type" : "field",
4940 "value" : ["userMetadata.int_meta", "new_words"]
4941 },
4942 "right" : {
4943 "type" : "hexstr",
4944 "value" : "0x01"
4945 }
4946 }
4947 },
4948 "right" : {
4949 "type" : "hexstr",
4950 "value" : "0xff"
4951 }
4952 }
4953 }
4954 }
4955 ],
4956 "source_info" : {
4957 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004958 "line" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004959 "column" : 8,
4960 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
4961 }
4962 },
4963 {
4964 "op" : "assign",
4965 "parameters" : [
4966 {
4967 "type" : "field",
4968 "value" : ["userMetadata.int_meta", "new_bytes"]
4969 },
4970 {
4971 "type" : "expression",
4972 "value" : {
4973 "type" : "expression",
4974 "value" : {
4975 "op" : "&",
4976 "left" : {
4977 "type" : "expression",
4978 "value" : {
4979 "op" : "+",
4980 "left" : {
4981 "type" : "field",
4982 "value" : ["userMetadata.int_meta", "new_bytes"]
4983 },
4984 "right" : {
4985 "type" : "hexstr",
4986 "value" : "0x0004"
4987 }
4988 }
4989 },
4990 "right" : {
4991 "type" : "hexstr",
4992 "value" : "0xffff"
4993 }
4994 }
4995 }
4996 }
4997 ],
4998 "source_info" : {
4999 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005000 "line" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005001 "column" : 8,
5002 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
5003 }
5004 }
5005 ]
5006 },
5007 {
5008 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005009 "id" : 64,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005010 "runtime_data" : [],
5011 "primitives" : [
5012 {
5013 "op" : "add_header",
5014 "parameters" : [
5015 {
5016 "type" : "header",
5017 "value" : "int_q_occupancy"
5018 }
5019 ],
5020 "source_info" : {
5021 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005022 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005023 "column" : 8,
5024 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5025 }
5026 },
5027 {
5028 "op" : "assign",
5029 "parameters" : [
5030 {
5031 "type" : "field",
5032 "value" : ["int_q_occupancy", "q_id"]
5033 },
5034 {
5035 "type" : "hexstr",
5036 "value" : "0x00"
5037 }
5038 ],
5039 "source_info" : {
5040 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005041 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005042 "column" : 8,
5043 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5044 }
5045 },
5046 {
5047 "op" : "assign",
5048 "parameters" : [
5049 {
5050 "type" : "field",
5051 "value" : ["int_q_occupancy", "q_occupancy"]
5052 },
5053 {
5054 "type" : "expression",
5055 "value" : {
5056 "type" : "expression",
5057 "value" : {
5058 "op" : "&",
5059 "left" : {
5060 "type" : "field",
5061 "value" : ["standard_metadata", "deq_qdepth"]
5062 },
5063 "right" : {
5064 "type" : "hexstr",
5065 "value" : "0xffffff"
5066 }
5067 }
5068 }
5069 }
5070 ],
5071 "source_info" : {
5072 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005073 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005074 "column" : 8,
5075 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5076 }
5077 },
5078 {
5079 "op" : "add_header",
5080 "parameters" : [
5081 {
5082 "type" : "header",
5083 "value" : "int_hop_latency"
5084 }
5085 ],
5086 "source_info" : {
5087 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005088 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005089 "column" : 8,
5090 "source_fragment" : "hdr.int_hop_latency.setValid()"
5091 }
5092 },
5093 {
5094 "op" : "assign",
5095 "parameters" : [
5096 {
5097 "type" : "field",
5098 "value" : ["int_hop_latency", "hop_latency"]
5099 },
5100 {
5101 "type" : "field",
5102 "value" : ["standard_metadata", "deq_timedelta"]
5103 }
5104 ],
5105 "source_info" : {
5106 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005107 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005108 "column" : 8,
5109 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5110 }
5111 },
5112 {
5113 "op" : "assign",
5114 "parameters" : [
5115 {
5116 "type" : "field",
5117 "value" : ["userMetadata.int_meta", "new_words"]
5118 },
5119 {
5120 "type" : "expression",
5121 "value" : {
5122 "type" : "expression",
5123 "value" : {
5124 "op" : "&",
5125 "left" : {
5126 "type" : "expression",
5127 "value" : {
5128 "op" : "+",
5129 "left" : {
5130 "type" : "field",
5131 "value" : ["userMetadata.int_meta", "new_words"]
5132 },
5133 "right" : {
5134 "type" : "hexstr",
5135 "value" : "0x02"
5136 }
5137 }
5138 },
5139 "right" : {
5140 "type" : "hexstr",
5141 "value" : "0xff"
5142 }
5143 }
5144 }
5145 }
5146 ],
5147 "source_info" : {
5148 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005149 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005150 "column" : 8,
5151 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
5152 }
5153 },
5154 {
5155 "op" : "assign",
5156 "parameters" : [
5157 {
5158 "type" : "field",
5159 "value" : ["userMetadata.int_meta", "new_bytes"]
5160 },
5161 {
5162 "type" : "expression",
5163 "value" : {
5164 "type" : "expression",
5165 "value" : {
5166 "op" : "&",
5167 "left" : {
5168 "type" : "expression",
5169 "value" : {
5170 "op" : "+",
5171 "left" : {
5172 "type" : "field",
5173 "value" : ["userMetadata.int_meta", "new_bytes"]
5174 },
5175 "right" : {
5176 "type" : "hexstr",
5177 "value" : "0x0008"
5178 }
5179 }
5180 },
5181 "right" : {
5182 "type" : "hexstr",
5183 "value" : "0xffff"
5184 }
5185 }
5186 }
5187 }
5188 ],
5189 "source_info" : {
5190 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005191 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005192 "column" : 8,
5193 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
5194 }
5195 }
5196 ]
5197 },
5198 {
5199 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005200 "id" : 65,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005201 "runtime_data" : [],
5202 "primitives" : [
5203 {
5204 "op" : "add_header",
5205 "parameters" : [
5206 {
5207 "type" : "header",
5208 "value" : "int_port_ids"
5209 }
5210 ],
5211 "source_info" : {
5212 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005213 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005214 "column" : 8,
5215 "source_fragment" : "hdr.int_port_ids.setValid()"
5216 }
5217 },
5218 {
5219 "op" : "assign",
5220 "parameters" : [
5221 {
5222 "type" : "field",
5223 "value" : ["int_port_ids", "ingress_port_id"]
5224 },
5225 {
5226 "type" : "expression",
5227 "value" : {
5228 "type" : "expression",
5229 "value" : {
5230 "op" : "&",
5231 "left" : {
5232 "type" : "field",
5233 "value" : ["standard_metadata", "ingress_port"]
5234 },
5235 "right" : {
5236 "type" : "hexstr",
5237 "value" : "0xffff"
5238 }
5239 }
5240 }
5241 }
5242 ],
5243 "source_info" : {
5244 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005245 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005246 "column" : 8,
5247 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5248 }
5249 },
5250 {
5251 "op" : "assign",
5252 "parameters" : [
5253 {
5254 "type" : "field",
5255 "value" : ["int_port_ids", "egress_port_id"]
5256 },
5257 {
5258 "type" : "expression",
5259 "value" : {
5260 "type" : "expression",
5261 "value" : {
5262 "op" : "&",
5263 "left" : {
5264 "type" : "field",
5265 "value" : ["standard_metadata", "egress_port"]
5266 },
5267 "right" : {
5268 "type" : "hexstr",
5269 "value" : "0xffff"
5270 }
5271 }
5272 }
5273 }
5274 ],
5275 "source_info" : {
5276 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005277 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005278 "column" : 8,
5279 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5280 }
5281 },
5282 {
5283 "op" : "assign",
5284 "parameters" : [
5285 {
5286 "type" : "field",
5287 "value" : ["userMetadata.int_meta", "new_words"]
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" : ["userMetadata.int_meta", "new_words"]
5302 },
5303 "right" : {
5304 "type" : "hexstr",
5305 "value" : "0x01"
5306 }
5307 }
5308 },
5309 "right" : {
5310 "type" : "hexstr",
5311 "value" : "0xff"
5312 }
5313 }
5314 }
5315 }
5316 ],
5317 "source_info" : {
5318 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005319 "line" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005320 "column" : 8,
5321 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
5322 }
5323 },
5324 {
5325 "op" : "assign",
5326 "parameters" : [
5327 {
5328 "type" : "field",
5329 "value" : ["userMetadata.int_meta", "new_bytes"]
5330 },
5331 {
5332 "type" : "expression",
5333 "value" : {
5334 "type" : "expression",
5335 "value" : {
5336 "op" : "&",
5337 "left" : {
5338 "type" : "expression",
5339 "value" : {
5340 "op" : "+",
5341 "left" : {
5342 "type" : "field",
5343 "value" : ["userMetadata.int_meta", "new_bytes"]
5344 },
5345 "right" : {
5346 "type" : "hexstr",
5347 "value" : "0x0004"
5348 }
5349 }
5350 },
5351 "right" : {
5352 "type" : "hexstr",
5353 "value" : "0xffff"
5354 }
5355 }
5356 }
5357 }
5358 ],
5359 "source_info" : {
5360 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005361 "line" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005362 "column" : 8,
5363 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
5364 }
5365 }
5366 ]
5367 },
5368 {
5369 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005370 "id" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005371 "runtime_data" : [],
5372 "primitives" : [
5373 {
5374 "op" : "add_header",
5375 "parameters" : [
5376 {
5377 "type" : "header",
5378 "value" : "int_q_occupancy"
5379 }
5380 ],
5381 "source_info" : {
5382 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005383 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005384 "column" : 8,
5385 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5386 }
5387 },
5388 {
5389 "op" : "assign",
5390 "parameters" : [
5391 {
5392 "type" : "field",
5393 "value" : ["int_q_occupancy", "q_id"]
5394 },
5395 {
5396 "type" : "hexstr",
5397 "value" : "0x00"
5398 }
5399 ],
5400 "source_info" : {
5401 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005402 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005403 "column" : 8,
5404 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5405 }
5406 },
5407 {
5408 "op" : "assign",
5409 "parameters" : [
5410 {
5411 "type" : "field",
5412 "value" : ["int_q_occupancy", "q_occupancy"]
5413 },
5414 {
5415 "type" : "expression",
5416 "value" : {
5417 "type" : "expression",
5418 "value" : {
5419 "op" : "&",
5420 "left" : {
5421 "type" : "field",
5422 "value" : ["standard_metadata", "deq_qdepth"]
5423 },
5424 "right" : {
5425 "type" : "hexstr",
5426 "value" : "0xffffff"
5427 }
5428 }
5429 }
5430 }
5431 ],
5432 "source_info" : {
5433 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005434 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005435 "column" : 8,
5436 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5437 }
5438 },
5439 {
5440 "op" : "add_header",
5441 "parameters" : [
5442 {
5443 "type" : "header",
5444 "value" : "int_port_ids"
5445 }
5446 ],
5447 "source_info" : {
5448 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005449 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005450 "column" : 8,
5451 "source_fragment" : "hdr.int_port_ids.setValid()"
5452 }
5453 },
5454 {
5455 "op" : "assign",
5456 "parameters" : [
5457 {
5458 "type" : "field",
5459 "value" : ["int_port_ids", "ingress_port_id"]
5460 },
5461 {
5462 "type" : "expression",
5463 "value" : {
5464 "type" : "expression",
5465 "value" : {
5466 "op" : "&",
5467 "left" : {
5468 "type" : "field",
5469 "value" : ["standard_metadata", "ingress_port"]
5470 },
5471 "right" : {
5472 "type" : "hexstr",
5473 "value" : "0xffff"
5474 }
5475 }
5476 }
5477 }
5478 ],
5479 "source_info" : {
5480 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005481 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005482 "column" : 8,
5483 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5484 }
5485 },
5486 {
5487 "op" : "assign",
5488 "parameters" : [
5489 {
5490 "type" : "field",
5491 "value" : ["int_port_ids", "egress_port_id"]
5492 },
5493 {
5494 "type" : "expression",
5495 "value" : {
5496 "type" : "expression",
5497 "value" : {
5498 "op" : "&",
5499 "left" : {
5500 "type" : "field",
5501 "value" : ["standard_metadata", "egress_port"]
5502 },
5503 "right" : {
5504 "type" : "hexstr",
5505 "value" : "0xffff"
5506 }
5507 }
5508 }
5509 }
5510 ],
5511 "source_info" : {
5512 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005513 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005514 "column" : 8,
5515 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5516 }
5517 },
5518 {
5519 "op" : "assign",
5520 "parameters" : [
5521 {
5522 "type" : "field",
5523 "value" : ["userMetadata.int_meta", "new_words"]
5524 },
5525 {
5526 "type" : "expression",
5527 "value" : {
5528 "type" : "expression",
5529 "value" : {
5530 "op" : "&",
5531 "left" : {
5532 "type" : "expression",
5533 "value" : {
5534 "op" : "+",
5535 "left" : {
5536 "type" : "field",
5537 "value" : ["userMetadata.int_meta", "new_words"]
5538 },
5539 "right" : {
5540 "type" : "hexstr",
5541 "value" : "0x02"
5542 }
5543 }
5544 },
5545 "right" : {
5546 "type" : "hexstr",
5547 "value" : "0xff"
5548 }
5549 }
5550 }
5551 }
5552 ],
5553 "source_info" : {
5554 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005555 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005556 "column" : 8,
5557 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
5558 }
5559 },
5560 {
5561 "op" : "assign",
5562 "parameters" : [
5563 {
5564 "type" : "field",
5565 "value" : ["userMetadata.int_meta", "new_bytes"]
5566 },
5567 {
5568 "type" : "expression",
5569 "value" : {
5570 "type" : "expression",
5571 "value" : {
5572 "op" : "&",
5573 "left" : {
5574 "type" : "expression",
5575 "value" : {
5576 "op" : "+",
5577 "left" : {
5578 "type" : "field",
5579 "value" : ["userMetadata.int_meta", "new_bytes"]
5580 },
5581 "right" : {
5582 "type" : "hexstr",
5583 "value" : "0x0008"
5584 }
5585 }
5586 },
5587 "right" : {
5588 "type" : "hexstr",
5589 "value" : "0xffff"
5590 }
5591 }
5592 }
5593 }
5594 ],
5595 "source_info" : {
5596 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005597 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005598 "column" : 8,
5599 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
5600 }
5601 }
5602 ]
5603 },
5604 {
5605 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005606 "id" : 67,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005607 "runtime_data" : [],
5608 "primitives" : [
5609 {
5610 "op" : "add_header",
5611 "parameters" : [
5612 {
5613 "type" : "header",
5614 "value" : "int_hop_latency"
5615 }
5616 ],
5617 "source_info" : {
5618 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005619 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005620 "column" : 8,
5621 "source_fragment" : "hdr.int_hop_latency.setValid()"
5622 }
5623 },
5624 {
5625 "op" : "assign",
5626 "parameters" : [
5627 {
5628 "type" : "field",
5629 "value" : ["int_hop_latency", "hop_latency"]
5630 },
5631 {
5632 "type" : "field",
5633 "value" : ["standard_metadata", "deq_timedelta"]
5634 }
5635 ],
5636 "source_info" : {
5637 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005638 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005639 "column" : 8,
5640 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5641 }
5642 },
5643 {
5644 "op" : "add_header",
5645 "parameters" : [
5646 {
5647 "type" : "header",
5648 "value" : "int_port_ids"
5649 }
5650 ],
5651 "source_info" : {
5652 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005653 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005654 "column" : 8,
5655 "source_fragment" : "hdr.int_port_ids.setValid()"
5656 }
5657 },
5658 {
5659 "op" : "assign",
5660 "parameters" : [
5661 {
5662 "type" : "field",
5663 "value" : ["int_port_ids", "ingress_port_id"]
5664 },
5665 {
5666 "type" : "expression",
5667 "value" : {
5668 "type" : "expression",
5669 "value" : {
5670 "op" : "&",
5671 "left" : {
5672 "type" : "field",
5673 "value" : ["standard_metadata", "ingress_port"]
5674 },
5675 "right" : {
5676 "type" : "hexstr",
5677 "value" : "0xffff"
5678 }
5679 }
5680 }
5681 }
5682 ],
5683 "source_info" : {
5684 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005685 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005686 "column" : 8,
5687 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5688 }
5689 },
5690 {
5691 "op" : "assign",
5692 "parameters" : [
5693 {
5694 "type" : "field",
5695 "value" : ["int_port_ids", "egress_port_id"]
5696 },
5697 {
5698 "type" : "expression",
5699 "value" : {
5700 "type" : "expression",
5701 "value" : {
5702 "op" : "&",
5703 "left" : {
5704 "type" : "field",
5705 "value" : ["standard_metadata", "egress_port"]
5706 },
5707 "right" : {
5708 "type" : "hexstr",
5709 "value" : "0xffff"
5710 }
5711 }
5712 }
5713 }
5714 ],
5715 "source_info" : {
5716 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005717 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005718 "column" : 8,
5719 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5720 }
5721 },
5722 {
5723 "op" : "assign",
5724 "parameters" : [
5725 {
5726 "type" : "field",
5727 "value" : ["userMetadata.int_meta", "new_words"]
5728 },
5729 {
5730 "type" : "expression",
5731 "value" : {
5732 "type" : "expression",
5733 "value" : {
5734 "op" : "&",
5735 "left" : {
5736 "type" : "expression",
5737 "value" : {
5738 "op" : "+",
5739 "left" : {
5740 "type" : "field",
5741 "value" : ["userMetadata.int_meta", "new_words"]
5742 },
5743 "right" : {
5744 "type" : "hexstr",
5745 "value" : "0x02"
5746 }
5747 }
5748 },
5749 "right" : {
5750 "type" : "hexstr",
5751 "value" : "0xff"
5752 }
5753 }
5754 }
5755 }
5756 ],
5757 "source_info" : {
5758 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005759 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005760 "column" : 8,
5761 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
5762 }
5763 },
5764 {
5765 "op" : "assign",
5766 "parameters" : [
5767 {
5768 "type" : "field",
5769 "value" : ["userMetadata.int_meta", "new_bytes"]
5770 },
5771 {
5772 "type" : "expression",
5773 "value" : {
5774 "type" : "expression",
5775 "value" : {
5776 "op" : "&",
5777 "left" : {
5778 "type" : "expression",
5779 "value" : {
5780 "op" : "+",
5781 "left" : {
5782 "type" : "field",
5783 "value" : ["userMetadata.int_meta", "new_bytes"]
5784 },
5785 "right" : {
5786 "type" : "hexstr",
5787 "value" : "0x0008"
5788 }
5789 }
5790 },
5791 "right" : {
5792 "type" : "hexstr",
5793 "value" : "0xffff"
5794 }
5795 }
5796 }
5797 }
5798 ],
5799 "source_info" : {
5800 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005801 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005802 "column" : 8,
5803 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
5804 }
5805 }
5806 ]
5807 },
5808 {
5809 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005810 "id" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005811 "runtime_data" : [],
5812 "primitives" : [
5813 {
5814 "op" : "add_header",
5815 "parameters" : [
5816 {
5817 "type" : "header",
5818 "value" : "int_q_occupancy"
5819 }
5820 ],
5821 "source_info" : {
5822 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005823 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005824 "column" : 8,
5825 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5826 }
5827 },
5828 {
5829 "op" : "assign",
5830 "parameters" : [
5831 {
5832 "type" : "field",
5833 "value" : ["int_q_occupancy", "q_id"]
5834 },
5835 {
5836 "type" : "hexstr",
5837 "value" : "0x00"
5838 }
5839 ],
5840 "source_info" : {
5841 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005842 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005843 "column" : 8,
5844 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5845 }
5846 },
5847 {
5848 "op" : "assign",
5849 "parameters" : [
5850 {
5851 "type" : "field",
5852 "value" : ["int_q_occupancy", "q_occupancy"]
5853 },
5854 {
5855 "type" : "expression",
5856 "value" : {
5857 "type" : "expression",
5858 "value" : {
5859 "op" : "&",
5860 "left" : {
5861 "type" : "field",
5862 "value" : ["standard_metadata", "deq_qdepth"]
5863 },
5864 "right" : {
5865 "type" : "hexstr",
5866 "value" : "0xffffff"
5867 }
5868 }
5869 }
5870 }
5871 ],
5872 "source_info" : {
5873 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005874 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005875 "column" : 8,
5876 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5877 }
5878 },
5879 {
5880 "op" : "add_header",
5881 "parameters" : [
5882 {
5883 "type" : "header",
5884 "value" : "int_hop_latency"
5885 }
5886 ],
5887 "source_info" : {
5888 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005889 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005890 "column" : 8,
5891 "source_fragment" : "hdr.int_hop_latency.setValid()"
5892 }
5893 },
5894 {
5895 "op" : "assign",
5896 "parameters" : [
5897 {
5898 "type" : "field",
5899 "value" : ["int_hop_latency", "hop_latency"]
5900 },
5901 {
5902 "type" : "field",
5903 "value" : ["standard_metadata", "deq_timedelta"]
5904 }
5905 ],
5906 "source_info" : {
5907 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005908 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005909 "column" : 8,
5910 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5911 }
5912 },
5913 {
5914 "op" : "add_header",
5915 "parameters" : [
5916 {
5917 "type" : "header",
5918 "value" : "int_port_ids"
5919 }
5920 ],
5921 "source_info" : {
5922 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005923 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005924 "column" : 8,
5925 "source_fragment" : "hdr.int_port_ids.setValid()"
5926 }
5927 },
5928 {
5929 "op" : "assign",
5930 "parameters" : [
5931 {
5932 "type" : "field",
5933 "value" : ["int_port_ids", "ingress_port_id"]
5934 },
5935 {
5936 "type" : "expression",
5937 "value" : {
5938 "type" : "expression",
5939 "value" : {
5940 "op" : "&",
5941 "left" : {
5942 "type" : "field",
5943 "value" : ["standard_metadata", "ingress_port"]
5944 },
5945 "right" : {
5946 "type" : "hexstr",
5947 "value" : "0xffff"
5948 }
5949 }
5950 }
5951 }
5952 ],
5953 "source_info" : {
5954 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005955 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005956 "column" : 8,
5957 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5958 }
5959 },
5960 {
5961 "op" : "assign",
5962 "parameters" : [
5963 {
5964 "type" : "field",
5965 "value" : ["int_port_ids", "egress_port_id"]
5966 },
5967 {
5968 "type" : "expression",
5969 "value" : {
5970 "type" : "expression",
5971 "value" : {
5972 "op" : "&",
5973 "left" : {
5974 "type" : "field",
5975 "value" : ["standard_metadata", "egress_port"]
5976 },
5977 "right" : {
5978 "type" : "hexstr",
5979 "value" : "0xffff"
5980 }
5981 }
5982 }
5983 }
5984 ],
5985 "source_info" : {
5986 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005987 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005988 "column" : 8,
5989 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5990 }
5991 },
5992 {
5993 "op" : "assign",
5994 "parameters" : [
5995 {
5996 "type" : "field",
5997 "value" : ["userMetadata.int_meta", "new_words"]
5998 },
5999 {
6000 "type" : "expression",
6001 "value" : {
6002 "type" : "expression",
6003 "value" : {
6004 "op" : "&",
6005 "left" : {
6006 "type" : "expression",
6007 "value" : {
6008 "op" : "+",
6009 "left" : {
6010 "type" : "field",
6011 "value" : ["userMetadata.int_meta", "new_words"]
6012 },
6013 "right" : {
6014 "type" : "hexstr",
6015 "value" : "0x03"
6016 }
6017 }
6018 },
6019 "right" : {
6020 "type" : "hexstr",
6021 "value" : "0xff"
6022 }
6023 }
6024 }
6025 }
6026 ],
6027 "source_info" : {
6028 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006029 "line" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006030 "column" : 8,
6031 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
6032 }
6033 },
6034 {
6035 "op" : "assign",
6036 "parameters" : [
6037 {
6038 "type" : "field",
6039 "value" : ["userMetadata.int_meta", "new_bytes"]
6040 },
6041 {
6042 "type" : "expression",
6043 "value" : {
6044 "type" : "expression",
6045 "value" : {
6046 "op" : "&",
6047 "left" : {
6048 "type" : "expression",
6049 "value" : {
6050 "op" : "+",
6051 "left" : {
6052 "type" : "field",
6053 "value" : ["userMetadata.int_meta", "new_bytes"]
6054 },
6055 "right" : {
6056 "type" : "hexstr",
6057 "value" : "0x000c"
6058 }
6059 }
6060 },
6061 "right" : {
6062 "type" : "hexstr",
6063 "value" : "0xffff"
6064 }
6065 }
6066 }
6067 }
6068 ],
6069 "source_info" : {
6070 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006071 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006072 "column" : 8,
6073 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
6074 }
6075 }
6076 ]
6077 },
6078 {
6079 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006080 "id" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006081 "runtime_data" : [],
6082 "primitives" : [
6083 {
6084 "op" : "add_header",
6085 "parameters" : [
6086 {
6087 "type" : "header",
6088 "value" : "int_switch_id"
6089 }
6090 ],
6091 "source_info" : {
6092 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006093 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006094 "column" : 8,
6095 "source_fragment" : "hdr.int_switch_id.setValid()"
6096 }
6097 },
6098 {
6099 "op" : "assign",
6100 "parameters" : [
6101 {
6102 "type" : "field",
6103 "value" : ["int_switch_id", "switch_id"]
6104 },
6105 {
6106 "type" : "field",
6107 "value" : ["userMetadata.int_meta", "switch_id"]
6108 }
6109 ],
6110 "source_info" : {
6111 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006112 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006113 "column" : 8,
6114 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6115 }
6116 },
6117 {
6118 "op" : "assign",
6119 "parameters" : [
6120 {
6121 "type" : "field",
6122 "value" : ["userMetadata.int_meta", "new_words"]
6123 },
6124 {
6125 "type" : "expression",
6126 "value" : {
6127 "type" : "expression",
6128 "value" : {
6129 "op" : "&",
6130 "left" : {
6131 "type" : "expression",
6132 "value" : {
6133 "op" : "+",
6134 "left" : {
6135 "type" : "field",
6136 "value" : ["userMetadata.int_meta", "new_words"]
6137 },
6138 "right" : {
6139 "type" : "hexstr",
6140 "value" : "0x01"
6141 }
6142 }
6143 },
6144 "right" : {
6145 "type" : "hexstr",
6146 "value" : "0xff"
6147 }
6148 }
6149 }
6150 }
6151 ],
6152 "source_info" : {
6153 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006154 "line" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006155 "column" : 8,
6156 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
6157 }
6158 },
6159 {
6160 "op" : "assign",
6161 "parameters" : [
6162 {
6163 "type" : "field",
6164 "value" : ["userMetadata.int_meta", "new_bytes"]
6165 },
6166 {
6167 "type" : "expression",
6168 "value" : {
6169 "type" : "expression",
6170 "value" : {
6171 "op" : "&",
6172 "left" : {
6173 "type" : "expression",
6174 "value" : {
6175 "op" : "+",
6176 "left" : {
6177 "type" : "field",
6178 "value" : ["userMetadata.int_meta", "new_bytes"]
6179 },
6180 "right" : {
6181 "type" : "hexstr",
6182 "value" : "0x0004"
6183 }
6184 }
6185 },
6186 "right" : {
6187 "type" : "hexstr",
6188 "value" : "0xffff"
6189 }
6190 }
6191 }
6192 }
6193 ],
6194 "source_info" : {
6195 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006196 "line" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006197 "column" : 8,
6198 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
6199 }
6200 }
6201 ]
6202 },
6203 {
6204 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006205 "id" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006206 "runtime_data" : [],
6207 "primitives" : [
6208 {
6209 "op" : "add_header",
6210 "parameters" : [
6211 {
6212 "type" : "header",
6213 "value" : "int_q_occupancy"
6214 }
6215 ],
6216 "source_info" : {
6217 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006218 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006219 "column" : 8,
6220 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6221 }
6222 },
6223 {
6224 "op" : "assign",
6225 "parameters" : [
6226 {
6227 "type" : "field",
6228 "value" : ["int_q_occupancy", "q_id"]
6229 },
6230 {
6231 "type" : "hexstr",
6232 "value" : "0x00"
6233 }
6234 ],
6235 "source_info" : {
6236 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006237 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006238 "column" : 8,
6239 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6240 }
6241 },
6242 {
6243 "op" : "assign",
6244 "parameters" : [
6245 {
6246 "type" : "field",
6247 "value" : ["int_q_occupancy", "q_occupancy"]
6248 },
6249 {
6250 "type" : "expression",
6251 "value" : {
6252 "type" : "expression",
6253 "value" : {
6254 "op" : "&",
6255 "left" : {
6256 "type" : "field",
6257 "value" : ["standard_metadata", "deq_qdepth"]
6258 },
6259 "right" : {
6260 "type" : "hexstr",
6261 "value" : "0xffffff"
6262 }
6263 }
6264 }
6265 }
6266 ],
6267 "source_info" : {
6268 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006269 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006270 "column" : 8,
6271 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6272 }
6273 },
6274 {
6275 "op" : "add_header",
6276 "parameters" : [
6277 {
6278 "type" : "header",
6279 "value" : "int_switch_id"
6280 }
6281 ],
6282 "source_info" : {
6283 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006284 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006285 "column" : 8,
6286 "source_fragment" : "hdr.int_switch_id.setValid()"
6287 }
6288 },
6289 {
6290 "op" : "assign",
6291 "parameters" : [
6292 {
6293 "type" : "field",
6294 "value" : ["int_switch_id", "switch_id"]
6295 },
6296 {
6297 "type" : "field",
6298 "value" : ["userMetadata.int_meta", "switch_id"]
6299 }
6300 ],
6301 "source_info" : {
6302 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006303 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006304 "column" : 8,
6305 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6306 }
6307 },
6308 {
6309 "op" : "assign",
6310 "parameters" : [
6311 {
6312 "type" : "field",
6313 "value" : ["userMetadata.int_meta", "new_words"]
6314 },
6315 {
6316 "type" : "expression",
6317 "value" : {
6318 "type" : "expression",
6319 "value" : {
6320 "op" : "&",
6321 "left" : {
6322 "type" : "expression",
6323 "value" : {
6324 "op" : "+",
6325 "left" : {
6326 "type" : "field",
6327 "value" : ["userMetadata.int_meta", "new_words"]
6328 },
6329 "right" : {
6330 "type" : "hexstr",
6331 "value" : "0x02"
6332 }
6333 }
6334 },
6335 "right" : {
6336 "type" : "hexstr",
6337 "value" : "0xff"
6338 }
6339 }
6340 }
6341 }
6342 ],
6343 "source_info" : {
6344 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006345 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006346 "column" : 8,
6347 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6348 }
6349 },
6350 {
6351 "op" : "assign",
6352 "parameters" : [
6353 {
6354 "type" : "field",
6355 "value" : ["userMetadata.int_meta", "new_bytes"]
6356 },
6357 {
6358 "type" : "expression",
6359 "value" : {
6360 "type" : "expression",
6361 "value" : {
6362 "op" : "&",
6363 "left" : {
6364 "type" : "expression",
6365 "value" : {
6366 "op" : "+",
6367 "left" : {
6368 "type" : "field",
6369 "value" : ["userMetadata.int_meta", "new_bytes"]
6370 },
6371 "right" : {
6372 "type" : "hexstr",
6373 "value" : "0x0008"
6374 }
6375 }
6376 },
6377 "right" : {
6378 "type" : "hexstr",
6379 "value" : "0xffff"
6380 }
6381 }
6382 }
6383 }
6384 ],
6385 "source_info" : {
6386 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006387 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006388 "column" : 8,
6389 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6390 }
6391 }
6392 ]
6393 },
6394 {
6395 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006396 "id" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006397 "runtime_data" : [],
6398 "primitives" : [
6399 {
6400 "op" : "add_header",
6401 "parameters" : [
6402 {
6403 "type" : "header",
6404 "value" : "int_hop_latency"
6405 }
6406 ],
6407 "source_info" : {
6408 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006409 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006410 "column" : 8,
6411 "source_fragment" : "hdr.int_hop_latency.setValid()"
6412 }
6413 },
6414 {
6415 "op" : "assign",
6416 "parameters" : [
6417 {
6418 "type" : "field",
6419 "value" : ["int_hop_latency", "hop_latency"]
6420 },
6421 {
6422 "type" : "field",
6423 "value" : ["standard_metadata", "deq_timedelta"]
6424 }
6425 ],
6426 "source_info" : {
6427 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006428 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006429 "column" : 8,
6430 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6431 }
6432 },
6433 {
6434 "op" : "add_header",
6435 "parameters" : [
6436 {
6437 "type" : "header",
6438 "value" : "int_switch_id"
6439 }
6440 ],
6441 "source_info" : {
6442 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006443 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006444 "column" : 8,
6445 "source_fragment" : "hdr.int_switch_id.setValid()"
6446 }
6447 },
6448 {
6449 "op" : "assign",
6450 "parameters" : [
6451 {
6452 "type" : "field",
6453 "value" : ["int_switch_id", "switch_id"]
6454 },
6455 {
6456 "type" : "field",
6457 "value" : ["userMetadata.int_meta", "switch_id"]
6458 }
6459 ],
6460 "source_info" : {
6461 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006462 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006463 "column" : 8,
6464 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6465 }
6466 },
6467 {
6468 "op" : "assign",
6469 "parameters" : [
6470 {
6471 "type" : "field",
6472 "value" : ["userMetadata.int_meta", "new_words"]
6473 },
6474 {
6475 "type" : "expression",
6476 "value" : {
6477 "type" : "expression",
6478 "value" : {
6479 "op" : "&",
6480 "left" : {
6481 "type" : "expression",
6482 "value" : {
6483 "op" : "+",
6484 "left" : {
6485 "type" : "field",
6486 "value" : ["userMetadata.int_meta", "new_words"]
6487 },
6488 "right" : {
6489 "type" : "hexstr",
6490 "value" : "0x02"
6491 }
6492 }
6493 },
6494 "right" : {
6495 "type" : "hexstr",
6496 "value" : "0xff"
6497 }
6498 }
6499 }
6500 }
6501 ],
6502 "source_info" : {
6503 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006504 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006505 "column" : 8,
6506 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6507 }
6508 },
6509 {
6510 "op" : "assign",
6511 "parameters" : [
6512 {
6513 "type" : "field",
6514 "value" : ["userMetadata.int_meta", "new_bytes"]
6515 },
6516 {
6517 "type" : "expression",
6518 "value" : {
6519 "type" : "expression",
6520 "value" : {
6521 "op" : "&",
6522 "left" : {
6523 "type" : "expression",
6524 "value" : {
6525 "op" : "+",
6526 "left" : {
6527 "type" : "field",
6528 "value" : ["userMetadata.int_meta", "new_bytes"]
6529 },
6530 "right" : {
6531 "type" : "hexstr",
6532 "value" : "0x0008"
6533 }
6534 }
6535 },
6536 "right" : {
6537 "type" : "hexstr",
6538 "value" : "0xffff"
6539 }
6540 }
6541 }
6542 }
6543 ],
6544 "source_info" : {
6545 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006546 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006547 "column" : 8,
6548 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6549 }
6550 }
6551 ]
6552 },
6553 {
6554 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006555 "id" : 72,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006556 "runtime_data" : [],
6557 "primitives" : [
6558 {
6559 "op" : "add_header",
6560 "parameters" : [
6561 {
6562 "type" : "header",
6563 "value" : "int_q_occupancy"
6564 }
6565 ],
6566 "source_info" : {
6567 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006568 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006569 "column" : 8,
6570 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6571 }
6572 },
6573 {
6574 "op" : "assign",
6575 "parameters" : [
6576 {
6577 "type" : "field",
6578 "value" : ["int_q_occupancy", "q_id"]
6579 },
6580 {
6581 "type" : "hexstr",
6582 "value" : "0x00"
6583 }
6584 ],
6585 "source_info" : {
6586 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006587 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006588 "column" : 8,
6589 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6590 }
6591 },
6592 {
6593 "op" : "assign",
6594 "parameters" : [
6595 {
6596 "type" : "field",
6597 "value" : ["int_q_occupancy", "q_occupancy"]
6598 },
6599 {
6600 "type" : "expression",
6601 "value" : {
6602 "type" : "expression",
6603 "value" : {
6604 "op" : "&",
6605 "left" : {
6606 "type" : "field",
6607 "value" : ["standard_metadata", "deq_qdepth"]
6608 },
6609 "right" : {
6610 "type" : "hexstr",
6611 "value" : "0xffffff"
6612 }
6613 }
6614 }
6615 }
6616 ],
6617 "source_info" : {
6618 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006619 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006620 "column" : 8,
6621 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6622 }
6623 },
6624 {
6625 "op" : "add_header",
6626 "parameters" : [
6627 {
6628 "type" : "header",
6629 "value" : "int_hop_latency"
6630 }
6631 ],
6632 "source_info" : {
6633 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006634 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006635 "column" : 8,
6636 "source_fragment" : "hdr.int_hop_latency.setValid()"
6637 }
6638 },
6639 {
6640 "op" : "assign",
6641 "parameters" : [
6642 {
6643 "type" : "field",
6644 "value" : ["int_hop_latency", "hop_latency"]
6645 },
6646 {
6647 "type" : "field",
6648 "value" : ["standard_metadata", "deq_timedelta"]
6649 }
6650 ],
6651 "source_info" : {
6652 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006653 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006654 "column" : 8,
6655 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6656 }
6657 },
6658 {
6659 "op" : "add_header",
6660 "parameters" : [
6661 {
6662 "type" : "header",
6663 "value" : "int_switch_id"
6664 }
6665 ],
6666 "source_info" : {
6667 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006668 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006669 "column" : 8,
6670 "source_fragment" : "hdr.int_switch_id.setValid()"
6671 }
6672 },
6673 {
6674 "op" : "assign",
6675 "parameters" : [
6676 {
6677 "type" : "field",
6678 "value" : ["int_switch_id", "switch_id"]
6679 },
6680 {
6681 "type" : "field",
6682 "value" : ["userMetadata.int_meta", "switch_id"]
6683 }
6684 ],
6685 "source_info" : {
6686 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006687 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006688 "column" : 8,
6689 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6690 }
6691 },
6692 {
6693 "op" : "assign",
6694 "parameters" : [
6695 {
6696 "type" : "field",
6697 "value" : ["userMetadata.int_meta", "new_words"]
6698 },
6699 {
6700 "type" : "expression",
6701 "value" : {
6702 "type" : "expression",
6703 "value" : {
6704 "op" : "&",
6705 "left" : {
6706 "type" : "expression",
6707 "value" : {
6708 "op" : "+",
6709 "left" : {
6710 "type" : "field",
6711 "value" : ["userMetadata.int_meta", "new_words"]
6712 },
6713 "right" : {
6714 "type" : "hexstr",
6715 "value" : "0x03"
6716 }
6717 }
6718 },
6719 "right" : {
6720 "type" : "hexstr",
6721 "value" : "0xff"
6722 }
6723 }
6724 }
6725 }
6726 ],
6727 "source_info" : {
6728 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006729 "line" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006730 "column" : 8,
6731 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
6732 }
6733 },
6734 {
6735 "op" : "assign",
6736 "parameters" : [
6737 {
6738 "type" : "field",
6739 "value" : ["userMetadata.int_meta", "new_bytes"]
6740 },
6741 {
6742 "type" : "expression",
6743 "value" : {
6744 "type" : "expression",
6745 "value" : {
6746 "op" : "&",
6747 "left" : {
6748 "type" : "expression",
6749 "value" : {
6750 "op" : "+",
6751 "left" : {
6752 "type" : "field",
6753 "value" : ["userMetadata.int_meta", "new_bytes"]
6754 },
6755 "right" : {
6756 "type" : "hexstr",
6757 "value" : "0x000c"
6758 }
6759 }
6760 },
6761 "right" : {
6762 "type" : "hexstr",
6763 "value" : "0xffff"
6764 }
6765 }
6766 }
6767 }
6768 ],
6769 "source_info" : {
6770 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006771 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006772 "column" : 8,
6773 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
6774 }
6775 }
6776 ]
6777 },
6778 {
6779 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006780 "id" : 73,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006781 "runtime_data" : [],
6782 "primitives" : [
6783 {
6784 "op" : "add_header",
6785 "parameters" : [
6786 {
6787 "type" : "header",
6788 "value" : "int_port_ids"
6789 }
6790 ],
6791 "source_info" : {
6792 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006793 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006794 "column" : 8,
6795 "source_fragment" : "hdr.int_port_ids.setValid()"
6796 }
6797 },
6798 {
6799 "op" : "assign",
6800 "parameters" : [
6801 {
6802 "type" : "field",
6803 "value" : ["int_port_ids", "ingress_port_id"]
6804 },
6805 {
6806 "type" : "expression",
6807 "value" : {
6808 "type" : "expression",
6809 "value" : {
6810 "op" : "&",
6811 "left" : {
6812 "type" : "field",
6813 "value" : ["standard_metadata", "ingress_port"]
6814 },
6815 "right" : {
6816 "type" : "hexstr",
6817 "value" : "0xffff"
6818 }
6819 }
6820 }
6821 }
6822 ],
6823 "source_info" : {
6824 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006825 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006826 "column" : 8,
6827 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6828 }
6829 },
6830 {
6831 "op" : "assign",
6832 "parameters" : [
6833 {
6834 "type" : "field",
6835 "value" : ["int_port_ids", "egress_port_id"]
6836 },
6837 {
6838 "type" : "expression",
6839 "value" : {
6840 "type" : "expression",
6841 "value" : {
6842 "op" : "&",
6843 "left" : {
6844 "type" : "field",
6845 "value" : ["standard_metadata", "egress_port"]
6846 },
6847 "right" : {
6848 "type" : "hexstr",
6849 "value" : "0xffff"
6850 }
6851 }
6852 }
6853 }
6854 ],
6855 "source_info" : {
6856 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006857 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006858 "column" : 8,
6859 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6860 }
6861 },
6862 {
6863 "op" : "add_header",
6864 "parameters" : [
6865 {
6866 "type" : "header",
6867 "value" : "int_switch_id"
6868 }
6869 ],
6870 "source_info" : {
6871 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006872 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006873 "column" : 8,
6874 "source_fragment" : "hdr.int_switch_id.setValid()"
6875 }
6876 },
6877 {
6878 "op" : "assign",
6879 "parameters" : [
6880 {
6881 "type" : "field",
6882 "value" : ["int_switch_id", "switch_id"]
6883 },
6884 {
6885 "type" : "field",
6886 "value" : ["userMetadata.int_meta", "switch_id"]
6887 }
6888 ],
6889 "source_info" : {
6890 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006891 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006892 "column" : 8,
6893 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
6894 }
6895 },
6896 {
6897 "op" : "assign",
6898 "parameters" : [
6899 {
6900 "type" : "field",
6901 "value" : ["userMetadata.int_meta", "new_words"]
6902 },
6903 {
6904 "type" : "expression",
6905 "value" : {
6906 "type" : "expression",
6907 "value" : {
6908 "op" : "&",
6909 "left" : {
6910 "type" : "expression",
6911 "value" : {
6912 "op" : "+",
6913 "left" : {
6914 "type" : "field",
6915 "value" : ["userMetadata.int_meta", "new_words"]
6916 },
6917 "right" : {
6918 "type" : "hexstr",
6919 "value" : "0x02"
6920 }
6921 }
6922 },
6923 "right" : {
6924 "type" : "hexstr",
6925 "value" : "0xff"
6926 }
6927 }
6928 }
6929 }
6930 ],
6931 "source_info" : {
6932 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006933 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006934 "column" : 8,
6935 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
6936 }
6937 },
6938 {
6939 "op" : "assign",
6940 "parameters" : [
6941 {
6942 "type" : "field",
6943 "value" : ["userMetadata.int_meta", "new_bytes"]
6944 },
6945 {
6946 "type" : "expression",
6947 "value" : {
6948 "type" : "expression",
6949 "value" : {
6950 "op" : "&",
6951 "left" : {
6952 "type" : "expression",
6953 "value" : {
6954 "op" : "+",
6955 "left" : {
6956 "type" : "field",
6957 "value" : ["userMetadata.int_meta", "new_bytes"]
6958 },
6959 "right" : {
6960 "type" : "hexstr",
6961 "value" : "0x0008"
6962 }
6963 }
6964 },
6965 "right" : {
6966 "type" : "hexstr",
6967 "value" : "0xffff"
6968 }
6969 }
6970 }
6971 }
6972 ],
6973 "source_info" : {
6974 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006975 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006976 "column" : 8,
6977 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
6978 }
6979 }
6980 ]
6981 },
6982 {
6983 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006984 "id" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006985 "runtime_data" : [],
6986 "primitives" : [
6987 {
6988 "op" : "add_header",
6989 "parameters" : [
6990 {
6991 "type" : "header",
6992 "value" : "int_q_occupancy"
6993 }
6994 ],
6995 "source_info" : {
6996 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006997 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006998 "column" : 8,
6999 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7000 }
7001 },
7002 {
7003 "op" : "assign",
7004 "parameters" : [
7005 {
7006 "type" : "field",
7007 "value" : ["int_q_occupancy", "q_id"]
7008 },
7009 {
7010 "type" : "hexstr",
7011 "value" : "0x00"
7012 }
7013 ],
7014 "source_info" : {
7015 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007016 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007017 "column" : 8,
7018 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7019 }
7020 },
7021 {
7022 "op" : "assign",
7023 "parameters" : [
7024 {
7025 "type" : "field",
7026 "value" : ["int_q_occupancy", "q_occupancy"]
7027 },
7028 {
7029 "type" : "expression",
7030 "value" : {
7031 "type" : "expression",
7032 "value" : {
7033 "op" : "&",
7034 "left" : {
7035 "type" : "field",
7036 "value" : ["standard_metadata", "deq_qdepth"]
7037 },
7038 "right" : {
7039 "type" : "hexstr",
7040 "value" : "0xffffff"
7041 }
7042 }
7043 }
7044 }
7045 ],
7046 "source_info" : {
7047 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007048 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007049 "column" : 8,
7050 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7051 }
7052 },
7053 {
7054 "op" : "add_header",
7055 "parameters" : [
7056 {
7057 "type" : "header",
7058 "value" : "int_port_ids"
7059 }
7060 ],
7061 "source_info" : {
7062 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007063 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007064 "column" : 8,
7065 "source_fragment" : "hdr.int_port_ids.setValid()"
7066 }
7067 },
7068 {
7069 "op" : "assign",
7070 "parameters" : [
7071 {
7072 "type" : "field",
7073 "value" : ["int_port_ids", "ingress_port_id"]
7074 },
7075 {
7076 "type" : "expression",
7077 "value" : {
7078 "type" : "expression",
7079 "value" : {
7080 "op" : "&",
7081 "left" : {
7082 "type" : "field",
7083 "value" : ["standard_metadata", "ingress_port"]
7084 },
7085 "right" : {
7086 "type" : "hexstr",
7087 "value" : "0xffff"
7088 }
7089 }
7090 }
7091 }
7092 ],
7093 "source_info" : {
7094 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007095 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007096 "column" : 8,
7097 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7098 }
7099 },
7100 {
7101 "op" : "assign",
7102 "parameters" : [
7103 {
7104 "type" : "field",
7105 "value" : ["int_port_ids", "egress_port_id"]
7106 },
7107 {
7108 "type" : "expression",
7109 "value" : {
7110 "type" : "expression",
7111 "value" : {
7112 "op" : "&",
7113 "left" : {
7114 "type" : "field",
7115 "value" : ["standard_metadata", "egress_port"]
7116 },
7117 "right" : {
7118 "type" : "hexstr",
7119 "value" : "0xffff"
7120 }
7121 }
7122 }
7123 }
7124 ],
7125 "source_info" : {
7126 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007127 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007128 "column" : 8,
7129 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7130 }
7131 },
7132 {
7133 "op" : "add_header",
7134 "parameters" : [
7135 {
7136 "type" : "header",
7137 "value" : "int_switch_id"
7138 }
7139 ],
7140 "source_info" : {
7141 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007142 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007143 "column" : 8,
7144 "source_fragment" : "hdr.int_switch_id.setValid()"
7145 }
7146 },
7147 {
7148 "op" : "assign",
7149 "parameters" : [
7150 {
7151 "type" : "field",
7152 "value" : ["int_switch_id", "switch_id"]
7153 },
7154 {
7155 "type" : "field",
7156 "value" : ["userMetadata.int_meta", "switch_id"]
7157 }
7158 ],
7159 "source_info" : {
7160 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007161 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007162 "column" : 8,
7163 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7164 }
7165 },
7166 {
7167 "op" : "assign",
7168 "parameters" : [
7169 {
7170 "type" : "field",
7171 "value" : ["userMetadata.int_meta", "new_words"]
7172 },
7173 {
7174 "type" : "expression",
7175 "value" : {
7176 "type" : "expression",
7177 "value" : {
7178 "op" : "&",
7179 "left" : {
7180 "type" : "expression",
7181 "value" : {
7182 "op" : "+",
7183 "left" : {
7184 "type" : "field",
7185 "value" : ["userMetadata.int_meta", "new_words"]
7186 },
7187 "right" : {
7188 "type" : "hexstr",
7189 "value" : "0x03"
7190 }
7191 }
7192 },
7193 "right" : {
7194 "type" : "hexstr",
7195 "value" : "0xff"
7196 }
7197 }
7198 }
7199 }
7200 ],
7201 "source_info" : {
7202 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007203 "line" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007204 "column" : 8,
7205 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
7206 }
7207 },
7208 {
7209 "op" : "assign",
7210 "parameters" : [
7211 {
7212 "type" : "field",
7213 "value" : ["userMetadata.int_meta", "new_bytes"]
7214 },
7215 {
7216 "type" : "expression",
7217 "value" : {
7218 "type" : "expression",
7219 "value" : {
7220 "op" : "&",
7221 "left" : {
7222 "type" : "expression",
7223 "value" : {
7224 "op" : "+",
7225 "left" : {
7226 "type" : "field",
7227 "value" : ["userMetadata.int_meta", "new_bytes"]
7228 },
7229 "right" : {
7230 "type" : "hexstr",
7231 "value" : "0x000c"
7232 }
7233 }
7234 },
7235 "right" : {
7236 "type" : "hexstr",
7237 "value" : "0xffff"
7238 }
7239 }
7240 }
7241 }
7242 ],
7243 "source_info" : {
7244 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007245 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007246 "column" : 8,
7247 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
7248 }
7249 }
7250 ]
7251 },
7252 {
7253 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007254 "id" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007255 "runtime_data" : [],
7256 "primitives" : [
7257 {
7258 "op" : "add_header",
7259 "parameters" : [
7260 {
7261 "type" : "header",
7262 "value" : "int_hop_latency"
7263 }
7264 ],
7265 "source_info" : {
7266 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007267 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007268 "column" : 8,
7269 "source_fragment" : "hdr.int_hop_latency.setValid()"
7270 }
7271 },
7272 {
7273 "op" : "assign",
7274 "parameters" : [
7275 {
7276 "type" : "field",
7277 "value" : ["int_hop_latency", "hop_latency"]
7278 },
7279 {
7280 "type" : "field",
7281 "value" : ["standard_metadata", "deq_timedelta"]
7282 }
7283 ],
7284 "source_info" : {
7285 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007286 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007287 "column" : 8,
7288 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7289 }
7290 },
7291 {
7292 "op" : "add_header",
7293 "parameters" : [
7294 {
7295 "type" : "header",
7296 "value" : "int_port_ids"
7297 }
7298 ],
7299 "source_info" : {
7300 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007301 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007302 "column" : 8,
7303 "source_fragment" : "hdr.int_port_ids.setValid()"
7304 }
7305 },
7306 {
7307 "op" : "assign",
7308 "parameters" : [
7309 {
7310 "type" : "field",
7311 "value" : ["int_port_ids", "ingress_port_id"]
7312 },
7313 {
7314 "type" : "expression",
7315 "value" : {
7316 "type" : "expression",
7317 "value" : {
7318 "op" : "&",
7319 "left" : {
7320 "type" : "field",
7321 "value" : ["standard_metadata", "ingress_port"]
7322 },
7323 "right" : {
7324 "type" : "hexstr",
7325 "value" : "0xffff"
7326 }
7327 }
7328 }
7329 }
7330 ],
7331 "source_info" : {
7332 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007333 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007334 "column" : 8,
7335 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7336 }
7337 },
7338 {
7339 "op" : "assign",
7340 "parameters" : [
7341 {
7342 "type" : "field",
7343 "value" : ["int_port_ids", "egress_port_id"]
7344 },
7345 {
7346 "type" : "expression",
7347 "value" : {
7348 "type" : "expression",
7349 "value" : {
7350 "op" : "&",
7351 "left" : {
7352 "type" : "field",
7353 "value" : ["standard_metadata", "egress_port"]
7354 },
7355 "right" : {
7356 "type" : "hexstr",
7357 "value" : "0xffff"
7358 }
7359 }
7360 }
7361 }
7362 ],
7363 "source_info" : {
7364 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007365 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007366 "column" : 8,
7367 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7368 }
7369 },
7370 {
7371 "op" : "add_header",
7372 "parameters" : [
7373 {
7374 "type" : "header",
7375 "value" : "int_switch_id"
7376 }
7377 ],
7378 "source_info" : {
7379 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007380 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007381 "column" : 8,
7382 "source_fragment" : "hdr.int_switch_id.setValid()"
7383 }
7384 },
7385 {
7386 "op" : "assign",
7387 "parameters" : [
7388 {
7389 "type" : "field",
7390 "value" : ["int_switch_id", "switch_id"]
7391 },
7392 {
7393 "type" : "field",
7394 "value" : ["userMetadata.int_meta", "switch_id"]
7395 }
7396 ],
7397 "source_info" : {
7398 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007399 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007400 "column" : 8,
7401 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7402 }
7403 },
7404 {
7405 "op" : "assign",
7406 "parameters" : [
7407 {
7408 "type" : "field",
7409 "value" : ["userMetadata.int_meta", "new_words"]
7410 },
7411 {
7412 "type" : "expression",
7413 "value" : {
7414 "type" : "expression",
7415 "value" : {
7416 "op" : "&",
7417 "left" : {
7418 "type" : "expression",
7419 "value" : {
7420 "op" : "+",
7421 "left" : {
7422 "type" : "field",
7423 "value" : ["userMetadata.int_meta", "new_words"]
7424 },
7425 "right" : {
7426 "type" : "hexstr",
7427 "value" : "0x03"
7428 }
7429 }
7430 },
7431 "right" : {
7432 "type" : "hexstr",
7433 "value" : "0xff"
7434 }
7435 }
7436 }
7437 }
7438 ],
7439 "source_info" : {
7440 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007441 "line" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007442 "column" : 8,
7443 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
7444 }
7445 },
7446 {
7447 "op" : "assign",
7448 "parameters" : [
7449 {
7450 "type" : "field",
7451 "value" : ["userMetadata.int_meta", "new_bytes"]
7452 },
7453 {
7454 "type" : "expression",
7455 "value" : {
7456 "type" : "expression",
7457 "value" : {
7458 "op" : "&",
7459 "left" : {
7460 "type" : "expression",
7461 "value" : {
7462 "op" : "+",
7463 "left" : {
7464 "type" : "field",
7465 "value" : ["userMetadata.int_meta", "new_bytes"]
7466 },
7467 "right" : {
7468 "type" : "hexstr",
7469 "value" : "0x000c"
7470 }
7471 }
7472 },
7473 "right" : {
7474 "type" : "hexstr",
7475 "value" : "0xffff"
7476 }
7477 }
7478 }
7479 }
7480 ],
7481 "source_info" : {
7482 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007483 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007484 "column" : 8,
7485 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
7486 }
7487 }
7488 ]
7489 },
7490 {
7491 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007492 "id" : 76,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007493 "runtime_data" : [],
7494 "primitives" : [
7495 {
7496 "op" : "add_header",
7497 "parameters" : [
7498 {
7499 "type" : "header",
7500 "value" : "int_q_occupancy"
7501 }
7502 ],
7503 "source_info" : {
7504 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007505 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007506 "column" : 8,
7507 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7508 }
7509 },
7510 {
7511 "op" : "assign",
7512 "parameters" : [
7513 {
7514 "type" : "field",
7515 "value" : ["int_q_occupancy", "q_id"]
7516 },
7517 {
7518 "type" : "hexstr",
7519 "value" : "0x00"
7520 }
7521 ],
7522 "source_info" : {
7523 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007524 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007525 "column" : 8,
7526 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7527 }
7528 },
7529 {
7530 "op" : "assign",
7531 "parameters" : [
7532 {
7533 "type" : "field",
7534 "value" : ["int_q_occupancy", "q_occupancy"]
7535 },
7536 {
7537 "type" : "expression",
7538 "value" : {
7539 "type" : "expression",
7540 "value" : {
7541 "op" : "&",
7542 "left" : {
7543 "type" : "field",
7544 "value" : ["standard_metadata", "deq_qdepth"]
7545 },
7546 "right" : {
7547 "type" : "hexstr",
7548 "value" : "0xffffff"
7549 }
7550 }
7551 }
7552 }
7553 ],
7554 "source_info" : {
7555 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007556 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007557 "column" : 8,
7558 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7559 }
7560 },
7561 {
7562 "op" : "add_header",
7563 "parameters" : [
7564 {
7565 "type" : "header",
7566 "value" : "int_hop_latency"
7567 }
7568 ],
7569 "source_info" : {
7570 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007571 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007572 "column" : 8,
7573 "source_fragment" : "hdr.int_hop_latency.setValid()"
7574 }
7575 },
7576 {
7577 "op" : "assign",
7578 "parameters" : [
7579 {
7580 "type" : "field",
7581 "value" : ["int_hop_latency", "hop_latency"]
7582 },
7583 {
7584 "type" : "field",
7585 "value" : ["standard_metadata", "deq_timedelta"]
7586 }
7587 ],
7588 "source_info" : {
7589 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007590 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007591 "column" : 8,
7592 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7593 }
7594 },
7595 {
7596 "op" : "add_header",
7597 "parameters" : [
7598 {
7599 "type" : "header",
7600 "value" : "int_port_ids"
7601 }
7602 ],
7603 "source_info" : {
7604 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007605 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007606 "column" : 8,
7607 "source_fragment" : "hdr.int_port_ids.setValid()"
7608 }
7609 },
7610 {
7611 "op" : "assign",
7612 "parameters" : [
7613 {
7614 "type" : "field",
7615 "value" : ["int_port_ids", "ingress_port_id"]
7616 },
7617 {
7618 "type" : "expression",
7619 "value" : {
7620 "type" : "expression",
7621 "value" : {
7622 "op" : "&",
7623 "left" : {
7624 "type" : "field",
7625 "value" : ["standard_metadata", "ingress_port"]
7626 },
7627 "right" : {
7628 "type" : "hexstr",
7629 "value" : "0xffff"
7630 }
7631 }
7632 }
7633 }
7634 ],
7635 "source_info" : {
7636 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007637 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007638 "column" : 8,
7639 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7640 }
7641 },
7642 {
7643 "op" : "assign",
7644 "parameters" : [
7645 {
7646 "type" : "field",
7647 "value" : ["int_port_ids", "egress_port_id"]
7648 },
7649 {
7650 "type" : "expression",
7651 "value" : {
7652 "type" : "expression",
7653 "value" : {
7654 "op" : "&",
7655 "left" : {
7656 "type" : "field",
7657 "value" : ["standard_metadata", "egress_port"]
7658 },
7659 "right" : {
7660 "type" : "hexstr",
7661 "value" : "0xffff"
7662 }
7663 }
7664 }
7665 }
7666 ],
7667 "source_info" : {
7668 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007669 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007670 "column" : 8,
7671 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7672 }
7673 },
7674 {
7675 "op" : "add_header",
7676 "parameters" : [
7677 {
7678 "type" : "header",
7679 "value" : "int_switch_id"
7680 }
7681 ],
7682 "source_info" : {
7683 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007684 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007685 "column" : 8,
7686 "source_fragment" : "hdr.int_switch_id.setValid()"
7687 }
7688 },
7689 {
7690 "op" : "assign",
7691 "parameters" : [
7692 {
7693 "type" : "field",
7694 "value" : ["int_switch_id", "switch_id"]
7695 },
7696 {
7697 "type" : "field",
7698 "value" : ["userMetadata.int_meta", "switch_id"]
7699 }
7700 ],
7701 "source_info" : {
7702 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007703 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007704 "column" : 8,
7705 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id"
7706 }
7707 },
7708 {
7709 "op" : "assign",
7710 "parameters" : [
7711 {
7712 "type" : "field",
7713 "value" : ["userMetadata.int_meta", "new_words"]
7714 },
7715 {
7716 "type" : "expression",
7717 "value" : {
7718 "type" : "expression",
7719 "value" : {
7720 "op" : "&",
7721 "left" : {
7722 "type" : "expression",
7723 "value" : {
7724 "op" : "+",
7725 "left" : {
7726 "type" : "field",
7727 "value" : ["userMetadata.int_meta", "new_words"]
7728 },
7729 "right" : {
7730 "type" : "hexstr",
7731 "value" : "0x04"
7732 }
7733 }
7734 },
7735 "right" : {
7736 "type" : "hexstr",
7737 "value" : "0xff"
7738 }
7739 }
7740 }
7741 }
7742 ],
7743 "source_info" : {
7744 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007745 "line" : 115,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007746 "column" : 8,
7747 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
7748 }
7749 },
7750 {
7751 "op" : "assign",
7752 "parameters" : [
7753 {
7754 "type" : "field",
7755 "value" : ["userMetadata.int_meta", "new_bytes"]
7756 },
7757 {
7758 "type" : "expression",
7759 "value" : {
7760 "type" : "expression",
7761 "value" : {
7762 "op" : "&",
7763 "left" : {
7764 "type" : "expression",
7765 "value" : {
7766 "op" : "+",
7767 "left" : {
7768 "type" : "field",
7769 "value" : ["userMetadata.int_meta", "new_bytes"]
7770 },
7771 "right" : {
7772 "type" : "hexstr",
7773 "value" : "0x0010"
7774 }
7775 }
7776 },
7777 "right" : {
7778 "type" : "hexstr",
7779 "value" : "0xffff"
7780 }
7781 }
7782 }
7783 }
7784 ],
7785 "source_info" : {
7786 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007787 "line" : 116,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007788 "column" : 8,
7789 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
7790 }
7791 }
7792 ]
7793 },
7794 {
7795 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007796 "id" : 77,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007797 "runtime_data" : [],
7798 "primitives" : []
7799 },
7800 {
7801 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007802 "id" : 78,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007803 "runtime_data" : [],
7804 "primitives" : [
7805 {
7806 "op" : "add_header",
7807 "parameters" : [
7808 {
7809 "type" : "header",
7810 "value" : "int_egress_tx_util"
7811 }
7812 ],
7813 "source_info" : {
7814 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007815 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007816 "column" : 8,
7817 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
7818 }
7819 },
7820 {
7821 "op" : "assign",
7822 "parameters" : [
7823 {
7824 "type" : "field",
7825 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
7826 },
7827 {
7828 "type" : "hexstr",
7829 "value" : "0x00000000"
7830 }
7831 ],
7832 "source_info" : {
7833 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007834 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007835 "column" : 8,
7836 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
7837 }
7838 },
7839 {
7840 "op" : "assign",
7841 "parameters" : [
7842 {
7843 "type" : "field",
7844 "value" : ["userMetadata.int_meta", "new_words"]
7845 },
7846 {
7847 "type" : "expression",
7848 "value" : {
7849 "type" : "expression",
7850 "value" : {
7851 "op" : "&",
7852 "left" : {
7853 "type" : "expression",
7854 "value" : {
7855 "op" : "+",
7856 "left" : {
7857 "type" : "field",
7858 "value" : ["userMetadata.int_meta", "new_words"]
7859 },
7860 "right" : {
7861 "type" : "hexstr",
7862 "value" : "0x01"
7863 }
7864 }
7865 },
7866 "right" : {
7867 "type" : "hexstr",
7868 "value" : "0xff"
7869 }
7870 }
7871 }
7872 }
7873 ],
7874 "source_info" : {
7875 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007876 "line" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007877 "column" : 8,
7878 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
7879 }
7880 },
7881 {
7882 "op" : "assign",
7883 "parameters" : [
7884 {
7885 "type" : "field",
7886 "value" : ["userMetadata.int_meta", "new_bytes"]
7887 },
7888 {
7889 "type" : "expression",
7890 "value" : {
7891 "type" : "expression",
7892 "value" : {
7893 "op" : "&",
7894 "left" : {
7895 "type" : "expression",
7896 "value" : {
7897 "op" : "+",
7898 "left" : {
7899 "type" : "field",
7900 "value" : ["userMetadata.int_meta", "new_bytes"]
7901 },
7902 "right" : {
7903 "type" : "hexstr",
7904 "value" : "0x0004"
7905 }
7906 }
7907 },
7908 "right" : {
7909 "type" : "hexstr",
7910 "value" : "0xffff"
7911 }
7912 }
7913 }
7914 }
7915 ],
7916 "source_info" : {
7917 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007918 "line" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007919 "column" : 8,
7920 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
7921 }
7922 }
7923 ]
7924 },
7925 {
7926 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007927 "id" : 79,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007928 "runtime_data" : [],
7929 "primitives" : [
7930 {
7931 "op" : "add_header",
7932 "parameters" : [
7933 {
7934 "type" : "header",
7935 "value" : "int_q_congestion"
7936 }
7937 ],
7938 "source_info" : {
7939 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007940 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007941 "column" : 8,
7942 "source_fragment" : "hdr.int_q_congestion.setValid()"
7943 }
7944 },
7945 {
7946 "op" : "assign",
7947 "parameters" : [
7948 {
7949 "type" : "field",
7950 "value" : ["int_q_congestion", "q_id"]
7951 },
7952 {
7953 "type" : "hexstr",
7954 "value" : "0x00"
7955 }
7956 ],
7957 "source_info" : {
7958 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007959 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007960 "column" : 8,
7961 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
7962 }
7963 },
7964 {
7965 "op" : "assign",
7966 "parameters" : [
7967 {
7968 "type" : "field",
7969 "value" : ["int_q_congestion", "q_congestion"]
7970 },
7971 {
7972 "type" : "hexstr",
7973 "value" : "0x000000"
7974 }
7975 ],
7976 "source_info" : {
7977 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007978 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007979 "column" : 8,
7980 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
7981 }
7982 },
7983 {
7984 "op" : "assign",
7985 "parameters" : [
7986 {
7987 "type" : "field",
7988 "value" : ["userMetadata.int_meta", "new_words"]
7989 },
7990 {
7991 "type" : "expression",
7992 "value" : {
7993 "type" : "expression",
7994 "value" : {
7995 "op" : "&",
7996 "left" : {
7997 "type" : "expression",
7998 "value" : {
7999 "op" : "+",
8000 "left" : {
8001 "type" : "field",
8002 "value" : ["userMetadata.int_meta", "new_words"]
8003 },
8004 "right" : {
8005 "type" : "hexstr",
8006 "value" : "0x01"
8007 }
8008 }
8009 },
8010 "right" : {
8011 "type" : "hexstr",
8012 "value" : "0xff"
8013 }
8014 }
8015 }
8016 }
8017 ],
8018 "source_info" : {
8019 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008020 "line" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008021 "column" : 8,
8022 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
8023 }
8024 },
8025 {
8026 "op" : "assign",
8027 "parameters" : [
8028 {
8029 "type" : "field",
8030 "value" : ["userMetadata.int_meta", "new_bytes"]
8031 },
8032 {
8033 "type" : "expression",
8034 "value" : {
8035 "type" : "expression",
8036 "value" : {
8037 "op" : "&",
8038 "left" : {
8039 "type" : "expression",
8040 "value" : {
8041 "op" : "+",
8042 "left" : {
8043 "type" : "field",
8044 "value" : ["userMetadata.int_meta", "new_bytes"]
8045 },
8046 "right" : {
8047 "type" : "hexstr",
8048 "value" : "0x0004"
8049 }
8050 }
8051 },
8052 "right" : {
8053 "type" : "hexstr",
8054 "value" : "0xffff"
8055 }
8056 }
8057 }
8058 }
8059 ],
8060 "source_info" : {
8061 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008062 "line" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008063 "column" : 8,
8064 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
8065 }
8066 }
8067 ]
8068 },
8069 {
8070 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008071 "id" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008072 "runtime_data" : [],
8073 "primitives" : [
8074 {
8075 "op" : "add_header",
8076 "parameters" : [
8077 {
8078 "type" : "header",
8079 "value" : "int_egress_tx_util"
8080 }
8081 ],
8082 "source_info" : {
8083 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008084 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008085 "column" : 8,
8086 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8087 }
8088 },
8089 {
8090 "op" : "assign",
8091 "parameters" : [
8092 {
8093 "type" : "field",
8094 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8095 },
8096 {
8097 "type" : "hexstr",
8098 "value" : "0x00000000"
8099 }
8100 ],
8101 "source_info" : {
8102 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008103 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008104 "column" : 8,
8105 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8106 }
8107 },
8108 {
8109 "op" : "add_header",
8110 "parameters" : [
8111 {
8112 "type" : "header",
8113 "value" : "int_q_congestion"
8114 }
8115 ],
8116 "source_info" : {
8117 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008118 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008119 "column" : 8,
8120 "source_fragment" : "hdr.int_q_congestion.setValid()"
8121 }
8122 },
8123 {
8124 "op" : "assign",
8125 "parameters" : [
8126 {
8127 "type" : "field",
8128 "value" : ["int_q_congestion", "q_id"]
8129 },
8130 {
8131 "type" : "hexstr",
8132 "value" : "0x00"
8133 }
8134 ],
8135 "source_info" : {
8136 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008137 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008138 "column" : 8,
8139 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8140 }
8141 },
8142 {
8143 "op" : "assign",
8144 "parameters" : [
8145 {
8146 "type" : "field",
8147 "value" : ["int_q_congestion", "q_congestion"]
8148 },
8149 {
8150 "type" : "hexstr",
8151 "value" : "0x000000"
8152 }
8153 ],
8154 "source_info" : {
8155 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008156 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008157 "column" : 8,
8158 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8159 }
8160 },
8161 {
8162 "op" : "assign",
8163 "parameters" : [
8164 {
8165 "type" : "field",
8166 "value" : ["userMetadata.int_meta", "new_words"]
8167 },
8168 {
8169 "type" : "expression",
8170 "value" : {
8171 "type" : "expression",
8172 "value" : {
8173 "op" : "&",
8174 "left" : {
8175 "type" : "expression",
8176 "value" : {
8177 "op" : "+",
8178 "left" : {
8179 "type" : "field",
8180 "value" : ["userMetadata.int_meta", "new_words"]
8181 },
8182 "right" : {
8183 "type" : "hexstr",
8184 "value" : "0x02"
8185 }
8186 }
8187 },
8188 "right" : {
8189 "type" : "hexstr",
8190 "value" : "0xff"
8191 }
8192 }
8193 }
8194 }
8195 ],
8196 "source_info" : {
8197 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008198 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008199 "column" : 8,
8200 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
8201 }
8202 },
8203 {
8204 "op" : "assign",
8205 "parameters" : [
8206 {
8207 "type" : "field",
8208 "value" : ["userMetadata.int_meta", "new_bytes"]
8209 },
8210 {
8211 "type" : "expression",
8212 "value" : {
8213 "type" : "expression",
8214 "value" : {
8215 "op" : "&",
8216 "left" : {
8217 "type" : "expression",
8218 "value" : {
8219 "op" : "+",
8220 "left" : {
8221 "type" : "field",
8222 "value" : ["userMetadata.int_meta", "new_bytes"]
8223 },
8224 "right" : {
8225 "type" : "hexstr",
8226 "value" : "0x0008"
8227 }
8228 }
8229 },
8230 "right" : {
8231 "type" : "hexstr",
8232 "value" : "0xffff"
8233 }
8234 }
8235 }
8236 }
8237 ],
8238 "source_info" : {
8239 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008240 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008241 "column" : 8,
8242 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
8243 }
8244 }
8245 ]
8246 },
8247 {
8248 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008249 "id" : 81,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008250 "runtime_data" : [],
8251 "primitives" : [
8252 {
8253 "op" : "add_header",
8254 "parameters" : [
8255 {
8256 "type" : "header",
8257 "value" : "int_egress_tstamp"
8258 }
8259 ],
8260 "source_info" : {
8261 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008262 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008263 "column" : 8,
8264 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8265 }
8266 },
8267 {
8268 "op" : "assign",
8269 "parameters" : [
8270 {
8271 "type" : "field",
8272 "value" : ["int_egress_tstamp", "egress_tstamp"]
8273 },
8274 {
8275 "type" : "expression",
8276 "value" : {
8277 "type" : "expression",
8278 "value" : {
8279 "op" : "&",
8280 "left" : {
8281 "type" : "expression",
8282 "value" : {
8283 "op" : "+",
8284 "left" : {
8285 "type" : "field",
8286 "value" : ["standard_metadata", "enq_timestamp"]
8287 },
8288 "right" : {
8289 "type" : "field",
8290 "value" : ["standard_metadata", "deq_timedelta"]
8291 }
8292 }
8293 },
8294 "right" : {
8295 "type" : "hexstr",
8296 "value" : "0xffffffff"
8297 }
8298 }
8299 }
8300 }
8301 ],
8302 "source_info" : {
8303 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008304 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008305 "column" : 8,
8306 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8307 }
8308 },
8309 {
8310 "op" : "assign",
8311 "parameters" : [
8312 {
8313 "type" : "field",
8314 "value" : ["userMetadata.int_meta", "new_words"]
8315 },
8316 {
8317 "type" : "expression",
8318 "value" : {
8319 "type" : "expression",
8320 "value" : {
8321 "op" : "&",
8322 "left" : {
8323 "type" : "expression",
8324 "value" : {
8325 "op" : "+",
8326 "left" : {
8327 "type" : "field",
8328 "value" : ["userMetadata.int_meta", "new_words"]
8329 },
8330 "right" : {
8331 "type" : "hexstr",
8332 "value" : "0x01"
8333 }
8334 }
8335 },
8336 "right" : {
8337 "type" : "hexstr",
8338 "value" : "0xff"
8339 }
8340 }
8341 }
8342 }
8343 ],
8344 "source_info" : {
8345 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008346 "line" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008347 "column" : 8,
8348 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
8349 }
8350 },
8351 {
8352 "op" : "assign",
8353 "parameters" : [
8354 {
8355 "type" : "field",
8356 "value" : ["userMetadata.int_meta", "new_bytes"]
8357 },
8358 {
8359 "type" : "expression",
8360 "value" : {
8361 "type" : "expression",
8362 "value" : {
8363 "op" : "&",
8364 "left" : {
8365 "type" : "expression",
8366 "value" : {
8367 "op" : "+",
8368 "left" : {
8369 "type" : "field",
8370 "value" : ["userMetadata.int_meta", "new_bytes"]
8371 },
8372 "right" : {
8373 "type" : "hexstr",
8374 "value" : "0x0004"
8375 }
8376 }
8377 },
8378 "right" : {
8379 "type" : "hexstr",
8380 "value" : "0xffff"
8381 }
8382 }
8383 }
8384 }
8385 ],
8386 "source_info" : {
8387 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008388 "line" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008389 "column" : 8,
8390 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
8391 }
8392 }
8393 ]
8394 },
8395 {
8396 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008397 "id" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008398 "runtime_data" : [],
8399 "primitives" : [
8400 {
8401 "op" : "add_header",
8402 "parameters" : [
8403 {
8404 "type" : "header",
8405 "value" : "int_egress_tx_util"
8406 }
8407 ],
8408 "source_info" : {
8409 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008410 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008411 "column" : 8,
8412 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8413 }
8414 },
8415 {
8416 "op" : "assign",
8417 "parameters" : [
8418 {
8419 "type" : "field",
8420 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8421 },
8422 {
8423 "type" : "hexstr",
8424 "value" : "0x00000000"
8425 }
8426 ],
8427 "source_info" : {
8428 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008429 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008430 "column" : 8,
8431 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8432 }
8433 },
8434 {
8435 "op" : "add_header",
8436 "parameters" : [
8437 {
8438 "type" : "header",
8439 "value" : "int_egress_tstamp"
8440 }
8441 ],
8442 "source_info" : {
8443 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008444 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008445 "column" : 8,
8446 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8447 }
8448 },
8449 {
8450 "op" : "assign",
8451 "parameters" : [
8452 {
8453 "type" : "field",
8454 "value" : ["int_egress_tstamp", "egress_tstamp"]
8455 },
8456 {
8457 "type" : "expression",
8458 "value" : {
8459 "type" : "expression",
8460 "value" : {
8461 "op" : "&",
8462 "left" : {
8463 "type" : "expression",
8464 "value" : {
8465 "op" : "+",
8466 "left" : {
8467 "type" : "field",
8468 "value" : ["standard_metadata", "enq_timestamp"]
8469 },
8470 "right" : {
8471 "type" : "field",
8472 "value" : ["standard_metadata", "deq_timedelta"]
8473 }
8474 }
8475 },
8476 "right" : {
8477 "type" : "hexstr",
8478 "value" : "0xffffffff"
8479 }
8480 }
8481 }
8482 }
8483 ],
8484 "source_info" : {
8485 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008486 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008487 "column" : 8,
8488 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8489 }
8490 },
8491 {
8492 "op" : "assign",
8493 "parameters" : [
8494 {
8495 "type" : "field",
8496 "value" : ["userMetadata.int_meta", "new_words"]
8497 },
8498 {
8499 "type" : "expression",
8500 "value" : {
8501 "type" : "expression",
8502 "value" : {
8503 "op" : "&",
8504 "left" : {
8505 "type" : "expression",
8506 "value" : {
8507 "op" : "+",
8508 "left" : {
8509 "type" : "field",
8510 "value" : ["userMetadata.int_meta", "new_words"]
8511 },
8512 "right" : {
8513 "type" : "hexstr",
8514 "value" : "0x02"
8515 }
8516 }
8517 },
8518 "right" : {
8519 "type" : "hexstr",
8520 "value" : "0xff"
8521 }
8522 }
8523 }
8524 }
8525 ],
8526 "source_info" : {
8527 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008528 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008529 "column" : 8,
8530 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
8531 }
8532 },
8533 {
8534 "op" : "assign",
8535 "parameters" : [
8536 {
8537 "type" : "field",
8538 "value" : ["userMetadata.int_meta", "new_bytes"]
8539 },
8540 {
8541 "type" : "expression",
8542 "value" : {
8543 "type" : "expression",
8544 "value" : {
8545 "op" : "&",
8546 "left" : {
8547 "type" : "expression",
8548 "value" : {
8549 "op" : "+",
8550 "left" : {
8551 "type" : "field",
8552 "value" : ["userMetadata.int_meta", "new_bytes"]
8553 },
8554 "right" : {
8555 "type" : "hexstr",
8556 "value" : "0x0008"
8557 }
8558 }
8559 },
8560 "right" : {
8561 "type" : "hexstr",
8562 "value" : "0xffff"
8563 }
8564 }
8565 }
8566 }
8567 ],
8568 "source_info" : {
8569 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008570 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008571 "column" : 8,
8572 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
8573 }
8574 }
8575 ]
8576 },
8577 {
8578 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008579 "id" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008580 "runtime_data" : [],
8581 "primitives" : [
8582 {
8583 "op" : "add_header",
8584 "parameters" : [
8585 {
8586 "type" : "header",
8587 "value" : "int_q_congestion"
8588 }
8589 ],
8590 "source_info" : {
8591 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008592 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008593 "column" : 8,
8594 "source_fragment" : "hdr.int_q_congestion.setValid()"
8595 }
8596 },
8597 {
8598 "op" : "assign",
8599 "parameters" : [
8600 {
8601 "type" : "field",
8602 "value" : ["int_q_congestion", "q_id"]
8603 },
8604 {
8605 "type" : "hexstr",
8606 "value" : "0x00"
8607 }
8608 ],
8609 "source_info" : {
8610 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008611 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008612 "column" : 8,
8613 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8614 }
8615 },
8616 {
8617 "op" : "assign",
8618 "parameters" : [
8619 {
8620 "type" : "field",
8621 "value" : ["int_q_congestion", "q_congestion"]
8622 },
8623 {
8624 "type" : "hexstr",
8625 "value" : "0x000000"
8626 }
8627 ],
8628 "source_info" : {
8629 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008630 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008631 "column" : 8,
8632 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8633 }
8634 },
8635 {
8636 "op" : "add_header",
8637 "parameters" : [
8638 {
8639 "type" : "header",
8640 "value" : "int_egress_tstamp"
8641 }
8642 ],
8643 "source_info" : {
8644 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008645 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008646 "column" : 8,
8647 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8648 }
8649 },
8650 {
8651 "op" : "assign",
8652 "parameters" : [
8653 {
8654 "type" : "field",
8655 "value" : ["int_egress_tstamp", "egress_tstamp"]
8656 },
8657 {
8658 "type" : "expression",
8659 "value" : {
8660 "type" : "expression",
8661 "value" : {
8662 "op" : "&",
8663 "left" : {
8664 "type" : "expression",
8665 "value" : {
8666 "op" : "+",
8667 "left" : {
8668 "type" : "field",
8669 "value" : ["standard_metadata", "enq_timestamp"]
8670 },
8671 "right" : {
8672 "type" : "field",
8673 "value" : ["standard_metadata", "deq_timedelta"]
8674 }
8675 }
8676 },
8677 "right" : {
8678 "type" : "hexstr",
8679 "value" : "0xffffffff"
8680 }
8681 }
8682 }
8683 }
8684 ],
8685 "source_info" : {
8686 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008687 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008688 "column" : 8,
8689 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8690 }
8691 },
8692 {
8693 "op" : "assign",
8694 "parameters" : [
8695 {
8696 "type" : "field",
8697 "value" : ["userMetadata.int_meta", "new_words"]
8698 },
8699 {
8700 "type" : "expression",
8701 "value" : {
8702 "type" : "expression",
8703 "value" : {
8704 "op" : "&",
8705 "left" : {
8706 "type" : "expression",
8707 "value" : {
8708 "op" : "+",
8709 "left" : {
8710 "type" : "field",
8711 "value" : ["userMetadata.int_meta", "new_words"]
8712 },
8713 "right" : {
8714 "type" : "hexstr",
8715 "value" : "0x02"
8716 }
8717 }
8718 },
8719 "right" : {
8720 "type" : "hexstr",
8721 "value" : "0xff"
8722 }
8723 }
8724 }
8725 }
8726 ],
8727 "source_info" : {
8728 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008729 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008730 "column" : 8,
8731 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
8732 }
8733 },
8734 {
8735 "op" : "assign",
8736 "parameters" : [
8737 {
8738 "type" : "field",
8739 "value" : ["userMetadata.int_meta", "new_bytes"]
8740 },
8741 {
8742 "type" : "expression",
8743 "value" : {
8744 "type" : "expression",
8745 "value" : {
8746 "op" : "&",
8747 "left" : {
8748 "type" : "expression",
8749 "value" : {
8750 "op" : "+",
8751 "left" : {
8752 "type" : "field",
8753 "value" : ["userMetadata.int_meta", "new_bytes"]
8754 },
8755 "right" : {
8756 "type" : "hexstr",
8757 "value" : "0x0008"
8758 }
8759 }
8760 },
8761 "right" : {
8762 "type" : "hexstr",
8763 "value" : "0xffff"
8764 }
8765 }
8766 }
8767 }
8768 ],
8769 "source_info" : {
8770 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008771 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008772 "column" : 8,
8773 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
8774 }
8775 }
8776 ]
8777 },
8778 {
8779 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008780 "id" : 84,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008781 "runtime_data" : [],
8782 "primitives" : [
8783 {
8784 "op" : "add_header",
8785 "parameters" : [
8786 {
8787 "type" : "header",
8788 "value" : "int_egress_tx_util"
8789 }
8790 ],
8791 "source_info" : {
8792 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008793 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008794 "column" : 8,
8795 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8796 }
8797 },
8798 {
8799 "op" : "assign",
8800 "parameters" : [
8801 {
8802 "type" : "field",
8803 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8804 },
8805 {
8806 "type" : "hexstr",
8807 "value" : "0x00000000"
8808 }
8809 ],
8810 "source_info" : {
8811 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008812 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008813 "column" : 8,
8814 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8815 }
8816 },
8817 {
8818 "op" : "add_header",
8819 "parameters" : [
8820 {
8821 "type" : "header",
8822 "value" : "int_q_congestion"
8823 }
8824 ],
8825 "source_info" : {
8826 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008827 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008828 "column" : 8,
8829 "source_fragment" : "hdr.int_q_congestion.setValid()"
8830 }
8831 },
8832 {
8833 "op" : "assign",
8834 "parameters" : [
8835 {
8836 "type" : "field",
8837 "value" : ["int_q_congestion", "q_id"]
8838 },
8839 {
8840 "type" : "hexstr",
8841 "value" : "0x00"
8842 }
8843 ],
8844 "source_info" : {
8845 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008846 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008847 "column" : 8,
8848 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8849 }
8850 },
8851 {
8852 "op" : "assign",
8853 "parameters" : [
8854 {
8855 "type" : "field",
8856 "value" : ["int_q_congestion", "q_congestion"]
8857 },
8858 {
8859 "type" : "hexstr",
8860 "value" : "0x000000"
8861 }
8862 ],
8863 "source_info" : {
8864 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008865 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008866 "column" : 8,
8867 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8868 }
8869 },
8870 {
8871 "op" : "add_header",
8872 "parameters" : [
8873 {
8874 "type" : "header",
8875 "value" : "int_egress_tstamp"
8876 }
8877 ],
8878 "source_info" : {
8879 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008880 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008881 "column" : 8,
8882 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8883 }
8884 },
8885 {
8886 "op" : "assign",
8887 "parameters" : [
8888 {
8889 "type" : "field",
8890 "value" : ["int_egress_tstamp", "egress_tstamp"]
8891 },
8892 {
8893 "type" : "expression",
8894 "value" : {
8895 "type" : "expression",
8896 "value" : {
8897 "op" : "&",
8898 "left" : {
8899 "type" : "expression",
8900 "value" : {
8901 "op" : "+",
8902 "left" : {
8903 "type" : "field",
8904 "value" : ["standard_metadata", "enq_timestamp"]
8905 },
8906 "right" : {
8907 "type" : "field",
8908 "value" : ["standard_metadata", "deq_timedelta"]
8909 }
8910 }
8911 },
8912 "right" : {
8913 "type" : "hexstr",
8914 "value" : "0xffffffff"
8915 }
8916 }
8917 }
8918 }
8919 ],
8920 "source_info" : {
8921 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008922 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008923 "column" : 8,
8924 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8925 }
8926 },
8927 {
8928 "op" : "assign",
8929 "parameters" : [
8930 {
8931 "type" : "field",
8932 "value" : ["userMetadata.int_meta", "new_words"]
8933 },
8934 {
8935 "type" : "expression",
8936 "value" : {
8937 "type" : "expression",
8938 "value" : {
8939 "op" : "&",
8940 "left" : {
8941 "type" : "expression",
8942 "value" : {
8943 "op" : "+",
8944 "left" : {
8945 "type" : "field",
8946 "value" : ["userMetadata.int_meta", "new_words"]
8947 },
8948 "right" : {
8949 "type" : "hexstr",
8950 "value" : "0x03"
8951 }
8952 }
8953 },
8954 "right" : {
8955 "type" : "hexstr",
8956 "value" : "0xff"
8957 }
8958 }
8959 }
8960 }
8961 ],
8962 "source_info" : {
8963 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008964 "line" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008965 "column" : 8,
8966 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
8967 }
8968 },
8969 {
8970 "op" : "assign",
8971 "parameters" : [
8972 {
8973 "type" : "field",
8974 "value" : ["userMetadata.int_meta", "new_bytes"]
8975 },
8976 {
8977 "type" : "expression",
8978 "value" : {
8979 "type" : "expression",
8980 "value" : {
8981 "op" : "&",
8982 "left" : {
8983 "type" : "expression",
8984 "value" : {
8985 "op" : "+",
8986 "left" : {
8987 "type" : "field",
8988 "value" : ["userMetadata.int_meta", "new_bytes"]
8989 },
8990 "right" : {
8991 "type" : "hexstr",
8992 "value" : "0x000c"
8993 }
8994 }
8995 },
8996 "right" : {
8997 "type" : "hexstr",
8998 "value" : "0xffff"
8999 }
9000 }
9001 }
9002 }
9003 ],
9004 "source_info" : {
9005 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009006 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009007 "column" : 8,
9008 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
9009 }
9010 }
9011 ]
9012 },
9013 {
9014 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009015 "id" : 85,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009016 "runtime_data" : [],
9017 "primitives" : [
9018 {
9019 "op" : "add_header",
9020 "parameters" : [
9021 {
9022 "type" : "header",
9023 "value" : "int_ingress_tstamp"
9024 }
9025 ],
9026 "source_info" : {
9027 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009028 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009029 "column" : 8,
9030 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9031 }
9032 },
9033 {
9034 "op" : "assign",
9035 "parameters" : [
9036 {
9037 "type" : "field",
9038 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9039 },
9040 {
9041 "type" : "field",
9042 "value" : ["standard_metadata", "enq_timestamp"]
9043 }
9044 ],
9045 "source_info" : {
9046 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009047 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009048 "column" : 8,
9049 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9050 }
9051 },
9052 {
9053 "op" : "assign",
9054 "parameters" : [
9055 {
9056 "type" : "field",
9057 "value" : ["userMetadata.int_meta", "new_words"]
9058 },
9059 {
9060 "type" : "expression",
9061 "value" : {
9062 "type" : "expression",
9063 "value" : {
9064 "op" : "&",
9065 "left" : {
9066 "type" : "expression",
9067 "value" : {
9068 "op" : "+",
9069 "left" : {
9070 "type" : "field",
9071 "value" : ["userMetadata.int_meta", "new_words"]
9072 },
9073 "right" : {
9074 "type" : "hexstr",
9075 "value" : "0x01"
9076 }
9077 }
9078 },
9079 "right" : {
9080 "type" : "hexstr",
9081 "value" : "0xff"
9082 }
9083 }
9084 }
9085 }
9086 ],
9087 "source_info" : {
9088 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009089 "line" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009090 "column" : 8,
9091 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 1"
9092 }
9093 },
9094 {
9095 "op" : "assign",
9096 "parameters" : [
9097 {
9098 "type" : "field",
9099 "value" : ["userMetadata.int_meta", "new_bytes"]
9100 },
9101 {
9102 "type" : "expression",
9103 "value" : {
9104 "type" : "expression",
9105 "value" : {
9106 "op" : "&",
9107 "left" : {
9108 "type" : "expression",
9109 "value" : {
9110 "op" : "+",
9111 "left" : {
9112 "type" : "field",
9113 "value" : ["userMetadata.int_meta", "new_bytes"]
9114 },
9115 "right" : {
9116 "type" : "hexstr",
9117 "value" : "0x0004"
9118 }
9119 }
9120 },
9121 "right" : {
9122 "type" : "hexstr",
9123 "value" : "0xffff"
9124 }
9125 }
9126 }
9127 }
9128 ],
9129 "source_info" : {
9130 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009131 "line" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009132 "column" : 8,
9133 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 4"
9134 }
9135 }
9136 ]
9137 },
9138 {
9139 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009140 "id" : 86,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009141 "runtime_data" : [],
9142 "primitives" : [
9143 {
9144 "op" : "add_header",
9145 "parameters" : [
9146 {
9147 "type" : "header",
9148 "value" : "int_egress_tx_util"
9149 }
9150 ],
9151 "source_info" : {
9152 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009153 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009154 "column" : 8,
9155 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9156 }
9157 },
9158 {
9159 "op" : "assign",
9160 "parameters" : [
9161 {
9162 "type" : "field",
9163 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9164 },
9165 {
9166 "type" : "hexstr",
9167 "value" : "0x00000000"
9168 }
9169 ],
9170 "source_info" : {
9171 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009172 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009173 "column" : 8,
9174 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9175 }
9176 },
9177 {
9178 "op" : "add_header",
9179 "parameters" : [
9180 {
9181 "type" : "header",
9182 "value" : "int_ingress_tstamp"
9183 }
9184 ],
9185 "source_info" : {
9186 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009187 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009188 "column" : 8,
9189 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9190 }
9191 },
9192 {
9193 "op" : "assign",
9194 "parameters" : [
9195 {
9196 "type" : "field",
9197 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9198 },
9199 {
9200 "type" : "field",
9201 "value" : ["standard_metadata", "enq_timestamp"]
9202 }
9203 ],
9204 "source_info" : {
9205 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009206 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009207 "column" : 8,
9208 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9209 }
9210 },
9211 {
9212 "op" : "assign",
9213 "parameters" : [
9214 {
9215 "type" : "field",
9216 "value" : ["userMetadata.int_meta", "new_words"]
9217 },
9218 {
9219 "type" : "expression",
9220 "value" : {
9221 "type" : "expression",
9222 "value" : {
9223 "op" : "&",
9224 "left" : {
9225 "type" : "expression",
9226 "value" : {
9227 "op" : "+",
9228 "left" : {
9229 "type" : "field",
9230 "value" : ["userMetadata.int_meta", "new_words"]
9231 },
9232 "right" : {
9233 "type" : "hexstr",
9234 "value" : "0x02"
9235 }
9236 }
9237 },
9238 "right" : {
9239 "type" : "hexstr",
9240 "value" : "0xff"
9241 }
9242 }
9243 }
9244 }
9245 ],
9246 "source_info" : {
9247 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009248 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009249 "column" : 8,
9250 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9251 }
9252 },
9253 {
9254 "op" : "assign",
9255 "parameters" : [
9256 {
9257 "type" : "field",
9258 "value" : ["userMetadata.int_meta", "new_bytes"]
9259 },
9260 {
9261 "type" : "expression",
9262 "value" : {
9263 "type" : "expression",
9264 "value" : {
9265 "op" : "&",
9266 "left" : {
9267 "type" : "expression",
9268 "value" : {
9269 "op" : "+",
9270 "left" : {
9271 "type" : "field",
9272 "value" : ["userMetadata.int_meta", "new_bytes"]
9273 },
9274 "right" : {
9275 "type" : "hexstr",
9276 "value" : "0x0008"
9277 }
9278 }
9279 },
9280 "right" : {
9281 "type" : "hexstr",
9282 "value" : "0xffff"
9283 }
9284 }
9285 }
9286 }
9287 ],
9288 "source_info" : {
9289 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009290 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009291 "column" : 8,
9292 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9293 }
9294 }
9295 ]
9296 },
9297 {
9298 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009299 "id" : 87,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009300 "runtime_data" : [],
9301 "primitives" : [
9302 {
9303 "op" : "add_header",
9304 "parameters" : [
9305 {
9306 "type" : "header",
9307 "value" : "int_q_congestion"
9308 }
9309 ],
9310 "source_info" : {
9311 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009312 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009313 "column" : 8,
9314 "source_fragment" : "hdr.int_q_congestion.setValid()"
9315 }
9316 },
9317 {
9318 "op" : "assign",
9319 "parameters" : [
9320 {
9321 "type" : "field",
9322 "value" : ["int_q_congestion", "q_id"]
9323 },
9324 {
9325 "type" : "hexstr",
9326 "value" : "0x00"
9327 }
9328 ],
9329 "source_info" : {
9330 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009331 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009332 "column" : 8,
9333 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9334 }
9335 },
9336 {
9337 "op" : "assign",
9338 "parameters" : [
9339 {
9340 "type" : "field",
9341 "value" : ["int_q_congestion", "q_congestion"]
9342 },
9343 {
9344 "type" : "hexstr",
9345 "value" : "0x000000"
9346 }
9347 ],
9348 "source_info" : {
9349 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009350 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009351 "column" : 8,
9352 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9353 }
9354 },
9355 {
9356 "op" : "add_header",
9357 "parameters" : [
9358 {
9359 "type" : "header",
9360 "value" : "int_ingress_tstamp"
9361 }
9362 ],
9363 "source_info" : {
9364 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009365 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009366 "column" : 8,
9367 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9368 }
9369 },
9370 {
9371 "op" : "assign",
9372 "parameters" : [
9373 {
9374 "type" : "field",
9375 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9376 },
9377 {
9378 "type" : "field",
9379 "value" : ["standard_metadata", "enq_timestamp"]
9380 }
9381 ],
9382 "source_info" : {
9383 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009384 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009385 "column" : 8,
9386 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9387 }
9388 },
9389 {
9390 "op" : "assign",
9391 "parameters" : [
9392 {
9393 "type" : "field",
9394 "value" : ["userMetadata.int_meta", "new_words"]
9395 },
9396 {
9397 "type" : "expression",
9398 "value" : {
9399 "type" : "expression",
9400 "value" : {
9401 "op" : "&",
9402 "left" : {
9403 "type" : "expression",
9404 "value" : {
9405 "op" : "+",
9406 "left" : {
9407 "type" : "field",
9408 "value" : ["userMetadata.int_meta", "new_words"]
9409 },
9410 "right" : {
9411 "type" : "hexstr",
9412 "value" : "0x02"
9413 }
9414 }
9415 },
9416 "right" : {
9417 "type" : "hexstr",
9418 "value" : "0xff"
9419 }
9420 }
9421 }
9422 }
9423 ],
9424 "source_info" : {
9425 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009426 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009427 "column" : 8,
9428 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9429 }
9430 },
9431 {
9432 "op" : "assign",
9433 "parameters" : [
9434 {
9435 "type" : "field",
9436 "value" : ["userMetadata.int_meta", "new_bytes"]
9437 },
9438 {
9439 "type" : "expression",
9440 "value" : {
9441 "type" : "expression",
9442 "value" : {
9443 "op" : "&",
9444 "left" : {
9445 "type" : "expression",
9446 "value" : {
9447 "op" : "+",
9448 "left" : {
9449 "type" : "field",
9450 "value" : ["userMetadata.int_meta", "new_bytes"]
9451 },
9452 "right" : {
9453 "type" : "hexstr",
9454 "value" : "0x0008"
9455 }
9456 }
9457 },
9458 "right" : {
9459 "type" : "hexstr",
9460 "value" : "0xffff"
9461 }
9462 }
9463 }
9464 }
9465 ],
9466 "source_info" : {
9467 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009468 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009469 "column" : 8,
9470 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9471 }
9472 }
9473 ]
9474 },
9475 {
9476 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009477 "id" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009478 "runtime_data" : [],
9479 "primitives" : [
9480 {
9481 "op" : "add_header",
9482 "parameters" : [
9483 {
9484 "type" : "header",
9485 "value" : "int_egress_tx_util"
9486 }
9487 ],
9488 "source_info" : {
9489 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009490 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009491 "column" : 8,
9492 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9493 }
9494 },
9495 {
9496 "op" : "assign",
9497 "parameters" : [
9498 {
9499 "type" : "field",
9500 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9501 },
9502 {
9503 "type" : "hexstr",
9504 "value" : "0x00000000"
9505 }
9506 ],
9507 "source_info" : {
9508 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009509 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009510 "column" : 8,
9511 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9512 }
9513 },
9514 {
9515 "op" : "add_header",
9516 "parameters" : [
9517 {
9518 "type" : "header",
9519 "value" : "int_q_congestion"
9520 }
9521 ],
9522 "source_info" : {
9523 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009524 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009525 "column" : 8,
9526 "source_fragment" : "hdr.int_q_congestion.setValid()"
9527 }
9528 },
9529 {
9530 "op" : "assign",
9531 "parameters" : [
9532 {
9533 "type" : "field",
9534 "value" : ["int_q_congestion", "q_id"]
9535 },
9536 {
9537 "type" : "hexstr",
9538 "value" : "0x00"
9539 }
9540 ],
9541 "source_info" : {
9542 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009543 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009544 "column" : 8,
9545 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9546 }
9547 },
9548 {
9549 "op" : "assign",
9550 "parameters" : [
9551 {
9552 "type" : "field",
9553 "value" : ["int_q_congestion", "q_congestion"]
9554 },
9555 {
9556 "type" : "hexstr",
9557 "value" : "0x000000"
9558 }
9559 ],
9560 "source_info" : {
9561 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009562 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009563 "column" : 8,
9564 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9565 }
9566 },
9567 {
9568 "op" : "add_header",
9569 "parameters" : [
9570 {
9571 "type" : "header",
9572 "value" : "int_ingress_tstamp"
9573 }
9574 ],
9575 "source_info" : {
9576 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009577 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009578 "column" : 8,
9579 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9580 }
9581 },
9582 {
9583 "op" : "assign",
9584 "parameters" : [
9585 {
9586 "type" : "field",
9587 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9588 },
9589 {
9590 "type" : "field",
9591 "value" : ["standard_metadata", "enq_timestamp"]
9592 }
9593 ],
9594 "source_info" : {
9595 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009596 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009597 "column" : 8,
9598 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9599 }
9600 },
9601 {
9602 "op" : "assign",
9603 "parameters" : [
9604 {
9605 "type" : "field",
9606 "value" : ["userMetadata.int_meta", "new_words"]
9607 },
9608 {
9609 "type" : "expression",
9610 "value" : {
9611 "type" : "expression",
9612 "value" : {
9613 "op" : "&",
9614 "left" : {
9615 "type" : "expression",
9616 "value" : {
9617 "op" : "+",
9618 "left" : {
9619 "type" : "field",
9620 "value" : ["userMetadata.int_meta", "new_words"]
9621 },
9622 "right" : {
9623 "type" : "hexstr",
9624 "value" : "0x03"
9625 }
9626 }
9627 },
9628 "right" : {
9629 "type" : "hexstr",
9630 "value" : "0xff"
9631 }
9632 }
9633 }
9634 }
9635 ],
9636 "source_info" : {
9637 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009638 "line" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009639 "column" : 8,
9640 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
9641 }
9642 },
9643 {
9644 "op" : "assign",
9645 "parameters" : [
9646 {
9647 "type" : "field",
9648 "value" : ["userMetadata.int_meta", "new_bytes"]
9649 },
9650 {
9651 "type" : "expression",
9652 "value" : {
9653 "type" : "expression",
9654 "value" : {
9655 "op" : "&",
9656 "left" : {
9657 "type" : "expression",
9658 "value" : {
9659 "op" : "+",
9660 "left" : {
9661 "type" : "field",
9662 "value" : ["userMetadata.int_meta", "new_bytes"]
9663 },
9664 "right" : {
9665 "type" : "hexstr",
9666 "value" : "0x000c"
9667 }
9668 }
9669 },
9670 "right" : {
9671 "type" : "hexstr",
9672 "value" : "0xffff"
9673 }
9674 }
9675 }
9676 }
9677 ],
9678 "source_info" : {
9679 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009680 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009681 "column" : 8,
9682 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
9683 }
9684 }
9685 ]
9686 },
9687 {
9688 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009689 "id" : 89,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009690 "runtime_data" : [],
9691 "primitives" : [
9692 {
9693 "op" : "add_header",
9694 "parameters" : [
9695 {
9696 "type" : "header",
9697 "value" : "int_egress_tstamp"
9698 }
9699 ],
9700 "source_info" : {
9701 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009702 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009703 "column" : 8,
9704 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9705 }
9706 },
9707 {
9708 "op" : "assign",
9709 "parameters" : [
9710 {
9711 "type" : "field",
9712 "value" : ["int_egress_tstamp", "egress_tstamp"]
9713 },
9714 {
9715 "type" : "expression",
9716 "value" : {
9717 "type" : "expression",
9718 "value" : {
9719 "op" : "&",
9720 "left" : {
9721 "type" : "expression",
9722 "value" : {
9723 "op" : "+",
9724 "left" : {
9725 "type" : "field",
9726 "value" : ["standard_metadata", "enq_timestamp"]
9727 },
9728 "right" : {
9729 "type" : "field",
9730 "value" : ["standard_metadata", "deq_timedelta"]
9731 }
9732 }
9733 },
9734 "right" : {
9735 "type" : "hexstr",
9736 "value" : "0xffffffff"
9737 }
9738 }
9739 }
9740 }
9741 ],
9742 "source_info" : {
9743 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009744 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009745 "column" : 8,
9746 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9747 }
9748 },
9749 {
9750 "op" : "add_header",
9751 "parameters" : [
9752 {
9753 "type" : "header",
9754 "value" : "int_ingress_tstamp"
9755 }
9756 ],
9757 "source_info" : {
9758 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009759 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009760 "column" : 8,
9761 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9762 }
9763 },
9764 {
9765 "op" : "assign",
9766 "parameters" : [
9767 {
9768 "type" : "field",
9769 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9770 },
9771 {
9772 "type" : "field",
9773 "value" : ["standard_metadata", "enq_timestamp"]
9774 }
9775 ],
9776 "source_info" : {
9777 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009778 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009779 "column" : 8,
9780 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9781 }
9782 },
9783 {
9784 "op" : "assign",
9785 "parameters" : [
9786 {
9787 "type" : "field",
9788 "value" : ["userMetadata.int_meta", "new_words"]
9789 },
9790 {
9791 "type" : "expression",
9792 "value" : {
9793 "type" : "expression",
9794 "value" : {
9795 "op" : "&",
9796 "left" : {
9797 "type" : "expression",
9798 "value" : {
9799 "op" : "+",
9800 "left" : {
9801 "type" : "field",
9802 "value" : ["userMetadata.int_meta", "new_words"]
9803 },
9804 "right" : {
9805 "type" : "hexstr",
9806 "value" : "0x02"
9807 }
9808 }
9809 },
9810 "right" : {
9811 "type" : "hexstr",
9812 "value" : "0xff"
9813 }
9814 }
9815 }
9816 }
9817 ],
9818 "source_info" : {
9819 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009820 "line" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009821 "column" : 8,
9822 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 2"
9823 }
9824 },
9825 {
9826 "op" : "assign",
9827 "parameters" : [
9828 {
9829 "type" : "field",
9830 "value" : ["userMetadata.int_meta", "new_bytes"]
9831 },
9832 {
9833 "type" : "expression",
9834 "value" : {
9835 "type" : "expression",
9836 "value" : {
9837 "op" : "&",
9838 "left" : {
9839 "type" : "expression",
9840 "value" : {
9841 "op" : "+",
9842 "left" : {
9843 "type" : "field",
9844 "value" : ["userMetadata.int_meta", "new_bytes"]
9845 },
9846 "right" : {
9847 "type" : "hexstr",
9848 "value" : "0x0008"
9849 }
9850 }
9851 },
9852 "right" : {
9853 "type" : "hexstr",
9854 "value" : "0xffff"
9855 }
9856 }
9857 }
9858 }
9859 ],
9860 "source_info" : {
9861 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009862 "line" : 104,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009863 "column" : 8,
9864 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 8"
9865 }
9866 }
9867 ]
9868 },
9869 {
9870 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009871 "id" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009872 "runtime_data" : [],
9873 "primitives" : [
9874 {
9875 "op" : "add_header",
9876 "parameters" : [
9877 {
9878 "type" : "header",
9879 "value" : "int_egress_tx_util"
9880 }
9881 ],
9882 "source_info" : {
9883 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009884 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009885 "column" : 8,
9886 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9887 }
9888 },
9889 {
9890 "op" : "assign",
9891 "parameters" : [
9892 {
9893 "type" : "field",
9894 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9895 },
9896 {
9897 "type" : "hexstr",
9898 "value" : "0x00000000"
9899 }
9900 ],
9901 "source_info" : {
9902 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009903 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009904 "column" : 8,
9905 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9906 }
9907 },
9908 {
9909 "op" : "add_header",
9910 "parameters" : [
9911 {
9912 "type" : "header",
9913 "value" : "int_egress_tstamp"
9914 }
9915 ],
9916 "source_info" : {
9917 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009918 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009919 "column" : 8,
9920 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9921 }
9922 },
9923 {
9924 "op" : "assign",
9925 "parameters" : [
9926 {
9927 "type" : "field",
9928 "value" : ["int_egress_tstamp", "egress_tstamp"]
9929 },
9930 {
9931 "type" : "expression",
9932 "value" : {
9933 "type" : "expression",
9934 "value" : {
9935 "op" : "&",
9936 "left" : {
9937 "type" : "expression",
9938 "value" : {
9939 "op" : "+",
9940 "left" : {
9941 "type" : "field",
9942 "value" : ["standard_metadata", "enq_timestamp"]
9943 },
9944 "right" : {
9945 "type" : "field",
9946 "value" : ["standard_metadata", "deq_timedelta"]
9947 }
9948 }
9949 },
9950 "right" : {
9951 "type" : "hexstr",
9952 "value" : "0xffffffff"
9953 }
9954 }
9955 }
9956 }
9957 ],
9958 "source_info" : {
9959 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009960 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009961 "column" : 8,
9962 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9963 }
9964 },
9965 {
9966 "op" : "add_header",
9967 "parameters" : [
9968 {
9969 "type" : "header",
9970 "value" : "int_ingress_tstamp"
9971 }
9972 ],
9973 "source_info" : {
9974 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009975 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009976 "column" : 8,
9977 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9978 }
9979 },
9980 {
9981 "op" : "assign",
9982 "parameters" : [
9983 {
9984 "type" : "field",
9985 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9986 },
9987 {
9988 "type" : "field",
9989 "value" : ["standard_metadata", "enq_timestamp"]
9990 }
9991 ],
9992 "source_info" : {
9993 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009994 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009995 "column" : 8,
9996 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9997 }
9998 },
9999 {
10000 "op" : "assign",
10001 "parameters" : [
10002 {
10003 "type" : "field",
10004 "value" : ["userMetadata.int_meta", "new_words"]
10005 },
10006 {
10007 "type" : "expression",
10008 "value" : {
10009 "type" : "expression",
10010 "value" : {
10011 "op" : "&",
10012 "left" : {
10013 "type" : "expression",
10014 "value" : {
10015 "op" : "+",
10016 "left" : {
10017 "type" : "field",
10018 "value" : ["userMetadata.int_meta", "new_words"]
10019 },
10020 "right" : {
10021 "type" : "hexstr",
10022 "value" : "0x03"
10023 }
10024 }
10025 },
10026 "right" : {
10027 "type" : "hexstr",
10028 "value" : "0xff"
10029 }
10030 }
10031 }
10032 }
10033 ],
10034 "source_info" : {
10035 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010036 "line" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010037 "column" : 8,
10038 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
10039 }
10040 },
10041 {
10042 "op" : "assign",
10043 "parameters" : [
10044 {
10045 "type" : "field",
10046 "value" : ["userMetadata.int_meta", "new_bytes"]
10047 },
10048 {
10049 "type" : "expression",
10050 "value" : {
10051 "type" : "expression",
10052 "value" : {
10053 "op" : "&",
10054 "left" : {
10055 "type" : "expression",
10056 "value" : {
10057 "op" : "+",
10058 "left" : {
10059 "type" : "field",
10060 "value" : ["userMetadata.int_meta", "new_bytes"]
10061 },
10062 "right" : {
10063 "type" : "hexstr",
10064 "value" : "0x000c"
10065 }
10066 }
10067 },
10068 "right" : {
10069 "type" : "hexstr",
10070 "value" : "0xffff"
10071 }
10072 }
10073 }
10074 }
10075 ],
10076 "source_info" : {
10077 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010078 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010079 "column" : 8,
10080 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
10081 }
10082 }
10083 ]
10084 },
10085 {
10086 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010087 "id" : 91,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010088 "runtime_data" : [],
10089 "primitives" : [
10090 {
10091 "op" : "add_header",
10092 "parameters" : [
10093 {
10094 "type" : "header",
10095 "value" : "int_q_congestion"
10096 }
10097 ],
10098 "source_info" : {
10099 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010100 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010101 "column" : 8,
10102 "source_fragment" : "hdr.int_q_congestion.setValid()"
10103 }
10104 },
10105 {
10106 "op" : "assign",
10107 "parameters" : [
10108 {
10109 "type" : "field",
10110 "value" : ["int_q_congestion", "q_id"]
10111 },
10112 {
10113 "type" : "hexstr",
10114 "value" : "0x00"
10115 }
10116 ],
10117 "source_info" : {
10118 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010119 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010120 "column" : 8,
10121 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10122 }
10123 },
10124 {
10125 "op" : "assign",
10126 "parameters" : [
10127 {
10128 "type" : "field",
10129 "value" : ["int_q_congestion", "q_congestion"]
10130 },
10131 {
10132 "type" : "hexstr",
10133 "value" : "0x000000"
10134 }
10135 ],
10136 "source_info" : {
10137 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010138 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010139 "column" : 8,
10140 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10141 }
10142 },
10143 {
10144 "op" : "add_header",
10145 "parameters" : [
10146 {
10147 "type" : "header",
10148 "value" : "int_egress_tstamp"
10149 }
10150 ],
10151 "source_info" : {
10152 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010153 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010154 "column" : 8,
10155 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10156 }
10157 },
10158 {
10159 "op" : "assign",
10160 "parameters" : [
10161 {
10162 "type" : "field",
10163 "value" : ["int_egress_tstamp", "egress_tstamp"]
10164 },
10165 {
10166 "type" : "expression",
10167 "value" : {
10168 "type" : "expression",
10169 "value" : {
10170 "op" : "&",
10171 "left" : {
10172 "type" : "expression",
10173 "value" : {
10174 "op" : "+",
10175 "left" : {
10176 "type" : "field",
10177 "value" : ["standard_metadata", "enq_timestamp"]
10178 },
10179 "right" : {
10180 "type" : "field",
10181 "value" : ["standard_metadata", "deq_timedelta"]
10182 }
10183 }
10184 },
10185 "right" : {
10186 "type" : "hexstr",
10187 "value" : "0xffffffff"
10188 }
10189 }
10190 }
10191 }
10192 ],
10193 "source_info" : {
10194 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010195 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010196 "column" : 8,
10197 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10198 }
10199 },
10200 {
10201 "op" : "add_header",
10202 "parameters" : [
10203 {
10204 "type" : "header",
10205 "value" : "int_ingress_tstamp"
10206 }
10207 ],
10208 "source_info" : {
10209 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010210 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010211 "column" : 8,
10212 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10213 }
10214 },
10215 {
10216 "op" : "assign",
10217 "parameters" : [
10218 {
10219 "type" : "field",
10220 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10221 },
10222 {
10223 "type" : "field",
10224 "value" : ["standard_metadata", "enq_timestamp"]
10225 }
10226 ],
10227 "source_info" : {
10228 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010229 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010230 "column" : 8,
10231 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10232 }
10233 },
10234 {
10235 "op" : "assign",
10236 "parameters" : [
10237 {
10238 "type" : "field",
10239 "value" : ["userMetadata.int_meta", "new_words"]
10240 },
10241 {
10242 "type" : "expression",
10243 "value" : {
10244 "type" : "expression",
10245 "value" : {
10246 "op" : "&",
10247 "left" : {
10248 "type" : "expression",
10249 "value" : {
10250 "op" : "+",
10251 "left" : {
10252 "type" : "field",
10253 "value" : ["userMetadata.int_meta", "new_words"]
10254 },
10255 "right" : {
10256 "type" : "hexstr",
10257 "value" : "0x03"
10258 }
10259 }
10260 },
10261 "right" : {
10262 "type" : "hexstr",
10263 "value" : "0xff"
10264 }
10265 }
10266 }
10267 }
10268 ],
10269 "source_info" : {
10270 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010271 "line" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010272 "column" : 8,
10273 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 3"
10274 }
10275 },
10276 {
10277 "op" : "assign",
10278 "parameters" : [
10279 {
10280 "type" : "field",
10281 "value" : ["userMetadata.int_meta", "new_bytes"]
10282 },
10283 {
10284 "type" : "expression",
10285 "value" : {
10286 "type" : "expression",
10287 "value" : {
10288 "op" : "&",
10289 "left" : {
10290 "type" : "expression",
10291 "value" : {
10292 "op" : "+",
10293 "left" : {
10294 "type" : "field",
10295 "value" : ["userMetadata.int_meta", "new_bytes"]
10296 },
10297 "right" : {
10298 "type" : "hexstr",
10299 "value" : "0x000c"
10300 }
10301 }
10302 },
10303 "right" : {
10304 "type" : "hexstr",
10305 "value" : "0xffff"
10306 }
10307 }
10308 }
10309 }
10310 ],
10311 "source_info" : {
10312 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010313 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010314 "column" : 8,
10315 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 12"
10316 }
10317 }
10318 ]
10319 },
10320 {
10321 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010322 "id" : 92,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010323 "runtime_data" : [],
10324 "primitives" : [
10325 {
10326 "op" : "add_header",
10327 "parameters" : [
10328 {
10329 "type" : "header",
10330 "value" : "int_egress_tx_util"
10331 }
10332 ],
10333 "source_info" : {
10334 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010335 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010336 "column" : 8,
10337 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10338 }
10339 },
10340 {
10341 "op" : "assign",
10342 "parameters" : [
10343 {
10344 "type" : "field",
10345 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10346 },
10347 {
10348 "type" : "hexstr",
10349 "value" : "0x00000000"
10350 }
10351 ],
10352 "source_info" : {
10353 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010354 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010355 "column" : 8,
10356 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10357 }
10358 },
10359 {
10360 "op" : "add_header",
10361 "parameters" : [
10362 {
10363 "type" : "header",
10364 "value" : "int_q_congestion"
10365 }
10366 ],
10367 "source_info" : {
10368 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010369 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010370 "column" : 8,
10371 "source_fragment" : "hdr.int_q_congestion.setValid()"
10372 }
10373 },
10374 {
10375 "op" : "assign",
10376 "parameters" : [
10377 {
10378 "type" : "field",
10379 "value" : ["int_q_congestion", "q_id"]
10380 },
10381 {
10382 "type" : "hexstr",
10383 "value" : "0x00"
10384 }
10385 ],
10386 "source_info" : {
10387 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010388 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010389 "column" : 8,
10390 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10391 }
10392 },
10393 {
10394 "op" : "assign",
10395 "parameters" : [
10396 {
10397 "type" : "field",
10398 "value" : ["int_q_congestion", "q_congestion"]
10399 },
10400 {
10401 "type" : "hexstr",
10402 "value" : "0x000000"
10403 }
10404 ],
10405 "source_info" : {
10406 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010407 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010408 "column" : 8,
10409 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10410 }
10411 },
10412 {
10413 "op" : "add_header",
10414 "parameters" : [
10415 {
10416 "type" : "header",
10417 "value" : "int_egress_tstamp"
10418 }
10419 ],
10420 "source_info" : {
10421 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010422 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010423 "column" : 8,
10424 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10425 }
10426 },
10427 {
10428 "op" : "assign",
10429 "parameters" : [
10430 {
10431 "type" : "field",
10432 "value" : ["int_egress_tstamp", "egress_tstamp"]
10433 },
10434 {
10435 "type" : "expression",
10436 "value" : {
10437 "type" : "expression",
10438 "value" : {
10439 "op" : "&",
10440 "left" : {
10441 "type" : "expression",
10442 "value" : {
10443 "op" : "+",
10444 "left" : {
10445 "type" : "field",
10446 "value" : ["standard_metadata", "enq_timestamp"]
10447 },
10448 "right" : {
10449 "type" : "field",
10450 "value" : ["standard_metadata", "deq_timedelta"]
10451 }
10452 }
10453 },
10454 "right" : {
10455 "type" : "hexstr",
10456 "value" : "0xffffffff"
10457 }
10458 }
10459 }
10460 }
10461 ],
10462 "source_info" : {
10463 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010464 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010465 "column" : 8,
10466 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10467 }
10468 },
10469 {
10470 "op" : "add_header",
10471 "parameters" : [
10472 {
10473 "type" : "header",
10474 "value" : "int_ingress_tstamp"
10475 }
10476 ],
10477 "source_info" : {
10478 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010479 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010480 "column" : 8,
10481 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10482 }
10483 },
10484 {
10485 "op" : "assign",
10486 "parameters" : [
10487 {
10488 "type" : "field",
10489 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10490 },
10491 {
10492 "type" : "field",
10493 "value" : ["standard_metadata", "enq_timestamp"]
10494 }
10495 ],
10496 "source_info" : {
10497 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010498 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010499 "column" : 8,
10500 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10501 }
10502 },
10503 {
10504 "op" : "assign",
10505 "parameters" : [
10506 {
10507 "type" : "field",
10508 "value" : ["userMetadata.int_meta", "new_words"]
10509 },
10510 {
10511 "type" : "expression",
10512 "value" : {
10513 "type" : "expression",
10514 "value" : {
10515 "op" : "&",
10516 "left" : {
10517 "type" : "expression",
10518 "value" : {
10519 "op" : "+",
10520 "left" : {
10521 "type" : "field",
10522 "value" : ["userMetadata.int_meta", "new_words"]
10523 },
10524 "right" : {
10525 "type" : "hexstr",
10526 "value" : "0x04"
10527 }
10528 }
10529 },
10530 "right" : {
10531 "type" : "hexstr",
10532 "value" : "0xff"
10533 }
10534 }
10535 }
10536 }
10537 ],
10538 "source_info" : {
10539 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010540 "line" : 115,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010541 "column" : 8,
10542 "source_fragment" : "fmeta.int_meta.new_words = fmeta.int_meta.new_words + 4"
10543 }
10544 },
10545 {
10546 "op" : "assign",
10547 "parameters" : [
10548 {
10549 "type" : "field",
10550 "value" : ["userMetadata.int_meta", "new_bytes"]
10551 },
10552 {
10553 "type" : "expression",
10554 "value" : {
10555 "type" : "expression",
10556 "value" : {
10557 "op" : "&",
10558 "left" : {
10559 "type" : "expression",
10560 "value" : {
10561 "op" : "+",
10562 "left" : {
10563 "type" : "field",
10564 "value" : ["userMetadata.int_meta", "new_bytes"]
10565 },
10566 "right" : {
10567 "type" : "hexstr",
10568 "value" : "0x0010"
10569 }
10570 }
10571 },
10572 "right" : {
10573 "type" : "hexstr",
10574 "value" : "0xffff"
10575 }
10576 }
10577 }
10578 }
10579 ],
10580 "source_info" : {
10581 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010582 "line" : 116,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010583 "column" : 8,
10584 "source_fragment" : "fmeta.int_meta.new_bytes = fmeta.int_meta.new_bytes + 16"
10585 }
10586 }
10587 ]
10588 },
10589 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010590 "name" : "FabricEgress.egress_next.pop_mpls_if_present",
10591 "id" : 93,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010592 "runtime_data" : [],
10593 "primitives" : [
10594 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010595 "op" : "remove_header",
10596 "parameters" : [
10597 {
10598 "type" : "header",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010599 "value" : "mpls"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010600 }
10601 ],
10602 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010603 "filename" : "include/control/next.p4",
10604 "line" : 246,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010605 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010606 "source_fragment" : "hdr.mpls.setInvalid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010607 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010608 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010609 {
10610 "op" : "assign",
10611 "parameters" : [
10612 {
10613 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010614 "value" : ["scalars", "fabric_metadata_t.eth_type"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010615 },
10616 {
10617 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010618 "value" : ["scalars", "fabric_metadata_t.ip_eth_type"]
10619 }
10620 ],
10621 "source_info" : {
10622 "filename" : "include/control/next.p4",
10623 "line" : 248,
10624 "column" : 8,
10625 "source_fragment" : "fabric_metadata.eth_type = fabric_metadata.ip_eth_type"
10626 }
10627 }
10628 ]
10629 },
10630 {
10631 "name" : "FabricEgress.egress_next.set_mpls",
10632 "id" : 94,
10633 "runtime_data" : [],
10634 "primitives" : [
10635 {
10636 "op" : "add_header",
10637 "parameters" : [
10638 {
10639 "type" : "header",
10640 "value" : "mpls"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010641 }
10642 ],
10643 "source_info" : {
10644 "filename" : "include/control/next.p4",
10645 "line" : 253,
10646 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010647 "source_fragment" : "hdr.mpls.setValid()"
10648 }
10649 },
10650 {
10651 "op" : "assign",
10652 "parameters" : [
10653 {
10654 "type" : "field",
10655 "value" : ["mpls", "label"]
10656 },
10657 {
10658 "type" : "field",
10659 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
10660 }
10661 ],
10662 "source_info" : {
10663 "filename" : "include/control/next.p4",
10664 "line" : 254,
10665 "column" : 8,
10666 "source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label"
10667 }
10668 },
10669 {
10670 "op" : "assign",
10671 "parameters" : [
10672 {
10673 "type" : "field",
10674 "value" : ["mpls", "tc"]
10675 },
10676 {
10677 "type" : "hexstr",
10678 "value" : "0x00"
10679 }
10680 ],
10681 "source_info" : {
10682 "filename" : "include/control/next.p4",
10683 "line" : 255,
10684 "column" : 8,
10685 "source_fragment" : "hdr.mpls.tc = 3w0"
10686 }
10687 },
10688 {
10689 "op" : "assign",
10690 "parameters" : [
10691 {
10692 "type" : "field",
10693 "value" : ["mpls", "bos"]
10694 },
10695 {
10696 "type" : "hexstr",
10697 "value" : "0x01"
10698 }
10699 ],
10700 "source_info" : {
10701 "filename" : "include/control/next.p4",
10702 "line" : 256,
10703 "column" : 8,
10704 "source_fragment" : "hdr.mpls.bos = 1w1"
10705 }
10706 },
10707 {
10708 "op" : "assign",
10709 "parameters" : [
10710 {
10711 "type" : "field",
10712 "value" : ["mpls", "ttl"]
10713 },
10714 {
10715 "type" : "field",
10716 "value" : ["scalars", "fabric_metadata_t.mpls_ttl"]
10717 }
10718 ],
10719 "source_info" : {
10720 "filename" : "include/control/next.p4",
10721 "line" : 257,
10722 "column" : 8,
10723 "source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl"
10724 }
10725 },
10726 {
10727 "op" : "assign",
10728 "parameters" : [
10729 {
10730 "type" : "field",
10731 "value" : ["scalars", "fabric_metadata_t.eth_type"]
10732 },
10733 {
10734 "type" : "hexstr",
10735 "value" : "0x8847"
10736 }
10737 ],
10738 "source_info" : {
10739 "filename" : "include/control/../define.p4",
10740 "line" : 108,
10741 "column" : 31,
10742 "source_fragment" : "0x8847; ..."
10743 }
10744 }
10745 ]
10746 },
10747 {
10748 "name" : "FabricEgress.egress_next.push_vlan",
10749 "id" : 95,
10750 "runtime_data" : [],
10751 "primitives" : [
10752 {
10753 "op" : "add_header",
10754 "parameters" : [
10755 {
10756 "type" : "header",
10757 "value" : "vlan_tag"
10758 }
10759 ],
10760 "source_info" : {
10761 "filename" : "include/control/next.p4",
10762 "line" : 265,
10763 "column" : 8,
10764 "source_fragment" : "hdr.vlan_tag.setValid()"
10765 }
10766 },
10767 {
10768 "op" : "assign",
10769 "parameters" : [
10770 {
10771 "type" : "field",
10772 "value" : ["vlan_tag", "cfi"]
10773 },
10774 {
10775 "type" : "field",
10776 "value" : ["scalars", "fabric_metadata_t.vlan_cfi"]
10777 }
10778 ],
10779 "source_info" : {
10780 "filename" : "include/control/next.p4",
10781 "line" : 266,
10782 "column" : 8,
10783 "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi"
10784 }
10785 },
10786 {
10787 "op" : "assign",
10788 "parameters" : [
10789 {
10790 "type" : "field",
10791 "value" : ["vlan_tag", "pri"]
10792 },
10793 {
10794 "type" : "field",
10795 "value" : ["scalars", "fabric_metadata_t.vlan_pri"]
10796 }
10797 ],
10798 "source_info" : {
10799 "filename" : "include/control/next.p4",
10800 "line" : 267,
10801 "column" : 8,
10802 "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri"
10803 }
10804 },
10805 {
10806 "op" : "assign",
10807 "parameters" : [
10808 {
10809 "type" : "field",
10810 "value" : ["vlan_tag", "eth_type"]
10811 },
10812 {
10813 "type" : "field",
10814 "value" : ["scalars", "fabric_metadata_t.eth_type"]
10815 }
10816 ],
10817 "source_info" : {
10818 "filename" : "include/control/next.p4",
10819 "line" : 268,
10820 "column" : 8,
10821 "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type"
10822 }
10823 },
10824 {
10825 "op" : "assign",
10826 "parameters" : [
10827 {
10828 "type" : "field",
10829 "value" : ["vlan_tag", "vlan_id"]
10830 },
10831 {
10832 "type" : "field",
10833 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
10834 }
10835 ],
10836 "source_info" : {
10837 "filename" : "include/control/next.p4",
10838 "line" : 269,
10839 "column" : 8,
10840 "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id"
10841 }
10842 },
10843 {
10844 "op" : "assign",
10845 "parameters" : [
10846 {
10847 "type" : "field",
10848 "value" : ["ethernet", "eth_type"]
10849 },
10850 {
10851 "type" : "hexstr",
10852 "value" : "0x8100"
10853 }
10854 ],
10855 "source_info" : {
10856 "filename" : "include/control/../define.p4",
10857 "line" : 107,
10858 "column" : 31,
10859 "source_fragment" : "0x8100; ..."
10860 }
10861 }
10862 ]
10863 },
10864 {
10865 "name" : "FabricEgress.egress_next.pop_vlan",
10866 "id" : 96,
10867 "runtime_data" : [],
10868 "primitives" : [
10869 {
10870 "op" : "assign",
10871 "parameters" : [
10872 {
10873 "type" : "field",
10874 "value" : ["ethernet", "eth_type"]
10875 },
10876 {
10877 "type" : "field",
10878 "value" : ["scalars", "fabric_metadata_t.eth_type"]
10879 }
10880 ],
10881 "source_info" : {
10882 "filename" : "include/control/next.p4",
10883 "line" : 280,
10884 "column" : 8,
10885 "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010886 }
10887 },
10888 {
10889 "op" : "remove_header",
10890 "parameters" : [
10891 {
10892 "type" : "header",
10893 "value" : "vlan_tag"
10894 }
10895 ],
10896 "source_info" : {
10897 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010898 "line" : 281,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010899 "column" : 8,
10900 "source_fragment" : "hdr.vlan_tag.setInvalid()"
10901 }
10902 }
10903 ]
10904 },
10905 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010906 "name" : "act_19",
10907 "id" : 97,
10908 "runtime_data" : [],
10909 "primitives" : [
10910 {
10911 "op" : "drop",
10912 "parameters" : [],
10913 "source_info" : {
10914 "filename" : "include/control/packetio.p4",
10915 "line" : 47,
10916 "column" : 16,
10917 "source_fragment" : "mark_to_drop()"
10918 }
10919 }
10920 ]
10921 },
10922 {
10923 "name" : "act_20",
10924 "id" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010925 "runtime_data" : [],
10926 "primitives" : [
10927 {
10928 "op" : "add_header",
10929 "parameters" : [
10930 {
10931 "type" : "header",
10932 "value" : "packet_in"
10933 }
10934 ],
10935 "source_info" : {
10936 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010937 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010938 "column" : 12,
10939 "source_fragment" : "hdr.packet_in.setValid()"
10940 }
10941 },
10942 {
10943 "op" : "assign",
10944 "parameters" : [
10945 {
10946 "type" : "field",
10947 "value" : ["packet_in", "ingress_port"]
10948 },
10949 {
10950 "type" : "field",
10951 "value" : ["standard_metadata", "ingress_port"]
10952 }
10953 ],
10954 "source_info" : {
10955 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010956 "line" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010957 "column" : 12,
10958 "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
10959 }
10960 }
10961 ]
10962 },
10963 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010964 "name" : "act_21",
10965 "id" : 99,
10966 "runtime_data" : [],
10967 "primitives" : [
10968 {
10969 "op" : "drop",
10970 "parameters" : [],
10971 "source_info" : {
10972 "filename" : "include/control/next.p4",
10973 "line" : 301,
10974 "column" : 12,
10975 "source_fragment" : "mark_to_drop()"
10976 }
10977 }
10978 ]
10979 },
10980 {
10981 "name" : "act_22",
10982 "id" : 100,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010983 "runtime_data" : [],
10984 "primitives" : [
10985 {
10986 "op" : "assign",
10987 "parameters" : [
10988 {
10989 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010990 "value" : ["scalars", "egress_next_tmp"]
10991 },
10992 {
10993 "type" : "expression",
10994 "value" : {
10995 "type" : "expression",
10996 "value" : {
10997 "op" : "b2d",
10998 "left" : null,
10999 "right" : {
11000 "type" : "bool",
11001 "value" : true
11002 }
11003 }
11004 }
11005 }
11006 ]
11007 }
11008 ]
11009 },
11010 {
11011 "name" : "act_23",
11012 "id" : 101,
11013 "runtime_data" : [],
11014 "primitives" : [
11015 {
11016 "op" : "assign",
11017 "parameters" : [
11018 {
11019 "type" : "field",
11020 "value" : ["scalars", "egress_next_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011021 },
11022 {
11023 "type" : "expression",
11024 "value" : {
11025 "type" : "expression",
11026 "value" : {
11027 "op" : "b2d",
11028 "left" : null,
11029 "right" : {
11030 "type" : "bool",
11031 "value" : false
11032 }
11033 }
11034 }
11035 }
11036 ]
11037 }
11038 ]
11039 },
11040 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011041 "name" : "act_24",
11042 "id" : 102,
11043 "runtime_data" : [],
11044 "primitives" : [
11045 {
11046 "op" : "drop",
11047 "parameters" : [],
11048 "source_info" : {
11049 "filename" : "include/control/next.p4",
11050 "line" : 320,
11051 "column" : 35,
11052 "source_fragment" : "mark_to_drop()"
11053 }
11054 }
11055 ]
11056 },
11057 {
11058 "name" : "act_25",
11059 "id" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011060 "runtime_data" : [],
11061 "primitives" : [
11062 {
11063 "op" : "assign",
11064 "parameters" : [
11065 {
11066 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011067 "value" : ["mpls", "ttl"]
11068 },
11069 {
11070 "type" : "expression",
11071 "value" : {
11072 "type" : "expression",
11073 "value" : {
11074 "op" : "&",
11075 "left" : {
11076 "type" : "expression",
11077 "value" : {
11078 "op" : "+",
11079 "left" : {
11080 "type" : "field",
11081 "value" : ["mpls", "ttl"]
11082 },
11083 "right" : {
11084 "type" : "hexstr",
11085 "value" : "0xff"
11086 }
11087 }
11088 },
11089 "right" : {
11090 "type" : "hexstr",
11091 "value" : "0xff"
11092 }
11093 }
11094 }
11095 }
11096 ],
11097 "source_info" : {
11098 "filename" : "include/control/next.p4",
11099 "line" : 319,
11100 "column" : 12,
11101 "source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
11102 }
11103 }
11104 ]
11105 },
11106 {
11107 "name" : "act_26",
11108 "id" : 104,
11109 "runtime_data" : [],
11110 "primitives" : [
11111 {
11112 "op" : "drop",
11113 "parameters" : [],
11114 "source_info" : {
11115 "filename" : "include/control/next.p4",
11116 "line" : 324,
11117 "column" : 39,
11118 "source_fragment" : "mark_to_drop()"
11119 }
11120 }
11121 ]
11122 },
11123 {
11124 "name" : "act_27",
11125 "id" : 105,
11126 "runtime_data" : [],
11127 "primitives" : [
11128 {
11129 "op" : "assign",
11130 "parameters" : [
11131 {
11132 "type" : "field",
11133 "value" : ["ipv4", "ttl"]
11134 },
11135 {
11136 "type" : "expression",
11137 "value" : {
11138 "type" : "expression",
11139 "value" : {
11140 "op" : "&",
11141 "left" : {
11142 "type" : "expression",
11143 "value" : {
11144 "op" : "+",
11145 "left" : {
11146 "type" : "field",
11147 "value" : ["ipv4", "ttl"]
11148 },
11149 "right" : {
11150 "type" : "hexstr",
11151 "value" : "0xff"
11152 }
11153 }
11154 },
11155 "right" : {
11156 "type" : "hexstr",
11157 "value" : "0xff"
11158 }
11159 }
11160 }
11161 }
11162 ],
11163 "source_info" : {
11164 "filename" : "include/control/next.p4",
11165 "line" : 323,
11166 "column" : 16,
11167 "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
11168 }
11169 }
11170 ]
11171 },
11172 {
11173 "name" : "act_28",
11174 "id" : 106,
11175 "runtime_data" : [],
11176 "primitives" : [
11177 {
11178 "op" : "assign",
11179 "parameters" : [
11180 {
11181 "type" : "field",
11182 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
11183 },
11184 {
11185 "type" : "expression",
11186 "value" : {
11187 "type" : "expression",
11188 "value" : {
11189 "op" : "b2d",
11190 "left" : null,
11191 "right" : {
11192 "type" : "bool",
11193 "value" : false
11194 }
11195 }
11196 }
11197 }
11198 ]
11199 }
11200 ]
11201 },
11202 {
11203 "name" : "act_29",
11204 "id" : 107,
11205 "runtime_data" : [],
11206 "primitives" : [
11207 {
11208 "op" : "assign",
11209 "parameters" : [
11210 {
11211 "type" : "field",
11212 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011213 },
11214 {
11215 "type" : "expression",
11216 "value" : {
11217 "type" : "expression",
11218 "value" : {
11219 "op" : "b2d",
11220 "left" : null,
11221 "right" : {
11222 "type" : "bool",
11223 "value" : true
11224 }
11225 }
11226 }
11227 }
11228 ],
11229 "source_info" : {
11230 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011231 "line" : 420,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011232 "column" : 12,
11233 "source_fragment" : "return"
11234 }
11235 }
11236 ]
11237 },
11238 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011239 "name" : "act_30",
11240 "id" : 108,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011241 "runtime_data" : [],
11242 "primitives" : [
11243 {
11244 "op" : "assign",
11245 "parameters" : [
11246 {
11247 "type" : "field",
11248 "value" : ["ipv4", "total_len"]
11249 },
11250 {
11251 "type" : "expression",
11252 "value" : {
11253 "type" : "expression",
11254 "value" : {
11255 "op" : "&",
11256 "left" : {
11257 "type" : "expression",
11258 "value" : {
11259 "op" : "+",
11260 "left" : {
11261 "type" : "field",
11262 "value" : ["ipv4", "total_len"]
11263 },
11264 "right" : {
11265 "type" : "field",
11266 "value" : ["userMetadata.int_meta", "new_bytes"]
11267 }
11268 }
11269 },
11270 "right" : {
11271 "type" : "hexstr",
11272 "value" : "0xffff"
11273 }
11274 }
11275 }
11276 }
11277 ],
11278 "source_info" : {
11279 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011280 "line" : 428,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011281 "column" : 12,
11282 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + fmeta.int_meta.new_bytes"
11283 }
11284 }
11285 ]
11286 },
11287 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011288 "name" : "act_31",
11289 "id" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011290 "runtime_data" : [],
11291 "primitives" : [
11292 {
11293 "op" : "assign",
11294 "parameters" : [
11295 {
11296 "type" : "field",
11297 "value" : ["int_header", "total_hop_cnt"]
11298 },
11299 {
11300 "type" : "expression",
11301 "value" : {
11302 "type" : "expression",
11303 "value" : {
11304 "op" : "&",
11305 "left" : {
11306 "type" : "expression",
11307 "value" : {
11308 "op" : "+",
11309 "left" : {
11310 "type" : "field",
11311 "value" : ["int_header", "total_hop_cnt"]
11312 },
11313 "right" : {
11314 "type" : "hexstr",
11315 "value" : "0x01"
11316 }
11317 }
11318 },
11319 "right" : {
11320 "type" : "hexstr",
11321 "value" : "0xff"
11322 }
11323 }
11324 }
11325 }
11326 ],
11327 "source_info" : {
11328 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011329 "line" : 425,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011330 "column" : 8,
11331 "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
11332 }
11333 }
11334 ]
11335 },
11336 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011337 "name" : "act_32",
11338 "id" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011339 "runtime_data" : [],
11340 "primitives" : [
11341 {
11342 "op" : "assign",
11343 "parameters" : [
11344 {
11345 "type" : "field",
11346 "value" : ["udp", "len"]
11347 },
11348 {
11349 "type" : "expression",
11350 "value" : {
11351 "type" : "expression",
11352 "value" : {
11353 "op" : "&",
11354 "left" : {
11355 "type" : "expression",
11356 "value" : {
11357 "op" : "+",
11358 "left" : {
11359 "type" : "field",
11360 "value" : ["udp", "len"]
11361 },
11362 "right" : {
11363 "type" : "field",
11364 "value" : ["userMetadata.int_meta", "new_bytes"]
11365 }
11366 }
11367 },
11368 "right" : {
11369 "type" : "hexstr",
11370 "value" : "0xffff"
11371 }
11372 }
11373 }
11374 }
11375 ],
11376 "source_info" : {
11377 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011378 "line" : 431,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011379 "column" : 12,
11380 "source_fragment" : "hdr.udp.len = hdr.udp.len + fmeta.int_meta.new_bytes"
11381 }
11382 }
11383 ]
11384 },
11385 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011386 "name" : "act_33",
11387 "id" : 111,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011388 "runtime_data" : [],
11389 "primitives" : [
11390 {
11391 "op" : "assign",
11392 "parameters" : [
11393 {
11394 "type" : "field",
11395 "value" : ["intl4_shim", "len_words"]
11396 },
11397 {
11398 "type" : "expression",
11399 "value" : {
11400 "type" : "expression",
11401 "value" : {
11402 "op" : "&",
11403 "left" : {
11404 "type" : "expression",
11405 "value" : {
11406 "op" : "+",
11407 "left" : {
11408 "type" : "field",
11409 "value" : ["intl4_shim", "len_words"]
11410 },
11411 "right" : {
11412 "type" : "field",
11413 "value" : ["userMetadata.int_meta", "new_words"]
11414 }
11415 }
11416 },
11417 "right" : {
11418 "type" : "hexstr",
11419 "value" : "0xff"
11420 }
11421 }
11422 }
11423 }
11424 ],
11425 "source_info" : {
11426 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011427 "line" : 434,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011428 "column" : 12,
11429 "source_fragment" : "hdr.intl4_shim.len_words = hdr.intl4_shim.len_words + fmeta.int_meta.new_words"
11430 }
11431 }
11432 ]
11433 }
11434 ],
11435 "pipelines" : [
11436 {
11437 "name" : "ingress",
11438 "id" : 0,
11439 "source_info" : {
11440 "filename" : "fabric.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011441 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011442 "column" : 8,
11443 "source_fragment" : "FabricIngress"
11444 },
11445 "init_table" : "tbl_act",
11446 "tables" : [
11447 {
11448 "name" : "tbl_act",
11449 "id" : 0,
11450 "key" : [],
11451 "match_type" : "exact",
11452 "type" : "simple",
11453 "max_size" : 1024,
11454 "with_counters" : false,
11455 "support_timeout" : false,
11456 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011457 "action_ids" : [34],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011458 "actions" : ["act_0"],
11459 "base_default_next" : "node_3",
11460 "next_tables" : {
11461 "act_0" : "node_3"
11462 },
11463 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011464 "action_id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011465 "action_const" : true,
11466 "action_data" : [],
11467 "action_entry_const" : true
11468 }
11469 },
11470 {
11471 "name" : "tbl_act_0",
11472 "id" : 1,
11473 "key" : [],
11474 "match_type" : "exact",
11475 "type" : "simple",
11476 "max_size" : 1024,
11477 "with_counters" : false,
11478 "support_timeout" : false,
11479 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011480 "action_ids" : [33],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011481 "actions" : ["act"],
11482 "base_default_next" : "node_5",
11483 "next_tables" : {
11484 "act" : "node_5"
11485 },
11486 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011487 "action_id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011488 "action_const" : true,
11489 "action_data" : [],
11490 "action_entry_const" : true
11491 }
11492 },
11493 {
11494 "name" : "tbl_act_1",
11495 "id" : 2,
11496 "key" : [],
11497 "match_type" : "exact",
11498 "type" : "simple",
11499 "max_size" : 1024,
11500 "with_counters" : false,
11501 "support_timeout" : false,
11502 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011503 "action_ids" : [37],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011504 "actions" : ["act_3"],
11505 "base_default_next" : "node_7",
11506 "next_tables" : {
11507 "act_3" : "node_7"
11508 },
11509 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011510 "action_id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011511 "action_const" : true,
11512 "action_data" : [],
11513 "action_entry_const" : true
11514 }
11515 },
11516 {
11517 "name" : "tbl_act_2",
11518 "id" : 3,
11519 "key" : [],
11520 "match_type" : "exact",
11521 "type" : "simple",
11522 "max_size" : 1024,
11523 "with_counters" : false,
11524 "support_timeout" : false,
11525 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011526 "action_ids" : [35],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011527 "actions" : ["act_1"],
11528 "base_default_next" : "node_10",
11529 "next_tables" : {
11530 "act_1" : "node_10"
11531 },
11532 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011533 "action_id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011534 "action_const" : true,
11535 "action_data" : [],
11536 "action_entry_const" : true
11537 }
11538 },
11539 {
11540 "name" : "tbl_act_3",
11541 "id" : 4,
11542 "key" : [],
11543 "match_type" : "exact",
11544 "type" : "simple",
11545 "max_size" : 1024,
11546 "with_counters" : false,
11547 "support_timeout" : false,
11548 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011549 "action_ids" : [36],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011550 "actions" : ["act_2"],
11551 "base_default_next" : "node_10",
11552 "next_tables" : {
11553 "act_2" : "node_10"
11554 },
11555 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011556 "action_id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011557 "action_const" : true,
11558 "action_data" : [],
11559 "action_entry_const" : true
11560 }
11561 },
11562 {
11563 "name" : "tbl_act_4",
11564 "id" : 5,
11565 "key" : [],
11566 "match_type" : "exact",
11567 "type" : "simple",
11568 "max_size" : 1024,
11569 "with_counters" : false,
11570 "support_timeout" : false,
11571 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011572 "action_ids" : [38],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011573 "actions" : ["act_4"],
11574 "base_default_next" : null,
11575 "next_tables" : {
11576 "act_4" : null
11577 },
11578 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011579 "action_id" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011580 "action_const" : true,
11581 "action_data" : [],
11582 "action_entry_const" : true
11583 }
11584 },
11585 {
11586 "name" : "tbl_act_5",
11587 "id" : 6,
11588 "key" : [],
11589 "match_type" : "exact",
11590 "type" : "simple",
11591 "max_size" : 1024,
11592 "with_counters" : false,
11593 "support_timeout" : false,
11594 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011595 "action_ids" : [39],
11596 "actions" : ["act_5"],
11597 "base_default_next" : "node_14",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011598 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011599 "act_5" : "node_14"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011600 },
11601 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011602 "action_id" : 39,
11603 "action_const" : true,
11604 "action_data" : [],
11605 "action_entry_const" : true
11606 }
11607 },
11608 {
11609 "name" : "tbl_act_6",
11610 "id" : 7,
11611 "key" : [],
11612 "match_type" : "exact",
11613 "type" : "simple",
11614 "max_size" : 1024,
11615 "with_counters" : false,
11616 "support_timeout" : false,
11617 "direct_meters" : null,
11618 "action_ids" : [40],
11619 "actions" : ["act_6"],
11620 "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
11621 "next_tables" : {
11622 "act_6" : "FabricIngress.filtering.ingress_port_vlan"
11623 },
11624 "default_entry" : {
11625 "action_id" : 40,
11626 "action_const" : true,
11627 "action_data" : [],
11628 "action_entry_const" : true
11629 }
11630 },
11631 {
11632 "name" : "FabricIngress.filtering.ingress_port_vlan",
11633 "id" : 8,
11634 "source_info" : {
11635 "filename" : "include/control/filtering.p4",
11636 "line" : 51,
11637 "column" : 10,
11638 "source_fragment" : "ingress_port_vlan"
11639 },
11640 "key" : [
11641 {
11642 "match_type" : "exact",
11643 "name" : "ig_port",
11644 "target" : ["standard_metadata", "ingress_port"],
11645 "mask" : null
11646 },
11647 {
11648 "match_type" : "exact",
11649 "name" : "vlan_is_valid",
11650 "target" : ["vlan_tag", "$valid$"],
11651 "mask" : null
11652 },
11653 {
11654 "match_type" : "ternary",
11655 "name" : "vlan_id",
11656 "target" : ["vlan_tag", "vlan_id"],
11657 "mask" : null
11658 }
11659 ],
11660 "match_type" : "ternary",
11661 "type" : "simple",
11662 "max_size" : 1024,
11663 "with_counters" : true,
11664 "support_timeout" : false,
11665 "direct_meters" : null,
11666 "action_ids" : [13, 14, 15],
11667 "actions" : ["FabricIngress.filtering.deny", "FabricIngress.filtering.permit", "FabricIngress.filtering.permit_with_internal_vlan"],
11668 "base_default_next" : "FabricIngress.filtering.fwd_classifier",
11669 "next_tables" : {
11670 "FabricIngress.filtering.deny" : "FabricIngress.filtering.fwd_classifier",
11671 "FabricIngress.filtering.permit" : "FabricIngress.filtering.fwd_classifier",
11672 "FabricIngress.filtering.permit_with_internal_vlan" : "FabricIngress.filtering.fwd_classifier"
11673 },
11674 "default_entry" : {
11675 "action_id" : 13,
11676 "action_const" : true,
11677 "action_data" : [],
11678 "action_entry_const" : true
11679 }
11680 },
11681 {
11682 "name" : "FabricIngress.filtering.fwd_classifier",
11683 "id" : 9,
11684 "source_info" : {
11685 "filename" : "include/control/filtering.p4",
11686 "line" : 86,
11687 "column" : 10,
11688 "source_fragment" : "fwd_classifier"
11689 },
11690 "key" : [
11691 {
11692 "match_type" : "exact",
11693 "name" : "ig_port",
11694 "target" : ["standard_metadata", "ingress_port"],
11695 "mask" : null
11696 },
11697 {
11698 "match_type" : "ternary",
11699 "name" : "eth_dst",
11700 "target" : ["ethernet", "dst_addr"],
11701 "mask" : null
11702 },
11703 {
11704 "match_type" : "exact",
11705 "name" : "eth_type",
11706 "target" : ["scalars", "fabric_metadata_t.eth_type"],
11707 "mask" : null
11708 }
11709 ],
11710 "match_type" : "ternary",
11711 "type" : "simple",
11712 "max_size" : 1024,
11713 "with_counters" : true,
11714 "support_timeout" : false,
11715 "direct_meters" : null,
11716 "action_ids" : [16],
11717 "actions" : ["FabricIngress.filtering.set_forwarding_type"],
11718 "base_default_next" : "tbl_act_7",
11719 "next_tables" : {
11720 "FabricIngress.filtering.set_forwarding_type" : "tbl_act_7"
11721 },
11722 "default_entry" : {
11723 "action_id" : 16,
11724 "action_const" : true,
11725 "action_data" : ["0x0"],
11726 "action_entry_const" : true
11727 }
11728 },
11729 {
11730 "name" : "tbl_act_7",
11731 "id" : 10,
11732 "key" : [],
11733 "match_type" : "exact",
11734 "type" : "simple",
11735 "max_size" : 1024,
11736 "with_counters" : false,
11737 "support_timeout" : false,
11738 "direct_meters" : null,
11739 "action_ids" : [49],
11740 "actions" : ["act_15"],
11741 "base_default_next" : "node_19",
11742 "next_tables" : {
11743 "act_15" : "node_19"
11744 },
11745 "default_entry" : {
11746 "action_id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011747 "action_const" : true,
11748 "action_data" : [],
11749 "action_entry_const" : true
11750 }
11751 },
11752 {
11753 "name" : "FabricIngress.spgw_ingress.s1u_filter_table",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011754 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011755 "source_info" : {
11756 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011757 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011758 "column" : 10,
11759 "source_fragment" : "s1u_filter_table"
11760 },
11761 "key" : [
11762 {
11763 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011764 "name" : "gtp_ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011765 "target" : ["gtpu_ipv4", "dst_addr"],
11766 "mask" : null
11767 }
11768 ],
11769 "match_type" : "exact",
11770 "type" : "simple",
11771 "max_size" : 1024,
11772 "with_counters" : false,
11773 "support_timeout" : false,
11774 "direct_meters" : null,
11775 "action_ids" : [1],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011776 "actions" : ["nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011777 "base_default_next" : null,
11778 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011779 "__HIT__" : "tbl_act_8",
11780 "__MISS__" : "tbl_act_9"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011781 },
11782 "default_entry" : {
11783 "action_id" : 1,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011784 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011785 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011786 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011787 }
11788 },
11789 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011790 "name" : "tbl_act_8",
11791 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011792 "key" : [],
11793 "match_type" : "exact",
11794 "type" : "simple",
11795 "max_size" : 1024,
11796 "with_counters" : false,
11797 "support_timeout" : false,
11798 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011799 "action_ids" : [41],
11800 "actions" : ["act_7"],
11801 "base_default_next" : "node_23",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011802 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011803 "act_7" : "node_23"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011804 },
11805 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011806 "action_id" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011807 "action_const" : true,
11808 "action_data" : [],
11809 "action_entry_const" : true
11810 }
11811 },
11812 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011813 "name" : "tbl_act_9",
11814 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011815 "key" : [],
11816 "match_type" : "exact",
11817 "type" : "simple",
11818 "max_size" : 1024,
11819 "with_counters" : false,
11820 "support_timeout" : false,
11821 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011822 "action_ids" : [42],
11823 "actions" : ["act_8"],
11824 "base_default_next" : "node_23",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011825 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011826 "act_8" : "node_23"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011827 },
11828 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011829 "action_id" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011830 "action_const" : true,
11831 "action_data" : [],
11832 "action_entry_const" : true
11833 }
11834 },
11835 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011836 "name" : "tbl_act_10",
11837 "id" : 14,
11838 "key" : [],
11839 "match_type" : "exact",
11840 "type" : "simple",
11841 "max_size" : 1024,
11842 "with_counters" : false,
11843 "support_timeout" : false,
11844 "direct_meters" : null,
11845 "action_ids" : [43],
11846 "actions" : ["act_9"],
11847 "base_default_next" : "tbl_act_11",
11848 "next_tables" : {
11849 "act_9" : "tbl_act_11"
11850 },
11851 "default_entry" : {
11852 "action_id" : 43,
11853 "action_const" : true,
11854 "action_data" : [],
11855 "action_entry_const" : true
11856 }
11857 },
11858 {
11859 "name" : "tbl_act_11",
11860 "id" : 15,
11861 "key" : [],
11862 "match_type" : "exact",
11863 "type" : "simple",
11864 "max_size" : 1024,
11865 "with_counters" : false,
11866 "support_timeout" : false,
11867 "direct_meters" : null,
11868 "action_ids" : [44],
11869 "actions" : ["act_10"],
11870 "base_default_next" : "tbl_spgw_ingress_gtpu_decap",
11871 "next_tables" : {
11872 "act_10" : "tbl_spgw_ingress_gtpu_decap"
11873 },
11874 "default_entry" : {
11875 "action_id" : 44,
11876 "action_const" : true,
11877 "action_data" : [],
11878 "action_entry_const" : true
11879 }
11880 },
11881 {
11882 "name" : "tbl_spgw_ingress_gtpu_decap",
11883 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011884 "key" : [],
11885 "match_type" : "exact",
11886 "type" : "simple",
11887 "max_size" : 1024,
11888 "with_counters" : false,
11889 "support_timeout" : false,
11890 "direct_meters" : null,
11891 "action_ids" : [10],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011892 "actions" : ["FabricIngress.spgw_ingress.gtpu_decap"],
11893 "base_default_next" : "node_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011894 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011895 "FabricIngress.spgw_ingress.gtpu_decap" : "node_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011896 },
11897 "default_entry" : {
11898 "action_id" : 10,
11899 "action_const" : true,
11900 "action_data" : [],
11901 "action_entry_const" : true
11902 }
11903 },
11904 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011905 "name" : "FabricIngress.spgw_ingress.dl_sess_lookup",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011906 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011907 "source_info" : {
11908 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011909 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011910 "column" : 10,
11911 "source_fragment" : "dl_sess_lookup"
11912 },
11913 "key" : [
11914 {
11915 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011916 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011917 "target" : ["ipv4", "dst_addr"],
11918 "mask" : null
11919 }
11920 ],
11921 "match_type" : "exact",
11922 "type" : "simple",
11923 "max_size" : 1024,
11924 "with_counters" : true,
11925 "support_timeout" : false,
11926 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011927 "action_ids" : [11, 0],
11928 "actions" : ["FabricIngress.spgw_ingress.set_dl_sess_info", "nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011929 "base_default_next" : null,
11930 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011931 "__HIT__" : "tbl_act_12",
11932 "__MISS__" : "tbl_act_13"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011933 },
11934 "default_entry" : {
11935 "action_id" : 0,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011936 "action_const" : true,
11937 "action_data" : [],
11938 "action_entry_const" : true
11939 }
11940 },
11941 {
11942 "name" : "tbl_act_12",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011943 "id" : 18,
11944 "key" : [],
11945 "match_type" : "exact",
11946 "type" : "simple",
11947 "max_size" : 1024,
11948 "with_counters" : false,
11949 "support_timeout" : false,
11950 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011951 "action_ids" : [45],
11952 "actions" : ["act_11"],
11953 "base_default_next" : "node_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011954 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011955 "act_11" : "node_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011956 },
11957 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011958 "action_id" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011959 "action_const" : true,
11960 "action_data" : [],
11961 "action_entry_const" : true
11962 }
11963 },
11964 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011965 "name" : "tbl_act_13",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011966 "id" : 19,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011967 "key" : [],
11968 "match_type" : "exact",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011969 "type" : "simple",
11970 "max_size" : 1024,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011971 "with_counters" : false,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011972 "support_timeout" : false,
11973 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011974 "action_ids" : [46],
11975 "actions" : ["act_12"],
11976 "base_default_next" : "node_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011977 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011978 "act_12" : "node_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011979 },
11980 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011981 "action_id" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011982 "action_const" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011983 "action_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011984 "action_entry_const" : true
11985 }
11986 },
11987 {
11988 "name" : "tbl_act_14",
11989 "id" : 20,
11990 "key" : [],
11991 "match_type" : "exact",
11992 "type" : "simple",
11993 "max_size" : 1024,
11994 "with_counters" : false,
11995 "support_timeout" : false,
11996 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011997 "action_ids" : [47],
11998 "actions" : ["act_13"],
11999 "base_default_next" : "node_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012000 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012001 "act_13" : "node_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012002 },
12003 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012004 "action_id" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012005 "action_const" : true,
12006 "action_data" : [],
12007 "action_entry_const" : true
12008 }
12009 },
12010 {
12011 "name" : "tbl_act_15",
12012 "id" : 21,
12013 "key" : [],
12014 "match_type" : "exact",
12015 "type" : "simple",
12016 "max_size" : 1024,
12017 "with_counters" : false,
12018 "support_timeout" : false,
12019 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012020 "action_ids" : [48],
12021 "actions" : ["act_14"],
12022 "base_default_next" : "node_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012023 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012024 "act_14" : "node_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012025 },
12026 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012027 "action_id" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012028 "action_const" : true,
12029 "action_data" : [],
12030 "action_entry_const" : true
12031 }
12032 },
12033 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012034 "name" : "tbl_act_16",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012035 "id" : 22,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012036 "key" : [],
12037 "match_type" : "exact",
12038 "type" : "simple",
12039 "max_size" : 1024,
12040 "with_counters" : false,
12041 "support_timeout" : false,
12042 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012043 "action_ids" : [50],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012044 "actions" : ["act_16"],
12045 "base_default_next" : "node_35",
12046 "next_tables" : {
12047 "act_16" : "node_35"
12048 },
12049 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012050 "action_id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012051 "action_const" : true,
12052 "action_data" : [],
12053 "action_entry_const" : true
12054 }
12055 },
12056 {
12057 "name" : "FabricIngress.forwarding.bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012058 "id" : 23,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012059 "source_info" : {
12060 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012061 "line" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012062 "column" : 10,
12063 "source_fragment" : "bridging"
12064 },
12065 "key" : [
12066 {
12067 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012068 "name" : "vlan_id",
12069 "target" : ["scalars", "fabric_metadata_t.vlan_id"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012070 "mask" : null
12071 },
12072 {
12073 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012074 "name" : "eth_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012075 "target" : ["ethernet", "dst_addr"],
12076 "mask" : null
12077 }
12078 ],
12079 "match_type" : "ternary",
12080 "type" : "simple",
12081 "max_size" : 1024,
12082 "with_counters" : true,
12083 "support_timeout" : false,
12084 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012085 "action_ids" : [17, 3],
12086 "actions" : ["FabricIngress.forwarding.set_next_id_bridging", "nop"],
12087 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012088 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012089 "FabricIngress.forwarding.set_next_id_bridging" : "FabricIngress.acl.acl",
12090 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012091 },
12092 "default_entry" : {
12093 "action_id" : 3,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012094 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012095 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012096 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012097 }
12098 },
12099 {
12100 "name" : "FabricIngress.forwarding.mpls",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012101 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012102 "source_info" : {
12103 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012104 "line" : 67,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012105 "column" : 10,
12106 "source_fragment" : "mpls"
12107 },
12108 "key" : [
12109 {
12110 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012111 "name" : "mpls_label",
12112 "target" : ["scalars", "fabric_metadata_t.mpls_label"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012113 "mask" : null
12114 }
12115 ],
12116 "match_type" : "exact",
12117 "type" : "simple",
12118 "max_size" : 1024,
12119 "with_counters" : true,
12120 "support_timeout" : false,
12121 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012122 "action_ids" : [18, 4],
12123 "actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "nop"],
12124 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012125 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012126 "FabricIngress.forwarding.pop_mpls_and_next" : "FabricIngress.acl.acl",
12127 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012128 },
12129 "default_entry" : {
12130 "action_id" : 4,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012131 "action_const" : true,
12132 "action_data" : [],
12133 "action_entry_const" : true
12134 }
12135 },
12136 {
12137 "name" : "FabricIngress.forwarding.routing_v4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012138 "id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012139 "source_info" : {
12140 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012141 "line" : 93,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012142 "column" : 10,
12143 "source_fragment" : "routing_v4"
12144 },
12145 "key" : [
12146 {
12147 "match_type" : "lpm",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012148 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012149 "target" : ["ipv4", "dst_addr"],
12150 "mask" : null
12151 }
12152 ],
12153 "match_type" : "lpm",
12154 "type" : "simple",
12155 "max_size" : 1024,
12156 "with_counters" : true,
12157 "support_timeout" : false,
12158 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012159 "action_ids" : [19, 20, 5],
12160 "actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "nop"],
12161 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012162 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012163 "FabricIngress.forwarding.set_next_id_routing_v4" : "FabricIngress.acl.acl",
12164 "FabricIngress.forwarding.nop_routing_v4" : "FabricIngress.acl.acl",
12165 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012166 },
12167 "default_entry" : {
12168 "action_id" : 5,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012169 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012170 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012171 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012172 }
12173 },
12174 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012175 "name" : "FabricIngress.acl.acl",
12176 "id" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012177 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012178 "filename" : "include/control/acl.p4",
12179 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012180 "column" : 10,
12181 "source_fragment" : "acl"
12182 },
12183 "key" : [
12184 {
12185 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012186 "name" : "ig_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012187 "target" : ["standard_metadata", "ingress_port"],
12188 "mask" : null
12189 },
12190 {
12191 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012192 "name" : "ip_proto",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012193 "target" : ["scalars", "fabric_metadata_t.ip_proto"],
12194 "mask" : null
12195 },
12196 {
12197 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012198 "name" : "l4_sport",
12199 "target" : ["scalars", "fabric_metadata_t.l4_sport"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012200 "mask" : null
12201 },
12202 {
12203 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012204 "name" : "l4_dport",
12205 "target" : ["scalars", "fabric_metadata_t.l4_dport"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012206 "mask" : null
12207 },
12208 {
12209 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012210 "name" : "eth_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012211 "target" : ["ethernet", "dst_addr"],
12212 "mask" : null
12213 },
12214 {
12215 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012216 "name" : "eth_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012217 "target" : ["ethernet", "src_addr"],
12218 "mask" : null
12219 },
12220 {
12221 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012222 "name" : "vlan_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012223 "target" : ["vlan_tag", "vlan_id"],
12224 "mask" : null
12225 },
12226 {
12227 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012228 "name" : "eth_type",
12229 "target" : ["scalars", "fabric_metadata_t.eth_type"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012230 "mask" : null
12231 },
12232 {
12233 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012234 "name" : "ipv4_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012235 "target" : ["ipv4", "src_addr"],
12236 "mask" : null
12237 },
12238 {
12239 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012240 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012241 "target" : ["ipv4", "dst_addr"],
12242 "mask" : null
12243 },
12244 {
12245 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012246 "name" : "icmp_type",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012247 "target" : ["icmp", "icmp_type"],
12248 "mask" : null
12249 },
12250 {
12251 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012252 "name" : "icmp_code",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012253 "target" : ["icmp", "icmp_code"],
12254 "mask" : null
12255 }
12256 ],
12257 "match_type" : "ternary",
12258 "type" : "simple",
12259 "max_size" : 128,
12260 "with_counters" : true,
12261 "support_timeout" : false,
12262 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012263 "action_ids" : [21, 22, 23, 24, 25],
12264 "actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.clone_to_cpu", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
12265 "base_default_next" : "node_43",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012266 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012267 "FabricIngress.acl.set_next_id_acl" : "node_43",
12268 "FabricIngress.acl.punt_to_cpu" : "node_43",
12269 "FabricIngress.acl.clone_to_cpu" : "node_43",
12270 "FabricIngress.acl.drop" : "node_43",
12271 "FabricIngress.acl.nop_acl" : "node_43"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012272 },
12273 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012274 "action_id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012275 "action_const" : true,
12276 "action_data" : [],
12277 "action_entry_const" : true
12278 }
12279 },
12280 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012281 "name" : "FabricIngress.next.xconnect",
12282 "id" : 27,
12283 "source_info" : {
12284 "filename" : "include/control/next.p4",
12285 "line" : 103,
12286 "column" : 10,
12287 "source_fragment" : "xconnect"
12288 },
12289 "key" : [
12290 {
12291 "match_type" : "exact",
12292 "name" : "ig_port",
12293 "target" : ["standard_metadata", "ingress_port"],
12294 "mask" : null
12295 },
12296 {
12297 "match_type" : "exact",
12298 "name" : "next_id",
12299 "target" : ["scalars", "fabric_metadata_t.next_id"],
12300 "mask" : null
12301 }
12302 ],
12303 "match_type" : "exact",
12304 "type" : "simple",
12305 "max_size" : 1024,
12306 "with_counters" : true,
12307 "support_timeout" : false,
12308 "direct_meters" : null,
12309 "action_ids" : [27, 28, 7],
12310 "actions" : ["FabricIngress.next.output_xconnect", "FabricIngress.next.set_next_id_xconnect", "nop"],
12311 "base_default_next" : "FabricIngress.next.hashed",
12312 "next_tables" : {
12313 "FabricIngress.next.output_xconnect" : "FabricIngress.next.hashed",
12314 "FabricIngress.next.set_next_id_xconnect" : "FabricIngress.next.hashed",
12315 "nop" : "FabricIngress.next.hashed"
12316 },
12317 "default_entry" : {
12318 "action_id" : 7,
12319 "action_const" : true,
12320 "action_data" : [],
12321 "action_entry_const" : true
12322 }
12323 },
12324 {
12325 "name" : "FabricIngress.next.hashed",
12326 "id" : 28,
12327 "source_info" : {
12328 "filename" : "include/control/next.p4",
12329 "line" : 180,
12330 "column" : 10,
12331 "source_fragment" : "hashed"
12332 },
12333 "key" : [
12334 {
12335 "match_type" : "exact",
12336 "name" : "next_id",
12337 "target" : ["scalars", "fabric_metadata_t.next_id"],
12338 "mask" : null
12339 }
12340 ],
12341 "match_type" : "exact",
12342 "type" : "indirect_ws",
12343 "action_profile" : "FabricIngress.next.hashed_selector",
12344 "max_size" : 1024,
12345 "with_counters" : true,
12346 "support_timeout" : false,
12347 "direct_meters" : null,
12348 "action_ids" : [29, 30, 31, 8],
12349 "actions" : ["FabricIngress.next.output_hashed", "FabricIngress.next.routing_hashed", "FabricIngress.next.mpls_routing_hashed", "nop"],
12350 "base_default_next" : "FabricIngress.next.multicast",
12351 "next_tables" : {
12352 "FabricIngress.next.output_hashed" : "FabricIngress.next.multicast",
12353 "FabricIngress.next.routing_hashed" : "FabricIngress.next.multicast",
12354 "FabricIngress.next.mpls_routing_hashed" : "FabricIngress.next.multicast",
12355 "nop" : "FabricIngress.next.multicast"
12356 }
12357 },
12358 {
12359 "name" : "FabricIngress.next.multicast",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012360 "id" : 29,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012361 "source_info" : {
12362 "filename" : "include/control/next.p4",
12363 "line" : 213,
12364 "column" : 10,
12365 "source_fragment" : "multicast"
12366 },
12367 "key" : [
12368 {
12369 "match_type" : "exact",
12370 "name" : "next_id",
12371 "target" : ["scalars", "fabric_metadata_t.next_id"],
12372 "mask" : null
12373 }
12374 ],
12375 "match_type" : "exact",
12376 "type" : "simple",
12377 "max_size" : 1024,
12378 "with_counters" : true,
12379 "support_timeout" : false,
12380 "direct_meters" : null,
12381 "action_ids" : [32, 9],
12382 "actions" : ["FabricIngress.next.set_mcast_group_id", "nop"],
12383 "base_default_next" : "FabricIngress.next.next_vlan",
12384 "next_tables" : {
12385 "FabricIngress.next.set_mcast_group_id" : "FabricIngress.next.next_vlan",
12386 "nop" : "FabricIngress.next.next_vlan"
12387 },
12388 "default_entry" : {
12389 "action_id" : 9,
12390 "action_const" : true,
12391 "action_data" : [],
12392 "action_entry_const" : true
12393 }
12394 },
12395 {
12396 "name" : "FabricIngress.next.next_vlan",
12397 "id" : 30,
12398 "source_info" : {
12399 "filename" : "include/control/next.p4",
12400 "line" : 74,
12401 "column" : 10,
12402 "source_fragment" : "next_vlan"
12403 },
12404 "key" : [
12405 {
12406 "match_type" : "exact",
12407 "name" : "next_id",
12408 "target" : ["scalars", "fabric_metadata_t.next_id"],
12409 "mask" : null
12410 }
12411 ],
12412 "match_type" : "exact",
12413 "type" : "simple",
12414 "max_size" : 1024,
12415 "with_counters" : true,
12416 "support_timeout" : false,
12417 "direct_meters" : null,
12418 "action_ids" : [26, 6],
12419 "actions" : ["FabricIngress.next.set_vlan", "nop"],
12420 "base_default_next" : "node_48",
12421 "next_tables" : {
12422 "FabricIngress.next.set_vlan" : "node_48",
12423 "nop" : "node_48"
12424 },
12425 "default_entry" : {
12426 "action_id" : 6,
12427 "action_const" : true,
12428 "action_data" : [],
12429 "action_entry_const" : true
12430 }
12431 },
12432 {
12433 "name" : "tbl_act_17",
12434 "id" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012435 "key" : [],
12436 "match_type" : "exact",
12437 "type" : "simple",
12438 "max_size" : 1024,
12439 "with_counters" : false,
12440 "support_timeout" : false,
12441 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012442 "action_ids" : [51],
12443 "actions" : ["act_17"],
12444 "base_default_next" : "node_50",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012445 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012446 "act_17" : "node_50"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012447 },
12448 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012449 "action_id" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012450 "action_const" : true,
12451 "action_data" : [],
12452 "action_entry_const" : true
12453 }
12454 },
12455 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012456 "name" : "tbl_act_18",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012457 "id" : 32,
12458 "key" : [],
12459 "match_type" : "exact",
12460 "type" : "simple",
12461 "max_size" : 1024,
12462 "with_counters" : false,
12463 "support_timeout" : false,
12464 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012465 "action_ids" : [52],
12466 "actions" : ["act_18"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012467 "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
12468 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012469 "act_18" : "FabricIngress.process_set_source_sink.tb_set_source"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012470 },
12471 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012472 "action_id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012473 "action_const" : true,
12474 "action_data" : [],
12475 "action_entry_const" : true
12476 }
12477 },
12478 {
12479 "name" : "FabricIngress.process_set_source_sink.tb_set_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012480 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012481 "source_info" : {
12482 "filename" : "include/int/int_main.p4",
12483 "line" : 46,
12484 "column" : 10,
12485 "source_fragment" : "tb_set_source"
12486 },
12487 "key" : [
12488 {
12489 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012490 "name" : "ig_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012491 "target" : ["standard_metadata", "ingress_port"],
12492 "mask" : null
12493 }
12494 ],
12495 "match_type" : "exact",
12496 "type" : "simple",
12497 "max_size" : 511,
12498 "with_counters" : true,
12499 "support_timeout" : false,
12500 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012501 "action_ids" : [12, 2],
12502 "actions" : ["FabricIngress.process_set_source_sink.int_set_source", "nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012503 "base_default_next" : null,
12504 "next_tables" : {
12505 "FabricIngress.process_set_source_sink.int_set_source" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012506 "nop" : null
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012507 },
12508 "default_entry" : {
12509 "action_id" : 2,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012510 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012511 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012512 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012513 }
12514 }
12515 ],
12516 "action_profiles" : [
12517 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012518 "name" : "FabricIngress.next.hashed_selector",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012519 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012520 "source_info" : {
12521 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012522 "line" : 161,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012523 "column" : 55,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012524 "source_fragment" : "hashed_selector"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012525 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012526 "max_size" : 64,
12527 "selector" : {
12528 "algo" : "crc16",
12529 "input" : [
12530 {
12531 "type" : "field",
12532 "value" : ["ipv4", "dst_addr"]
12533 },
12534 {
12535 "type" : "field",
12536 "value" : ["ipv4", "src_addr"]
12537 },
12538 {
12539 "type" : "field",
12540 "value" : ["scalars", "fabric_metadata_t.ip_proto"]
12541 },
12542 {
12543 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012544 "value" : ["scalars", "fabric_metadata_t.l4_sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012545 },
12546 {
12547 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012548 "value" : ["scalars", "fabric_metadata_t.l4_dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012549 }
12550 ]
12551 }
12552 }
12553 ],
12554 "conditionals" : [
12555 {
12556 "name" : "node_3",
12557 "id" : 0,
12558 "source_info" : {
12559 "filename" : "include/spgw.p4",
12560 "line" : 30,
12561 "column" : 12,
12562 "source_fragment" : "! is_gtpu_encapped"
12563 },
12564 "expression" : {
12565 "type" : "expression",
12566 "value" : {
12567 "op" : "not",
12568 "left" : null,
12569 "right" : {
12570 "type" : "expression",
12571 "value" : {
12572 "op" : "d2b",
12573 "left" : null,
12574 "right" : {
12575 "type" : "field",
12576 "value" : ["gtpu", "$valid$"]
12577 }
12578 }
12579 }
12580 }
12581 },
12582 "true_next" : "tbl_act_0",
12583 "false_next" : "node_5"
12584 },
12585 {
12586 "name" : "node_5",
12587 "id" : 1,
12588 "expression" : {
12589 "type" : "expression",
12590 "value" : {
12591 "op" : "not",
12592 "left" : null,
12593 "right" : {
12594 "type" : "expression",
12595 "value" : {
12596 "op" : "d2b",
12597 "left" : null,
12598 "right" : {
12599 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012600 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012601 }
12602 }
12603 }
12604 }
12605 },
12606 "true_next" : "tbl_act_1",
12607 "false_next" : "node_10"
12608 },
12609 {
12610 "name" : "node_7",
12611 "id" : 2,
12612 "source_info" : {
12613 "filename" : "include/spgw.p4",
12614 "line" : 34,
12615 "column" : 12,
12616 "source_fragment" : "inner_udp.isValid()"
12617 },
12618 "expression" : {
12619 "type" : "expression",
12620 "value" : {
12621 "op" : "d2b",
12622 "left" : null,
12623 "right" : {
12624 "type" : "field",
12625 "value" : ["inner_udp", "$valid$"]
12626 }
12627 }
12628 },
12629 "true_next" : "tbl_act_2",
12630 "false_next" : "tbl_act_3"
12631 },
12632 {
12633 "name" : "node_10",
12634 "id" : 3,
12635 "source_info" : {
12636 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012637 "line" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012638 "column" : 12,
12639 "source_fragment" : "hdr.packet_out.isValid()"
12640 },
12641 "expression" : {
12642 "type" : "expression",
12643 "value" : {
12644 "op" : "d2b",
12645 "left" : null,
12646 "right" : {
12647 "type" : "field",
12648 "value" : ["packet_out", "$valid$"]
12649 }
12650 }
12651 },
12652 "true_next" : "tbl_act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012653 "false_next" : "node_12"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012654 },
12655 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012656 "name" : "node_12",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012657 "id" : 4,
12658 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012659 "filename" : "include/control/filtering.p4",
12660 "line" : 102,
12661 "column" : 12,
12662 "source_fragment" : "hdr.vlan_tag.isValid()"
12663 },
12664 "expression" : {
12665 "type" : "expression",
12666 "value" : {
12667 "op" : "d2b",
12668 "left" : null,
12669 "right" : {
12670 "type" : "field",
12671 "value" : ["vlan_tag", "$valid$"]
12672 }
12673 }
12674 },
12675 "true_next" : "tbl_act_5",
12676 "false_next" : "node_14"
12677 },
12678 {
12679 "name" : "node_14",
12680 "id" : 5,
12681 "source_info" : {
12682 "filename" : "include/control/filtering.p4",
12683 "line" : 108,
12684 "column" : 12,
12685 "source_fragment" : "!hdr.mpls.isValid()"
12686 },
12687 "expression" : {
12688 "type" : "expression",
12689 "value" : {
12690 "op" : "not",
12691 "left" : null,
12692 "right" : {
12693 "type" : "expression",
12694 "value" : {
12695 "op" : "d2b",
12696 "left" : null,
12697 "right" : {
12698 "type" : "field",
12699 "value" : ["mpls", "$valid$"]
12700 }
12701 }
12702 }
12703 }
12704 },
12705 "true_next" : "tbl_act_6",
12706 "false_next" : "FabricIngress.filtering.ingress_port_vlan"
12707 },
12708 {
12709 "name" : "node_19",
12710 "id" : 6,
12711 "source_info" : {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012712 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012713 "line" : 143,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012714 "column" : 12,
12715 "source_fragment" : "gtpu.isValid()"
12716 },
12717 "expression" : {
12718 "type" : "expression",
12719 "value" : {
12720 "op" : "d2b",
12721 "left" : null,
12722 "right" : {
12723 "type" : "field",
12724 "value" : ["gtpu", "$valid$"]
12725 }
12726 }
12727 },
12728 "true_next" : "FabricIngress.spgw_ingress.s1u_filter_table",
12729 "false_next" : "FabricIngress.spgw_ingress.dl_sess_lookup"
12730 },
12731 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012732 "name" : "node_23",
12733 "id" : 7,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012734 "source_info" : {
12735 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012736 "line" : 147,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012737 "column" : 16,
12738 "source_fragment" : "!s1u_filter_table.apply().hit"
12739 },
12740 "expression" : {
12741 "type" : "expression",
12742 "value" : {
12743 "op" : "not",
12744 "left" : null,
12745 "right" : {
12746 "type" : "expression",
12747 "value" : {
12748 "op" : "d2b",
12749 "left" : null,
12750 "right" : {
12751 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012752 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012753 }
12754 }
12755 }
12756 }
12757 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012758 "true_next" : "tbl_act_10",
12759 "false_next" : "tbl_act_11"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012760 },
12761 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012762 "name" : "node_30",
12763 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012764 "expression" : {
12765 "type" : "expression",
12766 "value" : {
12767 "op" : "d2b",
12768 "left" : null,
12769 "right" : {
12770 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012771 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012772 }
12773 }
12774 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012775 "true_next" : "tbl_act_14",
12776 "false_next" : "tbl_act_15"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012777 },
12778 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012779 "name" : "node_33",
12780 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012781 "expression" : {
12782 "type" : "expression",
12783 "value" : {
12784 "op" : "not",
12785 "left" : null,
12786 "right" : {
12787 "type" : "expression",
12788 "value" : {
12789 "op" : "d2b",
12790 "left" : null,
12791 "right" : {
12792 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012793 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012794 }
12795 }
12796 }
12797 }
12798 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012799 "true_next" : "tbl_act_16",
12800 "false_next" : "node_35"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012801 },
12802 {
12803 "name" : "node_35",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012804 "id" : 10,
12805 "source_info" : {
12806 "filename" : "fabric.p4",
12807 "line" : 66,
12808 "column" : 12,
12809 "source_fragment" : "fabric_metadata.skip_forwarding == false"
12810 },
12811 "expression" : {
12812 "type" : "expression",
12813 "value" : {
12814 "op" : "==",
12815 "left" : {
12816 "type" : "expression",
12817 "value" : {
12818 "op" : "d2b",
12819 "left" : null,
12820 "right" : {
12821 "type" : "field",
12822 "value" : ["scalars", "fabric_metadata_t.skip_forwarding"]
12823 }
12824 }
12825 },
12826 "right" : {
12827 "type" : "bool",
12828 "value" : false
12829 }
12830 }
12831 },
12832 "true_next" : "node_36",
12833 "false_next" : "FabricIngress.acl.acl"
12834 },
12835 {
12836 "name" : "node_36",
12837 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012838 "source_info" : {
12839 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012840 "line" : 131,
12841 "column" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012842 "source_fragment" : "fabric_metadata.fwd_type == FWD_BRIDGING"
12843 },
12844 "expression" : {
12845 "type" : "expression",
12846 "value" : {
12847 "op" : "==",
12848 "left" : {
12849 "type" : "field",
12850 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
12851 },
12852 "right" : {
12853 "type" : "hexstr",
12854 "value" : "0x00"
12855 }
12856 }
12857 },
12858 "true_next" : "FabricIngress.forwarding.bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012859 "false_next" : "node_38"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012860 },
12861 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012862 "name" : "node_38",
12863 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012864 "source_info" : {
12865 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012866 "line" : 132,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012867 "column" : 17,
12868 "source_fragment" : "fabric_metadata.fwd_type == FWD_MPLS"
12869 },
12870 "expression" : {
12871 "type" : "expression",
12872 "value" : {
12873 "op" : "==",
12874 "left" : {
12875 "type" : "field",
12876 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
12877 },
12878 "right" : {
12879 "type" : "hexstr",
12880 "value" : "0x01"
12881 }
12882 }
12883 },
12884 "true_next" : "FabricIngress.forwarding.mpls",
12885 "false_next" : "node_40"
12886 },
12887 {
12888 "name" : "node_40",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012889 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012890 "source_info" : {
12891 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012892 "line" : 133,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012893 "column" : 17,
12894 "source_fragment" : "fabric_metadata.fwd_type == FWD_IPV4_UNICAST"
12895 },
12896 "expression" : {
12897 "type" : "expression",
12898 "value" : {
12899 "op" : "==",
12900 "left" : {
12901 "type" : "field",
12902 "value" : ["scalars", "fabric_metadata_t.fwd_type"]
12903 },
12904 "right" : {
12905 "type" : "hexstr",
12906 "value" : "0x02"
12907 }
12908 }
12909 },
12910 "true_next" : "FabricIngress.forwarding.routing_v4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012911 "false_next" : "FabricIngress.acl.acl"
12912 },
12913 {
12914 "name" : "node_43",
12915 "id" : 14,
12916 "source_info" : {
12917 "filename" : "fabric.p4",
12918 "line" : 70,
12919 "column" : 12,
12920 "source_fragment" : "fabric_metadata.skip_next == false"
12921 },
12922 "expression" : {
12923 "type" : "expression",
12924 "value" : {
12925 "op" : "==",
12926 "left" : {
12927 "type" : "expression",
12928 "value" : {
12929 "op" : "d2b",
12930 "left" : null,
12931 "right" : {
12932 "type" : "field",
12933 "value" : ["scalars", "fabric_metadata_t.skip_next"]
12934 }
12935 }
12936 },
12937 "right" : {
12938 "type" : "bool",
12939 "value" : false
12940 }
12941 }
12942 },
12943 "false_next" : null,
12944 "true_next" : "FabricIngress.next.xconnect"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012945 },
12946 {
12947 "name" : "node_48",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012948 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012949 "source_info" : {
12950 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012951 "line" : 30,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012952 "column" : 12,
12953 "source_fragment" : "standard_metadata.egress_spec < 511"
12954 },
12955 "expression" : {
12956 "type" : "expression",
12957 "value" : {
12958 "op" : "<",
12959 "left" : {
12960 "type" : "field",
12961 "value" : ["standard_metadata", "egress_spec"]
12962 },
12963 "right" : {
12964 "type" : "hexstr",
12965 "value" : "0x01ff"
12966 }
12967 }
12968 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012969 "true_next" : "tbl_act_17",
12970 "false_next" : "node_50"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012971 },
12972 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012973 "name" : "node_50",
12974 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012975 "source_info" : {
12976 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012977 "line" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012978 "column" : 12,
12979 "source_fragment" : "standard_metadata.ingress_port < 511"
12980 },
12981 "expression" : {
12982 "type" : "expression",
12983 "value" : {
12984 "op" : "<",
12985 "left" : {
12986 "type" : "field",
12987 "value" : ["standard_metadata", "ingress_port"]
12988 },
12989 "right" : {
12990 "type" : "hexstr",
12991 "value" : "0x01ff"
12992 }
12993 }
12994 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012995 "true_next" : "tbl_act_18",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012996 "false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
12997 }
12998 ]
12999 },
13000 {
13001 "name" : "egress",
13002 "id" : 1,
13003 "source_info" : {
13004 "filename" : "fabric.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013005 "line" : 84,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013006 "column" : 8,
13007 "source_fragment" : "FabricEgress"
13008 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013009 "init_table" : "node_55",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013010 "tables" : [
13011 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013012 "name" : "tbl_act_19",
13013 "id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013014 "key" : [],
13015 "match_type" : "exact",
13016 "type" : "simple",
13017 "max_size" : 1024,
13018 "with_counters" : false,
13019 "support_timeout" : false,
13020 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013021 "action_ids" : [97],
13022 "actions" : ["act_19"],
13023 "base_default_next" : "tbl_act_20",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013024 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013025 "act_19" : "tbl_act_20"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013026 },
13027 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013028 "action_id" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013029 "action_const" : true,
13030 "action_data" : [],
13031 "action_entry_const" : true
13032 }
13033 },
13034 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013035 "name" : "tbl_act_20",
13036 "id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013037 "key" : [],
13038 "match_type" : "exact",
13039 "type" : "simple",
13040 "max_size" : 1024,
13041 "with_counters" : false,
13042 "support_timeout" : false,
13043 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013044 "action_ids" : [98],
13045 "actions" : ["act_20"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013046 "base_default_next" : null,
13047 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013048 "act_20" : null
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013049 },
13050 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013051 "action_id" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013052 "action_const" : true,
13053 "action_data" : [],
13054 "action_entry_const" : true
13055 }
13056 },
13057 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013058 "name" : "tbl_act_21",
13059 "id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013060 "key" : [],
13061 "match_type" : "exact",
13062 "type" : "simple",
13063 "max_size" : 1024,
13064 "with_counters" : false,
13065 "support_timeout" : false,
13066 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013067 "action_ids" : [99],
13068 "actions" : ["act_21"],
13069 "base_default_next" : "node_62",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013070 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013071 "act_21" : "node_62"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013072 },
13073 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013074 "action_id" : 99,
13075 "action_const" : true,
13076 "action_data" : [],
13077 "action_entry_const" : true
13078 }
13079 },
13080 {
13081 "name" : "tbl_egress_next_pop_mpls_if_present",
13082 "id" : 37,
13083 "key" : [],
13084 "match_type" : "exact",
13085 "type" : "simple",
13086 "max_size" : 1024,
13087 "with_counters" : false,
13088 "support_timeout" : false,
13089 "direct_meters" : null,
13090 "action_ids" : [93],
13091 "actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
13092 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
13093 "next_tables" : {
13094 "FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
13095 },
13096 "default_entry" : {
13097 "action_id" : 93,
13098 "action_const" : true,
13099 "action_data" : [],
13100 "action_entry_const" : true
13101 }
13102 },
13103 {
13104 "name" : "tbl_egress_next_set_mpls",
13105 "id" : 38,
13106 "key" : [],
13107 "match_type" : "exact",
13108 "type" : "simple",
13109 "max_size" : 1024,
13110 "with_counters" : false,
13111 "support_timeout" : false,
13112 "direct_meters" : null,
13113 "action_ids" : [94],
13114 "actions" : ["FabricEgress.egress_next.set_mpls"],
13115 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
13116 "next_tables" : {
13117 "FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
13118 },
13119 "default_entry" : {
13120 "action_id" : 94,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013121 "action_const" : true,
13122 "action_data" : [],
13123 "action_entry_const" : true
13124 }
13125 },
13126 {
13127 "name" : "FabricEgress.egress_next.egress_vlan",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013128 "id" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013129 "source_info" : {
13130 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013131 "line" : 285,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013132 "column" : 10,
13133 "source_fragment" : "egress_vlan"
13134 },
13135 "key" : [
13136 {
13137 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013138 "name" : "vlan_id",
13139 "target" : ["scalars", "fabric_metadata_t.vlan_id"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013140 "mask" : null
13141 },
13142 {
13143 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013144 "name" : "eg_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013145 "target" : ["standard_metadata", "egress_port"],
13146 "mask" : null
13147 }
13148 ],
13149 "match_type" : "exact",
13150 "type" : "simple",
13151 "max_size" : 1024,
13152 "with_counters" : true,
13153 "support_timeout" : false,
13154 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013155 "action_ids" : [96, 55],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013156 "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013157 "base_default_next" : null,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013158 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013159 "__HIT__" : "tbl_act_22",
13160 "__MISS__" : "tbl_act_23"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013161 },
13162 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013163 "action_id" : 55,
13164 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013165 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013166 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013167 }
13168 },
13169 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013170 "name" : "tbl_act_22",
13171 "id" : 40,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013172 "key" : [],
13173 "match_type" : "exact",
13174 "type" : "simple",
13175 "max_size" : 1024,
13176 "with_counters" : false,
13177 "support_timeout" : false,
13178 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013179 "action_ids" : [100],
13180 "actions" : ["act_22"],
13181 "base_default_next" : "node_69",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013182 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013183 "act_22" : "node_69"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013184 },
13185 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013186 "action_id" : 100,
13187 "action_const" : true,
13188 "action_data" : [],
13189 "action_entry_const" : true
13190 }
13191 },
13192 {
13193 "name" : "tbl_act_23",
13194 "id" : 41,
13195 "key" : [],
13196 "match_type" : "exact",
13197 "type" : "simple",
13198 "max_size" : 1024,
13199 "with_counters" : false,
13200 "support_timeout" : false,
13201 "direct_meters" : null,
13202 "action_ids" : [101],
13203 "actions" : ["act_23"],
13204 "base_default_next" : "node_69",
13205 "next_tables" : {
13206 "act_23" : "node_69"
13207 },
13208 "default_entry" : {
13209 "action_id" : 101,
13210 "action_const" : true,
13211 "action_data" : [],
13212 "action_entry_const" : true
13213 }
13214 },
13215 {
13216 "name" : "tbl_egress_next_push_vlan",
13217 "id" : 42,
13218 "key" : [],
13219 "match_type" : "exact",
13220 "type" : "simple",
13221 "max_size" : 1024,
13222 "with_counters" : false,
13223 "support_timeout" : false,
13224 "direct_meters" : null,
13225 "action_ids" : [95],
13226 "actions" : ["FabricEgress.egress_next.push_vlan"],
13227 "base_default_next" : "node_72",
13228 "next_tables" : {
13229 "FabricEgress.egress_next.push_vlan" : "node_72"
13230 },
13231 "default_entry" : {
13232 "action_id" : 95,
13233 "action_const" : true,
13234 "action_data" : [],
13235 "action_entry_const" : true
13236 }
13237 },
13238 {
13239 "name" : "tbl_act_24",
13240 "id" : 43,
13241 "key" : [],
13242 "match_type" : "exact",
13243 "type" : "simple",
13244 "max_size" : 1024,
13245 "with_counters" : false,
13246 "support_timeout" : false,
13247 "direct_meters" : null,
13248 "action_ids" : [103],
13249 "actions" : ["act_25"],
13250 "base_default_next" : "node_74",
13251 "next_tables" : {
13252 "act_25" : "node_74"
13253 },
13254 "default_entry" : {
13255 "action_id" : 103,
13256 "action_const" : true,
13257 "action_data" : [],
13258 "action_entry_const" : true
13259 }
13260 },
13261 {
13262 "name" : "tbl_act_25",
13263 "id" : 44,
13264 "key" : [],
13265 "match_type" : "exact",
13266 "type" : "simple",
13267 "max_size" : 1024,
13268 "with_counters" : false,
13269 "support_timeout" : false,
13270 "direct_meters" : null,
13271 "action_ids" : [102],
13272 "actions" : ["act_24"],
13273 "base_default_next" : "node_80",
13274 "next_tables" : {
13275 "act_24" : "node_80"
13276 },
13277 "default_entry" : {
13278 "action_id" : 102,
13279 "action_const" : true,
13280 "action_data" : [],
13281 "action_entry_const" : true
13282 }
13283 },
13284 {
13285 "name" : "tbl_act_26",
13286 "id" : 45,
13287 "key" : [],
13288 "match_type" : "exact",
13289 "type" : "simple",
13290 "max_size" : 1024,
13291 "with_counters" : false,
13292 "support_timeout" : false,
13293 "direct_meters" : null,
13294 "action_ids" : [105],
13295 "actions" : ["act_27"],
13296 "base_default_next" : "node_78",
13297 "next_tables" : {
13298 "act_27" : "node_78"
13299 },
13300 "default_entry" : {
13301 "action_id" : 105,
13302 "action_const" : true,
13303 "action_data" : [],
13304 "action_entry_const" : true
13305 }
13306 },
13307 {
13308 "name" : "tbl_act_27",
13309 "id" : 46,
13310 "key" : [],
13311 "match_type" : "exact",
13312 "type" : "simple",
13313 "max_size" : 1024,
13314 "with_counters" : false,
13315 "support_timeout" : false,
13316 "direct_meters" : null,
13317 "action_ids" : [104],
13318 "actions" : ["act_26"],
13319 "base_default_next" : "node_80",
13320 "next_tables" : {
13321 "act_26" : "node_80"
13322 },
13323 "default_entry" : {
13324 "action_id" : 104,
13325 "action_const" : true,
13326 "action_data" : [],
13327 "action_entry_const" : true
13328 }
13329 },
13330 {
13331 "name" : "tbl_spgw_egress_gtpu_encap",
13332 "id" : 47,
13333 "key" : [],
13334 "match_type" : "exact",
13335 "type" : "simple",
13336 "max_size" : 1024,
13337 "with_counters" : false,
13338 "support_timeout" : false,
13339 "direct_meters" : null,
13340 "action_ids" : [58],
13341 "actions" : ["FabricEgress.spgw_egress.gtpu_encap"],
13342 "base_default_next" : "node_82",
13343 "next_tables" : {
13344 "FabricEgress.spgw_egress.gtpu_encap" : "node_82"
13345 },
13346 "default_entry" : {
13347 "action_id" : 58,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013348 "action_const" : true,
13349 "action_data" : [],
13350 "action_entry_const" : true
13351 }
13352 },
13353 {
13354 "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013355 "id" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013356 "source_info" : {
13357 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013358 "line" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013359 "column" : 10,
13360 "source_fragment" : "tb_int_source"
13361 },
13362 "key" : [
13363 {
13364 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013365 "name" : "ipv4_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013366 "target" : ["ipv4", "src_addr"],
13367 "mask" : null
13368 },
13369 {
13370 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013371 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013372 "target" : ["ipv4", "dst_addr"],
13373 "mask" : null
13374 },
13375 {
13376 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013377 "name" : "l4_sport",
13378 "target" : ["scalars", "fabric_metadata_t.l4_sport"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013379 "mask" : null
13380 },
13381 {
13382 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013383 "name" : "l4_dport",
13384 "target" : ["scalars", "fabric_metadata_t.l4_dport"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013385 "mask" : null
13386 }
13387 ],
13388 "match_type" : "ternary",
13389 "type" : "simple",
13390 "max_size" : 1024,
13391 "with_counters" : true,
13392 "support_timeout" : false,
13393 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013394 "action_ids" : [59, 53],
13395 "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
13396 "base_default_next" : "node_85",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013397 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013398 "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_85",
13399 "nop" : "node_85"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013400 },
13401 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013402 "action_id" : 53,
13403 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013404 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013405 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013406 }
13407 },
13408 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013409 "name" : "tbl_act_28",
13410 "id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013411 "key" : [],
13412 "match_type" : "exact",
13413 "type" : "simple",
13414 "max_size" : 1024,
13415 "with_counters" : false,
13416 "support_timeout" : false,
13417 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013418 "action_ids" : [106],
13419 "actions" : ["act_28"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013420 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
13421 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013422 "act_28" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013423 },
13424 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013425 "action_id" : 106,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013426 "action_const" : true,
13427 "action_data" : [],
13428 "action_entry_const" : true
13429 }
13430 },
13431 {
13432 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013433 "id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013434 "source_info" : {
13435 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013436 "line" : 315,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013437 "column" : 10,
13438 "source_fragment" : "tb_int_insert"
13439 },
Carmelo Casconefa421582018-09-13 10:05:57 -070013440 "key" : [
13441 {
13442 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013443 "name" : "int_is_valid",
Carmelo Casconefa421582018-09-13 10:05:57 -070013444 "target" : ["int_header", "$valid$"],
13445 "mask" : null
13446 }
13447 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013448 "match_type" : "exact",
13449 "type" : "simple",
Carmelo Casconefa421582018-09-13 10:05:57 -070013450 "max_size" : 1,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013451 "with_counters" : false,
13452 "support_timeout" : false,
13453 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013454 "action_ids" : [60, 54],
Carmelo Casconefa421582018-09-13 10:05:57 -070013455 "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013456 "base_default_next" : "node_88",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013457 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013458 "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_88",
13459 "nop" : "node_88"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013460 },
13461 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013462 "action_id" : 54,
Carmelo Casconefa421582018-09-13 10:05:57 -070013463 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013464 "action_data" : [],
Carmelo Casconefa421582018-09-13 10:05:57 -070013465 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013466 }
13467 },
13468 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013469 "name" : "tbl_act_29",
13470 "id" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013471 "key" : [],
13472 "match_type" : "exact",
13473 "type" : "simple",
13474 "max_size" : 1024,
13475 "with_counters" : false,
13476 "support_timeout" : false,
13477 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013478 "action_ids" : [107],
13479 "actions" : ["act_29"],
13480 "base_default_next" : "node_90",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013481 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013482 "act_29" : "node_90"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013483 },
13484 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013485 "action_id" : 107,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013486 "action_const" : true,
13487 "action_data" : [],
13488 "action_entry_const" : true
13489 }
13490 },
13491 {
13492 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013493 "id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013494 "source_info" : {
13495 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013496 "line" : 331,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013497 "column" : 10,
13498 "source_fragment" : "tb_int_inst_0003"
13499 },
13500 "key" : [
13501 {
13502 "match_type" : "exact",
13503 "name" : "hdr.int_header.instruction_mask_0003",
13504 "target" : ["int_header", "instruction_mask_0003"],
13505 "mask" : null
13506 }
13507 ],
13508 "match_type" : "exact",
13509 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013510 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013511 "with_counters" : false,
13512 "support_timeout" : false,
13513 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013514 "action_ids" : [61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 56],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013515 "actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15", "NoAction"],
13516 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13517 "next_tables" : {
13518 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13519 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13520 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13521 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13522 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13523 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13524 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13525 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13526 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13527 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13528 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13529 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13530 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13531 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13532 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13533 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13534 "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
13535 },
13536 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013537 "action_id" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013538 "action_const" : false,
13539 "action_data" : [],
13540 "action_entry_const" : false
13541 },
13542 "entries" : [
13543 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013544 "source_info" : {
13545 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013546 "line" : 354,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013547 "column" : 12,
13548 "source_fragment" : "(0x0) : int_set_header_0003_i0()"
13549 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013550 "match_key" : [
13551 {
13552 "match_type" : "exact",
13553 "key" : "0x00"
13554 }
13555 ],
13556 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013557 "action_id" : 61,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013558 "action_data" : []
13559 },
13560 "priority" : 1
13561 },
13562 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013563 "source_info" : {
13564 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013565 "line" : 355,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013566 "column" : 12,
13567 "source_fragment" : "(0x1) : int_set_header_0003_i1()"
13568 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013569 "match_key" : [
13570 {
13571 "match_type" : "exact",
13572 "key" : "0x01"
13573 }
13574 ],
13575 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013576 "action_id" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013577 "action_data" : []
13578 },
13579 "priority" : 2
13580 },
13581 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013582 "source_info" : {
13583 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013584 "line" : 356,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013585 "column" : 12,
13586 "source_fragment" : "(0x2) : int_set_header_0003_i2()"
13587 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013588 "match_key" : [
13589 {
13590 "match_type" : "exact",
13591 "key" : "0x02"
13592 }
13593 ],
13594 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013595 "action_id" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013596 "action_data" : []
13597 },
13598 "priority" : 3
13599 },
13600 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013601 "source_info" : {
13602 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013603 "line" : 357,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013604 "column" : 12,
13605 "source_fragment" : "(0x3) : int_set_header_0003_i3()"
13606 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013607 "match_key" : [
13608 {
13609 "match_type" : "exact",
13610 "key" : "0x03"
13611 }
13612 ],
13613 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013614 "action_id" : 64,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013615 "action_data" : []
13616 },
13617 "priority" : 4
13618 },
13619 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013620 "source_info" : {
13621 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013622 "line" : 358,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013623 "column" : 12,
13624 "source_fragment" : "(0x4) : int_set_header_0003_i4()"
13625 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013626 "match_key" : [
13627 {
13628 "match_type" : "exact",
13629 "key" : "0x04"
13630 }
13631 ],
13632 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013633 "action_id" : 65,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013634 "action_data" : []
13635 },
13636 "priority" : 5
13637 },
13638 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013639 "source_info" : {
13640 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013641 "line" : 359,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013642 "column" : 12,
13643 "source_fragment" : "(0x5) : int_set_header_0003_i5()"
13644 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013645 "match_key" : [
13646 {
13647 "match_type" : "exact",
13648 "key" : "0x05"
13649 }
13650 ],
13651 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013652 "action_id" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013653 "action_data" : []
13654 },
13655 "priority" : 6
13656 },
13657 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013658 "source_info" : {
13659 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013660 "line" : 360,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013661 "column" : 12,
13662 "source_fragment" : "(0x6) : int_set_header_0003_i6()"
13663 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013664 "match_key" : [
13665 {
13666 "match_type" : "exact",
13667 "key" : "0x06"
13668 }
13669 ],
13670 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013671 "action_id" : 67,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013672 "action_data" : []
13673 },
13674 "priority" : 7
13675 },
13676 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013677 "source_info" : {
13678 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013679 "line" : 361,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013680 "column" : 12,
13681 "source_fragment" : "(0x7) : int_set_header_0003_i7()"
13682 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013683 "match_key" : [
13684 {
13685 "match_type" : "exact",
13686 "key" : "0x07"
13687 }
13688 ],
13689 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013690 "action_id" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013691 "action_data" : []
13692 },
13693 "priority" : 8
13694 },
13695 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013696 "source_info" : {
13697 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013698 "line" : 362,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013699 "column" : 12,
13700 "source_fragment" : "(0x8) : int_set_header_0003_i8()"
13701 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013702 "match_key" : [
13703 {
13704 "match_type" : "exact",
13705 "key" : "0x08"
13706 }
13707 ],
13708 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013709 "action_id" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013710 "action_data" : []
13711 },
13712 "priority" : 9
13713 },
13714 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013715 "source_info" : {
13716 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013717 "line" : 363,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013718 "column" : 12,
13719 "source_fragment" : "(0x9) : int_set_header_0003_i9()"
13720 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013721 "match_key" : [
13722 {
13723 "match_type" : "exact",
13724 "key" : "0x09"
13725 }
13726 ],
13727 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013728 "action_id" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013729 "action_data" : []
13730 },
13731 "priority" : 10
13732 },
13733 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013734 "source_info" : {
13735 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013736 "line" : 364,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013737 "column" : 12,
13738 "source_fragment" : "(0xA) : int_set_header_0003_i10()"
13739 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013740 "match_key" : [
13741 {
13742 "match_type" : "exact",
13743 "key" : "0x0a"
13744 }
13745 ],
13746 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013747 "action_id" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013748 "action_data" : []
13749 },
13750 "priority" : 11
13751 },
13752 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013753 "source_info" : {
13754 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013755 "line" : 365,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013756 "column" : 12,
13757 "source_fragment" : "(0xB) : int_set_header_0003_i11()"
13758 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013759 "match_key" : [
13760 {
13761 "match_type" : "exact",
13762 "key" : "0x0b"
13763 }
13764 ],
13765 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013766 "action_id" : 72,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013767 "action_data" : []
13768 },
13769 "priority" : 12
13770 },
13771 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013772 "source_info" : {
13773 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013774 "line" : 366,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013775 "column" : 12,
13776 "source_fragment" : "(0xC) : int_set_header_0003_i12()"
13777 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013778 "match_key" : [
13779 {
13780 "match_type" : "exact",
13781 "key" : "0x0c"
13782 }
13783 ],
13784 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013785 "action_id" : 73,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013786 "action_data" : []
13787 },
13788 "priority" : 13
13789 },
13790 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013791 "source_info" : {
13792 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013793 "line" : 367,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013794 "column" : 12,
13795 "source_fragment" : "(0xD) : int_set_header_0003_i13()"
13796 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013797 "match_key" : [
13798 {
13799 "match_type" : "exact",
13800 "key" : "0x0d"
13801 }
13802 ],
13803 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013804 "action_id" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013805 "action_data" : []
13806 },
13807 "priority" : 14
13808 },
13809 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013810 "source_info" : {
13811 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013812 "line" : 368,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013813 "column" : 12,
13814 "source_fragment" : "(0xE) : int_set_header_0003_i14()"
13815 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013816 "match_key" : [
13817 {
13818 "match_type" : "exact",
13819 "key" : "0x0e"
13820 }
13821 ],
13822 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013823 "action_id" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013824 "action_data" : []
13825 },
13826 "priority" : 15
13827 },
13828 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013829 "source_info" : {
13830 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013831 "line" : 369,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013832 "column" : 12,
13833 "source_fragment" : "(0xF) : int_set_header_0003_i15()"
13834 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013835 "match_key" : [
13836 {
13837 "match_type" : "exact",
13838 "key" : "0x0f"
13839 }
13840 ],
13841 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013842 "action_id" : 76,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013843 "action_data" : []
13844 },
13845 "priority" : 16
13846 }
13847 ]
13848 },
13849 {
13850 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013851 "id" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013852 "source_info" : {
13853 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013854 "line" : 375,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013855 "column" : 10,
13856 "source_fragment" : "tb_int_inst_0407"
13857 },
13858 "key" : [
13859 {
13860 "match_type" : "exact",
13861 "name" : "hdr.int_header.instruction_mask_0407",
13862 "target" : ["int_header", "instruction_mask_0407"],
13863 "mask" : null
13864 }
13865 ],
13866 "match_type" : "exact",
13867 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013868 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013869 "with_counters" : false,
13870 "support_timeout" : false,
13871 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013872 "action_ids" : [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 57],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013873 "actions" : ["FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14", "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15", "NoAction"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013874 "base_default_next" : "tbl_act_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013875 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013876 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_30",
13877 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_30",
13878 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_30",
13879 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_30",
13880 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_30",
13881 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_30",
13882 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_30",
13883 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_30",
13884 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_30",
13885 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_30",
13886 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_30",
13887 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_30",
13888 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_30",
13889 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_30",
13890 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_30",
13891 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_30",
13892 "NoAction" : "tbl_act_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013893 },
13894 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013895 "action_id" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013896 "action_const" : false,
13897 "action_data" : [],
13898 "action_entry_const" : false
13899 },
13900 "entries" : [
13901 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013902 "source_info" : {
13903 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013904 "line" : 398,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013905 "column" : 12,
13906 "source_fragment" : "(0x0) : int_set_header_0407_i0()"
13907 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013908 "match_key" : [
13909 {
13910 "match_type" : "exact",
13911 "key" : "0x00"
13912 }
13913 ],
13914 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013915 "action_id" : 77,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013916 "action_data" : []
13917 },
13918 "priority" : 1
13919 },
13920 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013921 "source_info" : {
13922 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013923 "line" : 399,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013924 "column" : 12,
13925 "source_fragment" : "(0x1) : int_set_header_0407_i1()"
13926 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013927 "match_key" : [
13928 {
13929 "match_type" : "exact",
13930 "key" : "0x01"
13931 }
13932 ],
13933 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013934 "action_id" : 78,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013935 "action_data" : []
13936 },
13937 "priority" : 2
13938 },
13939 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013940 "source_info" : {
13941 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013942 "line" : 400,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013943 "column" : 12,
13944 "source_fragment" : "(0x2) : int_set_header_0407_i2()"
13945 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013946 "match_key" : [
13947 {
13948 "match_type" : "exact",
13949 "key" : "0x02"
13950 }
13951 ],
13952 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013953 "action_id" : 79,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013954 "action_data" : []
13955 },
13956 "priority" : 3
13957 },
13958 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013959 "source_info" : {
13960 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013961 "line" : 401,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013962 "column" : 12,
13963 "source_fragment" : "(0x3) : int_set_header_0407_i3()"
13964 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013965 "match_key" : [
13966 {
13967 "match_type" : "exact",
13968 "key" : "0x03"
13969 }
13970 ],
13971 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013972 "action_id" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013973 "action_data" : []
13974 },
13975 "priority" : 4
13976 },
13977 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013978 "source_info" : {
13979 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013980 "line" : 402,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013981 "column" : 12,
13982 "source_fragment" : "(0x4) : int_set_header_0407_i4()"
13983 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013984 "match_key" : [
13985 {
13986 "match_type" : "exact",
13987 "key" : "0x04"
13988 }
13989 ],
13990 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013991 "action_id" : 81,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013992 "action_data" : []
13993 },
13994 "priority" : 5
13995 },
13996 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013997 "source_info" : {
13998 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013999 "line" : 403,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014000 "column" : 12,
14001 "source_fragment" : "(0x5) : int_set_header_0407_i5()"
14002 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014003 "match_key" : [
14004 {
14005 "match_type" : "exact",
14006 "key" : "0x05"
14007 }
14008 ],
14009 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014010 "action_id" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014011 "action_data" : []
14012 },
14013 "priority" : 6
14014 },
14015 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014016 "source_info" : {
14017 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014018 "line" : 404,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014019 "column" : 12,
14020 "source_fragment" : "(0x6) : int_set_header_0407_i6()"
14021 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014022 "match_key" : [
14023 {
14024 "match_type" : "exact",
14025 "key" : "0x06"
14026 }
14027 ],
14028 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014029 "action_id" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014030 "action_data" : []
14031 },
14032 "priority" : 7
14033 },
14034 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014035 "source_info" : {
14036 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014037 "line" : 405,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014038 "column" : 12,
14039 "source_fragment" : "(0x7) : int_set_header_0407_i7()"
14040 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014041 "match_key" : [
14042 {
14043 "match_type" : "exact",
14044 "key" : "0x07"
14045 }
14046 ],
14047 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014048 "action_id" : 84,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014049 "action_data" : []
14050 },
14051 "priority" : 8
14052 },
14053 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014054 "source_info" : {
14055 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014056 "line" : 406,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014057 "column" : 12,
14058 "source_fragment" : "(0x8) : int_set_header_0407_i8()"
14059 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014060 "match_key" : [
14061 {
14062 "match_type" : "exact",
14063 "key" : "0x08"
14064 }
14065 ],
14066 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014067 "action_id" : 85,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014068 "action_data" : []
14069 },
14070 "priority" : 9
14071 },
14072 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014073 "source_info" : {
14074 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014075 "line" : 407,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014076 "column" : 12,
14077 "source_fragment" : "(0x9) : int_set_header_0407_i9()"
14078 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014079 "match_key" : [
14080 {
14081 "match_type" : "exact",
14082 "key" : "0x09"
14083 }
14084 ],
14085 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014086 "action_id" : 86,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014087 "action_data" : []
14088 },
14089 "priority" : 10
14090 },
14091 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014092 "source_info" : {
14093 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014094 "line" : 408,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014095 "column" : 12,
14096 "source_fragment" : "(0xA) : int_set_header_0407_i10()"
14097 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014098 "match_key" : [
14099 {
14100 "match_type" : "exact",
14101 "key" : "0x0a"
14102 }
14103 ],
14104 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014105 "action_id" : 87,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014106 "action_data" : []
14107 },
14108 "priority" : 11
14109 },
14110 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014111 "source_info" : {
14112 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014113 "line" : 409,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014114 "column" : 12,
14115 "source_fragment" : "(0xB) : int_set_header_0407_i11()"
14116 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014117 "match_key" : [
14118 {
14119 "match_type" : "exact",
14120 "key" : "0x0b"
14121 }
14122 ],
14123 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014124 "action_id" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014125 "action_data" : []
14126 },
14127 "priority" : 12
14128 },
14129 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014130 "source_info" : {
14131 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014132 "line" : 410,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014133 "column" : 12,
14134 "source_fragment" : "(0xC) : int_set_header_0407_i12()"
14135 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014136 "match_key" : [
14137 {
14138 "match_type" : "exact",
14139 "key" : "0x0c"
14140 }
14141 ],
14142 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014143 "action_id" : 89,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014144 "action_data" : []
14145 },
14146 "priority" : 13
14147 },
14148 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014149 "source_info" : {
14150 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014151 "line" : 411,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014152 "column" : 12,
14153 "source_fragment" : "(0xD) : int_set_header_0407_i13()"
14154 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014155 "match_key" : [
14156 {
14157 "match_type" : "exact",
14158 "key" : "0x0d"
14159 }
14160 ],
14161 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014162 "action_id" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014163 "action_data" : []
14164 },
14165 "priority" : 14
14166 },
14167 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014168 "source_info" : {
14169 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014170 "line" : 412,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014171 "column" : 12,
14172 "source_fragment" : "(0xE) : int_set_header_0407_i14()"
14173 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014174 "match_key" : [
14175 {
14176 "match_type" : "exact",
14177 "key" : "0x0e"
14178 }
14179 ],
14180 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014181 "action_id" : 91,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014182 "action_data" : []
14183 },
14184 "priority" : 15
14185 },
14186 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014187 "source_info" : {
14188 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014189 "line" : 413,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014190 "column" : 12,
14191 "source_fragment" : "(0xF) : int_set_header_0407_i15()"
14192 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014193 "match_key" : [
14194 {
14195 "match_type" : "exact",
14196 "key" : "0x0f"
14197 }
14198 ],
14199 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014200 "action_id" : 92,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014201 "action_data" : []
14202 },
14203 "priority" : 16
14204 }
14205 ]
14206 },
14207 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014208 "name" : "tbl_act_30",
14209 "id" : 54,
14210 "key" : [],
14211 "match_type" : "exact",
14212 "type" : "simple",
14213 "max_size" : 1024,
14214 "with_counters" : false,
14215 "support_timeout" : false,
14216 "direct_meters" : null,
14217 "action_ids" : [109],
14218 "actions" : ["act_31"],
14219 "base_default_next" : "node_94",
14220 "next_tables" : {
14221 "act_31" : "node_94"
14222 },
14223 "default_entry" : {
14224 "action_id" : 109,
14225 "action_const" : true,
14226 "action_data" : [],
14227 "action_entry_const" : true
14228 }
14229 },
14230 {
14231 "name" : "tbl_act_31",
14232 "id" : 55,
14233 "key" : [],
14234 "match_type" : "exact",
14235 "type" : "simple",
14236 "max_size" : 1024,
14237 "with_counters" : false,
14238 "support_timeout" : false,
14239 "direct_meters" : null,
14240 "action_ids" : [108],
14241 "actions" : ["act_30"],
14242 "base_default_next" : "node_96",
14243 "next_tables" : {
14244 "act_30" : "node_96"
14245 },
14246 "default_entry" : {
14247 "action_id" : 108,
14248 "action_const" : true,
14249 "action_data" : [],
14250 "action_entry_const" : true
14251 }
14252 },
14253 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014254 "name" : "tbl_act_32",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014255 "id" : 56,
14256 "key" : [],
14257 "match_type" : "exact",
14258 "type" : "simple",
14259 "max_size" : 1024,
14260 "with_counters" : false,
14261 "support_timeout" : false,
14262 "direct_meters" : null,
14263 "action_ids" : [110],
14264 "actions" : ["act_32"],
14265 "base_default_next" : "node_98",
14266 "next_tables" : {
14267 "act_32" : "node_98"
14268 },
14269 "default_entry" : {
14270 "action_id" : 110,
14271 "action_const" : true,
14272 "action_data" : [],
14273 "action_entry_const" : true
14274 }
14275 },
14276 {
14277 "name" : "tbl_act_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014278 "id" : 57,
14279 "key" : [],
14280 "match_type" : "exact",
14281 "type" : "simple",
14282 "max_size" : 1024,
14283 "with_counters" : false,
14284 "support_timeout" : false,
14285 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014286 "action_ids" : [111],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014287 "actions" : ["act_33"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014288 "base_default_next" : null,
14289 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014290 "act_33" : null
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014291 },
14292 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014293 "action_id" : 111,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014294 "action_const" : true,
14295 "action_data" : [],
14296 "action_entry_const" : true
14297 }
14298 }
14299 ],
14300 "action_profiles" : [],
14301 "conditionals" : [
14302 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014303 "name" : "node_55",
14304 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014305 "source_info" : {
14306 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014307 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014308 "column" : 12,
14309 "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
14310 },
14311 "expression" : {
14312 "type" : "expression",
14313 "value" : {
14314 "op" : "==",
14315 "left" : {
14316 "type" : "expression",
14317 "value" : {
14318 "op" : "d2b",
14319 "left" : null,
14320 "right" : {
14321 "type" : "field",
14322 "value" : ["scalars", "fabric_metadata_t.is_controller_packet_out"]
14323 }
14324 }
14325 },
14326 "right" : {
14327 "type" : "bool",
14328 "value" : true
14329 }
14330 }
14331 },
14332 "true_next" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014333 "false_next" : "node_56"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014334 },
14335 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014336 "name" : "node_56",
14337 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014338 "source_info" : {
14339 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014340 "line" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014341 "column" : 12,
14342 "source_fragment" : "standard_metadata.egress_port == 255"
14343 },
14344 "expression" : {
14345 "type" : "expression",
14346 "value" : {
14347 "op" : "==",
14348 "left" : {
14349 "type" : "field",
14350 "value" : ["standard_metadata", "egress_port"]
14351 },
14352 "right" : {
14353 "type" : "hexstr",
14354 "value" : "0x00ff"
14355 }
14356 }
14357 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014358 "true_next" : "node_57",
14359 "false_next" : "node_60"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014360 },
14361 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014362 "name" : "node_57",
14363 "id" : 19,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014364 "source_info" : {
14365 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014366 "line" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014367 "column" : 16,
14368 "source_fragment" : "fabric_metadata.is_multicast == true && ..."
14369 },
14370 "expression" : {
14371 "type" : "expression",
14372 "value" : {
14373 "op" : "and",
14374 "left" : {
14375 "type" : "expression",
14376 "value" : {
14377 "op" : "==",
14378 "left" : {
14379 "type" : "expression",
14380 "value" : {
14381 "op" : "d2b",
14382 "left" : null,
14383 "right" : {
14384 "type" : "field",
14385 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
14386 }
14387 }
14388 },
14389 "right" : {
14390 "type" : "bool",
14391 "value" : true
14392 }
14393 }
14394 },
14395 "right" : {
14396 "type" : "expression",
14397 "value" : {
14398 "op" : "==",
14399 "left" : {
14400 "type" : "expression",
14401 "value" : {
14402 "op" : "d2b",
14403 "left" : null,
14404 "right" : {
14405 "type" : "field",
14406 "value" : ["scalars", "fabric_metadata_t.clone_to_cpu"]
14407 }
14408 }
14409 },
14410 "right" : {
14411 "type" : "bool",
14412 "value" : false
14413 }
14414 }
14415 }
14416 }
14417 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014418 "true_next" : "tbl_act_19",
14419 "false_next" : "tbl_act_20"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014420 },
14421 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014422 "name" : "node_60",
14423 "id" : 20,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014424 "source_info" : {
14425 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014426 "line" : 299,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014427 "column" : 12,
14428 "source_fragment" : "fabric_metadata.is_multicast == true ..."
14429 },
14430 "expression" : {
14431 "type" : "expression",
14432 "value" : {
14433 "op" : "and",
14434 "left" : {
14435 "type" : "expression",
14436 "value" : {
14437 "op" : "==",
14438 "left" : {
14439 "type" : "expression",
14440 "value" : {
14441 "op" : "d2b",
14442 "left" : null,
14443 "right" : {
14444 "type" : "field",
14445 "value" : ["scalars", "fabric_metadata_t.is_multicast"]
14446 }
14447 }
14448 },
14449 "right" : {
14450 "type" : "bool",
14451 "value" : true
14452 }
14453 }
14454 },
14455 "right" : {
14456 "type" : "expression",
14457 "value" : {
14458 "op" : "==",
14459 "left" : {
14460 "type" : "field",
14461 "value" : ["standard_metadata", "ingress_port"]
14462 },
14463 "right" : {
14464 "type" : "field",
14465 "value" : ["standard_metadata", "egress_port"]
14466 }
14467 }
14468 }
14469 }
14470 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014471 "true_next" : "tbl_act_21",
14472 "false_next" : "node_62"
14473 },
14474 {
14475 "name" : "node_62",
14476 "id" : 21,
14477 "source_info" : {
14478 "filename" : "include/control/next.p4",
14479 "line" : 304,
14480 "column" : 12,
14481 "source_fragment" : "fabric_metadata.mpls_label == 0"
14482 },
14483 "expression" : {
14484 "type" : "expression",
14485 "value" : {
14486 "op" : "==",
14487 "left" : {
14488 "type" : "field",
14489 "value" : ["scalars", "fabric_metadata_t.mpls_label"]
14490 },
14491 "right" : {
14492 "type" : "hexstr",
14493 "value" : "0x000000"
14494 }
14495 }
14496 },
14497 "true_next" : "node_63",
14498 "false_next" : "tbl_egress_next_set_mpls"
14499 },
14500 {
14501 "name" : "node_63",
14502 "id" : 22,
14503 "source_info" : {
14504 "filename" : "include/control/next.p4",
14505 "line" : 305,
14506 "column" : 16,
14507 "source_fragment" : "hdr.mpls.isValid()"
14508 },
14509 "expression" : {
14510 "type" : "expression",
14511 "value" : {
14512 "op" : "d2b",
14513 "left" : null,
14514 "right" : {
14515 "type" : "field",
14516 "value" : ["mpls", "$valid$"]
14517 }
14518 }
14519 },
14520 "true_next" : "tbl_egress_next_pop_mpls_if_present",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014521 "false_next" : "FabricEgress.egress_next.egress_vlan"
14522 },
14523 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014524 "name" : "node_69",
14525 "id" : 23,
14526 "source_info" : {
14527 "filename" : "include/control/next.p4",
14528 "line" : 310,
14529 "column" : 12,
14530 "source_fragment" : "!egress_vlan.apply().hit"
14531 },
14532 "expression" : {
14533 "type" : "expression",
14534 "value" : {
14535 "op" : "not",
14536 "left" : null,
14537 "right" : {
14538 "type" : "expression",
14539 "value" : {
14540 "op" : "d2b",
14541 "left" : null,
14542 "right" : {
14543 "type" : "field",
14544 "value" : ["scalars", "egress_next_tmp"]
14545 }
14546 }
14547 }
14548 }
14549 },
14550 "true_next" : "node_70",
14551 "false_next" : "node_72"
14552 },
14553 {
14554 "name" : "node_70",
14555 "id" : 24,
14556 "source_info" : {
14557 "filename" : "include/control/next.p4",
14558 "line" : 312,
14559 "column" : 16,
14560 "source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
14561 },
14562 "expression" : {
14563 "type" : "expression",
14564 "value" : {
14565 "op" : "!=",
14566 "left" : {
14567 "type" : "field",
14568 "value" : ["scalars", "fabric_metadata_t.vlan_id"]
14569 },
14570 "right" : {
14571 "type" : "hexstr",
14572 "value" : "0x0ffe"
14573 }
14574 }
14575 },
14576 "true_next" : "tbl_egress_next_push_vlan",
14577 "false_next" : "node_72"
14578 },
14579 {
14580 "name" : "node_72",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014581 "id" : 25,
14582 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014583 "filename" : "include/control/next.p4",
14584 "line" : 318,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014585 "column" : 12,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014586 "source_fragment" : "hdr.mpls.isValid()"
14587 },
14588 "expression" : {
14589 "type" : "expression",
14590 "value" : {
14591 "op" : "d2b",
14592 "left" : null,
14593 "right" : {
14594 "type" : "field",
14595 "value" : ["mpls", "$valid$"]
14596 }
14597 }
14598 },
14599 "true_next" : "tbl_act_24",
14600 "false_next" : "node_76"
14601 },
14602 {
14603 "name" : "node_74",
14604 "id" : 26,
14605 "source_info" : {
14606 "filename" : "include/control/next.p4",
14607 "line" : 320,
14608 "column" : 16,
14609 "source_fragment" : "hdr.mpls.ttl == 0"
14610 },
14611 "expression" : {
14612 "type" : "expression",
14613 "value" : {
14614 "op" : "==",
14615 "left" : {
14616 "type" : "field",
14617 "value" : ["mpls", "ttl"]
14618 },
14619 "right" : {
14620 "type" : "hexstr",
14621 "value" : "0x00"
14622 }
14623 }
14624 },
14625 "true_next" : "tbl_act_25",
14626 "false_next" : "node_80"
14627 },
14628 {
14629 "name" : "node_76",
14630 "id" : 27,
14631 "source_info" : {
14632 "filename" : "include/control/next.p4",
14633 "line" : 322,
14634 "column" : 15,
14635 "source_fragment" : "hdr.ipv4.isValid()"
14636 },
14637 "expression" : {
14638 "type" : "expression",
14639 "value" : {
14640 "op" : "d2b",
14641 "left" : null,
14642 "right" : {
14643 "type" : "field",
14644 "value" : ["ipv4", "$valid$"]
14645 }
14646 }
14647 },
14648 "true_next" : "tbl_act_26",
14649 "false_next" : "node_80"
14650 },
14651 {
14652 "name" : "node_78",
14653 "id" : 28,
14654 "source_info" : {
14655 "filename" : "include/control/next.p4",
14656 "line" : 324,
14657 "column" : 20,
14658 "source_fragment" : "hdr.ipv4.ttl == 0"
14659 },
14660 "expression" : {
14661 "type" : "expression",
14662 "value" : {
14663 "op" : "==",
14664 "left" : {
14665 "type" : "field",
14666 "value" : ["ipv4", "ttl"]
14667 },
14668 "right" : {
14669 "type" : "hexstr",
14670 "value" : "0x00"
14671 }
14672 }
14673 },
14674 "true_next" : "tbl_act_27",
14675 "false_next" : "node_80"
14676 },
14677 {
14678 "name" : "node_80",
14679 "id" : 29,
14680 "source_info" : {
14681 "filename" : "include/spgw.p4",
14682 "line" : 226,
14683 "column" : 12,
14684 "source_fragment" : "fabric_meta.spgw.direction == SPGW_DIR_DOWNLINK"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014685 },
14686 "expression" : {
14687 "type" : "expression",
14688 "value" : {
14689 "op" : "==",
14690 "left" : {
14691 "type" : "field",
14692 "value" : ["userMetadata.spgw", "direction"]
14693 },
14694 "right" : {
14695 "type" : "hexstr",
14696 "value" : "0x02"
14697 }
14698 }
14699 },
14700 "true_next" : "tbl_spgw_egress_gtpu_encap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014701 "false_next" : "node_82"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014702 },
14703 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014704 "name" : "node_82",
14705 "id" : 30,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014706 "source_info" : {
14707 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014708 "line" : 102,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014709 "column" : 12,
14710 "source_fragment" : "standard_metadata.ingress_port != 255 && ..."
14711 },
14712 "expression" : {
14713 "type" : "expression",
14714 "value" : {
14715 "op" : "and",
14716 "left" : {
14717 "type" : "expression",
14718 "value" : {
14719 "op" : "and",
14720 "left" : {
14721 "type" : "expression",
14722 "value" : {
14723 "op" : "!=",
14724 "left" : {
14725 "type" : "field",
14726 "value" : ["standard_metadata", "ingress_port"]
14727 },
14728 "right" : {
14729 "type" : "hexstr",
14730 "value" : "0x00ff"
14731 }
14732 }
14733 },
14734 "right" : {
14735 "type" : "expression",
14736 "value" : {
14737 "op" : "!=",
14738 "left" : {
14739 "type" : "field",
14740 "value" : ["standard_metadata", "egress_port"]
14741 },
14742 "right" : {
14743 "type" : "hexstr",
14744 "value" : "0x00ff"
14745 }
14746 }
14747 }
14748 }
14749 },
14750 "right" : {
14751 "type" : "expression",
14752 "value" : {
14753 "op" : "or",
14754 "left" : {
14755 "type" : "expression",
14756 "value" : {
14757 "op" : "d2b",
14758 "left" : null,
14759 "right" : {
14760 "type" : "field",
14761 "value" : ["udp", "$valid$"]
14762 }
14763 }
14764 },
14765 "right" : {
14766 "type" : "expression",
14767 "value" : {
14768 "op" : "d2b",
14769 "left" : null,
14770 "right" : {
14771 "type" : "field",
14772 "value" : ["tcp", "$valid$"]
14773 }
14774 }
14775 }
14776 }
14777 }
14778 }
14779 },
14780 "false_next" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014781 "true_next" : "node_83"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014782 },
14783 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014784 "name" : "node_83",
14785 "id" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014786 "source_info" : {
14787 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014788 "line" : 106,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014789 "column" : 16,
14790 "source_fragment" : "fabric_metadata.int_meta.source == true"
14791 },
14792 "expression" : {
14793 "type" : "expression",
14794 "value" : {
14795 "op" : "==",
14796 "left" : {
14797 "type" : "expression",
14798 "value" : {
14799 "op" : "d2b",
14800 "left" : null,
14801 "right" : {
14802 "type" : "field",
14803 "value" : ["userMetadata.int_meta", "source"]
14804 }
14805 }
14806 },
14807 "right" : {
14808 "type" : "bool",
14809 "value" : true
14810 }
14811 }
14812 },
14813 "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014814 "false_next" : "node_85"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014815 },
14816 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014817 "name" : "node_85",
14818 "id" : 32,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014819 "source_info" : {
14820 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014821 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014822 "column" : 15,
14823 "source_fragment" : "hdr.int_header.isValid()"
14824 },
14825 "expression" : {
14826 "type" : "expression",
14827 "value" : {
14828 "op" : "d2b",
14829 "left" : null,
14830 "right" : {
14831 "type" : "field",
14832 "value" : ["int_header", "$valid$"]
14833 }
14834 }
14835 },
14836 "false_next" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014837 "true_next" : "tbl_act_28"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014838 },
14839 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014840 "name" : "node_88",
14841 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014842 "source_info" : {
14843 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014844 "line" : 419,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014845 "column" : 12,
14846 "source_fragment" : "fmeta.int_meta.transit == false"
14847 },
14848 "expression" : {
14849 "type" : "expression",
14850 "value" : {
14851 "op" : "==",
14852 "left" : {
14853 "type" : "expression",
14854 "value" : {
14855 "op" : "d2b",
14856 "left" : null,
14857 "right" : {
14858 "type" : "field",
14859 "value" : ["userMetadata.int_meta", "transit"]
14860 }
14861 }
14862 },
14863 "right" : {
14864 "type" : "bool",
14865 "value" : false
14866 }
14867 }
14868 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014869 "true_next" : "tbl_act_29",
14870 "false_next" : "node_90"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014871 },
14872 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014873 "name" : "node_90",
14874 "id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014875 "expression" : {
14876 "type" : "expression",
14877 "value" : {
14878 "op" : "not",
14879 "left" : null,
14880 "right" : {
14881 "type" : "expression",
14882 "value" : {
14883 "op" : "d2b",
14884 "left" : null,
14885 "right" : {
14886 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014887 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014888 }
14889 }
14890 }
14891 }
14892 },
14893 "false_next" : null,
14894 "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
14895 },
14896 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014897 "name" : "node_94",
14898 "id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014899 "source_info" : {
14900 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014901 "line" : 427,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014902 "column" : 12,
14903 "source_fragment" : "hdr.ipv4.isValid()"
14904 },
14905 "expression" : {
14906 "type" : "expression",
14907 "value" : {
14908 "op" : "d2b",
14909 "left" : null,
14910 "right" : {
14911 "type" : "field",
14912 "value" : ["ipv4", "$valid$"]
14913 }
14914 }
14915 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014916 "true_next" : "tbl_act_31",
14917 "false_next" : "node_96"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014918 },
14919 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014920 "name" : "node_96",
14921 "id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014922 "source_info" : {
14923 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014924 "line" : 430,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014925 "column" : 12,
14926 "source_fragment" : "hdr.udp.isValid()"
14927 },
14928 "expression" : {
14929 "type" : "expression",
14930 "value" : {
14931 "op" : "d2b",
14932 "left" : null,
14933 "right" : {
14934 "type" : "field",
14935 "value" : ["udp", "$valid$"]
14936 }
14937 }
14938 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014939 "true_next" : "tbl_act_32",
14940 "false_next" : "node_98"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014941 },
14942 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014943 "name" : "node_98",
14944 "id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014945 "source_info" : {
14946 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014947 "line" : 433,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014948 "column" : 12,
14949 "source_fragment" : "hdr.intl4_shim.isValid()"
14950 },
14951 "expression" : {
14952 "type" : "expression",
14953 "value" : {
14954 "op" : "d2b",
14955 "left" : null,
14956 "right" : {
14957 "type" : "field",
14958 "value" : ["intl4_shim", "$valid$"]
14959 }
14960 }
14961 },
14962 "false_next" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014963 "true_next" : "tbl_act_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014964 }
14965 ]
14966 }
14967 ],
14968 "checksums" : [
14969 {
14970 "name" : "cksum",
14971 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014972 "source_info" : {
14973 "filename" : "include/checksum.p4",
14974 "line" : 28,
14975 "column" : 8,
14976 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
14977 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014978 "target" : ["ipv4", "hdr_checksum"],
14979 "type" : "generic",
14980 "calculation" : "calc",
14981 "if_cond" : {
14982 "type" : "expression",
14983 "value" : {
14984 "op" : "d2b",
14985 "left" : null,
14986 "right" : {
14987 "type" : "field",
14988 "value" : ["ipv4", "$valid$"]
14989 }
14990 }
14991 }
14992 },
14993 {
14994 "name" : "cksum_0",
14995 "id" : 1,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014996 "source_info" : {
14997 "filename" : "include/spgw.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014998 "line" : 242,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014999 "column" : 8,
15000 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
15001 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015002 "target" : ["gtpu_ipv4", "hdr_checksum"],
15003 "type" : "generic",
15004 "calculation" : "calc_0",
15005 "if_cond" : {
15006 "type" : "expression",
15007 "value" : {
15008 "op" : "d2b",
15009 "left" : null,
15010 "right" : {
15011 "type" : "field",
15012 "value" : ["gtpu_ipv4", "$valid$"]
15013 }
15014 }
15015 }
15016 },
15017 {
15018 "name" : "cksum_1",
15019 "id" : 2,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015020 "source_info" : {
15021 "filename" : "include/checksum.p4",
15022 "line" : 57,
15023 "column" : 8,
15024 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
15025 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015026 "target" : ["ipv4", "hdr_checksum"],
15027 "type" : "generic",
15028 "calculation" : "calc_1",
15029 "if_cond" : {
15030 "type" : "expression",
15031 "value" : {
15032 "op" : "d2b",
15033 "left" : null,
15034 "right" : {
15035 "type" : "field",
15036 "value" : ["ipv4", "$valid$"]
15037 }
15038 }
15039 }
15040 }
15041 ],
15042 "force_arith" : [],
15043 "extern_instances" : [],
15044 "field_aliases" : [
15045 [
15046 "queueing_metadata.enq_timestamp",
15047 ["standard_metadata", "enq_timestamp"]
15048 ],
15049 [
15050 "queueing_metadata.enq_qdepth",
15051 ["standard_metadata", "enq_qdepth"]
15052 ],
15053 [
15054 "queueing_metadata.deq_timedelta",
15055 ["standard_metadata", "deq_timedelta"]
15056 ],
15057 [
15058 "queueing_metadata.deq_qdepth",
15059 ["standard_metadata", "deq_qdepth"]
15060 ],
15061 [
15062 "intrinsic_metadata.ingress_global_timestamp",
15063 ["standard_metadata", "ingress_global_timestamp"]
15064 ],
15065 [
15066 "intrinsic_metadata.egress_global_timestamp",
15067 ["standard_metadata", "egress_global_timestamp"]
15068 ],
15069 [
15070 "intrinsic_metadata.lf_field_list",
15071 ["standard_metadata", "lf_field_list"]
15072 ],
15073 [
15074 "intrinsic_metadata.mcast_grp",
15075 ["standard_metadata", "mcast_grp"]
15076 ],
15077 [
15078 "intrinsic_metadata.resubmit_flag",
15079 ["standard_metadata", "resubmit_flag"]
15080 ],
15081 [
15082 "intrinsic_metadata.egress_rid",
15083 ["standard_metadata", "egress_rid"]
15084 ],
15085 [
15086 "intrinsic_metadata.recirculate_flag",
15087 ["standard_metadata", "recirculate_flag"]
15088 ]
15089 ],
15090 "program" : "fabric.p4",
15091 "__meta__" : {
15092 "version" : [2, 18],
15093 "compiler" : "https://github.com/p4lang/p4c"
15094 }
15095}