blob: 65bcce8021545e3ed66402138dea89a5586bddfd [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],
Daniele Moro7c3a0022019-07-12 13:38:34 -070018 ["fabric_metadata_t._last_eth_type0", 16, false],
19 ["fabric_metadata_t._is_ipv41", 1, false],
20 ["fabric_metadata_t._is_ipv62", 1, false],
21 ["fabric_metadata_t._is_mpls3", 1, false],
22 ["fabric_metadata_t._ip_eth_type4", 16, false],
23 ["fabric_metadata_t._vlan_id5", 12, false],
24 ["fabric_metadata_t._vlan_pri6", 3, false],
25 ["fabric_metadata_t._vlan_cfi7", 1, false],
26 ["fabric_metadata_t._mpls_label8", 20, false],
27 ["fabric_metadata_t._mpls_ttl9", 8, false],
28 ["fabric_metadata_t._skip_forwarding10", 1, false],
29 ["fabric_metadata_t._skip_next11", 1, false],
30 ["fabric_metadata_t._fwd_type12", 3, false],
31 ["fabric_metadata_t._next_id13", 32, false],
32 ["fabric_metadata_t._is_multicast14", 1, false],
33 ["fabric_metadata_t._is_controller_packet_out15", 1, false],
34 ["fabric_metadata_t._ip_proto16", 8, false],
35 ["fabric_metadata_t._l4_sport17", 16, false],
36 ["fabric_metadata_t._l4_dport18", 16, false],
37 ["fabric_metadata_t._spgw_direction19", 2, false],
38 ["fabric_metadata_t._spgw_ipv4_len20", 16, false],
39 ["fabric_metadata_t._spgw_teid21", 32, false],
40 ["fabric_metadata_t._spgw_s1u_enb_addr22", 32, false],
41 ["fabric_metadata_t._spgw_s1u_sgw_addr23", 32, false],
42 ["fabric_metadata_t._int_meta_source24", 1, false],
43 ["fabric_metadata_t._int_meta_transit25", 1, false],
44 ["fabric_metadata_t._int_meta_sink26", 1, false],
45 ["fabric_metadata_t._int_meta_switch_id27", 32, false],
46 ["fabric_metadata_t._int_meta_new_words28", 8, false],
47 ["fabric_metadata_t._int_meta_new_bytes29", 16, false],
48 ["fabric_metadata_t._int_meta_ig_tstamp30", 32, false],
49 ["fabric_metadata_t._int_meta_eg_tstamp31", 32, false],
50 ["_padding_0", 5, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070051 ]
52 },
53 {
54 "name" : "standard_metadata",
55 "id" : 1,
56 "fields" : [
57 ["ingress_port", 9, false],
58 ["egress_spec", 9, false],
59 ["egress_port", 9, false],
60 ["clone_spec", 32, false],
61 ["instance_type", 32, false],
62 ["drop", 1, false],
63 ["recirculate_port", 16, false],
64 ["packet_length", 32, false],
65 ["enq_timestamp", 32, false],
66 ["enq_qdepth", 19, false],
67 ["deq_timedelta", 32, false],
68 ["deq_qdepth", 19, false],
69 ["ingress_global_timestamp", 48, false],
70 ["egress_global_timestamp", 48, false],
71 ["lf_field_list", 32, false],
72 ["mcast_grp", 16, false],
73 ["resubmit_flag", 32, false],
74 ["egress_rid", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070075 ["recirculate_flag", 32, false],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070076 ["checksum_error", 1, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070077 ["parser_error", 32, false],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070078 ["priority", 3, false],
79 ["_padding", 2, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070080 ]
81 },
82 {
83 "name" : "ethernet_t",
84 "id" : 2,
85 "fields" : [
86 ["dst_addr", 48, false],
87 ["src_addr", 48, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080088 ["eth_type", 16, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070089 ]
90 },
91 {
92 "name" : "vlan_tag_t",
93 "id" : 3,
94 "fields" : [
95 ["pri", 3, false],
96 ["cfi", 1, false],
97 ["vlan_id", 12, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080098 ["eth_type", 16, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070099 ]
100 },
101 {
102 "name" : "mpls_t",
103 "id" : 4,
104 "fields" : [
105 ["label", 20, false],
106 ["tc", 3, false],
107 ["bos", 1, false],
108 ["ttl", 8, false]
109 ]
110 },
111 {
112 "name" : "ipv4_t",
113 "id" : 5,
114 "fields" : [
115 ["version", 4, false],
116 ["ihl", 4, false],
117 ["dscp", 6, false],
118 ["ecn", 2, false],
119 ["total_len", 16, false],
120 ["identification", 16, false],
121 ["flags", 3, false],
122 ["frag_offset", 13, false],
123 ["ttl", 8, false],
124 ["protocol", 8, false],
125 ["hdr_checksum", 16, false],
126 ["src_addr", 32, false],
127 ["dst_addr", 32, false]
128 ]
129 },
130 {
131 "name" : "udp_t",
132 "id" : 6,
133 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800134 ["sport", 16, false],
135 ["dport", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700136 ["len", 16, false],
137 ["checksum", 16, false]
138 ]
139 },
140 {
141 "name" : "gtpu_t",
142 "id" : 7,
143 "fields" : [
144 ["version", 3, false],
145 ["pt", 1, false],
146 ["spare", 1, false],
147 ["ex_flag", 1, false],
148 ["seq_flag", 1, false],
149 ["npdu_flag", 1, false],
150 ["msgtype", 8, false],
151 ["msglen", 16, false],
152 ["teid", 32, false]
153 ]
154 },
155 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800156 "name" : "tcp_t",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700157 "id" : 8,
158 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800159 ["sport", 16, false],
160 ["dport", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700161 ["seq_no", 32, false],
162 ["ack_no", 32, false],
163 ["data_offset", 4, false],
164 ["res", 3, false],
165 ["ecn", 3, false],
166 ["ctrl", 6, false],
167 ["window", 16, false],
168 ["checksum", 16, false],
169 ["urgent_ptr", 16, false]
170 ]
171 },
172 {
173 "name" : "icmp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800174 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700175 "fields" : [
176 ["icmp_type", 8, false],
177 ["icmp_code", 8, false],
178 ["checksum", 16, false],
179 ["identifier", 16, false],
180 ["sequence_number", 16, false],
181 ["timestamp", 64, false]
182 ]
183 },
184 {
185 "name" : "packet_out_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800186 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700187 "fields" : [
188 ["egress_port", 9, false],
189 ["_pad", 7, false]
190 ]
191 },
192 {
193 "name" : "packet_in_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800194 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700195 "fields" : [
196 ["ingress_port", 9, false],
197 ["_pad", 7, false]
198 ]
199 },
200 {
201 "name" : "intl4_shim_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800202 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700203 "fields" : [
204 ["int_type", 8, false],
205 ["rsvd1", 8, false],
206 ["len_words", 8, false],
207 ["rsvd2", 8, false]
208 ]
209 },
210 {
211 "name" : "int_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800212 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700213 "fields" : [
214 ["ver", 2, false],
215 ["rep", 2, false],
216 ["c", 1, false],
217 ["e", 1, false],
218 ["rsvd1", 5, false],
219 ["ins_cnt", 5, false],
220 ["max_hop_cnt", 8, false],
221 ["total_hop_cnt", 8, false],
222 ["instruction_mask_0003", 4, false],
223 ["instruction_mask_0407", 4, false],
224 ["instruction_mask_0811", 4, false],
225 ["instruction_mask_1215", 4, false],
226 ["rsvd2", 16, false]
227 ]
228 },
229 {
230 "name" : "int_switch_id_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800231 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700232 "fields" : [
233 ["switch_id", 32, false]
234 ]
235 },
236 {
237 "name" : "int_port_ids_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800238 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700239 "fields" : [
240 ["ingress_port_id", 16, false],
241 ["egress_port_id", 16, false]
242 ]
243 },
244 {
245 "name" : "int_hop_latency_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800246 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700247 "fields" : [
248 ["hop_latency", 32, false]
249 ]
250 },
251 {
252 "name" : "int_q_occupancy_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800253 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700254 "fields" : [
255 ["q_id", 8, false],
256 ["q_occupancy", 24, false]
257 ]
258 },
259 {
260 "name" : "int_ingress_tstamp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800261 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700262 "fields" : [
263 ["ingress_tstamp", 32, false]
264 ]
265 },
266 {
267 "name" : "int_egress_tstamp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800268 "id" : 19,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700269 "fields" : [
270 ["egress_tstamp", 32, false]
271 ]
272 },
273 {
274 "name" : "int_q_congestion_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800275 "id" : 20,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700276 "fields" : [
277 ["q_id", 8, false],
278 ["q_congestion", 24, false]
279 ]
280 },
281 {
282 "name" : "int_egress_port_tx_util_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800283 "id" : 21,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700284 "fields" : [
285 ["egress_port_tx_util", 32, false]
286 ]
287 },
288 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700289 "name" : "intl4_tail_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800290 "id" : 22,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700291 "fields" : [
292 ["next_proto", 8, false],
293 ["dest_port", 16, false],
294 ["padding", 2, false],
295 ["dscp", 6, false]
296 ]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700297 }
298 ],
299 "headers" : [
300 {
301 "name" : "scalars",
302 "id" : 0,
303 "header_type" : "scalars_0",
304 "metadata" : true,
305 "pi_omit" : true
306 },
307 {
308 "name" : "standard_metadata",
309 "id" : 1,
310 "header_type" : "standard_metadata",
311 "metadata" : true,
312 "pi_omit" : true
313 },
314 {
315 "name" : "ethernet",
316 "id" : 2,
317 "header_type" : "ethernet_t",
318 "metadata" : false,
319 "pi_omit" : true
320 },
321 {
322 "name" : "vlan_tag",
323 "id" : 3,
324 "header_type" : "vlan_tag_t",
325 "metadata" : false,
326 "pi_omit" : true
327 },
328 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800329 "name" : "inner_vlan_tag",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700330 "id" : 4,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800331 "header_type" : "vlan_tag_t",
332 "metadata" : false,
333 "pi_omit" : true
334 },
335 {
336 "name" : "mpls",
337 "id" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700338 "header_type" : "mpls_t",
339 "metadata" : false,
340 "pi_omit" : true
341 },
342 {
343 "name" : "gtpu_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800344 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700345 "header_type" : "ipv4_t",
346 "metadata" : false,
347 "pi_omit" : true
348 },
349 {
350 "name" : "gtpu_udp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800351 "id" : 7,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700352 "header_type" : "udp_t",
353 "metadata" : false,
354 "pi_omit" : true
355 },
356 {
357 "name" : "gtpu",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800358 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700359 "header_type" : "gtpu_t",
360 "metadata" : false,
361 "pi_omit" : true
362 },
363 {
364 "name" : "inner_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800365 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700366 "header_type" : "ipv4_t",
367 "metadata" : false,
368 "pi_omit" : true
369 },
370 {
371 "name" : "inner_udp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800372 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700373 "header_type" : "udp_t",
374 "metadata" : false,
375 "pi_omit" : true
376 },
377 {
378 "name" : "ipv4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700379 "id" : 11,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800380 "header_type" : "ipv4_t",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700381 "metadata" : false,
382 "pi_omit" : true
383 },
384 {
385 "name" : "tcp",
386 "id" : 12,
387 "header_type" : "tcp_t",
388 "metadata" : false,
389 "pi_omit" : true
390 },
391 {
392 "name" : "udp",
393 "id" : 13,
394 "header_type" : "udp_t",
395 "metadata" : false,
396 "pi_omit" : true
397 },
398 {
399 "name" : "icmp",
400 "id" : 14,
401 "header_type" : "icmp_t",
402 "metadata" : false,
403 "pi_omit" : true
404 },
405 {
406 "name" : "packet_out",
407 "id" : 15,
408 "header_type" : "packet_out_header_t",
409 "metadata" : false,
410 "pi_omit" : true
411 },
412 {
413 "name" : "packet_in",
414 "id" : 16,
415 "header_type" : "packet_in_header_t",
416 "metadata" : false,
417 "pi_omit" : true
418 },
419 {
420 "name" : "intl4_shim",
421 "id" : 17,
422 "header_type" : "intl4_shim_t",
423 "metadata" : false,
424 "pi_omit" : true
425 },
426 {
427 "name" : "int_header",
428 "id" : 18,
429 "header_type" : "int_header_t",
430 "metadata" : false,
431 "pi_omit" : true
432 },
433 {
434 "name" : "int_switch_id",
435 "id" : 19,
436 "header_type" : "int_switch_id_t",
437 "metadata" : false,
438 "pi_omit" : true
439 },
440 {
441 "name" : "int_port_ids",
442 "id" : 20,
443 "header_type" : "int_port_ids_t",
444 "metadata" : false,
445 "pi_omit" : true
446 },
447 {
448 "name" : "int_hop_latency",
449 "id" : 21,
450 "header_type" : "int_hop_latency_t",
451 "metadata" : false,
452 "pi_omit" : true
453 },
454 {
455 "name" : "int_q_occupancy",
456 "id" : 22,
457 "header_type" : "int_q_occupancy_t",
458 "metadata" : false,
459 "pi_omit" : true
460 },
461 {
462 "name" : "int_ingress_tstamp",
463 "id" : 23,
464 "header_type" : "int_ingress_tstamp_t",
465 "metadata" : false,
466 "pi_omit" : true
467 },
468 {
469 "name" : "int_egress_tstamp",
470 "id" : 24,
471 "header_type" : "int_egress_tstamp_t",
472 "metadata" : false,
473 "pi_omit" : true
474 },
475 {
476 "name" : "int_q_congestion",
477 "id" : 25,
478 "header_type" : "int_q_congestion_t",
479 "metadata" : false,
480 "pi_omit" : true
481 },
482 {
483 "name" : "int_egress_tx_util",
484 "id" : 26,
485 "header_type" : "int_egress_port_tx_util_t",
486 "metadata" : false,
487 "pi_omit" : true
488 },
489 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700490 "name" : "intl4_tail",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700491 "id" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700492 "header_type" : "intl4_tail_t",
493 "metadata" : false,
494 "pi_omit" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700495 }
496 ],
497 "header_stacks" : [],
498 "header_union_types" : [],
499 "header_unions" : [],
500 "header_union_stacks" : [],
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700501 "field_lists" : [
502 {
503 "id" : 1,
504 "name" : "fl",
505 "source_info" : {
Daniele Moro3b7a21b2019-06-25 17:33:40 -0700506 "filename" : "include/control/acl.p4",
507 "line" : 46,
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700508 "column" : 40,
Daniele Moro3b7a21b2019-06-25 17:33:40 -0700509 "source_fragment" : "{standard_metadata.ingress_port}"
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700510 },
511 "elements" : [
512 {
513 "type" : "field",
514 "value" : ["standard_metadata", "ingress_port"]
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700515 }
516 ]
517 }
518 ],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700519 "errors" : [
Carmelo Cascone4d8785b2019-05-31 17:11:26 -0700520 ["NoError", 1],
521 ["PacketTooShort", 2],
522 ["NoMatch", 3],
523 ["StackOutOfBounds", 4],
524 ["HeaderTooShort", 5],
525 ["ParserTimeout", 6],
526 ["ParserInvalidArgument", 7]
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700527 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700528 "enums" : [],
529 "parsers" : [
530 {
531 "name" : "parser",
532 "id" : 0,
533 "init_state" : "start",
534 "parse_states" : [
535 {
536 "name" : "start",
537 "id" : 0,
538 "parser_ops" : [],
539 "transitions" : [
540 {
541 "type" : "hexstr",
542 "value" : "0x00ff",
543 "mask" : null,
544 "next_state" : "parse_packet_out"
545 },
546 {
547 "value" : "default",
548 "mask" : null,
549 "next_state" : "parse_ethernet"
550 }
551 ],
552 "transition_key" : [
553 {
554 "type" : "field",
555 "value" : ["standard_metadata", "ingress_port"]
556 }
557 ]
558 },
559 {
560 "name" : "parse_packet_out",
561 "id" : 1,
562 "parser_ops" : [
563 {
564 "parameters" : [
565 {
566 "type" : "regular",
567 "value" : "packet_out"
568 }
569 ],
570 "op" : "extract"
571 }
572 ],
573 "transitions" : [
574 {
575 "value" : "default",
576 "mask" : null,
577 "next_state" : "parse_ethernet"
578 }
579 ],
580 "transition_key" : []
581 },
582 {
583 "name" : "parse_ethernet",
584 "id" : 2,
585 "parser_ops" : [
586 {
587 "parameters" : [
588 {
589 "type" : "regular",
590 "value" : "ethernet"
591 }
592 ],
593 "op" : "extract"
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800594 },
595 {
596 "parameters" : [
597 {
598 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700599 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800600 },
601 {
602 "type" : "field",
603 "value" : ["ethernet", "eth_type"]
604 }
605 ],
606 "op" : "set"
607 },
608 {
609 "parameters" : [
610 {
611 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700612 "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800613 },
614 {
615 "type" : "hexstr",
616 "value" : "0x0ffe"
617 }
618 ],
619 "op" : "set"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700620 }
621 ],
622 "transitions" : [
623 {
624 "type" : "hexstr",
625 "value" : "0x8100",
626 "mask" : null,
627 "next_state" : "parse_vlan_tag"
628 },
629 {
630 "type" : "hexstr",
631 "value" : "0x8847",
632 "mask" : null,
633 "next_state" : "parse_mpls"
634 },
635 {
636 "type" : "hexstr",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700637 "value" : "0x0800",
638 "mask" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -0700639 "next_state" : "pre_parse_ipv4"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700640 },
641 {
642 "value" : "default",
643 "mask" : null,
644 "next_state" : null
645 }
646 ],
647 "transition_key" : [
648 {
649 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800650 "value" : ["ethernet", "eth_type"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700651 }
652 ]
653 },
654 {
655 "name" : "parse_vlan_tag",
656 "id" : 3,
657 "parser_ops" : [
658 {
659 "parameters" : [
660 {
661 "type" : "regular",
662 "value" : "vlan_tag"
663 }
664 ],
665 "op" : "extract"
666 }
667 ],
668 "transitions" : [
669 {
670 "type" : "hexstr",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800671 "value" : "0x0800",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700672 "mask" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -0700673 "next_state" : "pre_parse_ipv4"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700674 },
675 {
676 "type" : "hexstr",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800677 "value" : "0x8847",
678 "mask" : null,
679 "next_state" : "parse_mpls"
680 },
681 {
682 "type" : "hexstr",
683 "value" : "0x8100",
684 "mask" : null,
685 "next_state" : "parse_inner_vlan_tag"
686 },
687 {
Daniele Moro7c3a0022019-07-12 13:38:34 -0700688 "type" : "hexstr",
689 "value" : "0x88a8",
690 "mask" : null,
691 "next_state" : "parse_inner_vlan_tag"
692 },
693 {
694 "type" : "hexstr",
695 "value" : "0x9100",
696 "mask" : null,
697 "next_state" : "parse_inner_vlan_tag"
698 },
699 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800700 "value" : "default",
701 "mask" : null,
702 "next_state" : null
703 }
704 ],
705 "transition_key" : [
706 {
707 "type" : "field",
708 "value" : ["vlan_tag", "eth_type"]
709 }
710 ]
711 },
712 {
713 "name" : "parse_inner_vlan_tag",
714 "id" : 4,
715 "parser_ops" : [
716 {
717 "parameters" : [
718 {
719 "type" : "regular",
720 "value" : "inner_vlan_tag"
721 }
722 ],
723 "op" : "extract"
724 }
725 ],
726 "transitions" : [
727 {
728 "type" : "hexstr",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700729 "value" : "0x0800",
730 "mask" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -0700731 "next_state" : "pre_parse_ipv4"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700732 },
733 {
734 "type" : "hexstr",
735 "value" : "0x8847",
736 "mask" : null,
737 "next_state" : "parse_mpls"
738 },
739 {
740 "value" : "default",
741 "mask" : null,
742 "next_state" : null
743 }
744 ],
745 "transition_key" : [
746 {
747 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800748 "value" : ["inner_vlan_tag", "eth_type"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700749 }
750 ]
751 },
752 {
753 "name" : "parse_mpls",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800754 "id" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700755 "parser_ops" : [
756 {
757 "parameters" : [
758 {
759 "type" : "regular",
760 "value" : "mpls"
761 }
762 ],
763 "op" : "extract"
764 },
765 {
766 "parameters" : [
767 {
768 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700769 "value" : ["scalars", "fabric_metadata_t._is_mpls3"]
770 },
771 {
772 "type" : "expression",
773 "value" : {
774 "type" : "expression",
775 "value" : {
776 "op" : "b2d",
777 "left" : null,
778 "right" : {
779 "type" : "bool",
780 "value" : true
781 }
782 }
783 }
784 }
785 ],
786 "op" : "set"
787 },
788 {
789 "parameters" : [
790 {
791 "type" : "field",
792 "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800793 },
794 {
795 "type" : "field",
796 "value" : ["mpls", "label"]
797 }
798 ],
799 "op" : "set"
800 },
801 {
802 "parameters" : [
803 {
804 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700805 "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800806 },
807 {
808 "type" : "field",
809 "value" : ["mpls", "ttl"]
810 }
811 ],
812 "op" : "set"
813 },
814 {
815 "parameters" : [
816 {
817 "type" : "field",
818 "value" : ["scalars", "tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700819 },
820 {
821 "type" : "lookahead",
822 "value" : [0, 4]
823 }
824 ],
825 "op" : "set"
826 }
827 ],
828 "transitions" : [
829 {
830 "type" : "hexstr",
831 "value" : "0x04",
832 "mask" : null,
833 "next_state" : "parse_ipv4"
834 },
835 {
836 "value" : "default",
837 "mask" : null,
838 "next_state" : "parse_ethernet"
839 }
840 ],
841 "transition_key" : [
842 {
843 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800844 "value" : ["scalars", "tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700845 }
846 ]
847 },
848 {
Daniele Moro7c3a0022019-07-12 13:38:34 -0700849 "name" : "pre_parse_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800850 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700851 "parser_ops" : [
852 {
853 "parameters" : [
854 {
Daniele Moro7c3a0022019-07-12 13:38:34 -0700855 "type" : "field",
856 "value" : ["scalars", "fabric_metadata_t._is_ipv41"]
857 },
858 {
859 "type" : "expression",
860 "value" : {
861 "type" : "expression",
862 "value" : {
863 "op" : "b2d",
864 "left" : null,
865 "right" : {
866 "type" : "bool",
867 "value" : true
868 }
869 }
870 }
871 }
872 ],
873 "op" : "set"
874 }
875 ],
876 "transitions" : [
877 {
878 "value" : "default",
879 "mask" : null,
880 "next_state" : "parse_ipv4"
881 }
882 ],
883 "transition_key" : []
884 },
885 {
886 "name" : "parse_ipv4",
887 "id" : 7,
888 "parser_ops" : [
889 {
890 "parameters" : [
891 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700892 "type" : "regular",
893 "value" : "ipv4"
894 }
895 ],
896 "op" : "extract"
897 },
898 {
899 "parameters" : [
900 {
901 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700902 "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700903 },
904 {
905 "type" : "field",
906 "value" : ["ipv4", "protocol"]
907 }
908 ],
909 "op" : "set"
910 },
911 {
912 "parameters" : [
913 {
914 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700915 "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800916 },
917 {
918 "type" : "hexstr",
919 "value" : "0x0800"
920 }
921 ],
922 "op" : "set"
923 },
924 {
925 "parameters" : [
926 {
927 "type" : "field",
928 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700929 },
930 {
931 "type" : "field",
932 "value" : ["ipv4", "dscp"]
933 }
934 ],
935 "op" : "set"
936 }
937 ],
938 "transitions" : [
939 {
940 "type" : "hexstr",
941 "value" : "0x06",
942 "mask" : null,
943 "next_state" : "parse_tcp"
944 },
945 {
946 "type" : "hexstr",
947 "value" : "0x11",
948 "mask" : null,
949 "next_state" : "parse_udp"
950 },
951 {
952 "type" : "hexstr",
953 "value" : "0x01",
954 "mask" : null,
955 "next_state" : "parse_icmp"
956 },
957 {
958 "value" : "default",
959 "mask" : null,
960 "next_state" : null
961 }
962 ],
963 "transition_key" : [
964 {
965 "type" : "field",
966 "value" : ["ipv4", "protocol"]
967 }
968 ]
969 },
970 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700971 "name" : "parse_tcp",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700972 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700973 "parser_ops" : [
974 {
975 "parameters" : [
976 {
977 "type" : "regular",
978 "value" : "tcp"
979 }
980 ],
981 "op" : "extract"
982 },
983 {
984 "parameters" : [
985 {
986 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700987 "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700988 },
989 {
990 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800991 "value" : ["tcp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700992 }
993 ],
994 "op" : "set"
995 },
996 {
997 "parameters" : [
998 {
999 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001000 "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001001 },
1002 {
1003 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001004 "value" : ["tcp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001005 }
1006 ],
1007 "op" : "set"
1008 }
1009 ],
1010 "transitions" : [
1011 {
1012 "value" : "default",
1013 "mask" : null,
1014 "next_state" : "parse_int"
1015 }
1016 ],
1017 "transition_key" : []
1018 },
1019 {
1020 "name" : "parse_udp",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001021 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001022 "parser_ops" : [
1023 {
1024 "parameters" : [
1025 {
1026 "type" : "regular",
1027 "value" : "udp"
1028 }
1029 ],
1030 "op" : "extract"
1031 },
1032 {
1033 "parameters" : [
1034 {
1035 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001036 "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001037 },
1038 {
1039 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001040 "value" : ["udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001041 }
1042 ],
1043 "op" : "set"
1044 },
1045 {
1046 "parameters" : [
1047 {
1048 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001049 "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001050 },
1051 {
1052 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001053 "value" : ["udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001054 }
1055 ],
1056 "op" : "set"
1057 }
1058 ],
1059 "transitions" : [
1060 {
1061 "type" : "hexstr",
1062 "value" : "0x0868",
1063 "mask" : null,
1064 "next_state" : "parse_gtpu"
1065 },
1066 {
1067 "value" : "default",
1068 "mask" : null,
1069 "next_state" : "parse_int"
1070 }
1071 ],
1072 "transition_key" : [
1073 {
1074 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001075 "value" : ["udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001076 }
1077 ]
1078 },
1079 {
1080 "name" : "parse_icmp",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001081 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001082 "parser_ops" : [
1083 {
1084 "parameters" : [
1085 {
1086 "type" : "regular",
1087 "value" : "icmp"
1088 }
1089 ],
1090 "op" : "extract"
1091 }
1092 ],
1093 "transitions" : [
1094 {
1095 "value" : "default",
1096 "mask" : null,
1097 "next_state" : null
1098 }
1099 ],
1100 "transition_key" : []
1101 },
1102 {
1103 "name" : "parse_gtpu",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001104 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001105 "parser_ops" : [
1106 {
1107 "parameters" : [
1108 {
1109 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001110 "value" : ["scalars", "tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001111 },
1112 {
1113 "type" : "expression",
1114 "value" : {
1115 "type" : "expression",
1116 "value" : {
1117 "op" : "&",
1118 "left" : {
1119 "type" : "expression",
1120 "value" : {
1121 "op" : "&",
1122 "left" : {
1123 "type" : "expression",
1124 "value" : {
1125 "op" : ">>",
1126 "left" : {
1127 "type" : "field",
1128 "value" : ["ipv4", "dst_addr"]
1129 },
1130 "right" : {
1131 "type" : "hexstr",
1132 "value" : "0x18"
1133 }
1134 }
1135 },
1136 "right" : {
1137 "type" : "hexstr",
1138 "value" : "0xffffffff"
1139 }
1140 }
1141 },
1142 "right" : {
1143 "type" : "hexstr",
1144 "value" : "0xff"
1145 }
1146 }
1147 }
1148 }
1149 ],
1150 "op" : "set"
1151 }
1152 ],
1153 "transitions" : [
1154 {
1155 "type" : "hexstr",
1156 "value" : "0x8c",
1157 "mask" : null,
1158 "next_state" : "do_parse_gtpu"
1159 },
1160 {
1161 "value" : "default",
1162 "mask" : null,
1163 "next_state" : null
1164 }
1165 ],
1166 "transition_key" : [
1167 {
1168 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001169 "value" : ["scalars", "tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001170 }
1171 ]
1172 },
1173 {
1174 "name" : "do_parse_gtpu",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001175 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001176 "parser_ops" : [
1177 {
1178 "parameters" : [
1179 {
1180 "type" : "regular",
1181 "value" : "gtpu"
1182 }
1183 ],
1184 "op" : "extract"
1185 },
1186 {
1187 "parameters" : [
1188 {
1189 "type" : "regular",
1190 "value" : "inner_ipv4"
1191 }
1192 ],
1193 "op" : "extract"
1194 },
1195 {
1196 "parameters" : [
1197 {
1198 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001199 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001200 },
1201 {
1202 "type" : "field",
1203 "value" : ["inner_ipv4", "dscp"]
1204 }
1205 ],
1206 "op" : "set"
1207 }
1208 ],
1209 "transitions" : [
1210 {
1211 "type" : "hexstr",
1212 "value" : "0x06",
1213 "mask" : null,
1214 "next_state" : "parse_tcp"
1215 },
1216 {
1217 "type" : "hexstr",
1218 "value" : "0x11",
1219 "mask" : null,
1220 "next_state" : "parse_inner_udp"
1221 },
1222 {
1223 "type" : "hexstr",
1224 "value" : "0x01",
1225 "mask" : null,
1226 "next_state" : "parse_icmp"
1227 },
1228 {
1229 "value" : "default",
1230 "mask" : null,
1231 "next_state" : null
1232 }
1233 ],
1234 "transition_key" : [
1235 {
1236 "type" : "field",
1237 "value" : ["inner_ipv4", "protocol"]
1238 }
1239 ]
1240 },
1241 {
1242 "name" : "parse_inner_udp",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001243 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001244 "parser_ops" : [
1245 {
1246 "parameters" : [
1247 {
1248 "type" : "regular",
1249 "value" : "inner_udp"
1250 }
1251 ],
1252 "op" : "extract"
1253 },
1254 {
1255 "parameters" : [
1256 {
1257 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001258 "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001259 },
1260 {
1261 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001262 "value" : ["inner_udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001263 }
1264 ],
1265 "op" : "set"
1266 },
1267 {
1268 "parameters" : [
1269 {
1270 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001271 "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001272 },
1273 {
1274 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001275 "value" : ["inner_udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001276 }
1277 ],
1278 "op" : "set"
1279 }
1280 ],
1281 "transitions" : [
1282 {
1283 "value" : "default",
1284 "mask" : null,
1285 "next_state" : "parse_int"
1286 }
1287 ],
1288 "transition_key" : []
1289 },
1290 {
1291 "name" : "parse_int",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001292 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001293 "parser_ops" : [],
1294 "transitions" : [
1295 {
1296 "type" : "hexstr",
1297 "value" : "0x01",
1298 "mask" : "0x01",
1299 "next_state" : "parse_intl4_shim"
1300 },
1301 {
1302 "value" : "default",
1303 "mask" : null,
1304 "next_state" : null
1305 }
1306 ],
1307 "transition_key" : [
1308 {
1309 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001310 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001311 }
1312 ]
1313 },
1314 {
1315 "name" : "parse_intl4_shim",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001316 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001317 "parser_ops" : [
1318 {
1319 "parameters" : [
1320 {
1321 "type" : "regular",
1322 "value" : "intl4_shim"
1323 }
1324 ],
1325 "op" : "extract"
1326 },
1327 {
1328 "parameters" : [
1329 {
1330 "type" : "regular",
1331 "value" : "int_header"
1332 }
1333 ],
1334 "op" : "extract"
1335 }
1336 ],
1337 "transitions" : [
1338 {
1339 "type" : "hexstr",
1340 "value" : "0x04",
1341 "mask" : null,
1342 "next_state" : "parse_intl4_tail"
1343 },
1344 {
1345 "value" : "default",
1346 "mask" : null,
1347 "next_state" : "parse_int_data"
1348 }
1349 ],
1350 "transition_key" : [
1351 {
1352 "type" : "field",
1353 "value" : ["intl4_shim", "len_words"]
1354 }
1355 ]
1356 },
1357 {
1358 "name" : "parse_int_data",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001359 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001360 "parser_ops" : [],
1361 "transitions" : [
1362 {
1363 "value" : "default",
1364 "mask" : null,
1365 "next_state" : null
1366 }
1367 ],
1368 "transition_key" : []
1369 },
1370 {
1371 "name" : "parse_intl4_tail",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001372 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001373 "parser_ops" : [
1374 {
1375 "parameters" : [
1376 {
1377 "type" : "regular",
1378 "value" : "intl4_tail"
1379 }
1380 ],
1381 "op" : "extract"
1382 }
1383 ],
1384 "transitions" : [
1385 {
1386 "value" : "default",
1387 "mask" : null,
1388 "next_state" : null
1389 }
1390 ],
1391 "transition_key" : []
1392 }
1393 ]
1394 }
1395 ],
1396 "parse_vsets" : [],
1397 "deparsers" : [
1398 {
1399 "name" : "deparser",
1400 "id" : 0,
1401 "source_info" : {
1402 "filename" : "include/parser.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001403 "line" : 276,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001404 "column" : 8,
1405 "source_fragment" : "FabricDeparser"
1406 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001407 "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 -07001408 }
1409 ],
1410 "meter_arrays" : [],
1411 "counter_arrays" : [
1412 {
1413 "name" : "FabricIngress.spgw_ingress.ue_counter",
1414 "id" : 0,
1415 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001416 "binding" : "FabricIngress.spgw_ingress.dl_sess_lookup",
1417 "source_info" : {
1418 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001419 "line" : 52,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001420 "column" : 50,
1421 "source_fragment" : "ue_counter"
1422 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001423 },
1424 {
1425 "name" : "FabricIngress.process_set_source_sink.counter_set_source",
1426 "id" : 1,
1427 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001428 "binding" : "FabricIngress.process_set_source_sink.tb_set_source",
1429 "source_info" : {
1430 "filename" : "include/int/int_main.p4",
1431 "line" : 39,
1432 "column" : 50,
1433 "source_fragment" : "counter_set_source"
1434 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001435 },
1436 {
1437 "name" : "FabricIngress.filtering.ingress_port_vlan_counter",
1438 "id" : 2,
1439 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001440 "binding" : "FabricIngress.filtering.ingress_port_vlan",
1441 "source_info" : {
1442 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001443 "line" : 31,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001444 "column" : 50,
1445 "source_fragment" : "ingress_port_vlan_counter"
1446 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001447 },
1448 {
1449 "name" : "FabricIngress.filtering.fwd_classifier_counter",
1450 "id" : 3,
1451 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001452 "binding" : "FabricIngress.filtering.fwd_classifier",
1453 "source_info" : {
1454 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001455 "line" : 83,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001456 "column" : 50,
1457 "source_fragment" : "fwd_classifier_counter"
1458 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001459 },
1460 {
1461 "name" : "FabricIngress.forwarding.bridging_counter",
1462 "id" : 4,
1463 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001464 "binding" : "FabricIngress.forwarding.bridging",
1465 "source_info" : {
1466 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001467 "line" : 36,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001468 "column" : 50,
1469 "source_fragment" : "bridging_counter"
1470 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001471 },
1472 {
1473 "name" : "FabricIngress.forwarding.mpls_counter",
1474 "id" : 5,
1475 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001476 "binding" : "FabricIngress.forwarding.mpls",
1477 "source_info" : {
1478 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001479 "line" : 63,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001480 "column" : 50,
1481 "source_fragment" : "mpls_counter"
1482 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001483 },
1484 {
1485 "name" : "FabricIngress.forwarding.routing_v4_counter",
1486 "id" : 6,
1487 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001488 "binding" : "FabricIngress.forwarding.routing_v4",
1489 "source_info" : {
1490 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001491 "line" : 87,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001492 "column" : 50,
1493 "source_fragment" : "routing_v4_counter"
1494 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001495 },
1496 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001497 "name" : "FabricIngress.acl.acl_counter",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001498 "id" : 7,
1499 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001500 "binding" : "FabricIngress.acl.acl",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001501 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001502 "filename" : "include/control/acl.p4",
1503 "line" : 30,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001504 "column" : 50,
1505 "source_fragment" : "acl_counter"
1506 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001507 },
1508 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001509 "name" : "FabricIngress.next.next_vlan_counter",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001510 "id" : 8,
1511 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001512 "binding" : "FabricIngress.next.next_vlan",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001513 "source_info" : {
1514 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001515 "line" : 67,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001516 "column" : 50,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001517 "source_fragment" : "next_vlan_counter"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001518 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001519 },
1520 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001521 "name" : "FabricIngress.next.xconnect_counter",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001522 "id" : 9,
1523 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001524 "binding" : "FabricIngress.next.xconnect",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001525 "source_info" : {
1526 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001527 "line" : 103,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001528 "column" : 50,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001529 "source_fragment" : "xconnect_counter"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001530 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001531 },
1532 {
1533 "name" : "FabricIngress.next.hashed_counter",
1534 "id" : 10,
1535 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001536 "binding" : "FabricIngress.next.hashed",
1537 "source_info" : {
1538 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001539 "line" : 178,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001540 "column" : 50,
1541 "source_fragment" : "hashed_counter"
1542 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001543 },
1544 {
1545 "name" : "FabricIngress.next.multicast_counter",
1546 "id" : 11,
1547 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001548 "binding" : "FabricIngress.next.multicast",
1549 "source_info" : {
1550 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001551 "line" : 222,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001552 "column" : 50,
1553 "source_fragment" : "multicast_counter"
1554 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001555 },
1556 {
1557 "name" : "FabricIngress.port_counters_control.egress_port_counter",
1558 "id" : 12,
1559 "source_info" : {
1560 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001561 "line" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001562 "column" : 48,
1563 "source_fragment" : "egress_port_counter"
1564 },
1565 "size" : 511,
1566 "is_direct" : false
1567 },
1568 {
1569 "name" : "FabricIngress.port_counters_control.ingress_port_counter",
1570 "id" : 13,
1571 "source_info" : {
1572 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001573 "line" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001574 "column" : 48,
1575 "source_fragment" : "ingress_port_counter"
1576 },
1577 "size" : 511,
1578 "is_direct" : false
1579 },
1580 {
1581 "name" : "FabricEgress.process_int_main.process_int_source.counter_int_source",
1582 "id" : 14,
1583 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001584 "binding" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
1585 "source_info" : {
1586 "filename" : "include/int/int_source.p4",
1587 "line" : 27,
1588 "column" : 50,
1589 "source_fragment" : "counter_int_source"
1590 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001591 },
1592 {
1593 "name" : "FabricEgress.egress_next.egress_vlan_counter",
1594 "id" : 15,
1595 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001596 "binding" : "FabricEgress.egress_next.egress_vlan",
1597 "source_info" : {
1598 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001599 "line" : 309,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001600 "column" : 50,
1601 "source_fragment" : "egress_vlan_counter"
1602 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001603 }
1604 ],
1605 "register_arrays" : [],
1606 "calculations" : [
1607 {
1608 "name" : "calc",
1609 "id" : 0,
1610 "source_info" : {
1611 "filename" : "include/checksum.p4",
1612 "line" : 28,
1613 "column" : 8,
1614 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
1615 },
1616 "algo" : "csum16",
1617 "input" : [
1618 {
1619 "type" : "field",
1620 "value" : ["ipv4", "version"]
1621 },
1622 {
1623 "type" : "field",
1624 "value" : ["ipv4", "ihl"]
1625 },
1626 {
1627 "type" : "field",
1628 "value" : ["ipv4", "dscp"]
1629 },
1630 {
1631 "type" : "field",
1632 "value" : ["ipv4", "ecn"]
1633 },
1634 {
1635 "type" : "field",
1636 "value" : ["ipv4", "total_len"]
1637 },
1638 {
1639 "type" : "field",
1640 "value" : ["ipv4", "identification"]
1641 },
1642 {
1643 "type" : "field",
1644 "value" : ["ipv4", "flags"]
1645 },
1646 {
1647 "type" : "field",
1648 "value" : ["ipv4", "frag_offset"]
1649 },
1650 {
1651 "type" : "field",
1652 "value" : ["ipv4", "ttl"]
1653 },
1654 {
1655 "type" : "field",
1656 "value" : ["ipv4", "protocol"]
1657 },
1658 {
1659 "type" : "field",
1660 "value" : ["ipv4", "src_addr"]
1661 },
1662 {
1663 "type" : "field",
1664 "value" : ["ipv4", "dst_addr"]
1665 }
1666 ]
1667 },
1668 {
1669 "name" : "calc_0",
1670 "id" : 1,
1671 "source_info" : {
1672 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001673 "line" : 243,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001674 "column" : 8,
1675 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
1676 },
1677 "algo" : "csum16",
1678 "input" : [
1679 {
1680 "type" : "field",
1681 "value" : ["gtpu_ipv4", "version"]
1682 },
1683 {
1684 "type" : "field",
1685 "value" : ["gtpu_ipv4", "ihl"]
1686 },
1687 {
1688 "type" : "field",
1689 "value" : ["gtpu_ipv4", "dscp"]
1690 },
1691 {
1692 "type" : "field",
1693 "value" : ["gtpu_ipv4", "ecn"]
1694 },
1695 {
1696 "type" : "field",
1697 "value" : ["gtpu_ipv4", "total_len"]
1698 },
1699 {
1700 "type" : "field",
1701 "value" : ["gtpu_ipv4", "identification"]
1702 },
1703 {
1704 "type" : "field",
1705 "value" : ["gtpu_ipv4", "flags"]
1706 },
1707 {
1708 "type" : "field",
1709 "value" : ["gtpu_ipv4", "frag_offset"]
1710 },
1711 {
1712 "type" : "field",
1713 "value" : ["gtpu_ipv4", "ttl"]
1714 },
1715 {
1716 "type" : "field",
1717 "value" : ["gtpu_ipv4", "protocol"]
1718 },
1719 {
1720 "type" : "field",
1721 "value" : ["gtpu_ipv4", "src_addr"]
1722 },
1723 {
1724 "type" : "field",
1725 "value" : ["gtpu_ipv4", "dst_addr"]
1726 }
1727 ]
1728 },
1729 {
1730 "name" : "calc_1",
1731 "id" : 2,
1732 "source_info" : {
1733 "filename" : "include/checksum.p4",
1734 "line" : 57,
1735 "column" : 8,
1736 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
1737 },
1738 "algo" : "csum16",
1739 "input" : [
1740 {
1741 "type" : "field",
1742 "value" : ["ipv4", "version"]
1743 },
1744 {
1745 "type" : "field",
1746 "value" : ["ipv4", "ihl"]
1747 },
1748 {
1749 "type" : "field",
1750 "value" : ["ipv4", "dscp"]
1751 },
1752 {
1753 "type" : "field",
1754 "value" : ["ipv4", "ecn"]
1755 },
1756 {
1757 "type" : "field",
1758 "value" : ["ipv4", "total_len"]
1759 },
1760 {
1761 "type" : "field",
1762 "value" : ["ipv4", "identification"]
1763 },
1764 {
1765 "type" : "field",
1766 "value" : ["ipv4", "flags"]
1767 },
1768 {
1769 "type" : "field",
1770 "value" : ["ipv4", "frag_offset"]
1771 },
1772 {
1773 "type" : "field",
1774 "value" : ["ipv4", "ttl"]
1775 },
1776 {
1777 "type" : "field",
1778 "value" : ["ipv4", "protocol"]
1779 },
1780 {
1781 "type" : "field",
1782 "value" : ["ipv4", "src_addr"]
1783 },
1784 {
1785 "type" : "field",
1786 "value" : ["ipv4", "dst_addr"]
1787 }
1788 ]
1789 }
1790 ],
1791 "learn_lists" : [],
1792 "actions" : [
1793 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001794 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001795 "id" : 0,
1796 "runtime_data" : [],
1797 "primitives" : []
1798 },
1799 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001800 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001801 "id" : 1,
1802 "runtime_data" : [],
1803 "primitives" : []
1804 },
1805 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001806 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001807 "id" : 2,
1808 "runtime_data" : [],
1809 "primitives" : []
1810 },
1811 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001812 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001813 "id" : 3,
1814 "runtime_data" : [],
1815 "primitives" : []
1816 },
1817 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001818 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001819 "id" : 4,
1820 "runtime_data" : [],
1821 "primitives" : []
1822 },
1823 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001824 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001825 "id" : 5,
1826 "runtime_data" : [],
1827 "primitives" : []
1828 },
1829 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001830 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001831 "id" : 6,
1832 "runtime_data" : [],
1833 "primitives" : []
1834 },
1835 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001836 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001837 "id" : 7,
1838 "runtime_data" : [],
1839 "primitives" : []
1840 },
1841 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001842 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001843 "id" : 8,
1844 "runtime_data" : [],
1845 "primitives" : []
1846 },
1847 {
1848 "name" : "nop",
1849 "id" : 9,
1850 "runtime_data" : [],
1851 "primitives" : []
1852 },
1853 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001854 "name" : "FabricIngress.spgw_ingress.gtpu_decap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001855 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001856 "runtime_data" : [],
1857 "primitives" : [
1858 {
1859 "op" : "remove_header",
1860 "parameters" : [
1861 {
1862 "type" : "header",
1863 "value" : "gtpu_ipv4"
1864 }
1865 ],
1866 "source_info" : {
1867 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001868 "line" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001869 "column" : 8,
1870 "source_fragment" : "gtpu_ipv4.setInvalid()"
1871 }
1872 },
1873 {
1874 "op" : "remove_header",
1875 "parameters" : [
1876 {
1877 "type" : "header",
1878 "value" : "gtpu_udp"
1879 }
1880 ],
1881 "source_info" : {
1882 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001883 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001884 "column" : 8,
1885 "source_fragment" : "gtpu_udp.setInvalid()"
1886 }
1887 },
1888 {
1889 "op" : "remove_header",
1890 "parameters" : [
1891 {
1892 "type" : "header",
1893 "value" : "gtpu"
1894 }
1895 ],
1896 "source_info" : {
1897 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001898 "line" : 58,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001899 "column" : 8,
1900 "source_fragment" : "gtpu.setInvalid()"
1901 }
1902 }
1903 ]
1904 },
1905 {
1906 "name" : "FabricIngress.spgw_ingress.set_dl_sess_info",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001907 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001908 "runtime_data" : [
1909 {
1910 "name" : "teid",
1911 "bitwidth" : 32
1912 },
1913 {
1914 "name" : "s1u_enb_addr",
1915 "bitwidth" : 32
1916 },
1917 {
1918 "name" : "s1u_sgw_addr",
1919 "bitwidth" : 32
1920 }
1921 ],
1922 "primitives" : [
1923 {
1924 "op" : "assign",
1925 "parameters" : [
1926 {
1927 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001928 "value" : ["scalars", "fabric_metadata_t._spgw_teid21"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001929 },
1930 {
1931 "type" : "runtime_data",
1932 "value" : 0
1933 }
1934 ],
1935 "source_info" : {
1936 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001937 "line" : 64,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001938 "column" : 30,
1939 "source_fragment" : "= teid; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001940 }
1941 },
1942 {
1943 "op" : "assign",
1944 "parameters" : [
1945 {
1946 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001947 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr22"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001948 },
1949 {
1950 "type" : "runtime_data",
1951 "value" : 1
1952 }
1953 ],
1954 "source_info" : {
1955 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001956 "line" : 65,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001957 "column" : 38,
1958 "source_fragment" : "= s1u_enb_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001959 }
1960 },
1961 {
1962 "op" : "assign",
1963 "parameters" : [
1964 {
1965 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001966 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr23"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001967 },
1968 {
1969 "type" : "runtime_data",
1970 "value" : 2
1971 }
1972 ],
1973 "source_info" : {
1974 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001975 "line" : 66,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001976 "column" : 38,
1977 "source_fragment" : "= s1u_sgw_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001978 }
1979 }
1980 ]
1981 },
1982 {
1983 "name" : "FabricIngress.process_set_source_sink.int_set_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001984 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001985 "runtime_data" : [],
1986 "primitives" : [
1987 {
1988 "op" : "assign",
1989 "parameters" : [
1990 {
1991 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001992 "value" : ["scalars", "fabric_metadata_t._int_meta_source24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001993 },
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/int/int_main.p4",
2011 "line" : 42,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002012 "column" : 40,
2013 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002014 }
2015 }
2016 ]
2017 },
2018 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002019 "name" : "FabricIngress.filtering.deny",
2020 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002021 "runtime_data" : [],
2022 "primitives" : [
2023 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002024 "op" : "assign",
2025 "parameters" : [
2026 {
2027 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002028 "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002029 },
2030 {
2031 "type" : "expression",
2032 "value" : {
2033 "type" : "expression",
2034 "value" : {
2035 "op" : "b2d",
2036 "left" : null,
2037 "right" : {
2038 "type" : "bool",
2039 "value" : true
2040 }
2041 }
2042 }
2043 }
2044 ],
2045 "source_info" : {
2046 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002047 "line" : 36,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002048 "column" : 40,
2049 "source_fragment" : "= true; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002050 }
2051 },
2052 {
2053 "op" : "assign",
2054 "parameters" : [
2055 {
2056 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002057 "value" : ["scalars", "fabric_metadata_t._skip_next11"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002058 },
2059 {
2060 "type" : "expression",
2061 "value" : {
2062 "type" : "expression",
2063 "value" : {
2064 "op" : "b2d",
2065 "left" : null,
2066 "right" : {
2067 "type" : "bool",
2068 "value" : true
2069 }
2070 }
2071 }
2072 }
2073 ],
2074 "source_info" : {
2075 "filename" : "include/control/filtering.p4",
2076 "line" : 37,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002077 "column" : 34,
2078 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002079 }
2080 }
2081 ]
2082 },
2083 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002084 "name" : "FabricIngress.filtering.permit",
2085 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002086 "runtime_data" : [],
2087 "primitives" : []
2088 },
2089 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002090 "name" : "FabricIngress.filtering.permit_with_internal_vlan",
2091 "id" : 15,
2092 "runtime_data" : [
2093 {
2094 "name" : "vlan_id",
2095 "bitwidth" : 12
2096 }
2097 ],
2098 "primitives" : [
2099 {
2100 "op" : "assign",
2101 "parameters" : [
2102 {
2103 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002104 "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002105 },
2106 {
2107 "type" : "runtime_data",
2108 "value" : 0
2109 }
2110 ],
2111 "source_info" : {
2112 "filename" : "include/control/filtering.p4",
2113 "line" : 47,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002114 "column" : 32,
2115 "source_fragment" : "= vlan_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002116 }
2117 }
2118 ]
2119 },
2120 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002121 "name" : "FabricIngress.filtering.set_forwarding_type",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002122 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002123 "runtime_data" : [
2124 {
2125 "name" : "fwd_type",
2126 "bitwidth" : 3
2127 }
2128 ],
2129 "primitives" : [
2130 {
2131 "op" : "assign",
2132 "parameters" : [
2133 {
2134 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002135 "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002136 },
2137 {
2138 "type" : "runtime_data",
2139 "value" : 0
2140 }
2141 ],
2142 "source_info" : {
2143 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002144 "line" : 86,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002145 "column" : 33,
2146 "source_fragment" : "= fwd_type; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002147 }
2148 }
2149 ]
2150 },
2151 {
2152 "name" : "FabricIngress.forwarding.set_next_id_bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002153 "id" : 17,
2154 "runtime_data" : [
2155 {
2156 "name" : "next_id",
2157 "bitwidth" : 32
2158 }
2159 ],
2160 "primitives" : [
2161 {
2162 "op" : "assign",
2163 "parameters" : [
2164 {
2165 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002166 "value" : ["scalars", "fabric_metadata_t._next_id13"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002167 },
2168 {
2169 "type" : "runtime_data",
2170 "value" : 0
2171 }
2172 ],
2173 "source_info" : {
2174 "filename" : "include/control/forwarding.p4",
2175 "line" : 30,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002176 "column" : 32,
2177 "source_fragment" : "= next_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002178 }
2179 }
2180 ]
2181 },
2182 {
2183 "name" : "FabricIngress.forwarding.pop_mpls_and_next",
2184 "id" : 18,
2185 "runtime_data" : [
2186 {
2187 "name" : "next_id",
2188 "bitwidth" : 32
2189 }
2190 ],
2191 "primitives" : [
2192 {
2193 "op" : "assign",
2194 "parameters" : [
2195 {
2196 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002197 "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002198 },
2199 {
2200 "type" : "hexstr",
2201 "value" : "0x000000"
2202 }
2203 ],
2204 "source_info" : {
2205 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07002206 "line" : 66,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002207 "column" : 35,
2208 "source_fragment" : "= 0; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002209 }
2210 },
2211 {
2212 "op" : "assign",
2213 "parameters" : [
2214 {
2215 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002216 "value" : ["scalars", "fabric_metadata_t._next_id13"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002217 },
2218 {
2219 "type" : "runtime_data",
2220 "value" : 0
2221 }
2222 ],
2223 "source_info" : {
2224 "filename" : "include/control/forwarding.p4",
2225 "line" : 30,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002226 "column" : 32,
2227 "source_fragment" : "= next_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002228 }
2229 }
2230 ]
2231 },
2232 {
2233 "name" : "FabricIngress.forwarding.set_next_id_routing_v4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002234 "id" : 19,
2235 "runtime_data" : [
2236 {
2237 "name" : "next_id",
2238 "bitwidth" : 32
2239 }
2240 ],
2241 "primitives" : [
2242 {
2243 "op" : "assign",
2244 "parameters" : [
2245 {
2246 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002247 "value" : ["scalars", "fabric_metadata_t._next_id13"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002248 },
2249 {
2250 "type" : "runtime_data",
2251 "value" : 0
2252 }
2253 ],
2254 "source_info" : {
2255 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002256 "line" : 30,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002257 "column" : 32,
2258 "source_fragment" : "= next_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002259 }
2260 }
2261 ]
2262 },
2263 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002264 "name" : "FabricIngress.forwarding.nop_routing_v4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002265 "id" : 20,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002266 "runtime_data" : [],
2267 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002268 },
2269 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002270 "name" : "FabricIngress.acl.set_next_id_acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002271 "id" : 21,
2272 "runtime_data" : [
2273 {
2274 "name" : "next_id",
2275 "bitwidth" : 32
2276 }
2277 ],
2278 "primitives" : [
2279 {
2280 "op" : "assign",
2281 "parameters" : [
2282 {
2283 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002284 "value" : ["scalars", "fabric_metadata_t._next_id13"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002285 },
2286 {
2287 "type" : "runtime_data",
2288 "value" : 0
2289 }
2290 ],
2291 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002292 "filename" : "include/control/acl.p4",
2293 "line" : 33,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002294 "column" : 32,
2295 "source_fragment" : "= next_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002296 }
2297 }
2298 ]
2299 },
2300 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002301 "name" : "FabricIngress.acl.punt_to_cpu",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002302 "id" : 22,
2303 "runtime_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002304 "primitives" : [
2305 {
2306 "op" : "assign",
2307 "parameters" : [
2308 {
2309 "type" : "field",
2310 "value" : ["standard_metadata", "egress_spec"]
2311 },
2312 {
2313 "type" : "hexstr",
2314 "value" : "0x00ff"
2315 }
2316 ],
2317 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002318 "filename" : "include/control/acl.p4",
2319 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002320 "column" : 8,
2321 "source_fragment" : "standard_metadata.egress_spec = 255"
2322 }
2323 },
2324 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002325 "op" : "assign",
2326 "parameters" : [
2327 {
2328 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002329 "value" : ["scalars", "fabric_metadata_t._skip_next11"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002330 },
2331 {
2332 "type" : "expression",
2333 "value" : {
2334 "type" : "expression",
2335 "value" : {
2336 "op" : "b2d",
2337 "left" : null,
2338 "right" : {
2339 "type" : "bool",
2340 "value" : true
2341 }
2342 }
2343 }
2344 }
2345 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002346 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002347 "filename" : "include/control/acl.p4",
2348 "line" : 40,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002349 "column" : 34,
2350 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002351 }
2352 }
2353 ]
2354 },
2355 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002356 "name" : "FabricIngress.acl.set_clone_session_id",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002357 "id" : 23,
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002358 "runtime_data" : [
2359 {
2360 "name" : "clone_id",
2361 "bitwidth" : 32
2362 }
2363 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002364 "primitives" : [
2365 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002366 "op" : "clone_ingress_pkt_to_egress",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002367 "parameters" : [
2368 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002369 "type" : "runtime_data",
2370 "value" : 0
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002371 },
2372 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002373 "type" : "hexstr",
2374 "value" : "0x1"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002375 }
2376 ],
2377 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002378 "filename" : "include/control/acl.p4",
2379 "line" : 46,
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002380 "column" : 8,
Daniele Moro3b7a21b2019-06-25 17:33:40 -07002381 "source_fragment" : "clone3(CloneType.I2E, clone_id, {standard_metadata.ingress_port})"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002382 }
2383 }
2384 ]
2385 },
2386 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002387 "name" : "FabricIngress.acl.drop",
2388 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002389 "runtime_data" : [],
2390 "primitives" : [
2391 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -07002392 "op" : "mark_to_drop",
2393 "parameters" : [
2394 {
2395 "type" : "header",
2396 "value" : "standard_metadata"
2397 }
2398 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002399 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002400 "filename" : "include/control/acl.p4",
2401 "line" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002402 "column" : 8,
Carmelo Cascone9b607da2019-05-08 14:03:01 -07002403 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002404 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002405 },
2406 {
2407 "op" : "assign",
2408 "parameters" : [
2409 {
2410 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002411 "value" : ["scalars", "fabric_metadata_t._skip_next11"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002412 },
2413 {
2414 "type" : "expression",
2415 "value" : {
2416 "type" : "expression",
2417 "value" : {
2418 "op" : "b2d",
2419 "left" : null,
2420 "right" : {
2421 "type" : "bool",
2422 "value" : true
2423 }
2424 }
2425 }
2426 }
2427 ],
2428 "source_info" : {
2429 "filename" : "include/control/acl.p4",
2430 "line" : 52,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002431 "column" : 34,
2432 "source_fragment" : "= true; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002433 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002434 }
2435 ]
2436 },
2437 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002438 "name" : "FabricIngress.acl.nop_acl",
2439 "id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002440 "runtime_data" : [],
2441 "primitives" : []
2442 },
2443 {
2444 "name" : "FabricIngress.next.set_vlan",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002445 "id" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002446 "runtime_data" : [
2447 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002448 "name" : "vlan_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002449 "bitwidth" : 12
2450 }
2451 ],
2452 "primitives" : [
2453 {
2454 "op" : "assign",
2455 "parameters" : [
2456 {
2457 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002458 "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002459 },
2460 {
2461 "type" : "runtime_data",
2462 "value" : 0
2463 }
2464 ],
2465 "source_info" : {
2466 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002467 "line" : 70,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002468 "column" : 32,
2469 "source_fragment" : "= vlan_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002470 }
2471 }
2472 ]
2473 },
2474 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002475 "name" : "FabricIngress.next.output_xconnect",
2476 "id" : 27,
2477 "runtime_data" : [
2478 {
2479 "name" : "port_num",
2480 "bitwidth" : 9
2481 }
2482 ],
2483 "primitives" : [
2484 {
2485 "op" : "assign",
2486 "parameters" : [
2487 {
2488 "type" : "field",
2489 "value" : ["standard_metadata", "egress_spec"]
2490 },
2491 {
2492 "type" : "runtime_data",
2493 "value" : 0
2494 }
2495 ],
2496 "source_info" : {
2497 "filename" : "include/control/next.p4",
2498 "line" : 31,
2499 "column" : 5,
2500 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2501 }
Daniele Moro7c3a0022019-07-12 13:38:34 -07002502 },
2503 {
2504 "op" : "assign",
2505 "parameters" : [
2506 {
2507 "type" : "field",
2508 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
2509 },
2510 {
2511 "type" : "hexstr",
2512 "value" : "0x8100"
2513 }
2514 ],
2515 "source_info" : {
2516 "filename" : "include/control/../define.p4",
2517 "line" : 107,
2518 "column" : 31,
2519 "source_fragment" : "0x8100; ..."
2520 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002521 }
2522 ]
2523 },
2524 {
2525 "name" : "FabricIngress.next.set_next_id_xconnect",
2526 "id" : 28,
2527 "runtime_data" : [
2528 {
2529 "name" : "next_id",
2530 "bitwidth" : 32
2531 }
2532 ],
2533 "primitives" : [
2534 {
2535 "op" : "assign",
2536 "parameters" : [
2537 {
2538 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002539 "value" : ["scalars", "fabric_metadata_t._next_id13"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002540 },
2541 {
2542 "type" : "runtime_data",
2543 "value" : 0
2544 }
2545 ],
2546 "source_info" : {
2547 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002548 "line" : 112,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002549 "column" : 32,
2550 "source_fragment" : "= next_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002551 }
2552 }
2553 ]
2554 },
2555 {
2556 "name" : "FabricIngress.next.output_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002557 "id" : 29,
2558 "runtime_data" : [
2559 {
2560 "name" : "port_num",
2561 "bitwidth" : 9
2562 }
2563 ],
2564 "primitives" : [
2565 {
2566 "op" : "assign",
2567 "parameters" : [
2568 {
2569 "type" : "field",
2570 "value" : ["standard_metadata", "egress_spec"]
2571 },
2572 {
2573 "type" : "runtime_data",
2574 "value" : 0
2575 }
2576 ],
2577 "source_info" : {
2578 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002579 "line" : 31,
2580 "column" : 5,
2581 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002582 }
2583 }
2584 ]
2585 },
2586 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002587 "name" : "FabricIngress.next.routing_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002588 "id" : 30,
2589 "runtime_data" : [
2590 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002591 "name" : "port_num",
2592 "bitwidth" : 9
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002593 },
2594 {
2595 "name" : "smac",
2596 "bitwidth" : 48
2597 },
2598 {
2599 "name" : "dmac",
2600 "bitwidth" : 48
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002601 }
2602 ],
2603 "primitives" : [
2604 {
2605 "op" : "assign",
2606 "parameters" : [
2607 {
2608 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002609 "value" : ["ethernet", "src_addr"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002610 },
2611 {
2612 "type" : "runtime_data",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002613 "value" : 1
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002614 }
2615 ],
2616 "source_info" : {
2617 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002618 "line" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002619 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002620 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2621 }
2622 },
2623 {
2624 "op" : "assign",
2625 "parameters" : [
2626 {
2627 "type" : "field",
2628 "value" : ["ethernet", "dst_addr"]
2629 },
2630 {
2631 "type" : "runtime_data",
2632 "value" : 2
2633 }
2634 ],
2635 "source_info" : {
2636 "filename" : "include/control/next.p4",
2637 "line" : 41,
2638 "column" : 8,
2639 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002640 }
2641 },
2642 {
2643 "op" : "assign",
2644 "parameters" : [
2645 {
2646 "type" : "field",
2647 "value" : ["standard_metadata", "egress_spec"]
2648 },
2649 {
2650 "type" : "runtime_data",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002651 "value" : 0
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002652 }
2653 ],
2654 "source_info" : {
2655 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002656 "line" : 31,
2657 "column" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002658 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2659 }
2660 }
2661 ]
2662 },
2663 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002664 "name" : "FabricIngress.next.mpls_routing_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002665 "id" : 31,
2666 "runtime_data" : [
2667 {
2668 "name" : "port_num",
2669 "bitwidth" : 9
2670 },
2671 {
2672 "name" : "smac",
2673 "bitwidth" : 48
2674 },
2675 {
2676 "name" : "dmac",
2677 "bitwidth" : 48
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002678 },
2679 {
2680 "name" : "label",
2681 "bitwidth" : 20
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002682 }
2683 ],
2684 "primitives" : [
2685 {
2686 "op" : "assign",
2687 "parameters" : [
2688 {
2689 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002690 "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002691 },
2692 {
2693 "type" : "runtime_data",
2694 "value" : 3
2695 }
2696 ],
2697 "source_info" : {
2698 "filename" : "include/control/next.p4",
2699 "line" : 46,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002700 "column" : 35,
2701 "source_fragment" : "= label; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002702 }
2703 },
2704 {
2705 "op" : "assign",
2706 "parameters" : [
2707 {
2708 "type" : "field",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002709 "value" : ["ethernet", "src_addr"]
2710 },
2711 {
2712 "type" : "runtime_data",
2713 "value" : 1
2714 }
2715 ],
2716 "source_info" : {
2717 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002718 "line" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002719 "column" : 8,
2720 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2721 }
2722 },
2723 {
2724 "op" : "assign",
2725 "parameters" : [
2726 {
2727 "type" : "field",
2728 "value" : ["ethernet", "dst_addr"]
2729 },
2730 {
2731 "type" : "runtime_data",
2732 "value" : 2
2733 }
2734 ],
2735 "source_info" : {
2736 "filename" : "include/control/next.p4",
2737 "line" : 41,
2738 "column" : 8,
2739 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2740 }
2741 },
2742 {
2743 "op" : "assign",
2744 "parameters" : [
2745 {
2746 "type" : "field",
2747 "value" : ["standard_metadata", "egress_spec"]
2748 },
2749 {
2750 "type" : "runtime_data",
2751 "value" : 0
2752 }
2753 ],
2754 "source_info" : {
2755 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002756 "line" : 31,
2757 "column" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002758 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2759 }
2760 }
2761 ]
2762 },
2763 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002764 "name" : "FabricIngress.next.set_mcast_group_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002765 "id" : 32,
2766 "runtime_data" : [
2767 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002768 "name" : "group_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002769 "bitwidth" : 16
2770 }
2771 ],
2772 "primitives" : [
2773 {
2774 "op" : "assign",
2775 "parameters" : [
2776 {
2777 "type" : "field",
2778 "value" : ["standard_metadata", "mcast_grp"]
2779 },
2780 {
2781 "type" : "runtime_data",
2782 "value" : 0
2783 }
2784 ],
2785 "source_info" : {
2786 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002787 "line" : 225,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002788 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002789 "source_fragment" : "standard_metadata.mcast_grp = group_id"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002790 }
2791 },
2792 {
2793 "op" : "assign",
2794 "parameters" : [
2795 {
2796 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002797 "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002798 },
2799 {
2800 "type" : "expression",
2801 "value" : {
2802 "type" : "expression",
2803 "value" : {
2804 "op" : "b2d",
2805 "left" : null,
2806 "right" : {
2807 "type" : "bool",
2808 "value" : true
2809 }
2810 }
2811 }
2812 }
2813 ],
2814 "source_info" : {
2815 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07002816 "line" : 226,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002817 "column" : 37,
2818 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002819 }
2820 }
2821 ]
2822 },
2823 {
2824 "name" : "act",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002825 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002826 "runtime_data" : [],
2827 "primitives" : [
2828 {
2829 "op" : "assign",
2830 "parameters" : [
2831 {
2832 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002833 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002834 },
2835 {
2836 "type" : "expression",
2837 "value" : {
2838 "type" : "expression",
2839 "value" : {
2840 "op" : "b2d",
2841 "left" : null,
2842 "right" : {
2843 "type" : "bool",
2844 "value" : true
2845 }
2846 }
2847 }
2848 }
2849 ],
2850 "source_info" : {
2851 "filename" : "include/spgw.p4",
2852 "line" : 30,
2853 "column" : 32,
2854 "source_fragment" : "return"
2855 }
2856 }
2857 ]
2858 },
2859 {
2860 "name" : "act_0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002861 "id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002862 "runtime_data" : [],
2863 "primitives" : [
2864 {
2865 "op" : "remove_header",
2866 "parameters" : [
2867 {
2868 "type" : "header",
2869 "value" : "gtpu_ipv4"
2870 }
2871 ],
2872 "source_info" : {
2873 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07002874 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002875 "column" : 50,
2876 "source_fragment" : "hdr.gtpu_ipv4"
2877 }
2878 },
2879 {
2880 "op" : "remove_header",
2881 "parameters" : [
2882 {
2883 "type" : "header",
2884 "value" : "gtpu_udp"
2885 }
2886 ],
2887 "source_info" : {
2888 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07002889 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002890 "column" : 65,
2891 "source_fragment" : "hdr.gtpu_udp"
2892 }
2893 },
2894 {
2895 "op" : "assign",
2896 "parameters" : [
2897 {
2898 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002899 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002900 },
2901 {
2902 "type" : "expression",
2903 "value" : {
2904 "type" : "expression",
2905 "value" : {
2906 "op" : "b2d",
2907 "left" : null,
2908 "right" : {
2909 "type" : "bool",
2910 "value" : false
2911 }
2912 }
2913 }
2914 }
2915 ]
2916 }
2917 ]
2918 },
2919 {
2920 "name" : "act_1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002921 "id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002922 "runtime_data" : [],
2923 "primitives" : [
2924 {
2925 "op" : "assign_header",
2926 "parameters" : [
2927 {
2928 "type" : "header",
2929 "value" : "udp"
2930 },
2931 {
2932 "type" : "header",
2933 "value" : "inner_udp"
2934 }
2935 ],
2936 "source_info" : {
2937 "filename" : "include/spgw.p4",
2938 "line" : 35,
2939 "column" : 16,
2940 "source_fragment" : "= inner_udp; ..."
2941 }
2942 }
2943 ]
2944 },
2945 {
2946 "name" : "act_2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002947 "id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002948 "runtime_data" : [],
2949 "primitives" : [
2950 {
2951 "op" : "remove_header",
2952 "parameters" : [
2953 {
2954 "type" : "header",
2955 "value" : "udp"
2956 }
2957 ],
2958 "source_info" : {
2959 "filename" : "include/spgw.p4",
2960 "line" : 37,
2961 "column" : 12,
2962 "source_fragment" : "udp.setInvalid()"
2963 }
2964 }
2965 ]
2966 },
2967 {
2968 "name" : "act_3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002969 "id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002970 "runtime_data" : [],
2971 "primitives" : [
2972 {
2973 "op" : "assign_header",
2974 "parameters" : [
2975 {
2976 "type" : "header",
2977 "value" : "gtpu_ipv4"
2978 },
2979 {
2980 "type" : "header",
2981 "value" : "ipv4"
2982 }
2983 ],
2984 "source_info" : {
2985 "filename" : "include/spgw.p4",
2986 "line" : 31,
2987 "column" : 18,
2988 "source_fragment" : "= ipv4; ..."
2989 }
2990 },
2991 {
2992 "op" : "assign_header",
2993 "parameters" : [
2994 {
2995 "type" : "header",
2996 "value" : "ipv4"
2997 },
2998 {
2999 "type" : "header",
3000 "value" : "inner_ipv4"
3001 }
3002 ],
3003 "source_info" : {
3004 "filename" : "include/spgw.p4",
3005 "line" : 32,
3006 "column" : 13,
3007 "source_fragment" : "= inner_ipv4; ..."
3008 }
3009 },
3010 {
3011 "op" : "assign_header",
3012 "parameters" : [
3013 {
3014 "type" : "header",
3015 "value" : "gtpu_udp"
3016 },
3017 {
3018 "type" : "header",
3019 "value" : "udp"
3020 }
3021 ],
3022 "source_info" : {
3023 "filename" : "include/spgw.p4",
3024 "line" : 33,
3025 "column" : 17,
3026 "source_fragment" : "= udp; ..."
3027 }
3028 }
3029 ]
3030 },
3031 {
3032 "name" : "act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003033 "id" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003034 "runtime_data" : [],
3035 "primitives" : [
3036 {
3037 "op" : "assign",
3038 "parameters" : [
3039 {
3040 "type" : "field",
3041 "value" : ["standard_metadata", "egress_spec"]
3042 },
3043 {
3044 "type" : "field",
3045 "value" : ["packet_out", "egress_port"]
3046 }
3047 ],
3048 "source_info" : {
3049 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003050 "line" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003051 "column" : 12,
3052 "source_fragment" : "standard_metadata.egress_spec = hdr.packet_out.egress_port"
3053 }
3054 },
3055 {
3056 "op" : "remove_header",
3057 "parameters" : [
3058 {
3059 "type" : "header",
3060 "value" : "packet_out"
3061 }
3062 ],
3063 "source_info" : {
3064 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003065 "line" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003066 "column" : 12,
3067 "source_fragment" : "hdr.packet_out.setInvalid()"
3068 }
3069 },
3070 {
3071 "op" : "assign",
3072 "parameters" : [
3073 {
3074 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003075 "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003076 },
3077 {
3078 "type" : "expression",
3079 "value" : {
3080 "type" : "expression",
3081 "value" : {
3082 "op" : "b2d",
3083 "left" : null,
3084 "right" : {
3085 "type" : "bool",
3086 "value" : true
3087 }
3088 }
3089 }
3090 }
3091 ],
3092 "source_info" : {
3093 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003094 "line" : 27,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003095 "column" : 53,
3096 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003097 }
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003098 },
3099 {
3100 "op" : "exit",
3101 "parameters" : [],
3102 "source_info" : {
3103 "filename" : "include/control/packetio.p4",
3104 "line" : 29,
3105 "column" : 12,
3106 "source_fragment" : "exit"
3107 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003108 }
3109 ]
3110 },
3111 {
3112 "name" : "act_5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003113 "id" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003114 "runtime_data" : [],
3115 "primitives" : [
3116 {
3117 "op" : "assign",
3118 "parameters" : [
3119 {
3120 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003121 "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003122 },
3123 {
3124 "type" : "field",
3125 "value" : ["vlan_tag", "vlan_id"]
3126 }
3127 ],
3128 "source_info" : {
3129 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003130 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003131 "column" : 36,
3132 "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003133 }
3134 },
3135 {
3136 "op" : "assign",
3137 "parameters" : [
3138 {
3139 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003140 "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003141 },
3142 {
3143 "type" : "field",
3144 "value" : ["vlan_tag", "pri"]
3145 }
3146 ],
3147 "source_info" : {
3148 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003149 "line" : 111,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003150 "column" : 37,
3151 "source_fragment" : "= hdr.vlan_tag.pri; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003152 }
3153 },
3154 {
3155 "op" : "assign",
3156 "parameters" : [
3157 {
3158 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003159 "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003160 },
3161 {
3162 "type" : "field",
3163 "value" : ["vlan_tag", "cfi"]
3164 }
3165 ],
3166 "source_info" : {
3167 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003168 "line" : 112,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003169 "column" : 37,
3170 "source_fragment" : "= hdr.vlan_tag.cfi; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003171 }
3172 }
3173 ]
3174 },
3175 {
3176 "name" : "act_6",
3177 "id" : 40,
3178 "runtime_data" : [],
3179 "primitives" : [
3180 {
3181 "op" : "assign",
3182 "parameters" : [
3183 {
3184 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003185 "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003186 },
3187 {
3188 "type" : "hexstr",
3189 "value" : "0x41"
3190 }
3191 ],
3192 "source_info" : {
3193 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003194 "line" : 126,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003195 "column" : 37,
3196 "source_fragment" : "= DEFAULT_MPLS_TTL + 1; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003197 }
3198 }
3199 ]
3200 },
3201 {
3202 "name" : "act_7",
3203 "id" : 41,
3204 "runtime_data" : [],
3205 "primitives" : [
3206 {
3207 "op" : "assign",
3208 "parameters" : [
3209 {
3210 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003211 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003212 },
3213 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003214 "type" : "hexstr",
3215 "value" : "0x8847"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003216 }
Daniele Moro7c3a0022019-07-12 13:38:34 -07003217 ],
3218 "source_info" : {
3219 "filename" : "include/control/../define.p4",
3220 "line" : 108,
3221 "column" : 31,
3222 "source_fragment" : "0x8847; ..."
3223 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003224 }
3225 ]
3226 },
3227 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003228 "name" : "act_8",
3229 "id" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003230 "runtime_data" : [],
3231 "primitives" : [
3232 {
3233 "op" : "assign",
3234 "parameters" : [
3235 {
3236 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003237 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003238 },
3239 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003240 "type" : "field",
3241 "value" : ["inner_vlan_tag", "eth_type"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003242 }
Daniele Moro7c3a0022019-07-12 13:38:34 -07003243 ],
3244 "source_info" : {
3245 "filename" : "include/control/filtering.p4",
3246 "line" : 136,
3247 "column" : 50,
3248 "source_fragment" : "= hdr.inner_vlan_tag.eth_type; ..."
3249 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003250 }
3251 ]
3252 },
3253 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003254 "name" : "act_9",
3255 "id" : 43,
3256 "runtime_data" : [],
3257 "primitives" : [
3258 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003259 "op" : "assign",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003260 "parameters" : [
3261 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003262 "type" : "field",
3263 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
3264 },
3265 {
3266 "type" : "field",
3267 "value" : ["vlan_tag", "eth_type"]
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003268 }
3269 ],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003270 "source_info" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003271 "filename" : "include/control/filtering.p4",
3272 "line" : 139,
3273 "column" : 50,
3274 "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003275 }
3276 }
3277 ]
3278 },
3279 {
3280 "name" : "act_10",
3281 "id" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003282 "runtime_data" : [],
3283 "primitives" : [
3284 {
3285 "op" : "assign",
3286 "parameters" : [
3287 {
3288 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003289 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003290 },
3291 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003292 "type" : "field",
3293 "value" : ["ethernet", "eth_type"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003294 }
3295 ],
3296 "source_info" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003297 "filename" : "include/control/filtering.p4",
3298 "line" : 141,
3299 "column" : 46,
3300 "source_fragment" : "= hdr.ethernet.eth_type; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003301 }
3302 }
3303 ]
3304 },
3305 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003306 "name" : "act_11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003307 "id" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003308 "runtime_data" : [],
3309 "primitives" : [
3310 {
3311 "op" : "assign",
3312 "parameters" : [
3313 {
3314 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003315 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003316 },
3317 {
3318 "type" : "expression",
3319 "value" : {
3320 "type" : "expression",
3321 "value" : {
3322 "op" : "b2d",
3323 "left" : null,
3324 "right" : {
3325 "type" : "bool",
3326 "value" : true
3327 }
3328 }
3329 }
3330 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003331 ]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003332 }
3333 ]
3334 },
3335 {
3336 "name" : "act_12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003337 "id" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003338 "runtime_data" : [],
3339 "primitives" : [
3340 {
3341 "op" : "assign",
3342 "parameters" : [
3343 {
3344 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003345 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003346 },
3347 {
3348 "type" : "expression",
3349 "value" : {
3350 "type" : "expression",
3351 "value" : {
3352 "op" : "b2d",
3353 "left" : null,
3354 "right" : {
3355 "type" : "bool",
3356 "value" : false
3357 }
3358 }
3359 }
3360 }
3361 ]
3362 }
3363 ]
3364 },
3365 {
3366 "name" : "act_13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003367 "id" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003368 "runtime_data" : [],
3369 "primitives" : [
3370 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003371 "op" : "mark_to_drop",
3372 "parameters" : [
3373 {
3374 "type" : "header",
3375 "value" : "standard_metadata"
3376 }
3377 ],
3378 "source_info" : {
3379 "filename" : "include/spgw.p4",
3380 "line" : 149,
3381 "column" : 16,
3382 "source_fragment" : "mark_to_drop(standard_metadata)"
3383 }
3384 }
3385 ]
3386 },
3387 {
3388 "name" : "act_14",
3389 "id" : 48,
3390 "runtime_data" : [],
3391 "primitives" : [
3392 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003393 "op" : "assign",
3394 "parameters" : [
3395 {
3396 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003397 "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
3398 },
3399 {
3400 "type" : "hexstr",
3401 "value" : "0x01"
3402 }
3403 ],
3404 "source_info" : {
3405 "filename" : "include/control/../define.p4",
3406 "line" : 143,
3407 "column" : 36,
3408 "source_fragment" : "2w1; ..."
3409 }
3410 }
3411 ]
3412 },
3413 {
3414 "name" : "act_15",
3415 "id" : 49,
3416 "runtime_data" : [],
3417 "primitives" : [
3418 {
3419 "op" : "assign",
3420 "parameters" : [
3421 {
3422 "type" : "field",
3423 "value" : ["scalars", "spgw_ingress_tmp_0"]
3424 },
3425 {
3426 "type" : "expression",
3427 "value" : {
3428 "type" : "expression",
3429 "value" : {
3430 "op" : "b2d",
3431 "left" : null,
3432 "right" : {
3433 "type" : "bool",
3434 "value" : true
3435 }
3436 }
3437 }
3438 }
3439 ]
3440 }
3441 ]
3442 },
3443 {
3444 "name" : "act_16",
3445 "id" : 50,
3446 "runtime_data" : [],
3447 "primitives" : [
3448 {
3449 "op" : "assign",
3450 "parameters" : [
3451 {
3452 "type" : "field",
3453 "value" : ["scalars", "spgw_ingress_tmp_0"]
3454 },
3455 {
3456 "type" : "expression",
3457 "value" : {
3458 "type" : "expression",
3459 "value" : {
3460 "op" : "b2d",
3461 "left" : null,
3462 "right" : {
3463 "type" : "bool",
3464 "value" : false
3465 }
3466 }
3467 }
3468 }
3469 ]
3470 }
3471 ]
3472 },
3473 {
3474 "name" : "act_17",
3475 "id" : 51,
3476 "runtime_data" : [],
3477 "primitives" : [
3478 {
3479 "op" : "assign",
3480 "parameters" : [
3481 {
3482 "type" : "field",
3483 "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003484 },
3485 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003486 "type" : "hexstr",
3487 "value" : "0x02"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003488 }
3489 ],
3490 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003491 "filename" : "include/control/../define.p4",
Daniele Moroe22b5742019-06-28 15:32:37 -07003492 "line" : 144,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003493 "column" : 38,
3494 "source_fragment" : "2w2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003495 }
3496 }
3497 ]
3498 },
3499 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003500 "name" : "act_18",
3501 "id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003502 "runtime_data" : [],
3503 "primitives" : [
3504 {
3505 "op" : "assign",
3506 "parameters" : [
3507 {
3508 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003509 "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003510 },
3511 {
3512 "type" : "hexstr",
3513 "value" : "0x00"
3514 }
3515 ],
3516 "source_info" : {
3517 "filename" : "include/control/../define.p4",
Daniele Moroe22b5742019-06-28 15:32:37 -07003518 "line" : 142,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003519 "column" : 37,
3520 "source_fragment" : "2w0; ..."
3521 }
3522 },
3523 {
3524 "op" : "assign",
3525 "parameters" : [
3526 {
3527 "type" : "field",
3528 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003529 },
3530 {
3531 "type" : "expression",
3532 "value" : {
3533 "type" : "expression",
3534 "value" : {
3535 "op" : "b2d",
3536 "left" : null,
3537 "right" : {
3538 "type" : "bool",
3539 "value" : true
3540 }
3541 }
3542 }
3543 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003544 ],
3545 "source_info" : {
3546 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003547 "line" : 158,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003548 "column" : 12,
3549 "source_fragment" : "return"
3550 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003551 }
3552 ]
3553 },
3554 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003555 "name" : "act_19",
3556 "id" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003557 "runtime_data" : [],
3558 "primitives" : [
3559 {
3560 "op" : "assign",
3561 "parameters" : [
3562 {
3563 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003564 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003565 },
3566 {
3567 "type" : "expression",
3568 "value" : {
3569 "type" : "expression",
3570 "value" : {
3571 "op" : "b2d",
3572 "left" : null,
3573 "right" : {
3574 "type" : "bool",
3575 "value" : false
3576 }
3577 }
3578 }
3579 }
3580 ]
3581 }
3582 ]
3583 },
3584 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003585 "name" : "act_20",
3586 "id" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003587 "runtime_data" : [],
3588 "primitives" : [
3589 {
3590 "op" : "assign",
3591 "parameters" : [
3592 {
3593 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003594 "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len20"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003595 },
3596 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003597 "type" : "field",
3598 "value" : ["ipv4", "total_len"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003599 }
3600 ],
3601 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003602 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003603 "line" : 175,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003604 "column" : 34,
3605 "source_fragment" : "= ipv4.total_len; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003606 }
3607 }
3608 ]
3609 },
3610 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003611 "name" : "act_21",
3612 "id" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003613 "runtime_data" : [],
3614 "primitives" : [
3615 {
3616 "op" : "assign",
3617 "parameters" : [
3618 {
3619 "type" : "field",
3620 "value" : ["scalars", "tmp_1"]
3621 },
3622 {
3623 "type" : "expression",
3624 "value" : {
3625 "type" : "expression",
3626 "value" : {
3627 "op" : "&",
3628 "left" : {
3629 "type" : "field",
3630 "value" : ["standard_metadata", "egress_spec"]
3631 },
3632 "right" : {
3633 "type" : "hexstr",
3634 "value" : "0xffffffff"
3635 }
3636 }
3637 }
3638 }
3639 ],
3640 "source_info" : {
3641 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003642 "line" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003643 "column" : 38,
3644 "source_fragment" : "(bit<32>)standard_metadata.egress_spec"
3645 }
3646 },
3647 {
3648 "op" : "count",
3649 "parameters" : [
3650 {
3651 "type" : "counter_array",
3652 "value" : "FabricIngress.port_counters_control.egress_port_counter"
3653 },
3654 {
3655 "type" : "field",
3656 "value" : ["scalars", "tmp_1"]
3657 }
3658 ],
3659 "source_info" : {
3660 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003661 "line" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003662 "column" : 12,
3663 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
3664 }
3665 }
3666 ]
3667 },
3668 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003669 "name" : "act_22",
3670 "id" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003671 "runtime_data" : [],
3672 "primitives" : [
3673 {
3674 "op" : "assign",
3675 "parameters" : [
3676 {
3677 "type" : "field",
3678 "value" : ["scalars", "tmp_2"]
3679 },
3680 {
3681 "type" : "expression",
3682 "value" : {
3683 "type" : "expression",
3684 "value" : {
3685 "op" : "&",
3686 "left" : {
3687 "type" : "field",
3688 "value" : ["standard_metadata", "ingress_port"]
3689 },
3690 "right" : {
3691 "type" : "hexstr",
3692 "value" : "0xffffffff"
3693 }
3694 }
3695 }
3696 }
3697 ],
3698 "source_info" : {
3699 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003700 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003701 "column" : 39,
3702 "source_fragment" : "(bit<32>)standard_metadata.ingress_port"
3703 }
3704 },
3705 {
3706 "op" : "count",
3707 "parameters" : [
3708 {
3709 "type" : "counter_array",
3710 "value" : "FabricIngress.port_counters_control.ingress_port_counter"
3711 },
3712 {
3713 "type" : "field",
3714 "value" : ["scalars", "tmp_2"]
3715 }
3716 ],
3717 "source_info" : {
3718 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003719 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003720 "column" : 12,
3721 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
3722 }
3723 }
3724 ]
3725 },
3726 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003727 "name" : "nop",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003728 "id" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003729 "runtime_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003730 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003731 },
3732 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003733 "name" : "nop",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003734 "id" : 58,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003735 "runtime_data" : [],
Daniele Moro7c3a0022019-07-12 13:38:34 -07003736 "primitives" : []
3737 },
3738 {
3739 "name" : "nop",
3740 "id" : 59,
3741 "runtime_data" : [],
3742 "primitives" : []
3743 },
3744 {
3745 "name" : "NoAction",
3746 "id" : 60,
3747 "runtime_data" : [],
3748 "primitives" : []
3749 },
3750 {
3751 "name" : "NoAction",
3752 "id" : 61,
3753 "runtime_data" : [],
3754 "primitives" : []
3755 },
3756 {
3757 "name" : "FabricEgress.spgw_egress.gtpu_encap",
3758 "id" : 62,
3759 "runtime_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003760 "primitives" : [
3761 {
3762 "op" : "add_header",
3763 "parameters" : [
3764 {
3765 "type" : "header",
3766 "value" : "gtpu_ipv4"
3767 }
3768 ],
3769 "source_info" : {
3770 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003771 "line" : 191,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003772 "column" : 8,
3773 "source_fragment" : "gtpu_ipv4.setValid()"
3774 }
3775 },
3776 {
3777 "op" : "assign",
3778 "parameters" : [
3779 {
3780 "type" : "field",
3781 "value" : ["gtpu_ipv4", "version"]
3782 },
3783 {
3784 "type" : "hexstr",
3785 "value" : "0x04"
3786 }
3787 ],
3788 "source_info" : {
3789 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003790 "line" : 192,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003791 "column" : 8,
3792 "source_fragment" : "gtpu_ipv4.version = 4"
3793 }
3794 },
3795 {
3796 "op" : "assign",
3797 "parameters" : [
3798 {
3799 "type" : "field",
3800 "value" : ["gtpu_ipv4", "ihl"]
3801 },
3802 {
3803 "type" : "hexstr",
3804 "value" : "0x05"
3805 }
3806 ],
3807 "source_info" : {
3808 "filename" : "include/control/../define.p4",
Daniele Moroe22b5742019-06-28 15:32:37 -07003809 "line" : 125,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003810 "column" : 28,
3811 "source_fragment" : "5; ..."
3812 }
3813 },
3814 {
3815 "op" : "assign",
3816 "parameters" : [
3817 {
3818 "type" : "field",
3819 "value" : ["gtpu_ipv4", "dscp"]
3820 },
3821 {
3822 "type" : "hexstr",
3823 "value" : "0x00"
3824 }
3825 ],
3826 "source_info" : {
3827 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003828 "line" : 194,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003829 "column" : 8,
3830 "source_fragment" : "gtpu_ipv4.dscp = 0"
3831 }
3832 },
3833 {
3834 "op" : "assign",
3835 "parameters" : [
3836 {
3837 "type" : "field",
3838 "value" : ["gtpu_ipv4", "ecn"]
3839 },
3840 {
3841 "type" : "hexstr",
3842 "value" : "0x00"
3843 }
3844 ],
3845 "source_info" : {
3846 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003847 "line" : 195,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003848 "column" : 8,
3849 "source_fragment" : "gtpu_ipv4.ecn = 0"
3850 }
3851 },
3852 {
3853 "op" : "assign",
3854 "parameters" : [
3855 {
3856 "type" : "field",
3857 "value" : ["gtpu_ipv4", "total_len"]
3858 },
3859 {
3860 "type" : "expression",
3861 "value" : {
3862 "type" : "expression",
3863 "value" : {
3864 "op" : "&",
3865 "left" : {
3866 "type" : "expression",
3867 "value" : {
3868 "op" : "+",
3869 "left" : {
3870 "type" : "field",
3871 "value" : ["ipv4", "total_len"]
3872 },
3873 "right" : {
3874 "type" : "hexstr",
3875 "value" : "0x0024"
3876 }
3877 }
3878 },
3879 "right" : {
3880 "type" : "hexstr",
3881 "value" : "0xffff"
3882 }
3883 }
3884 }
3885 }
3886 ],
3887 "source_info" : {
3888 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003889 "line" : 196,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003890 "column" : 8,
3891 "source_fragment" : "gtpu_ipv4.total_len = ipv4.total_len ..."
3892 }
3893 },
3894 {
3895 "op" : "assign",
3896 "parameters" : [
3897 {
3898 "type" : "field",
3899 "value" : ["gtpu_ipv4", "identification"]
3900 },
3901 {
3902 "type" : "hexstr",
3903 "value" : "0x1513"
3904 }
3905 ],
3906 "source_info" : {
3907 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003908 "line" : 198,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003909 "column" : 8,
3910 "source_fragment" : "gtpu_ipv4.identification = 0x1513"
3911 }
3912 },
3913 {
3914 "op" : "assign",
3915 "parameters" : [
3916 {
3917 "type" : "field",
3918 "value" : ["gtpu_ipv4", "flags"]
3919 },
3920 {
3921 "type" : "hexstr",
3922 "value" : "0x00"
3923 }
3924 ],
3925 "source_info" : {
3926 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003927 "line" : 199,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003928 "column" : 8,
3929 "source_fragment" : "gtpu_ipv4.flags = 0"
3930 }
3931 },
3932 {
3933 "op" : "assign",
3934 "parameters" : [
3935 {
3936 "type" : "field",
3937 "value" : ["gtpu_ipv4", "frag_offset"]
3938 },
3939 {
3940 "type" : "hexstr",
3941 "value" : "0x0000"
3942 }
3943 ],
3944 "source_info" : {
3945 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003946 "line" : 200,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003947 "column" : 8,
3948 "source_fragment" : "gtpu_ipv4.frag_offset = 0"
3949 }
3950 },
3951 {
3952 "op" : "assign",
3953 "parameters" : [
3954 {
3955 "type" : "field",
3956 "value" : ["gtpu_ipv4", "ttl"]
3957 },
3958 {
3959 "type" : "hexstr",
3960 "value" : "0x40"
3961 }
3962 ],
3963 "source_info" : {
3964 "filename" : "include/control/../define.p4",
Daniele Moroe22b5742019-06-28 15:32:37 -07003965 "line" : 138,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003966 "column" : 32,
3967 "source_fragment" : "64; ..."
3968 }
3969 },
3970 {
3971 "op" : "assign",
3972 "parameters" : [
3973 {
3974 "type" : "field",
3975 "value" : ["gtpu_ipv4", "protocol"]
3976 },
3977 {
3978 "type" : "hexstr",
3979 "value" : "0x11"
3980 }
3981 ],
3982 "source_info" : {
3983 "filename" : "include/control/../define.p4",
Daniele Moroe22b5742019-06-28 15:32:37 -07003984 "line" : 122,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003985 "column" : 25,
3986 "source_fragment" : "17; ..."
3987 }
3988 },
3989 {
3990 "op" : "assign",
3991 "parameters" : [
3992 {
3993 "type" : "field",
3994 "value" : ["gtpu_ipv4", "dst_addr"]
3995 },
3996 {
3997 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003998 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr22"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003999 }
4000 ],
4001 "source_info" : {
4002 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004003 "line" : 203,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004004 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004005 "source_fragment" : "gtpu_ipv4.dst_addr = fabric_meta.spgw.s1u_enb_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004006 }
4007 },
4008 {
4009 "op" : "assign",
4010 "parameters" : [
4011 {
4012 "type" : "field",
4013 "value" : ["gtpu_ipv4", "src_addr"]
4014 },
4015 {
4016 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004017 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr23"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004018 }
4019 ],
4020 "source_info" : {
4021 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004022 "line" : 204,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004023 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004024 "source_fragment" : "gtpu_ipv4.src_addr = fabric_meta.spgw.s1u_sgw_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004025 }
4026 },
4027 {
4028 "op" : "assign",
4029 "parameters" : [
4030 {
4031 "type" : "field",
4032 "value" : ["gtpu_ipv4", "hdr_checksum"]
4033 },
4034 {
4035 "type" : "hexstr",
4036 "value" : "0x0000"
4037 }
4038 ],
4039 "source_info" : {
4040 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004041 "line" : 205,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004042 "column" : 8,
4043 "source_fragment" : "gtpu_ipv4.hdr_checksum = 0"
4044 }
4045 },
4046 {
4047 "op" : "add_header",
4048 "parameters" : [
4049 {
4050 "type" : "header",
4051 "value" : "gtpu_udp"
4052 }
4053 ],
4054 "source_info" : {
4055 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004056 "line" : 207,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004057 "column" : 8,
4058 "source_fragment" : "gtpu_udp.setValid()"
4059 }
4060 },
4061 {
4062 "op" : "assign",
4063 "parameters" : [
4064 {
4065 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004066 "value" : ["gtpu_udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004067 },
4068 {
4069 "type" : "hexstr",
4070 "value" : "0x0868"
4071 }
4072 ],
4073 "source_info" : {
4074 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004075 "line" : 208,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004076 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004077 "source_fragment" : "gtpu_udp.sport = 2152"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004078 }
4079 },
4080 {
4081 "op" : "assign",
4082 "parameters" : [
4083 {
4084 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004085 "value" : ["gtpu_udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004086 },
4087 {
4088 "type" : "hexstr",
4089 "value" : "0x0868"
4090 }
4091 ],
4092 "source_info" : {
4093 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004094 "line" : 209,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004095 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004096 "source_fragment" : "gtpu_udp.dport = 2152"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004097 }
4098 },
4099 {
4100 "op" : "assign",
4101 "parameters" : [
4102 {
4103 "type" : "field",
4104 "value" : ["gtpu_udp", "len"]
4105 },
4106 {
4107 "type" : "expression",
4108 "value" : {
4109 "type" : "expression",
4110 "value" : {
4111 "op" : "&",
4112 "left" : {
4113 "type" : "expression",
4114 "value" : {
4115 "op" : "+",
4116 "left" : {
4117 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004118 "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len20"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004119 },
4120 "right" : {
4121 "type" : "hexstr",
4122 "value" : "0x0010"
4123 }
4124 }
4125 },
4126 "right" : {
4127 "type" : "hexstr",
4128 "value" : "0xffff"
4129 }
4130 }
4131 }
4132 }
4133 ],
4134 "source_info" : {
4135 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004136 "line" : 210,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004137 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004138 "source_fragment" : "gtpu_udp.len = fabric_meta.spgw.ipv4_len ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004139 }
4140 },
4141 {
4142 "op" : "assign",
4143 "parameters" : [
4144 {
4145 "type" : "field",
4146 "value" : ["gtpu_udp", "checksum"]
4147 },
4148 {
4149 "type" : "hexstr",
4150 "value" : "0x0000"
4151 }
4152 ],
4153 "source_info" : {
4154 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004155 "line" : 212,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004156 "column" : 8,
4157 "source_fragment" : "gtpu_udp.checksum = 0"
4158 }
4159 },
4160 {
4161 "op" : "add_header",
4162 "parameters" : [
4163 {
4164 "type" : "header",
4165 "value" : "gtpu"
4166 }
4167 ],
4168 "source_info" : {
4169 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004170 "line" : 214,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004171 "column" : 8,
4172 "source_fragment" : "gtpu.setValid()"
4173 }
4174 },
4175 {
4176 "op" : "assign",
4177 "parameters" : [
4178 {
4179 "type" : "field",
4180 "value" : ["gtpu", "version"]
4181 },
4182 {
4183 "type" : "hexstr",
4184 "value" : "0x01"
4185 }
4186 ],
4187 "source_info" : {
4188 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004189 "line" : 215,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004190 "column" : 8,
4191 "source_fragment" : "gtpu.version = 0x01"
4192 }
4193 },
4194 {
4195 "op" : "assign",
4196 "parameters" : [
4197 {
4198 "type" : "field",
4199 "value" : ["gtpu", "pt"]
4200 },
4201 {
4202 "type" : "hexstr",
4203 "value" : "0x01"
4204 }
4205 ],
4206 "source_info" : {
4207 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004208 "line" : 216,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004209 "column" : 8,
4210 "source_fragment" : "gtpu.pt = 0x01"
4211 }
4212 },
4213 {
4214 "op" : "assign",
4215 "parameters" : [
4216 {
4217 "type" : "field",
4218 "value" : ["gtpu", "spare"]
4219 },
4220 {
4221 "type" : "hexstr",
4222 "value" : "0x00"
4223 }
4224 ],
4225 "source_info" : {
4226 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004227 "line" : 217,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004228 "column" : 8,
4229 "source_fragment" : "gtpu.spare = 0"
4230 }
4231 },
4232 {
4233 "op" : "assign",
4234 "parameters" : [
4235 {
4236 "type" : "field",
4237 "value" : ["gtpu", "ex_flag"]
4238 },
4239 {
4240 "type" : "hexstr",
4241 "value" : "0x00"
4242 }
4243 ],
4244 "source_info" : {
4245 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004246 "line" : 218,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004247 "column" : 8,
4248 "source_fragment" : "gtpu.ex_flag = 0"
4249 }
4250 },
4251 {
4252 "op" : "assign",
4253 "parameters" : [
4254 {
4255 "type" : "field",
4256 "value" : ["gtpu", "seq_flag"]
4257 },
4258 {
4259 "type" : "hexstr",
4260 "value" : "0x00"
4261 }
4262 ],
4263 "source_info" : {
4264 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004265 "line" : 219,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004266 "column" : 8,
4267 "source_fragment" : "gtpu.seq_flag = 0"
4268 }
4269 },
4270 {
4271 "op" : "assign",
4272 "parameters" : [
4273 {
4274 "type" : "field",
4275 "value" : ["gtpu", "npdu_flag"]
4276 },
4277 {
4278 "type" : "hexstr",
4279 "value" : "0x00"
4280 }
4281 ],
4282 "source_info" : {
4283 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004284 "line" : 220,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004285 "column" : 8,
4286 "source_fragment" : "gtpu.npdu_flag = 0"
4287 }
4288 },
4289 {
4290 "op" : "assign",
4291 "parameters" : [
4292 {
4293 "type" : "field",
4294 "value" : ["gtpu", "msgtype"]
4295 },
4296 {
4297 "type" : "hexstr",
4298 "value" : "0xff"
4299 }
4300 ],
4301 "source_info" : {
4302 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004303 "line" : 221,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004304 "column" : 8,
4305 "source_fragment" : "gtpu.msgtype = 0xff"
4306 }
4307 },
4308 {
4309 "op" : "assign",
4310 "parameters" : [
4311 {
4312 "type" : "field",
4313 "value" : ["gtpu", "msglen"]
4314 },
4315 {
4316 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004317 "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len20"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004318 }
4319 ],
4320 "source_info" : {
4321 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004322 "line" : 222,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004323 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004324 "source_fragment" : "gtpu.msglen = fabric_meta.spgw.ipv4_len; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004325 }
4326 },
4327 {
4328 "op" : "assign",
4329 "parameters" : [
4330 {
4331 "type" : "field",
4332 "value" : ["gtpu", "teid"]
4333 },
4334 {
4335 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004336 "value" : ["scalars", "fabric_metadata_t._spgw_teid21"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004337 }
4338 ],
4339 "source_info" : {
4340 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004341 "line" : 223,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004342 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004343 "source_fragment" : "gtpu.teid = fabric_meta.spgw.teid; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004344 }
4345 }
4346 ]
4347 },
4348 {
4349 "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004350 "id" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004351 "runtime_data" : [
4352 {
4353 "name" : "max_hop",
4354 "bitwidth" : 8
4355 },
4356 {
4357 "name" : "ins_cnt",
4358 "bitwidth" : 5
4359 },
4360 {
4361 "name" : "ins_mask0003",
4362 "bitwidth" : 4
4363 },
4364 {
4365 "name" : "ins_mask0407",
4366 "bitwidth" : 4
4367 }
4368 ],
4369 "primitives" : [
4370 {
4371 "op" : "add_header",
4372 "parameters" : [
4373 {
4374 "type" : "header",
4375 "value" : "intl4_shim"
4376 }
4377 ],
4378 "source_info" : {
4379 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004380 "line" : 32,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004381 "column" : 8,
4382 "source_fragment" : "hdr.intl4_shim.setValid()"
4383 }
4384 },
4385 {
4386 "op" : "assign",
4387 "parameters" : [
4388 {
4389 "type" : "field",
4390 "value" : ["intl4_shim", "int_type"]
4391 },
4392 {
4393 "type" : "hexstr",
4394 "value" : "0x01"
4395 }
4396 ],
4397 "source_info" : {
4398 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004399 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004400 "column" : 8,
4401 "source_fragment" : "hdr.intl4_shim.int_type = 1"
4402 }
4403 },
4404 {
4405 "op" : "assign",
4406 "parameters" : [
4407 {
4408 "type" : "field",
4409 "value" : ["intl4_shim", "len_words"]
4410 },
4411 {
4412 "type" : "hexstr",
4413 "value" : "0x04"
4414 }
4415 ],
4416 "source_info" : {
4417 "filename" : "include/control/../define.p4",
Daniele Moroe22b5742019-06-28 15:32:37 -07004418 "line" : 153,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004419 "column" : 36,
4420 "source_fragment" : "4; ..."
4421 }
4422 },
4423 {
4424 "op" : "add_header",
4425 "parameters" : [
4426 {
4427 "type" : "header",
4428 "value" : "int_header"
4429 }
4430 ],
4431 "source_info" : {
4432 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004433 "line" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004434 "column" : 8,
4435 "source_fragment" : "hdr.int_header.setValid()"
4436 }
4437 },
4438 {
4439 "op" : "assign",
4440 "parameters" : [
4441 {
4442 "type" : "field",
4443 "value" : ["int_header", "ver"]
4444 },
4445 {
4446 "type" : "hexstr",
4447 "value" : "0x00"
4448 }
4449 ],
4450 "source_info" : {
4451 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004452 "line" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004453 "column" : 8,
4454 "source_fragment" : "hdr.int_header.ver = 0"
4455 }
4456 },
4457 {
4458 "op" : "assign",
4459 "parameters" : [
4460 {
4461 "type" : "field",
4462 "value" : ["int_header", "rep"]
4463 },
4464 {
4465 "type" : "hexstr",
4466 "value" : "0x00"
4467 }
4468 ],
4469 "source_info" : {
4470 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004471 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004472 "column" : 8,
4473 "source_fragment" : "hdr.int_header.rep = 0"
4474 }
4475 },
4476 {
4477 "op" : "assign",
4478 "parameters" : [
4479 {
4480 "type" : "field",
4481 "value" : ["int_header", "c"]
4482 },
4483 {
4484 "type" : "hexstr",
4485 "value" : "0x00"
4486 }
4487 ],
4488 "source_info" : {
4489 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004490 "line" : 40,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004491 "column" : 8,
4492 "source_fragment" : "hdr.int_header.c = 0"
4493 }
4494 },
4495 {
4496 "op" : "assign",
4497 "parameters" : [
4498 {
4499 "type" : "field",
4500 "value" : ["int_header", "e"]
4501 },
4502 {
4503 "type" : "hexstr",
4504 "value" : "0x00"
4505 }
4506 ],
4507 "source_info" : {
4508 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004509 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004510 "column" : 8,
4511 "source_fragment" : "hdr.int_header.e = 0"
4512 }
4513 },
4514 {
4515 "op" : "assign",
4516 "parameters" : [
4517 {
4518 "type" : "field",
4519 "value" : ["int_header", "rsvd1"]
4520 },
4521 {
4522 "type" : "hexstr",
4523 "value" : "0x00"
4524 }
4525 ],
4526 "source_info" : {
4527 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004528 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004529 "column" : 8,
4530 "source_fragment" : "hdr.int_header.rsvd1 = 0"
4531 }
4532 },
4533 {
4534 "op" : "assign",
4535 "parameters" : [
4536 {
4537 "type" : "field",
4538 "value" : ["int_header", "ins_cnt"]
4539 },
4540 {
4541 "type" : "runtime_data",
4542 "value" : 1
4543 }
4544 ],
4545 "source_info" : {
4546 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004547 "line" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004548 "column" : 8,
4549 "source_fragment" : "hdr.int_header.ins_cnt = ins_cnt; ..."
4550 }
4551 },
4552 {
4553 "op" : "assign",
4554 "parameters" : [
4555 {
4556 "type" : "field",
4557 "value" : ["int_header", "max_hop_cnt"]
4558 },
4559 {
4560 "type" : "runtime_data",
4561 "value" : 0
4562 }
4563 ],
4564 "source_info" : {
4565 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004566 "line" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004567 "column" : 8,
4568 "source_fragment" : "hdr.int_header.max_hop_cnt = max_hop; ..."
4569 }
4570 },
4571 {
4572 "op" : "assign",
4573 "parameters" : [
4574 {
4575 "type" : "field",
4576 "value" : ["int_header", "total_hop_cnt"]
4577 },
4578 {
4579 "type" : "hexstr",
4580 "value" : "0x00"
4581 }
4582 ],
4583 "source_info" : {
4584 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004585 "line" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004586 "column" : 8,
4587 "source_fragment" : "hdr.int_header.total_hop_cnt = 0"
4588 }
4589 },
4590 {
4591 "op" : "assign",
4592 "parameters" : [
4593 {
4594 "type" : "field",
4595 "value" : ["int_header", "instruction_mask_0003"]
4596 },
4597 {
4598 "type" : "runtime_data",
4599 "value" : 2
4600 }
4601 ],
4602 "source_info" : {
4603 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004604 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004605 "column" : 8,
4606 "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
4607 }
4608 },
4609 {
4610 "op" : "assign",
4611 "parameters" : [
4612 {
4613 "type" : "field",
4614 "value" : ["int_header", "instruction_mask_0407"]
4615 },
4616 {
4617 "type" : "runtime_data",
4618 "value" : 3
4619 }
4620 ],
4621 "source_info" : {
4622 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004623 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004624 "column" : 8,
4625 "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
4626 }
4627 },
4628 {
4629 "op" : "assign",
4630 "parameters" : [
4631 {
4632 "type" : "field",
4633 "value" : ["int_header", "instruction_mask_0811"]
4634 },
4635 {
4636 "type" : "hexstr",
4637 "value" : "0x00"
4638 }
4639 ],
4640 "source_info" : {
4641 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004642 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004643 "column" : 8,
4644 "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
4645 }
4646 },
4647 {
4648 "op" : "assign",
4649 "parameters" : [
4650 {
4651 "type" : "field",
4652 "value" : ["int_header", "instruction_mask_1215"]
4653 },
4654 {
4655 "type" : "hexstr",
4656 "value" : "0x00"
4657 }
4658 ],
4659 "source_info" : {
4660 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004661 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004662 "column" : 8,
4663 "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
4664 }
4665 },
4666 {
4667 "op" : "add_header",
4668 "parameters" : [
4669 {
4670 "type" : "header",
4671 "value" : "intl4_tail"
4672 }
4673 ],
4674 "source_info" : {
4675 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004676 "line" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004677 "column" : 8,
4678 "source_fragment" : "hdr.intl4_tail.setValid()"
4679 }
4680 },
4681 {
4682 "op" : "assign",
4683 "parameters" : [
4684 {
4685 "type" : "field",
4686 "value" : ["intl4_tail", "next_proto"]
4687 },
4688 {
4689 "type" : "field",
4690 "value" : ["ipv4", "protocol"]
4691 }
4692 ],
4693 "source_info" : {
4694 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004695 "line" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004696 "column" : 8,
4697 "source_fragment" : "hdr.intl4_tail.next_proto = hdr.ipv4.protocol"
4698 }
4699 },
4700 {
4701 "op" : "assign",
4702 "parameters" : [
4703 {
4704 "type" : "field",
4705 "value" : ["intl4_tail", "dest_port"]
4706 },
4707 {
4708 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004709 "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004710 }
4711 ],
4712 "source_info" : {
4713 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004714 "line" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004715 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004716 "source_fragment" : "hdr.intl4_tail.dest_port = fabric_metadata.l4_dport; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004717 }
4718 },
4719 {
4720 "op" : "assign",
4721 "parameters" : [
4722 {
4723 "type" : "field",
4724 "value" : ["intl4_tail", "dscp"]
4725 },
4726 {
4727 "type" : "field",
4728 "value" : ["ipv4", "dscp"]
4729 }
4730 ],
4731 "source_info" : {
4732 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004733 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004734 "column" : 8,
4735 "source_fragment" : "hdr.intl4_tail.dscp = hdr.ipv4.dscp"
4736 }
4737 },
4738 {
4739 "op" : "assign",
4740 "parameters" : [
4741 {
4742 "type" : "field",
4743 "value" : ["ipv4", "total_len"]
4744 },
4745 {
4746 "type" : "expression",
4747 "value" : {
4748 "type" : "expression",
4749 "value" : {
4750 "op" : "&",
4751 "left" : {
4752 "type" : "expression",
4753 "value" : {
4754 "op" : "+",
4755 "left" : {
4756 "type" : "field",
4757 "value" : ["ipv4", "total_len"]
4758 },
4759 "right" : {
4760 "type" : "hexstr",
4761 "value" : "0x0010"
4762 }
4763 }
4764 },
4765 "right" : {
4766 "type" : "hexstr",
4767 "value" : "0xffff"
4768 }
4769 }
4770 }
4771 }
4772 ],
4773 "source_info" : {
4774 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004775 "line" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004776 "column" : 8,
4777 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + INT_HEADER_LEN_BYTES"
4778 }
4779 },
4780 {
4781 "op" : "assign",
4782 "parameters" : [
4783 {
4784 "type" : "field",
4785 "value" : ["udp", "len"]
4786 },
4787 {
4788 "type" : "expression",
4789 "value" : {
4790 "type" : "expression",
4791 "value" : {
4792 "op" : "&",
4793 "left" : {
4794 "type" : "expression",
4795 "value" : {
4796 "op" : "+",
4797 "left" : {
4798 "type" : "field",
4799 "value" : ["udp", "len"]
4800 },
4801 "right" : {
4802 "type" : "hexstr",
4803 "value" : "0x0010"
4804 }
4805 }
4806 },
4807 "right" : {
4808 "type" : "hexstr",
4809 "value" : "0xffff"
4810 }
4811 }
4812 }
4813 }
4814 ],
4815 "source_info" : {
4816 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004817 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004818 "column" : 8,
4819 "source_fragment" : "hdr.udp.len = hdr.udp.len + INT_HEADER_LEN_BYTES"
4820 }
4821 },
4822 {
4823 "op" : "assign",
4824 "parameters" : [
4825 {
4826 "type" : "field",
4827 "value" : ["ipv4", "dscp"]
4828 },
4829 {
4830 "type" : "hexstr",
4831 "value" : "0x01"
4832 }
4833 ],
4834 "source_info" : {
4835 "filename" : "include/control/../define.p4",
Daniele Moroe22b5742019-06-28 15:32:37 -07004836 "line" : 149,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004837 "column" : 24,
4838 "source_fragment" : "0x1; ..."
4839 }
4840 }
4841 ]
4842 },
4843 {
4844 "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004845 "id" : 64,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004846 "runtime_data" : [
4847 {
4848 "name" : "switch_id",
4849 "bitwidth" : 32
4850 }
4851 ],
4852 "primitives" : [
4853 {
4854 "op" : "assign",
4855 "parameters" : [
4856 {
4857 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004858 "value" : ["scalars", "fabric_metadata_t._int_meta_transit25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004859 },
4860 {
4861 "type" : "expression",
4862 "value" : {
4863 "type" : "expression",
4864 "value" : {
4865 "op" : "b2d",
4866 "left" : null,
4867 "right" : {
4868 "type" : "bool",
4869 "value" : true
4870 }
4871 }
4872 }
4873 }
4874 ],
4875 "source_info" : {
4876 "filename" : "include/int/int_transit.p4",
4877 "line" : 26,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004878 "column" : 31,
4879 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004880 }
4881 },
4882 {
4883 "op" : "assign",
4884 "parameters" : [
4885 {
4886 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004887 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004888 },
4889 {
4890 "type" : "runtime_data",
4891 "value" : 0
4892 }
4893 ],
4894 "source_info" : {
4895 "filename" : "include/int/int_transit.p4",
4896 "line" : 31,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004897 "column" : 33,
4898 "source_fragment" : "= switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004899 }
4900 }
4901 ]
4902 },
4903 {
4904 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004905 "id" : 65,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004906 "runtime_data" : [],
4907 "primitives" : []
4908 },
4909 {
4910 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004911 "id" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004912 "runtime_data" : [],
4913 "primitives" : [
4914 {
4915 "op" : "add_header",
4916 "parameters" : [
4917 {
4918 "type" : "header",
4919 "value" : "int_q_occupancy"
4920 }
4921 ],
4922 "source_info" : {
4923 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004924 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004925 "column" : 8,
4926 "source_fragment" : "hdr.int_q_occupancy.setValid()"
4927 }
4928 },
4929 {
4930 "op" : "assign",
4931 "parameters" : [
4932 {
4933 "type" : "field",
4934 "value" : ["int_q_occupancy", "q_id"]
4935 },
4936 {
4937 "type" : "hexstr",
4938 "value" : "0x00"
4939 }
4940 ],
4941 "source_info" : {
4942 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004943 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004944 "column" : 8,
4945 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
4946 }
4947 },
4948 {
4949 "op" : "assign",
4950 "parameters" : [
4951 {
4952 "type" : "field",
4953 "value" : ["int_q_occupancy", "q_occupancy"]
4954 },
4955 {
4956 "type" : "expression",
4957 "value" : {
4958 "type" : "expression",
4959 "value" : {
4960 "op" : "&",
4961 "left" : {
4962 "type" : "field",
4963 "value" : ["standard_metadata", "deq_qdepth"]
4964 },
4965 "right" : {
4966 "type" : "hexstr",
4967 "value" : "0xffffff"
4968 }
4969 }
4970 }
4971 }
4972 ],
4973 "source_info" : {
4974 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004975 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004976 "column" : 8,
4977 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
4978 }
4979 },
4980 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004981 "op" : "assign",
4982 "parameters" : [
4983 {
4984 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004985 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004986 },
4987 {
4988 "type" : "expression",
4989 "value" : {
4990 "type" : "expression",
4991 "value" : {
4992 "op" : "&",
4993 "left" : {
4994 "type" : "expression",
4995 "value" : {
4996 "op" : "+",
4997 "left" : {
4998 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004999 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005000 },
5001 "right" : {
5002 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005003 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005004 }
5005 }
5006 },
5007 "right" : {
5008 "type" : "hexstr",
5009 "value" : "0xff"
5010 }
5011 }
5012 }
5013 }
5014 ],
5015 "source_info" : {
5016 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005017 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005018 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07005019 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005020 }
5021 },
5022 {
5023 "op" : "assign",
5024 "parameters" : [
5025 {
5026 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005027 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005028 },
5029 {
5030 "type" : "expression",
5031 "value" : {
5032 "type" : "expression",
5033 "value" : {
5034 "op" : "&",
5035 "left" : {
5036 "type" : "expression",
5037 "value" : {
5038 "op" : "+",
5039 "left" : {
5040 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005041 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005042 },
5043 "right" : {
5044 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005045 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005046 }
5047 }
5048 },
5049 "right" : {
5050 "type" : "hexstr",
5051 "value" : "0xffff"
5052 }
5053 }
5054 }
5055 }
5056 ],
5057 "source_info" : {
5058 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005059 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005060 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07005061 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005062 }
5063 }
5064 ]
5065 },
5066 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07005067 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005068 "id" : 67,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005069 "runtime_data" : [],
5070 "primitives" : [
5071 {
5072 "op" : "add_header",
5073 "parameters" : [
5074 {
5075 "type" : "header",
5076 "value" : "int_hop_latency"
5077 }
5078 ],
5079 "source_info" : {
5080 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005081 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005082 "column" : 8,
5083 "source_fragment" : "hdr.int_hop_latency.setValid()"
5084 }
5085 },
5086 {
5087 "op" : "assign",
5088 "parameters" : [
5089 {
5090 "type" : "field",
5091 "value" : ["int_hop_latency", "hop_latency"]
5092 },
5093 {
5094 "type" : "field",
5095 "value" : ["standard_metadata", "deq_timedelta"]
5096 }
5097 ],
5098 "source_info" : {
5099 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005100 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005101 "column" : 8,
5102 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5103 }
5104 },
5105 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005106 "op" : "assign",
5107 "parameters" : [
5108 {
5109 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005110 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005111 },
5112 {
5113 "type" : "expression",
5114 "value" : {
5115 "type" : "expression",
5116 "value" : {
5117 "op" : "&",
5118 "left" : {
5119 "type" : "expression",
5120 "value" : {
5121 "op" : "+",
5122 "left" : {
5123 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005124 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005125 },
5126 "right" : {
5127 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005128 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005129 }
5130 }
5131 },
5132 "right" : {
5133 "type" : "hexstr",
5134 "value" : "0xff"
5135 }
5136 }
5137 }
5138 }
5139 ],
5140 "source_info" : {
5141 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005142 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005143 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07005144 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005145 }
5146 },
5147 {
5148 "op" : "assign",
5149 "parameters" : [
5150 {
5151 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005152 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005153 },
5154 {
5155 "type" : "expression",
5156 "value" : {
5157 "type" : "expression",
5158 "value" : {
5159 "op" : "&",
5160 "left" : {
5161 "type" : "expression",
5162 "value" : {
5163 "op" : "+",
5164 "left" : {
5165 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005166 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005167 },
5168 "right" : {
5169 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005170 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005171 }
5172 }
5173 },
5174 "right" : {
5175 "type" : "hexstr",
5176 "value" : "0xffff"
5177 }
5178 }
5179 }
5180 }
5181 ],
5182 "source_info" : {
5183 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005184 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005185 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07005186 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005187 }
5188 }
5189 ]
5190 },
5191 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07005192 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005193 "id" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005194 "runtime_data" : [],
5195 "primitives" : [
5196 {
5197 "op" : "add_header",
5198 "parameters" : [
5199 {
5200 "type" : "header",
5201 "value" : "int_q_occupancy"
5202 }
5203 ],
5204 "source_info" : {
5205 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005206 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005207 "column" : 8,
5208 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5209 }
5210 },
5211 {
5212 "op" : "assign",
5213 "parameters" : [
5214 {
5215 "type" : "field",
5216 "value" : ["int_q_occupancy", "q_id"]
5217 },
5218 {
5219 "type" : "hexstr",
5220 "value" : "0x00"
5221 }
5222 ],
5223 "source_info" : {
5224 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005225 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005226 "column" : 8,
5227 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5228 }
5229 },
5230 {
5231 "op" : "assign",
5232 "parameters" : [
5233 {
5234 "type" : "field",
5235 "value" : ["int_q_occupancy", "q_occupancy"]
5236 },
5237 {
5238 "type" : "expression",
5239 "value" : {
5240 "type" : "expression",
5241 "value" : {
5242 "op" : "&",
5243 "left" : {
5244 "type" : "field",
5245 "value" : ["standard_metadata", "deq_qdepth"]
5246 },
5247 "right" : {
5248 "type" : "hexstr",
5249 "value" : "0xffffff"
5250 }
5251 }
5252 }
5253 }
5254 ],
5255 "source_info" : {
5256 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005257 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005258 "column" : 8,
5259 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5260 }
5261 },
5262 {
5263 "op" : "add_header",
5264 "parameters" : [
5265 {
5266 "type" : "header",
5267 "value" : "int_hop_latency"
5268 }
5269 ],
5270 "source_info" : {
5271 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005272 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005273 "column" : 8,
5274 "source_fragment" : "hdr.int_hop_latency.setValid()"
5275 }
5276 },
5277 {
5278 "op" : "assign",
5279 "parameters" : [
5280 {
5281 "type" : "field",
5282 "value" : ["int_hop_latency", "hop_latency"]
5283 },
5284 {
5285 "type" : "field",
5286 "value" : ["standard_metadata", "deq_timedelta"]
5287 }
5288 ],
5289 "source_info" : {
5290 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005291 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005292 "column" : 8,
5293 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5294 }
5295 },
5296 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07005297 "op" : "assign",
5298 "parameters" : [
5299 {
5300 "type" : "field",
5301 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
5302 },
5303 {
5304 "type" : "expression",
5305 "value" : {
5306 "type" : "expression",
5307 "value" : {
5308 "op" : "&",
5309 "left" : {
5310 "type" : "expression",
5311 "value" : {
5312 "op" : "+",
5313 "left" : {
5314 "type" : "field",
5315 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
5316 },
5317 "right" : {
5318 "type" : "hexstr",
5319 "value" : "0x02"
5320 }
5321 }
5322 },
5323 "right" : {
5324 "type" : "hexstr",
5325 "value" : "0xff"
5326 }
5327 }
5328 }
5329 }
5330 ],
5331 "source_info" : {
5332 "filename" : "include/int/int_transit.p4",
5333 "line" : 103,
5334 "column" : 33,
5335 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
5336 }
5337 },
5338 {
5339 "op" : "assign",
5340 "parameters" : [
5341 {
5342 "type" : "field",
5343 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
5344 },
5345 {
5346 "type" : "expression",
5347 "value" : {
5348 "type" : "expression",
5349 "value" : {
5350 "op" : "&",
5351 "left" : {
5352 "type" : "expression",
5353 "value" : {
5354 "op" : "+",
5355 "left" : {
5356 "type" : "field",
5357 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
5358 },
5359 "right" : {
5360 "type" : "hexstr",
5361 "value" : "0x0008"
5362 }
5363 }
5364 },
5365 "right" : {
5366 "type" : "hexstr",
5367 "value" : "0xffff"
5368 }
5369 }
5370 }
5371 }
5372 ],
5373 "source_info" : {
5374 "filename" : "include/int/int_transit.p4",
5375 "line" : 104,
5376 "column" : 33,
5377 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
5378 }
5379 }
5380 ]
5381 },
5382 {
5383 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
5384 "id" : 69,
5385 "runtime_data" : [],
5386 "primitives" : [
5387 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005388 "op" : "add_header",
5389 "parameters" : [
5390 {
5391 "type" : "header",
5392 "value" : "int_port_ids"
5393 }
5394 ],
5395 "source_info" : {
5396 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005397 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005398 "column" : 8,
5399 "source_fragment" : "hdr.int_port_ids.setValid()"
5400 }
5401 },
5402 {
5403 "op" : "assign",
5404 "parameters" : [
5405 {
5406 "type" : "field",
5407 "value" : ["int_port_ids", "ingress_port_id"]
5408 },
5409 {
5410 "type" : "expression",
5411 "value" : {
5412 "type" : "expression",
5413 "value" : {
5414 "op" : "&",
5415 "left" : {
5416 "type" : "field",
5417 "value" : ["standard_metadata", "ingress_port"]
5418 },
5419 "right" : {
5420 "type" : "hexstr",
5421 "value" : "0xffff"
5422 }
5423 }
5424 }
5425 }
5426 ],
5427 "source_info" : {
5428 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005429 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005430 "column" : 8,
5431 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5432 }
5433 },
5434 {
5435 "op" : "assign",
5436 "parameters" : [
5437 {
5438 "type" : "field",
5439 "value" : ["int_port_ids", "egress_port_id"]
5440 },
5441 {
5442 "type" : "expression",
5443 "value" : {
5444 "type" : "expression",
5445 "value" : {
5446 "op" : "&",
5447 "left" : {
5448 "type" : "field",
5449 "value" : ["standard_metadata", "egress_port"]
5450 },
5451 "right" : {
5452 "type" : "hexstr",
5453 "value" : "0xffff"
5454 }
5455 }
5456 }
5457 }
5458 ],
5459 "source_info" : {
5460 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005461 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005462 "column" : 8,
5463 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5464 }
5465 },
5466 {
5467 "op" : "assign",
5468 "parameters" : [
5469 {
5470 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005471 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005472 },
5473 {
5474 "type" : "expression",
5475 "value" : {
5476 "type" : "expression",
5477 "value" : {
5478 "op" : "&",
5479 "left" : {
5480 "type" : "expression",
5481 "value" : {
5482 "op" : "+",
5483 "left" : {
5484 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005485 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005486 },
5487 "right" : {
5488 "type" : "hexstr",
5489 "value" : "0x01"
5490 }
5491 }
5492 },
5493 "right" : {
5494 "type" : "hexstr",
5495 "value" : "0xff"
5496 }
5497 }
5498 }
5499 }
5500 ],
5501 "source_info" : {
5502 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005503 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005504 "column" : 33,
5505 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005506 }
5507 },
5508 {
5509 "op" : "assign",
5510 "parameters" : [
5511 {
5512 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005513 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005514 },
5515 {
5516 "type" : "expression",
5517 "value" : {
5518 "type" : "expression",
5519 "value" : {
5520 "op" : "&",
5521 "left" : {
5522 "type" : "expression",
5523 "value" : {
5524 "op" : "+",
5525 "left" : {
5526 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005527 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005528 },
5529 "right" : {
5530 "type" : "hexstr",
5531 "value" : "0x0004"
5532 }
5533 }
5534 },
5535 "right" : {
5536 "type" : "hexstr",
5537 "value" : "0xffff"
5538 }
5539 }
5540 }
5541 }
5542 ],
5543 "source_info" : {
5544 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005545 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005546 "column" : 33,
5547 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005548 }
5549 }
5550 ]
5551 },
5552 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07005553 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005554 "id" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005555 "runtime_data" : [],
5556 "primitives" : [
5557 {
5558 "op" : "add_header",
5559 "parameters" : [
5560 {
5561 "type" : "header",
5562 "value" : "int_q_occupancy"
5563 }
5564 ],
5565 "source_info" : {
5566 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005567 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005568 "column" : 8,
5569 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5570 }
5571 },
5572 {
5573 "op" : "assign",
5574 "parameters" : [
5575 {
5576 "type" : "field",
5577 "value" : ["int_q_occupancy", "q_id"]
5578 },
5579 {
5580 "type" : "hexstr",
5581 "value" : "0x00"
5582 }
5583 ],
5584 "source_info" : {
5585 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005586 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005587 "column" : 8,
5588 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5589 }
5590 },
5591 {
5592 "op" : "assign",
5593 "parameters" : [
5594 {
5595 "type" : "field",
5596 "value" : ["int_q_occupancy", "q_occupancy"]
5597 },
5598 {
5599 "type" : "expression",
5600 "value" : {
5601 "type" : "expression",
5602 "value" : {
5603 "op" : "&",
5604 "left" : {
5605 "type" : "field",
5606 "value" : ["standard_metadata", "deq_qdepth"]
5607 },
5608 "right" : {
5609 "type" : "hexstr",
5610 "value" : "0xffffff"
5611 }
5612 }
5613 }
5614 }
5615 ],
5616 "source_info" : {
5617 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005618 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005619 "column" : 8,
5620 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5621 }
5622 },
5623 {
5624 "op" : "add_header",
5625 "parameters" : [
5626 {
5627 "type" : "header",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005628 "value" : "int_port_ids"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005629 }
5630 ],
5631 "source_info" : {
5632 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005633 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005634 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -07005635 "source_fragment" : "hdr.int_port_ids.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005636 }
5637 },
5638 {
5639 "op" : "assign",
5640 "parameters" : [
5641 {
5642 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005643 "value" : ["int_port_ids", "ingress_port_id"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005644 },
5645 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07005646 "type" : "expression",
5647 "value" : {
5648 "type" : "expression",
5649 "value" : {
5650 "op" : "&",
5651 "left" : {
5652 "type" : "field",
5653 "value" : ["standard_metadata", "ingress_port"]
5654 },
5655 "right" : {
5656 "type" : "hexstr",
5657 "value" : "0xffff"
5658 }
5659 }
5660 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005661 }
5662 ],
5663 "source_info" : {
5664 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005665 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005666 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -07005667 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005668 }
5669 },
5670 {
5671 "op" : "assign",
5672 "parameters" : [
5673 {
5674 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005675 "value" : ["int_port_ids", "egress_port_id"]
5676 },
5677 {
5678 "type" : "expression",
5679 "value" : {
5680 "type" : "expression",
5681 "value" : {
5682 "op" : "&",
5683 "left" : {
5684 "type" : "field",
5685 "value" : ["standard_metadata", "egress_port"]
5686 },
5687 "right" : {
5688 "type" : "hexstr",
5689 "value" : "0xffff"
5690 }
5691 }
5692 }
5693 }
5694 ],
5695 "source_info" : {
5696 "filename" : "include/int/int_transit.p4",
5697 "line" : 49,
5698 "column" : 8,
5699 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5700 }
5701 },
5702 {
5703 "op" : "assign",
5704 "parameters" : [
5705 {
5706 "type" : "field",
5707 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005708 },
5709 {
5710 "type" : "expression",
5711 "value" : {
5712 "type" : "expression",
5713 "value" : {
5714 "op" : "&",
5715 "left" : {
5716 "type" : "expression",
5717 "value" : {
5718 "op" : "+",
5719 "left" : {
5720 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005721 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005722 },
5723 "right" : {
5724 "type" : "hexstr",
5725 "value" : "0x02"
5726 }
5727 }
5728 },
5729 "right" : {
5730 "type" : "hexstr",
5731 "value" : "0xff"
5732 }
5733 }
5734 }
5735 }
5736 ],
5737 "source_info" : {
5738 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005739 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005740 "column" : 33,
5741 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005742 }
5743 },
5744 {
5745 "op" : "assign",
5746 "parameters" : [
5747 {
5748 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005749 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005750 },
5751 {
5752 "type" : "expression",
5753 "value" : {
5754 "type" : "expression",
5755 "value" : {
5756 "op" : "&",
5757 "left" : {
5758 "type" : "expression",
5759 "value" : {
5760 "op" : "+",
5761 "left" : {
5762 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005763 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005764 },
5765 "right" : {
5766 "type" : "hexstr",
5767 "value" : "0x0008"
5768 }
5769 }
5770 },
5771 "right" : {
5772 "type" : "hexstr",
5773 "value" : "0xffff"
5774 }
5775 }
5776 }
5777 }
5778 ],
5779 "source_info" : {
5780 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005781 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005782 "column" : 33,
5783 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005784 }
5785 }
5786 ]
5787 },
5788 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07005789 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005790 "id" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005791 "runtime_data" : [],
5792 "primitives" : [
5793 {
5794 "op" : "add_header",
5795 "parameters" : [
5796 {
5797 "type" : "header",
5798 "value" : "int_hop_latency"
5799 }
5800 ],
5801 "source_info" : {
5802 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005803 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005804 "column" : 8,
5805 "source_fragment" : "hdr.int_hop_latency.setValid()"
5806 }
5807 },
5808 {
5809 "op" : "assign",
5810 "parameters" : [
5811 {
5812 "type" : "field",
5813 "value" : ["int_hop_latency", "hop_latency"]
5814 },
5815 {
5816 "type" : "field",
5817 "value" : ["standard_metadata", "deq_timedelta"]
5818 }
5819 ],
5820 "source_info" : {
5821 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005822 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005823 "column" : 8,
5824 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5825 }
5826 },
5827 {
5828 "op" : "add_header",
5829 "parameters" : [
5830 {
5831 "type" : "header",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005832 "value" : "int_port_ids"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005833 }
5834 ],
5835 "source_info" : {
5836 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005837 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005838 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -07005839 "source_fragment" : "hdr.int_port_ids.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005840 }
5841 },
5842 {
5843 "op" : "assign",
5844 "parameters" : [
5845 {
5846 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005847 "value" : ["int_port_ids", "ingress_port_id"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005848 },
5849 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07005850 "type" : "expression",
5851 "value" : {
5852 "type" : "expression",
5853 "value" : {
5854 "op" : "&",
5855 "left" : {
5856 "type" : "field",
5857 "value" : ["standard_metadata", "ingress_port"]
5858 },
5859 "right" : {
5860 "type" : "hexstr",
5861 "value" : "0xffff"
5862 }
5863 }
5864 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005865 }
5866 ],
5867 "source_info" : {
5868 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005869 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005870 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -07005871 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005872 }
5873 },
5874 {
5875 "op" : "assign",
5876 "parameters" : [
5877 {
5878 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005879 "value" : ["int_port_ids", "egress_port_id"]
5880 },
5881 {
5882 "type" : "expression",
5883 "value" : {
5884 "type" : "expression",
5885 "value" : {
5886 "op" : "&",
5887 "left" : {
5888 "type" : "field",
5889 "value" : ["standard_metadata", "egress_port"]
5890 },
5891 "right" : {
5892 "type" : "hexstr",
5893 "value" : "0xffff"
5894 }
5895 }
5896 }
5897 }
5898 ],
5899 "source_info" : {
5900 "filename" : "include/int/int_transit.p4",
5901 "line" : 49,
5902 "column" : 8,
5903 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5904 }
5905 },
5906 {
5907 "op" : "assign",
5908 "parameters" : [
5909 {
5910 "type" : "field",
5911 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005912 },
5913 {
5914 "type" : "expression",
5915 "value" : {
5916 "type" : "expression",
5917 "value" : {
5918 "op" : "&",
5919 "left" : {
5920 "type" : "expression",
5921 "value" : {
5922 "op" : "+",
5923 "left" : {
5924 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005925 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005926 },
5927 "right" : {
5928 "type" : "hexstr",
5929 "value" : "0x02"
5930 }
5931 }
5932 },
5933 "right" : {
5934 "type" : "hexstr",
5935 "value" : "0xff"
5936 }
5937 }
5938 }
5939 }
5940 ],
5941 "source_info" : {
5942 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005943 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005944 "column" : 33,
5945 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005946 }
5947 },
5948 {
5949 "op" : "assign",
5950 "parameters" : [
5951 {
5952 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005953 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005954 },
5955 {
5956 "type" : "expression",
5957 "value" : {
5958 "type" : "expression",
5959 "value" : {
5960 "op" : "&",
5961 "left" : {
5962 "type" : "expression",
5963 "value" : {
5964 "op" : "+",
5965 "left" : {
5966 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005967 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005968 },
5969 "right" : {
5970 "type" : "hexstr",
5971 "value" : "0x0008"
5972 }
5973 }
5974 },
5975 "right" : {
5976 "type" : "hexstr",
5977 "value" : "0xffff"
5978 }
5979 }
5980 }
5981 }
5982 ],
5983 "source_info" : {
5984 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005985 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005986 "column" : 33,
5987 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005988 }
5989 }
5990 ]
5991 },
5992 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07005993 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005994 "id" : 72,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005995 "runtime_data" : [],
5996 "primitives" : [
5997 {
5998 "op" : "add_header",
5999 "parameters" : [
6000 {
6001 "type" : "header",
6002 "value" : "int_q_occupancy"
6003 }
6004 ],
6005 "source_info" : {
6006 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006007 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006008 "column" : 8,
6009 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6010 }
6011 },
6012 {
6013 "op" : "assign",
6014 "parameters" : [
6015 {
6016 "type" : "field",
6017 "value" : ["int_q_occupancy", "q_id"]
6018 },
6019 {
6020 "type" : "hexstr",
6021 "value" : "0x00"
6022 }
6023 ],
6024 "source_info" : {
6025 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006026 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006027 "column" : 8,
6028 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6029 }
6030 },
6031 {
6032 "op" : "assign",
6033 "parameters" : [
6034 {
6035 "type" : "field",
6036 "value" : ["int_q_occupancy", "q_occupancy"]
6037 },
6038 {
6039 "type" : "expression",
6040 "value" : {
6041 "type" : "expression",
6042 "value" : {
6043 "op" : "&",
6044 "left" : {
6045 "type" : "field",
6046 "value" : ["standard_metadata", "deq_qdepth"]
6047 },
6048 "right" : {
6049 "type" : "hexstr",
6050 "value" : "0xffffff"
6051 }
6052 }
6053 }
6054 }
6055 ],
6056 "source_info" : {
6057 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006058 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006059 "column" : 8,
6060 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6061 }
6062 },
6063 {
6064 "op" : "add_header",
6065 "parameters" : [
6066 {
6067 "type" : "header",
6068 "value" : "int_hop_latency"
6069 }
6070 ],
6071 "source_info" : {
6072 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006073 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006074 "column" : 8,
6075 "source_fragment" : "hdr.int_hop_latency.setValid()"
6076 }
6077 },
6078 {
6079 "op" : "assign",
6080 "parameters" : [
6081 {
6082 "type" : "field",
6083 "value" : ["int_hop_latency", "hop_latency"]
6084 },
6085 {
6086 "type" : "field",
6087 "value" : ["standard_metadata", "deq_timedelta"]
6088 }
6089 ],
6090 "source_info" : {
6091 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006092 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006093 "column" : 8,
6094 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6095 }
6096 },
6097 {
6098 "op" : "add_header",
6099 "parameters" : [
6100 {
6101 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006102 "value" : "int_port_ids"
6103 }
6104 ],
6105 "source_info" : {
6106 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006107 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006108 "column" : 8,
6109 "source_fragment" : "hdr.int_port_ids.setValid()"
6110 }
6111 },
6112 {
6113 "op" : "assign",
6114 "parameters" : [
6115 {
6116 "type" : "field",
6117 "value" : ["int_port_ids", "ingress_port_id"]
6118 },
6119 {
6120 "type" : "expression",
6121 "value" : {
6122 "type" : "expression",
6123 "value" : {
6124 "op" : "&",
6125 "left" : {
6126 "type" : "field",
6127 "value" : ["standard_metadata", "ingress_port"]
6128 },
6129 "right" : {
6130 "type" : "hexstr",
6131 "value" : "0xffff"
6132 }
6133 }
6134 }
6135 }
6136 ],
6137 "source_info" : {
6138 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006139 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006140 "column" : 8,
6141 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6142 }
6143 },
6144 {
6145 "op" : "assign",
6146 "parameters" : [
6147 {
6148 "type" : "field",
6149 "value" : ["int_port_ids", "egress_port_id"]
6150 },
6151 {
6152 "type" : "expression",
6153 "value" : {
6154 "type" : "expression",
6155 "value" : {
6156 "op" : "&",
6157 "left" : {
6158 "type" : "field",
6159 "value" : ["standard_metadata", "egress_port"]
6160 },
6161 "right" : {
6162 "type" : "hexstr",
6163 "value" : "0xffff"
6164 }
6165 }
6166 }
6167 }
6168 ],
6169 "source_info" : {
6170 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006171 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006172 "column" : 8,
6173 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6174 }
6175 },
6176 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07006177 "op" : "assign",
6178 "parameters" : [
6179 {
6180 "type" : "field",
6181 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
6182 },
6183 {
6184 "type" : "expression",
6185 "value" : {
6186 "type" : "expression",
6187 "value" : {
6188 "op" : "&",
6189 "left" : {
6190 "type" : "expression",
6191 "value" : {
6192 "op" : "+",
6193 "left" : {
6194 "type" : "field",
6195 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
6196 },
6197 "right" : {
6198 "type" : "hexstr",
6199 "value" : "0x03"
6200 }
6201 }
6202 },
6203 "right" : {
6204 "type" : "hexstr",
6205 "value" : "0xff"
6206 }
6207 }
6208 }
6209 }
6210 ],
6211 "source_info" : {
6212 "filename" : "include/int/int_transit.p4",
6213 "line" : 109,
6214 "column" : 33,
6215 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
6216 }
6217 },
6218 {
6219 "op" : "assign",
6220 "parameters" : [
6221 {
6222 "type" : "field",
6223 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
6224 },
6225 {
6226 "type" : "expression",
6227 "value" : {
6228 "type" : "expression",
6229 "value" : {
6230 "op" : "&",
6231 "left" : {
6232 "type" : "expression",
6233 "value" : {
6234 "op" : "+",
6235 "left" : {
6236 "type" : "field",
6237 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
6238 },
6239 "right" : {
6240 "type" : "hexstr",
6241 "value" : "0x000c"
6242 }
6243 }
6244 },
6245 "right" : {
6246 "type" : "hexstr",
6247 "value" : "0xffff"
6248 }
6249 }
6250 }
6251 }
6252 ],
6253 "source_info" : {
6254 "filename" : "include/int/int_transit.p4",
6255 "line" : 110,
6256 "column" : 33,
6257 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
6258 }
6259 }
6260 ]
6261 },
6262 {
6263 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
6264 "id" : 73,
6265 "runtime_data" : [],
6266 "primitives" : [
6267 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006268 "op" : "add_header",
6269 "parameters" : [
6270 {
6271 "type" : "header",
6272 "value" : "int_switch_id"
6273 }
6274 ],
6275 "source_info" : {
6276 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006277 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006278 "column" : 8,
6279 "source_fragment" : "hdr.int_switch_id.setValid()"
6280 }
6281 },
6282 {
6283 "op" : "assign",
6284 "parameters" : [
6285 {
6286 "type" : "field",
6287 "value" : ["int_switch_id", "switch_id"]
6288 },
6289 {
6290 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006291 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006292 }
6293 ],
6294 "source_info" : {
6295 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006296 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006297 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006298 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006299 }
6300 },
6301 {
6302 "op" : "assign",
6303 "parameters" : [
6304 {
6305 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006306 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006307 },
6308 {
6309 "type" : "expression",
6310 "value" : {
6311 "type" : "expression",
6312 "value" : {
6313 "op" : "&",
6314 "left" : {
6315 "type" : "expression",
6316 "value" : {
6317 "op" : "+",
6318 "left" : {
6319 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006320 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006321 },
6322 "right" : {
6323 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006324 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006325 }
6326 }
6327 },
6328 "right" : {
6329 "type" : "hexstr",
6330 "value" : "0xff"
6331 }
6332 }
6333 }
6334 }
6335 ],
6336 "source_info" : {
6337 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006338 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006339 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07006340 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006341 }
6342 },
6343 {
6344 "op" : "assign",
6345 "parameters" : [
6346 {
6347 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006348 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006349 },
6350 {
6351 "type" : "expression",
6352 "value" : {
6353 "type" : "expression",
6354 "value" : {
6355 "op" : "&",
6356 "left" : {
6357 "type" : "expression",
6358 "value" : {
6359 "op" : "+",
6360 "left" : {
6361 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006362 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006363 },
6364 "right" : {
6365 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006366 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006367 }
6368 }
6369 },
6370 "right" : {
6371 "type" : "hexstr",
6372 "value" : "0xffff"
6373 }
6374 }
6375 }
6376 }
6377 ],
6378 "source_info" : {
6379 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006380 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006381 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07006382 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006383 }
6384 }
6385 ]
6386 },
6387 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07006388 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006389 "id" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006390 "runtime_data" : [],
6391 "primitives" : [
6392 {
6393 "op" : "add_header",
6394 "parameters" : [
6395 {
6396 "type" : "header",
6397 "value" : "int_q_occupancy"
6398 }
6399 ],
6400 "source_info" : {
6401 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006402 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006403 "column" : 8,
6404 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6405 }
6406 },
6407 {
6408 "op" : "assign",
6409 "parameters" : [
6410 {
6411 "type" : "field",
6412 "value" : ["int_q_occupancy", "q_id"]
6413 },
6414 {
6415 "type" : "hexstr",
6416 "value" : "0x00"
6417 }
6418 ],
6419 "source_info" : {
6420 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006421 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006422 "column" : 8,
6423 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6424 }
6425 },
6426 {
6427 "op" : "assign",
6428 "parameters" : [
6429 {
6430 "type" : "field",
6431 "value" : ["int_q_occupancy", "q_occupancy"]
6432 },
6433 {
6434 "type" : "expression",
6435 "value" : {
6436 "type" : "expression",
6437 "value" : {
6438 "op" : "&",
6439 "left" : {
6440 "type" : "field",
6441 "value" : ["standard_metadata", "deq_qdepth"]
6442 },
6443 "right" : {
6444 "type" : "hexstr",
6445 "value" : "0xffffff"
6446 }
6447 }
6448 }
6449 }
6450 ],
6451 "source_info" : {
6452 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006453 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006454 "column" : 8,
6455 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6456 }
6457 },
6458 {
6459 "op" : "add_header",
6460 "parameters" : [
6461 {
6462 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006463 "value" : "int_switch_id"
6464 }
6465 ],
6466 "source_info" : {
6467 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006468 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006469 "column" : 8,
6470 "source_fragment" : "hdr.int_switch_id.setValid()"
6471 }
6472 },
6473 {
6474 "op" : "assign",
6475 "parameters" : [
6476 {
6477 "type" : "field",
6478 "value" : ["int_switch_id", "switch_id"]
6479 },
6480 {
6481 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006482 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006483 }
6484 ],
6485 "source_info" : {
6486 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006487 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006488 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006489 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006490 }
6491 },
6492 {
6493 "op" : "assign",
6494 "parameters" : [
6495 {
6496 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006497 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006498 },
6499 {
6500 "type" : "expression",
6501 "value" : {
6502 "type" : "expression",
6503 "value" : {
6504 "op" : "&",
6505 "left" : {
6506 "type" : "expression",
6507 "value" : {
6508 "op" : "+",
6509 "left" : {
6510 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006511 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006512 },
6513 "right" : {
6514 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006515 "value" : "0x02"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006516 }
6517 }
6518 },
6519 "right" : {
6520 "type" : "hexstr",
6521 "value" : "0xff"
6522 }
6523 }
6524 }
6525 }
6526 ],
6527 "source_info" : {
6528 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006529 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006530 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07006531 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006532 }
6533 },
6534 {
6535 "op" : "assign",
6536 "parameters" : [
6537 {
6538 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006539 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006540 },
6541 {
6542 "type" : "expression",
6543 "value" : {
6544 "type" : "expression",
6545 "value" : {
6546 "op" : "&",
6547 "left" : {
6548 "type" : "expression",
6549 "value" : {
6550 "op" : "+",
6551 "left" : {
6552 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006553 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006554 },
6555 "right" : {
6556 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006557 "value" : "0x0008"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006558 }
6559 }
6560 },
6561 "right" : {
6562 "type" : "hexstr",
6563 "value" : "0xffff"
6564 }
6565 }
6566 }
6567 }
6568 ],
6569 "source_info" : {
6570 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006571 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006572 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07006573 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006574 }
6575 }
6576 ]
6577 },
6578 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07006579 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006580 "id" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006581 "runtime_data" : [],
6582 "primitives" : [
6583 {
6584 "op" : "add_header",
6585 "parameters" : [
6586 {
6587 "type" : "header",
6588 "value" : "int_hop_latency"
6589 }
6590 ],
6591 "source_info" : {
6592 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006593 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006594 "column" : 8,
6595 "source_fragment" : "hdr.int_hop_latency.setValid()"
6596 }
6597 },
6598 {
6599 "op" : "assign",
6600 "parameters" : [
6601 {
6602 "type" : "field",
6603 "value" : ["int_hop_latency", "hop_latency"]
6604 },
6605 {
6606 "type" : "field",
6607 "value" : ["standard_metadata", "deq_timedelta"]
6608 }
6609 ],
6610 "source_info" : {
6611 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006612 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006613 "column" : 8,
6614 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6615 }
6616 },
6617 {
6618 "op" : "add_header",
6619 "parameters" : [
6620 {
6621 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006622 "value" : "int_switch_id"
6623 }
6624 ],
6625 "source_info" : {
6626 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006627 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006628 "column" : 8,
6629 "source_fragment" : "hdr.int_switch_id.setValid()"
6630 }
6631 },
6632 {
6633 "op" : "assign",
6634 "parameters" : [
6635 {
6636 "type" : "field",
6637 "value" : ["int_switch_id", "switch_id"]
6638 },
6639 {
6640 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006641 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006642 }
6643 ],
6644 "source_info" : {
6645 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006646 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006647 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006648 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006649 }
6650 },
6651 {
6652 "op" : "assign",
6653 "parameters" : [
6654 {
6655 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006656 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006657 },
6658 {
6659 "type" : "expression",
6660 "value" : {
6661 "type" : "expression",
6662 "value" : {
6663 "op" : "&",
6664 "left" : {
6665 "type" : "expression",
6666 "value" : {
6667 "op" : "+",
6668 "left" : {
6669 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006670 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006671 },
6672 "right" : {
6673 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006674 "value" : "0x02"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006675 }
6676 }
6677 },
6678 "right" : {
6679 "type" : "hexstr",
6680 "value" : "0xff"
6681 }
6682 }
6683 }
6684 }
6685 ],
6686 "source_info" : {
6687 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006688 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006689 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07006690 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006691 }
6692 },
6693 {
6694 "op" : "assign",
6695 "parameters" : [
6696 {
6697 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006698 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006699 },
6700 {
6701 "type" : "expression",
6702 "value" : {
6703 "type" : "expression",
6704 "value" : {
6705 "op" : "&",
6706 "left" : {
6707 "type" : "expression",
6708 "value" : {
6709 "op" : "+",
6710 "left" : {
6711 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006712 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006713 },
6714 "right" : {
6715 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006716 "value" : "0x0008"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006717 }
6718 }
6719 },
6720 "right" : {
6721 "type" : "hexstr",
6722 "value" : "0xffff"
6723 }
6724 }
6725 }
6726 }
6727 ],
6728 "source_info" : {
6729 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006730 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006731 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07006732 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006733 }
6734 }
6735 ]
6736 },
6737 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07006738 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006739 "id" : 76,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006740 "runtime_data" : [],
6741 "primitives" : [
6742 {
6743 "op" : "add_header",
6744 "parameters" : [
6745 {
6746 "type" : "header",
6747 "value" : "int_q_occupancy"
6748 }
6749 ],
6750 "source_info" : {
6751 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006752 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006753 "column" : 8,
6754 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6755 }
6756 },
6757 {
6758 "op" : "assign",
6759 "parameters" : [
6760 {
6761 "type" : "field",
6762 "value" : ["int_q_occupancy", "q_id"]
6763 },
6764 {
6765 "type" : "hexstr",
6766 "value" : "0x00"
6767 }
6768 ],
6769 "source_info" : {
6770 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006771 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006772 "column" : 8,
6773 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6774 }
6775 },
6776 {
6777 "op" : "assign",
6778 "parameters" : [
6779 {
6780 "type" : "field",
6781 "value" : ["int_q_occupancy", "q_occupancy"]
6782 },
6783 {
6784 "type" : "expression",
6785 "value" : {
6786 "type" : "expression",
6787 "value" : {
6788 "op" : "&",
6789 "left" : {
6790 "type" : "field",
6791 "value" : ["standard_metadata", "deq_qdepth"]
6792 },
6793 "right" : {
6794 "type" : "hexstr",
6795 "value" : "0xffffff"
6796 }
6797 }
6798 }
6799 }
6800 ],
6801 "source_info" : {
6802 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006803 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006804 "column" : 8,
6805 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6806 }
6807 },
6808 {
6809 "op" : "add_header",
6810 "parameters" : [
6811 {
6812 "type" : "header",
6813 "value" : "int_hop_latency"
6814 }
6815 ],
6816 "source_info" : {
6817 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006818 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006819 "column" : 8,
6820 "source_fragment" : "hdr.int_hop_latency.setValid()"
6821 }
6822 },
6823 {
6824 "op" : "assign",
6825 "parameters" : [
6826 {
6827 "type" : "field",
6828 "value" : ["int_hop_latency", "hop_latency"]
6829 },
6830 {
6831 "type" : "field",
6832 "value" : ["standard_metadata", "deq_timedelta"]
6833 }
6834 ],
6835 "source_info" : {
6836 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006837 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006838 "column" : 8,
6839 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6840 }
6841 },
6842 {
6843 "op" : "add_header",
6844 "parameters" : [
6845 {
6846 "type" : "header",
Daniele Moro7c3a0022019-07-12 13:38:34 -07006847 "value" : "int_switch_id"
6848 }
6849 ],
6850 "source_info" : {
6851 "filename" : "include/int/int_transit.p4",
6852 "line" : 41,
6853 "column" : 8,
6854 "source_fragment" : "hdr.int_switch_id.setValid()"
6855 }
6856 },
6857 {
6858 "op" : "assign",
6859 "parameters" : [
6860 {
6861 "type" : "field",
6862 "value" : ["int_switch_id", "switch_id"]
6863 },
6864 {
6865 "type" : "field",
6866 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
6867 }
6868 ],
6869 "source_info" : {
6870 "filename" : "include/int/int_transit.p4",
6871 "line" : 42,
6872 "column" : 8,
6873 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
6874 }
6875 },
6876 {
6877 "op" : "assign",
6878 "parameters" : [
6879 {
6880 "type" : "field",
6881 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
6882 },
6883 {
6884 "type" : "expression",
6885 "value" : {
6886 "type" : "expression",
6887 "value" : {
6888 "op" : "&",
6889 "left" : {
6890 "type" : "expression",
6891 "value" : {
6892 "op" : "+",
6893 "left" : {
6894 "type" : "field",
6895 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
6896 },
6897 "right" : {
6898 "type" : "hexstr",
6899 "value" : "0x03"
6900 }
6901 }
6902 },
6903 "right" : {
6904 "type" : "hexstr",
6905 "value" : "0xff"
6906 }
6907 }
6908 }
6909 }
6910 ],
6911 "source_info" : {
6912 "filename" : "include/int/int_transit.p4",
6913 "line" : 109,
6914 "column" : 33,
6915 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
6916 }
6917 },
6918 {
6919 "op" : "assign",
6920 "parameters" : [
6921 {
6922 "type" : "field",
6923 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
6924 },
6925 {
6926 "type" : "expression",
6927 "value" : {
6928 "type" : "expression",
6929 "value" : {
6930 "op" : "&",
6931 "left" : {
6932 "type" : "expression",
6933 "value" : {
6934 "op" : "+",
6935 "left" : {
6936 "type" : "field",
6937 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
6938 },
6939 "right" : {
6940 "type" : "hexstr",
6941 "value" : "0x000c"
6942 }
6943 }
6944 },
6945 "right" : {
6946 "type" : "hexstr",
6947 "value" : "0xffff"
6948 }
6949 }
6950 }
6951 }
6952 ],
6953 "source_info" : {
6954 "filename" : "include/int/int_transit.p4",
6955 "line" : 110,
6956 "column" : 33,
6957 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
6958 }
6959 }
6960 ]
6961 },
6962 {
6963 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
6964 "id" : 77,
6965 "runtime_data" : [],
6966 "primitives" : [
6967 {
6968 "op" : "add_header",
6969 "parameters" : [
6970 {
6971 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006972 "value" : "int_port_ids"
6973 }
6974 ],
6975 "source_info" : {
6976 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006977 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006978 "column" : 8,
6979 "source_fragment" : "hdr.int_port_ids.setValid()"
6980 }
6981 },
6982 {
6983 "op" : "assign",
6984 "parameters" : [
6985 {
6986 "type" : "field",
6987 "value" : ["int_port_ids", "ingress_port_id"]
6988 },
6989 {
6990 "type" : "expression",
6991 "value" : {
6992 "type" : "expression",
6993 "value" : {
6994 "op" : "&",
6995 "left" : {
6996 "type" : "field",
6997 "value" : ["standard_metadata", "ingress_port"]
6998 },
6999 "right" : {
7000 "type" : "hexstr",
7001 "value" : "0xffff"
7002 }
7003 }
7004 }
7005 }
7006 ],
7007 "source_info" : {
7008 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007009 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007010 "column" : 8,
7011 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7012 }
7013 },
7014 {
7015 "op" : "assign",
7016 "parameters" : [
7017 {
7018 "type" : "field",
7019 "value" : ["int_port_ids", "egress_port_id"]
7020 },
7021 {
7022 "type" : "expression",
7023 "value" : {
7024 "type" : "expression",
7025 "value" : {
7026 "op" : "&",
7027 "left" : {
7028 "type" : "field",
7029 "value" : ["standard_metadata", "egress_port"]
7030 },
7031 "right" : {
7032 "type" : "hexstr",
7033 "value" : "0xffff"
7034 }
7035 }
7036 }
7037 }
7038 ],
7039 "source_info" : {
7040 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007041 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007042 "column" : 8,
7043 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7044 }
7045 },
7046 {
7047 "op" : "add_header",
7048 "parameters" : [
7049 {
7050 "type" : "header",
7051 "value" : "int_switch_id"
7052 }
7053 ],
7054 "source_info" : {
7055 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007056 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007057 "column" : 8,
7058 "source_fragment" : "hdr.int_switch_id.setValid()"
7059 }
7060 },
7061 {
7062 "op" : "assign",
7063 "parameters" : [
7064 {
7065 "type" : "field",
7066 "value" : ["int_switch_id", "switch_id"]
7067 },
7068 {
7069 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007070 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007071 }
7072 ],
7073 "source_info" : {
7074 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007075 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007076 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007077 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007078 }
7079 },
7080 {
7081 "op" : "assign",
7082 "parameters" : [
7083 {
7084 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007085 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007086 },
7087 {
7088 "type" : "expression",
7089 "value" : {
7090 "type" : "expression",
7091 "value" : {
7092 "op" : "&",
7093 "left" : {
7094 "type" : "expression",
7095 "value" : {
7096 "op" : "+",
7097 "left" : {
7098 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007099 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007100 },
7101 "right" : {
7102 "type" : "hexstr",
7103 "value" : "0x02"
7104 }
7105 }
7106 },
7107 "right" : {
7108 "type" : "hexstr",
7109 "value" : "0xff"
7110 }
7111 }
7112 }
7113 }
7114 ],
7115 "source_info" : {
7116 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007117 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007118 "column" : 33,
7119 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007120 }
7121 },
7122 {
7123 "op" : "assign",
7124 "parameters" : [
7125 {
7126 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007127 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007128 },
7129 {
7130 "type" : "expression",
7131 "value" : {
7132 "type" : "expression",
7133 "value" : {
7134 "op" : "&",
7135 "left" : {
7136 "type" : "expression",
7137 "value" : {
7138 "op" : "+",
7139 "left" : {
7140 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007141 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007142 },
7143 "right" : {
7144 "type" : "hexstr",
7145 "value" : "0x0008"
7146 }
7147 }
7148 },
7149 "right" : {
7150 "type" : "hexstr",
7151 "value" : "0xffff"
7152 }
7153 }
7154 }
7155 }
7156 ],
7157 "source_info" : {
7158 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007159 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007160 "column" : 33,
7161 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007162 }
7163 }
7164 ]
7165 },
7166 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07007167 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
7168 "id" : 78,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007169 "runtime_data" : [],
7170 "primitives" : [
7171 {
7172 "op" : "add_header",
7173 "parameters" : [
7174 {
7175 "type" : "header",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007176 "value" : "int_q_occupancy"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007177 }
7178 ],
7179 "source_info" : {
7180 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007181 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007182 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -07007183 "source_fragment" : "hdr.int_q_occupancy.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007184 }
7185 },
7186 {
7187 "op" : "assign",
7188 "parameters" : [
7189 {
7190 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007191 "value" : ["int_q_occupancy", "q_id"]
7192 },
7193 {
7194 "type" : "hexstr",
7195 "value" : "0x00"
7196 }
7197 ],
7198 "source_info" : {
7199 "filename" : "include/int/int_transit.p4",
7200 "line" : 62,
7201 "column" : 8,
7202 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7203 }
7204 },
7205 {
7206 "op" : "assign",
7207 "parameters" : [
7208 {
7209 "type" : "field",
7210 "value" : ["int_q_occupancy", "q_occupancy"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007211 },
7212 {
7213 "type" : "expression",
7214 "value" : {
7215 "type" : "expression",
7216 "value" : {
7217 "op" : "&",
7218 "left" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -07007219 "type" : "field",
7220 "value" : ["standard_metadata", "deq_qdepth"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007221 },
7222 "right" : {
7223 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007224 "value" : "0xffffff"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007225 }
7226 }
7227 }
7228 }
7229 ],
7230 "source_info" : {
7231 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007232 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007233 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -07007234 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7235 }
7236 },
7237 {
7238 "op" : "add_header",
7239 "parameters" : [
7240 {
7241 "type" : "header",
7242 "value" : "int_port_ids"
7243 }
7244 ],
7245 "source_info" : {
7246 "filename" : "include/int/int_transit.p4",
7247 "line" : 47,
7248 "column" : 8,
7249 "source_fragment" : "hdr.int_port_ids.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007250 }
7251 },
7252 {
7253 "op" : "assign",
7254 "parameters" : [
7255 {
7256 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007257 "value" : ["int_port_ids", "ingress_port_id"]
7258 },
7259 {
7260 "type" : "expression",
7261 "value" : {
7262 "type" : "expression",
7263 "value" : {
7264 "op" : "&",
7265 "left" : {
7266 "type" : "field",
7267 "value" : ["standard_metadata", "ingress_port"]
7268 },
7269 "right" : {
7270 "type" : "hexstr",
7271 "value" : "0xffff"
7272 }
7273 }
7274 }
7275 }
7276 ],
7277 "source_info" : {
7278 "filename" : "include/int/int_transit.p4",
7279 "line" : 48,
7280 "column" : 8,
7281 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7282 }
7283 },
7284 {
7285 "op" : "assign",
7286 "parameters" : [
7287 {
7288 "type" : "field",
7289 "value" : ["int_port_ids", "egress_port_id"]
7290 },
7291 {
7292 "type" : "expression",
7293 "value" : {
7294 "type" : "expression",
7295 "value" : {
7296 "op" : "&",
7297 "left" : {
7298 "type" : "field",
7299 "value" : ["standard_metadata", "egress_port"]
7300 },
7301 "right" : {
7302 "type" : "hexstr",
7303 "value" : "0xffff"
7304 }
7305 }
7306 }
7307 }
7308 ],
7309 "source_info" : {
7310 "filename" : "include/int/int_transit.p4",
7311 "line" : 49,
7312 "column" : 8,
7313 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7314 }
7315 },
7316 {
7317 "op" : "add_header",
7318 "parameters" : [
7319 {
7320 "type" : "header",
7321 "value" : "int_switch_id"
7322 }
7323 ],
7324 "source_info" : {
7325 "filename" : "include/int/int_transit.p4",
7326 "line" : 41,
7327 "column" : 8,
7328 "source_fragment" : "hdr.int_switch_id.setValid()"
7329 }
7330 },
7331 {
7332 "op" : "assign",
7333 "parameters" : [
7334 {
7335 "type" : "field",
7336 "value" : ["int_switch_id", "switch_id"]
7337 },
7338 {
7339 "type" : "field",
7340 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
7341 }
7342 ],
7343 "source_info" : {
7344 "filename" : "include/int/int_transit.p4",
7345 "line" : 42,
7346 "column" : 8,
7347 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
7348 }
7349 },
7350 {
7351 "op" : "assign",
7352 "parameters" : [
7353 {
7354 "type" : "field",
7355 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007356 },
7357 {
7358 "type" : "expression",
7359 "value" : {
7360 "type" : "expression",
7361 "value" : {
7362 "op" : "&",
7363 "left" : {
7364 "type" : "expression",
7365 "value" : {
7366 "op" : "+",
7367 "left" : {
7368 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007369 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007370 },
7371 "right" : {
7372 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007373 "value" : "0x03"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007374 }
7375 }
7376 },
7377 "right" : {
7378 "type" : "hexstr",
7379 "value" : "0xff"
7380 }
7381 }
7382 }
7383 }
7384 ],
7385 "source_info" : {
7386 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007387 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007388 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07007389 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007390 }
7391 },
7392 {
7393 "op" : "assign",
7394 "parameters" : [
7395 {
7396 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007397 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007398 },
7399 {
7400 "type" : "expression",
7401 "value" : {
7402 "type" : "expression",
7403 "value" : {
7404 "op" : "&",
7405 "left" : {
7406 "type" : "expression",
7407 "value" : {
7408 "op" : "+",
7409 "left" : {
7410 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007411 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007412 },
7413 "right" : {
7414 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007415 "value" : "0x000c"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007416 }
7417 }
7418 },
7419 "right" : {
7420 "type" : "hexstr",
7421 "value" : "0xffff"
7422 }
7423 }
7424 }
7425 }
7426 ],
7427 "source_info" : {
7428 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007429 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007430 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07007431 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007432 }
7433 }
7434 ]
7435 },
7436 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07007437 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
7438 "id" : 79,
7439 "runtime_data" : [],
7440 "primitives" : [
7441 {
7442 "op" : "add_header",
7443 "parameters" : [
7444 {
7445 "type" : "header",
7446 "value" : "int_hop_latency"
7447 }
7448 ],
7449 "source_info" : {
7450 "filename" : "include/int/int_transit.p4",
7451 "line" : 54,
7452 "column" : 8,
7453 "source_fragment" : "hdr.int_hop_latency.setValid()"
7454 }
7455 },
7456 {
7457 "op" : "assign",
7458 "parameters" : [
7459 {
7460 "type" : "field",
7461 "value" : ["int_hop_latency", "hop_latency"]
7462 },
7463 {
7464 "type" : "field",
7465 "value" : ["standard_metadata", "deq_timedelta"]
7466 }
7467 ],
7468 "source_info" : {
7469 "filename" : "include/int/int_transit.p4",
7470 "line" : 55,
7471 "column" : 8,
7472 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7473 }
7474 },
7475 {
7476 "op" : "add_header",
7477 "parameters" : [
7478 {
7479 "type" : "header",
7480 "value" : "int_port_ids"
7481 }
7482 ],
7483 "source_info" : {
7484 "filename" : "include/int/int_transit.p4",
7485 "line" : 47,
7486 "column" : 8,
7487 "source_fragment" : "hdr.int_port_ids.setValid()"
7488 }
7489 },
7490 {
7491 "op" : "assign",
7492 "parameters" : [
7493 {
7494 "type" : "field",
7495 "value" : ["int_port_ids", "ingress_port_id"]
7496 },
7497 {
7498 "type" : "expression",
7499 "value" : {
7500 "type" : "expression",
7501 "value" : {
7502 "op" : "&",
7503 "left" : {
7504 "type" : "field",
7505 "value" : ["standard_metadata", "ingress_port"]
7506 },
7507 "right" : {
7508 "type" : "hexstr",
7509 "value" : "0xffff"
7510 }
7511 }
7512 }
7513 }
7514 ],
7515 "source_info" : {
7516 "filename" : "include/int/int_transit.p4",
7517 "line" : 48,
7518 "column" : 8,
7519 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7520 }
7521 },
7522 {
7523 "op" : "assign",
7524 "parameters" : [
7525 {
7526 "type" : "field",
7527 "value" : ["int_port_ids", "egress_port_id"]
7528 },
7529 {
7530 "type" : "expression",
7531 "value" : {
7532 "type" : "expression",
7533 "value" : {
7534 "op" : "&",
7535 "left" : {
7536 "type" : "field",
7537 "value" : ["standard_metadata", "egress_port"]
7538 },
7539 "right" : {
7540 "type" : "hexstr",
7541 "value" : "0xffff"
7542 }
7543 }
7544 }
7545 }
7546 ],
7547 "source_info" : {
7548 "filename" : "include/int/int_transit.p4",
7549 "line" : 49,
7550 "column" : 8,
7551 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7552 }
7553 },
7554 {
7555 "op" : "add_header",
7556 "parameters" : [
7557 {
7558 "type" : "header",
7559 "value" : "int_switch_id"
7560 }
7561 ],
7562 "source_info" : {
7563 "filename" : "include/int/int_transit.p4",
7564 "line" : 41,
7565 "column" : 8,
7566 "source_fragment" : "hdr.int_switch_id.setValid()"
7567 }
7568 },
7569 {
7570 "op" : "assign",
7571 "parameters" : [
7572 {
7573 "type" : "field",
7574 "value" : ["int_switch_id", "switch_id"]
7575 },
7576 {
7577 "type" : "field",
7578 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
7579 }
7580 ],
7581 "source_info" : {
7582 "filename" : "include/int/int_transit.p4",
7583 "line" : 42,
7584 "column" : 8,
7585 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
7586 }
7587 },
7588 {
7589 "op" : "assign",
7590 "parameters" : [
7591 {
7592 "type" : "field",
7593 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
7594 },
7595 {
7596 "type" : "expression",
7597 "value" : {
7598 "type" : "expression",
7599 "value" : {
7600 "op" : "&",
7601 "left" : {
7602 "type" : "expression",
7603 "value" : {
7604 "op" : "+",
7605 "left" : {
7606 "type" : "field",
7607 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
7608 },
7609 "right" : {
7610 "type" : "hexstr",
7611 "value" : "0x03"
7612 }
7613 }
7614 },
7615 "right" : {
7616 "type" : "hexstr",
7617 "value" : "0xff"
7618 }
7619 }
7620 }
7621 }
7622 ],
7623 "source_info" : {
7624 "filename" : "include/int/int_transit.p4",
7625 "line" : 109,
7626 "column" : 33,
7627 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
7628 }
7629 },
7630 {
7631 "op" : "assign",
7632 "parameters" : [
7633 {
7634 "type" : "field",
7635 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
7636 },
7637 {
7638 "type" : "expression",
7639 "value" : {
7640 "type" : "expression",
7641 "value" : {
7642 "op" : "&",
7643 "left" : {
7644 "type" : "expression",
7645 "value" : {
7646 "op" : "+",
7647 "left" : {
7648 "type" : "field",
7649 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
7650 },
7651 "right" : {
7652 "type" : "hexstr",
7653 "value" : "0x000c"
7654 }
7655 }
7656 },
7657 "right" : {
7658 "type" : "hexstr",
7659 "value" : "0xffff"
7660 }
7661 }
7662 }
7663 }
7664 ],
7665 "source_info" : {
7666 "filename" : "include/int/int_transit.p4",
7667 "line" : 110,
7668 "column" : 33,
7669 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
7670 }
7671 }
7672 ]
7673 },
7674 {
7675 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
7676 "id" : 80,
7677 "runtime_data" : [],
7678 "primitives" : [
7679 {
7680 "op" : "add_header",
7681 "parameters" : [
7682 {
7683 "type" : "header",
7684 "value" : "int_q_occupancy"
7685 }
7686 ],
7687 "source_info" : {
7688 "filename" : "include/int/int_transit.p4",
7689 "line" : 60,
7690 "column" : 8,
7691 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7692 }
7693 },
7694 {
7695 "op" : "assign",
7696 "parameters" : [
7697 {
7698 "type" : "field",
7699 "value" : ["int_q_occupancy", "q_id"]
7700 },
7701 {
7702 "type" : "hexstr",
7703 "value" : "0x00"
7704 }
7705 ],
7706 "source_info" : {
7707 "filename" : "include/int/int_transit.p4",
7708 "line" : 62,
7709 "column" : 8,
7710 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7711 }
7712 },
7713 {
7714 "op" : "assign",
7715 "parameters" : [
7716 {
7717 "type" : "field",
7718 "value" : ["int_q_occupancy", "q_occupancy"]
7719 },
7720 {
7721 "type" : "expression",
7722 "value" : {
7723 "type" : "expression",
7724 "value" : {
7725 "op" : "&",
7726 "left" : {
7727 "type" : "field",
7728 "value" : ["standard_metadata", "deq_qdepth"]
7729 },
7730 "right" : {
7731 "type" : "hexstr",
7732 "value" : "0xffffff"
7733 }
7734 }
7735 }
7736 }
7737 ],
7738 "source_info" : {
7739 "filename" : "include/int/int_transit.p4",
7740 "line" : 63,
7741 "column" : 8,
7742 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7743 }
7744 },
7745 {
7746 "op" : "add_header",
7747 "parameters" : [
7748 {
7749 "type" : "header",
7750 "value" : "int_hop_latency"
7751 }
7752 ],
7753 "source_info" : {
7754 "filename" : "include/int/int_transit.p4",
7755 "line" : 54,
7756 "column" : 8,
7757 "source_fragment" : "hdr.int_hop_latency.setValid()"
7758 }
7759 },
7760 {
7761 "op" : "assign",
7762 "parameters" : [
7763 {
7764 "type" : "field",
7765 "value" : ["int_hop_latency", "hop_latency"]
7766 },
7767 {
7768 "type" : "field",
7769 "value" : ["standard_metadata", "deq_timedelta"]
7770 }
7771 ],
7772 "source_info" : {
7773 "filename" : "include/int/int_transit.p4",
7774 "line" : 55,
7775 "column" : 8,
7776 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7777 }
7778 },
7779 {
7780 "op" : "add_header",
7781 "parameters" : [
7782 {
7783 "type" : "header",
7784 "value" : "int_port_ids"
7785 }
7786 ],
7787 "source_info" : {
7788 "filename" : "include/int/int_transit.p4",
7789 "line" : 47,
7790 "column" : 8,
7791 "source_fragment" : "hdr.int_port_ids.setValid()"
7792 }
7793 },
7794 {
7795 "op" : "assign",
7796 "parameters" : [
7797 {
7798 "type" : "field",
7799 "value" : ["int_port_ids", "ingress_port_id"]
7800 },
7801 {
7802 "type" : "expression",
7803 "value" : {
7804 "type" : "expression",
7805 "value" : {
7806 "op" : "&",
7807 "left" : {
7808 "type" : "field",
7809 "value" : ["standard_metadata", "ingress_port"]
7810 },
7811 "right" : {
7812 "type" : "hexstr",
7813 "value" : "0xffff"
7814 }
7815 }
7816 }
7817 }
7818 ],
7819 "source_info" : {
7820 "filename" : "include/int/int_transit.p4",
7821 "line" : 48,
7822 "column" : 8,
7823 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7824 }
7825 },
7826 {
7827 "op" : "assign",
7828 "parameters" : [
7829 {
7830 "type" : "field",
7831 "value" : ["int_port_ids", "egress_port_id"]
7832 },
7833 {
7834 "type" : "expression",
7835 "value" : {
7836 "type" : "expression",
7837 "value" : {
7838 "op" : "&",
7839 "left" : {
7840 "type" : "field",
7841 "value" : ["standard_metadata", "egress_port"]
7842 },
7843 "right" : {
7844 "type" : "hexstr",
7845 "value" : "0xffff"
7846 }
7847 }
7848 }
7849 }
7850 ],
7851 "source_info" : {
7852 "filename" : "include/int/int_transit.p4",
7853 "line" : 49,
7854 "column" : 8,
7855 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7856 }
7857 },
7858 {
7859 "op" : "add_header",
7860 "parameters" : [
7861 {
7862 "type" : "header",
7863 "value" : "int_switch_id"
7864 }
7865 ],
7866 "source_info" : {
7867 "filename" : "include/int/int_transit.p4",
7868 "line" : 41,
7869 "column" : 8,
7870 "source_fragment" : "hdr.int_switch_id.setValid()"
7871 }
7872 },
7873 {
7874 "op" : "assign",
7875 "parameters" : [
7876 {
7877 "type" : "field",
7878 "value" : ["int_switch_id", "switch_id"]
7879 },
7880 {
7881 "type" : "field",
7882 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id27"]
7883 }
7884 ],
7885 "source_info" : {
7886 "filename" : "include/int/int_transit.p4",
7887 "line" : 42,
7888 "column" : 8,
7889 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
7890 }
7891 },
7892 {
7893 "op" : "assign",
7894 "parameters" : [
7895 {
7896 "type" : "field",
7897 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
7898 },
7899 {
7900 "type" : "expression",
7901 "value" : {
7902 "type" : "expression",
7903 "value" : {
7904 "op" : "&",
7905 "left" : {
7906 "type" : "expression",
7907 "value" : {
7908 "op" : "+",
7909 "left" : {
7910 "type" : "field",
7911 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
7912 },
7913 "right" : {
7914 "type" : "hexstr",
7915 "value" : "0x04"
7916 }
7917 }
7918 },
7919 "right" : {
7920 "type" : "hexstr",
7921 "value" : "0xff"
7922 }
7923 }
7924 }
7925 }
7926 ],
7927 "source_info" : {
7928 "filename" : "include/int/int_transit.p4",
7929 "line" : 115,
7930 "column" : 33,
7931 "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
7932 }
7933 },
7934 {
7935 "op" : "assign",
7936 "parameters" : [
7937 {
7938 "type" : "field",
7939 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
7940 },
7941 {
7942 "type" : "expression",
7943 "value" : {
7944 "type" : "expression",
7945 "value" : {
7946 "op" : "&",
7947 "left" : {
7948 "type" : "expression",
7949 "value" : {
7950 "op" : "+",
7951 "left" : {
7952 "type" : "field",
7953 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
7954 },
7955 "right" : {
7956 "type" : "hexstr",
7957 "value" : "0x0010"
7958 }
7959 }
7960 },
7961 "right" : {
7962 "type" : "hexstr",
7963 "value" : "0xffff"
7964 }
7965 }
7966 }
7967 }
7968 ],
7969 "source_info" : {
7970 "filename" : "include/int/int_transit.p4",
7971 "line" : 116,
7972 "column" : 33,
7973 "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
7974 }
7975 }
7976 ]
7977 },
7978 {
7979 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
7980 "id" : 81,
7981 "runtime_data" : [],
7982 "primitives" : []
7983 },
7984 {
7985 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007986 "id" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007987 "runtime_data" : [],
7988 "primitives" : [
7989 {
7990 "op" : "add_header",
7991 "parameters" : [
7992 {
7993 "type" : "header",
7994 "value" : "int_egress_tx_util"
7995 }
7996 ],
7997 "source_info" : {
7998 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007999 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008000 "column" : 8,
8001 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8002 }
8003 },
8004 {
8005 "op" : "assign",
8006 "parameters" : [
8007 {
8008 "type" : "field",
8009 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8010 },
8011 {
8012 "type" : "hexstr",
8013 "value" : "0x00000000"
8014 }
8015 ],
8016 "source_info" : {
8017 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008018 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008019 "column" : 8,
8020 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8021 }
8022 },
8023 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008024 "op" : "assign",
8025 "parameters" : [
8026 {
8027 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008028 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008029 },
8030 {
8031 "type" : "expression",
8032 "value" : {
8033 "type" : "expression",
8034 "value" : {
8035 "op" : "&",
8036 "left" : {
8037 "type" : "expression",
8038 "value" : {
8039 "op" : "+",
8040 "left" : {
8041 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008042 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008043 },
8044 "right" : {
8045 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008046 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008047 }
8048 }
8049 },
8050 "right" : {
8051 "type" : "hexstr",
8052 "value" : "0xff"
8053 }
8054 }
8055 }
8056 }
8057 ],
8058 "source_info" : {
8059 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008060 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008061 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07008062 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008063 }
8064 },
8065 {
8066 "op" : "assign",
8067 "parameters" : [
8068 {
8069 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008070 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008071 },
8072 {
8073 "type" : "expression",
8074 "value" : {
8075 "type" : "expression",
8076 "value" : {
8077 "op" : "&",
8078 "left" : {
8079 "type" : "expression",
8080 "value" : {
8081 "op" : "+",
8082 "left" : {
8083 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008084 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008085 },
8086 "right" : {
8087 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008088 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008089 }
8090 }
8091 },
8092 "right" : {
8093 "type" : "hexstr",
8094 "value" : "0xffff"
8095 }
8096 }
8097 }
8098 }
8099 ],
8100 "source_info" : {
8101 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008102 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008103 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07008104 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008105 }
8106 }
8107 ]
8108 },
8109 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07008110 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008111 "id" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008112 "runtime_data" : [],
8113 "primitives" : [
8114 {
8115 "op" : "add_header",
8116 "parameters" : [
8117 {
8118 "type" : "header",
8119 "value" : "int_q_congestion"
8120 }
8121 ],
8122 "source_info" : {
8123 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008124 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008125 "column" : 8,
8126 "source_fragment" : "hdr.int_q_congestion.setValid()"
8127 }
8128 },
8129 {
8130 "op" : "assign",
8131 "parameters" : [
8132 {
8133 "type" : "field",
8134 "value" : ["int_q_congestion", "q_id"]
8135 },
8136 {
8137 "type" : "hexstr",
8138 "value" : "0x00"
8139 }
8140 ],
8141 "source_info" : {
8142 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008143 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008144 "column" : 8,
8145 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8146 }
8147 },
8148 {
8149 "op" : "assign",
8150 "parameters" : [
8151 {
8152 "type" : "field",
8153 "value" : ["int_q_congestion", "q_congestion"]
8154 },
8155 {
8156 "type" : "hexstr",
8157 "value" : "0x000000"
8158 }
8159 ],
8160 "source_info" : {
8161 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008162 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008163 "column" : 8,
8164 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8165 }
8166 },
8167 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008168 "op" : "assign",
8169 "parameters" : [
8170 {
8171 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008172 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008173 },
8174 {
8175 "type" : "expression",
8176 "value" : {
8177 "type" : "expression",
8178 "value" : {
8179 "op" : "&",
8180 "left" : {
8181 "type" : "expression",
8182 "value" : {
8183 "op" : "+",
8184 "left" : {
8185 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008186 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008187 },
8188 "right" : {
8189 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008190 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008191 }
8192 }
8193 },
8194 "right" : {
8195 "type" : "hexstr",
8196 "value" : "0xff"
8197 }
8198 }
8199 }
8200 }
8201 ],
8202 "source_info" : {
8203 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008204 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008205 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07008206 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008207 }
8208 },
8209 {
8210 "op" : "assign",
8211 "parameters" : [
8212 {
8213 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008214 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008215 },
8216 {
8217 "type" : "expression",
8218 "value" : {
8219 "type" : "expression",
8220 "value" : {
8221 "op" : "&",
8222 "left" : {
8223 "type" : "expression",
8224 "value" : {
8225 "op" : "+",
8226 "left" : {
8227 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008228 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008229 },
8230 "right" : {
8231 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008232 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008233 }
8234 }
8235 },
8236 "right" : {
8237 "type" : "hexstr",
8238 "value" : "0xffff"
8239 }
8240 }
8241 }
8242 }
8243 ],
8244 "source_info" : {
8245 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008246 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008247 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07008248 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008249 }
8250 }
8251 ]
8252 },
8253 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07008254 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008255 "id" : 84,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008256 "runtime_data" : [],
8257 "primitives" : [
8258 {
8259 "op" : "add_header",
8260 "parameters" : [
8261 {
8262 "type" : "header",
8263 "value" : "int_egress_tx_util"
8264 }
8265 ],
8266 "source_info" : {
8267 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008268 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008269 "column" : 8,
8270 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8271 }
8272 },
8273 {
8274 "op" : "assign",
8275 "parameters" : [
8276 {
8277 "type" : "field",
8278 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8279 },
8280 {
8281 "type" : "hexstr",
8282 "value" : "0x00000000"
8283 }
8284 ],
8285 "source_info" : {
8286 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008287 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008288 "column" : 8,
8289 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8290 }
8291 },
8292 {
8293 "op" : "add_header",
8294 "parameters" : [
8295 {
8296 "type" : "header",
8297 "value" : "int_q_congestion"
8298 }
8299 ],
8300 "source_info" : {
8301 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008302 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008303 "column" : 8,
8304 "source_fragment" : "hdr.int_q_congestion.setValid()"
8305 }
8306 },
8307 {
8308 "op" : "assign",
8309 "parameters" : [
8310 {
8311 "type" : "field",
8312 "value" : ["int_q_congestion", "q_id"]
8313 },
8314 {
8315 "type" : "hexstr",
8316 "value" : "0x00"
8317 }
8318 ],
8319 "source_info" : {
8320 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008321 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008322 "column" : 8,
8323 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8324 }
8325 },
8326 {
8327 "op" : "assign",
8328 "parameters" : [
8329 {
8330 "type" : "field",
8331 "value" : ["int_q_congestion", "q_congestion"]
8332 },
8333 {
8334 "type" : "hexstr",
8335 "value" : "0x000000"
8336 }
8337 ],
8338 "source_info" : {
8339 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008340 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008341 "column" : 8,
8342 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8343 }
8344 },
8345 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07008346 "op" : "assign",
8347 "parameters" : [
8348 {
8349 "type" : "field",
8350 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
8351 },
8352 {
8353 "type" : "expression",
8354 "value" : {
8355 "type" : "expression",
8356 "value" : {
8357 "op" : "&",
8358 "left" : {
8359 "type" : "expression",
8360 "value" : {
8361 "op" : "+",
8362 "left" : {
8363 "type" : "field",
8364 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
8365 },
8366 "right" : {
8367 "type" : "hexstr",
8368 "value" : "0x02"
8369 }
8370 }
8371 },
8372 "right" : {
8373 "type" : "hexstr",
8374 "value" : "0xff"
8375 }
8376 }
8377 }
8378 }
8379 ],
8380 "source_info" : {
8381 "filename" : "include/int/int_transit.p4",
8382 "line" : 103,
8383 "column" : 33,
8384 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
8385 }
8386 },
8387 {
8388 "op" : "assign",
8389 "parameters" : [
8390 {
8391 "type" : "field",
8392 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
8393 },
8394 {
8395 "type" : "expression",
8396 "value" : {
8397 "type" : "expression",
8398 "value" : {
8399 "op" : "&",
8400 "left" : {
8401 "type" : "expression",
8402 "value" : {
8403 "op" : "+",
8404 "left" : {
8405 "type" : "field",
8406 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
8407 },
8408 "right" : {
8409 "type" : "hexstr",
8410 "value" : "0x0008"
8411 }
8412 }
8413 },
8414 "right" : {
8415 "type" : "hexstr",
8416 "value" : "0xffff"
8417 }
8418 }
8419 }
8420 }
8421 ],
8422 "source_info" : {
8423 "filename" : "include/int/int_transit.p4",
8424 "line" : 104,
8425 "column" : 33,
8426 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
8427 }
8428 }
8429 ]
8430 },
8431 {
8432 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
8433 "id" : 85,
8434 "runtime_data" : [],
8435 "primitives" : [
8436 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008437 "op" : "add_header",
8438 "parameters" : [
8439 {
8440 "type" : "header",
8441 "value" : "int_egress_tstamp"
8442 }
8443 ],
8444 "source_info" : {
8445 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008446 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008447 "column" : 8,
8448 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8449 }
8450 },
8451 {
8452 "op" : "assign",
8453 "parameters" : [
8454 {
8455 "type" : "field",
8456 "value" : ["int_egress_tstamp", "egress_tstamp"]
8457 },
8458 {
8459 "type" : "expression",
8460 "value" : {
8461 "type" : "expression",
8462 "value" : {
8463 "op" : "&",
8464 "left" : {
8465 "type" : "expression",
8466 "value" : {
8467 "op" : "+",
8468 "left" : {
8469 "type" : "field",
8470 "value" : ["standard_metadata", "enq_timestamp"]
8471 },
8472 "right" : {
8473 "type" : "field",
8474 "value" : ["standard_metadata", "deq_timedelta"]
8475 }
8476 }
8477 },
8478 "right" : {
8479 "type" : "hexstr",
8480 "value" : "0xffffffff"
8481 }
8482 }
8483 }
8484 }
8485 ],
8486 "source_info" : {
8487 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008488 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008489 "column" : 8,
8490 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8491 }
8492 },
8493 {
8494 "op" : "assign",
8495 "parameters" : [
8496 {
8497 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008498 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008499 },
8500 {
8501 "type" : "expression",
8502 "value" : {
8503 "type" : "expression",
8504 "value" : {
8505 "op" : "&",
8506 "left" : {
8507 "type" : "expression",
8508 "value" : {
8509 "op" : "+",
8510 "left" : {
8511 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008512 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008513 },
8514 "right" : {
8515 "type" : "hexstr",
8516 "value" : "0x01"
8517 }
8518 }
8519 },
8520 "right" : {
8521 "type" : "hexstr",
8522 "value" : "0xff"
8523 }
8524 }
8525 }
8526 }
8527 ],
8528 "source_info" : {
8529 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008530 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008531 "column" : 33,
8532 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008533 }
8534 },
8535 {
8536 "op" : "assign",
8537 "parameters" : [
8538 {
8539 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008540 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008541 },
8542 {
8543 "type" : "expression",
8544 "value" : {
8545 "type" : "expression",
8546 "value" : {
8547 "op" : "&",
8548 "left" : {
8549 "type" : "expression",
8550 "value" : {
8551 "op" : "+",
8552 "left" : {
8553 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008554 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008555 },
8556 "right" : {
8557 "type" : "hexstr",
8558 "value" : "0x0004"
8559 }
8560 }
8561 },
8562 "right" : {
8563 "type" : "hexstr",
8564 "value" : "0xffff"
8565 }
8566 }
8567 }
8568 }
8569 ],
8570 "source_info" : {
8571 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008572 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008573 "column" : 33,
8574 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008575 }
8576 }
8577 ]
8578 },
8579 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07008580 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008581 "id" : 86,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008582 "runtime_data" : [],
8583 "primitives" : [
8584 {
8585 "op" : "add_header",
8586 "parameters" : [
8587 {
8588 "type" : "header",
8589 "value" : "int_egress_tx_util"
8590 }
8591 ],
8592 "source_info" : {
8593 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008594 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008595 "column" : 8,
8596 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8597 }
8598 },
8599 {
8600 "op" : "assign",
8601 "parameters" : [
8602 {
8603 "type" : "field",
8604 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8605 },
8606 {
8607 "type" : "hexstr",
8608 "value" : "0x00000000"
8609 }
8610 ],
8611 "source_info" : {
8612 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008613 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008614 "column" : 8,
8615 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8616 }
8617 },
8618 {
8619 "op" : "add_header",
8620 "parameters" : [
8621 {
8622 "type" : "header",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008623 "value" : "int_egress_tstamp"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008624 }
8625 ],
8626 "source_info" : {
8627 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008628 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008629 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -07008630 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008631 }
8632 },
8633 {
8634 "op" : "assign",
8635 "parameters" : [
8636 {
8637 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008638 "value" : ["int_egress_tstamp", "egress_tstamp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008639 },
8640 {
8641 "type" : "expression",
8642 "value" : {
8643 "type" : "expression",
8644 "value" : {
8645 "op" : "&",
8646 "left" : {
8647 "type" : "expression",
8648 "value" : {
8649 "op" : "+",
8650 "left" : {
8651 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008652 "value" : ["standard_metadata", "enq_timestamp"]
8653 },
8654 "right" : {
8655 "type" : "field",
8656 "value" : ["standard_metadata", "deq_timedelta"]
8657 }
8658 }
8659 },
8660 "right" : {
8661 "type" : "hexstr",
8662 "value" : "0xffffffff"
8663 }
8664 }
8665 }
8666 }
8667 ],
8668 "source_info" : {
8669 "filename" : "include/int/int_transit.p4",
8670 "line" : 75,
8671 "column" : 8,
8672 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8673 }
8674 },
8675 {
8676 "op" : "assign",
8677 "parameters" : [
8678 {
8679 "type" : "field",
8680 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
8681 },
8682 {
8683 "type" : "expression",
8684 "value" : {
8685 "type" : "expression",
8686 "value" : {
8687 "op" : "&",
8688 "left" : {
8689 "type" : "expression",
8690 "value" : {
8691 "op" : "+",
8692 "left" : {
8693 "type" : "field",
8694 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008695 },
8696 "right" : {
8697 "type" : "hexstr",
8698 "value" : "0x02"
8699 }
8700 }
8701 },
8702 "right" : {
8703 "type" : "hexstr",
8704 "value" : "0xff"
8705 }
8706 }
8707 }
8708 }
8709 ],
8710 "source_info" : {
8711 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008712 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008713 "column" : 33,
8714 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008715 }
8716 },
8717 {
8718 "op" : "assign",
8719 "parameters" : [
8720 {
8721 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008722 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008723 },
8724 {
8725 "type" : "expression",
8726 "value" : {
8727 "type" : "expression",
8728 "value" : {
8729 "op" : "&",
8730 "left" : {
8731 "type" : "expression",
8732 "value" : {
8733 "op" : "+",
8734 "left" : {
8735 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008736 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008737 },
8738 "right" : {
8739 "type" : "hexstr",
8740 "value" : "0x0008"
8741 }
8742 }
8743 },
8744 "right" : {
8745 "type" : "hexstr",
8746 "value" : "0xffff"
8747 }
8748 }
8749 }
8750 }
8751 ],
8752 "source_info" : {
8753 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008754 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008755 "column" : 33,
8756 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008757 }
8758 }
8759 ]
8760 },
8761 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07008762 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008763 "id" : 87,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008764 "runtime_data" : [],
8765 "primitives" : [
8766 {
8767 "op" : "add_header",
8768 "parameters" : [
8769 {
8770 "type" : "header",
8771 "value" : "int_q_congestion"
8772 }
8773 ],
8774 "source_info" : {
8775 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008776 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008777 "column" : 8,
8778 "source_fragment" : "hdr.int_q_congestion.setValid()"
8779 }
8780 },
8781 {
8782 "op" : "assign",
8783 "parameters" : [
8784 {
8785 "type" : "field",
8786 "value" : ["int_q_congestion", "q_id"]
8787 },
8788 {
8789 "type" : "hexstr",
8790 "value" : "0x00"
8791 }
8792 ],
8793 "source_info" : {
8794 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008795 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008796 "column" : 8,
8797 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8798 }
8799 },
8800 {
8801 "op" : "assign",
8802 "parameters" : [
8803 {
8804 "type" : "field",
8805 "value" : ["int_q_congestion", "q_congestion"]
8806 },
8807 {
8808 "type" : "hexstr",
8809 "value" : "0x000000"
8810 }
8811 ],
8812 "source_info" : {
8813 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008814 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008815 "column" : 8,
8816 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8817 }
8818 },
8819 {
8820 "op" : "add_header",
8821 "parameters" : [
8822 {
8823 "type" : "header",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008824 "value" : "int_egress_tstamp"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008825 }
8826 ],
8827 "source_info" : {
8828 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008829 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008830 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -07008831 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008832 }
8833 },
8834 {
8835 "op" : "assign",
8836 "parameters" : [
8837 {
8838 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008839 "value" : ["int_egress_tstamp", "egress_tstamp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008840 },
8841 {
8842 "type" : "expression",
8843 "value" : {
8844 "type" : "expression",
8845 "value" : {
8846 "op" : "&",
8847 "left" : {
8848 "type" : "expression",
8849 "value" : {
8850 "op" : "+",
8851 "left" : {
8852 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008853 "value" : ["standard_metadata", "enq_timestamp"]
8854 },
8855 "right" : {
8856 "type" : "field",
8857 "value" : ["standard_metadata", "deq_timedelta"]
8858 }
8859 }
8860 },
8861 "right" : {
8862 "type" : "hexstr",
8863 "value" : "0xffffffff"
8864 }
8865 }
8866 }
8867 }
8868 ],
8869 "source_info" : {
8870 "filename" : "include/int/int_transit.p4",
8871 "line" : 75,
8872 "column" : 8,
8873 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8874 }
8875 },
8876 {
8877 "op" : "assign",
8878 "parameters" : [
8879 {
8880 "type" : "field",
8881 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
8882 },
8883 {
8884 "type" : "expression",
8885 "value" : {
8886 "type" : "expression",
8887 "value" : {
8888 "op" : "&",
8889 "left" : {
8890 "type" : "expression",
8891 "value" : {
8892 "op" : "+",
8893 "left" : {
8894 "type" : "field",
8895 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008896 },
8897 "right" : {
8898 "type" : "hexstr",
8899 "value" : "0x02"
8900 }
8901 }
8902 },
8903 "right" : {
8904 "type" : "hexstr",
8905 "value" : "0xff"
8906 }
8907 }
8908 }
8909 }
8910 ],
8911 "source_info" : {
8912 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008913 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008914 "column" : 33,
8915 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008916 }
8917 },
8918 {
8919 "op" : "assign",
8920 "parameters" : [
8921 {
8922 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008923 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008924 },
8925 {
8926 "type" : "expression",
8927 "value" : {
8928 "type" : "expression",
8929 "value" : {
8930 "op" : "&",
8931 "left" : {
8932 "type" : "expression",
8933 "value" : {
8934 "op" : "+",
8935 "left" : {
8936 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008937 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008938 },
8939 "right" : {
8940 "type" : "hexstr",
8941 "value" : "0x0008"
8942 }
8943 }
8944 },
8945 "right" : {
8946 "type" : "hexstr",
8947 "value" : "0xffff"
8948 }
8949 }
8950 }
8951 }
8952 ],
8953 "source_info" : {
8954 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008955 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008956 "column" : 33,
8957 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008958 }
8959 }
8960 ]
8961 },
8962 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07008963 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008964 "id" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008965 "runtime_data" : [],
8966 "primitives" : [
8967 {
8968 "op" : "add_header",
8969 "parameters" : [
8970 {
8971 "type" : "header",
8972 "value" : "int_egress_tx_util"
8973 }
8974 ],
8975 "source_info" : {
8976 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008977 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008978 "column" : 8,
8979 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8980 }
8981 },
8982 {
8983 "op" : "assign",
8984 "parameters" : [
8985 {
8986 "type" : "field",
8987 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8988 },
8989 {
8990 "type" : "hexstr",
8991 "value" : "0x00000000"
8992 }
8993 ],
8994 "source_info" : {
8995 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008996 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008997 "column" : 8,
8998 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8999 }
9000 },
9001 {
9002 "op" : "add_header",
9003 "parameters" : [
9004 {
9005 "type" : "header",
9006 "value" : "int_q_congestion"
9007 }
9008 ],
9009 "source_info" : {
9010 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009011 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009012 "column" : 8,
9013 "source_fragment" : "hdr.int_q_congestion.setValid()"
9014 }
9015 },
9016 {
9017 "op" : "assign",
9018 "parameters" : [
9019 {
9020 "type" : "field",
9021 "value" : ["int_q_congestion", "q_id"]
9022 },
9023 {
9024 "type" : "hexstr",
9025 "value" : "0x00"
9026 }
9027 ],
9028 "source_info" : {
9029 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009030 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009031 "column" : 8,
9032 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9033 }
9034 },
9035 {
9036 "op" : "assign",
9037 "parameters" : [
9038 {
9039 "type" : "field",
9040 "value" : ["int_q_congestion", "q_congestion"]
9041 },
9042 {
9043 "type" : "hexstr",
9044 "value" : "0x000000"
9045 }
9046 ],
9047 "source_info" : {
9048 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009049 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009050 "column" : 8,
9051 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9052 }
9053 },
9054 {
9055 "op" : "add_header",
9056 "parameters" : [
9057 {
9058 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009059 "value" : "int_egress_tstamp"
9060 }
9061 ],
9062 "source_info" : {
9063 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009064 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009065 "column" : 8,
9066 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9067 }
9068 },
9069 {
9070 "op" : "assign",
9071 "parameters" : [
9072 {
9073 "type" : "field",
9074 "value" : ["int_egress_tstamp", "egress_tstamp"]
9075 },
9076 {
9077 "type" : "expression",
9078 "value" : {
9079 "type" : "expression",
9080 "value" : {
9081 "op" : "&",
9082 "left" : {
9083 "type" : "expression",
9084 "value" : {
9085 "op" : "+",
9086 "left" : {
9087 "type" : "field",
9088 "value" : ["standard_metadata", "enq_timestamp"]
9089 },
9090 "right" : {
9091 "type" : "field",
9092 "value" : ["standard_metadata", "deq_timedelta"]
9093 }
9094 }
9095 },
9096 "right" : {
9097 "type" : "hexstr",
9098 "value" : "0xffffffff"
9099 }
9100 }
9101 }
9102 }
9103 ],
9104 "source_info" : {
9105 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009106 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009107 "column" : 8,
9108 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9109 }
9110 },
9111 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07009112 "op" : "assign",
9113 "parameters" : [
9114 {
9115 "type" : "field",
9116 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
9117 },
9118 {
9119 "type" : "expression",
9120 "value" : {
9121 "type" : "expression",
9122 "value" : {
9123 "op" : "&",
9124 "left" : {
9125 "type" : "expression",
9126 "value" : {
9127 "op" : "+",
9128 "left" : {
9129 "type" : "field",
9130 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
9131 },
9132 "right" : {
9133 "type" : "hexstr",
9134 "value" : "0x03"
9135 }
9136 }
9137 },
9138 "right" : {
9139 "type" : "hexstr",
9140 "value" : "0xff"
9141 }
9142 }
9143 }
9144 }
9145 ],
9146 "source_info" : {
9147 "filename" : "include/int/int_transit.p4",
9148 "line" : 109,
9149 "column" : 33,
9150 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
9151 }
9152 },
9153 {
9154 "op" : "assign",
9155 "parameters" : [
9156 {
9157 "type" : "field",
9158 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
9159 },
9160 {
9161 "type" : "expression",
9162 "value" : {
9163 "type" : "expression",
9164 "value" : {
9165 "op" : "&",
9166 "left" : {
9167 "type" : "expression",
9168 "value" : {
9169 "op" : "+",
9170 "left" : {
9171 "type" : "field",
9172 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
9173 },
9174 "right" : {
9175 "type" : "hexstr",
9176 "value" : "0x000c"
9177 }
9178 }
9179 },
9180 "right" : {
9181 "type" : "hexstr",
9182 "value" : "0xffff"
9183 }
9184 }
9185 }
9186 }
9187 ],
9188 "source_info" : {
9189 "filename" : "include/int/int_transit.p4",
9190 "line" : 110,
9191 "column" : 33,
9192 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
9193 }
9194 }
9195 ]
9196 },
9197 {
9198 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
9199 "id" : 89,
9200 "runtime_data" : [],
9201 "primitives" : [
9202 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009203 "op" : "add_header",
9204 "parameters" : [
9205 {
9206 "type" : "header",
9207 "value" : "int_ingress_tstamp"
9208 }
9209 ],
9210 "source_info" : {
9211 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009212 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009213 "column" : 8,
9214 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9215 }
9216 },
9217 {
9218 "op" : "assign",
9219 "parameters" : [
9220 {
9221 "type" : "field",
9222 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9223 },
9224 {
9225 "type" : "field",
9226 "value" : ["standard_metadata", "enq_timestamp"]
9227 }
9228 ],
9229 "source_info" : {
9230 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009231 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009232 "column" : 8,
9233 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9234 }
9235 },
9236 {
9237 "op" : "assign",
9238 "parameters" : [
9239 {
9240 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009241 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009242 },
9243 {
9244 "type" : "expression",
9245 "value" : {
9246 "type" : "expression",
9247 "value" : {
9248 "op" : "&",
9249 "left" : {
9250 "type" : "expression",
9251 "value" : {
9252 "op" : "+",
9253 "left" : {
9254 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009255 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009256 },
9257 "right" : {
9258 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009259 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009260 }
9261 }
9262 },
9263 "right" : {
9264 "type" : "hexstr",
9265 "value" : "0xff"
9266 }
9267 }
9268 }
9269 }
9270 ],
9271 "source_info" : {
9272 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009273 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009274 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07009275 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009276 }
9277 },
9278 {
9279 "op" : "assign",
9280 "parameters" : [
9281 {
9282 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009283 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009284 },
9285 {
9286 "type" : "expression",
9287 "value" : {
9288 "type" : "expression",
9289 "value" : {
9290 "op" : "&",
9291 "left" : {
9292 "type" : "expression",
9293 "value" : {
9294 "op" : "+",
9295 "left" : {
9296 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009297 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009298 },
9299 "right" : {
9300 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009301 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009302 }
9303 }
9304 },
9305 "right" : {
9306 "type" : "hexstr",
9307 "value" : "0xffff"
9308 }
9309 }
9310 }
9311 }
9312 ],
9313 "source_info" : {
9314 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009315 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009316 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07009317 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009318 }
9319 }
9320 ]
9321 },
9322 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07009323 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009324 "id" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009325 "runtime_data" : [],
9326 "primitives" : [
9327 {
9328 "op" : "add_header",
9329 "parameters" : [
9330 {
9331 "type" : "header",
9332 "value" : "int_egress_tx_util"
9333 }
9334 ],
9335 "source_info" : {
9336 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009337 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009338 "column" : 8,
9339 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9340 }
9341 },
9342 {
9343 "op" : "assign",
9344 "parameters" : [
9345 {
9346 "type" : "field",
9347 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9348 },
9349 {
9350 "type" : "hexstr",
9351 "value" : "0x00000000"
9352 }
9353 ],
9354 "source_info" : {
9355 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009356 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009357 "column" : 8,
9358 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9359 }
9360 },
9361 {
9362 "op" : "add_header",
9363 "parameters" : [
9364 {
9365 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009366 "value" : "int_ingress_tstamp"
9367 }
9368 ],
9369 "source_info" : {
9370 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009371 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009372 "column" : 8,
9373 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9374 }
9375 },
9376 {
9377 "op" : "assign",
9378 "parameters" : [
9379 {
9380 "type" : "field",
9381 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9382 },
9383 {
9384 "type" : "field",
9385 "value" : ["standard_metadata", "enq_timestamp"]
9386 }
9387 ],
9388 "source_info" : {
9389 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009390 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009391 "column" : 8,
9392 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9393 }
9394 },
9395 {
9396 "op" : "assign",
9397 "parameters" : [
9398 {
9399 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009400 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009401 },
9402 {
9403 "type" : "expression",
9404 "value" : {
9405 "type" : "expression",
9406 "value" : {
9407 "op" : "&",
9408 "left" : {
9409 "type" : "expression",
9410 "value" : {
9411 "op" : "+",
9412 "left" : {
9413 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009414 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009415 },
9416 "right" : {
9417 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009418 "value" : "0x02"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009419 }
9420 }
9421 },
9422 "right" : {
9423 "type" : "hexstr",
9424 "value" : "0xff"
9425 }
9426 }
9427 }
9428 }
9429 ],
9430 "source_info" : {
9431 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009432 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009433 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07009434 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009435 }
9436 },
9437 {
9438 "op" : "assign",
9439 "parameters" : [
9440 {
9441 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009442 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009443 },
9444 {
9445 "type" : "expression",
9446 "value" : {
9447 "type" : "expression",
9448 "value" : {
9449 "op" : "&",
9450 "left" : {
9451 "type" : "expression",
9452 "value" : {
9453 "op" : "+",
9454 "left" : {
9455 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009456 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009457 },
9458 "right" : {
9459 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009460 "value" : "0x0008"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009461 }
9462 }
9463 },
9464 "right" : {
9465 "type" : "hexstr",
9466 "value" : "0xffff"
9467 }
9468 }
9469 }
9470 }
9471 ],
9472 "source_info" : {
9473 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009474 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009475 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07009476 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009477 }
9478 }
9479 ]
9480 },
9481 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07009482 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009483 "id" : 91,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009484 "runtime_data" : [],
9485 "primitives" : [
9486 {
9487 "op" : "add_header",
9488 "parameters" : [
9489 {
9490 "type" : "header",
9491 "value" : "int_q_congestion"
9492 }
9493 ],
9494 "source_info" : {
9495 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009496 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009497 "column" : 8,
9498 "source_fragment" : "hdr.int_q_congestion.setValid()"
9499 }
9500 },
9501 {
9502 "op" : "assign",
9503 "parameters" : [
9504 {
9505 "type" : "field",
9506 "value" : ["int_q_congestion", "q_id"]
9507 },
9508 {
9509 "type" : "hexstr",
9510 "value" : "0x00"
9511 }
9512 ],
9513 "source_info" : {
9514 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009515 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009516 "column" : 8,
9517 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9518 }
9519 },
9520 {
9521 "op" : "assign",
9522 "parameters" : [
9523 {
9524 "type" : "field",
9525 "value" : ["int_q_congestion", "q_congestion"]
9526 },
9527 {
9528 "type" : "hexstr",
9529 "value" : "0x000000"
9530 }
9531 ],
9532 "source_info" : {
9533 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009534 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009535 "column" : 8,
9536 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9537 }
9538 },
9539 {
9540 "op" : "add_header",
9541 "parameters" : [
9542 {
9543 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009544 "value" : "int_ingress_tstamp"
9545 }
9546 ],
9547 "source_info" : {
9548 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009549 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009550 "column" : 8,
9551 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9552 }
9553 },
9554 {
9555 "op" : "assign",
9556 "parameters" : [
9557 {
9558 "type" : "field",
9559 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9560 },
9561 {
9562 "type" : "field",
9563 "value" : ["standard_metadata", "enq_timestamp"]
9564 }
9565 ],
9566 "source_info" : {
9567 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009568 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009569 "column" : 8,
9570 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9571 }
9572 },
9573 {
9574 "op" : "assign",
9575 "parameters" : [
9576 {
9577 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009578 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009579 },
9580 {
9581 "type" : "expression",
9582 "value" : {
9583 "type" : "expression",
9584 "value" : {
9585 "op" : "&",
9586 "left" : {
9587 "type" : "expression",
9588 "value" : {
9589 "op" : "+",
9590 "left" : {
9591 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009592 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009593 },
9594 "right" : {
9595 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009596 "value" : "0x02"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009597 }
9598 }
9599 },
9600 "right" : {
9601 "type" : "hexstr",
9602 "value" : "0xff"
9603 }
9604 }
9605 }
9606 }
9607 ],
9608 "source_info" : {
9609 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009610 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009611 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07009612 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009613 }
9614 },
9615 {
9616 "op" : "assign",
9617 "parameters" : [
9618 {
9619 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009620 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009621 },
9622 {
9623 "type" : "expression",
9624 "value" : {
9625 "type" : "expression",
9626 "value" : {
9627 "op" : "&",
9628 "left" : {
9629 "type" : "expression",
9630 "value" : {
9631 "op" : "+",
9632 "left" : {
9633 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009634 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009635 },
9636 "right" : {
9637 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009638 "value" : "0x0008"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009639 }
9640 }
9641 },
9642 "right" : {
9643 "type" : "hexstr",
9644 "value" : "0xffff"
9645 }
9646 }
9647 }
9648 }
9649 ],
9650 "source_info" : {
9651 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009652 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009653 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07009654 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009655 }
9656 }
9657 ]
9658 },
9659 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07009660 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009661 "id" : 92,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009662 "runtime_data" : [],
9663 "primitives" : [
9664 {
9665 "op" : "add_header",
9666 "parameters" : [
9667 {
9668 "type" : "header",
9669 "value" : "int_egress_tx_util"
9670 }
9671 ],
9672 "source_info" : {
9673 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009674 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009675 "column" : 8,
9676 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9677 }
9678 },
9679 {
9680 "op" : "assign",
9681 "parameters" : [
9682 {
9683 "type" : "field",
9684 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9685 },
9686 {
9687 "type" : "hexstr",
9688 "value" : "0x00000000"
9689 }
9690 ],
9691 "source_info" : {
9692 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009693 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009694 "column" : 8,
9695 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9696 }
9697 },
9698 {
9699 "op" : "add_header",
9700 "parameters" : [
9701 {
9702 "type" : "header",
9703 "value" : "int_q_congestion"
9704 }
9705 ],
9706 "source_info" : {
9707 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009708 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009709 "column" : 8,
9710 "source_fragment" : "hdr.int_q_congestion.setValid()"
9711 }
9712 },
9713 {
9714 "op" : "assign",
9715 "parameters" : [
9716 {
9717 "type" : "field",
9718 "value" : ["int_q_congestion", "q_id"]
9719 },
9720 {
9721 "type" : "hexstr",
9722 "value" : "0x00"
9723 }
9724 ],
9725 "source_info" : {
9726 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009727 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009728 "column" : 8,
9729 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9730 }
9731 },
9732 {
9733 "op" : "assign",
9734 "parameters" : [
9735 {
9736 "type" : "field",
9737 "value" : ["int_q_congestion", "q_congestion"]
9738 },
9739 {
9740 "type" : "hexstr",
9741 "value" : "0x000000"
9742 }
9743 ],
9744 "source_info" : {
9745 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009746 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009747 "column" : 8,
9748 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9749 }
9750 },
9751 {
9752 "op" : "add_header",
9753 "parameters" : [
9754 {
9755 "type" : "header",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009756 "value" : "int_ingress_tstamp"
9757 }
9758 ],
9759 "source_info" : {
9760 "filename" : "include/int/int_transit.p4",
9761 "line" : 68,
9762 "column" : 8,
9763 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9764 }
9765 },
9766 {
9767 "op" : "assign",
9768 "parameters" : [
9769 {
9770 "type" : "field",
9771 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9772 },
9773 {
9774 "type" : "field",
9775 "value" : ["standard_metadata", "enq_timestamp"]
9776 }
9777 ],
9778 "source_info" : {
9779 "filename" : "include/int/int_transit.p4",
9780 "line" : 69,
9781 "column" : 8,
9782 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9783 }
9784 },
9785 {
9786 "op" : "assign",
9787 "parameters" : [
9788 {
9789 "type" : "field",
9790 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
9791 },
9792 {
9793 "type" : "expression",
9794 "value" : {
9795 "type" : "expression",
9796 "value" : {
9797 "op" : "&",
9798 "left" : {
9799 "type" : "expression",
9800 "value" : {
9801 "op" : "+",
9802 "left" : {
9803 "type" : "field",
9804 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
9805 },
9806 "right" : {
9807 "type" : "hexstr",
9808 "value" : "0x03"
9809 }
9810 }
9811 },
9812 "right" : {
9813 "type" : "hexstr",
9814 "value" : "0xff"
9815 }
9816 }
9817 }
9818 }
9819 ],
9820 "source_info" : {
9821 "filename" : "include/int/int_transit.p4",
9822 "line" : 109,
9823 "column" : 33,
9824 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
9825 }
9826 },
9827 {
9828 "op" : "assign",
9829 "parameters" : [
9830 {
9831 "type" : "field",
9832 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
9833 },
9834 {
9835 "type" : "expression",
9836 "value" : {
9837 "type" : "expression",
9838 "value" : {
9839 "op" : "&",
9840 "left" : {
9841 "type" : "expression",
9842 "value" : {
9843 "op" : "+",
9844 "left" : {
9845 "type" : "field",
9846 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
9847 },
9848 "right" : {
9849 "type" : "hexstr",
9850 "value" : "0x000c"
9851 }
9852 }
9853 },
9854 "right" : {
9855 "type" : "hexstr",
9856 "value" : "0xffff"
9857 }
9858 }
9859 }
9860 }
9861 ],
9862 "source_info" : {
9863 "filename" : "include/int/int_transit.p4",
9864 "line" : 110,
9865 "column" : 33,
9866 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
9867 }
9868 }
9869 ]
9870 },
9871 {
9872 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
9873 "id" : 93,
9874 "runtime_data" : [],
9875 "primitives" : [
9876 {
9877 "op" : "add_header",
9878 "parameters" : [
9879 {
9880 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009881 "value" : "int_egress_tstamp"
9882 }
9883 ],
9884 "source_info" : {
9885 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009886 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009887 "column" : 8,
9888 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9889 }
9890 },
9891 {
9892 "op" : "assign",
9893 "parameters" : [
9894 {
9895 "type" : "field",
9896 "value" : ["int_egress_tstamp", "egress_tstamp"]
9897 },
9898 {
9899 "type" : "expression",
9900 "value" : {
9901 "type" : "expression",
9902 "value" : {
9903 "op" : "&",
9904 "left" : {
9905 "type" : "expression",
9906 "value" : {
9907 "op" : "+",
9908 "left" : {
9909 "type" : "field",
9910 "value" : ["standard_metadata", "enq_timestamp"]
9911 },
9912 "right" : {
9913 "type" : "field",
9914 "value" : ["standard_metadata", "deq_timedelta"]
9915 }
9916 }
9917 },
9918 "right" : {
9919 "type" : "hexstr",
9920 "value" : "0xffffffff"
9921 }
9922 }
9923 }
9924 }
9925 ],
9926 "source_info" : {
9927 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009928 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009929 "column" : 8,
9930 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9931 }
9932 },
9933 {
9934 "op" : "add_header",
9935 "parameters" : [
9936 {
9937 "type" : "header",
9938 "value" : "int_ingress_tstamp"
9939 }
9940 ],
9941 "source_info" : {
9942 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009943 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009944 "column" : 8,
9945 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9946 }
9947 },
9948 {
9949 "op" : "assign",
9950 "parameters" : [
9951 {
9952 "type" : "field",
9953 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9954 },
9955 {
9956 "type" : "field",
9957 "value" : ["standard_metadata", "enq_timestamp"]
9958 }
9959 ],
9960 "source_info" : {
9961 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009962 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009963 "column" : 8,
9964 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9965 }
9966 },
9967 {
9968 "op" : "assign",
9969 "parameters" : [
9970 {
9971 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009972 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009973 },
9974 {
9975 "type" : "expression",
9976 "value" : {
9977 "type" : "expression",
9978 "value" : {
9979 "op" : "&",
9980 "left" : {
9981 "type" : "expression",
9982 "value" : {
9983 "op" : "+",
9984 "left" : {
9985 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -07009986 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
9987 },
9988 "right" : {
9989 "type" : "hexstr",
9990 "value" : "0x02"
9991 }
9992 }
9993 },
9994 "right" : {
9995 "type" : "hexstr",
9996 "value" : "0xff"
9997 }
9998 }
9999 }
10000 }
10001 ],
10002 "source_info" : {
10003 "filename" : "include/int/int_transit.p4",
10004 "line" : 103,
10005 "column" : 33,
10006 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
10007 }
10008 },
10009 {
10010 "op" : "assign",
10011 "parameters" : [
10012 {
10013 "type" : "field",
10014 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
10015 },
10016 {
10017 "type" : "expression",
10018 "value" : {
10019 "type" : "expression",
10020 "value" : {
10021 "op" : "&",
10022 "left" : {
10023 "type" : "expression",
10024 "value" : {
10025 "op" : "+",
10026 "left" : {
10027 "type" : "field",
10028 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
10029 },
10030 "right" : {
10031 "type" : "hexstr",
10032 "value" : "0x0008"
10033 }
10034 }
10035 },
10036 "right" : {
10037 "type" : "hexstr",
10038 "value" : "0xffff"
10039 }
10040 }
10041 }
10042 }
10043 ],
10044 "source_info" : {
10045 "filename" : "include/int/int_transit.p4",
10046 "line" : 104,
10047 "column" : 33,
10048 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
10049 }
10050 }
10051 ]
10052 },
10053 {
10054 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
10055 "id" : 94,
10056 "runtime_data" : [],
10057 "primitives" : [
10058 {
10059 "op" : "add_header",
10060 "parameters" : [
10061 {
10062 "type" : "header",
10063 "value" : "int_egress_tx_util"
10064 }
10065 ],
10066 "source_info" : {
10067 "filename" : "include/int/int_transit.p4",
10068 "line" : 88,
10069 "column" : 8,
10070 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10071 }
10072 },
10073 {
10074 "op" : "assign",
10075 "parameters" : [
10076 {
10077 "type" : "field",
10078 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10079 },
10080 {
10081 "type" : "hexstr",
10082 "value" : "0x00000000"
10083 }
10084 ],
10085 "source_info" : {
10086 "filename" : "include/int/int_transit.p4",
10087 "line" : 90,
10088 "column" : 8,
10089 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10090 }
10091 },
10092 {
10093 "op" : "add_header",
10094 "parameters" : [
10095 {
10096 "type" : "header",
10097 "value" : "int_egress_tstamp"
10098 }
10099 ],
10100 "source_info" : {
10101 "filename" : "include/int/int_transit.p4",
10102 "line" : 74,
10103 "column" : 8,
10104 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10105 }
10106 },
10107 {
10108 "op" : "assign",
10109 "parameters" : [
10110 {
10111 "type" : "field",
10112 "value" : ["int_egress_tstamp", "egress_tstamp"]
10113 },
10114 {
10115 "type" : "expression",
10116 "value" : {
10117 "type" : "expression",
10118 "value" : {
10119 "op" : "&",
10120 "left" : {
10121 "type" : "expression",
10122 "value" : {
10123 "op" : "+",
10124 "left" : {
10125 "type" : "field",
10126 "value" : ["standard_metadata", "enq_timestamp"]
10127 },
10128 "right" : {
10129 "type" : "field",
10130 "value" : ["standard_metadata", "deq_timedelta"]
10131 }
10132 }
10133 },
10134 "right" : {
10135 "type" : "hexstr",
10136 "value" : "0xffffffff"
10137 }
10138 }
10139 }
10140 }
10141 ],
10142 "source_info" : {
10143 "filename" : "include/int/int_transit.p4",
10144 "line" : 75,
10145 "column" : 8,
10146 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10147 }
10148 },
10149 {
10150 "op" : "add_header",
10151 "parameters" : [
10152 {
10153 "type" : "header",
10154 "value" : "int_ingress_tstamp"
10155 }
10156 ],
10157 "source_info" : {
10158 "filename" : "include/int/int_transit.p4",
10159 "line" : 68,
10160 "column" : 8,
10161 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10162 }
10163 },
10164 {
10165 "op" : "assign",
10166 "parameters" : [
10167 {
10168 "type" : "field",
10169 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10170 },
10171 {
10172 "type" : "field",
10173 "value" : ["standard_metadata", "enq_timestamp"]
10174 }
10175 ],
10176 "source_info" : {
10177 "filename" : "include/int/int_transit.p4",
10178 "line" : 69,
10179 "column" : 8,
10180 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10181 }
10182 },
10183 {
10184 "op" : "assign",
10185 "parameters" : [
10186 {
10187 "type" : "field",
10188 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
10189 },
10190 {
10191 "type" : "expression",
10192 "value" : {
10193 "type" : "expression",
10194 "value" : {
10195 "op" : "&",
10196 "left" : {
10197 "type" : "expression",
10198 "value" : {
10199 "op" : "+",
10200 "left" : {
10201 "type" : "field",
10202 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
10203 },
10204 "right" : {
10205 "type" : "hexstr",
10206 "value" : "0x03"
10207 }
10208 }
10209 },
10210 "right" : {
10211 "type" : "hexstr",
10212 "value" : "0xff"
10213 }
10214 }
10215 }
10216 }
10217 ],
10218 "source_info" : {
10219 "filename" : "include/int/int_transit.p4",
10220 "line" : 109,
10221 "column" : 33,
10222 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
10223 }
10224 },
10225 {
10226 "op" : "assign",
10227 "parameters" : [
10228 {
10229 "type" : "field",
10230 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
10231 },
10232 {
10233 "type" : "expression",
10234 "value" : {
10235 "type" : "expression",
10236 "value" : {
10237 "op" : "&",
10238 "left" : {
10239 "type" : "expression",
10240 "value" : {
10241 "op" : "+",
10242 "left" : {
10243 "type" : "field",
10244 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
10245 },
10246 "right" : {
10247 "type" : "hexstr",
10248 "value" : "0x000c"
10249 }
10250 }
10251 },
10252 "right" : {
10253 "type" : "hexstr",
10254 "value" : "0xffff"
10255 }
10256 }
10257 }
10258 }
10259 ],
10260 "source_info" : {
10261 "filename" : "include/int/int_transit.p4",
10262 "line" : 110,
10263 "column" : 33,
10264 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
10265 }
10266 }
10267 ]
10268 },
10269 {
10270 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
10271 "id" : 95,
10272 "runtime_data" : [],
10273 "primitives" : [
10274 {
10275 "op" : "add_header",
10276 "parameters" : [
10277 {
10278 "type" : "header",
10279 "value" : "int_q_congestion"
10280 }
10281 ],
10282 "source_info" : {
10283 "filename" : "include/int/int_transit.p4",
10284 "line" : 80,
10285 "column" : 8,
10286 "source_fragment" : "hdr.int_q_congestion.setValid()"
10287 }
10288 },
10289 {
10290 "op" : "assign",
10291 "parameters" : [
10292 {
10293 "type" : "field",
10294 "value" : ["int_q_congestion", "q_id"]
10295 },
10296 {
10297 "type" : "hexstr",
10298 "value" : "0x00"
10299 }
10300 ],
10301 "source_info" : {
10302 "filename" : "include/int/int_transit.p4",
10303 "line" : 82,
10304 "column" : 8,
10305 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10306 }
10307 },
10308 {
10309 "op" : "assign",
10310 "parameters" : [
10311 {
10312 "type" : "field",
10313 "value" : ["int_q_congestion", "q_congestion"]
10314 },
10315 {
10316 "type" : "hexstr",
10317 "value" : "0x000000"
10318 }
10319 ],
10320 "source_info" : {
10321 "filename" : "include/int/int_transit.p4",
10322 "line" : 83,
10323 "column" : 8,
10324 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10325 }
10326 },
10327 {
10328 "op" : "add_header",
10329 "parameters" : [
10330 {
10331 "type" : "header",
10332 "value" : "int_egress_tstamp"
10333 }
10334 ],
10335 "source_info" : {
10336 "filename" : "include/int/int_transit.p4",
10337 "line" : 74,
10338 "column" : 8,
10339 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10340 }
10341 },
10342 {
10343 "op" : "assign",
10344 "parameters" : [
10345 {
10346 "type" : "field",
10347 "value" : ["int_egress_tstamp", "egress_tstamp"]
10348 },
10349 {
10350 "type" : "expression",
10351 "value" : {
10352 "type" : "expression",
10353 "value" : {
10354 "op" : "&",
10355 "left" : {
10356 "type" : "expression",
10357 "value" : {
10358 "op" : "+",
10359 "left" : {
10360 "type" : "field",
10361 "value" : ["standard_metadata", "enq_timestamp"]
10362 },
10363 "right" : {
10364 "type" : "field",
10365 "value" : ["standard_metadata", "deq_timedelta"]
10366 }
10367 }
10368 },
10369 "right" : {
10370 "type" : "hexstr",
10371 "value" : "0xffffffff"
10372 }
10373 }
10374 }
10375 }
10376 ],
10377 "source_info" : {
10378 "filename" : "include/int/int_transit.p4",
10379 "line" : 75,
10380 "column" : 8,
10381 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10382 }
10383 },
10384 {
10385 "op" : "add_header",
10386 "parameters" : [
10387 {
10388 "type" : "header",
10389 "value" : "int_ingress_tstamp"
10390 }
10391 ],
10392 "source_info" : {
10393 "filename" : "include/int/int_transit.p4",
10394 "line" : 68,
10395 "column" : 8,
10396 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10397 }
10398 },
10399 {
10400 "op" : "assign",
10401 "parameters" : [
10402 {
10403 "type" : "field",
10404 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10405 },
10406 {
10407 "type" : "field",
10408 "value" : ["standard_metadata", "enq_timestamp"]
10409 }
10410 ],
10411 "source_info" : {
10412 "filename" : "include/int/int_transit.p4",
10413 "line" : 69,
10414 "column" : 8,
10415 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10416 }
10417 },
10418 {
10419 "op" : "assign",
10420 "parameters" : [
10421 {
10422 "type" : "field",
10423 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
10424 },
10425 {
10426 "type" : "expression",
10427 "value" : {
10428 "type" : "expression",
10429 "value" : {
10430 "op" : "&",
10431 "left" : {
10432 "type" : "expression",
10433 "value" : {
10434 "op" : "+",
10435 "left" : {
10436 "type" : "field",
10437 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
10438 },
10439 "right" : {
10440 "type" : "hexstr",
10441 "value" : "0x03"
10442 }
10443 }
10444 },
10445 "right" : {
10446 "type" : "hexstr",
10447 "value" : "0xff"
10448 }
10449 }
10450 }
10451 }
10452 ],
10453 "source_info" : {
10454 "filename" : "include/int/int_transit.p4",
10455 "line" : 109,
10456 "column" : 33,
10457 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
10458 }
10459 },
10460 {
10461 "op" : "assign",
10462 "parameters" : [
10463 {
10464 "type" : "field",
10465 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
10466 },
10467 {
10468 "type" : "expression",
10469 "value" : {
10470 "type" : "expression",
10471 "value" : {
10472 "op" : "&",
10473 "left" : {
10474 "type" : "expression",
10475 "value" : {
10476 "op" : "+",
10477 "left" : {
10478 "type" : "field",
10479 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
10480 },
10481 "right" : {
10482 "type" : "hexstr",
10483 "value" : "0x000c"
10484 }
10485 }
10486 },
10487 "right" : {
10488 "type" : "hexstr",
10489 "value" : "0xffff"
10490 }
10491 }
10492 }
10493 }
10494 ],
10495 "source_info" : {
10496 "filename" : "include/int/int_transit.p4",
10497 "line" : 110,
10498 "column" : 33,
10499 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
10500 }
10501 }
10502 ]
10503 },
10504 {
10505 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
10506 "id" : 96,
10507 "runtime_data" : [],
10508 "primitives" : [
10509 {
10510 "op" : "add_header",
10511 "parameters" : [
10512 {
10513 "type" : "header",
10514 "value" : "int_egress_tx_util"
10515 }
10516 ],
10517 "source_info" : {
10518 "filename" : "include/int/int_transit.p4",
10519 "line" : 88,
10520 "column" : 8,
10521 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10522 }
10523 },
10524 {
10525 "op" : "assign",
10526 "parameters" : [
10527 {
10528 "type" : "field",
10529 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10530 },
10531 {
10532 "type" : "hexstr",
10533 "value" : "0x00000000"
10534 }
10535 ],
10536 "source_info" : {
10537 "filename" : "include/int/int_transit.p4",
10538 "line" : 90,
10539 "column" : 8,
10540 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10541 }
10542 },
10543 {
10544 "op" : "add_header",
10545 "parameters" : [
10546 {
10547 "type" : "header",
10548 "value" : "int_q_congestion"
10549 }
10550 ],
10551 "source_info" : {
10552 "filename" : "include/int/int_transit.p4",
10553 "line" : 80,
10554 "column" : 8,
10555 "source_fragment" : "hdr.int_q_congestion.setValid()"
10556 }
10557 },
10558 {
10559 "op" : "assign",
10560 "parameters" : [
10561 {
10562 "type" : "field",
10563 "value" : ["int_q_congestion", "q_id"]
10564 },
10565 {
10566 "type" : "hexstr",
10567 "value" : "0x00"
10568 }
10569 ],
10570 "source_info" : {
10571 "filename" : "include/int/int_transit.p4",
10572 "line" : 82,
10573 "column" : 8,
10574 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10575 }
10576 },
10577 {
10578 "op" : "assign",
10579 "parameters" : [
10580 {
10581 "type" : "field",
10582 "value" : ["int_q_congestion", "q_congestion"]
10583 },
10584 {
10585 "type" : "hexstr",
10586 "value" : "0x000000"
10587 }
10588 ],
10589 "source_info" : {
10590 "filename" : "include/int/int_transit.p4",
10591 "line" : 83,
10592 "column" : 8,
10593 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10594 }
10595 },
10596 {
10597 "op" : "add_header",
10598 "parameters" : [
10599 {
10600 "type" : "header",
10601 "value" : "int_egress_tstamp"
10602 }
10603 ],
10604 "source_info" : {
10605 "filename" : "include/int/int_transit.p4",
10606 "line" : 74,
10607 "column" : 8,
10608 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10609 }
10610 },
10611 {
10612 "op" : "assign",
10613 "parameters" : [
10614 {
10615 "type" : "field",
10616 "value" : ["int_egress_tstamp", "egress_tstamp"]
10617 },
10618 {
10619 "type" : "expression",
10620 "value" : {
10621 "type" : "expression",
10622 "value" : {
10623 "op" : "&",
10624 "left" : {
10625 "type" : "expression",
10626 "value" : {
10627 "op" : "+",
10628 "left" : {
10629 "type" : "field",
10630 "value" : ["standard_metadata", "enq_timestamp"]
10631 },
10632 "right" : {
10633 "type" : "field",
10634 "value" : ["standard_metadata", "deq_timedelta"]
10635 }
10636 }
10637 },
10638 "right" : {
10639 "type" : "hexstr",
10640 "value" : "0xffffffff"
10641 }
10642 }
10643 }
10644 }
10645 ],
10646 "source_info" : {
10647 "filename" : "include/int/int_transit.p4",
10648 "line" : 75,
10649 "column" : 8,
10650 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10651 }
10652 },
10653 {
10654 "op" : "add_header",
10655 "parameters" : [
10656 {
10657 "type" : "header",
10658 "value" : "int_ingress_tstamp"
10659 }
10660 ],
10661 "source_info" : {
10662 "filename" : "include/int/int_transit.p4",
10663 "line" : 68,
10664 "column" : 8,
10665 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10666 }
10667 },
10668 {
10669 "op" : "assign",
10670 "parameters" : [
10671 {
10672 "type" : "field",
10673 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10674 },
10675 {
10676 "type" : "field",
10677 "value" : ["standard_metadata", "enq_timestamp"]
10678 }
10679 ],
10680 "source_info" : {
10681 "filename" : "include/int/int_transit.p4",
10682 "line" : 69,
10683 "column" : 8,
10684 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10685 }
10686 },
10687 {
10688 "op" : "assign",
10689 "parameters" : [
10690 {
10691 "type" : "field",
10692 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
10693 },
10694 {
10695 "type" : "expression",
10696 "value" : {
10697 "type" : "expression",
10698 "value" : {
10699 "op" : "&",
10700 "left" : {
10701 "type" : "expression",
10702 "value" : {
10703 "op" : "+",
10704 "left" : {
10705 "type" : "field",
10706 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010707 },
10708 "right" : {
10709 "type" : "hexstr",
10710 "value" : "0x04"
10711 }
10712 }
10713 },
10714 "right" : {
10715 "type" : "hexstr",
10716 "value" : "0xff"
10717 }
10718 }
10719 }
10720 }
10721 ],
10722 "source_info" : {
10723 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010724 "line" : 115,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010725 "column" : 33,
10726 "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010727 }
10728 },
10729 {
10730 "op" : "assign",
10731 "parameters" : [
10732 {
10733 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010734 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010735 },
10736 {
10737 "type" : "expression",
10738 "value" : {
10739 "type" : "expression",
10740 "value" : {
10741 "op" : "&",
10742 "left" : {
10743 "type" : "expression",
10744 "value" : {
10745 "op" : "+",
10746 "left" : {
10747 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010748 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010749 },
10750 "right" : {
10751 "type" : "hexstr",
10752 "value" : "0x0010"
10753 }
10754 }
10755 },
10756 "right" : {
10757 "type" : "hexstr",
10758 "value" : "0xffff"
10759 }
10760 }
10761 }
10762 }
10763 ],
10764 "source_info" : {
10765 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010766 "line" : 116,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010767 "column" : 33,
10768 "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010769 }
10770 }
10771 ]
10772 },
10773 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010774 "name" : "FabricEgress.egress_next.pop_mpls_if_present",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010775 "id" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010776 "runtime_data" : [],
10777 "primitives" : [
10778 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010779 "op" : "remove_header",
10780 "parameters" : [
10781 {
10782 "type" : "header",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010783 "value" : "mpls"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010784 }
10785 ],
10786 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010787 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010788 "line" : 264,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010789 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010790 "source_fragment" : "hdr.mpls.setInvalid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010791 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010792 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010793 {
10794 "op" : "assign",
10795 "parameters" : [
10796 {
10797 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010798 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010799 },
10800 {
10801 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010802 "value" : ["scalars", "fabric_metadata_t._ip_eth_type4"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010803 }
10804 ],
10805 "source_info" : {
10806 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010807 "line" : 266,
10808 "column" : 38,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010809 "source_fragment" : "= fabric_metadata.ip_eth_type; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010810 }
10811 }
10812 ]
10813 },
10814 {
10815 "name" : "FabricEgress.egress_next.set_mpls",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010816 "id" : 98,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010817 "runtime_data" : [],
10818 "primitives" : [
10819 {
10820 "op" : "add_header",
10821 "parameters" : [
10822 {
10823 "type" : "header",
10824 "value" : "mpls"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010825 }
10826 ],
10827 "source_info" : {
10828 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010829 "line" : 271,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010830 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010831 "source_fragment" : "hdr.mpls.setValid()"
10832 }
10833 },
10834 {
10835 "op" : "assign",
10836 "parameters" : [
10837 {
10838 "type" : "field",
10839 "value" : ["mpls", "label"]
10840 },
10841 {
10842 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010843 "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010844 }
10845 ],
10846 "source_info" : {
10847 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010848 "line" : 272,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010849 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010850 "source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010851 }
10852 },
10853 {
10854 "op" : "assign",
10855 "parameters" : [
10856 {
10857 "type" : "field",
10858 "value" : ["mpls", "tc"]
10859 },
10860 {
10861 "type" : "hexstr",
10862 "value" : "0x00"
10863 }
10864 ],
10865 "source_info" : {
10866 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010867 "line" : 273,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010868 "column" : 8,
10869 "source_fragment" : "hdr.mpls.tc = 3w0"
10870 }
10871 },
10872 {
10873 "op" : "assign",
10874 "parameters" : [
10875 {
10876 "type" : "field",
10877 "value" : ["mpls", "bos"]
10878 },
10879 {
10880 "type" : "hexstr",
10881 "value" : "0x01"
10882 }
10883 ],
10884 "source_info" : {
10885 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010886 "line" : 274,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010887 "column" : 8,
10888 "source_fragment" : "hdr.mpls.bos = 1w1"
10889 }
10890 },
10891 {
10892 "op" : "assign",
10893 "parameters" : [
10894 {
10895 "type" : "field",
10896 "value" : ["mpls", "ttl"]
10897 },
10898 {
10899 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010900 "value" : ["scalars", "fabric_metadata_t._mpls_ttl9"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010901 }
10902 ],
10903 "source_info" : {
10904 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010905 "line" : 275,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010906 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010907 "source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push. ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010908 }
10909 },
10910 {
10911 "op" : "assign",
10912 "parameters" : [
10913 {
10914 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010915 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010916 },
10917 {
10918 "type" : "hexstr",
10919 "value" : "0x8847"
10920 }
10921 ],
10922 "source_info" : {
10923 "filename" : "include/control/../define.p4",
10924 "line" : 108,
10925 "column" : 31,
10926 "source_fragment" : "0x8847; ..."
10927 }
10928 }
10929 ]
10930 },
10931 {
10932 "name" : "FabricEgress.egress_next.push_vlan",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010933 "id" : 99,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010934 "runtime_data" : [],
10935 "primitives" : [
10936 {
10937 "op" : "add_header",
10938 "parameters" : [
10939 {
10940 "type" : "header",
10941 "value" : "vlan_tag"
10942 }
10943 ],
10944 "source_info" : {
10945 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010946 "line" : 283,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010947 "column" : 8,
10948 "source_fragment" : "hdr.vlan_tag.setValid()"
10949 }
10950 },
10951 {
10952 "op" : "assign",
10953 "parameters" : [
10954 {
10955 "type" : "field",
10956 "value" : ["vlan_tag", "cfi"]
10957 },
10958 {
10959 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010960 "value" : ["scalars", "fabric_metadata_t._vlan_cfi7"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010961 }
10962 ],
10963 "source_info" : {
10964 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010965 "line" : 284,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010966 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010967 "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010968 }
10969 },
10970 {
10971 "op" : "assign",
10972 "parameters" : [
10973 {
10974 "type" : "field",
10975 "value" : ["vlan_tag", "pri"]
10976 },
10977 {
10978 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010979 "value" : ["scalars", "fabric_metadata_t._vlan_pri6"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010980 }
10981 ],
10982 "source_info" : {
10983 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010984 "line" : 285,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010985 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010986 "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010987 }
10988 },
10989 {
10990 "op" : "assign",
10991 "parameters" : [
10992 {
10993 "type" : "field",
10994 "value" : ["vlan_tag", "eth_type"]
10995 },
10996 {
10997 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070010998 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010999 }
11000 ],
11001 "source_info" : {
11002 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011003 "line" : 286,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011004 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -070011005 "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.last_eth_type; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011006 }
11007 },
11008 {
11009 "op" : "assign",
11010 "parameters" : [
11011 {
11012 "type" : "field",
11013 "value" : ["vlan_tag", "vlan_id"]
11014 },
11015 {
11016 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011017 "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011018 }
11019 ],
11020 "source_info" : {
11021 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011022 "line" : 287,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011023 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080011024 "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011025 }
11026 },
11027 {
11028 "op" : "assign",
11029 "parameters" : [
11030 {
11031 "type" : "field",
11032 "value" : ["ethernet", "eth_type"]
11033 },
11034 {
11035 "type" : "hexstr",
11036 "value" : "0x8100"
11037 }
11038 ],
11039 "source_info" : {
11040 "filename" : "include/control/../define.p4",
11041 "line" : 107,
11042 "column" : 31,
11043 "source_fragment" : "0x8100; ..."
11044 }
11045 }
11046 ]
11047 },
11048 {
11049 "name" : "FabricEgress.egress_next.pop_vlan",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011050 "id" : 100,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011051 "runtime_data" : [],
11052 "primitives" : [
11053 {
11054 "op" : "assign",
11055 "parameters" : [
11056 {
11057 "type" : "field",
11058 "value" : ["ethernet", "eth_type"]
11059 },
11060 {
11061 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011062 "value" : ["scalars", "fabric_metadata_t._last_eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011063 }
11064 ],
11065 "source_info" : {
11066 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011067 "line" : 312,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011068 "column" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -070011069 "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.last_eth_type; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011070 }
11071 },
11072 {
11073 "op" : "remove_header",
11074 "parameters" : [
11075 {
11076 "type" : "header",
11077 "value" : "vlan_tag"
11078 }
11079 ],
11080 "source_info" : {
11081 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011082 "line" : 313,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011083 "column" : 8,
11084 "source_fragment" : "hdr.vlan_tag.setInvalid()"
11085 }
11086 }
11087 ]
11088 },
11089 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011090 "name" : "act_23",
11091 "id" : 101,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011092 "runtime_data" : [],
11093 "primitives" : [
11094 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011095 "op" : "exit",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011096 "parameters" : [],
11097 "source_info" : {
11098 "filename" : "include/control/packetio.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011099 "line" : 41,
11100 "column" : 12,
11101 "source_fragment" : "exit"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011102 }
11103 }
11104 ]
11105 },
11106 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011107 "name" : "act_24",
11108 "id" : 102,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011109 "runtime_data" : [],
11110 "primitives" : [
11111 {
11112 "op" : "add_header",
11113 "parameters" : [
11114 {
11115 "type" : "header",
11116 "value" : "packet_in"
11117 }
11118 ],
11119 "source_info" : {
11120 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011121 "line" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011122 "column" : 12,
11123 "source_fragment" : "hdr.packet_in.setValid()"
11124 }
11125 },
11126 {
11127 "op" : "assign",
11128 "parameters" : [
11129 {
11130 "type" : "field",
11131 "value" : ["packet_in", "ingress_port"]
11132 },
11133 {
11134 "type" : "field",
11135 "value" : ["standard_metadata", "ingress_port"]
11136 }
11137 ],
11138 "source_info" : {
11139 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011140 "line" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011141 "column" : 12,
11142 "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
11143 }
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011144 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011145 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011146 "op" : "exit",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011147 "parameters" : [],
11148 "source_info" : {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011149 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011150 "line" : 47,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011151 "column" : 12,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011152 "source_fragment" : "exit"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011153 }
11154 }
11155 ]
11156 },
11157 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011158 "name" : "act_25",
11159 "id" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011160 "runtime_data" : [],
11161 "primitives" : [
11162 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011163 "op" : "mark_to_drop",
11164 "parameters" : [
11165 {
11166 "type" : "header",
11167 "value" : "standard_metadata"
11168 }
11169 ],
11170 "source_info" : {
11171 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011172 "line" : 334,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011173 "column" : 12,
11174 "source_fragment" : "mark_to_drop(standard_metadata)"
11175 }
11176 }
11177 ]
11178 },
11179 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011180 "name" : "act_26",
11181 "id" : 104,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011182 "runtime_data" : [],
11183 "primitives" : [
11184 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011185 "op" : "assign",
11186 "parameters" : [
11187 {
11188 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011189 "value" : ["scalars", "egress_next_tmp"]
11190 },
11191 {
11192 "type" : "expression",
11193 "value" : {
11194 "type" : "expression",
11195 "value" : {
11196 "op" : "b2d",
11197 "left" : null,
11198 "right" : {
11199 "type" : "bool",
11200 "value" : true
11201 }
11202 }
11203 }
11204 }
11205 ]
11206 }
11207 ]
11208 },
11209 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011210 "name" : "act_27",
11211 "id" : 105,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011212 "runtime_data" : [],
11213 "primitives" : [
11214 {
11215 "op" : "assign",
11216 "parameters" : [
11217 {
11218 "type" : "field",
11219 "value" : ["scalars", "egress_next_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011220 },
11221 {
11222 "type" : "expression",
11223 "value" : {
11224 "type" : "expression",
11225 "value" : {
11226 "op" : "b2d",
11227 "left" : null,
11228 "right" : {
11229 "type" : "bool",
11230 "value" : false
11231 }
11232 }
11233 }
11234 }
11235 ]
11236 }
11237 ]
11238 },
11239 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011240 "name" : "act_28",
11241 "id" : 106,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011242 "runtime_data" : [],
11243 "primitives" : [
11244 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011245 "op" : "mark_to_drop",
11246 "parameters" : [
11247 {
11248 "type" : "header",
11249 "value" : "standard_metadata"
11250 }
11251 ],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011252 "source_info" : {
11253 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011254 "line" : 367,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011255 "column" : 35,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011256 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011257 }
11258 }
11259 ]
11260 },
11261 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011262 "name" : "act_29",
11263 "id" : 107,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011264 "runtime_data" : [],
11265 "primitives" : [
11266 {
11267 "op" : "assign",
11268 "parameters" : [
11269 {
11270 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011271 "value" : ["mpls", "ttl"]
11272 },
11273 {
11274 "type" : "expression",
11275 "value" : {
11276 "type" : "expression",
11277 "value" : {
11278 "op" : "&",
11279 "left" : {
11280 "type" : "expression",
11281 "value" : {
11282 "op" : "+",
11283 "left" : {
11284 "type" : "field",
11285 "value" : ["mpls", "ttl"]
11286 },
11287 "right" : {
11288 "type" : "hexstr",
11289 "value" : "0xff"
11290 }
11291 }
11292 },
11293 "right" : {
11294 "type" : "hexstr",
11295 "value" : "0xff"
11296 }
11297 }
11298 }
11299 }
11300 ],
11301 "source_info" : {
11302 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011303 "line" : 366,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011304 "column" : 12,
11305 "source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
11306 }
11307 }
11308 ]
11309 },
11310 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011311 "name" : "act_30",
11312 "id" : 108,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011313 "runtime_data" : [],
11314 "primitives" : [
11315 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011316 "op" : "mark_to_drop",
11317 "parameters" : [
11318 {
11319 "type" : "header",
11320 "value" : "standard_metadata"
11321 }
11322 ],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011323 "source_info" : {
11324 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011325 "line" : 371,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011326 "column" : 39,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011327 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011328 }
11329 }
11330 ]
11331 },
11332 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011333 "name" : "act_31",
11334 "id" : 109,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011335 "runtime_data" : [],
11336 "primitives" : [
11337 {
11338 "op" : "assign",
11339 "parameters" : [
11340 {
11341 "type" : "field",
11342 "value" : ["ipv4", "ttl"]
11343 },
11344 {
11345 "type" : "expression",
11346 "value" : {
11347 "type" : "expression",
11348 "value" : {
11349 "op" : "&",
11350 "left" : {
11351 "type" : "expression",
11352 "value" : {
11353 "op" : "+",
11354 "left" : {
11355 "type" : "field",
11356 "value" : ["ipv4", "ttl"]
11357 },
11358 "right" : {
11359 "type" : "hexstr",
11360 "value" : "0xff"
11361 }
11362 }
11363 },
11364 "right" : {
11365 "type" : "hexstr",
11366 "value" : "0xff"
11367 }
11368 }
11369 }
11370 }
11371 ],
11372 "source_info" : {
11373 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011374 "line" : 370,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011375 "column" : 16,
11376 "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
11377 }
11378 }
11379 ]
11380 },
11381 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011382 "name" : "act_32",
11383 "id" : 110,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011384 "runtime_data" : [],
11385 "primitives" : [
11386 {
11387 "op" : "assign",
11388 "parameters" : [
11389 {
11390 "type" : "field",
11391 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
11392 },
11393 {
11394 "type" : "expression",
11395 "value" : {
11396 "type" : "expression",
11397 "value" : {
11398 "op" : "b2d",
11399 "left" : null,
11400 "right" : {
11401 "type" : "bool",
11402 "value" : false
11403 }
11404 }
11405 }
11406 }
11407 ]
11408 }
11409 ]
11410 },
11411 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011412 "name" : "act_33",
11413 "id" : 111,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011414 "runtime_data" : [],
11415 "primitives" : [
11416 {
11417 "op" : "assign",
11418 "parameters" : [
11419 {
11420 "type" : "field",
11421 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011422 },
11423 {
11424 "type" : "expression",
11425 "value" : {
11426 "type" : "expression",
11427 "value" : {
11428 "op" : "b2d",
11429 "left" : null,
11430 "right" : {
11431 "type" : "bool",
11432 "value" : true
11433 }
11434 }
11435 }
11436 }
11437 ],
11438 "source_info" : {
11439 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011440 "line" : 420,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011441 "column" : 12,
11442 "source_fragment" : "return"
11443 }
11444 }
11445 ]
11446 },
11447 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011448 "name" : "act_34",
11449 "id" : 112,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011450 "runtime_data" : [],
11451 "primitives" : [
11452 {
11453 "op" : "assign",
11454 "parameters" : [
11455 {
11456 "type" : "field",
11457 "value" : ["ipv4", "total_len"]
11458 },
11459 {
11460 "type" : "expression",
11461 "value" : {
11462 "type" : "expression",
11463 "value" : {
11464 "op" : "&",
11465 "left" : {
11466 "type" : "expression",
11467 "value" : {
11468 "op" : "+",
11469 "left" : {
11470 "type" : "field",
11471 "value" : ["ipv4", "total_len"]
11472 },
11473 "right" : {
11474 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011475 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011476 }
11477 }
11478 },
11479 "right" : {
11480 "type" : "hexstr",
11481 "value" : "0xffff"
11482 }
11483 }
11484 }
11485 }
11486 ],
11487 "source_info" : {
11488 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011489 "line" : 428,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011490 "column" : 12,
11491 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + fmeta.int_meta.new_bytes"
11492 }
11493 }
11494 ]
11495 },
11496 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011497 "name" : "act_35",
11498 "id" : 113,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011499 "runtime_data" : [],
11500 "primitives" : [
11501 {
11502 "op" : "assign",
11503 "parameters" : [
11504 {
11505 "type" : "field",
11506 "value" : ["int_header", "total_hop_cnt"]
11507 },
11508 {
11509 "type" : "expression",
11510 "value" : {
11511 "type" : "expression",
11512 "value" : {
11513 "op" : "&",
11514 "left" : {
11515 "type" : "expression",
11516 "value" : {
11517 "op" : "+",
11518 "left" : {
11519 "type" : "field",
11520 "value" : ["int_header", "total_hop_cnt"]
11521 },
11522 "right" : {
11523 "type" : "hexstr",
11524 "value" : "0x01"
11525 }
11526 }
11527 },
11528 "right" : {
11529 "type" : "hexstr",
11530 "value" : "0xff"
11531 }
11532 }
11533 }
11534 }
11535 ],
11536 "source_info" : {
11537 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011538 "line" : 425,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011539 "column" : 8,
11540 "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
11541 }
11542 }
11543 ]
11544 },
11545 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011546 "name" : "act_36",
11547 "id" : 114,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011548 "runtime_data" : [],
11549 "primitives" : [
11550 {
11551 "op" : "assign",
11552 "parameters" : [
11553 {
11554 "type" : "field",
11555 "value" : ["udp", "len"]
11556 },
11557 {
11558 "type" : "expression",
11559 "value" : {
11560 "type" : "expression",
11561 "value" : {
11562 "op" : "&",
11563 "left" : {
11564 "type" : "expression",
11565 "value" : {
11566 "op" : "+",
11567 "left" : {
11568 "type" : "field",
11569 "value" : ["udp", "len"]
11570 },
11571 "right" : {
11572 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011573 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes29"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011574 }
11575 }
11576 },
11577 "right" : {
11578 "type" : "hexstr",
11579 "value" : "0xffff"
11580 }
11581 }
11582 }
11583 }
11584 ],
11585 "source_info" : {
11586 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011587 "line" : 431,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011588 "column" : 12,
11589 "source_fragment" : "hdr.udp.len = hdr.udp.len + fmeta.int_meta.new_bytes"
11590 }
11591 }
11592 ]
11593 },
11594 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011595 "name" : "act_37",
11596 "id" : 115,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011597 "runtime_data" : [],
11598 "primitives" : [
11599 {
11600 "op" : "assign",
11601 "parameters" : [
11602 {
11603 "type" : "field",
11604 "value" : ["intl4_shim", "len_words"]
11605 },
11606 {
11607 "type" : "expression",
11608 "value" : {
11609 "type" : "expression",
11610 "value" : {
11611 "op" : "&",
11612 "left" : {
11613 "type" : "expression",
11614 "value" : {
11615 "op" : "+",
11616 "left" : {
11617 "type" : "field",
11618 "value" : ["intl4_shim", "len_words"]
11619 },
11620 "right" : {
11621 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011622 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words28"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011623 }
11624 }
11625 },
11626 "right" : {
11627 "type" : "hexstr",
11628 "value" : "0xff"
11629 }
11630 }
11631 }
11632 }
11633 ],
11634 "source_info" : {
11635 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011636 "line" : 434,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011637 "column" : 12,
11638 "source_fragment" : "hdr.intl4_shim.len_words = hdr.intl4_shim.len_words + fmeta.int_meta.new_words"
11639 }
11640 }
11641 ]
11642 }
11643 ],
11644 "pipelines" : [
11645 {
11646 "name" : "ingress",
11647 "id" : 0,
11648 "source_info" : {
11649 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -070011650 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011651 "column" : 8,
11652 "source_fragment" : "FabricIngress"
11653 },
11654 "init_table" : "tbl_act",
11655 "tables" : [
11656 {
11657 "name" : "tbl_act",
11658 "id" : 0,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011659 "source_info" : {
11660 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -070011661 "line" : 62,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011662 "column" : 50,
11663 "source_fragment" : "hdr.gtpu_ipv4, hdr.gtpu_udp"
11664 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011665 "key" : [],
11666 "match_type" : "exact",
11667 "type" : "simple",
11668 "max_size" : 1024,
11669 "with_counters" : false,
11670 "support_timeout" : false,
11671 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011672 "action_ids" : [34],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011673 "actions" : ["act_0"],
11674 "base_default_next" : "node_3",
11675 "next_tables" : {
11676 "act_0" : "node_3"
11677 },
11678 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011679 "action_id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011680 "action_const" : true,
11681 "action_data" : [],
11682 "action_entry_const" : true
11683 }
11684 },
11685 {
11686 "name" : "tbl_act_0",
11687 "id" : 1,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011688 "source_info" : {
11689 "filename" : "include/spgw.p4",
11690 "line" : 30,
11691 "column" : 32,
11692 "source_fragment" : "return"
11693 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011694 "key" : [],
11695 "match_type" : "exact",
11696 "type" : "simple",
11697 "max_size" : 1024,
11698 "with_counters" : false,
11699 "support_timeout" : false,
11700 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011701 "action_ids" : [33],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011702 "actions" : ["act"],
11703 "base_default_next" : "node_5",
11704 "next_tables" : {
11705 "act" : "node_5"
11706 },
11707 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011708 "action_id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011709 "action_const" : true,
11710 "action_data" : [],
11711 "action_entry_const" : true
11712 }
11713 },
11714 {
11715 "name" : "tbl_act_1",
11716 "id" : 2,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011717 "source_info" : {
11718 "filename" : "include/spgw.p4",
11719 "line" : 31,
11720 "column" : 18,
11721 "source_fragment" : "= ipv4; ..."
11722 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011723 "key" : [],
11724 "match_type" : "exact",
11725 "type" : "simple",
11726 "max_size" : 1024,
11727 "with_counters" : false,
11728 "support_timeout" : false,
11729 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011730 "action_ids" : [37],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011731 "actions" : ["act_3"],
11732 "base_default_next" : "node_7",
11733 "next_tables" : {
11734 "act_3" : "node_7"
11735 },
11736 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011737 "action_id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011738 "action_const" : true,
11739 "action_data" : [],
11740 "action_entry_const" : true
11741 }
11742 },
11743 {
11744 "name" : "tbl_act_2",
11745 "id" : 3,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011746 "source_info" : {
11747 "filename" : "include/spgw.p4",
11748 "line" : 35,
11749 "column" : 16,
11750 "source_fragment" : "="
11751 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011752 "key" : [],
11753 "match_type" : "exact",
11754 "type" : "simple",
11755 "max_size" : 1024,
11756 "with_counters" : false,
11757 "support_timeout" : false,
11758 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011759 "action_ids" : [35],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011760 "actions" : ["act_1"],
11761 "base_default_next" : "node_10",
11762 "next_tables" : {
11763 "act_1" : "node_10"
11764 },
11765 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011766 "action_id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011767 "action_const" : true,
11768 "action_data" : [],
11769 "action_entry_const" : true
11770 }
11771 },
11772 {
11773 "name" : "tbl_act_3",
11774 "id" : 4,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011775 "source_info" : {
11776 "filename" : "include/spgw.p4",
11777 "line" : 37,
11778 "column" : 12,
11779 "source_fragment" : "udp.setInvalid()"
11780 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011781 "key" : [],
11782 "match_type" : "exact",
11783 "type" : "simple",
11784 "max_size" : 1024,
11785 "with_counters" : false,
11786 "support_timeout" : false,
11787 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011788 "action_ids" : [36],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011789 "actions" : ["act_2"],
11790 "base_default_next" : "node_10",
11791 "next_tables" : {
11792 "act_2" : "node_10"
11793 },
11794 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011795 "action_id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011796 "action_const" : true,
11797 "action_data" : [],
11798 "action_entry_const" : true
11799 }
11800 },
11801 {
11802 "name" : "tbl_act_4",
11803 "id" : 5,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011804 "source_info" : {
11805 "filename" : "include/control/packetio.p4",
11806 "line" : 25,
11807 "column" : 42,
11808 "source_fragment" : "= hdr.packet_out.egress_port; ..."
11809 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011810 "key" : [],
11811 "match_type" : "exact",
11812 "type" : "simple",
11813 "max_size" : 1024,
11814 "with_counters" : false,
11815 "support_timeout" : false,
11816 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011817 "action_ids" : [38],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011818 "actions" : ["act_4"],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011819 "base_default_next" : "node_12",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011820 "next_tables" : {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011821 "act_4" : "node_12"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011822 },
11823 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011824 "action_id" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011825 "action_const" : true,
11826 "action_data" : [],
11827 "action_entry_const" : true
11828 }
11829 },
11830 {
11831 "name" : "tbl_act_5",
11832 "id" : 6,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011833 "source_info" : {
11834 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011835 "line" : 110,
11836 "column" : 36,
11837 "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
Carmelo Cascone3032b872019-04-13 01:23:54 -070011838 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011839 "key" : [],
11840 "match_type" : "exact",
11841 "type" : "simple",
11842 "max_size" : 1024,
11843 "with_counters" : false,
11844 "support_timeout" : false,
11845 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011846 "action_ids" : [39],
11847 "actions" : ["act_5"],
11848 "base_default_next" : "node_14",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011849 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011850 "act_5" : "node_14"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011851 },
11852 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011853 "action_id" : 39,
11854 "action_const" : true,
11855 "action_data" : [],
11856 "action_entry_const" : true
11857 }
11858 },
11859 {
11860 "name" : "tbl_act_6",
11861 "id" : 7,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011862 "source_info" : {
11863 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011864 "line" : 126,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011865 "column" : 37,
11866 "source_fragment" : "="
11867 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011868 "key" : [],
11869 "match_type" : "exact",
11870 "type" : "simple",
11871 "max_size" : 1024,
11872 "with_counters" : false,
11873 "support_timeout" : false,
11874 "direct_meters" : null,
11875 "action_ids" : [40],
11876 "actions" : ["act_6"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070011877 "base_default_next" : "node_16",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011878 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011879 "act_6" : "node_16"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011880 },
11881 "default_entry" : {
11882 "action_id" : 40,
11883 "action_const" : true,
11884 "action_data" : [],
11885 "action_entry_const" : true
11886 }
11887 },
11888 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011889 "name" : "tbl_act_7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011890 "id" : 8,
11891 "source_info" : {
11892 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070011893 "line" : 131,
11894 "column" : 42,
11895 "source_fragment" : "="
11896 },
11897 "key" : [],
11898 "match_type" : "exact",
11899 "type" : "simple",
11900 "max_size" : 1024,
11901 "with_counters" : false,
11902 "support_timeout" : false,
11903 "direct_meters" : null,
11904 "action_ids" : [41],
11905 "actions" : ["act_7"],
11906 "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
11907 "next_tables" : {
11908 "act_7" : "FabricIngress.filtering.ingress_port_vlan"
11909 },
11910 "default_entry" : {
11911 "action_id" : 41,
11912 "action_const" : true,
11913 "action_data" : [],
11914 "action_entry_const" : true
11915 }
11916 },
11917 {
11918 "name" : "tbl_act_8",
11919 "id" : 9,
11920 "source_info" : {
11921 "filename" : "include/control/filtering.p4",
11922 "line" : 136,
11923 "column" : 50,
11924 "source_fragment" : "="
11925 },
11926 "key" : [],
11927 "match_type" : "exact",
11928 "type" : "simple",
11929 "max_size" : 1024,
11930 "with_counters" : false,
11931 "support_timeout" : false,
11932 "direct_meters" : null,
11933 "action_ids" : [42],
11934 "actions" : ["act_8"],
11935 "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
11936 "next_tables" : {
11937 "act_8" : "FabricIngress.filtering.ingress_port_vlan"
11938 },
11939 "default_entry" : {
11940 "action_id" : 42,
11941 "action_const" : true,
11942 "action_data" : [],
11943 "action_entry_const" : true
11944 }
11945 },
11946 {
11947 "name" : "tbl_act_9",
11948 "id" : 10,
11949 "source_info" : {
11950 "filename" : "include/control/filtering.p4",
11951 "line" : 139,
11952 "column" : 50,
11953 "source_fragment" : "="
11954 },
11955 "key" : [],
11956 "match_type" : "exact",
11957 "type" : "simple",
11958 "max_size" : 1024,
11959 "with_counters" : false,
11960 "support_timeout" : false,
11961 "direct_meters" : null,
11962 "action_ids" : [43],
11963 "actions" : ["act_9"],
11964 "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
11965 "next_tables" : {
11966 "act_9" : "FabricIngress.filtering.ingress_port_vlan"
11967 },
11968 "default_entry" : {
11969 "action_id" : 43,
11970 "action_const" : true,
11971 "action_data" : [],
11972 "action_entry_const" : true
11973 }
11974 },
11975 {
11976 "name" : "tbl_act_10",
11977 "id" : 11,
11978 "source_info" : {
11979 "filename" : "include/control/filtering.p4",
11980 "line" : 141,
11981 "column" : 46,
11982 "source_fragment" : "="
11983 },
11984 "key" : [],
11985 "match_type" : "exact",
11986 "type" : "simple",
11987 "max_size" : 1024,
11988 "with_counters" : false,
11989 "support_timeout" : false,
11990 "direct_meters" : null,
11991 "action_ids" : [44],
11992 "actions" : ["act_10"],
11993 "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
11994 "next_tables" : {
11995 "act_10" : "FabricIngress.filtering.ingress_port_vlan"
11996 },
11997 "default_entry" : {
11998 "action_id" : 44,
11999 "action_const" : true,
12000 "action_data" : [],
12001 "action_entry_const" : true
12002 }
12003 },
12004 {
12005 "name" : "FabricIngress.filtering.ingress_port_vlan",
12006 "id" : 12,
12007 "source_info" : {
12008 "filename" : "include/control/filtering.p4",
12009 "line" : 53,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012010 "column" : 10,
12011 "source_fragment" : "ingress_port_vlan"
12012 },
12013 "key" : [
12014 {
12015 "match_type" : "exact",
12016 "name" : "ig_port",
12017 "target" : ["standard_metadata", "ingress_port"],
12018 "mask" : null
12019 },
12020 {
12021 "match_type" : "exact",
12022 "name" : "vlan_is_valid",
12023 "target" : ["vlan_tag", "$valid$"],
12024 "mask" : null
12025 },
12026 {
12027 "match_type" : "ternary",
12028 "name" : "vlan_id",
12029 "target" : ["vlan_tag", "vlan_id"],
12030 "mask" : null
Daniele Moro7c3a0022019-07-12 13:38:34 -070012031 },
12032 {
12033 "match_type" : "ternary",
12034 "name" : "inner_vlan_id",
12035 "target" : ["inner_vlan_tag", "vlan_id"],
12036 "mask" : null
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012037 }
12038 ],
12039 "match_type" : "ternary",
12040 "type" : "simple",
12041 "max_size" : 1024,
12042 "with_counters" : true,
12043 "support_timeout" : false,
12044 "direct_meters" : null,
12045 "action_ids" : [13, 14, 15],
12046 "actions" : ["FabricIngress.filtering.deny", "FabricIngress.filtering.permit", "FabricIngress.filtering.permit_with_internal_vlan"],
12047 "base_default_next" : "FabricIngress.filtering.fwd_classifier",
12048 "next_tables" : {
12049 "FabricIngress.filtering.deny" : "FabricIngress.filtering.fwd_classifier",
12050 "FabricIngress.filtering.permit" : "FabricIngress.filtering.fwd_classifier",
12051 "FabricIngress.filtering.permit_with_internal_vlan" : "FabricIngress.filtering.fwd_classifier"
12052 },
12053 "default_entry" : {
12054 "action_id" : 13,
12055 "action_const" : true,
12056 "action_data" : [],
12057 "action_entry_const" : true
12058 }
12059 },
12060 {
12061 "name" : "FabricIngress.filtering.fwd_classifier",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012062 "id" : 13,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012063 "source_info" : {
12064 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012065 "line" : 90,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012066 "column" : 10,
12067 "source_fragment" : "fwd_classifier"
12068 },
12069 "key" : [
12070 {
12071 "match_type" : "exact",
12072 "name" : "ig_port",
12073 "target" : ["standard_metadata", "ingress_port"],
12074 "mask" : null
12075 },
12076 {
12077 "match_type" : "ternary",
12078 "name" : "eth_dst",
12079 "target" : ["ethernet", "dst_addr"],
12080 "mask" : null
12081 },
12082 {
12083 "match_type" : "exact",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012084 "name" : "is_ipv4",
12085 "target" : ["scalars", "fabric_metadata_t._is_ipv41"],
12086 "mask" : null
12087 },
12088 {
12089 "match_type" : "exact",
12090 "name" : "is_ipv6",
12091 "target" : ["scalars", "fabric_metadata_t._is_ipv62"],
12092 "mask" : null
12093 },
12094 {
12095 "match_type" : "exact",
12096 "name" : "is_mpls",
12097 "target" : ["scalars", "fabric_metadata_t._is_mpls3"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012098 "mask" : null
12099 }
12100 ],
12101 "match_type" : "ternary",
12102 "type" : "simple",
12103 "max_size" : 1024,
12104 "with_counters" : true,
12105 "support_timeout" : false,
12106 "direct_meters" : null,
12107 "action_ids" : [16],
12108 "actions" : ["FabricIngress.filtering.set_forwarding_type"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070012109 "base_default_next" : "tbl_act_11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012110 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012111 "FabricIngress.filtering.set_forwarding_type" : "tbl_act_11"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012112 },
12113 "default_entry" : {
12114 "action_id" : 16,
12115 "action_const" : true,
12116 "action_data" : ["0x0"],
12117 "action_entry_const" : true
12118 }
12119 },
12120 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012121 "name" : "tbl_act_11",
12122 "id" : 14,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012123 "key" : [],
12124 "match_type" : "exact",
12125 "type" : "simple",
12126 "max_size" : 1024,
12127 "with_counters" : false,
12128 "support_timeout" : false,
12129 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012130 "action_ids" : [53],
12131 "actions" : ["act_19"],
12132 "base_default_next" : "node_26",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012133 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012134 "act_19" : "node_26"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012135 },
12136 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012137 "action_id" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012138 "action_const" : true,
12139 "action_data" : [],
12140 "action_entry_const" : true
12141 }
12142 },
12143 {
12144 "name" : "FabricIngress.spgw_ingress.s1u_filter_table",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012145 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012146 "source_info" : {
12147 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012148 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012149 "column" : 10,
12150 "source_fragment" : "s1u_filter_table"
12151 },
12152 "key" : [
12153 {
12154 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012155 "name" : "gtp_ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012156 "target" : ["gtpu_ipv4", "dst_addr"],
12157 "mask" : null
12158 }
12159 ],
12160 "match_type" : "exact",
12161 "type" : "simple",
12162 "max_size" : 1024,
12163 "with_counters" : false,
12164 "support_timeout" : false,
12165 "direct_meters" : null,
12166 "action_ids" : [1],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012167 "actions" : ["nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012168 "base_default_next" : null,
12169 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012170 "__HIT__" : "tbl_act_12",
12171 "__MISS__" : "tbl_act_13"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012172 },
12173 "default_entry" : {
12174 "action_id" : 1,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012175 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012176 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012177 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012178 }
12179 },
12180 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012181 "name" : "tbl_act_12",
12182 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012183 "key" : [],
12184 "match_type" : "exact",
12185 "type" : "simple",
12186 "max_size" : 1024,
12187 "with_counters" : false,
12188 "support_timeout" : false,
12189 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012190 "action_ids" : [45],
12191 "actions" : ["act_11"],
12192 "base_default_next" : "node_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012193 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012194 "act_11" : "node_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012195 },
12196 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012197 "action_id" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012198 "action_const" : true,
12199 "action_data" : [],
12200 "action_entry_const" : true
12201 }
12202 },
12203 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012204 "name" : "tbl_act_13",
12205 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012206 "key" : [],
12207 "match_type" : "exact",
12208 "type" : "simple",
12209 "max_size" : 1024,
12210 "with_counters" : false,
12211 "support_timeout" : false,
12212 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012213 "action_ids" : [46],
12214 "actions" : ["act_12"],
12215 "base_default_next" : "node_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012216 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012217 "act_12" : "node_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012218 },
12219 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012220 "action_id" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012221 "action_const" : true,
12222 "action_data" : [],
12223 "action_entry_const" : true
12224 }
12225 },
12226 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012227 "name" : "tbl_act_14",
12228 "id" : 18,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012229 "source_info" : {
12230 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012231 "line" : 149,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012232 "column" : 16,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012233 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Cascone3032b872019-04-13 01:23:54 -070012234 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012235 "key" : [],
12236 "match_type" : "exact",
12237 "type" : "simple",
12238 "max_size" : 1024,
12239 "with_counters" : false,
12240 "support_timeout" : false,
12241 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012242 "action_ids" : [47],
12243 "actions" : ["act_13"],
12244 "base_default_next" : "tbl_act_15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012245 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012246 "act_13" : "tbl_act_15"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012247 },
12248 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012249 "action_id" : 47,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012250 "action_const" : true,
12251 "action_data" : [],
12252 "action_entry_const" : true
12253 }
12254 },
12255 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012256 "name" : "tbl_act_15",
12257 "id" : 19,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012258 "source_info" : {
12259 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012260 "line" : 151,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012261 "column" : 39,
12262 "source_fragment" : "="
12263 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012264 "key" : [],
12265 "match_type" : "exact",
12266 "type" : "simple",
12267 "max_size" : 1024,
12268 "with_counters" : false,
12269 "support_timeout" : false,
12270 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012271 "action_ids" : [48],
12272 "actions" : ["act_14"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012273 "base_default_next" : "tbl_spgw_ingress_gtpu_decap",
12274 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012275 "act_14" : "tbl_spgw_ingress_gtpu_decap"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012276 },
12277 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012278 "action_id" : 48,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012279 "action_const" : true,
12280 "action_data" : [],
12281 "action_entry_const" : true
12282 }
12283 },
12284 {
12285 "name" : "tbl_spgw_ingress_gtpu_decap",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012286 "id" : 20,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012287 "source_info" : {
12288 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012289 "line" : 152,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012290 "column" : 12,
12291 "source_fragment" : "gtpu_decap()"
12292 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012293 "key" : [],
12294 "match_type" : "exact",
12295 "type" : "simple",
12296 "max_size" : 1024,
12297 "with_counters" : false,
12298 "support_timeout" : false,
12299 "direct_meters" : null,
12300 "action_ids" : [10],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012301 "actions" : ["FabricIngress.spgw_ingress.gtpu_decap"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070012302 "base_default_next" : "node_40",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012303 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012304 "FabricIngress.spgw_ingress.gtpu_decap" : "node_40"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012305 },
12306 "default_entry" : {
12307 "action_id" : 10,
12308 "action_const" : true,
12309 "action_data" : [],
12310 "action_entry_const" : true
12311 }
12312 },
12313 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012314 "name" : "FabricIngress.spgw_ingress.dl_sess_lookup",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012315 "id" : 21,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012316 "source_info" : {
12317 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012318 "line" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012319 "column" : 10,
12320 "source_fragment" : "dl_sess_lookup"
12321 },
12322 "key" : [
12323 {
12324 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012325 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012326 "target" : ["ipv4", "dst_addr"],
12327 "mask" : null
12328 }
12329 ],
12330 "match_type" : "exact",
12331 "type" : "simple",
12332 "max_size" : 1024,
12333 "with_counters" : true,
12334 "support_timeout" : false,
12335 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012336 "action_ids" : [11, 0],
12337 "actions" : ["FabricIngress.spgw_ingress.set_dl_sess_info", "nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012338 "base_default_next" : null,
12339 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012340 "__HIT__" : "tbl_act_16",
12341 "__MISS__" : "tbl_act_17"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012342 },
12343 "default_entry" : {
12344 "action_id" : 0,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012345 "action_const" : true,
12346 "action_data" : [],
12347 "action_entry_const" : true
12348 }
12349 },
12350 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012351 "name" : "tbl_act_16",
12352 "id" : 22,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012353 "key" : [],
12354 "match_type" : "exact",
12355 "type" : "simple",
12356 "max_size" : 1024,
12357 "with_counters" : false,
12358 "support_timeout" : false,
12359 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012360 "action_ids" : [49],
12361 "actions" : ["act_15"],
12362 "base_default_next" : "node_37",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012363 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012364 "act_15" : "node_37"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012365 },
12366 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012367 "action_id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012368 "action_const" : true,
12369 "action_data" : [],
12370 "action_entry_const" : true
12371 }
12372 },
12373 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012374 "name" : "tbl_act_17",
12375 "id" : 23,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012376 "key" : [],
12377 "match_type" : "exact",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012378 "type" : "simple",
12379 "max_size" : 1024,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012380 "with_counters" : false,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012381 "support_timeout" : false,
12382 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012383 "action_ids" : [50],
12384 "actions" : ["act_16"],
12385 "base_default_next" : "node_37",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012386 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012387 "act_16" : "node_37"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012388 },
12389 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012390 "action_id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012391 "action_const" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012392 "action_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012393 "action_entry_const" : true
12394 }
12395 },
12396 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012397 "name" : "tbl_act_18",
12398 "id" : 24,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012399 "source_info" : {
12400 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012401 "line" : 154,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012402 "column" : 39,
12403 "source_fragment" : "="
12404 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012405 "key" : [],
12406 "match_type" : "exact",
12407 "type" : "simple",
12408 "max_size" : 1024,
12409 "with_counters" : false,
12410 "support_timeout" : false,
12411 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012412 "action_ids" : [51],
12413 "actions" : ["act_17"],
12414 "base_default_next" : "node_40",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012415 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012416 "act_17" : "node_40"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012417 },
12418 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012419 "action_id" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012420 "action_const" : true,
12421 "action_data" : [],
12422 "action_entry_const" : true
12423 }
12424 },
12425 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012426 "name" : "tbl_act_19",
12427 "id" : 25,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012428 "source_info" : {
12429 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012430 "line" : 156,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012431 "column" : 39,
12432 "source_fragment" : "= SPGW_DIR_UNKNOWN; ..."
12433 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012434 "key" : [],
12435 "match_type" : "exact",
12436 "type" : "simple",
12437 "max_size" : 1024,
12438 "with_counters" : false,
12439 "support_timeout" : false,
12440 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012441 "action_ids" : [52],
12442 "actions" : ["act_18"],
12443 "base_default_next" : "node_40",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012444 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012445 "act_18" : "node_40"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012446 },
12447 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012448 "action_id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012449 "action_const" : true,
12450 "action_data" : [],
12451 "action_entry_const" : true
12452 }
12453 },
12454 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012455 "name" : "tbl_act_20",
12456 "id" : 26,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012457 "source_info" : {
12458 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012459 "line" : 175,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012460 "column" : 34,
12461 "source_fragment" : "="
12462 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012463 "key" : [],
12464 "match_type" : "exact",
12465 "type" : "simple",
12466 "max_size" : 1024,
12467 "with_counters" : false,
12468 "support_timeout" : false,
12469 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012470 "action_ids" : [54],
12471 "actions" : ["act_20"],
12472 "base_default_next" : "node_42",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012473 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012474 "act_20" : "node_42"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012475 },
12476 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012477 "action_id" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012478 "action_const" : true,
12479 "action_data" : [],
12480 "action_entry_const" : true
12481 }
12482 },
12483 {
12484 "name" : "FabricIngress.forwarding.bridging",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012485 "id" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012486 "source_info" : {
12487 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012488 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012489 "column" : 10,
12490 "source_fragment" : "bridging"
12491 },
12492 "key" : [
12493 {
12494 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012495 "name" : "vlan_id",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012496 "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012497 "mask" : null
12498 },
12499 {
12500 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012501 "name" : "eth_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012502 "target" : ["ethernet", "dst_addr"],
12503 "mask" : null
12504 }
12505 ],
12506 "match_type" : "ternary",
12507 "type" : "simple",
12508 "max_size" : 1024,
12509 "with_counters" : true,
12510 "support_timeout" : false,
12511 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012512 "action_ids" : [17, 3],
12513 "actions" : ["FabricIngress.forwarding.set_next_id_bridging", "nop"],
12514 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012515 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012516 "FabricIngress.forwarding.set_next_id_bridging" : "FabricIngress.acl.acl",
12517 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012518 },
12519 "default_entry" : {
12520 "action_id" : 3,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012521 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012522 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012523 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012524 }
12525 },
12526 {
12527 "name" : "FabricIngress.forwarding.mpls",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012528 "id" : 28,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012529 "source_info" : {
12530 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012531 "line" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012532 "column" : 10,
12533 "source_fragment" : "mpls"
12534 },
12535 "key" : [
12536 {
12537 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012538 "name" : "mpls_label",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012539 "target" : ["scalars", "fabric_metadata_t._mpls_label8"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012540 "mask" : null
12541 }
12542 ],
12543 "match_type" : "exact",
12544 "type" : "simple",
12545 "max_size" : 1024,
12546 "with_counters" : true,
12547 "support_timeout" : false,
12548 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012549 "action_ids" : [18, 4],
12550 "actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "nop"],
12551 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012552 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012553 "FabricIngress.forwarding.pop_mpls_and_next" : "FabricIngress.acl.acl",
12554 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012555 },
12556 "default_entry" : {
12557 "action_id" : 4,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012558 "action_const" : true,
12559 "action_data" : [],
12560 "action_entry_const" : true
12561 }
12562 },
12563 {
12564 "name" : "FabricIngress.forwarding.routing_v4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012565 "id" : 29,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012566 "source_info" : {
12567 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012568 "line" : 101,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012569 "column" : 10,
12570 "source_fragment" : "routing_v4"
12571 },
12572 "key" : [
12573 {
12574 "match_type" : "lpm",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012575 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012576 "target" : ["ipv4", "dst_addr"],
12577 "mask" : null
12578 }
12579 ],
12580 "match_type" : "lpm",
12581 "type" : "simple",
12582 "max_size" : 1024,
12583 "with_counters" : true,
12584 "support_timeout" : false,
12585 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012586 "action_ids" : [19, 20, 5],
12587 "actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "nop"],
12588 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012589 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012590 "FabricIngress.forwarding.set_next_id_routing_v4" : "FabricIngress.acl.acl",
12591 "FabricIngress.forwarding.nop_routing_v4" : "FabricIngress.acl.acl",
12592 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012593 },
12594 "default_entry" : {
12595 "action_id" : 5,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012596 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012597 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012598 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012599 }
12600 },
12601 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012602 "name" : "FabricIngress.acl.acl",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012603 "id" : 30,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012604 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012605 "filename" : "include/control/acl.p4",
12606 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012607 "column" : 10,
12608 "source_fragment" : "acl"
12609 },
12610 "key" : [
12611 {
12612 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012613 "name" : "ig_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012614 "target" : ["standard_metadata", "ingress_port"],
12615 "mask" : null
12616 },
12617 {
12618 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012619 "name" : "ip_proto",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012620 "target" : ["scalars", "fabric_metadata_t._ip_proto16"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012621 "mask" : null
12622 },
12623 {
12624 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012625 "name" : "l4_sport",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012626 "target" : ["scalars", "fabric_metadata_t._l4_sport17"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012627 "mask" : null
12628 },
12629 {
12630 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012631 "name" : "l4_dport",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012632 "target" : ["scalars", "fabric_metadata_t._l4_dport18"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012633 "mask" : null
12634 },
12635 {
12636 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012637 "name" : "eth_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012638 "target" : ["ethernet", "dst_addr"],
12639 "mask" : null
12640 },
12641 {
12642 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012643 "name" : "eth_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012644 "target" : ["ethernet", "src_addr"],
12645 "mask" : null
12646 },
12647 {
12648 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012649 "name" : "vlan_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012650 "target" : ["vlan_tag", "vlan_id"],
12651 "mask" : null
12652 },
12653 {
12654 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012655 "name" : "eth_type",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012656 "target" : ["scalars", "fabric_metadata_t._last_eth_type0"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012657 "mask" : null
12658 },
12659 {
12660 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012661 "name" : "ipv4_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012662 "target" : ["ipv4", "src_addr"],
12663 "mask" : null
12664 },
12665 {
12666 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012667 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012668 "target" : ["ipv4", "dst_addr"],
12669 "mask" : null
12670 },
12671 {
12672 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012673 "name" : "icmp_type",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012674 "target" : ["icmp", "icmp_type"],
12675 "mask" : null
12676 },
12677 {
12678 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012679 "name" : "icmp_code",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012680 "target" : ["icmp", "icmp_code"],
12681 "mask" : null
12682 }
12683 ],
12684 "match_type" : "ternary",
12685 "type" : "simple",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012686 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012687 "with_counters" : true,
12688 "support_timeout" : false,
12689 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012690 "action_ids" : [21, 22, 23, 24, 25],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012691 "actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.set_clone_session_id", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070012692 "base_default_next" : "node_50",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012693 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012694 "FabricIngress.acl.set_next_id_acl" : "node_50",
12695 "FabricIngress.acl.punt_to_cpu" : "node_50",
12696 "FabricIngress.acl.set_clone_session_id" : "node_50",
12697 "FabricIngress.acl.drop" : "node_50",
12698 "FabricIngress.acl.nop_acl" : "node_50"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012699 },
12700 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012701 "action_id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012702 "action_const" : true,
12703 "action_data" : [],
12704 "action_entry_const" : true
12705 }
12706 },
12707 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012708 "name" : "FabricIngress.next.xconnect",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012709 "id" : 31,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012710 "source_info" : {
12711 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012712 "line" : 116,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012713 "column" : 10,
12714 "source_fragment" : "xconnect"
12715 },
12716 "key" : [
12717 {
12718 "match_type" : "exact",
12719 "name" : "ig_port",
12720 "target" : ["standard_metadata", "ingress_port"],
12721 "mask" : null
12722 },
12723 {
12724 "match_type" : "exact",
12725 "name" : "next_id",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012726 "target" : ["scalars", "fabric_metadata_t._next_id13"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012727 "mask" : null
12728 }
12729 ],
12730 "match_type" : "exact",
12731 "type" : "simple",
12732 "max_size" : 1024,
12733 "with_counters" : true,
12734 "support_timeout" : false,
12735 "direct_meters" : null,
12736 "action_ids" : [27, 28, 7],
12737 "actions" : ["FabricIngress.next.output_xconnect", "FabricIngress.next.set_next_id_xconnect", "nop"],
12738 "base_default_next" : "FabricIngress.next.hashed",
12739 "next_tables" : {
12740 "FabricIngress.next.output_xconnect" : "FabricIngress.next.hashed",
12741 "FabricIngress.next.set_next_id_xconnect" : "FabricIngress.next.hashed",
12742 "nop" : "FabricIngress.next.hashed"
12743 },
12744 "default_entry" : {
12745 "action_id" : 7,
12746 "action_const" : true,
12747 "action_data" : [],
12748 "action_entry_const" : true
12749 }
12750 },
12751 {
12752 "name" : "FabricIngress.next.hashed",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012753 "id" : 32,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012754 "source_info" : {
12755 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012756 "line" : 196,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012757 "column" : 10,
12758 "source_fragment" : "hashed"
12759 },
12760 "key" : [
12761 {
12762 "match_type" : "exact",
12763 "name" : "next_id",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012764 "target" : ["scalars", "fabric_metadata_t._next_id13"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012765 "mask" : null
12766 }
12767 ],
12768 "match_type" : "exact",
12769 "type" : "indirect_ws",
12770 "action_profile" : "FabricIngress.next.hashed_selector",
12771 "max_size" : 1024,
12772 "with_counters" : true,
12773 "support_timeout" : false,
12774 "direct_meters" : null,
12775 "action_ids" : [29, 30, 31, 8],
12776 "actions" : ["FabricIngress.next.output_hashed", "FabricIngress.next.routing_hashed", "FabricIngress.next.mpls_routing_hashed", "nop"],
12777 "base_default_next" : "FabricIngress.next.multicast",
12778 "next_tables" : {
12779 "FabricIngress.next.output_hashed" : "FabricIngress.next.multicast",
12780 "FabricIngress.next.routing_hashed" : "FabricIngress.next.multicast",
12781 "FabricIngress.next.mpls_routing_hashed" : "FabricIngress.next.multicast",
12782 "nop" : "FabricIngress.next.multicast"
12783 }
12784 },
12785 {
12786 "name" : "FabricIngress.next.multicast",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012787 "id" : 33,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012788 "source_info" : {
12789 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012790 "line" : 230,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012791 "column" : 10,
12792 "source_fragment" : "multicast"
12793 },
12794 "key" : [
12795 {
12796 "match_type" : "exact",
12797 "name" : "next_id",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012798 "target" : ["scalars", "fabric_metadata_t._next_id13"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012799 "mask" : null
12800 }
12801 ],
12802 "match_type" : "exact",
12803 "type" : "simple",
12804 "max_size" : 1024,
12805 "with_counters" : true,
12806 "support_timeout" : false,
12807 "direct_meters" : null,
12808 "action_ids" : [32, 9],
12809 "actions" : ["FabricIngress.next.set_mcast_group_id", "nop"],
12810 "base_default_next" : "FabricIngress.next.next_vlan",
12811 "next_tables" : {
12812 "FabricIngress.next.set_mcast_group_id" : "FabricIngress.next.next_vlan",
12813 "nop" : "FabricIngress.next.next_vlan"
12814 },
12815 "default_entry" : {
12816 "action_id" : 9,
12817 "action_const" : true,
12818 "action_data" : [],
12819 "action_entry_const" : true
12820 }
12821 },
12822 {
12823 "name" : "FabricIngress.next.next_vlan",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012824 "id" : 34,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012825 "source_info" : {
12826 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012827 "line" : 82,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012828 "column" : 10,
12829 "source_fragment" : "next_vlan"
12830 },
12831 "key" : [
12832 {
12833 "match_type" : "exact",
12834 "name" : "next_id",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012835 "target" : ["scalars", "fabric_metadata_t._next_id13"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012836 "mask" : null
12837 }
12838 ],
12839 "match_type" : "exact",
12840 "type" : "simple",
12841 "max_size" : 1024,
12842 "with_counters" : true,
12843 "support_timeout" : false,
12844 "direct_meters" : null,
12845 "action_ids" : [26, 6],
12846 "actions" : ["FabricIngress.next.set_vlan", "nop"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070012847 "base_default_next" : "node_55",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012848 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012849 "FabricIngress.next.set_vlan" : "node_55",
12850 "nop" : "node_55"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012851 },
12852 "default_entry" : {
12853 "action_id" : 6,
12854 "action_const" : true,
12855 "action_data" : [],
12856 "action_entry_const" : true
12857 }
12858 },
12859 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012860 "name" : "tbl_act_21",
12861 "id" : 35,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012862 "source_info" : {
12863 "filename" : "include/control/port_counter.p4",
12864 "line" : 31,
12865 "column" : 12,
12866 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
12867 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012868 "key" : [],
12869 "match_type" : "exact",
12870 "type" : "simple",
12871 "max_size" : 1024,
12872 "with_counters" : false,
12873 "support_timeout" : false,
12874 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012875 "action_ids" : [55],
12876 "actions" : ["act_21"],
12877 "base_default_next" : "node_57",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012878 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012879 "act_21" : "node_57"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012880 },
12881 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012882 "action_id" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012883 "action_const" : true,
12884 "action_data" : [],
12885 "action_entry_const" : true
12886 }
12887 },
12888 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012889 "name" : "tbl_act_22",
12890 "id" : 36,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012891 "source_info" : {
12892 "filename" : "include/control/port_counter.p4",
12893 "line" : 34,
12894 "column" : 12,
12895 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
12896 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012897 "key" : [],
12898 "match_type" : "exact",
12899 "type" : "simple",
12900 "max_size" : 1024,
12901 "with_counters" : false,
12902 "support_timeout" : false,
12903 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070012904 "action_ids" : [56],
12905 "actions" : ["act_22"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012906 "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
12907 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012908 "act_22" : "FabricIngress.process_set_source_sink.tb_set_source"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012909 },
12910 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070012911 "action_id" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012912 "action_const" : true,
12913 "action_data" : [],
12914 "action_entry_const" : true
12915 }
12916 },
12917 {
12918 "name" : "FabricIngress.process_set_source_sink.tb_set_source",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012919 "id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012920 "source_info" : {
12921 "filename" : "include/int/int_main.p4",
12922 "line" : 46,
12923 "column" : 10,
12924 "source_fragment" : "tb_set_source"
12925 },
12926 "key" : [
12927 {
12928 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012929 "name" : "ig_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012930 "target" : ["standard_metadata", "ingress_port"],
12931 "mask" : null
12932 }
12933 ],
12934 "match_type" : "exact",
12935 "type" : "simple",
12936 "max_size" : 511,
12937 "with_counters" : true,
12938 "support_timeout" : false,
12939 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012940 "action_ids" : [12, 2],
12941 "actions" : ["FabricIngress.process_set_source_sink.int_set_source", "nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012942 "base_default_next" : null,
12943 "next_tables" : {
12944 "FabricIngress.process_set_source_sink.int_set_source" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012945 "nop" : null
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012946 },
12947 "default_entry" : {
12948 "action_id" : 2,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012949 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012950 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012951 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012952 }
12953 }
12954 ],
12955 "action_profiles" : [
12956 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012957 "name" : "FabricIngress.next.hashed_selector",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012958 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012959 "source_info" : {
12960 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012961 "line" : 177,
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012962 "column" : 57,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012963 "source_fragment" : "hashed_selector"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012964 },
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012965 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012966 "selector" : {
12967 "algo" : "crc16",
12968 "input" : [
12969 {
12970 "type" : "field",
12971 "value" : ["ipv4", "dst_addr"]
12972 },
12973 {
12974 "type" : "field",
12975 "value" : ["ipv4", "src_addr"]
12976 },
12977 {
12978 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012979 "value" : ["scalars", "fabric_metadata_t._ip_proto16"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012980 },
12981 {
12982 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012983 "value" : ["scalars", "fabric_metadata_t._l4_sport17"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012984 },
12985 {
12986 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012987 "value" : ["scalars", "fabric_metadata_t._l4_dport18"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012988 }
12989 ]
12990 }
12991 }
12992 ],
12993 "conditionals" : [
12994 {
12995 "name" : "node_3",
12996 "id" : 0,
12997 "source_info" : {
12998 "filename" : "include/spgw.p4",
12999 "line" : 30,
13000 "column" : 12,
13001 "source_fragment" : "! is_gtpu_encapped"
13002 },
13003 "expression" : {
13004 "type" : "expression",
13005 "value" : {
13006 "op" : "not",
13007 "left" : null,
13008 "right" : {
13009 "type" : "expression",
13010 "value" : {
13011 "op" : "d2b",
13012 "left" : null,
13013 "right" : {
13014 "type" : "field",
13015 "value" : ["gtpu", "$valid$"]
13016 }
13017 }
13018 }
13019 }
13020 },
13021 "true_next" : "tbl_act_0",
13022 "false_next" : "node_5"
13023 },
13024 {
13025 "name" : "node_5",
13026 "id" : 1,
13027 "expression" : {
13028 "type" : "expression",
13029 "value" : {
13030 "op" : "not",
13031 "left" : null,
13032 "right" : {
13033 "type" : "expression",
13034 "value" : {
13035 "op" : "d2b",
13036 "left" : null,
13037 "right" : {
13038 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013039 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013040 }
13041 }
13042 }
13043 }
13044 },
13045 "true_next" : "tbl_act_1",
13046 "false_next" : "node_10"
13047 },
13048 {
13049 "name" : "node_7",
13050 "id" : 2,
13051 "source_info" : {
13052 "filename" : "include/spgw.p4",
13053 "line" : 34,
13054 "column" : 12,
13055 "source_fragment" : "inner_udp.isValid()"
13056 },
13057 "expression" : {
13058 "type" : "expression",
13059 "value" : {
13060 "op" : "d2b",
13061 "left" : null,
13062 "right" : {
13063 "type" : "field",
13064 "value" : ["inner_udp", "$valid$"]
13065 }
13066 }
13067 },
13068 "true_next" : "tbl_act_2",
13069 "false_next" : "tbl_act_3"
13070 },
13071 {
13072 "name" : "node_10",
13073 "id" : 3,
13074 "source_info" : {
13075 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013076 "line" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013077 "column" : 12,
13078 "source_fragment" : "hdr.packet_out.isValid()"
13079 },
13080 "expression" : {
13081 "type" : "expression",
13082 "value" : {
13083 "op" : "d2b",
13084 "left" : null,
13085 "right" : {
13086 "type" : "field",
13087 "value" : ["packet_out", "$valid$"]
13088 }
13089 }
13090 },
13091 "true_next" : "tbl_act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013092 "false_next" : "node_12"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013093 },
13094 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013095 "name" : "node_12",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013096 "id" : 4,
13097 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013098 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013099 "line" : 109,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013100 "column" : 12,
13101 "source_fragment" : "hdr.vlan_tag.isValid()"
13102 },
13103 "expression" : {
13104 "type" : "expression",
13105 "value" : {
13106 "op" : "d2b",
13107 "left" : null,
13108 "right" : {
13109 "type" : "field",
13110 "value" : ["vlan_tag", "$valid$"]
13111 }
13112 }
13113 },
13114 "true_next" : "tbl_act_5",
13115 "false_next" : "node_14"
13116 },
13117 {
13118 "name" : "node_14",
13119 "id" : 5,
13120 "source_info" : {
13121 "filename" : "include/control/filtering.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013122 "line" : 121,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013123 "column" : 12,
13124 "source_fragment" : "!hdr.mpls.isValid()"
13125 },
13126 "expression" : {
13127 "type" : "expression",
13128 "value" : {
13129 "op" : "not",
13130 "left" : null,
13131 "right" : {
13132 "type" : "expression",
13133 "value" : {
13134 "op" : "d2b",
13135 "left" : null,
13136 "right" : {
13137 "type" : "field",
13138 "value" : ["mpls", "$valid$"]
13139 }
13140 }
13141 }
13142 }
13143 },
13144 "true_next" : "tbl_act_6",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013145 "false_next" : "node_16"
13146 },
13147 {
13148 "name" : "node_16",
13149 "id" : 6,
13150 "source_info" : {
13151 "filename" : "include/control/filtering.p4",
13152 "line" : 130,
13153 "column" : 12,
13154 "source_fragment" : "hdr.mpls.isValid()"
13155 },
13156 "expression" : {
13157 "type" : "expression",
13158 "value" : {
13159 "op" : "d2b",
13160 "left" : null,
13161 "right" : {
13162 "type" : "field",
13163 "value" : ["mpls", "$valid$"]
13164 }
13165 }
13166 },
13167 "true_next" : "tbl_act_7",
13168 "false_next" : "node_18"
13169 },
13170 {
13171 "name" : "node_18",
13172 "id" : 7,
13173 "source_info" : {
13174 "filename" : "include/control/filtering.p4",
13175 "line" : 133,
13176 "column" : 16,
13177 "source_fragment" : "hdr.vlan_tag.isValid()"
13178 },
13179 "expression" : {
13180 "type" : "expression",
13181 "value" : {
13182 "op" : "d2b",
13183 "left" : null,
13184 "right" : {
13185 "type" : "field",
13186 "value" : ["vlan_tag", "$valid$"]
13187 }
13188 }
13189 },
13190 "true_next" : "node_19",
13191 "false_next" : "tbl_act_10"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013192 },
13193 {
13194 "name" : "node_19",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013195 "id" : 8,
13196 "source_info" : {
13197 "filename" : "include/control/filtering.p4",
13198 "line" : 135,
13199 "column" : 19,
13200 "source_fragment" : "hdr.inner_vlan_tag.isValid()"
13201 },
13202 "expression" : {
13203 "type" : "expression",
13204 "value" : {
13205 "op" : "d2b",
13206 "left" : null,
13207 "right" : {
13208 "type" : "field",
13209 "value" : ["inner_vlan_tag", "$valid$"]
13210 }
13211 }
13212 },
13213 "true_next" : "tbl_act_8",
13214 "false_next" : "tbl_act_9"
13215 },
13216 {
13217 "name" : "node_26",
13218 "id" : 9,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013219 "source_info" : {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013220 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013221 "line" : 144,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013222 "column" : 12,
13223 "source_fragment" : "gtpu.isValid()"
13224 },
13225 "expression" : {
13226 "type" : "expression",
13227 "value" : {
13228 "op" : "d2b",
13229 "left" : null,
13230 "right" : {
13231 "type" : "field",
13232 "value" : ["gtpu", "$valid$"]
13233 }
13234 }
13235 },
13236 "true_next" : "FabricIngress.spgw_ingress.s1u_filter_table",
13237 "false_next" : "FabricIngress.spgw_ingress.dl_sess_lookup"
13238 },
13239 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013240 "name" : "node_30",
13241 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013242 "source_info" : {
13243 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013244 "line" : 148,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013245 "column" : 16,
13246 "source_fragment" : "!s1u_filter_table.apply().hit"
13247 },
13248 "expression" : {
13249 "type" : "expression",
13250 "value" : {
13251 "op" : "not",
13252 "left" : null,
13253 "right" : {
13254 "type" : "expression",
13255 "value" : {
13256 "op" : "d2b",
13257 "left" : null,
13258 "right" : {
13259 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013260 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013261 }
13262 }
13263 }
13264 }
13265 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070013266 "true_next" : "tbl_act_14",
13267 "false_next" : "tbl_act_15"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013268 },
13269 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013270 "name" : "node_37",
13271 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013272 "expression" : {
13273 "type" : "expression",
13274 "value" : {
13275 "op" : "d2b",
13276 "left" : null,
13277 "right" : {
13278 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013279 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013280 }
13281 }
13282 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070013283 "true_next" : "tbl_act_18",
13284 "false_next" : "tbl_act_19"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013285 },
13286 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013287 "name" : "node_40",
13288 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013289 "expression" : {
13290 "type" : "expression",
13291 "value" : {
13292 "op" : "not",
13293 "left" : null,
13294 "right" : {
13295 "type" : "expression",
13296 "value" : {
13297 "op" : "d2b",
13298 "left" : null,
13299 "right" : {
13300 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013301 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013302 }
13303 }
13304 }
13305 }
13306 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070013307 "true_next" : "tbl_act_20",
13308 "false_next" : "node_42"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013309 },
13310 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013311 "name" : "node_42",
13312 "id" : 13,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013313 "source_info" : {
13314 "filename" : "fabric.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013315 "line" : 71,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013316 "column" : 12,
13317 "source_fragment" : "fabric_metadata.skip_forwarding == false"
13318 },
13319 "expression" : {
13320 "type" : "expression",
13321 "value" : {
13322 "op" : "==",
13323 "left" : {
13324 "type" : "expression",
13325 "value" : {
13326 "op" : "d2b",
13327 "left" : null,
13328 "right" : {
13329 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013330 "value" : ["scalars", "fabric_metadata_t._skip_forwarding10"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013331 }
13332 }
13333 },
13334 "right" : {
13335 "type" : "bool",
13336 "value" : false
13337 }
13338 }
13339 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070013340 "true_next" : "node_43",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013341 "false_next" : "FabricIngress.acl.acl"
13342 },
13343 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013344 "name" : "node_43",
13345 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013346 "source_info" : {
13347 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070013348 "line" : 141,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013349 "column" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013350 "source_fragment" : "fabric_metadata.fwd_type == FWD_BRIDGING"
13351 },
13352 "expression" : {
13353 "type" : "expression",
13354 "value" : {
13355 "op" : "==",
13356 "left" : {
13357 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013358 "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013359 },
13360 "right" : {
13361 "type" : "hexstr",
13362 "value" : "0x00"
13363 }
13364 }
13365 },
13366 "true_next" : "FabricIngress.forwarding.bridging",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013367 "false_next" : "node_45"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013368 },
13369 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013370 "name" : "node_45",
13371 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013372 "source_info" : {
13373 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070013374 "line" : 142,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013375 "column" : 17,
13376 "source_fragment" : "fabric_metadata.fwd_type == FWD_MPLS"
13377 },
13378 "expression" : {
13379 "type" : "expression",
13380 "value" : {
13381 "op" : "==",
13382 "left" : {
13383 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013384 "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013385 },
13386 "right" : {
13387 "type" : "hexstr",
13388 "value" : "0x01"
13389 }
13390 }
13391 },
13392 "true_next" : "FabricIngress.forwarding.mpls",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013393 "false_next" : "node_47"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013394 },
13395 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013396 "name" : "node_47",
13397 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013398 "source_info" : {
13399 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070013400 "line" : 143,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013401 "column" : 17,
13402 "source_fragment" : "fabric_metadata.fwd_type == FWD_IPV4_UNICAST"
13403 },
13404 "expression" : {
13405 "type" : "expression",
13406 "value" : {
13407 "op" : "==",
13408 "left" : {
13409 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013410 "value" : ["scalars", "fabric_metadata_t._fwd_type12"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013411 },
13412 "right" : {
13413 "type" : "hexstr",
13414 "value" : "0x02"
13415 }
13416 }
13417 },
13418 "true_next" : "FabricIngress.forwarding.routing_v4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013419 "false_next" : "FabricIngress.acl.acl"
13420 },
13421 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013422 "name" : "node_50",
13423 "id" : 17,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013424 "source_info" : {
13425 "filename" : "fabric.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013426 "line" : 75,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013427 "column" : 12,
13428 "source_fragment" : "fabric_metadata.skip_next == false"
13429 },
13430 "expression" : {
13431 "type" : "expression",
13432 "value" : {
13433 "op" : "==",
13434 "left" : {
13435 "type" : "expression",
13436 "value" : {
13437 "op" : "d2b",
13438 "left" : null,
13439 "right" : {
13440 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013441 "value" : ["scalars", "fabric_metadata_t._skip_next11"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013442 }
13443 }
13444 },
13445 "right" : {
13446 "type" : "bool",
13447 "value" : false
13448 }
13449 }
13450 },
13451 "false_next" : null,
13452 "true_next" : "FabricIngress.next.xconnect"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013453 },
13454 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013455 "name" : "node_55",
13456 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013457 "source_info" : {
13458 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013459 "line" : 30,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013460 "column" : 12,
13461 "source_fragment" : "standard_metadata.egress_spec < 511"
13462 },
13463 "expression" : {
13464 "type" : "expression",
13465 "value" : {
13466 "op" : "<",
13467 "left" : {
13468 "type" : "field",
13469 "value" : ["standard_metadata", "egress_spec"]
13470 },
13471 "right" : {
13472 "type" : "hexstr",
13473 "value" : "0x01ff"
13474 }
13475 }
13476 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070013477 "true_next" : "tbl_act_21",
13478 "false_next" : "node_57"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013479 },
13480 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013481 "name" : "node_57",
13482 "id" : 19,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013483 "source_info" : {
13484 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013485 "line" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013486 "column" : 12,
13487 "source_fragment" : "standard_metadata.ingress_port < 511"
13488 },
13489 "expression" : {
13490 "type" : "expression",
13491 "value" : {
13492 "op" : "<",
13493 "left" : {
13494 "type" : "field",
13495 "value" : ["standard_metadata", "ingress_port"]
13496 },
13497 "right" : {
13498 "type" : "hexstr",
13499 "value" : "0x01ff"
13500 }
13501 }
13502 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070013503 "true_next" : "tbl_act_22",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013504 "false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
13505 }
13506 ]
13507 },
13508 {
13509 "name" : "egress",
13510 "id" : 1,
13511 "source_info" : {
13512 "filename" : "fabric.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013513 "line" : 93,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013514 "column" : 8,
13515 "source_fragment" : "FabricEgress"
13516 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070013517 "init_table" : "node_62",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013518 "tables" : [
13519 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013520 "name" : "tbl_act_23",
13521 "id" : 38,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013522 "source_info" : {
13523 "filename" : "include/control/packetio.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013524 "line" : 41,
13525 "column" : 12,
13526 "source_fragment" : "exit"
Carmelo Cascone3032b872019-04-13 01:23:54 -070013527 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013528 "key" : [],
13529 "match_type" : "exact",
13530 "type" : "simple",
13531 "max_size" : 1024,
13532 "with_counters" : false,
13533 "support_timeout" : false,
13534 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013535 "action_ids" : [101],
13536 "actions" : ["act_23"],
13537 "base_default_next" : "node_64",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013538 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013539 "act_23" : "node_64"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013540 },
13541 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013542 "action_id" : 101,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013543 "action_const" : true,
13544 "action_data" : [],
13545 "action_entry_const" : true
13546 }
13547 },
13548 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013549 "name" : "tbl_act_24",
13550 "id" : 39,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013551 "source_info" : {
13552 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013553 "line" : 44,
13554 "column" : 12,
13555 "source_fragment" : "hdr.packet_in.setValid(); ..."
Carmelo Cascone3032b872019-04-13 01:23:54 -070013556 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013557 "key" : [],
13558 "match_type" : "exact",
13559 "type" : "simple",
13560 "max_size" : 1024,
13561 "with_counters" : false,
13562 "support_timeout" : false,
13563 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013564 "action_ids" : [102],
13565 "actions" : ["act_24"],
13566 "base_default_next" : "node_66",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013567 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013568 "act_24" : "node_66"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013569 },
13570 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013571 "action_id" : 102,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013572 "action_const" : true,
13573 "action_data" : [],
13574 "action_entry_const" : true
13575 }
13576 },
13577 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013578 "name" : "tbl_act_25",
13579 "id" : 40,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013580 "source_info" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013581 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013582 "line" : 334,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013583 "column" : 12,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013584 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Cascone3032b872019-04-13 01:23:54 -070013585 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013586 "key" : [],
13587 "match_type" : "exact",
13588 "type" : "simple",
13589 "max_size" : 1024,
13590 "with_counters" : false,
13591 "support_timeout" : false,
13592 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013593 "action_ids" : [103],
13594 "actions" : ["act_25"],
13595 "base_default_next" : "node_68",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013596 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013597 "act_25" : "node_68"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013598 },
13599 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013600 "action_id" : 103,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013601 "action_const" : true,
13602 "action_data" : [],
13603 "action_entry_const" : true
13604 }
13605 },
13606 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013607 "name" : "tbl_egress_next_pop_mpls_if_present",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013608 "id" : 41,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013609 "source_info" : {
13610 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013611 "line" : 338,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013612 "column" : 36,
13613 "source_fragment" : "pop_mpls_if_present()"
13614 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013615 "key" : [],
13616 "match_type" : "exact",
13617 "type" : "simple",
13618 "max_size" : 1024,
13619 "with_counters" : false,
13620 "support_timeout" : false,
13621 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013622 "action_ids" : [97],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013623 "actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
13624 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
13625 "next_tables" : {
13626 "FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
13627 },
13628 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013629 "action_id" : 97,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013630 "action_const" : true,
13631 "action_data" : [],
13632 "action_entry_const" : true
13633 }
13634 },
13635 {
13636 "name" : "tbl_egress_next_set_mpls",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013637 "id" : 42,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013638 "source_info" : {
13639 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013640 "line" : 340,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013641 "column" : 12,
13642 "source_fragment" : "set_mpls()"
13643 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013644 "key" : [],
13645 "match_type" : "exact",
13646 "type" : "simple",
13647 "max_size" : 1024,
13648 "with_counters" : false,
13649 "support_timeout" : false,
13650 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013651 "action_ids" : [98],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013652 "actions" : ["FabricEgress.egress_next.set_mpls"],
13653 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
13654 "next_tables" : {
13655 "FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
13656 },
13657 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013658 "action_id" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013659 "action_const" : true,
13660 "action_data" : [],
13661 "action_entry_const" : true
13662 }
13663 },
13664 {
13665 "name" : "FabricEgress.egress_next.egress_vlan",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013666 "id" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013667 "source_info" : {
13668 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013669 "line" : 317,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013670 "column" : 10,
13671 "source_fragment" : "egress_vlan"
13672 },
13673 "key" : [
13674 {
13675 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013676 "name" : "vlan_id",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013677 "target" : ["scalars", "fabric_metadata_t._vlan_id5"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013678 "mask" : null
13679 },
13680 {
13681 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013682 "name" : "eg_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013683 "target" : ["standard_metadata", "egress_port"],
13684 "mask" : null
13685 }
13686 ],
13687 "match_type" : "exact",
13688 "type" : "simple",
13689 "max_size" : 1024,
13690 "with_counters" : true,
13691 "support_timeout" : false,
13692 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013693 "action_ids" : [100, 59],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013694 "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013695 "base_default_next" : null,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013696 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013697 "__HIT__" : "tbl_act_26",
13698 "__MISS__" : "tbl_act_27"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013699 },
13700 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013701 "action_id" : 59,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013702 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013703 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013704 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013705 }
13706 },
13707 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013708 "name" : "tbl_act_26",
13709 "id" : 44,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013710 "key" : [],
13711 "match_type" : "exact",
13712 "type" : "simple",
13713 "max_size" : 1024,
13714 "with_counters" : false,
13715 "support_timeout" : false,
13716 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013717 "action_ids" : [104],
13718 "actions" : ["act_26"],
13719 "base_default_next" : "node_75",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013720 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013721 "act_26" : "node_75"
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013722 },
13723 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013724 "action_id" : 104,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013725 "action_const" : true,
13726 "action_data" : [],
13727 "action_entry_const" : true
13728 }
13729 },
13730 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013731 "name" : "tbl_act_27",
13732 "id" : 45,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013733 "key" : [],
13734 "match_type" : "exact",
13735 "type" : "simple",
13736 "max_size" : 1024,
13737 "with_counters" : false,
13738 "support_timeout" : false,
13739 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013740 "action_ids" : [105],
13741 "actions" : ["act_27"],
13742 "base_default_next" : "node_75",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013743 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013744 "act_27" : "node_75"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013745 },
13746 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013747 "action_id" : 105,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013748 "action_const" : true,
13749 "action_data" : [],
13750 "action_entry_const" : true
13751 }
13752 },
13753 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013754 "name" : "tbl_egress_next_push_vlan",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013755 "id" : 46,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013756 "source_info" : {
13757 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013758 "line" : 357,
13759 "column" : 20,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013760 "source_fragment" : "push_vlan()"
13761 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013762 "key" : [],
13763 "match_type" : "exact",
13764 "type" : "simple",
13765 "max_size" : 1024,
13766 "with_counters" : false,
13767 "support_timeout" : false,
13768 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013769 "action_ids" : [99],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013770 "actions" : ["FabricEgress.egress_next.push_vlan"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070013771 "base_default_next" : "node_78",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013772 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013773 "FabricEgress.egress_next.push_vlan" : "node_78"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013774 },
13775 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013776 "action_id" : 99,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013777 "action_const" : true,
13778 "action_data" : [],
13779 "action_entry_const" : true
13780 }
13781 },
13782 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013783 "name" : "tbl_act_28",
13784 "id" : 47,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013785 "source_info" : {
13786 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013787 "line" : 366,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013788 "column" : 25,
13789 "source_fragment" : "="
13790 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013791 "key" : [],
13792 "match_type" : "exact",
13793 "type" : "simple",
13794 "max_size" : 1024,
13795 "with_counters" : false,
13796 "support_timeout" : false,
13797 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013798 "action_ids" : [107],
13799 "actions" : ["act_29"],
13800 "base_default_next" : "node_80",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013801 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013802 "act_29" : "node_80"
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013803 },
13804 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013805 "action_id" : 107,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013806 "action_const" : true,
13807 "action_data" : [],
13808 "action_entry_const" : true
13809 }
13810 },
13811 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013812 "name" : "tbl_act_29",
13813 "id" : 48,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013814 "source_info" : {
13815 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013816 "line" : 367,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013817 "column" : 35,
13818 "source_fragment" : "mark_to_drop(standard_metadata)"
13819 },
13820 "key" : [],
13821 "match_type" : "exact",
13822 "type" : "simple",
13823 "max_size" : 1024,
13824 "with_counters" : false,
13825 "support_timeout" : false,
13826 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013827 "action_ids" : [106],
13828 "actions" : ["act_28"],
13829 "base_default_next" : "node_86",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013830 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013831 "act_28" : "node_86"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013832 },
13833 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013834 "action_id" : 106,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013835 "action_const" : true,
13836 "action_data" : [],
13837 "action_entry_const" : true
13838 }
13839 },
13840 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013841 "name" : "tbl_act_30",
13842 "id" : 49,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013843 "source_info" : {
13844 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013845 "line" : 370,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013846 "column" : 29,
13847 "source_fragment" : "="
13848 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013849 "key" : [],
13850 "match_type" : "exact",
13851 "type" : "simple",
13852 "max_size" : 1024,
13853 "with_counters" : false,
13854 "support_timeout" : false,
13855 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013856 "action_ids" : [109],
13857 "actions" : ["act_31"],
13858 "base_default_next" : "node_84",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013859 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013860 "act_31" : "node_84"
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013861 },
13862 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013863 "action_id" : 109,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013864 "action_const" : true,
13865 "action_data" : [],
13866 "action_entry_const" : true
13867 }
13868 },
13869 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013870 "name" : "tbl_act_31",
13871 "id" : 50,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013872 "source_info" : {
13873 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013874 "line" : 371,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013875 "column" : 39,
13876 "source_fragment" : "mark_to_drop(standard_metadata)"
13877 },
13878 "key" : [],
13879 "match_type" : "exact",
13880 "type" : "simple",
13881 "max_size" : 1024,
13882 "with_counters" : false,
13883 "support_timeout" : false,
13884 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013885 "action_ids" : [108],
13886 "actions" : ["act_30"],
13887 "base_default_next" : "node_86",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013888 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013889 "act_30" : "node_86"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013890 },
13891 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013892 "action_id" : 108,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013893 "action_const" : true,
13894 "action_data" : [],
13895 "action_entry_const" : true
13896 }
13897 },
13898 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013899 "name" : "tbl_spgw_egress_gtpu_encap",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013900 "id" : 51,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013901 "source_info" : {
13902 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013903 "line" : 228,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013904 "column" : 12,
13905 "source_fragment" : "gtpu_encap()"
13906 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013907 "key" : [],
13908 "match_type" : "exact",
13909 "type" : "simple",
13910 "max_size" : 1024,
13911 "with_counters" : false,
13912 "support_timeout" : false,
13913 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013914 "action_ids" : [62],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013915 "actions" : ["FabricEgress.spgw_egress.gtpu_encap"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070013916 "base_default_next" : "node_88",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013917 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013918 "FabricEgress.spgw_egress.gtpu_encap" : "node_88"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013919 },
13920 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013921 "action_id" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013922 "action_const" : true,
13923 "action_data" : [],
13924 "action_entry_const" : true
13925 }
13926 },
13927 {
13928 "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013929 "id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013930 "source_info" : {
13931 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013932 "line" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013933 "column" : 10,
13934 "source_fragment" : "tb_int_source"
13935 },
13936 "key" : [
13937 {
13938 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013939 "name" : "ipv4_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013940 "target" : ["ipv4", "src_addr"],
13941 "mask" : null
13942 },
13943 {
13944 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013945 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013946 "target" : ["ipv4", "dst_addr"],
13947 "mask" : null
13948 },
13949 {
13950 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013951 "name" : "l4_sport",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013952 "target" : ["scalars", "fabric_metadata_t._l4_sport17"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013953 "mask" : null
13954 },
13955 {
13956 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013957 "name" : "l4_dport",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013958 "target" : ["scalars", "fabric_metadata_t._l4_dport18"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013959 "mask" : null
13960 }
13961 ],
13962 "match_type" : "ternary",
13963 "type" : "simple",
13964 "max_size" : 1024,
13965 "with_counters" : true,
13966 "support_timeout" : false,
13967 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013968 "action_ids" : [63, 57],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013969 "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070013970 "base_default_next" : "node_91",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013971 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013972 "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_91",
13973 "nop" : "node_91"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013974 },
13975 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013976 "action_id" : 57,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013977 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013978 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013979 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013980 }
13981 },
13982 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013983 "name" : "tbl_act_32",
13984 "id" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013985 "key" : [],
13986 "match_type" : "exact",
13987 "type" : "simple",
13988 "max_size" : 1024,
13989 "with_counters" : false,
13990 "support_timeout" : false,
13991 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013992 "action_ids" : [110],
13993 "actions" : ["act_32"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013994 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
13995 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013996 "act_32" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013997 },
13998 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070013999 "action_id" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014000 "action_const" : true,
14001 "action_data" : [],
14002 "action_entry_const" : true
14003 }
14004 },
14005 {
14006 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
Daniele Moro7c3a0022019-07-12 13:38:34 -070014007 "id" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014008 "source_info" : {
14009 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014010 "line" : 315,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014011 "column" : 10,
14012 "source_fragment" : "tb_int_insert"
14013 },
Carmelo Casconefa421582018-09-13 10:05:57 -070014014 "key" : [
14015 {
14016 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014017 "name" : "int_is_valid",
Carmelo Casconefa421582018-09-13 10:05:57 -070014018 "target" : ["int_header", "$valid$"],
14019 "mask" : null
14020 }
14021 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014022 "match_type" : "exact",
14023 "type" : "simple",
Carmelo Casconefa421582018-09-13 10:05:57 -070014024 "max_size" : 1,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014025 "with_counters" : false,
14026 "support_timeout" : false,
14027 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014028 "action_ids" : [64, 58],
Carmelo Casconefa421582018-09-13 10:05:57 -070014029 "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070014030 "base_default_next" : "node_94",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014031 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014032 "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_94",
14033 "nop" : "node_94"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014034 },
14035 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014036 "action_id" : 58,
Carmelo Casconefa421582018-09-13 10:05:57 -070014037 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014038 "action_data" : [],
Carmelo Casconefa421582018-09-13 10:05:57 -070014039 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014040 }
14041 },
14042 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014043 "name" : "tbl_act_33",
14044 "id" : 55,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014045 "source_info" : {
14046 "filename" : "include/int/int_transit.p4",
14047 "line" : 420,
14048 "column" : 12,
14049 "source_fragment" : "return"
14050 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014051 "key" : [],
14052 "match_type" : "exact",
14053 "type" : "simple",
14054 "max_size" : 1024,
14055 "with_counters" : false,
14056 "support_timeout" : false,
14057 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014058 "action_ids" : [111],
14059 "actions" : ["act_33"],
14060 "base_default_next" : "node_96",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014061 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014062 "act_33" : "node_96"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014063 },
14064 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014065 "action_id" : 111,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014066 "action_const" : true,
14067 "action_data" : [],
14068 "action_entry_const" : true
14069 }
14070 },
14071 {
14072 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
Daniele Moro7c3a0022019-07-12 13:38:34 -070014073 "id" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014074 "source_info" : {
14075 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014076 "line" : 331,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014077 "column" : 10,
14078 "source_fragment" : "tb_int_inst_0003"
14079 },
14080 "key" : [
14081 {
14082 "match_type" : "exact",
14083 "name" : "hdr.int_header.instruction_mask_0003",
14084 "target" : ["int_header", "instruction_mask_0003"],
14085 "mask" : null
14086 }
14087 ],
14088 "match_type" : "exact",
14089 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014090 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014091 "with_counters" : false,
14092 "support_timeout" : false,
14093 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014094 "action_ids" : [65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 60],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014095 "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"],
14096 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14097 "next_tables" : {
14098 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14099 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14100 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14101 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14102 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14103 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14104 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14105 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14106 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14107 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14108 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14109 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14110 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14111 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14112 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14113 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
14114 "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
14115 },
14116 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014117 "action_id" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014118 "action_const" : false,
14119 "action_data" : [],
14120 "action_entry_const" : false
14121 },
14122 "entries" : [
14123 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014124 "source_info" : {
14125 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014126 "line" : 354,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014127 "column" : 12,
14128 "source_fragment" : "(0x0) : int_set_header_0003_i0()"
14129 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014130 "match_key" : [
14131 {
14132 "match_type" : "exact",
14133 "key" : "0x00"
14134 }
14135 ],
14136 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014137 "action_id" : 65,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014138 "action_data" : []
14139 },
14140 "priority" : 1
14141 },
14142 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014143 "source_info" : {
14144 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014145 "line" : 355,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014146 "column" : 12,
14147 "source_fragment" : "(0x1) : int_set_header_0003_i1()"
14148 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014149 "match_key" : [
14150 {
14151 "match_type" : "exact",
14152 "key" : "0x01"
14153 }
14154 ],
14155 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014156 "action_id" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014157 "action_data" : []
14158 },
14159 "priority" : 2
14160 },
14161 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014162 "source_info" : {
14163 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014164 "line" : 356,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014165 "column" : 12,
14166 "source_fragment" : "(0x2) : int_set_header_0003_i2()"
14167 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014168 "match_key" : [
14169 {
14170 "match_type" : "exact",
14171 "key" : "0x02"
14172 }
14173 ],
14174 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014175 "action_id" : 67,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014176 "action_data" : []
14177 },
14178 "priority" : 3
14179 },
14180 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014181 "source_info" : {
14182 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014183 "line" : 357,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014184 "column" : 12,
14185 "source_fragment" : "(0x3) : int_set_header_0003_i3()"
14186 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014187 "match_key" : [
14188 {
14189 "match_type" : "exact",
14190 "key" : "0x03"
14191 }
14192 ],
14193 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014194 "action_id" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014195 "action_data" : []
14196 },
14197 "priority" : 4
14198 },
14199 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014200 "source_info" : {
14201 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014202 "line" : 358,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014203 "column" : 12,
14204 "source_fragment" : "(0x4) : int_set_header_0003_i4()"
14205 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014206 "match_key" : [
14207 {
14208 "match_type" : "exact",
14209 "key" : "0x04"
14210 }
14211 ],
14212 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014213 "action_id" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014214 "action_data" : []
14215 },
14216 "priority" : 5
14217 },
14218 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014219 "source_info" : {
14220 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014221 "line" : 359,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014222 "column" : 12,
14223 "source_fragment" : "(0x5) : int_set_header_0003_i5()"
14224 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014225 "match_key" : [
14226 {
14227 "match_type" : "exact",
14228 "key" : "0x05"
14229 }
14230 ],
14231 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014232 "action_id" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014233 "action_data" : []
14234 },
14235 "priority" : 6
14236 },
14237 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014238 "source_info" : {
14239 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014240 "line" : 360,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014241 "column" : 12,
14242 "source_fragment" : "(0x6) : int_set_header_0003_i6()"
14243 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014244 "match_key" : [
14245 {
14246 "match_type" : "exact",
14247 "key" : "0x06"
14248 }
14249 ],
14250 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014251 "action_id" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014252 "action_data" : []
14253 },
14254 "priority" : 7
14255 },
14256 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014257 "source_info" : {
14258 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014259 "line" : 361,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014260 "column" : 12,
14261 "source_fragment" : "(0x7) : int_set_header_0003_i7()"
14262 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014263 "match_key" : [
14264 {
14265 "match_type" : "exact",
14266 "key" : "0x07"
14267 }
14268 ],
14269 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014270 "action_id" : 72,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014271 "action_data" : []
14272 },
14273 "priority" : 8
14274 },
14275 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014276 "source_info" : {
14277 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014278 "line" : 362,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014279 "column" : 12,
14280 "source_fragment" : "(0x8) : int_set_header_0003_i8()"
14281 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014282 "match_key" : [
14283 {
14284 "match_type" : "exact",
14285 "key" : "0x08"
14286 }
14287 ],
14288 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014289 "action_id" : 73,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014290 "action_data" : []
14291 },
14292 "priority" : 9
14293 },
14294 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014295 "source_info" : {
14296 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014297 "line" : 363,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014298 "column" : 12,
14299 "source_fragment" : "(0x9) : int_set_header_0003_i9()"
14300 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014301 "match_key" : [
14302 {
14303 "match_type" : "exact",
14304 "key" : "0x09"
14305 }
14306 ],
14307 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014308 "action_id" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014309 "action_data" : []
14310 },
14311 "priority" : 10
14312 },
14313 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014314 "source_info" : {
14315 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014316 "line" : 364,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014317 "column" : 12,
14318 "source_fragment" : "(0xA) : int_set_header_0003_i10()"
14319 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014320 "match_key" : [
14321 {
14322 "match_type" : "exact",
14323 "key" : "0x0a"
14324 }
14325 ],
14326 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014327 "action_id" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014328 "action_data" : []
14329 },
14330 "priority" : 11
14331 },
14332 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014333 "source_info" : {
14334 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014335 "line" : 365,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014336 "column" : 12,
14337 "source_fragment" : "(0xB) : int_set_header_0003_i11()"
14338 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014339 "match_key" : [
14340 {
14341 "match_type" : "exact",
14342 "key" : "0x0b"
14343 }
14344 ],
14345 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014346 "action_id" : 76,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014347 "action_data" : []
14348 },
14349 "priority" : 12
14350 },
14351 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014352 "source_info" : {
14353 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014354 "line" : 366,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014355 "column" : 12,
14356 "source_fragment" : "(0xC) : int_set_header_0003_i12()"
14357 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014358 "match_key" : [
14359 {
14360 "match_type" : "exact",
14361 "key" : "0x0c"
14362 }
14363 ],
14364 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014365 "action_id" : 77,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014366 "action_data" : []
14367 },
14368 "priority" : 13
14369 },
14370 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014371 "source_info" : {
14372 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014373 "line" : 367,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014374 "column" : 12,
14375 "source_fragment" : "(0xD) : int_set_header_0003_i13()"
14376 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014377 "match_key" : [
14378 {
14379 "match_type" : "exact",
14380 "key" : "0x0d"
14381 }
14382 ],
14383 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014384 "action_id" : 78,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014385 "action_data" : []
14386 },
14387 "priority" : 14
14388 },
14389 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014390 "source_info" : {
14391 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014392 "line" : 368,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014393 "column" : 12,
14394 "source_fragment" : "(0xE) : int_set_header_0003_i14()"
14395 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014396 "match_key" : [
14397 {
14398 "match_type" : "exact",
14399 "key" : "0x0e"
14400 }
14401 ],
14402 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014403 "action_id" : 79,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014404 "action_data" : []
14405 },
14406 "priority" : 15
14407 },
14408 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014409 "source_info" : {
14410 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014411 "line" : 369,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014412 "column" : 12,
14413 "source_fragment" : "(0xF) : int_set_header_0003_i15()"
14414 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014415 "match_key" : [
14416 {
14417 "match_type" : "exact",
14418 "key" : "0x0f"
14419 }
14420 ],
14421 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014422 "action_id" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014423 "action_data" : []
14424 },
14425 "priority" : 16
14426 }
14427 ]
14428 },
14429 {
14430 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
Daniele Moro7c3a0022019-07-12 13:38:34 -070014431 "id" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014432 "source_info" : {
14433 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014434 "line" : 375,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014435 "column" : 10,
14436 "source_fragment" : "tb_int_inst_0407"
14437 },
14438 "key" : [
14439 {
14440 "match_type" : "exact",
14441 "name" : "hdr.int_header.instruction_mask_0407",
14442 "target" : ["int_header", "instruction_mask_0407"],
14443 "mask" : null
14444 }
14445 ],
14446 "match_type" : "exact",
14447 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014448 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014449 "with_counters" : false,
14450 "support_timeout" : false,
14451 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014452 "action_ids" : [81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 61],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014453 "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"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070014454 "base_default_next" : "tbl_act_34",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014455 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014456 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_34",
14457 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_34",
14458 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_34",
14459 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_34",
14460 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_34",
14461 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_34",
14462 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_34",
14463 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_34",
14464 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_34",
14465 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_34",
14466 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_34",
14467 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_34",
14468 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_34",
14469 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_34",
14470 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_34",
14471 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_34",
14472 "NoAction" : "tbl_act_34"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014473 },
14474 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014475 "action_id" : 61,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014476 "action_const" : false,
14477 "action_data" : [],
14478 "action_entry_const" : false
14479 },
14480 "entries" : [
14481 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014482 "source_info" : {
14483 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014484 "line" : 398,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014485 "column" : 12,
14486 "source_fragment" : "(0x0) : int_set_header_0407_i0()"
14487 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014488 "match_key" : [
14489 {
14490 "match_type" : "exact",
14491 "key" : "0x00"
14492 }
14493 ],
14494 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014495 "action_id" : 81,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014496 "action_data" : []
14497 },
14498 "priority" : 1
14499 },
14500 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014501 "source_info" : {
14502 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014503 "line" : 399,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014504 "column" : 12,
14505 "source_fragment" : "(0x1) : int_set_header_0407_i1()"
14506 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014507 "match_key" : [
14508 {
14509 "match_type" : "exact",
14510 "key" : "0x01"
14511 }
14512 ],
14513 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014514 "action_id" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014515 "action_data" : []
14516 },
14517 "priority" : 2
14518 },
14519 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014520 "source_info" : {
14521 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014522 "line" : 400,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014523 "column" : 12,
14524 "source_fragment" : "(0x2) : int_set_header_0407_i2()"
14525 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014526 "match_key" : [
14527 {
14528 "match_type" : "exact",
14529 "key" : "0x02"
14530 }
14531 ],
14532 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014533 "action_id" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014534 "action_data" : []
14535 },
14536 "priority" : 3
14537 },
14538 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014539 "source_info" : {
14540 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014541 "line" : 401,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014542 "column" : 12,
14543 "source_fragment" : "(0x3) : int_set_header_0407_i3()"
14544 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014545 "match_key" : [
14546 {
14547 "match_type" : "exact",
14548 "key" : "0x03"
14549 }
14550 ],
14551 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014552 "action_id" : 84,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014553 "action_data" : []
14554 },
14555 "priority" : 4
14556 },
14557 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014558 "source_info" : {
14559 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014560 "line" : 402,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014561 "column" : 12,
14562 "source_fragment" : "(0x4) : int_set_header_0407_i4()"
14563 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014564 "match_key" : [
14565 {
14566 "match_type" : "exact",
14567 "key" : "0x04"
14568 }
14569 ],
14570 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014571 "action_id" : 85,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014572 "action_data" : []
14573 },
14574 "priority" : 5
14575 },
14576 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014577 "source_info" : {
14578 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014579 "line" : 403,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014580 "column" : 12,
14581 "source_fragment" : "(0x5) : int_set_header_0407_i5()"
14582 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014583 "match_key" : [
14584 {
14585 "match_type" : "exact",
14586 "key" : "0x05"
14587 }
14588 ],
14589 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014590 "action_id" : 86,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014591 "action_data" : []
14592 },
14593 "priority" : 6
14594 },
14595 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014596 "source_info" : {
14597 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014598 "line" : 404,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014599 "column" : 12,
14600 "source_fragment" : "(0x6) : int_set_header_0407_i6()"
14601 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014602 "match_key" : [
14603 {
14604 "match_type" : "exact",
14605 "key" : "0x06"
14606 }
14607 ],
14608 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014609 "action_id" : 87,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014610 "action_data" : []
14611 },
14612 "priority" : 7
14613 },
14614 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014615 "source_info" : {
14616 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014617 "line" : 405,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014618 "column" : 12,
14619 "source_fragment" : "(0x7) : int_set_header_0407_i7()"
14620 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014621 "match_key" : [
14622 {
14623 "match_type" : "exact",
14624 "key" : "0x07"
14625 }
14626 ],
14627 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014628 "action_id" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014629 "action_data" : []
14630 },
14631 "priority" : 8
14632 },
14633 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014634 "source_info" : {
14635 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014636 "line" : 406,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014637 "column" : 12,
14638 "source_fragment" : "(0x8) : int_set_header_0407_i8()"
14639 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014640 "match_key" : [
14641 {
14642 "match_type" : "exact",
14643 "key" : "0x08"
14644 }
14645 ],
14646 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014647 "action_id" : 89,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014648 "action_data" : []
14649 },
14650 "priority" : 9
14651 },
14652 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014653 "source_info" : {
14654 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014655 "line" : 407,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014656 "column" : 12,
14657 "source_fragment" : "(0x9) : int_set_header_0407_i9()"
14658 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014659 "match_key" : [
14660 {
14661 "match_type" : "exact",
14662 "key" : "0x09"
14663 }
14664 ],
14665 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014666 "action_id" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014667 "action_data" : []
14668 },
14669 "priority" : 10
14670 },
14671 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014672 "source_info" : {
14673 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014674 "line" : 408,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014675 "column" : 12,
14676 "source_fragment" : "(0xA) : int_set_header_0407_i10()"
14677 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014678 "match_key" : [
14679 {
14680 "match_type" : "exact",
14681 "key" : "0x0a"
14682 }
14683 ],
14684 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014685 "action_id" : 91,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014686 "action_data" : []
14687 },
14688 "priority" : 11
14689 },
14690 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014691 "source_info" : {
14692 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014693 "line" : 409,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014694 "column" : 12,
14695 "source_fragment" : "(0xB) : int_set_header_0407_i11()"
14696 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014697 "match_key" : [
14698 {
14699 "match_type" : "exact",
14700 "key" : "0x0b"
14701 }
14702 ],
14703 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014704 "action_id" : 92,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014705 "action_data" : []
14706 },
14707 "priority" : 12
14708 },
14709 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014710 "source_info" : {
14711 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014712 "line" : 410,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014713 "column" : 12,
14714 "source_fragment" : "(0xC) : int_set_header_0407_i12()"
14715 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014716 "match_key" : [
14717 {
14718 "match_type" : "exact",
14719 "key" : "0x0c"
14720 }
14721 ],
14722 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014723 "action_id" : 93,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014724 "action_data" : []
14725 },
14726 "priority" : 13
14727 },
14728 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014729 "source_info" : {
14730 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014731 "line" : 411,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014732 "column" : 12,
14733 "source_fragment" : "(0xD) : int_set_header_0407_i13()"
14734 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014735 "match_key" : [
14736 {
14737 "match_type" : "exact",
14738 "key" : "0x0d"
14739 }
14740 ],
14741 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014742 "action_id" : 94,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014743 "action_data" : []
14744 },
14745 "priority" : 14
14746 },
14747 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014748 "source_info" : {
14749 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014750 "line" : 412,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014751 "column" : 12,
14752 "source_fragment" : "(0xE) : int_set_header_0407_i14()"
14753 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014754 "match_key" : [
14755 {
14756 "match_type" : "exact",
14757 "key" : "0x0e"
14758 }
14759 ],
14760 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014761 "action_id" : 95,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014762 "action_data" : []
14763 },
14764 "priority" : 15
14765 },
14766 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014767 "source_info" : {
14768 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014769 "line" : 413,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014770 "column" : 12,
14771 "source_fragment" : "(0xF) : int_set_header_0407_i15()"
14772 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014773 "match_key" : [
14774 {
14775 "match_type" : "exact",
14776 "key" : "0x0f"
14777 }
14778 ],
14779 "action_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014780 "action_id" : 96,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014781 "action_data" : []
14782 },
14783 "priority" : 16
14784 }
14785 ]
14786 },
14787 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014788 "name" : "tbl_act_34",
14789 "id" : 58,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014790 "source_info" : {
14791 "filename" : "include/int/int_transit.p4",
14792 "line" : 425,
14793 "column" : 37,
14794 "source_fragment" : "="
14795 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014796 "key" : [],
14797 "match_type" : "exact",
14798 "type" : "simple",
14799 "max_size" : 1024,
14800 "with_counters" : false,
14801 "support_timeout" : false,
14802 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014803 "action_ids" : [113],
14804 "actions" : ["act_35"],
14805 "base_default_next" : "node_100",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014806 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014807 "act_35" : "node_100"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014808 },
14809 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014810 "action_id" : 113,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014811 "action_const" : true,
14812 "action_data" : [],
14813 "action_entry_const" : true
14814 }
14815 },
14816 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014817 "name" : "tbl_act_35",
14818 "id" : 59,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014819 "source_info" : {
14820 "filename" : "include/int/int_transit.p4",
14821 "line" : 428,
14822 "column" : 31,
14823 "source_fragment" : "="
14824 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014825 "key" : [],
14826 "match_type" : "exact",
14827 "type" : "simple",
14828 "max_size" : 1024,
14829 "with_counters" : false,
14830 "support_timeout" : false,
14831 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014832 "action_ids" : [112],
14833 "actions" : ["act_34"],
14834 "base_default_next" : "node_102",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014835 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014836 "act_34" : "node_102"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014837 },
14838 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014839 "action_id" : 112,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014840 "action_const" : true,
14841 "action_data" : [],
14842 "action_entry_const" : true
14843 }
14844 },
14845 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014846 "name" : "tbl_act_36",
14847 "id" : 60,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014848 "source_info" : {
14849 "filename" : "include/int/int_transit.p4",
14850 "line" : 431,
14851 "column" : 24,
14852 "source_fragment" : "="
14853 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014854 "key" : [],
14855 "match_type" : "exact",
14856 "type" : "simple",
14857 "max_size" : 1024,
14858 "with_counters" : false,
14859 "support_timeout" : false,
14860 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014861 "action_ids" : [114],
14862 "actions" : ["act_36"],
14863 "base_default_next" : "node_104",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014864 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014865 "act_36" : "node_104"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014866 },
14867 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014868 "action_id" : 114,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014869 "action_const" : true,
14870 "action_data" : [],
14871 "action_entry_const" : true
14872 }
14873 },
14874 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014875 "name" : "tbl_act_37",
14876 "id" : 61,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014877 "source_info" : {
14878 "filename" : "include/int/int_transit.p4",
14879 "line" : 434,
14880 "column" : 37,
14881 "source_fragment" : "="
14882 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014883 "key" : [],
14884 "match_type" : "exact",
14885 "type" : "simple",
14886 "max_size" : 1024,
14887 "with_counters" : false,
14888 "support_timeout" : false,
14889 "direct_meters" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014890 "action_ids" : [115],
14891 "actions" : ["act_37"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014892 "base_default_next" : null,
14893 "next_tables" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014894 "act_37" : null
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014895 },
14896 "default_entry" : {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014897 "action_id" : 115,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014898 "action_const" : true,
14899 "action_data" : [],
14900 "action_entry_const" : true
14901 }
14902 }
14903 ],
14904 "action_profiles" : [],
14905 "conditionals" : [
14906 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014907 "name" : "node_62",
14908 "id" : 20,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014909 "source_info" : {
14910 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014911 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014912 "column" : 12,
14913 "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
14914 },
14915 "expression" : {
14916 "type" : "expression",
14917 "value" : {
14918 "op" : "==",
14919 "left" : {
14920 "type" : "expression",
14921 "value" : {
14922 "op" : "d2b",
14923 "left" : null,
14924 "right" : {
14925 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070014926 "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out15"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014927 }
14928 }
14929 },
14930 "right" : {
14931 "type" : "bool",
14932 "value" : true
14933 }
14934 }
14935 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070014936 "true_next" : "tbl_act_23",
14937 "false_next" : "node_64"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014938 },
14939 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014940 "name" : "node_64",
14941 "id" : 21,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014942 "source_info" : {
14943 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014944 "line" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014945 "column" : 12,
14946 "source_fragment" : "standard_metadata.egress_port == 255"
14947 },
14948 "expression" : {
14949 "type" : "expression",
14950 "value" : {
14951 "op" : "==",
14952 "left" : {
14953 "type" : "field",
14954 "value" : ["standard_metadata", "egress_port"]
14955 },
14956 "right" : {
14957 "type" : "hexstr",
14958 "value" : "0x00ff"
14959 }
14960 }
14961 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070014962 "true_next" : "tbl_act_24",
14963 "false_next" : "node_66"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014964 },
14965 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070014966 "name" : "node_66",
14967 "id" : 22,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014968 "source_info" : {
14969 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070014970 "line" : 332,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014971 "column" : 12,
14972 "source_fragment" : "fabric_metadata.is_multicast == true ..."
14973 },
14974 "expression" : {
14975 "type" : "expression",
14976 "value" : {
14977 "op" : "and",
14978 "left" : {
14979 "type" : "expression",
14980 "value" : {
14981 "op" : "==",
14982 "left" : {
14983 "type" : "expression",
14984 "value" : {
14985 "op" : "d2b",
14986 "left" : null,
14987 "right" : {
14988 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070014989 "value" : ["scalars", "fabric_metadata_t._is_multicast14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014990 }
14991 }
14992 },
14993 "right" : {
14994 "type" : "bool",
14995 "value" : true
14996 }
14997 }
14998 },
14999 "right" : {
15000 "type" : "expression",
15001 "value" : {
15002 "op" : "==",
15003 "left" : {
15004 "type" : "field",
15005 "value" : ["standard_metadata", "ingress_port"]
15006 },
15007 "right" : {
15008 "type" : "field",
15009 "value" : ["standard_metadata", "egress_port"]
15010 }
15011 }
15012 }
15013 }
15014 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015015 "true_next" : "tbl_act_25",
15016 "false_next" : "node_68"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015017 },
15018 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015019 "name" : "node_68",
15020 "id" : 23,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015021 "source_info" : {
15022 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015023 "line" : 337,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015024 "column" : 12,
15025 "source_fragment" : "fabric_metadata.mpls_label == 0"
15026 },
15027 "expression" : {
15028 "type" : "expression",
15029 "value" : {
15030 "op" : "==",
15031 "left" : {
15032 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015033 "value" : ["scalars", "fabric_metadata_t._mpls_label8"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015034 },
15035 "right" : {
15036 "type" : "hexstr",
15037 "value" : "0x000000"
15038 }
15039 }
15040 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015041 "true_next" : "node_69",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015042 "false_next" : "tbl_egress_next_set_mpls"
15043 },
15044 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015045 "name" : "node_69",
15046 "id" : 24,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015047 "source_info" : {
15048 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015049 "line" : 338,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015050 "column" : 16,
15051 "source_fragment" : "hdr.mpls.isValid()"
15052 },
15053 "expression" : {
15054 "type" : "expression",
15055 "value" : {
15056 "op" : "d2b",
15057 "left" : null,
15058 "right" : {
15059 "type" : "field",
15060 "value" : ["mpls", "$valid$"]
15061 }
15062 }
15063 },
15064 "true_next" : "tbl_egress_next_pop_mpls_if_present",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015065 "false_next" : "FabricEgress.egress_next.egress_vlan"
15066 },
15067 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015068 "name" : "node_75",
15069 "id" : 25,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015070 "source_info" : {
15071 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015072 "line" : 354,
15073 "column" : 16,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015074 "source_fragment" : "!egress_vlan.apply().hit"
15075 },
15076 "expression" : {
15077 "type" : "expression",
15078 "value" : {
15079 "op" : "not",
15080 "left" : null,
15081 "right" : {
15082 "type" : "expression",
15083 "value" : {
15084 "op" : "d2b",
15085 "left" : null,
15086 "right" : {
15087 "type" : "field",
15088 "value" : ["scalars", "egress_next_tmp"]
15089 }
15090 }
15091 }
15092 }
15093 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015094 "true_next" : "node_76",
15095 "false_next" : "node_78"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015096 },
15097 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015098 "name" : "node_76",
15099 "id" : 26,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015100 "source_info" : {
15101 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015102 "line" : 356,
15103 "column" : 20,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015104 "source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
15105 },
15106 "expression" : {
15107 "type" : "expression",
15108 "value" : {
15109 "op" : "!=",
15110 "left" : {
15111 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015112 "value" : ["scalars", "fabric_metadata_t._vlan_id5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015113 },
15114 "right" : {
15115 "type" : "hexstr",
15116 "value" : "0x0ffe"
15117 }
15118 }
15119 },
15120 "true_next" : "tbl_egress_next_push_vlan",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015121 "false_next" : "node_78"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015122 },
15123 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015124 "name" : "node_78",
15125 "id" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015126 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015127 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015128 "line" : 365,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015129 "column" : 12,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015130 "source_fragment" : "hdr.mpls.isValid()"
15131 },
15132 "expression" : {
15133 "type" : "expression",
15134 "value" : {
15135 "op" : "d2b",
15136 "left" : null,
15137 "right" : {
15138 "type" : "field",
15139 "value" : ["mpls", "$valid$"]
15140 }
15141 }
15142 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015143 "true_next" : "tbl_act_28",
15144 "false_next" : "node_82"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015145 },
15146 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015147 "name" : "node_80",
15148 "id" : 28,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015149 "source_info" : {
15150 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015151 "line" : 367,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015152 "column" : 16,
15153 "source_fragment" : "hdr.mpls.ttl == 0"
15154 },
15155 "expression" : {
15156 "type" : "expression",
15157 "value" : {
15158 "op" : "==",
15159 "left" : {
15160 "type" : "field",
15161 "value" : ["mpls", "ttl"]
15162 },
15163 "right" : {
15164 "type" : "hexstr",
15165 "value" : "0x00"
15166 }
15167 }
15168 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015169 "true_next" : "tbl_act_29",
15170 "false_next" : "node_86"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015171 },
15172 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015173 "name" : "node_82",
15174 "id" : 29,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015175 "source_info" : {
15176 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015177 "line" : 369,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015178 "column" : 15,
15179 "source_fragment" : "hdr.ipv4.isValid()"
15180 },
15181 "expression" : {
15182 "type" : "expression",
15183 "value" : {
15184 "op" : "d2b",
15185 "left" : null,
15186 "right" : {
15187 "type" : "field",
15188 "value" : ["ipv4", "$valid$"]
15189 }
15190 }
15191 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015192 "true_next" : "tbl_act_30",
15193 "false_next" : "node_86"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015194 },
15195 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015196 "name" : "node_84",
15197 "id" : 30,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015198 "source_info" : {
15199 "filename" : "include/control/next.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015200 "line" : 371,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015201 "column" : 20,
15202 "source_fragment" : "hdr.ipv4.ttl == 0"
15203 },
15204 "expression" : {
15205 "type" : "expression",
15206 "value" : {
15207 "op" : "==",
15208 "left" : {
15209 "type" : "field",
15210 "value" : ["ipv4", "ttl"]
15211 },
15212 "right" : {
15213 "type" : "hexstr",
15214 "value" : "0x00"
15215 }
15216 }
15217 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015218 "true_next" : "tbl_act_31",
15219 "false_next" : "node_86"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015220 },
15221 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015222 "name" : "node_86",
15223 "id" : 31,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015224 "source_info" : {
15225 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070015226 "line" : 227,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015227 "column" : 12,
15228 "source_fragment" : "fabric_meta.spgw.direction == SPGW_DIR_DOWNLINK"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015229 },
15230 "expression" : {
15231 "type" : "expression",
15232 "value" : {
15233 "op" : "==",
15234 "left" : {
15235 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015236 "value" : ["scalars", "fabric_metadata_t._spgw_direction19"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015237 },
15238 "right" : {
15239 "type" : "hexstr",
15240 "value" : "0x02"
15241 }
15242 }
15243 },
15244 "true_next" : "tbl_spgw_egress_gtpu_encap",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015245 "false_next" : "node_88"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015246 },
15247 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015248 "name" : "node_88",
15249 "id" : 32,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015250 "source_info" : {
15251 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015252 "line" : 102,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015253 "column" : 12,
15254 "source_fragment" : "standard_metadata.ingress_port != 255 && ..."
15255 },
15256 "expression" : {
15257 "type" : "expression",
15258 "value" : {
15259 "op" : "and",
15260 "left" : {
15261 "type" : "expression",
15262 "value" : {
15263 "op" : "and",
15264 "left" : {
15265 "type" : "expression",
15266 "value" : {
15267 "op" : "!=",
15268 "left" : {
15269 "type" : "field",
15270 "value" : ["standard_metadata", "ingress_port"]
15271 },
15272 "right" : {
15273 "type" : "hexstr",
15274 "value" : "0x00ff"
15275 }
15276 }
15277 },
15278 "right" : {
15279 "type" : "expression",
15280 "value" : {
15281 "op" : "!=",
15282 "left" : {
15283 "type" : "field",
15284 "value" : ["standard_metadata", "egress_port"]
15285 },
15286 "right" : {
15287 "type" : "hexstr",
15288 "value" : "0x00ff"
15289 }
15290 }
15291 }
15292 }
15293 },
15294 "right" : {
15295 "type" : "expression",
15296 "value" : {
15297 "op" : "or",
15298 "left" : {
15299 "type" : "expression",
15300 "value" : {
15301 "op" : "d2b",
15302 "left" : null,
15303 "right" : {
15304 "type" : "field",
15305 "value" : ["udp", "$valid$"]
15306 }
15307 }
15308 },
15309 "right" : {
15310 "type" : "expression",
15311 "value" : {
15312 "op" : "d2b",
15313 "left" : null,
15314 "right" : {
15315 "type" : "field",
15316 "value" : ["tcp", "$valid$"]
15317 }
15318 }
15319 }
15320 }
15321 }
15322 }
15323 },
15324 "false_next" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070015325 "true_next" : "node_89"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015326 },
15327 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015328 "name" : "node_89",
15329 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015330 "source_info" : {
15331 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015332 "line" : 106,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015333 "column" : 16,
15334 "source_fragment" : "fabric_metadata.int_meta.source == true"
15335 },
15336 "expression" : {
15337 "type" : "expression",
15338 "value" : {
15339 "op" : "==",
15340 "left" : {
15341 "type" : "expression",
15342 "value" : {
15343 "op" : "d2b",
15344 "left" : null,
15345 "right" : {
15346 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015347 "value" : ["scalars", "fabric_metadata_t._int_meta_source24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015348 }
15349 }
15350 },
15351 "right" : {
15352 "type" : "bool",
15353 "value" : true
15354 }
15355 }
15356 },
15357 "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015358 "false_next" : "node_91"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015359 },
15360 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015361 "name" : "node_91",
15362 "id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015363 "source_info" : {
15364 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015365 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015366 "column" : 15,
15367 "source_fragment" : "hdr.int_header.isValid()"
15368 },
15369 "expression" : {
15370 "type" : "expression",
15371 "value" : {
15372 "op" : "d2b",
15373 "left" : null,
15374 "right" : {
15375 "type" : "field",
15376 "value" : ["int_header", "$valid$"]
15377 }
15378 }
15379 },
15380 "false_next" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070015381 "true_next" : "tbl_act_32"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015382 },
15383 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015384 "name" : "node_94",
15385 "id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015386 "source_info" : {
15387 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015388 "line" : 419,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015389 "column" : 12,
15390 "source_fragment" : "fmeta.int_meta.transit == false"
15391 },
15392 "expression" : {
15393 "type" : "expression",
15394 "value" : {
15395 "op" : "==",
15396 "left" : {
15397 "type" : "expression",
15398 "value" : {
15399 "op" : "d2b",
15400 "left" : null,
15401 "right" : {
15402 "type" : "field",
Daniele Moro7c3a0022019-07-12 13:38:34 -070015403 "value" : ["scalars", "fabric_metadata_t._int_meta_transit25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015404 }
15405 }
15406 },
15407 "right" : {
15408 "type" : "bool",
15409 "value" : false
15410 }
15411 }
15412 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015413 "true_next" : "tbl_act_33",
15414 "false_next" : "node_96"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015415 },
15416 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015417 "name" : "node_96",
15418 "id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015419 "expression" : {
15420 "type" : "expression",
15421 "value" : {
15422 "op" : "not",
15423 "left" : null,
15424 "right" : {
15425 "type" : "expression",
15426 "value" : {
15427 "op" : "d2b",
15428 "left" : null,
15429 "right" : {
15430 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015431 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015432 }
15433 }
15434 }
15435 }
15436 },
15437 "false_next" : null,
15438 "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
15439 },
15440 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015441 "name" : "node_100",
15442 "id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015443 "source_info" : {
15444 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015445 "line" : 427,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015446 "column" : 12,
15447 "source_fragment" : "hdr.ipv4.isValid()"
15448 },
15449 "expression" : {
15450 "type" : "expression",
15451 "value" : {
15452 "op" : "d2b",
15453 "left" : null,
15454 "right" : {
15455 "type" : "field",
15456 "value" : ["ipv4", "$valid$"]
15457 }
15458 }
15459 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015460 "true_next" : "tbl_act_35",
15461 "false_next" : "node_102"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015462 },
15463 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015464 "name" : "node_102",
15465 "id" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015466 "source_info" : {
15467 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015468 "line" : 430,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015469 "column" : 12,
15470 "source_fragment" : "hdr.udp.isValid()"
15471 },
15472 "expression" : {
15473 "type" : "expression",
15474 "value" : {
15475 "op" : "d2b",
15476 "left" : null,
15477 "right" : {
15478 "type" : "field",
15479 "value" : ["udp", "$valid$"]
15480 }
15481 }
15482 },
Daniele Moro7c3a0022019-07-12 13:38:34 -070015483 "true_next" : "tbl_act_36",
15484 "false_next" : "node_104"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015485 },
15486 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070015487 "name" : "node_104",
15488 "id" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015489 "source_info" : {
15490 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015491 "line" : 433,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015492 "column" : 12,
15493 "source_fragment" : "hdr.intl4_shim.isValid()"
15494 },
15495 "expression" : {
15496 "type" : "expression",
15497 "value" : {
15498 "op" : "d2b",
15499 "left" : null,
15500 "right" : {
15501 "type" : "field",
15502 "value" : ["intl4_shim", "$valid$"]
15503 }
15504 }
15505 },
15506 "false_next" : null,
Daniele Moro7c3a0022019-07-12 13:38:34 -070015507 "true_next" : "tbl_act_37"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015508 }
15509 ]
15510 }
15511 ],
15512 "checksums" : [
15513 {
15514 "name" : "cksum",
15515 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015516 "source_info" : {
15517 "filename" : "include/checksum.p4",
15518 "line" : 28,
15519 "column" : 8,
15520 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
15521 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015522 "target" : ["ipv4", "hdr_checksum"],
15523 "type" : "generic",
15524 "calculation" : "calc",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080015525 "verify" : false,
15526 "update" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015527 "if_cond" : {
15528 "type" : "expression",
15529 "value" : {
15530 "op" : "d2b",
15531 "left" : null,
15532 "right" : {
15533 "type" : "field",
15534 "value" : ["ipv4", "$valid$"]
15535 }
15536 }
15537 }
15538 },
15539 {
15540 "name" : "cksum_0",
15541 "id" : 1,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015542 "source_info" : {
15543 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070015544 "line" : 243,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015545 "column" : 8,
15546 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
15547 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015548 "target" : ["gtpu_ipv4", "hdr_checksum"],
15549 "type" : "generic",
15550 "calculation" : "calc_0",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080015551 "verify" : false,
15552 "update" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015553 "if_cond" : {
15554 "type" : "expression",
15555 "value" : {
15556 "op" : "d2b",
15557 "left" : null,
15558 "right" : {
15559 "type" : "field",
15560 "value" : ["gtpu_ipv4", "$valid$"]
15561 }
15562 }
15563 }
15564 },
15565 {
15566 "name" : "cksum_1",
15567 "id" : 2,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015568 "source_info" : {
15569 "filename" : "include/checksum.p4",
15570 "line" : 57,
15571 "column" : 8,
15572 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
15573 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015574 "target" : ["ipv4", "hdr_checksum"],
15575 "type" : "generic",
15576 "calculation" : "calc_1",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080015577 "verify" : true,
15578 "update" : false,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015579 "if_cond" : {
15580 "type" : "expression",
15581 "value" : {
15582 "op" : "d2b",
15583 "left" : null,
15584 "right" : {
15585 "type" : "field",
15586 "value" : ["ipv4", "$valid$"]
15587 }
15588 }
15589 }
15590 }
15591 ],
15592 "force_arith" : [],
15593 "extern_instances" : [],
15594 "field_aliases" : [
15595 [
15596 "queueing_metadata.enq_timestamp",
15597 ["standard_metadata", "enq_timestamp"]
15598 ],
15599 [
15600 "queueing_metadata.enq_qdepth",
15601 ["standard_metadata", "enq_qdepth"]
15602 ],
15603 [
15604 "queueing_metadata.deq_timedelta",
15605 ["standard_metadata", "deq_timedelta"]
15606 ],
15607 [
15608 "queueing_metadata.deq_qdepth",
15609 ["standard_metadata", "deq_qdepth"]
15610 ],
15611 [
15612 "intrinsic_metadata.ingress_global_timestamp",
15613 ["standard_metadata", "ingress_global_timestamp"]
15614 ],
15615 [
15616 "intrinsic_metadata.egress_global_timestamp",
15617 ["standard_metadata", "egress_global_timestamp"]
15618 ],
15619 [
15620 "intrinsic_metadata.lf_field_list",
15621 ["standard_metadata", "lf_field_list"]
15622 ],
15623 [
15624 "intrinsic_metadata.mcast_grp",
15625 ["standard_metadata", "mcast_grp"]
15626 ],
15627 [
15628 "intrinsic_metadata.resubmit_flag",
15629 ["standard_metadata", "resubmit_flag"]
15630 ],
15631 [
15632 "intrinsic_metadata.egress_rid",
15633 ["standard_metadata", "egress_rid"]
15634 ],
15635 [
15636 "intrinsic_metadata.recirculate_flag",
15637 ["standard_metadata", "recirculate_flag"]
Carmelo Cascone9b607da2019-05-08 14:03:01 -070015638 ],
15639 [
15640 "intrinsic_metadata.priority",
15641 ["standard_metadata", "priority"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015642 ]
15643 ],
15644 "program" : "fabric.p4",
15645 "__meta__" : {
15646 "version" : [2, 18],
15647 "compiler" : "https://github.com/p4lang/p4c"
15648 }
Carmelo Cascone25243d62019-02-21 15:37:31 -080015649}