blob: 2311b11ae829bebb58bec6e8770e5a94dc8458ec [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],
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080018 ["fabric_metadata_t._eth_type0", 16, false],
19 ["fabric_metadata_t._ip_eth_type1", 16, false],
20 ["fabric_metadata_t._vlan_id2", 12, false],
21 ["fabric_metadata_t._vlan_pri3", 3, false],
22 ["fabric_metadata_t._vlan_cfi4", 1, false],
23 ["fabric_metadata_t._mpls_label5", 20, false],
24 ["fabric_metadata_t._mpls_ttl6", 8, false],
25 ["fabric_metadata_t._skip_forwarding7", 1, false],
26 ["fabric_metadata_t._skip_next8", 1, false],
27 ["fabric_metadata_t._fwd_type9", 3, false],
28 ["fabric_metadata_t._next_id10", 32, false],
29 ["fabric_metadata_t._is_multicast11", 1, false],
30 ["fabric_metadata_t._is_controller_packet_out12", 1, false],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070031 ["fabric_metadata_t._ip_proto13", 8, false],
32 ["fabric_metadata_t._l4_sport14", 16, false],
33 ["fabric_metadata_t._l4_dport15", 16, false],
34 ["fabric_metadata_t._spgw_direction16", 2, false],
35 ["fabric_metadata_t._spgw_ipv4_len17", 16, false],
36 ["fabric_metadata_t._spgw_teid18", 32, false],
37 ["fabric_metadata_t._spgw_s1u_enb_addr19", 32, false],
38 ["fabric_metadata_t._spgw_s1u_sgw_addr20", 32, false],
39 ["fabric_metadata_t._int_meta_source21", 1, false],
40 ["fabric_metadata_t._int_meta_transit22", 1, false],
41 ["fabric_metadata_t._int_meta_sink23", 1, false],
42 ["fabric_metadata_t._int_meta_switch_id24", 32, false],
43 ["fabric_metadata_t._int_meta_new_words25", 8, false],
44 ["fabric_metadata_t._int_meta_new_bytes26", 16, false],
45 ["fabric_metadata_t._int_meta_ig_tstamp27", 32, false],
46 ["fabric_metadata_t._int_meta_eg_tstamp28", 32, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070047 ]
48 },
49 {
50 "name" : "standard_metadata",
51 "id" : 1,
52 "fields" : [
53 ["ingress_port", 9, false],
54 ["egress_spec", 9, false],
55 ["egress_port", 9, false],
56 ["clone_spec", 32, false],
57 ["instance_type", 32, false],
58 ["drop", 1, false],
59 ["recirculate_port", 16, false],
60 ["packet_length", 32, false],
61 ["enq_timestamp", 32, false],
62 ["enq_qdepth", 19, false],
63 ["deq_timedelta", 32, false],
64 ["deq_qdepth", 19, false],
65 ["ingress_global_timestamp", 48, false],
66 ["egress_global_timestamp", 48, false],
67 ["lf_field_list", 32, false],
68 ["mcast_grp", 16, false],
69 ["resubmit_flag", 32, false],
70 ["egress_rid", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070071 ["recirculate_flag", 32, false],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070072 ["checksum_error", 1, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070073 ["parser_error", 32, false],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070074 ["priority", 3, false],
75 ["_padding", 2, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070076 ]
77 },
78 {
79 "name" : "ethernet_t",
80 "id" : 2,
81 "fields" : [
82 ["dst_addr", 48, false],
83 ["src_addr", 48, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080084 ["eth_type", 16, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070085 ]
86 },
87 {
88 "name" : "vlan_tag_t",
89 "id" : 3,
90 "fields" : [
91 ["pri", 3, false],
92 ["cfi", 1, false],
93 ["vlan_id", 12, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080094 ["eth_type", 16, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070095 ]
96 },
97 {
98 "name" : "mpls_t",
99 "id" : 4,
100 "fields" : [
101 ["label", 20, false],
102 ["tc", 3, false],
103 ["bos", 1, false],
104 ["ttl", 8, false]
105 ]
106 },
107 {
108 "name" : "ipv4_t",
109 "id" : 5,
110 "fields" : [
111 ["version", 4, false],
112 ["ihl", 4, false],
113 ["dscp", 6, false],
114 ["ecn", 2, false],
115 ["total_len", 16, false],
116 ["identification", 16, false],
117 ["flags", 3, false],
118 ["frag_offset", 13, false],
119 ["ttl", 8, false],
120 ["protocol", 8, false],
121 ["hdr_checksum", 16, false],
122 ["src_addr", 32, false],
123 ["dst_addr", 32, false]
124 ]
125 },
126 {
127 "name" : "udp_t",
128 "id" : 6,
129 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800130 ["sport", 16, false],
131 ["dport", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700132 ["len", 16, false],
133 ["checksum", 16, false]
134 ]
135 },
136 {
137 "name" : "gtpu_t",
138 "id" : 7,
139 "fields" : [
140 ["version", 3, false],
141 ["pt", 1, false],
142 ["spare", 1, false],
143 ["ex_flag", 1, false],
144 ["seq_flag", 1, false],
145 ["npdu_flag", 1, false],
146 ["msgtype", 8, false],
147 ["msglen", 16, false],
148 ["teid", 32, false]
149 ]
150 },
151 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800152 "name" : "tcp_t",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700153 "id" : 8,
154 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800155 ["sport", 16, false],
156 ["dport", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700157 ["seq_no", 32, false],
158 ["ack_no", 32, false],
159 ["data_offset", 4, false],
160 ["res", 3, false],
161 ["ecn", 3, false],
162 ["ctrl", 6, false],
163 ["window", 16, false],
164 ["checksum", 16, false],
165 ["urgent_ptr", 16, false]
166 ]
167 },
168 {
169 "name" : "icmp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800170 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700171 "fields" : [
172 ["icmp_type", 8, false],
173 ["icmp_code", 8, false],
174 ["checksum", 16, false],
175 ["identifier", 16, false],
176 ["sequence_number", 16, false],
177 ["timestamp", 64, false]
178 ]
179 },
180 {
181 "name" : "packet_out_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800182 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700183 "fields" : [
184 ["egress_port", 9, false],
185 ["_pad", 7, false]
186 ]
187 },
188 {
189 "name" : "packet_in_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800190 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700191 "fields" : [
192 ["ingress_port", 9, false],
193 ["_pad", 7, false]
194 ]
195 },
196 {
197 "name" : "intl4_shim_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800198 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700199 "fields" : [
200 ["int_type", 8, false],
201 ["rsvd1", 8, false],
202 ["len_words", 8, false],
203 ["rsvd2", 8, false]
204 ]
205 },
206 {
207 "name" : "int_header_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800208 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700209 "fields" : [
210 ["ver", 2, false],
211 ["rep", 2, false],
212 ["c", 1, false],
213 ["e", 1, false],
214 ["rsvd1", 5, false],
215 ["ins_cnt", 5, false],
216 ["max_hop_cnt", 8, false],
217 ["total_hop_cnt", 8, false],
218 ["instruction_mask_0003", 4, false],
219 ["instruction_mask_0407", 4, false],
220 ["instruction_mask_0811", 4, false],
221 ["instruction_mask_1215", 4, false],
222 ["rsvd2", 16, false]
223 ]
224 },
225 {
226 "name" : "int_switch_id_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800227 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700228 "fields" : [
229 ["switch_id", 32, false]
230 ]
231 },
232 {
233 "name" : "int_port_ids_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800234 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700235 "fields" : [
236 ["ingress_port_id", 16, false],
237 ["egress_port_id", 16, false]
238 ]
239 },
240 {
241 "name" : "int_hop_latency_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800242 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700243 "fields" : [
244 ["hop_latency", 32, false]
245 ]
246 },
247 {
248 "name" : "int_q_occupancy_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800249 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700250 "fields" : [
251 ["q_id", 8, false],
252 ["q_occupancy", 24, false]
253 ]
254 },
255 {
256 "name" : "int_ingress_tstamp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800257 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700258 "fields" : [
259 ["ingress_tstamp", 32, false]
260 ]
261 },
262 {
263 "name" : "int_egress_tstamp_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800264 "id" : 19,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700265 "fields" : [
266 ["egress_tstamp", 32, false]
267 ]
268 },
269 {
270 "name" : "int_q_congestion_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800271 "id" : 20,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700272 "fields" : [
273 ["q_id", 8, false],
274 ["q_congestion", 24, false]
275 ]
276 },
277 {
278 "name" : "int_egress_port_tx_util_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800279 "id" : 21,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700280 "fields" : [
281 ["egress_port_tx_util", 32, false]
282 ]
283 },
284 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700285 "name" : "intl4_tail_t",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800286 "id" : 22,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700287 "fields" : [
288 ["next_proto", 8, false],
289 ["dest_port", 16, false],
290 ["padding", 2, false],
291 ["dscp", 6, false]
292 ]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700293 }
294 ],
295 "headers" : [
296 {
297 "name" : "scalars",
298 "id" : 0,
299 "header_type" : "scalars_0",
300 "metadata" : true,
301 "pi_omit" : true
302 },
303 {
304 "name" : "standard_metadata",
305 "id" : 1,
306 "header_type" : "standard_metadata",
307 "metadata" : true,
308 "pi_omit" : true
309 },
310 {
311 "name" : "ethernet",
312 "id" : 2,
313 "header_type" : "ethernet_t",
314 "metadata" : false,
315 "pi_omit" : true
316 },
317 {
318 "name" : "vlan_tag",
319 "id" : 3,
320 "header_type" : "vlan_tag_t",
321 "metadata" : false,
322 "pi_omit" : true
323 },
324 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800325 "name" : "inner_vlan_tag",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700326 "id" : 4,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800327 "header_type" : "vlan_tag_t",
328 "metadata" : false,
329 "pi_omit" : true
330 },
331 {
332 "name" : "mpls",
333 "id" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700334 "header_type" : "mpls_t",
335 "metadata" : false,
336 "pi_omit" : true
337 },
338 {
339 "name" : "gtpu_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800340 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700341 "header_type" : "ipv4_t",
342 "metadata" : false,
343 "pi_omit" : true
344 },
345 {
346 "name" : "gtpu_udp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800347 "id" : 7,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700348 "header_type" : "udp_t",
349 "metadata" : false,
350 "pi_omit" : true
351 },
352 {
353 "name" : "gtpu",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800354 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700355 "header_type" : "gtpu_t",
356 "metadata" : false,
357 "pi_omit" : true
358 },
359 {
360 "name" : "inner_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800361 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700362 "header_type" : "ipv4_t",
363 "metadata" : false,
364 "pi_omit" : true
365 },
366 {
367 "name" : "inner_udp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800368 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700369 "header_type" : "udp_t",
370 "metadata" : false,
371 "pi_omit" : true
372 },
373 {
374 "name" : "ipv4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700375 "id" : 11,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800376 "header_type" : "ipv4_t",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700377 "metadata" : false,
378 "pi_omit" : true
379 },
380 {
381 "name" : "tcp",
382 "id" : 12,
383 "header_type" : "tcp_t",
384 "metadata" : false,
385 "pi_omit" : true
386 },
387 {
388 "name" : "udp",
389 "id" : 13,
390 "header_type" : "udp_t",
391 "metadata" : false,
392 "pi_omit" : true
393 },
394 {
395 "name" : "icmp",
396 "id" : 14,
397 "header_type" : "icmp_t",
398 "metadata" : false,
399 "pi_omit" : true
400 },
401 {
402 "name" : "packet_out",
403 "id" : 15,
404 "header_type" : "packet_out_header_t",
405 "metadata" : false,
406 "pi_omit" : true
407 },
408 {
409 "name" : "packet_in",
410 "id" : 16,
411 "header_type" : "packet_in_header_t",
412 "metadata" : false,
413 "pi_omit" : true
414 },
415 {
416 "name" : "intl4_shim",
417 "id" : 17,
418 "header_type" : "intl4_shim_t",
419 "metadata" : false,
420 "pi_omit" : true
421 },
422 {
423 "name" : "int_header",
424 "id" : 18,
425 "header_type" : "int_header_t",
426 "metadata" : false,
427 "pi_omit" : true
428 },
429 {
430 "name" : "int_switch_id",
431 "id" : 19,
432 "header_type" : "int_switch_id_t",
433 "metadata" : false,
434 "pi_omit" : true
435 },
436 {
437 "name" : "int_port_ids",
438 "id" : 20,
439 "header_type" : "int_port_ids_t",
440 "metadata" : false,
441 "pi_omit" : true
442 },
443 {
444 "name" : "int_hop_latency",
445 "id" : 21,
446 "header_type" : "int_hop_latency_t",
447 "metadata" : false,
448 "pi_omit" : true
449 },
450 {
451 "name" : "int_q_occupancy",
452 "id" : 22,
453 "header_type" : "int_q_occupancy_t",
454 "metadata" : false,
455 "pi_omit" : true
456 },
457 {
458 "name" : "int_ingress_tstamp",
459 "id" : 23,
460 "header_type" : "int_ingress_tstamp_t",
461 "metadata" : false,
462 "pi_omit" : true
463 },
464 {
465 "name" : "int_egress_tstamp",
466 "id" : 24,
467 "header_type" : "int_egress_tstamp_t",
468 "metadata" : false,
469 "pi_omit" : true
470 },
471 {
472 "name" : "int_q_congestion",
473 "id" : 25,
474 "header_type" : "int_q_congestion_t",
475 "metadata" : false,
476 "pi_omit" : true
477 },
478 {
479 "name" : "int_egress_tx_util",
480 "id" : 26,
481 "header_type" : "int_egress_port_tx_util_t",
482 "metadata" : false,
483 "pi_omit" : true
484 },
485 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700486 "name" : "intl4_tail",
Carmelo Cascone8e5818d2018-10-26 11:45:23 -0700487 "id" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700488 "header_type" : "intl4_tail_t",
489 "metadata" : false,
490 "pi_omit" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700491 }
492 ],
493 "header_stacks" : [],
494 "header_union_types" : [],
495 "header_unions" : [],
496 "header_union_stacks" : [],
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700497 "field_lists" : [
498 {
499 "id" : 1,
500 "name" : "fl",
501 "source_info" : {
Daniele Moro3b7a21b2019-06-25 17:33:40 -0700502 "filename" : "include/control/acl.p4",
503 "line" : 46,
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700504 "column" : 40,
Daniele Moro3b7a21b2019-06-25 17:33:40 -0700505 "source_fragment" : "{standard_metadata.ingress_port}"
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700506 },
507 "elements" : [
508 {
509 "type" : "field",
510 "value" : ["standard_metadata", "ingress_port"]
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700511 }
512 ]
513 }
514 ],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700515 "errors" : [
Carmelo Cascone4d8785b2019-05-31 17:11:26 -0700516 ["NoError", 1],
517 ["PacketTooShort", 2],
518 ["NoMatch", 3],
519 ["StackOutOfBounds", 4],
520 ["HeaderTooShort", 5],
521 ["ParserTimeout", 6],
522 ["ParserInvalidArgument", 7]
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700523 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700524 "enums" : [],
525 "parsers" : [
526 {
527 "name" : "parser",
528 "id" : 0,
529 "init_state" : "start",
530 "parse_states" : [
531 {
532 "name" : "start",
533 "id" : 0,
534 "parser_ops" : [],
535 "transitions" : [
536 {
537 "type" : "hexstr",
538 "value" : "0x00ff",
539 "mask" : null,
540 "next_state" : "parse_packet_out"
541 },
542 {
543 "value" : "default",
544 "mask" : null,
545 "next_state" : "parse_ethernet"
546 }
547 ],
548 "transition_key" : [
549 {
550 "type" : "field",
551 "value" : ["standard_metadata", "ingress_port"]
552 }
553 ]
554 },
555 {
556 "name" : "parse_packet_out",
557 "id" : 1,
558 "parser_ops" : [
559 {
560 "parameters" : [
561 {
562 "type" : "regular",
563 "value" : "packet_out"
564 }
565 ],
566 "op" : "extract"
567 }
568 ],
569 "transitions" : [
570 {
571 "value" : "default",
572 "mask" : null,
573 "next_state" : "parse_ethernet"
574 }
575 ],
576 "transition_key" : []
577 },
578 {
579 "name" : "parse_ethernet",
580 "id" : 2,
581 "parser_ops" : [
582 {
583 "parameters" : [
584 {
585 "type" : "regular",
586 "value" : "ethernet"
587 }
588 ],
589 "op" : "extract"
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800590 },
591 {
592 "parameters" : [
593 {
594 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -0800595 "value" : ["scalars", "fabric_metadata_t._eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800596 },
597 {
598 "type" : "field",
599 "value" : ["ethernet", "eth_type"]
600 }
601 ],
602 "op" : "set"
603 },
604 {
605 "parameters" : [
606 {
607 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -0800608 "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800609 },
610 {
611 "type" : "hexstr",
612 "value" : "0x0ffe"
613 }
614 ],
615 "op" : "set"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700616 }
617 ],
618 "transitions" : [
619 {
620 "type" : "hexstr",
621 "value" : "0x8100",
622 "mask" : null,
623 "next_state" : "parse_vlan_tag"
624 },
625 {
626 "type" : "hexstr",
627 "value" : "0x8847",
628 "mask" : null,
629 "next_state" : "parse_mpls"
630 },
631 {
632 "type" : "hexstr",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700633 "value" : "0x0800",
634 "mask" : null,
635 "next_state" : "parse_ipv4"
636 },
637 {
638 "value" : "default",
639 "mask" : null,
640 "next_state" : null
641 }
642 ],
643 "transition_key" : [
644 {
645 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800646 "value" : ["ethernet", "eth_type"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700647 }
648 ]
649 },
650 {
651 "name" : "parse_vlan_tag",
652 "id" : 3,
653 "parser_ops" : [
654 {
655 "parameters" : [
656 {
657 "type" : "regular",
658 "value" : "vlan_tag"
659 }
660 ],
661 "op" : "extract"
662 }
663 ],
664 "transitions" : [
665 {
666 "type" : "hexstr",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800667 "value" : "0x0800",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700668 "mask" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800669 "next_state" : "parse_ipv4"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700670 },
671 {
672 "type" : "hexstr",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800673 "value" : "0x8847",
674 "mask" : null,
675 "next_state" : "parse_mpls"
676 },
677 {
678 "type" : "hexstr",
679 "value" : "0x8100",
680 "mask" : null,
681 "next_state" : "parse_inner_vlan_tag"
682 },
683 {
684 "value" : "default",
685 "mask" : null,
686 "next_state" : null
687 }
688 ],
689 "transition_key" : [
690 {
691 "type" : "field",
692 "value" : ["vlan_tag", "eth_type"]
693 }
694 ]
695 },
696 {
697 "name" : "parse_inner_vlan_tag",
698 "id" : 4,
699 "parser_ops" : [
700 {
701 "parameters" : [
702 {
703 "type" : "regular",
704 "value" : "inner_vlan_tag"
705 }
706 ],
707 "op" : "extract"
708 }
709 ],
710 "transitions" : [
711 {
712 "type" : "hexstr",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700713 "value" : "0x0800",
714 "mask" : null,
715 "next_state" : "parse_ipv4"
716 },
717 {
718 "type" : "hexstr",
719 "value" : "0x8847",
720 "mask" : null,
721 "next_state" : "parse_mpls"
722 },
723 {
724 "value" : "default",
725 "mask" : null,
726 "next_state" : null
727 }
728 ],
729 "transition_key" : [
730 {
731 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800732 "value" : ["inner_vlan_tag", "eth_type"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700733 }
734 ]
735 },
736 {
737 "name" : "parse_mpls",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800738 "id" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700739 "parser_ops" : [
740 {
741 "parameters" : [
742 {
743 "type" : "regular",
744 "value" : "mpls"
745 }
746 ],
747 "op" : "extract"
748 },
749 {
750 "parameters" : [
751 {
752 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -0800753 "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800754 },
755 {
756 "type" : "field",
757 "value" : ["mpls", "label"]
758 }
759 ],
760 "op" : "set"
761 },
762 {
763 "parameters" : [
764 {
765 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -0800766 "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800767 },
768 {
769 "type" : "field",
770 "value" : ["mpls", "ttl"]
771 }
772 ],
773 "op" : "set"
774 },
775 {
776 "parameters" : [
777 {
778 "type" : "field",
779 "value" : ["scalars", "tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700780 },
781 {
782 "type" : "lookahead",
783 "value" : [0, 4]
784 }
785 ],
786 "op" : "set"
787 }
788 ],
789 "transitions" : [
790 {
791 "type" : "hexstr",
792 "value" : "0x04",
793 "mask" : null,
794 "next_state" : "parse_ipv4"
795 },
796 {
797 "value" : "default",
798 "mask" : null,
799 "next_state" : "parse_ethernet"
800 }
801 ],
802 "transition_key" : [
803 {
804 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800805 "value" : ["scalars", "tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700806 }
807 ]
808 },
809 {
810 "name" : "parse_ipv4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800811 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700812 "parser_ops" : [
813 {
814 "parameters" : [
815 {
816 "type" : "regular",
817 "value" : "ipv4"
818 }
819 ],
820 "op" : "extract"
821 },
822 {
823 "parameters" : [
824 {
825 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700826 "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700827 },
828 {
829 "type" : "field",
830 "value" : ["ipv4", "protocol"]
831 }
832 ],
833 "op" : "set"
834 },
835 {
836 "parameters" : [
837 {
838 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -0800839 "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800840 },
841 {
842 "type" : "hexstr",
843 "value" : "0x0800"
844 }
845 ],
846 "op" : "set"
847 },
848 {
849 "parameters" : [
850 {
851 "type" : "field",
852 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700853 },
854 {
855 "type" : "field",
856 "value" : ["ipv4", "dscp"]
857 }
858 ],
859 "op" : "set"
860 }
861 ],
862 "transitions" : [
863 {
864 "type" : "hexstr",
865 "value" : "0x06",
866 "mask" : null,
867 "next_state" : "parse_tcp"
868 },
869 {
870 "type" : "hexstr",
871 "value" : "0x11",
872 "mask" : null,
873 "next_state" : "parse_udp"
874 },
875 {
876 "type" : "hexstr",
877 "value" : "0x01",
878 "mask" : null,
879 "next_state" : "parse_icmp"
880 },
881 {
882 "value" : "default",
883 "mask" : null,
884 "next_state" : null
885 }
886 ],
887 "transition_key" : [
888 {
889 "type" : "field",
890 "value" : ["ipv4", "protocol"]
891 }
892 ]
893 },
894 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700895 "name" : "parse_tcp",
896 "id" : 7,
897 "parser_ops" : [
898 {
899 "parameters" : [
900 {
901 "type" : "regular",
902 "value" : "tcp"
903 }
904 ],
905 "op" : "extract"
906 },
907 {
908 "parameters" : [
909 {
910 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700911 "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700912 },
913 {
914 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800915 "value" : ["tcp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700916 }
917 ],
918 "op" : "set"
919 },
920 {
921 "parameters" : [
922 {
923 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700924 "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700925 },
926 {
927 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800928 "value" : ["tcp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700929 }
930 ],
931 "op" : "set"
932 }
933 ],
934 "transitions" : [
935 {
936 "value" : "default",
937 "mask" : null,
938 "next_state" : "parse_int"
939 }
940 ],
941 "transition_key" : []
942 },
943 {
944 "name" : "parse_udp",
945 "id" : 8,
946 "parser_ops" : [
947 {
948 "parameters" : [
949 {
950 "type" : "regular",
951 "value" : "udp"
952 }
953 ],
954 "op" : "extract"
955 },
956 {
957 "parameters" : [
958 {
959 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700960 "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700961 },
962 {
963 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800964 "value" : ["udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700965 }
966 ],
967 "op" : "set"
968 },
969 {
970 "parameters" : [
971 {
972 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700973 "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700974 },
975 {
976 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800977 "value" : ["udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700978 }
979 ],
980 "op" : "set"
981 }
982 ],
983 "transitions" : [
984 {
985 "type" : "hexstr",
986 "value" : "0x0868",
987 "mask" : null,
988 "next_state" : "parse_gtpu"
989 },
990 {
991 "value" : "default",
992 "mask" : null,
993 "next_state" : "parse_int"
994 }
995 ],
996 "transition_key" : [
997 {
998 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800999 "value" : ["udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001000 }
1001 ]
1002 },
1003 {
1004 "name" : "parse_icmp",
1005 "id" : 9,
1006 "parser_ops" : [
1007 {
1008 "parameters" : [
1009 {
1010 "type" : "regular",
1011 "value" : "icmp"
1012 }
1013 ],
1014 "op" : "extract"
1015 }
1016 ],
1017 "transitions" : [
1018 {
1019 "value" : "default",
1020 "mask" : null,
1021 "next_state" : null
1022 }
1023 ],
1024 "transition_key" : []
1025 },
1026 {
1027 "name" : "parse_gtpu",
1028 "id" : 10,
1029 "parser_ops" : [
1030 {
1031 "parameters" : [
1032 {
1033 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001034 "value" : ["scalars", "tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001035 },
1036 {
1037 "type" : "expression",
1038 "value" : {
1039 "type" : "expression",
1040 "value" : {
1041 "op" : "&",
1042 "left" : {
1043 "type" : "expression",
1044 "value" : {
1045 "op" : "&",
1046 "left" : {
1047 "type" : "expression",
1048 "value" : {
1049 "op" : ">>",
1050 "left" : {
1051 "type" : "field",
1052 "value" : ["ipv4", "dst_addr"]
1053 },
1054 "right" : {
1055 "type" : "hexstr",
1056 "value" : "0x18"
1057 }
1058 }
1059 },
1060 "right" : {
1061 "type" : "hexstr",
1062 "value" : "0xffffffff"
1063 }
1064 }
1065 },
1066 "right" : {
1067 "type" : "hexstr",
1068 "value" : "0xff"
1069 }
1070 }
1071 }
1072 }
1073 ],
1074 "op" : "set"
1075 }
1076 ],
1077 "transitions" : [
1078 {
1079 "type" : "hexstr",
1080 "value" : "0x8c",
1081 "mask" : null,
1082 "next_state" : "do_parse_gtpu"
1083 },
1084 {
1085 "value" : "default",
1086 "mask" : null,
1087 "next_state" : null
1088 }
1089 ],
1090 "transition_key" : [
1091 {
1092 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001093 "value" : ["scalars", "tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001094 }
1095 ]
1096 },
1097 {
1098 "name" : "do_parse_gtpu",
1099 "id" : 11,
1100 "parser_ops" : [
1101 {
1102 "parameters" : [
1103 {
1104 "type" : "regular",
1105 "value" : "gtpu"
1106 }
1107 ],
1108 "op" : "extract"
1109 },
1110 {
1111 "parameters" : [
1112 {
1113 "type" : "regular",
1114 "value" : "inner_ipv4"
1115 }
1116 ],
1117 "op" : "extract"
1118 },
1119 {
1120 "parameters" : [
1121 {
1122 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001123 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001124 },
1125 {
1126 "type" : "field",
1127 "value" : ["inner_ipv4", "dscp"]
1128 }
1129 ],
1130 "op" : "set"
1131 }
1132 ],
1133 "transitions" : [
1134 {
1135 "type" : "hexstr",
1136 "value" : "0x06",
1137 "mask" : null,
1138 "next_state" : "parse_tcp"
1139 },
1140 {
1141 "type" : "hexstr",
1142 "value" : "0x11",
1143 "mask" : null,
1144 "next_state" : "parse_inner_udp"
1145 },
1146 {
1147 "type" : "hexstr",
1148 "value" : "0x01",
1149 "mask" : null,
1150 "next_state" : "parse_icmp"
1151 },
1152 {
1153 "value" : "default",
1154 "mask" : null,
1155 "next_state" : null
1156 }
1157 ],
1158 "transition_key" : [
1159 {
1160 "type" : "field",
1161 "value" : ["inner_ipv4", "protocol"]
1162 }
1163 ]
1164 },
1165 {
1166 "name" : "parse_inner_udp",
1167 "id" : 12,
1168 "parser_ops" : [
1169 {
1170 "parameters" : [
1171 {
1172 "type" : "regular",
1173 "value" : "inner_udp"
1174 }
1175 ],
1176 "op" : "extract"
1177 },
1178 {
1179 "parameters" : [
1180 {
1181 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07001182 "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001183 },
1184 {
1185 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001186 "value" : ["inner_udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001187 }
1188 ],
1189 "op" : "set"
1190 },
1191 {
1192 "parameters" : [
1193 {
1194 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07001195 "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001196 },
1197 {
1198 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001199 "value" : ["inner_udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001200 }
1201 ],
1202 "op" : "set"
1203 }
1204 ],
1205 "transitions" : [
1206 {
1207 "value" : "default",
1208 "mask" : null,
1209 "next_state" : "parse_int"
1210 }
1211 ],
1212 "transition_key" : []
1213 },
1214 {
1215 "name" : "parse_int",
1216 "id" : 13,
1217 "parser_ops" : [],
1218 "transitions" : [
1219 {
1220 "type" : "hexstr",
1221 "value" : "0x01",
1222 "mask" : "0x01",
1223 "next_state" : "parse_intl4_shim"
1224 },
1225 {
1226 "value" : "default",
1227 "mask" : null,
1228 "next_state" : null
1229 }
1230 ],
1231 "transition_key" : [
1232 {
1233 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001234 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001235 }
1236 ]
1237 },
1238 {
1239 "name" : "parse_intl4_shim",
1240 "id" : 14,
1241 "parser_ops" : [
1242 {
1243 "parameters" : [
1244 {
1245 "type" : "regular",
1246 "value" : "intl4_shim"
1247 }
1248 ],
1249 "op" : "extract"
1250 },
1251 {
1252 "parameters" : [
1253 {
1254 "type" : "regular",
1255 "value" : "int_header"
1256 }
1257 ],
1258 "op" : "extract"
1259 }
1260 ],
1261 "transitions" : [
1262 {
1263 "type" : "hexstr",
1264 "value" : "0x04",
1265 "mask" : null,
1266 "next_state" : "parse_intl4_tail"
1267 },
1268 {
1269 "value" : "default",
1270 "mask" : null,
1271 "next_state" : "parse_int_data"
1272 }
1273 ],
1274 "transition_key" : [
1275 {
1276 "type" : "field",
1277 "value" : ["intl4_shim", "len_words"]
1278 }
1279 ]
1280 },
1281 {
1282 "name" : "parse_int_data",
1283 "id" : 15,
1284 "parser_ops" : [],
1285 "transitions" : [
1286 {
1287 "value" : "default",
1288 "mask" : null,
1289 "next_state" : null
1290 }
1291 ],
1292 "transition_key" : []
1293 },
1294 {
1295 "name" : "parse_intl4_tail",
1296 "id" : 16,
1297 "parser_ops" : [
1298 {
1299 "parameters" : [
1300 {
1301 "type" : "regular",
1302 "value" : "intl4_tail"
1303 }
1304 ],
1305 "op" : "extract"
1306 }
1307 ],
1308 "transitions" : [
1309 {
1310 "value" : "default",
1311 "mask" : null,
1312 "next_state" : null
1313 }
1314 ],
1315 "transition_key" : []
1316 }
1317 ]
1318 }
1319 ],
1320 "parse_vsets" : [],
1321 "deparsers" : [
1322 {
1323 "name" : "deparser",
1324 "id" : 0,
1325 "source_info" : {
1326 "filename" : "include/parser.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07001327 "line" : 260,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001328 "column" : 8,
1329 "source_fragment" : "FabricDeparser"
1330 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001331 "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 -07001332 }
1333 ],
1334 "meter_arrays" : [],
1335 "counter_arrays" : [
1336 {
1337 "name" : "FabricIngress.spgw_ingress.ue_counter",
1338 "id" : 0,
1339 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001340 "binding" : "FabricIngress.spgw_ingress.dl_sess_lookup",
1341 "source_info" : {
1342 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001343 "line" : 52,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001344 "column" : 50,
1345 "source_fragment" : "ue_counter"
1346 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001347 },
1348 {
1349 "name" : "FabricIngress.process_set_source_sink.counter_set_source",
1350 "id" : 1,
1351 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001352 "binding" : "FabricIngress.process_set_source_sink.tb_set_source",
1353 "source_info" : {
1354 "filename" : "include/int/int_main.p4",
1355 "line" : 39,
1356 "column" : 50,
1357 "source_fragment" : "counter_set_source"
1358 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001359 },
1360 {
1361 "name" : "FabricIngress.filtering.ingress_port_vlan_counter",
1362 "id" : 2,
1363 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001364 "binding" : "FabricIngress.filtering.ingress_port_vlan",
1365 "source_info" : {
1366 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001367 "line" : 31,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001368 "column" : 50,
1369 "source_fragment" : "ingress_port_vlan_counter"
1370 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001371 },
1372 {
1373 "name" : "FabricIngress.filtering.fwd_classifier_counter",
1374 "id" : 3,
1375 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001376 "binding" : "FabricIngress.filtering.fwd_classifier",
1377 "source_info" : {
1378 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001379 "line" : 80,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001380 "column" : 50,
1381 "source_fragment" : "fwd_classifier_counter"
1382 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001383 },
1384 {
1385 "name" : "FabricIngress.forwarding.bridging_counter",
1386 "id" : 4,
1387 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001388 "binding" : "FabricIngress.forwarding.bridging",
1389 "source_info" : {
1390 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001391 "line" : 36,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001392 "column" : 50,
1393 "source_fragment" : "bridging_counter"
1394 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001395 },
1396 {
1397 "name" : "FabricIngress.forwarding.mpls_counter",
1398 "id" : 5,
1399 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001400 "binding" : "FabricIngress.forwarding.mpls",
1401 "source_info" : {
1402 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001403 "line" : 63,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001404 "column" : 50,
1405 "source_fragment" : "mpls_counter"
1406 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001407 },
1408 {
1409 "name" : "FabricIngress.forwarding.routing_v4_counter",
1410 "id" : 6,
1411 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001412 "binding" : "FabricIngress.forwarding.routing_v4",
1413 "source_info" : {
1414 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001415 "line" : 87,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001416 "column" : 50,
1417 "source_fragment" : "routing_v4_counter"
1418 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001419 },
1420 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001421 "name" : "FabricIngress.acl.acl_counter",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001422 "id" : 7,
1423 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001424 "binding" : "FabricIngress.acl.acl",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001425 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001426 "filename" : "include/control/acl.p4",
1427 "line" : 30,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001428 "column" : 50,
1429 "source_fragment" : "acl_counter"
1430 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001431 },
1432 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001433 "name" : "FabricIngress.next.next_vlan_counter",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001434 "id" : 8,
1435 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001436 "binding" : "FabricIngress.next.next_vlan",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001437 "source_info" : {
1438 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001439 "line" : 67,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001440 "column" : 50,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001441 "source_fragment" : "next_vlan_counter"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001442 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001443 },
1444 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001445 "name" : "FabricIngress.next.xconnect_counter",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001446 "id" : 9,
1447 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001448 "binding" : "FabricIngress.next.xconnect",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001449 "source_info" : {
1450 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001451 "line" : 92,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001452 "column" : 50,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001453 "source_fragment" : "xconnect_counter"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001454 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001455 },
1456 {
1457 "name" : "FabricIngress.next.hashed_counter",
1458 "id" : 10,
1459 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001460 "binding" : "FabricIngress.next.hashed",
1461 "source_info" : {
1462 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001463 "line" : 166,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001464 "column" : 50,
1465 "source_fragment" : "hashed_counter"
1466 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001467 },
1468 {
1469 "name" : "FabricIngress.next.multicast_counter",
1470 "id" : 11,
1471 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001472 "binding" : "FabricIngress.next.multicast",
1473 "source_info" : {
1474 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001475 "line" : 210,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001476 "column" : 50,
1477 "source_fragment" : "multicast_counter"
1478 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001479 },
1480 {
1481 "name" : "FabricIngress.port_counters_control.egress_port_counter",
1482 "id" : 12,
1483 "source_info" : {
1484 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001485 "line" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001486 "column" : 48,
1487 "source_fragment" : "egress_port_counter"
1488 },
1489 "size" : 511,
1490 "is_direct" : false
1491 },
1492 {
1493 "name" : "FabricIngress.port_counters_control.ingress_port_counter",
1494 "id" : 13,
1495 "source_info" : {
1496 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001497 "line" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001498 "column" : 48,
1499 "source_fragment" : "ingress_port_counter"
1500 },
1501 "size" : 511,
1502 "is_direct" : false
1503 },
1504 {
1505 "name" : "FabricEgress.process_int_main.process_int_source.counter_int_source",
1506 "id" : 14,
1507 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001508 "binding" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
1509 "source_info" : {
1510 "filename" : "include/int/int_source.p4",
1511 "line" : 27,
1512 "column" : 50,
1513 "source_fragment" : "counter_int_source"
1514 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001515 },
1516 {
1517 "name" : "FabricEgress.egress_next.egress_vlan_counter",
1518 "id" : 15,
1519 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001520 "binding" : "FabricEgress.egress_next.egress_vlan",
1521 "source_info" : {
1522 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001523 "line" : 283,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001524 "column" : 50,
1525 "source_fragment" : "egress_vlan_counter"
1526 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001527 }
1528 ],
1529 "register_arrays" : [],
1530 "calculations" : [
1531 {
1532 "name" : "calc",
1533 "id" : 0,
1534 "source_info" : {
1535 "filename" : "include/checksum.p4",
1536 "line" : 28,
1537 "column" : 8,
1538 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
1539 },
1540 "algo" : "csum16",
1541 "input" : [
1542 {
1543 "type" : "field",
1544 "value" : ["ipv4", "version"]
1545 },
1546 {
1547 "type" : "field",
1548 "value" : ["ipv4", "ihl"]
1549 },
1550 {
1551 "type" : "field",
1552 "value" : ["ipv4", "dscp"]
1553 },
1554 {
1555 "type" : "field",
1556 "value" : ["ipv4", "ecn"]
1557 },
1558 {
1559 "type" : "field",
1560 "value" : ["ipv4", "total_len"]
1561 },
1562 {
1563 "type" : "field",
1564 "value" : ["ipv4", "identification"]
1565 },
1566 {
1567 "type" : "field",
1568 "value" : ["ipv4", "flags"]
1569 },
1570 {
1571 "type" : "field",
1572 "value" : ["ipv4", "frag_offset"]
1573 },
1574 {
1575 "type" : "field",
1576 "value" : ["ipv4", "ttl"]
1577 },
1578 {
1579 "type" : "field",
1580 "value" : ["ipv4", "protocol"]
1581 },
1582 {
1583 "type" : "field",
1584 "value" : ["ipv4", "src_addr"]
1585 },
1586 {
1587 "type" : "field",
1588 "value" : ["ipv4", "dst_addr"]
1589 }
1590 ]
1591 },
1592 {
1593 "name" : "calc_0",
1594 "id" : 1,
1595 "source_info" : {
1596 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001597 "line" : 243,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001598 "column" : 8,
1599 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
1600 },
1601 "algo" : "csum16",
1602 "input" : [
1603 {
1604 "type" : "field",
1605 "value" : ["gtpu_ipv4", "version"]
1606 },
1607 {
1608 "type" : "field",
1609 "value" : ["gtpu_ipv4", "ihl"]
1610 },
1611 {
1612 "type" : "field",
1613 "value" : ["gtpu_ipv4", "dscp"]
1614 },
1615 {
1616 "type" : "field",
1617 "value" : ["gtpu_ipv4", "ecn"]
1618 },
1619 {
1620 "type" : "field",
1621 "value" : ["gtpu_ipv4", "total_len"]
1622 },
1623 {
1624 "type" : "field",
1625 "value" : ["gtpu_ipv4", "identification"]
1626 },
1627 {
1628 "type" : "field",
1629 "value" : ["gtpu_ipv4", "flags"]
1630 },
1631 {
1632 "type" : "field",
1633 "value" : ["gtpu_ipv4", "frag_offset"]
1634 },
1635 {
1636 "type" : "field",
1637 "value" : ["gtpu_ipv4", "ttl"]
1638 },
1639 {
1640 "type" : "field",
1641 "value" : ["gtpu_ipv4", "protocol"]
1642 },
1643 {
1644 "type" : "field",
1645 "value" : ["gtpu_ipv4", "src_addr"]
1646 },
1647 {
1648 "type" : "field",
1649 "value" : ["gtpu_ipv4", "dst_addr"]
1650 }
1651 ]
1652 },
1653 {
1654 "name" : "calc_1",
1655 "id" : 2,
1656 "source_info" : {
1657 "filename" : "include/checksum.p4",
1658 "line" : 57,
1659 "column" : 8,
1660 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
1661 },
1662 "algo" : "csum16",
1663 "input" : [
1664 {
1665 "type" : "field",
1666 "value" : ["ipv4", "version"]
1667 },
1668 {
1669 "type" : "field",
1670 "value" : ["ipv4", "ihl"]
1671 },
1672 {
1673 "type" : "field",
1674 "value" : ["ipv4", "dscp"]
1675 },
1676 {
1677 "type" : "field",
1678 "value" : ["ipv4", "ecn"]
1679 },
1680 {
1681 "type" : "field",
1682 "value" : ["ipv4", "total_len"]
1683 },
1684 {
1685 "type" : "field",
1686 "value" : ["ipv4", "identification"]
1687 },
1688 {
1689 "type" : "field",
1690 "value" : ["ipv4", "flags"]
1691 },
1692 {
1693 "type" : "field",
1694 "value" : ["ipv4", "frag_offset"]
1695 },
1696 {
1697 "type" : "field",
1698 "value" : ["ipv4", "ttl"]
1699 },
1700 {
1701 "type" : "field",
1702 "value" : ["ipv4", "protocol"]
1703 },
1704 {
1705 "type" : "field",
1706 "value" : ["ipv4", "src_addr"]
1707 },
1708 {
1709 "type" : "field",
1710 "value" : ["ipv4", "dst_addr"]
1711 }
1712 ]
1713 }
1714 ],
1715 "learn_lists" : [],
1716 "actions" : [
1717 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001718 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001719 "id" : 0,
1720 "runtime_data" : [],
1721 "primitives" : []
1722 },
1723 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001724 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001725 "id" : 1,
1726 "runtime_data" : [],
1727 "primitives" : []
1728 },
1729 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001730 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001731 "id" : 2,
1732 "runtime_data" : [],
1733 "primitives" : []
1734 },
1735 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001736 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001737 "id" : 3,
1738 "runtime_data" : [],
1739 "primitives" : []
1740 },
1741 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001742 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001743 "id" : 4,
1744 "runtime_data" : [],
1745 "primitives" : []
1746 },
1747 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001748 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001749 "id" : 5,
1750 "runtime_data" : [],
1751 "primitives" : []
1752 },
1753 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001754 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001755 "id" : 6,
1756 "runtime_data" : [],
1757 "primitives" : []
1758 },
1759 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001760 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001761 "id" : 7,
1762 "runtime_data" : [],
1763 "primitives" : []
1764 },
1765 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001766 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001767 "id" : 8,
1768 "runtime_data" : [],
1769 "primitives" : []
1770 },
1771 {
1772 "name" : "nop",
1773 "id" : 9,
1774 "runtime_data" : [],
1775 "primitives" : []
1776 },
1777 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001778 "name" : "FabricIngress.spgw_ingress.gtpu_decap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001779 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001780 "runtime_data" : [],
1781 "primitives" : [
1782 {
1783 "op" : "remove_header",
1784 "parameters" : [
1785 {
1786 "type" : "header",
1787 "value" : "gtpu_ipv4"
1788 }
1789 ],
1790 "source_info" : {
1791 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001792 "line" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001793 "column" : 8,
1794 "source_fragment" : "gtpu_ipv4.setInvalid()"
1795 }
1796 },
1797 {
1798 "op" : "remove_header",
1799 "parameters" : [
1800 {
1801 "type" : "header",
1802 "value" : "gtpu_udp"
1803 }
1804 ],
1805 "source_info" : {
1806 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001807 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001808 "column" : 8,
1809 "source_fragment" : "gtpu_udp.setInvalid()"
1810 }
1811 },
1812 {
1813 "op" : "remove_header",
1814 "parameters" : [
1815 {
1816 "type" : "header",
1817 "value" : "gtpu"
1818 }
1819 ],
1820 "source_info" : {
1821 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001822 "line" : 58,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001823 "column" : 8,
1824 "source_fragment" : "gtpu.setInvalid()"
1825 }
1826 }
1827 ]
1828 },
1829 {
1830 "name" : "FabricIngress.spgw_ingress.set_dl_sess_info",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001831 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001832 "runtime_data" : [
1833 {
1834 "name" : "teid",
1835 "bitwidth" : 32
1836 },
1837 {
1838 "name" : "s1u_enb_addr",
1839 "bitwidth" : 32
1840 },
1841 {
1842 "name" : "s1u_sgw_addr",
1843 "bitwidth" : 32
1844 }
1845 ],
1846 "primitives" : [
1847 {
1848 "op" : "assign",
1849 "parameters" : [
1850 {
1851 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07001852 "value" : ["scalars", "fabric_metadata_t._spgw_teid18"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001853 },
1854 {
1855 "type" : "runtime_data",
1856 "value" : 0
1857 }
1858 ],
1859 "source_info" : {
1860 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001861 "line" : 64,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001862 "column" : 30,
1863 "source_fragment" : "= teid; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001864 }
1865 },
1866 {
1867 "op" : "assign",
1868 "parameters" : [
1869 {
1870 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07001871 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr19"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001872 },
1873 {
1874 "type" : "runtime_data",
1875 "value" : 1
1876 }
1877 ],
1878 "source_info" : {
1879 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001880 "line" : 65,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001881 "column" : 38,
1882 "source_fragment" : "= s1u_enb_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001883 }
1884 },
1885 {
1886 "op" : "assign",
1887 "parameters" : [
1888 {
1889 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07001890 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr20"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001891 },
1892 {
1893 "type" : "runtime_data",
1894 "value" : 2
1895 }
1896 ],
1897 "source_info" : {
1898 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001899 "line" : 66,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001900 "column" : 38,
1901 "source_fragment" : "= s1u_sgw_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001902 }
1903 }
1904 ]
1905 },
1906 {
1907 "name" : "FabricIngress.process_set_source_sink.int_set_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001908 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001909 "runtime_data" : [],
1910 "primitives" : [
1911 {
1912 "op" : "assign",
1913 "parameters" : [
1914 {
1915 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07001916 "value" : ["scalars", "fabric_metadata_t._int_meta_source21"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001917 },
1918 {
1919 "type" : "expression",
1920 "value" : {
1921 "type" : "expression",
1922 "value" : {
1923 "op" : "b2d",
1924 "left" : null,
1925 "right" : {
1926 "type" : "bool",
1927 "value" : true
1928 }
1929 }
1930 }
1931 }
1932 ],
1933 "source_info" : {
1934 "filename" : "include/int/int_main.p4",
1935 "line" : 42,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001936 "column" : 40,
1937 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001938 }
1939 }
1940 ]
1941 },
1942 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001943 "name" : "FabricIngress.filtering.deny",
1944 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001945 "runtime_data" : [],
1946 "primitives" : [
1947 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001948 "op" : "assign",
1949 "parameters" : [
1950 {
1951 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001952 "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001953 },
1954 {
1955 "type" : "expression",
1956 "value" : {
1957 "type" : "expression",
1958 "value" : {
1959 "op" : "b2d",
1960 "left" : null,
1961 "right" : {
1962 "type" : "bool",
1963 "value" : true
1964 }
1965 }
1966 }
1967 }
1968 ],
1969 "source_info" : {
1970 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001971 "line" : 36,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001972 "column" : 40,
1973 "source_fragment" : "= true; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001974 }
1975 },
1976 {
1977 "op" : "assign",
1978 "parameters" : [
1979 {
1980 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001981 "value" : ["scalars", "fabric_metadata_t._skip_next8"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001982 },
1983 {
1984 "type" : "expression",
1985 "value" : {
1986 "type" : "expression",
1987 "value" : {
1988 "op" : "b2d",
1989 "left" : null,
1990 "right" : {
1991 "type" : "bool",
1992 "value" : true
1993 }
1994 }
1995 }
1996 }
1997 ],
1998 "source_info" : {
1999 "filename" : "include/control/filtering.p4",
2000 "line" : 37,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002001 "column" : 34,
2002 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002003 }
2004 }
2005 ]
2006 },
2007 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002008 "name" : "FabricIngress.filtering.permit",
2009 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002010 "runtime_data" : [],
2011 "primitives" : []
2012 },
2013 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002014 "name" : "FabricIngress.filtering.permit_with_internal_vlan",
2015 "id" : 15,
2016 "runtime_data" : [
2017 {
2018 "name" : "vlan_id",
2019 "bitwidth" : 12
2020 }
2021 ],
2022 "primitives" : [
2023 {
2024 "op" : "assign",
2025 "parameters" : [
2026 {
2027 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002028 "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002029 },
2030 {
2031 "type" : "runtime_data",
2032 "value" : 0
2033 }
2034 ],
2035 "source_info" : {
2036 "filename" : "include/control/filtering.p4",
2037 "line" : 47,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002038 "column" : 32,
2039 "source_fragment" : "= vlan_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002040 }
2041 }
2042 ]
2043 },
2044 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002045 "name" : "FabricIngress.filtering.set_forwarding_type",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002046 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002047 "runtime_data" : [
2048 {
2049 "name" : "fwd_type",
2050 "bitwidth" : 3
2051 }
2052 ],
2053 "primitives" : [
2054 {
2055 "op" : "assign",
2056 "parameters" : [
2057 {
2058 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002059 "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002060 },
2061 {
2062 "type" : "runtime_data",
2063 "value" : 0
2064 }
2065 ],
2066 "source_info" : {
2067 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07002068 "line" : 83,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002069 "column" : 33,
2070 "source_fragment" : "= fwd_type; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002071 }
2072 }
2073 ]
2074 },
2075 {
2076 "name" : "FabricIngress.forwarding.set_next_id_bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002077 "id" : 17,
2078 "runtime_data" : [
2079 {
2080 "name" : "next_id",
2081 "bitwidth" : 32
2082 }
2083 ],
2084 "primitives" : [
2085 {
2086 "op" : "assign",
2087 "parameters" : [
2088 {
2089 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002090 "value" : ["scalars", "fabric_metadata_t._next_id10"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002091 },
2092 {
2093 "type" : "runtime_data",
2094 "value" : 0
2095 }
2096 ],
2097 "source_info" : {
2098 "filename" : "include/control/forwarding.p4",
2099 "line" : 30,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002100 "column" : 32,
2101 "source_fragment" : "= next_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002102 }
2103 }
2104 ]
2105 },
2106 {
2107 "name" : "FabricIngress.forwarding.pop_mpls_and_next",
2108 "id" : 18,
2109 "runtime_data" : [
2110 {
2111 "name" : "next_id",
2112 "bitwidth" : 32
2113 }
2114 ],
2115 "primitives" : [
2116 {
2117 "op" : "assign",
2118 "parameters" : [
2119 {
2120 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002121 "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002122 },
2123 {
2124 "type" : "hexstr",
2125 "value" : "0x000000"
2126 }
2127 ],
2128 "source_info" : {
2129 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07002130 "line" : 66,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002131 "column" : 35,
2132 "source_fragment" : "= 0; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002133 }
2134 },
2135 {
2136 "op" : "assign",
2137 "parameters" : [
2138 {
2139 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002140 "value" : ["scalars", "fabric_metadata_t._next_id10"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002141 },
2142 {
2143 "type" : "runtime_data",
2144 "value" : 0
2145 }
2146 ],
2147 "source_info" : {
2148 "filename" : "include/control/forwarding.p4",
2149 "line" : 30,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002150 "column" : 32,
2151 "source_fragment" : "= next_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002152 }
2153 }
2154 ]
2155 },
2156 {
2157 "name" : "FabricIngress.forwarding.set_next_id_routing_v4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002158 "id" : 19,
2159 "runtime_data" : [
2160 {
2161 "name" : "next_id",
2162 "bitwidth" : 32
2163 }
2164 ],
2165 "primitives" : [
2166 {
2167 "op" : "assign",
2168 "parameters" : [
2169 {
2170 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002171 "value" : ["scalars", "fabric_metadata_t._next_id10"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002172 },
2173 {
2174 "type" : "runtime_data",
2175 "value" : 0
2176 }
2177 ],
2178 "source_info" : {
2179 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002180 "line" : 30,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002181 "column" : 32,
2182 "source_fragment" : "= next_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002183 }
2184 }
2185 ]
2186 },
2187 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002188 "name" : "FabricIngress.forwarding.nop_routing_v4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002189 "id" : 20,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002190 "runtime_data" : [],
2191 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002192 },
2193 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002194 "name" : "FabricIngress.acl.set_next_id_acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002195 "id" : 21,
2196 "runtime_data" : [
2197 {
2198 "name" : "next_id",
2199 "bitwidth" : 32
2200 }
2201 ],
2202 "primitives" : [
2203 {
2204 "op" : "assign",
2205 "parameters" : [
2206 {
2207 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002208 "value" : ["scalars", "fabric_metadata_t._next_id10"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002209 },
2210 {
2211 "type" : "runtime_data",
2212 "value" : 0
2213 }
2214 ],
2215 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002216 "filename" : "include/control/acl.p4",
2217 "line" : 33,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002218 "column" : 32,
2219 "source_fragment" : "= next_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002220 }
2221 }
2222 ]
2223 },
2224 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002225 "name" : "FabricIngress.acl.punt_to_cpu",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002226 "id" : 22,
2227 "runtime_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002228 "primitives" : [
2229 {
2230 "op" : "assign",
2231 "parameters" : [
2232 {
2233 "type" : "field",
2234 "value" : ["standard_metadata", "egress_spec"]
2235 },
2236 {
2237 "type" : "hexstr",
2238 "value" : "0x00ff"
2239 }
2240 ],
2241 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002242 "filename" : "include/control/acl.p4",
2243 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002244 "column" : 8,
2245 "source_fragment" : "standard_metadata.egress_spec = 255"
2246 }
2247 },
2248 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002249 "op" : "assign",
2250 "parameters" : [
2251 {
2252 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002253 "value" : ["scalars", "fabric_metadata_t._skip_next8"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002254 },
2255 {
2256 "type" : "expression",
2257 "value" : {
2258 "type" : "expression",
2259 "value" : {
2260 "op" : "b2d",
2261 "left" : null,
2262 "right" : {
2263 "type" : "bool",
2264 "value" : true
2265 }
2266 }
2267 }
2268 }
2269 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002270 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002271 "filename" : "include/control/acl.p4",
2272 "line" : 40,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002273 "column" : 34,
2274 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002275 }
2276 }
2277 ]
2278 },
2279 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002280 "name" : "FabricIngress.acl.set_clone_session_id",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002281 "id" : 23,
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002282 "runtime_data" : [
2283 {
2284 "name" : "clone_id",
2285 "bitwidth" : 32
2286 }
2287 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002288 "primitives" : [
2289 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002290 "op" : "clone_ingress_pkt_to_egress",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002291 "parameters" : [
2292 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002293 "type" : "runtime_data",
2294 "value" : 0
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002295 },
2296 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002297 "type" : "hexstr",
2298 "value" : "0x1"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002299 }
2300 ],
2301 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002302 "filename" : "include/control/acl.p4",
2303 "line" : 46,
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002304 "column" : 8,
Daniele Moro3b7a21b2019-06-25 17:33:40 -07002305 "source_fragment" : "clone3(CloneType.I2E, clone_id, {standard_metadata.ingress_port})"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002306 }
2307 }
2308 ]
2309 },
2310 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002311 "name" : "FabricIngress.acl.drop",
2312 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002313 "runtime_data" : [],
2314 "primitives" : [
2315 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -07002316 "op" : "mark_to_drop",
2317 "parameters" : [
2318 {
2319 "type" : "header",
2320 "value" : "standard_metadata"
2321 }
2322 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002323 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002324 "filename" : "include/control/acl.p4",
2325 "line" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002326 "column" : 8,
Carmelo Cascone9b607da2019-05-08 14:03:01 -07002327 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002328 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002329 },
2330 {
2331 "op" : "assign",
2332 "parameters" : [
2333 {
2334 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002335 "value" : ["scalars", "fabric_metadata_t._skip_next8"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002336 },
2337 {
2338 "type" : "expression",
2339 "value" : {
2340 "type" : "expression",
2341 "value" : {
2342 "op" : "b2d",
2343 "left" : null,
2344 "right" : {
2345 "type" : "bool",
2346 "value" : true
2347 }
2348 }
2349 }
2350 }
2351 ],
2352 "source_info" : {
2353 "filename" : "include/control/acl.p4",
2354 "line" : 52,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002355 "column" : 34,
2356 "source_fragment" : "= true; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002357 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002358 }
2359 ]
2360 },
2361 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002362 "name" : "FabricIngress.acl.nop_acl",
2363 "id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002364 "runtime_data" : [],
2365 "primitives" : []
2366 },
2367 {
2368 "name" : "FabricIngress.next.set_vlan",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002369 "id" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002370 "runtime_data" : [
2371 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002372 "name" : "vlan_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002373 "bitwidth" : 12
2374 }
2375 ],
2376 "primitives" : [
2377 {
2378 "op" : "assign",
2379 "parameters" : [
2380 {
2381 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002382 "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002383 },
2384 {
2385 "type" : "runtime_data",
2386 "value" : 0
2387 }
2388 ],
2389 "source_info" : {
2390 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002391 "line" : 70,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002392 "column" : 32,
2393 "source_fragment" : "= vlan_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002394 }
2395 }
2396 ]
2397 },
2398 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002399 "name" : "FabricIngress.next.output_xconnect",
2400 "id" : 27,
2401 "runtime_data" : [
2402 {
2403 "name" : "port_num",
2404 "bitwidth" : 9
2405 }
2406 ],
2407 "primitives" : [
2408 {
2409 "op" : "assign",
2410 "parameters" : [
2411 {
2412 "type" : "field",
2413 "value" : ["standard_metadata", "egress_spec"]
2414 },
2415 {
2416 "type" : "runtime_data",
2417 "value" : 0
2418 }
2419 ],
2420 "source_info" : {
2421 "filename" : "include/control/next.p4",
2422 "line" : 31,
2423 "column" : 5,
2424 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2425 }
2426 }
2427 ]
2428 },
2429 {
2430 "name" : "FabricIngress.next.set_next_id_xconnect",
2431 "id" : 28,
2432 "runtime_data" : [
2433 {
2434 "name" : "next_id",
2435 "bitwidth" : 32
2436 }
2437 ],
2438 "primitives" : [
2439 {
2440 "op" : "assign",
2441 "parameters" : [
2442 {
2443 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002444 "value" : ["scalars", "fabric_metadata_t._next_id10"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002445 },
2446 {
2447 "type" : "runtime_data",
2448 "value" : 0
2449 }
2450 ],
2451 "source_info" : {
2452 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07002453 "line" : 100,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002454 "column" : 32,
2455 "source_fragment" : "= next_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002456 }
2457 }
2458 ]
2459 },
2460 {
2461 "name" : "FabricIngress.next.output_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002462 "id" : 29,
2463 "runtime_data" : [
2464 {
2465 "name" : "port_num",
2466 "bitwidth" : 9
2467 }
2468 ],
2469 "primitives" : [
2470 {
2471 "op" : "assign",
2472 "parameters" : [
2473 {
2474 "type" : "field",
2475 "value" : ["standard_metadata", "egress_spec"]
2476 },
2477 {
2478 "type" : "runtime_data",
2479 "value" : 0
2480 }
2481 ],
2482 "source_info" : {
2483 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002484 "line" : 31,
2485 "column" : 5,
2486 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002487 }
2488 }
2489 ]
2490 },
2491 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002492 "name" : "FabricIngress.next.routing_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002493 "id" : 30,
2494 "runtime_data" : [
2495 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002496 "name" : "port_num",
2497 "bitwidth" : 9
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002498 },
2499 {
2500 "name" : "smac",
2501 "bitwidth" : 48
2502 },
2503 {
2504 "name" : "dmac",
2505 "bitwidth" : 48
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002506 }
2507 ],
2508 "primitives" : [
2509 {
2510 "op" : "assign",
2511 "parameters" : [
2512 {
2513 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002514 "value" : ["ethernet", "src_addr"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002515 },
2516 {
2517 "type" : "runtime_data",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002518 "value" : 1
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002519 }
2520 ],
2521 "source_info" : {
2522 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002523 "line" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002524 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002525 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2526 }
2527 },
2528 {
2529 "op" : "assign",
2530 "parameters" : [
2531 {
2532 "type" : "field",
2533 "value" : ["ethernet", "dst_addr"]
2534 },
2535 {
2536 "type" : "runtime_data",
2537 "value" : 2
2538 }
2539 ],
2540 "source_info" : {
2541 "filename" : "include/control/next.p4",
2542 "line" : 41,
2543 "column" : 8,
2544 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002545 }
2546 },
2547 {
2548 "op" : "assign",
2549 "parameters" : [
2550 {
2551 "type" : "field",
2552 "value" : ["standard_metadata", "egress_spec"]
2553 },
2554 {
2555 "type" : "runtime_data",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002556 "value" : 0
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002557 }
2558 ],
2559 "source_info" : {
2560 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002561 "line" : 31,
2562 "column" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002563 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2564 }
2565 }
2566 ]
2567 },
2568 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002569 "name" : "FabricIngress.next.mpls_routing_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002570 "id" : 31,
2571 "runtime_data" : [
2572 {
2573 "name" : "port_num",
2574 "bitwidth" : 9
2575 },
2576 {
2577 "name" : "smac",
2578 "bitwidth" : 48
2579 },
2580 {
2581 "name" : "dmac",
2582 "bitwidth" : 48
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002583 },
2584 {
2585 "name" : "label",
2586 "bitwidth" : 20
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002587 }
2588 ],
2589 "primitives" : [
2590 {
2591 "op" : "assign",
2592 "parameters" : [
2593 {
2594 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002595 "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002596 },
2597 {
2598 "type" : "runtime_data",
2599 "value" : 3
2600 }
2601 ],
2602 "source_info" : {
2603 "filename" : "include/control/next.p4",
2604 "line" : 46,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002605 "column" : 35,
2606 "source_fragment" : "= label; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002607 }
2608 },
2609 {
2610 "op" : "assign",
2611 "parameters" : [
2612 {
2613 "type" : "field",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002614 "value" : ["ethernet", "src_addr"]
2615 },
2616 {
2617 "type" : "runtime_data",
2618 "value" : 1
2619 }
2620 ],
2621 "source_info" : {
2622 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002623 "line" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002624 "column" : 8,
2625 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2626 }
2627 },
2628 {
2629 "op" : "assign",
2630 "parameters" : [
2631 {
2632 "type" : "field",
2633 "value" : ["ethernet", "dst_addr"]
2634 },
2635 {
2636 "type" : "runtime_data",
2637 "value" : 2
2638 }
2639 ],
2640 "source_info" : {
2641 "filename" : "include/control/next.p4",
2642 "line" : 41,
2643 "column" : 8,
2644 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2645 }
2646 },
2647 {
2648 "op" : "assign",
2649 "parameters" : [
2650 {
2651 "type" : "field",
2652 "value" : ["standard_metadata", "egress_spec"]
2653 },
2654 {
2655 "type" : "runtime_data",
2656 "value" : 0
2657 }
2658 ],
2659 "source_info" : {
2660 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002661 "line" : 31,
2662 "column" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002663 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2664 }
2665 }
2666 ]
2667 },
2668 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002669 "name" : "FabricIngress.next.set_mcast_group_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002670 "id" : 32,
2671 "runtime_data" : [
2672 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002673 "name" : "group_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002674 "bitwidth" : 16
2675 }
2676 ],
2677 "primitives" : [
2678 {
2679 "op" : "assign",
2680 "parameters" : [
2681 {
2682 "type" : "field",
2683 "value" : ["standard_metadata", "mcast_grp"]
2684 },
2685 {
2686 "type" : "runtime_data",
2687 "value" : 0
2688 }
2689 ],
2690 "source_info" : {
2691 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07002692 "line" : 213,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002693 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002694 "source_fragment" : "standard_metadata.mcast_grp = group_id"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002695 }
2696 },
2697 {
2698 "op" : "assign",
2699 "parameters" : [
2700 {
2701 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002702 "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002703 },
2704 {
2705 "type" : "expression",
2706 "value" : {
2707 "type" : "expression",
2708 "value" : {
2709 "op" : "b2d",
2710 "left" : null,
2711 "right" : {
2712 "type" : "bool",
2713 "value" : true
2714 }
2715 }
2716 }
2717 }
2718 ],
2719 "source_info" : {
2720 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07002721 "line" : 214,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002722 "column" : 37,
2723 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002724 }
2725 }
2726 ]
2727 },
2728 {
2729 "name" : "act",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002730 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002731 "runtime_data" : [],
2732 "primitives" : [
2733 {
2734 "op" : "assign",
2735 "parameters" : [
2736 {
2737 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002738 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002739 },
2740 {
2741 "type" : "expression",
2742 "value" : {
2743 "type" : "expression",
2744 "value" : {
2745 "op" : "b2d",
2746 "left" : null,
2747 "right" : {
2748 "type" : "bool",
2749 "value" : true
2750 }
2751 }
2752 }
2753 }
2754 ],
2755 "source_info" : {
2756 "filename" : "include/spgw.p4",
2757 "line" : 30,
2758 "column" : 32,
2759 "source_fragment" : "return"
2760 }
2761 }
2762 ]
2763 },
2764 {
2765 "name" : "act_0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002766 "id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002767 "runtime_data" : [],
2768 "primitives" : [
2769 {
2770 "op" : "remove_header",
2771 "parameters" : [
2772 {
2773 "type" : "header",
2774 "value" : "gtpu_ipv4"
2775 }
2776 ],
2777 "source_info" : {
2778 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07002779 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002780 "column" : 50,
2781 "source_fragment" : "hdr.gtpu_ipv4"
2782 }
2783 },
2784 {
2785 "op" : "remove_header",
2786 "parameters" : [
2787 {
2788 "type" : "header",
2789 "value" : "gtpu_udp"
2790 }
2791 ],
2792 "source_info" : {
2793 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07002794 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002795 "column" : 65,
2796 "source_fragment" : "hdr.gtpu_udp"
2797 }
2798 },
2799 {
2800 "op" : "assign",
2801 "parameters" : [
2802 {
2803 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002804 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002805 },
2806 {
2807 "type" : "expression",
2808 "value" : {
2809 "type" : "expression",
2810 "value" : {
2811 "op" : "b2d",
2812 "left" : null,
2813 "right" : {
2814 "type" : "bool",
2815 "value" : false
2816 }
2817 }
2818 }
2819 }
2820 ]
2821 }
2822 ]
2823 },
2824 {
2825 "name" : "act_1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002826 "id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002827 "runtime_data" : [],
2828 "primitives" : [
2829 {
2830 "op" : "assign_header",
2831 "parameters" : [
2832 {
2833 "type" : "header",
2834 "value" : "udp"
2835 },
2836 {
2837 "type" : "header",
2838 "value" : "inner_udp"
2839 }
2840 ],
2841 "source_info" : {
2842 "filename" : "include/spgw.p4",
2843 "line" : 35,
2844 "column" : 16,
2845 "source_fragment" : "= inner_udp; ..."
2846 }
2847 }
2848 ]
2849 },
2850 {
2851 "name" : "act_2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002852 "id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002853 "runtime_data" : [],
2854 "primitives" : [
2855 {
2856 "op" : "remove_header",
2857 "parameters" : [
2858 {
2859 "type" : "header",
2860 "value" : "udp"
2861 }
2862 ],
2863 "source_info" : {
2864 "filename" : "include/spgw.p4",
2865 "line" : 37,
2866 "column" : 12,
2867 "source_fragment" : "udp.setInvalid()"
2868 }
2869 }
2870 ]
2871 },
2872 {
2873 "name" : "act_3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002874 "id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002875 "runtime_data" : [],
2876 "primitives" : [
2877 {
2878 "op" : "assign_header",
2879 "parameters" : [
2880 {
2881 "type" : "header",
2882 "value" : "gtpu_ipv4"
2883 },
2884 {
2885 "type" : "header",
2886 "value" : "ipv4"
2887 }
2888 ],
2889 "source_info" : {
2890 "filename" : "include/spgw.p4",
2891 "line" : 31,
2892 "column" : 18,
2893 "source_fragment" : "= ipv4; ..."
2894 }
2895 },
2896 {
2897 "op" : "assign_header",
2898 "parameters" : [
2899 {
2900 "type" : "header",
2901 "value" : "ipv4"
2902 },
2903 {
2904 "type" : "header",
2905 "value" : "inner_ipv4"
2906 }
2907 ],
2908 "source_info" : {
2909 "filename" : "include/spgw.p4",
2910 "line" : 32,
2911 "column" : 13,
2912 "source_fragment" : "= inner_ipv4; ..."
2913 }
2914 },
2915 {
2916 "op" : "assign_header",
2917 "parameters" : [
2918 {
2919 "type" : "header",
2920 "value" : "gtpu_udp"
2921 },
2922 {
2923 "type" : "header",
2924 "value" : "udp"
2925 }
2926 ],
2927 "source_info" : {
2928 "filename" : "include/spgw.p4",
2929 "line" : 33,
2930 "column" : 17,
2931 "source_fragment" : "= udp; ..."
2932 }
2933 }
2934 ]
2935 },
2936 {
2937 "name" : "act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002938 "id" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002939 "runtime_data" : [],
2940 "primitives" : [
2941 {
2942 "op" : "assign",
2943 "parameters" : [
2944 {
2945 "type" : "field",
2946 "value" : ["standard_metadata", "egress_spec"]
2947 },
2948 {
2949 "type" : "field",
2950 "value" : ["packet_out", "egress_port"]
2951 }
2952 ],
2953 "source_info" : {
2954 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002955 "line" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002956 "column" : 12,
2957 "source_fragment" : "standard_metadata.egress_spec = hdr.packet_out.egress_port"
2958 }
2959 },
2960 {
2961 "op" : "remove_header",
2962 "parameters" : [
2963 {
2964 "type" : "header",
2965 "value" : "packet_out"
2966 }
2967 ],
2968 "source_info" : {
2969 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002970 "line" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002971 "column" : 12,
2972 "source_fragment" : "hdr.packet_out.setInvalid()"
2973 }
2974 },
2975 {
2976 "op" : "assign",
2977 "parameters" : [
2978 {
2979 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002980 "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002981 },
2982 {
2983 "type" : "expression",
2984 "value" : {
2985 "type" : "expression",
2986 "value" : {
2987 "op" : "b2d",
2988 "left" : null,
2989 "right" : {
2990 "type" : "bool",
2991 "value" : true
2992 }
2993 }
2994 }
2995 }
2996 ],
2997 "source_info" : {
2998 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002999 "line" : 27,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003000 "column" : 53,
3001 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003002 }
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003003 },
3004 {
3005 "op" : "exit",
3006 "parameters" : [],
3007 "source_info" : {
3008 "filename" : "include/control/packetio.p4",
3009 "line" : 29,
3010 "column" : 12,
3011 "source_fragment" : "exit"
3012 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003013 }
3014 ]
3015 },
3016 {
3017 "name" : "act_5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003018 "id" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003019 "runtime_data" : [],
3020 "primitives" : [
3021 {
3022 "op" : "assign",
3023 "parameters" : [
3024 {
3025 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003026 "value" : ["scalars", "fabric_metadata_t._eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003027 },
3028 {
3029 "type" : "field",
3030 "value" : ["vlan_tag", "eth_type"]
3031 }
3032 ],
3033 "source_info" : {
3034 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07003035 "line" : 105,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003036 "column" : 37,
3037 "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003038 }
3039 },
3040 {
3041 "op" : "assign",
3042 "parameters" : [
3043 {
3044 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003045 "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003046 },
3047 {
3048 "type" : "field",
3049 "value" : ["vlan_tag", "vlan_id"]
3050 }
3051 ],
3052 "source_info" : {
3053 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07003054 "line" : 106,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003055 "column" : 36,
3056 "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003057 }
3058 },
3059 {
3060 "op" : "assign",
3061 "parameters" : [
3062 {
3063 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003064 "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003065 },
3066 {
3067 "type" : "field",
3068 "value" : ["vlan_tag", "pri"]
3069 }
3070 ],
3071 "source_info" : {
3072 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07003073 "line" : 107,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003074 "column" : 37,
3075 "source_fragment" : "= hdr.vlan_tag.pri; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003076 }
3077 },
3078 {
3079 "op" : "assign",
3080 "parameters" : [
3081 {
3082 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003083 "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003084 },
3085 {
3086 "type" : "field",
3087 "value" : ["vlan_tag", "cfi"]
3088 }
3089 ],
3090 "source_info" : {
3091 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07003092 "line" : 108,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003093 "column" : 37,
3094 "source_fragment" : "= hdr.vlan_tag.cfi; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003095 }
3096 }
3097 ]
3098 },
3099 {
3100 "name" : "act_6",
3101 "id" : 40,
3102 "runtime_data" : [],
3103 "primitives" : [
3104 {
3105 "op" : "assign",
3106 "parameters" : [
3107 {
3108 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003109 "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003110 },
3111 {
3112 "type" : "hexstr",
3113 "value" : "0x41"
3114 }
3115 ],
3116 "source_info" : {
3117 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07003118 "line" : 115,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003119 "column" : 37,
3120 "source_fragment" : "= DEFAULT_MPLS_TTL + 1; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003121 }
3122 }
3123 ]
3124 },
3125 {
3126 "name" : "act_7",
3127 "id" : 41,
3128 "runtime_data" : [],
3129 "primitives" : [
3130 {
3131 "op" : "assign",
3132 "parameters" : [
3133 {
3134 "type" : "field",
3135 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003136 },
3137 {
3138 "type" : "expression",
3139 "value" : {
3140 "type" : "expression",
3141 "value" : {
3142 "op" : "b2d",
3143 "left" : null,
3144 "right" : {
3145 "type" : "bool",
3146 "value" : true
3147 }
3148 }
3149 }
3150 }
3151 ]
3152 }
3153 ]
3154 },
3155 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003156 "name" : "act_8",
3157 "id" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003158 "runtime_data" : [],
3159 "primitives" : [
3160 {
3161 "op" : "assign",
3162 "parameters" : [
3163 {
3164 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003165 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003166 },
3167 {
3168 "type" : "expression",
3169 "value" : {
3170 "type" : "expression",
3171 "value" : {
3172 "op" : "b2d",
3173 "left" : null,
3174 "right" : {
3175 "type" : "bool",
3176 "value" : false
3177 }
3178 }
3179 }
3180 }
3181 ]
3182 }
3183 ]
3184 },
3185 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003186 "name" : "act_9",
3187 "id" : 43,
3188 "runtime_data" : [],
3189 "primitives" : [
3190 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003191 "op" : "mark_to_drop",
3192 "parameters" : [
3193 {
3194 "type" : "header",
3195 "value" : "standard_metadata"
3196 }
3197 ],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003198 "source_info" : {
3199 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003200 "line" : 149,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003201 "column" : 16,
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003202 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003203 }
3204 }
3205 ]
3206 },
3207 {
3208 "name" : "act_10",
3209 "id" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003210 "runtime_data" : [],
3211 "primitives" : [
3212 {
3213 "op" : "assign",
3214 "parameters" : [
3215 {
3216 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07003217 "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003218 },
3219 {
3220 "type" : "hexstr",
3221 "value" : "0x01"
3222 }
3223 ],
3224 "source_info" : {
3225 "filename" : "include/control/../define.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07003226 "line" : 142,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003227 "column" : 36,
3228 "source_fragment" : "2w1; ..."
3229 }
3230 }
3231 ]
3232 },
3233 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003234 "name" : "act_11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003235 "id" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003236 "runtime_data" : [],
3237 "primitives" : [
3238 {
3239 "op" : "assign",
3240 "parameters" : [
3241 {
3242 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003243 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003244 },
3245 {
3246 "type" : "expression",
3247 "value" : {
3248 "type" : "expression",
3249 "value" : {
3250 "op" : "b2d",
3251 "left" : null,
3252 "right" : {
3253 "type" : "bool",
3254 "value" : true
3255 }
3256 }
3257 }
3258 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003259 ]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003260 }
3261 ]
3262 },
3263 {
3264 "name" : "act_12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003265 "id" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003266 "runtime_data" : [],
3267 "primitives" : [
3268 {
3269 "op" : "assign",
3270 "parameters" : [
3271 {
3272 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003273 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003274 },
3275 {
3276 "type" : "expression",
3277 "value" : {
3278 "type" : "expression",
3279 "value" : {
3280 "op" : "b2d",
3281 "left" : null,
3282 "right" : {
3283 "type" : "bool",
3284 "value" : false
3285 }
3286 }
3287 }
3288 }
3289 ]
3290 }
3291 ]
3292 },
3293 {
3294 "name" : "act_13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003295 "id" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003296 "runtime_data" : [],
3297 "primitives" : [
3298 {
3299 "op" : "assign",
3300 "parameters" : [
3301 {
3302 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07003303 "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003304 },
3305 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003306 "type" : "hexstr",
3307 "value" : "0x02"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003308 }
3309 ],
3310 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003311 "filename" : "include/control/../define.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07003312 "line" : 143,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003313 "column" : 38,
3314 "source_fragment" : "2w2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003315 }
3316 }
3317 ]
3318 },
3319 {
3320 "name" : "act_14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003321 "id" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003322 "runtime_data" : [],
3323 "primitives" : [
3324 {
3325 "op" : "assign",
3326 "parameters" : [
3327 {
3328 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07003329 "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003330 },
3331 {
3332 "type" : "hexstr",
3333 "value" : "0x00"
3334 }
3335 ],
3336 "source_info" : {
3337 "filename" : "include/control/../define.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07003338 "line" : 141,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003339 "column" : 37,
3340 "source_fragment" : "2w0; ..."
3341 }
3342 },
3343 {
3344 "op" : "assign",
3345 "parameters" : [
3346 {
3347 "type" : "field",
3348 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003349 },
3350 {
3351 "type" : "expression",
3352 "value" : {
3353 "type" : "expression",
3354 "value" : {
3355 "op" : "b2d",
3356 "left" : null,
3357 "right" : {
3358 "type" : "bool",
3359 "value" : true
3360 }
3361 }
3362 }
3363 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003364 ],
3365 "source_info" : {
3366 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003367 "line" : 158,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003368 "column" : 12,
3369 "source_fragment" : "return"
3370 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003371 }
3372 ]
3373 },
3374 {
3375 "name" : "act_15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003376 "id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003377 "runtime_data" : [],
3378 "primitives" : [
3379 {
3380 "op" : "assign",
3381 "parameters" : [
3382 {
3383 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003384 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003385 },
3386 {
3387 "type" : "expression",
3388 "value" : {
3389 "type" : "expression",
3390 "value" : {
3391 "op" : "b2d",
3392 "left" : null,
3393 "right" : {
3394 "type" : "bool",
3395 "value" : false
3396 }
3397 }
3398 }
3399 }
3400 ]
3401 }
3402 ]
3403 },
3404 {
3405 "name" : "act_16",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003406 "id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003407 "runtime_data" : [],
3408 "primitives" : [
3409 {
3410 "op" : "assign",
3411 "parameters" : [
3412 {
3413 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07003414 "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003415 },
3416 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003417 "type" : "field",
3418 "value" : ["ipv4", "total_len"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003419 }
3420 ],
3421 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003422 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003423 "line" : 175,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003424 "column" : 34,
3425 "source_fragment" : "= ipv4.total_len; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003426 }
3427 }
3428 ]
3429 },
3430 {
3431 "name" : "act_17",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003432 "id" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003433 "runtime_data" : [],
3434 "primitives" : [
3435 {
3436 "op" : "assign",
3437 "parameters" : [
3438 {
3439 "type" : "field",
3440 "value" : ["scalars", "tmp_1"]
3441 },
3442 {
3443 "type" : "expression",
3444 "value" : {
3445 "type" : "expression",
3446 "value" : {
3447 "op" : "&",
3448 "left" : {
3449 "type" : "field",
3450 "value" : ["standard_metadata", "egress_spec"]
3451 },
3452 "right" : {
3453 "type" : "hexstr",
3454 "value" : "0xffffffff"
3455 }
3456 }
3457 }
3458 }
3459 ],
3460 "source_info" : {
3461 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003462 "line" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003463 "column" : 38,
3464 "source_fragment" : "(bit<32>)standard_metadata.egress_spec"
3465 }
3466 },
3467 {
3468 "op" : "count",
3469 "parameters" : [
3470 {
3471 "type" : "counter_array",
3472 "value" : "FabricIngress.port_counters_control.egress_port_counter"
3473 },
3474 {
3475 "type" : "field",
3476 "value" : ["scalars", "tmp_1"]
3477 }
3478 ],
3479 "source_info" : {
3480 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003481 "line" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003482 "column" : 12,
3483 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
3484 }
3485 }
3486 ]
3487 },
3488 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003489 "name" : "act_18",
3490 "id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003491 "runtime_data" : [],
3492 "primitives" : [
3493 {
3494 "op" : "assign",
3495 "parameters" : [
3496 {
3497 "type" : "field",
3498 "value" : ["scalars", "tmp_2"]
3499 },
3500 {
3501 "type" : "expression",
3502 "value" : {
3503 "type" : "expression",
3504 "value" : {
3505 "op" : "&",
3506 "left" : {
3507 "type" : "field",
3508 "value" : ["standard_metadata", "ingress_port"]
3509 },
3510 "right" : {
3511 "type" : "hexstr",
3512 "value" : "0xffffffff"
3513 }
3514 }
3515 }
3516 }
3517 ],
3518 "source_info" : {
3519 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003520 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003521 "column" : 39,
3522 "source_fragment" : "(bit<32>)standard_metadata.ingress_port"
3523 }
3524 },
3525 {
3526 "op" : "count",
3527 "parameters" : [
3528 {
3529 "type" : "counter_array",
3530 "value" : "FabricIngress.port_counters_control.ingress_port_counter"
3531 },
3532 {
3533 "type" : "field",
3534 "value" : ["scalars", "tmp_2"]
3535 }
3536 ],
3537 "source_info" : {
3538 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003539 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003540 "column" : 12,
3541 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
3542 }
3543 }
3544 ]
3545 },
3546 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003547 "name" : "nop",
3548 "id" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003549 "runtime_data" : [],
3550 "primitives" : []
3551 },
3552 {
Carmelo Casconefa421582018-09-13 10:05:57 -07003553 "name" : "nop",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003554 "id" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003555 "runtime_data" : [],
3556 "primitives" : []
3557 },
3558 {
3559 "name" : "nop",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003560 "id" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003561 "runtime_data" : [],
3562 "primitives" : []
3563 },
3564 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003565 "name" : "NoAction",
3566 "id" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003567 "runtime_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003568 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003569 },
3570 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003571 "name" : "NoAction",
3572 "id" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003573 "runtime_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003574 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003575 },
3576 {
3577 "name" : "FabricEgress.spgw_egress.gtpu_encap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003578 "id" : 58,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003579 "runtime_data" : [],
3580 "primitives" : [
3581 {
3582 "op" : "add_header",
3583 "parameters" : [
3584 {
3585 "type" : "header",
3586 "value" : "gtpu_ipv4"
3587 }
3588 ],
3589 "source_info" : {
3590 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003591 "line" : 191,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003592 "column" : 8,
3593 "source_fragment" : "gtpu_ipv4.setValid()"
3594 }
3595 },
3596 {
3597 "op" : "assign",
3598 "parameters" : [
3599 {
3600 "type" : "field",
3601 "value" : ["gtpu_ipv4", "version"]
3602 },
3603 {
3604 "type" : "hexstr",
3605 "value" : "0x04"
3606 }
3607 ],
3608 "source_info" : {
3609 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003610 "line" : 192,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003611 "column" : 8,
3612 "source_fragment" : "gtpu_ipv4.version = 4"
3613 }
3614 },
3615 {
3616 "op" : "assign",
3617 "parameters" : [
3618 {
3619 "type" : "field",
3620 "value" : ["gtpu_ipv4", "ihl"]
3621 },
3622 {
3623 "type" : "hexstr",
3624 "value" : "0x05"
3625 }
3626 ],
3627 "source_info" : {
3628 "filename" : "include/control/../define.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07003629 "line" : 124,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003630 "column" : 28,
3631 "source_fragment" : "5; ..."
3632 }
3633 },
3634 {
3635 "op" : "assign",
3636 "parameters" : [
3637 {
3638 "type" : "field",
3639 "value" : ["gtpu_ipv4", "dscp"]
3640 },
3641 {
3642 "type" : "hexstr",
3643 "value" : "0x00"
3644 }
3645 ],
3646 "source_info" : {
3647 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003648 "line" : 194,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003649 "column" : 8,
3650 "source_fragment" : "gtpu_ipv4.dscp = 0"
3651 }
3652 },
3653 {
3654 "op" : "assign",
3655 "parameters" : [
3656 {
3657 "type" : "field",
3658 "value" : ["gtpu_ipv4", "ecn"]
3659 },
3660 {
3661 "type" : "hexstr",
3662 "value" : "0x00"
3663 }
3664 ],
3665 "source_info" : {
3666 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003667 "line" : 195,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003668 "column" : 8,
3669 "source_fragment" : "gtpu_ipv4.ecn = 0"
3670 }
3671 },
3672 {
3673 "op" : "assign",
3674 "parameters" : [
3675 {
3676 "type" : "field",
3677 "value" : ["gtpu_ipv4", "total_len"]
3678 },
3679 {
3680 "type" : "expression",
3681 "value" : {
3682 "type" : "expression",
3683 "value" : {
3684 "op" : "&",
3685 "left" : {
3686 "type" : "expression",
3687 "value" : {
3688 "op" : "+",
3689 "left" : {
3690 "type" : "field",
3691 "value" : ["ipv4", "total_len"]
3692 },
3693 "right" : {
3694 "type" : "hexstr",
3695 "value" : "0x0024"
3696 }
3697 }
3698 },
3699 "right" : {
3700 "type" : "hexstr",
3701 "value" : "0xffff"
3702 }
3703 }
3704 }
3705 }
3706 ],
3707 "source_info" : {
3708 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003709 "line" : 196,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003710 "column" : 8,
3711 "source_fragment" : "gtpu_ipv4.total_len = ipv4.total_len ..."
3712 }
3713 },
3714 {
3715 "op" : "assign",
3716 "parameters" : [
3717 {
3718 "type" : "field",
3719 "value" : ["gtpu_ipv4", "identification"]
3720 },
3721 {
3722 "type" : "hexstr",
3723 "value" : "0x1513"
3724 }
3725 ],
3726 "source_info" : {
3727 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003728 "line" : 198,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003729 "column" : 8,
3730 "source_fragment" : "gtpu_ipv4.identification = 0x1513"
3731 }
3732 },
3733 {
3734 "op" : "assign",
3735 "parameters" : [
3736 {
3737 "type" : "field",
3738 "value" : ["gtpu_ipv4", "flags"]
3739 },
3740 {
3741 "type" : "hexstr",
3742 "value" : "0x00"
3743 }
3744 ],
3745 "source_info" : {
3746 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003747 "line" : 199,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003748 "column" : 8,
3749 "source_fragment" : "gtpu_ipv4.flags = 0"
3750 }
3751 },
3752 {
3753 "op" : "assign",
3754 "parameters" : [
3755 {
3756 "type" : "field",
3757 "value" : ["gtpu_ipv4", "frag_offset"]
3758 },
3759 {
3760 "type" : "hexstr",
3761 "value" : "0x0000"
3762 }
3763 ],
3764 "source_info" : {
3765 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003766 "line" : 200,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003767 "column" : 8,
3768 "source_fragment" : "gtpu_ipv4.frag_offset = 0"
3769 }
3770 },
3771 {
3772 "op" : "assign",
3773 "parameters" : [
3774 {
3775 "type" : "field",
3776 "value" : ["gtpu_ipv4", "ttl"]
3777 },
3778 {
3779 "type" : "hexstr",
3780 "value" : "0x40"
3781 }
3782 ],
3783 "source_info" : {
3784 "filename" : "include/control/../define.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07003785 "line" : 137,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003786 "column" : 32,
3787 "source_fragment" : "64; ..."
3788 }
3789 },
3790 {
3791 "op" : "assign",
3792 "parameters" : [
3793 {
3794 "type" : "field",
3795 "value" : ["gtpu_ipv4", "protocol"]
3796 },
3797 {
3798 "type" : "hexstr",
3799 "value" : "0x11"
3800 }
3801 ],
3802 "source_info" : {
3803 "filename" : "include/control/../define.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07003804 "line" : 121,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003805 "column" : 25,
3806 "source_fragment" : "17; ..."
3807 }
3808 },
3809 {
3810 "op" : "assign",
3811 "parameters" : [
3812 {
3813 "type" : "field",
3814 "value" : ["gtpu_ipv4", "dst_addr"]
3815 },
3816 {
3817 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07003818 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr19"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003819 }
3820 ],
3821 "source_info" : {
3822 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003823 "line" : 203,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003824 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003825 "source_fragment" : "gtpu_ipv4.dst_addr = fabric_meta.spgw.s1u_enb_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003826 }
3827 },
3828 {
3829 "op" : "assign",
3830 "parameters" : [
3831 {
3832 "type" : "field",
3833 "value" : ["gtpu_ipv4", "src_addr"]
3834 },
3835 {
3836 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07003837 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr20"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003838 }
3839 ],
3840 "source_info" : {
3841 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003842 "line" : 204,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003843 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003844 "source_fragment" : "gtpu_ipv4.src_addr = fabric_meta.spgw.s1u_sgw_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003845 }
3846 },
3847 {
3848 "op" : "assign",
3849 "parameters" : [
3850 {
3851 "type" : "field",
3852 "value" : ["gtpu_ipv4", "hdr_checksum"]
3853 },
3854 {
3855 "type" : "hexstr",
3856 "value" : "0x0000"
3857 }
3858 ],
3859 "source_info" : {
3860 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003861 "line" : 205,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003862 "column" : 8,
3863 "source_fragment" : "gtpu_ipv4.hdr_checksum = 0"
3864 }
3865 },
3866 {
3867 "op" : "add_header",
3868 "parameters" : [
3869 {
3870 "type" : "header",
3871 "value" : "gtpu_udp"
3872 }
3873 ],
3874 "source_info" : {
3875 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003876 "line" : 207,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003877 "column" : 8,
3878 "source_fragment" : "gtpu_udp.setValid()"
3879 }
3880 },
3881 {
3882 "op" : "assign",
3883 "parameters" : [
3884 {
3885 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003886 "value" : ["gtpu_udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003887 },
3888 {
3889 "type" : "hexstr",
3890 "value" : "0x0868"
3891 }
3892 ],
3893 "source_info" : {
3894 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003895 "line" : 208,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003896 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003897 "source_fragment" : "gtpu_udp.sport = 2152"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003898 }
3899 },
3900 {
3901 "op" : "assign",
3902 "parameters" : [
3903 {
3904 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003905 "value" : ["gtpu_udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003906 },
3907 {
3908 "type" : "hexstr",
3909 "value" : "0x0868"
3910 }
3911 ],
3912 "source_info" : {
3913 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003914 "line" : 209,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003915 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003916 "source_fragment" : "gtpu_udp.dport = 2152"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003917 }
3918 },
3919 {
3920 "op" : "assign",
3921 "parameters" : [
3922 {
3923 "type" : "field",
3924 "value" : ["gtpu_udp", "len"]
3925 },
3926 {
3927 "type" : "expression",
3928 "value" : {
3929 "type" : "expression",
3930 "value" : {
3931 "op" : "&",
3932 "left" : {
3933 "type" : "expression",
3934 "value" : {
3935 "op" : "+",
3936 "left" : {
3937 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07003938 "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003939 },
3940 "right" : {
3941 "type" : "hexstr",
3942 "value" : "0x0010"
3943 }
3944 }
3945 },
3946 "right" : {
3947 "type" : "hexstr",
3948 "value" : "0xffff"
3949 }
3950 }
3951 }
3952 }
3953 ],
3954 "source_info" : {
3955 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003956 "line" : 210,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003957 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003958 "source_fragment" : "gtpu_udp.len = fabric_meta.spgw.ipv4_len ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003959 }
3960 },
3961 {
3962 "op" : "assign",
3963 "parameters" : [
3964 {
3965 "type" : "field",
3966 "value" : ["gtpu_udp", "checksum"]
3967 },
3968 {
3969 "type" : "hexstr",
3970 "value" : "0x0000"
3971 }
3972 ],
3973 "source_info" : {
3974 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003975 "line" : 212,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003976 "column" : 8,
3977 "source_fragment" : "gtpu_udp.checksum = 0"
3978 }
3979 },
3980 {
3981 "op" : "add_header",
3982 "parameters" : [
3983 {
3984 "type" : "header",
3985 "value" : "gtpu"
3986 }
3987 ],
3988 "source_info" : {
3989 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003990 "line" : 214,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003991 "column" : 8,
3992 "source_fragment" : "gtpu.setValid()"
3993 }
3994 },
3995 {
3996 "op" : "assign",
3997 "parameters" : [
3998 {
3999 "type" : "field",
4000 "value" : ["gtpu", "version"]
4001 },
4002 {
4003 "type" : "hexstr",
4004 "value" : "0x01"
4005 }
4006 ],
4007 "source_info" : {
4008 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004009 "line" : 215,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004010 "column" : 8,
4011 "source_fragment" : "gtpu.version = 0x01"
4012 }
4013 },
4014 {
4015 "op" : "assign",
4016 "parameters" : [
4017 {
4018 "type" : "field",
4019 "value" : ["gtpu", "pt"]
4020 },
4021 {
4022 "type" : "hexstr",
4023 "value" : "0x01"
4024 }
4025 ],
4026 "source_info" : {
4027 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004028 "line" : 216,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004029 "column" : 8,
4030 "source_fragment" : "gtpu.pt = 0x01"
4031 }
4032 },
4033 {
4034 "op" : "assign",
4035 "parameters" : [
4036 {
4037 "type" : "field",
4038 "value" : ["gtpu", "spare"]
4039 },
4040 {
4041 "type" : "hexstr",
4042 "value" : "0x00"
4043 }
4044 ],
4045 "source_info" : {
4046 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004047 "line" : 217,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004048 "column" : 8,
4049 "source_fragment" : "gtpu.spare = 0"
4050 }
4051 },
4052 {
4053 "op" : "assign",
4054 "parameters" : [
4055 {
4056 "type" : "field",
4057 "value" : ["gtpu", "ex_flag"]
4058 },
4059 {
4060 "type" : "hexstr",
4061 "value" : "0x00"
4062 }
4063 ],
4064 "source_info" : {
4065 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004066 "line" : 218,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004067 "column" : 8,
4068 "source_fragment" : "gtpu.ex_flag = 0"
4069 }
4070 },
4071 {
4072 "op" : "assign",
4073 "parameters" : [
4074 {
4075 "type" : "field",
4076 "value" : ["gtpu", "seq_flag"]
4077 },
4078 {
4079 "type" : "hexstr",
4080 "value" : "0x00"
4081 }
4082 ],
4083 "source_info" : {
4084 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004085 "line" : 219,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004086 "column" : 8,
4087 "source_fragment" : "gtpu.seq_flag = 0"
4088 }
4089 },
4090 {
4091 "op" : "assign",
4092 "parameters" : [
4093 {
4094 "type" : "field",
4095 "value" : ["gtpu", "npdu_flag"]
4096 },
4097 {
4098 "type" : "hexstr",
4099 "value" : "0x00"
4100 }
4101 ],
4102 "source_info" : {
4103 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004104 "line" : 220,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004105 "column" : 8,
4106 "source_fragment" : "gtpu.npdu_flag = 0"
4107 }
4108 },
4109 {
4110 "op" : "assign",
4111 "parameters" : [
4112 {
4113 "type" : "field",
4114 "value" : ["gtpu", "msgtype"]
4115 },
4116 {
4117 "type" : "hexstr",
4118 "value" : "0xff"
4119 }
4120 ],
4121 "source_info" : {
4122 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004123 "line" : 221,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004124 "column" : 8,
4125 "source_fragment" : "gtpu.msgtype = 0xff"
4126 }
4127 },
4128 {
4129 "op" : "assign",
4130 "parameters" : [
4131 {
4132 "type" : "field",
4133 "value" : ["gtpu", "msglen"]
4134 },
4135 {
4136 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004137 "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len17"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004138 }
4139 ],
4140 "source_info" : {
4141 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004142 "line" : 222,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004143 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004144 "source_fragment" : "gtpu.msglen = fabric_meta.spgw.ipv4_len; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004145 }
4146 },
4147 {
4148 "op" : "assign",
4149 "parameters" : [
4150 {
4151 "type" : "field",
4152 "value" : ["gtpu", "teid"]
4153 },
4154 {
4155 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004156 "value" : ["scalars", "fabric_metadata_t._spgw_teid18"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004157 }
4158 ],
4159 "source_info" : {
4160 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004161 "line" : 223,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004162 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004163 "source_fragment" : "gtpu.teid = fabric_meta.spgw.teid; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004164 }
4165 }
4166 ]
4167 },
4168 {
4169 "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004170 "id" : 59,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004171 "runtime_data" : [
4172 {
4173 "name" : "max_hop",
4174 "bitwidth" : 8
4175 },
4176 {
4177 "name" : "ins_cnt",
4178 "bitwidth" : 5
4179 },
4180 {
4181 "name" : "ins_mask0003",
4182 "bitwidth" : 4
4183 },
4184 {
4185 "name" : "ins_mask0407",
4186 "bitwidth" : 4
4187 }
4188 ],
4189 "primitives" : [
4190 {
4191 "op" : "add_header",
4192 "parameters" : [
4193 {
4194 "type" : "header",
4195 "value" : "intl4_shim"
4196 }
4197 ],
4198 "source_info" : {
4199 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004200 "line" : 32,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004201 "column" : 8,
4202 "source_fragment" : "hdr.intl4_shim.setValid()"
4203 }
4204 },
4205 {
4206 "op" : "assign",
4207 "parameters" : [
4208 {
4209 "type" : "field",
4210 "value" : ["intl4_shim", "int_type"]
4211 },
4212 {
4213 "type" : "hexstr",
4214 "value" : "0x01"
4215 }
4216 ],
4217 "source_info" : {
4218 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004219 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004220 "column" : 8,
4221 "source_fragment" : "hdr.intl4_shim.int_type = 1"
4222 }
4223 },
4224 {
4225 "op" : "assign",
4226 "parameters" : [
4227 {
4228 "type" : "field",
4229 "value" : ["intl4_shim", "len_words"]
4230 },
4231 {
4232 "type" : "hexstr",
4233 "value" : "0x04"
4234 }
4235 ],
4236 "source_info" : {
4237 "filename" : "include/control/../define.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07004238 "line" : 152,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004239 "column" : 36,
4240 "source_fragment" : "4; ..."
4241 }
4242 },
4243 {
4244 "op" : "add_header",
4245 "parameters" : [
4246 {
4247 "type" : "header",
4248 "value" : "int_header"
4249 }
4250 ],
4251 "source_info" : {
4252 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004253 "line" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004254 "column" : 8,
4255 "source_fragment" : "hdr.int_header.setValid()"
4256 }
4257 },
4258 {
4259 "op" : "assign",
4260 "parameters" : [
4261 {
4262 "type" : "field",
4263 "value" : ["int_header", "ver"]
4264 },
4265 {
4266 "type" : "hexstr",
4267 "value" : "0x00"
4268 }
4269 ],
4270 "source_info" : {
4271 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004272 "line" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004273 "column" : 8,
4274 "source_fragment" : "hdr.int_header.ver = 0"
4275 }
4276 },
4277 {
4278 "op" : "assign",
4279 "parameters" : [
4280 {
4281 "type" : "field",
4282 "value" : ["int_header", "rep"]
4283 },
4284 {
4285 "type" : "hexstr",
4286 "value" : "0x00"
4287 }
4288 ],
4289 "source_info" : {
4290 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004291 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004292 "column" : 8,
4293 "source_fragment" : "hdr.int_header.rep = 0"
4294 }
4295 },
4296 {
4297 "op" : "assign",
4298 "parameters" : [
4299 {
4300 "type" : "field",
4301 "value" : ["int_header", "c"]
4302 },
4303 {
4304 "type" : "hexstr",
4305 "value" : "0x00"
4306 }
4307 ],
4308 "source_info" : {
4309 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004310 "line" : 40,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004311 "column" : 8,
4312 "source_fragment" : "hdr.int_header.c = 0"
4313 }
4314 },
4315 {
4316 "op" : "assign",
4317 "parameters" : [
4318 {
4319 "type" : "field",
4320 "value" : ["int_header", "e"]
4321 },
4322 {
4323 "type" : "hexstr",
4324 "value" : "0x00"
4325 }
4326 ],
4327 "source_info" : {
4328 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004329 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004330 "column" : 8,
4331 "source_fragment" : "hdr.int_header.e = 0"
4332 }
4333 },
4334 {
4335 "op" : "assign",
4336 "parameters" : [
4337 {
4338 "type" : "field",
4339 "value" : ["int_header", "rsvd1"]
4340 },
4341 {
4342 "type" : "hexstr",
4343 "value" : "0x00"
4344 }
4345 ],
4346 "source_info" : {
4347 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004348 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004349 "column" : 8,
4350 "source_fragment" : "hdr.int_header.rsvd1 = 0"
4351 }
4352 },
4353 {
4354 "op" : "assign",
4355 "parameters" : [
4356 {
4357 "type" : "field",
4358 "value" : ["int_header", "ins_cnt"]
4359 },
4360 {
4361 "type" : "runtime_data",
4362 "value" : 1
4363 }
4364 ],
4365 "source_info" : {
4366 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004367 "line" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004368 "column" : 8,
4369 "source_fragment" : "hdr.int_header.ins_cnt = ins_cnt; ..."
4370 }
4371 },
4372 {
4373 "op" : "assign",
4374 "parameters" : [
4375 {
4376 "type" : "field",
4377 "value" : ["int_header", "max_hop_cnt"]
4378 },
4379 {
4380 "type" : "runtime_data",
4381 "value" : 0
4382 }
4383 ],
4384 "source_info" : {
4385 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004386 "line" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004387 "column" : 8,
4388 "source_fragment" : "hdr.int_header.max_hop_cnt = max_hop; ..."
4389 }
4390 },
4391 {
4392 "op" : "assign",
4393 "parameters" : [
4394 {
4395 "type" : "field",
4396 "value" : ["int_header", "total_hop_cnt"]
4397 },
4398 {
4399 "type" : "hexstr",
4400 "value" : "0x00"
4401 }
4402 ],
4403 "source_info" : {
4404 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004405 "line" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004406 "column" : 8,
4407 "source_fragment" : "hdr.int_header.total_hop_cnt = 0"
4408 }
4409 },
4410 {
4411 "op" : "assign",
4412 "parameters" : [
4413 {
4414 "type" : "field",
4415 "value" : ["int_header", "instruction_mask_0003"]
4416 },
4417 {
4418 "type" : "runtime_data",
4419 "value" : 2
4420 }
4421 ],
4422 "source_info" : {
4423 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004424 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004425 "column" : 8,
4426 "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
4427 }
4428 },
4429 {
4430 "op" : "assign",
4431 "parameters" : [
4432 {
4433 "type" : "field",
4434 "value" : ["int_header", "instruction_mask_0407"]
4435 },
4436 {
4437 "type" : "runtime_data",
4438 "value" : 3
4439 }
4440 ],
4441 "source_info" : {
4442 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004443 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004444 "column" : 8,
4445 "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
4446 }
4447 },
4448 {
4449 "op" : "assign",
4450 "parameters" : [
4451 {
4452 "type" : "field",
4453 "value" : ["int_header", "instruction_mask_0811"]
4454 },
4455 {
4456 "type" : "hexstr",
4457 "value" : "0x00"
4458 }
4459 ],
4460 "source_info" : {
4461 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004462 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004463 "column" : 8,
4464 "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
4465 }
4466 },
4467 {
4468 "op" : "assign",
4469 "parameters" : [
4470 {
4471 "type" : "field",
4472 "value" : ["int_header", "instruction_mask_1215"]
4473 },
4474 {
4475 "type" : "hexstr",
4476 "value" : "0x00"
4477 }
4478 ],
4479 "source_info" : {
4480 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004481 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004482 "column" : 8,
4483 "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
4484 }
4485 },
4486 {
4487 "op" : "add_header",
4488 "parameters" : [
4489 {
4490 "type" : "header",
4491 "value" : "intl4_tail"
4492 }
4493 ],
4494 "source_info" : {
4495 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004496 "line" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004497 "column" : 8,
4498 "source_fragment" : "hdr.intl4_tail.setValid()"
4499 }
4500 },
4501 {
4502 "op" : "assign",
4503 "parameters" : [
4504 {
4505 "type" : "field",
4506 "value" : ["intl4_tail", "next_proto"]
4507 },
4508 {
4509 "type" : "field",
4510 "value" : ["ipv4", "protocol"]
4511 }
4512 ],
4513 "source_info" : {
4514 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004515 "line" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004516 "column" : 8,
4517 "source_fragment" : "hdr.intl4_tail.next_proto = hdr.ipv4.protocol"
4518 }
4519 },
4520 {
4521 "op" : "assign",
4522 "parameters" : [
4523 {
4524 "type" : "field",
4525 "value" : ["intl4_tail", "dest_port"]
4526 },
4527 {
4528 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004529 "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004530 }
4531 ],
4532 "source_info" : {
4533 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004534 "line" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004535 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004536 "source_fragment" : "hdr.intl4_tail.dest_port = fabric_metadata.l4_dport; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004537 }
4538 },
4539 {
4540 "op" : "assign",
4541 "parameters" : [
4542 {
4543 "type" : "field",
4544 "value" : ["intl4_tail", "dscp"]
4545 },
4546 {
4547 "type" : "field",
4548 "value" : ["ipv4", "dscp"]
4549 }
4550 ],
4551 "source_info" : {
4552 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004553 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004554 "column" : 8,
4555 "source_fragment" : "hdr.intl4_tail.dscp = hdr.ipv4.dscp"
4556 }
4557 },
4558 {
4559 "op" : "assign",
4560 "parameters" : [
4561 {
4562 "type" : "field",
4563 "value" : ["ipv4", "total_len"]
4564 },
4565 {
4566 "type" : "expression",
4567 "value" : {
4568 "type" : "expression",
4569 "value" : {
4570 "op" : "&",
4571 "left" : {
4572 "type" : "expression",
4573 "value" : {
4574 "op" : "+",
4575 "left" : {
4576 "type" : "field",
4577 "value" : ["ipv4", "total_len"]
4578 },
4579 "right" : {
4580 "type" : "hexstr",
4581 "value" : "0x0010"
4582 }
4583 }
4584 },
4585 "right" : {
4586 "type" : "hexstr",
4587 "value" : "0xffff"
4588 }
4589 }
4590 }
4591 }
4592 ],
4593 "source_info" : {
4594 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004595 "line" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004596 "column" : 8,
4597 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + INT_HEADER_LEN_BYTES"
4598 }
4599 },
4600 {
4601 "op" : "assign",
4602 "parameters" : [
4603 {
4604 "type" : "field",
4605 "value" : ["udp", "len"]
4606 },
4607 {
4608 "type" : "expression",
4609 "value" : {
4610 "type" : "expression",
4611 "value" : {
4612 "op" : "&",
4613 "left" : {
4614 "type" : "expression",
4615 "value" : {
4616 "op" : "+",
4617 "left" : {
4618 "type" : "field",
4619 "value" : ["udp", "len"]
4620 },
4621 "right" : {
4622 "type" : "hexstr",
4623 "value" : "0x0010"
4624 }
4625 }
4626 },
4627 "right" : {
4628 "type" : "hexstr",
4629 "value" : "0xffff"
4630 }
4631 }
4632 }
4633 }
4634 ],
4635 "source_info" : {
4636 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004637 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004638 "column" : 8,
4639 "source_fragment" : "hdr.udp.len = hdr.udp.len + INT_HEADER_LEN_BYTES"
4640 }
4641 },
4642 {
4643 "op" : "assign",
4644 "parameters" : [
4645 {
4646 "type" : "field",
4647 "value" : ["ipv4", "dscp"]
4648 },
4649 {
4650 "type" : "hexstr",
4651 "value" : "0x01"
4652 }
4653 ],
4654 "source_info" : {
4655 "filename" : "include/control/../define.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07004656 "line" : 148,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004657 "column" : 24,
4658 "source_fragment" : "0x1; ..."
4659 }
4660 }
4661 ]
4662 },
4663 {
4664 "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004665 "id" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004666 "runtime_data" : [
4667 {
4668 "name" : "switch_id",
4669 "bitwidth" : 32
4670 }
4671 ],
4672 "primitives" : [
4673 {
4674 "op" : "assign",
4675 "parameters" : [
4676 {
4677 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004678 "value" : ["scalars", "fabric_metadata_t._int_meta_transit22"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004679 },
4680 {
4681 "type" : "expression",
4682 "value" : {
4683 "type" : "expression",
4684 "value" : {
4685 "op" : "b2d",
4686 "left" : null,
4687 "right" : {
4688 "type" : "bool",
4689 "value" : true
4690 }
4691 }
4692 }
4693 }
4694 ],
4695 "source_info" : {
4696 "filename" : "include/int/int_transit.p4",
4697 "line" : 26,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004698 "column" : 31,
4699 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004700 }
4701 },
4702 {
4703 "op" : "assign",
4704 "parameters" : [
4705 {
4706 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004707 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004708 },
4709 {
4710 "type" : "runtime_data",
4711 "value" : 0
4712 }
4713 ],
4714 "source_info" : {
4715 "filename" : "include/int/int_transit.p4",
4716 "line" : 31,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004717 "column" : 33,
4718 "source_fragment" : "= switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004719 }
4720 }
4721 ]
4722 },
4723 {
4724 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004725 "id" : 61,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004726 "runtime_data" : [],
4727 "primitives" : []
4728 },
4729 {
4730 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004731 "id" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004732 "runtime_data" : [],
4733 "primitives" : [
4734 {
4735 "op" : "add_header",
4736 "parameters" : [
4737 {
4738 "type" : "header",
4739 "value" : "int_q_occupancy"
4740 }
4741 ],
4742 "source_info" : {
4743 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004744 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004745 "column" : 8,
4746 "source_fragment" : "hdr.int_q_occupancy.setValid()"
4747 }
4748 },
4749 {
4750 "op" : "assign",
4751 "parameters" : [
4752 {
4753 "type" : "field",
4754 "value" : ["int_q_occupancy", "q_id"]
4755 },
4756 {
4757 "type" : "hexstr",
4758 "value" : "0x00"
4759 }
4760 ],
4761 "source_info" : {
4762 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004763 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004764 "column" : 8,
4765 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
4766 }
4767 },
4768 {
4769 "op" : "assign",
4770 "parameters" : [
4771 {
4772 "type" : "field",
4773 "value" : ["int_q_occupancy", "q_occupancy"]
4774 },
4775 {
4776 "type" : "expression",
4777 "value" : {
4778 "type" : "expression",
4779 "value" : {
4780 "op" : "&",
4781 "left" : {
4782 "type" : "field",
4783 "value" : ["standard_metadata", "deq_qdepth"]
4784 },
4785 "right" : {
4786 "type" : "hexstr",
4787 "value" : "0xffffff"
4788 }
4789 }
4790 }
4791 }
4792 ],
4793 "source_info" : {
4794 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004795 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004796 "column" : 8,
4797 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
4798 }
4799 },
4800 {
4801 "op" : "assign",
4802 "parameters" : [
4803 {
4804 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004805 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004806 },
4807 {
4808 "type" : "expression",
4809 "value" : {
4810 "type" : "expression",
4811 "value" : {
4812 "op" : "&",
4813 "left" : {
4814 "type" : "expression",
4815 "value" : {
4816 "op" : "+",
4817 "left" : {
4818 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004819 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004820 },
4821 "right" : {
4822 "type" : "hexstr",
4823 "value" : "0x01"
4824 }
4825 }
4826 },
4827 "right" : {
4828 "type" : "hexstr",
4829 "value" : "0xff"
4830 }
4831 }
4832 }
4833 }
4834 ],
4835 "source_info" : {
4836 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004837 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004838 "column" : 33,
4839 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004840 }
4841 },
4842 {
4843 "op" : "assign",
4844 "parameters" : [
4845 {
4846 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004847 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004848 },
4849 {
4850 "type" : "expression",
4851 "value" : {
4852 "type" : "expression",
4853 "value" : {
4854 "op" : "&",
4855 "left" : {
4856 "type" : "expression",
4857 "value" : {
4858 "op" : "+",
4859 "left" : {
4860 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004861 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004862 },
4863 "right" : {
4864 "type" : "hexstr",
4865 "value" : "0x0004"
4866 }
4867 }
4868 },
4869 "right" : {
4870 "type" : "hexstr",
4871 "value" : "0xffff"
4872 }
4873 }
4874 }
4875 }
4876 ],
4877 "source_info" : {
4878 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004879 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004880 "column" : 33,
4881 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004882 }
4883 }
4884 ]
4885 },
4886 {
4887 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004888 "id" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004889 "runtime_data" : [],
4890 "primitives" : [
4891 {
4892 "op" : "add_header",
4893 "parameters" : [
4894 {
4895 "type" : "header",
4896 "value" : "int_hop_latency"
4897 }
4898 ],
4899 "source_info" : {
4900 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004901 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004902 "column" : 8,
4903 "source_fragment" : "hdr.int_hop_latency.setValid()"
4904 }
4905 },
4906 {
4907 "op" : "assign",
4908 "parameters" : [
4909 {
4910 "type" : "field",
4911 "value" : ["int_hop_latency", "hop_latency"]
4912 },
4913 {
4914 "type" : "field",
4915 "value" : ["standard_metadata", "deq_timedelta"]
4916 }
4917 ],
4918 "source_info" : {
4919 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004920 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004921 "column" : 8,
4922 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
4923 }
4924 },
4925 {
4926 "op" : "assign",
4927 "parameters" : [
4928 {
4929 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004930 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004931 },
4932 {
4933 "type" : "expression",
4934 "value" : {
4935 "type" : "expression",
4936 "value" : {
4937 "op" : "&",
4938 "left" : {
4939 "type" : "expression",
4940 "value" : {
4941 "op" : "+",
4942 "left" : {
4943 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004944 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004945 },
4946 "right" : {
4947 "type" : "hexstr",
4948 "value" : "0x01"
4949 }
4950 }
4951 },
4952 "right" : {
4953 "type" : "hexstr",
4954 "value" : "0xff"
4955 }
4956 }
4957 }
4958 }
4959 ],
4960 "source_info" : {
4961 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004962 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004963 "column" : 33,
4964 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004965 }
4966 },
4967 {
4968 "op" : "assign",
4969 "parameters" : [
4970 {
4971 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004972 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004973 },
4974 {
4975 "type" : "expression",
4976 "value" : {
4977 "type" : "expression",
4978 "value" : {
4979 "op" : "&",
4980 "left" : {
4981 "type" : "expression",
4982 "value" : {
4983 "op" : "+",
4984 "left" : {
4985 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07004986 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004987 },
4988 "right" : {
4989 "type" : "hexstr",
4990 "value" : "0x0004"
4991 }
4992 }
4993 },
4994 "right" : {
4995 "type" : "hexstr",
4996 "value" : "0xffff"
4997 }
4998 }
4999 }
5000 }
5001 ],
5002 "source_info" : {
5003 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005004 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005005 "column" : 33,
5006 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005007 }
5008 }
5009 ]
5010 },
5011 {
5012 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005013 "id" : 64,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005014 "runtime_data" : [],
5015 "primitives" : [
5016 {
5017 "op" : "add_header",
5018 "parameters" : [
5019 {
5020 "type" : "header",
5021 "value" : "int_q_occupancy"
5022 }
5023 ],
5024 "source_info" : {
5025 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005026 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005027 "column" : 8,
5028 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5029 }
5030 },
5031 {
5032 "op" : "assign",
5033 "parameters" : [
5034 {
5035 "type" : "field",
5036 "value" : ["int_q_occupancy", "q_id"]
5037 },
5038 {
5039 "type" : "hexstr",
5040 "value" : "0x00"
5041 }
5042 ],
5043 "source_info" : {
5044 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005045 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005046 "column" : 8,
5047 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5048 }
5049 },
5050 {
5051 "op" : "assign",
5052 "parameters" : [
5053 {
5054 "type" : "field",
5055 "value" : ["int_q_occupancy", "q_occupancy"]
5056 },
5057 {
5058 "type" : "expression",
5059 "value" : {
5060 "type" : "expression",
5061 "value" : {
5062 "op" : "&",
5063 "left" : {
5064 "type" : "field",
5065 "value" : ["standard_metadata", "deq_qdepth"]
5066 },
5067 "right" : {
5068 "type" : "hexstr",
5069 "value" : "0xffffff"
5070 }
5071 }
5072 }
5073 }
5074 ],
5075 "source_info" : {
5076 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005077 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005078 "column" : 8,
5079 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5080 }
5081 },
5082 {
5083 "op" : "add_header",
5084 "parameters" : [
5085 {
5086 "type" : "header",
5087 "value" : "int_hop_latency"
5088 }
5089 ],
5090 "source_info" : {
5091 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005092 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005093 "column" : 8,
5094 "source_fragment" : "hdr.int_hop_latency.setValid()"
5095 }
5096 },
5097 {
5098 "op" : "assign",
5099 "parameters" : [
5100 {
5101 "type" : "field",
5102 "value" : ["int_hop_latency", "hop_latency"]
5103 },
5104 {
5105 "type" : "field",
5106 "value" : ["standard_metadata", "deq_timedelta"]
5107 }
5108 ],
5109 "source_info" : {
5110 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005111 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005112 "column" : 8,
5113 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5114 }
5115 },
5116 {
5117 "op" : "assign",
5118 "parameters" : [
5119 {
5120 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005121 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005122 },
5123 {
5124 "type" : "expression",
5125 "value" : {
5126 "type" : "expression",
5127 "value" : {
5128 "op" : "&",
5129 "left" : {
5130 "type" : "expression",
5131 "value" : {
5132 "op" : "+",
5133 "left" : {
5134 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005135 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005136 },
5137 "right" : {
5138 "type" : "hexstr",
5139 "value" : "0x02"
5140 }
5141 }
5142 },
5143 "right" : {
5144 "type" : "hexstr",
5145 "value" : "0xff"
5146 }
5147 }
5148 }
5149 }
5150 ],
5151 "source_info" : {
5152 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005153 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005154 "column" : 33,
5155 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005156 }
5157 },
5158 {
5159 "op" : "assign",
5160 "parameters" : [
5161 {
5162 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005163 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005164 },
5165 {
5166 "type" : "expression",
5167 "value" : {
5168 "type" : "expression",
5169 "value" : {
5170 "op" : "&",
5171 "left" : {
5172 "type" : "expression",
5173 "value" : {
5174 "op" : "+",
5175 "left" : {
5176 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005177 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005178 },
5179 "right" : {
5180 "type" : "hexstr",
5181 "value" : "0x0008"
5182 }
5183 }
5184 },
5185 "right" : {
5186 "type" : "hexstr",
5187 "value" : "0xffff"
5188 }
5189 }
5190 }
5191 }
5192 ],
5193 "source_info" : {
5194 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005195 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005196 "column" : 33,
5197 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005198 }
5199 }
5200 ]
5201 },
5202 {
5203 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005204 "id" : 65,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005205 "runtime_data" : [],
5206 "primitives" : [
5207 {
5208 "op" : "add_header",
5209 "parameters" : [
5210 {
5211 "type" : "header",
5212 "value" : "int_port_ids"
5213 }
5214 ],
5215 "source_info" : {
5216 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005217 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005218 "column" : 8,
5219 "source_fragment" : "hdr.int_port_ids.setValid()"
5220 }
5221 },
5222 {
5223 "op" : "assign",
5224 "parameters" : [
5225 {
5226 "type" : "field",
5227 "value" : ["int_port_ids", "ingress_port_id"]
5228 },
5229 {
5230 "type" : "expression",
5231 "value" : {
5232 "type" : "expression",
5233 "value" : {
5234 "op" : "&",
5235 "left" : {
5236 "type" : "field",
5237 "value" : ["standard_metadata", "ingress_port"]
5238 },
5239 "right" : {
5240 "type" : "hexstr",
5241 "value" : "0xffff"
5242 }
5243 }
5244 }
5245 }
5246 ],
5247 "source_info" : {
5248 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005249 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005250 "column" : 8,
5251 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5252 }
5253 },
5254 {
5255 "op" : "assign",
5256 "parameters" : [
5257 {
5258 "type" : "field",
5259 "value" : ["int_port_ids", "egress_port_id"]
5260 },
5261 {
5262 "type" : "expression",
5263 "value" : {
5264 "type" : "expression",
5265 "value" : {
5266 "op" : "&",
5267 "left" : {
5268 "type" : "field",
5269 "value" : ["standard_metadata", "egress_port"]
5270 },
5271 "right" : {
5272 "type" : "hexstr",
5273 "value" : "0xffff"
5274 }
5275 }
5276 }
5277 }
5278 ],
5279 "source_info" : {
5280 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005281 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005282 "column" : 8,
5283 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5284 }
5285 },
5286 {
5287 "op" : "assign",
5288 "parameters" : [
5289 {
5290 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005291 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005292 },
5293 {
5294 "type" : "expression",
5295 "value" : {
5296 "type" : "expression",
5297 "value" : {
5298 "op" : "&",
5299 "left" : {
5300 "type" : "expression",
5301 "value" : {
5302 "op" : "+",
5303 "left" : {
5304 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005305 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005306 },
5307 "right" : {
5308 "type" : "hexstr",
5309 "value" : "0x01"
5310 }
5311 }
5312 },
5313 "right" : {
5314 "type" : "hexstr",
5315 "value" : "0xff"
5316 }
5317 }
5318 }
5319 }
5320 ],
5321 "source_info" : {
5322 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005323 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005324 "column" : 33,
5325 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005326 }
5327 },
5328 {
5329 "op" : "assign",
5330 "parameters" : [
5331 {
5332 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005333 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005334 },
5335 {
5336 "type" : "expression",
5337 "value" : {
5338 "type" : "expression",
5339 "value" : {
5340 "op" : "&",
5341 "left" : {
5342 "type" : "expression",
5343 "value" : {
5344 "op" : "+",
5345 "left" : {
5346 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005347 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005348 },
5349 "right" : {
5350 "type" : "hexstr",
5351 "value" : "0x0004"
5352 }
5353 }
5354 },
5355 "right" : {
5356 "type" : "hexstr",
5357 "value" : "0xffff"
5358 }
5359 }
5360 }
5361 }
5362 ],
5363 "source_info" : {
5364 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005365 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005366 "column" : 33,
5367 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005368 }
5369 }
5370 ]
5371 },
5372 {
5373 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005374 "id" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005375 "runtime_data" : [],
5376 "primitives" : [
5377 {
5378 "op" : "add_header",
5379 "parameters" : [
5380 {
5381 "type" : "header",
5382 "value" : "int_q_occupancy"
5383 }
5384 ],
5385 "source_info" : {
5386 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005387 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005388 "column" : 8,
5389 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5390 }
5391 },
5392 {
5393 "op" : "assign",
5394 "parameters" : [
5395 {
5396 "type" : "field",
5397 "value" : ["int_q_occupancy", "q_id"]
5398 },
5399 {
5400 "type" : "hexstr",
5401 "value" : "0x00"
5402 }
5403 ],
5404 "source_info" : {
5405 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005406 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005407 "column" : 8,
5408 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5409 }
5410 },
5411 {
5412 "op" : "assign",
5413 "parameters" : [
5414 {
5415 "type" : "field",
5416 "value" : ["int_q_occupancy", "q_occupancy"]
5417 },
5418 {
5419 "type" : "expression",
5420 "value" : {
5421 "type" : "expression",
5422 "value" : {
5423 "op" : "&",
5424 "left" : {
5425 "type" : "field",
5426 "value" : ["standard_metadata", "deq_qdepth"]
5427 },
5428 "right" : {
5429 "type" : "hexstr",
5430 "value" : "0xffffff"
5431 }
5432 }
5433 }
5434 }
5435 ],
5436 "source_info" : {
5437 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005438 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005439 "column" : 8,
5440 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5441 }
5442 },
5443 {
5444 "op" : "add_header",
5445 "parameters" : [
5446 {
5447 "type" : "header",
5448 "value" : "int_port_ids"
5449 }
5450 ],
5451 "source_info" : {
5452 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005453 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005454 "column" : 8,
5455 "source_fragment" : "hdr.int_port_ids.setValid()"
5456 }
5457 },
5458 {
5459 "op" : "assign",
5460 "parameters" : [
5461 {
5462 "type" : "field",
5463 "value" : ["int_port_ids", "ingress_port_id"]
5464 },
5465 {
5466 "type" : "expression",
5467 "value" : {
5468 "type" : "expression",
5469 "value" : {
5470 "op" : "&",
5471 "left" : {
5472 "type" : "field",
5473 "value" : ["standard_metadata", "ingress_port"]
5474 },
5475 "right" : {
5476 "type" : "hexstr",
5477 "value" : "0xffff"
5478 }
5479 }
5480 }
5481 }
5482 ],
5483 "source_info" : {
5484 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005485 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005486 "column" : 8,
5487 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5488 }
5489 },
5490 {
5491 "op" : "assign",
5492 "parameters" : [
5493 {
5494 "type" : "field",
5495 "value" : ["int_port_ids", "egress_port_id"]
5496 },
5497 {
5498 "type" : "expression",
5499 "value" : {
5500 "type" : "expression",
5501 "value" : {
5502 "op" : "&",
5503 "left" : {
5504 "type" : "field",
5505 "value" : ["standard_metadata", "egress_port"]
5506 },
5507 "right" : {
5508 "type" : "hexstr",
5509 "value" : "0xffff"
5510 }
5511 }
5512 }
5513 }
5514 ],
5515 "source_info" : {
5516 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005517 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005518 "column" : 8,
5519 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5520 }
5521 },
5522 {
5523 "op" : "assign",
5524 "parameters" : [
5525 {
5526 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005527 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005528 },
5529 {
5530 "type" : "expression",
5531 "value" : {
5532 "type" : "expression",
5533 "value" : {
5534 "op" : "&",
5535 "left" : {
5536 "type" : "expression",
5537 "value" : {
5538 "op" : "+",
5539 "left" : {
5540 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005541 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005542 },
5543 "right" : {
5544 "type" : "hexstr",
5545 "value" : "0x02"
5546 }
5547 }
5548 },
5549 "right" : {
5550 "type" : "hexstr",
5551 "value" : "0xff"
5552 }
5553 }
5554 }
5555 }
5556 ],
5557 "source_info" : {
5558 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005559 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005560 "column" : 33,
5561 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005562 }
5563 },
5564 {
5565 "op" : "assign",
5566 "parameters" : [
5567 {
5568 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005569 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005570 },
5571 {
5572 "type" : "expression",
5573 "value" : {
5574 "type" : "expression",
5575 "value" : {
5576 "op" : "&",
5577 "left" : {
5578 "type" : "expression",
5579 "value" : {
5580 "op" : "+",
5581 "left" : {
5582 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005583 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005584 },
5585 "right" : {
5586 "type" : "hexstr",
5587 "value" : "0x0008"
5588 }
5589 }
5590 },
5591 "right" : {
5592 "type" : "hexstr",
5593 "value" : "0xffff"
5594 }
5595 }
5596 }
5597 }
5598 ],
5599 "source_info" : {
5600 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005601 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005602 "column" : 33,
5603 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005604 }
5605 }
5606 ]
5607 },
5608 {
5609 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005610 "id" : 67,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005611 "runtime_data" : [],
5612 "primitives" : [
5613 {
5614 "op" : "add_header",
5615 "parameters" : [
5616 {
5617 "type" : "header",
5618 "value" : "int_hop_latency"
5619 }
5620 ],
5621 "source_info" : {
5622 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005623 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005624 "column" : 8,
5625 "source_fragment" : "hdr.int_hop_latency.setValid()"
5626 }
5627 },
5628 {
5629 "op" : "assign",
5630 "parameters" : [
5631 {
5632 "type" : "field",
5633 "value" : ["int_hop_latency", "hop_latency"]
5634 },
5635 {
5636 "type" : "field",
5637 "value" : ["standard_metadata", "deq_timedelta"]
5638 }
5639 ],
5640 "source_info" : {
5641 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005642 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005643 "column" : 8,
5644 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5645 }
5646 },
5647 {
5648 "op" : "add_header",
5649 "parameters" : [
5650 {
5651 "type" : "header",
5652 "value" : "int_port_ids"
5653 }
5654 ],
5655 "source_info" : {
5656 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005657 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005658 "column" : 8,
5659 "source_fragment" : "hdr.int_port_ids.setValid()"
5660 }
5661 },
5662 {
5663 "op" : "assign",
5664 "parameters" : [
5665 {
5666 "type" : "field",
5667 "value" : ["int_port_ids", "ingress_port_id"]
5668 },
5669 {
5670 "type" : "expression",
5671 "value" : {
5672 "type" : "expression",
5673 "value" : {
5674 "op" : "&",
5675 "left" : {
5676 "type" : "field",
5677 "value" : ["standard_metadata", "ingress_port"]
5678 },
5679 "right" : {
5680 "type" : "hexstr",
5681 "value" : "0xffff"
5682 }
5683 }
5684 }
5685 }
5686 ],
5687 "source_info" : {
5688 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005689 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005690 "column" : 8,
5691 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5692 }
5693 },
5694 {
5695 "op" : "assign",
5696 "parameters" : [
5697 {
5698 "type" : "field",
5699 "value" : ["int_port_ids", "egress_port_id"]
5700 },
5701 {
5702 "type" : "expression",
5703 "value" : {
5704 "type" : "expression",
5705 "value" : {
5706 "op" : "&",
5707 "left" : {
5708 "type" : "field",
5709 "value" : ["standard_metadata", "egress_port"]
5710 },
5711 "right" : {
5712 "type" : "hexstr",
5713 "value" : "0xffff"
5714 }
5715 }
5716 }
5717 }
5718 ],
5719 "source_info" : {
5720 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005721 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005722 "column" : 8,
5723 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5724 }
5725 },
5726 {
5727 "op" : "assign",
5728 "parameters" : [
5729 {
5730 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005731 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005732 },
5733 {
5734 "type" : "expression",
5735 "value" : {
5736 "type" : "expression",
5737 "value" : {
5738 "op" : "&",
5739 "left" : {
5740 "type" : "expression",
5741 "value" : {
5742 "op" : "+",
5743 "left" : {
5744 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005745 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005746 },
5747 "right" : {
5748 "type" : "hexstr",
5749 "value" : "0x02"
5750 }
5751 }
5752 },
5753 "right" : {
5754 "type" : "hexstr",
5755 "value" : "0xff"
5756 }
5757 }
5758 }
5759 }
5760 ],
5761 "source_info" : {
5762 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005763 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005764 "column" : 33,
5765 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005766 }
5767 },
5768 {
5769 "op" : "assign",
5770 "parameters" : [
5771 {
5772 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005773 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005774 },
5775 {
5776 "type" : "expression",
5777 "value" : {
5778 "type" : "expression",
5779 "value" : {
5780 "op" : "&",
5781 "left" : {
5782 "type" : "expression",
5783 "value" : {
5784 "op" : "+",
5785 "left" : {
5786 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07005787 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005788 },
5789 "right" : {
5790 "type" : "hexstr",
5791 "value" : "0x0008"
5792 }
5793 }
5794 },
5795 "right" : {
5796 "type" : "hexstr",
5797 "value" : "0xffff"
5798 }
5799 }
5800 }
5801 }
5802 ],
5803 "source_info" : {
5804 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005805 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005806 "column" : 33,
5807 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005808 }
5809 }
5810 ]
5811 },
5812 {
5813 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005814 "id" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005815 "runtime_data" : [],
5816 "primitives" : [
5817 {
5818 "op" : "add_header",
5819 "parameters" : [
5820 {
5821 "type" : "header",
5822 "value" : "int_q_occupancy"
5823 }
5824 ],
5825 "source_info" : {
5826 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005827 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005828 "column" : 8,
5829 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5830 }
5831 },
5832 {
5833 "op" : "assign",
5834 "parameters" : [
5835 {
5836 "type" : "field",
5837 "value" : ["int_q_occupancy", "q_id"]
5838 },
5839 {
5840 "type" : "hexstr",
5841 "value" : "0x00"
5842 }
5843 ],
5844 "source_info" : {
5845 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005846 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005847 "column" : 8,
5848 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5849 }
5850 },
5851 {
5852 "op" : "assign",
5853 "parameters" : [
5854 {
5855 "type" : "field",
5856 "value" : ["int_q_occupancy", "q_occupancy"]
5857 },
5858 {
5859 "type" : "expression",
5860 "value" : {
5861 "type" : "expression",
5862 "value" : {
5863 "op" : "&",
5864 "left" : {
5865 "type" : "field",
5866 "value" : ["standard_metadata", "deq_qdepth"]
5867 },
5868 "right" : {
5869 "type" : "hexstr",
5870 "value" : "0xffffff"
5871 }
5872 }
5873 }
5874 }
5875 ],
5876 "source_info" : {
5877 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005878 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005879 "column" : 8,
5880 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5881 }
5882 },
5883 {
5884 "op" : "add_header",
5885 "parameters" : [
5886 {
5887 "type" : "header",
5888 "value" : "int_hop_latency"
5889 }
5890 ],
5891 "source_info" : {
5892 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005893 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005894 "column" : 8,
5895 "source_fragment" : "hdr.int_hop_latency.setValid()"
5896 }
5897 },
5898 {
5899 "op" : "assign",
5900 "parameters" : [
5901 {
5902 "type" : "field",
5903 "value" : ["int_hop_latency", "hop_latency"]
5904 },
5905 {
5906 "type" : "field",
5907 "value" : ["standard_metadata", "deq_timedelta"]
5908 }
5909 ],
5910 "source_info" : {
5911 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005912 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005913 "column" : 8,
5914 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5915 }
5916 },
5917 {
5918 "op" : "add_header",
5919 "parameters" : [
5920 {
5921 "type" : "header",
5922 "value" : "int_port_ids"
5923 }
5924 ],
5925 "source_info" : {
5926 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005927 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005928 "column" : 8,
5929 "source_fragment" : "hdr.int_port_ids.setValid()"
5930 }
5931 },
5932 {
5933 "op" : "assign",
5934 "parameters" : [
5935 {
5936 "type" : "field",
5937 "value" : ["int_port_ids", "ingress_port_id"]
5938 },
5939 {
5940 "type" : "expression",
5941 "value" : {
5942 "type" : "expression",
5943 "value" : {
5944 "op" : "&",
5945 "left" : {
5946 "type" : "field",
5947 "value" : ["standard_metadata", "ingress_port"]
5948 },
5949 "right" : {
5950 "type" : "hexstr",
5951 "value" : "0xffff"
5952 }
5953 }
5954 }
5955 }
5956 ],
5957 "source_info" : {
5958 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005959 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005960 "column" : 8,
5961 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5962 }
5963 },
5964 {
5965 "op" : "assign",
5966 "parameters" : [
5967 {
5968 "type" : "field",
5969 "value" : ["int_port_ids", "egress_port_id"]
5970 },
5971 {
5972 "type" : "expression",
5973 "value" : {
5974 "type" : "expression",
5975 "value" : {
5976 "op" : "&",
5977 "left" : {
5978 "type" : "field",
5979 "value" : ["standard_metadata", "egress_port"]
5980 },
5981 "right" : {
5982 "type" : "hexstr",
5983 "value" : "0xffff"
5984 }
5985 }
5986 }
5987 }
5988 ],
5989 "source_info" : {
5990 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005991 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005992 "column" : 8,
5993 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5994 }
5995 },
5996 {
5997 "op" : "assign",
5998 "parameters" : [
5999 {
6000 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006001 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006002 },
6003 {
6004 "type" : "expression",
6005 "value" : {
6006 "type" : "expression",
6007 "value" : {
6008 "op" : "&",
6009 "left" : {
6010 "type" : "expression",
6011 "value" : {
6012 "op" : "+",
6013 "left" : {
6014 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006015 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006016 },
6017 "right" : {
6018 "type" : "hexstr",
6019 "value" : "0x03"
6020 }
6021 }
6022 },
6023 "right" : {
6024 "type" : "hexstr",
6025 "value" : "0xff"
6026 }
6027 }
6028 }
6029 }
6030 ],
6031 "source_info" : {
6032 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006033 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006034 "column" : 33,
6035 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006036 }
6037 },
6038 {
6039 "op" : "assign",
6040 "parameters" : [
6041 {
6042 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006043 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006044 },
6045 {
6046 "type" : "expression",
6047 "value" : {
6048 "type" : "expression",
6049 "value" : {
6050 "op" : "&",
6051 "left" : {
6052 "type" : "expression",
6053 "value" : {
6054 "op" : "+",
6055 "left" : {
6056 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006057 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006058 },
6059 "right" : {
6060 "type" : "hexstr",
6061 "value" : "0x000c"
6062 }
6063 }
6064 },
6065 "right" : {
6066 "type" : "hexstr",
6067 "value" : "0xffff"
6068 }
6069 }
6070 }
6071 }
6072 ],
6073 "source_info" : {
6074 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006075 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006076 "column" : 33,
6077 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006078 }
6079 }
6080 ]
6081 },
6082 {
6083 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006084 "id" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006085 "runtime_data" : [],
6086 "primitives" : [
6087 {
6088 "op" : "add_header",
6089 "parameters" : [
6090 {
6091 "type" : "header",
6092 "value" : "int_switch_id"
6093 }
6094 ],
6095 "source_info" : {
6096 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006097 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006098 "column" : 8,
6099 "source_fragment" : "hdr.int_switch_id.setValid()"
6100 }
6101 },
6102 {
6103 "op" : "assign",
6104 "parameters" : [
6105 {
6106 "type" : "field",
6107 "value" : ["int_switch_id", "switch_id"]
6108 },
6109 {
6110 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006111 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006112 }
6113 ],
6114 "source_info" : {
6115 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006116 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006117 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006118 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006119 }
6120 },
6121 {
6122 "op" : "assign",
6123 "parameters" : [
6124 {
6125 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006126 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006127 },
6128 {
6129 "type" : "expression",
6130 "value" : {
6131 "type" : "expression",
6132 "value" : {
6133 "op" : "&",
6134 "left" : {
6135 "type" : "expression",
6136 "value" : {
6137 "op" : "+",
6138 "left" : {
6139 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006140 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006141 },
6142 "right" : {
6143 "type" : "hexstr",
6144 "value" : "0x01"
6145 }
6146 }
6147 },
6148 "right" : {
6149 "type" : "hexstr",
6150 "value" : "0xff"
6151 }
6152 }
6153 }
6154 }
6155 ],
6156 "source_info" : {
6157 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006158 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006159 "column" : 33,
6160 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006161 }
6162 },
6163 {
6164 "op" : "assign",
6165 "parameters" : [
6166 {
6167 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006168 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006169 },
6170 {
6171 "type" : "expression",
6172 "value" : {
6173 "type" : "expression",
6174 "value" : {
6175 "op" : "&",
6176 "left" : {
6177 "type" : "expression",
6178 "value" : {
6179 "op" : "+",
6180 "left" : {
6181 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006182 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006183 },
6184 "right" : {
6185 "type" : "hexstr",
6186 "value" : "0x0004"
6187 }
6188 }
6189 },
6190 "right" : {
6191 "type" : "hexstr",
6192 "value" : "0xffff"
6193 }
6194 }
6195 }
6196 }
6197 ],
6198 "source_info" : {
6199 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006200 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006201 "column" : 33,
6202 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006203 }
6204 }
6205 ]
6206 },
6207 {
6208 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006209 "id" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006210 "runtime_data" : [],
6211 "primitives" : [
6212 {
6213 "op" : "add_header",
6214 "parameters" : [
6215 {
6216 "type" : "header",
6217 "value" : "int_q_occupancy"
6218 }
6219 ],
6220 "source_info" : {
6221 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006222 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006223 "column" : 8,
6224 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6225 }
6226 },
6227 {
6228 "op" : "assign",
6229 "parameters" : [
6230 {
6231 "type" : "field",
6232 "value" : ["int_q_occupancy", "q_id"]
6233 },
6234 {
6235 "type" : "hexstr",
6236 "value" : "0x00"
6237 }
6238 ],
6239 "source_info" : {
6240 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006241 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006242 "column" : 8,
6243 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6244 }
6245 },
6246 {
6247 "op" : "assign",
6248 "parameters" : [
6249 {
6250 "type" : "field",
6251 "value" : ["int_q_occupancy", "q_occupancy"]
6252 },
6253 {
6254 "type" : "expression",
6255 "value" : {
6256 "type" : "expression",
6257 "value" : {
6258 "op" : "&",
6259 "left" : {
6260 "type" : "field",
6261 "value" : ["standard_metadata", "deq_qdepth"]
6262 },
6263 "right" : {
6264 "type" : "hexstr",
6265 "value" : "0xffffff"
6266 }
6267 }
6268 }
6269 }
6270 ],
6271 "source_info" : {
6272 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006273 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006274 "column" : 8,
6275 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6276 }
6277 },
6278 {
6279 "op" : "add_header",
6280 "parameters" : [
6281 {
6282 "type" : "header",
6283 "value" : "int_switch_id"
6284 }
6285 ],
6286 "source_info" : {
6287 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006288 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006289 "column" : 8,
6290 "source_fragment" : "hdr.int_switch_id.setValid()"
6291 }
6292 },
6293 {
6294 "op" : "assign",
6295 "parameters" : [
6296 {
6297 "type" : "field",
6298 "value" : ["int_switch_id", "switch_id"]
6299 },
6300 {
6301 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006302 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006303 }
6304 ],
6305 "source_info" : {
6306 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006307 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006308 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006309 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006310 }
6311 },
6312 {
6313 "op" : "assign",
6314 "parameters" : [
6315 {
6316 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006317 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006318 },
6319 {
6320 "type" : "expression",
6321 "value" : {
6322 "type" : "expression",
6323 "value" : {
6324 "op" : "&",
6325 "left" : {
6326 "type" : "expression",
6327 "value" : {
6328 "op" : "+",
6329 "left" : {
6330 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006331 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006332 },
6333 "right" : {
6334 "type" : "hexstr",
6335 "value" : "0x02"
6336 }
6337 }
6338 },
6339 "right" : {
6340 "type" : "hexstr",
6341 "value" : "0xff"
6342 }
6343 }
6344 }
6345 }
6346 ],
6347 "source_info" : {
6348 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006349 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006350 "column" : 33,
6351 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006352 }
6353 },
6354 {
6355 "op" : "assign",
6356 "parameters" : [
6357 {
6358 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006359 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006360 },
6361 {
6362 "type" : "expression",
6363 "value" : {
6364 "type" : "expression",
6365 "value" : {
6366 "op" : "&",
6367 "left" : {
6368 "type" : "expression",
6369 "value" : {
6370 "op" : "+",
6371 "left" : {
6372 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006373 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006374 },
6375 "right" : {
6376 "type" : "hexstr",
6377 "value" : "0x0008"
6378 }
6379 }
6380 },
6381 "right" : {
6382 "type" : "hexstr",
6383 "value" : "0xffff"
6384 }
6385 }
6386 }
6387 }
6388 ],
6389 "source_info" : {
6390 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006391 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006392 "column" : 33,
6393 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006394 }
6395 }
6396 ]
6397 },
6398 {
6399 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006400 "id" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006401 "runtime_data" : [],
6402 "primitives" : [
6403 {
6404 "op" : "add_header",
6405 "parameters" : [
6406 {
6407 "type" : "header",
6408 "value" : "int_hop_latency"
6409 }
6410 ],
6411 "source_info" : {
6412 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006413 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006414 "column" : 8,
6415 "source_fragment" : "hdr.int_hop_latency.setValid()"
6416 }
6417 },
6418 {
6419 "op" : "assign",
6420 "parameters" : [
6421 {
6422 "type" : "field",
6423 "value" : ["int_hop_latency", "hop_latency"]
6424 },
6425 {
6426 "type" : "field",
6427 "value" : ["standard_metadata", "deq_timedelta"]
6428 }
6429 ],
6430 "source_info" : {
6431 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006432 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006433 "column" : 8,
6434 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6435 }
6436 },
6437 {
6438 "op" : "add_header",
6439 "parameters" : [
6440 {
6441 "type" : "header",
6442 "value" : "int_switch_id"
6443 }
6444 ],
6445 "source_info" : {
6446 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006447 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006448 "column" : 8,
6449 "source_fragment" : "hdr.int_switch_id.setValid()"
6450 }
6451 },
6452 {
6453 "op" : "assign",
6454 "parameters" : [
6455 {
6456 "type" : "field",
6457 "value" : ["int_switch_id", "switch_id"]
6458 },
6459 {
6460 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006461 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006462 }
6463 ],
6464 "source_info" : {
6465 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006466 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006467 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006468 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006469 }
6470 },
6471 {
6472 "op" : "assign",
6473 "parameters" : [
6474 {
6475 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006476 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006477 },
6478 {
6479 "type" : "expression",
6480 "value" : {
6481 "type" : "expression",
6482 "value" : {
6483 "op" : "&",
6484 "left" : {
6485 "type" : "expression",
6486 "value" : {
6487 "op" : "+",
6488 "left" : {
6489 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006490 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006491 },
6492 "right" : {
6493 "type" : "hexstr",
6494 "value" : "0x02"
6495 }
6496 }
6497 },
6498 "right" : {
6499 "type" : "hexstr",
6500 "value" : "0xff"
6501 }
6502 }
6503 }
6504 }
6505 ],
6506 "source_info" : {
6507 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006508 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006509 "column" : 33,
6510 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006511 }
6512 },
6513 {
6514 "op" : "assign",
6515 "parameters" : [
6516 {
6517 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006518 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006519 },
6520 {
6521 "type" : "expression",
6522 "value" : {
6523 "type" : "expression",
6524 "value" : {
6525 "op" : "&",
6526 "left" : {
6527 "type" : "expression",
6528 "value" : {
6529 "op" : "+",
6530 "left" : {
6531 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006532 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006533 },
6534 "right" : {
6535 "type" : "hexstr",
6536 "value" : "0x0008"
6537 }
6538 }
6539 },
6540 "right" : {
6541 "type" : "hexstr",
6542 "value" : "0xffff"
6543 }
6544 }
6545 }
6546 }
6547 ],
6548 "source_info" : {
6549 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006550 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006551 "column" : 33,
6552 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006553 }
6554 }
6555 ]
6556 },
6557 {
6558 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006559 "id" : 72,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006560 "runtime_data" : [],
6561 "primitives" : [
6562 {
6563 "op" : "add_header",
6564 "parameters" : [
6565 {
6566 "type" : "header",
6567 "value" : "int_q_occupancy"
6568 }
6569 ],
6570 "source_info" : {
6571 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006572 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006573 "column" : 8,
6574 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6575 }
6576 },
6577 {
6578 "op" : "assign",
6579 "parameters" : [
6580 {
6581 "type" : "field",
6582 "value" : ["int_q_occupancy", "q_id"]
6583 },
6584 {
6585 "type" : "hexstr",
6586 "value" : "0x00"
6587 }
6588 ],
6589 "source_info" : {
6590 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006591 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006592 "column" : 8,
6593 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6594 }
6595 },
6596 {
6597 "op" : "assign",
6598 "parameters" : [
6599 {
6600 "type" : "field",
6601 "value" : ["int_q_occupancy", "q_occupancy"]
6602 },
6603 {
6604 "type" : "expression",
6605 "value" : {
6606 "type" : "expression",
6607 "value" : {
6608 "op" : "&",
6609 "left" : {
6610 "type" : "field",
6611 "value" : ["standard_metadata", "deq_qdepth"]
6612 },
6613 "right" : {
6614 "type" : "hexstr",
6615 "value" : "0xffffff"
6616 }
6617 }
6618 }
6619 }
6620 ],
6621 "source_info" : {
6622 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006623 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006624 "column" : 8,
6625 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6626 }
6627 },
6628 {
6629 "op" : "add_header",
6630 "parameters" : [
6631 {
6632 "type" : "header",
6633 "value" : "int_hop_latency"
6634 }
6635 ],
6636 "source_info" : {
6637 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006638 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006639 "column" : 8,
6640 "source_fragment" : "hdr.int_hop_latency.setValid()"
6641 }
6642 },
6643 {
6644 "op" : "assign",
6645 "parameters" : [
6646 {
6647 "type" : "field",
6648 "value" : ["int_hop_latency", "hop_latency"]
6649 },
6650 {
6651 "type" : "field",
6652 "value" : ["standard_metadata", "deq_timedelta"]
6653 }
6654 ],
6655 "source_info" : {
6656 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006657 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006658 "column" : 8,
6659 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6660 }
6661 },
6662 {
6663 "op" : "add_header",
6664 "parameters" : [
6665 {
6666 "type" : "header",
6667 "value" : "int_switch_id"
6668 }
6669 ],
6670 "source_info" : {
6671 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006672 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006673 "column" : 8,
6674 "source_fragment" : "hdr.int_switch_id.setValid()"
6675 }
6676 },
6677 {
6678 "op" : "assign",
6679 "parameters" : [
6680 {
6681 "type" : "field",
6682 "value" : ["int_switch_id", "switch_id"]
6683 },
6684 {
6685 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006686 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006687 }
6688 ],
6689 "source_info" : {
6690 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006691 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006692 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006693 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006694 }
6695 },
6696 {
6697 "op" : "assign",
6698 "parameters" : [
6699 {
6700 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006701 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006702 },
6703 {
6704 "type" : "expression",
6705 "value" : {
6706 "type" : "expression",
6707 "value" : {
6708 "op" : "&",
6709 "left" : {
6710 "type" : "expression",
6711 "value" : {
6712 "op" : "+",
6713 "left" : {
6714 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006715 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006716 },
6717 "right" : {
6718 "type" : "hexstr",
6719 "value" : "0x03"
6720 }
6721 }
6722 },
6723 "right" : {
6724 "type" : "hexstr",
6725 "value" : "0xff"
6726 }
6727 }
6728 }
6729 }
6730 ],
6731 "source_info" : {
6732 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006733 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006734 "column" : 33,
6735 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006736 }
6737 },
6738 {
6739 "op" : "assign",
6740 "parameters" : [
6741 {
6742 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006743 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006744 },
6745 {
6746 "type" : "expression",
6747 "value" : {
6748 "type" : "expression",
6749 "value" : {
6750 "op" : "&",
6751 "left" : {
6752 "type" : "expression",
6753 "value" : {
6754 "op" : "+",
6755 "left" : {
6756 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006757 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006758 },
6759 "right" : {
6760 "type" : "hexstr",
6761 "value" : "0x000c"
6762 }
6763 }
6764 },
6765 "right" : {
6766 "type" : "hexstr",
6767 "value" : "0xffff"
6768 }
6769 }
6770 }
6771 }
6772 ],
6773 "source_info" : {
6774 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006775 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006776 "column" : 33,
6777 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006778 }
6779 }
6780 ]
6781 },
6782 {
6783 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006784 "id" : 73,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006785 "runtime_data" : [],
6786 "primitives" : [
6787 {
6788 "op" : "add_header",
6789 "parameters" : [
6790 {
6791 "type" : "header",
6792 "value" : "int_port_ids"
6793 }
6794 ],
6795 "source_info" : {
6796 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006797 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006798 "column" : 8,
6799 "source_fragment" : "hdr.int_port_ids.setValid()"
6800 }
6801 },
6802 {
6803 "op" : "assign",
6804 "parameters" : [
6805 {
6806 "type" : "field",
6807 "value" : ["int_port_ids", "ingress_port_id"]
6808 },
6809 {
6810 "type" : "expression",
6811 "value" : {
6812 "type" : "expression",
6813 "value" : {
6814 "op" : "&",
6815 "left" : {
6816 "type" : "field",
6817 "value" : ["standard_metadata", "ingress_port"]
6818 },
6819 "right" : {
6820 "type" : "hexstr",
6821 "value" : "0xffff"
6822 }
6823 }
6824 }
6825 }
6826 ],
6827 "source_info" : {
6828 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006829 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006830 "column" : 8,
6831 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6832 }
6833 },
6834 {
6835 "op" : "assign",
6836 "parameters" : [
6837 {
6838 "type" : "field",
6839 "value" : ["int_port_ids", "egress_port_id"]
6840 },
6841 {
6842 "type" : "expression",
6843 "value" : {
6844 "type" : "expression",
6845 "value" : {
6846 "op" : "&",
6847 "left" : {
6848 "type" : "field",
6849 "value" : ["standard_metadata", "egress_port"]
6850 },
6851 "right" : {
6852 "type" : "hexstr",
6853 "value" : "0xffff"
6854 }
6855 }
6856 }
6857 }
6858 ],
6859 "source_info" : {
6860 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006861 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006862 "column" : 8,
6863 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6864 }
6865 },
6866 {
6867 "op" : "add_header",
6868 "parameters" : [
6869 {
6870 "type" : "header",
6871 "value" : "int_switch_id"
6872 }
6873 ],
6874 "source_info" : {
6875 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006876 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006877 "column" : 8,
6878 "source_fragment" : "hdr.int_switch_id.setValid()"
6879 }
6880 },
6881 {
6882 "op" : "assign",
6883 "parameters" : [
6884 {
6885 "type" : "field",
6886 "value" : ["int_switch_id", "switch_id"]
6887 },
6888 {
6889 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006890 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006891 }
6892 ],
6893 "source_info" : {
6894 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006895 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006896 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006897 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006898 }
6899 },
6900 {
6901 "op" : "assign",
6902 "parameters" : [
6903 {
6904 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006905 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006906 },
6907 {
6908 "type" : "expression",
6909 "value" : {
6910 "type" : "expression",
6911 "value" : {
6912 "op" : "&",
6913 "left" : {
6914 "type" : "expression",
6915 "value" : {
6916 "op" : "+",
6917 "left" : {
6918 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006919 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006920 },
6921 "right" : {
6922 "type" : "hexstr",
6923 "value" : "0x02"
6924 }
6925 }
6926 },
6927 "right" : {
6928 "type" : "hexstr",
6929 "value" : "0xff"
6930 }
6931 }
6932 }
6933 }
6934 ],
6935 "source_info" : {
6936 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006937 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006938 "column" : 33,
6939 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006940 }
6941 },
6942 {
6943 "op" : "assign",
6944 "parameters" : [
6945 {
6946 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006947 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006948 },
6949 {
6950 "type" : "expression",
6951 "value" : {
6952 "type" : "expression",
6953 "value" : {
6954 "op" : "&",
6955 "left" : {
6956 "type" : "expression",
6957 "value" : {
6958 "op" : "+",
6959 "left" : {
6960 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07006961 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006962 },
6963 "right" : {
6964 "type" : "hexstr",
6965 "value" : "0x0008"
6966 }
6967 }
6968 },
6969 "right" : {
6970 "type" : "hexstr",
6971 "value" : "0xffff"
6972 }
6973 }
6974 }
6975 }
6976 ],
6977 "source_info" : {
6978 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006979 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006980 "column" : 33,
6981 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006982 }
6983 }
6984 ]
6985 },
6986 {
6987 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006988 "id" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006989 "runtime_data" : [],
6990 "primitives" : [
6991 {
6992 "op" : "add_header",
6993 "parameters" : [
6994 {
6995 "type" : "header",
6996 "value" : "int_q_occupancy"
6997 }
6998 ],
6999 "source_info" : {
7000 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007001 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007002 "column" : 8,
7003 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7004 }
7005 },
7006 {
7007 "op" : "assign",
7008 "parameters" : [
7009 {
7010 "type" : "field",
7011 "value" : ["int_q_occupancy", "q_id"]
7012 },
7013 {
7014 "type" : "hexstr",
7015 "value" : "0x00"
7016 }
7017 ],
7018 "source_info" : {
7019 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007020 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007021 "column" : 8,
7022 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7023 }
7024 },
7025 {
7026 "op" : "assign",
7027 "parameters" : [
7028 {
7029 "type" : "field",
7030 "value" : ["int_q_occupancy", "q_occupancy"]
7031 },
7032 {
7033 "type" : "expression",
7034 "value" : {
7035 "type" : "expression",
7036 "value" : {
7037 "op" : "&",
7038 "left" : {
7039 "type" : "field",
7040 "value" : ["standard_metadata", "deq_qdepth"]
7041 },
7042 "right" : {
7043 "type" : "hexstr",
7044 "value" : "0xffffff"
7045 }
7046 }
7047 }
7048 }
7049 ],
7050 "source_info" : {
7051 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007052 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007053 "column" : 8,
7054 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7055 }
7056 },
7057 {
7058 "op" : "add_header",
7059 "parameters" : [
7060 {
7061 "type" : "header",
7062 "value" : "int_port_ids"
7063 }
7064 ],
7065 "source_info" : {
7066 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007067 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007068 "column" : 8,
7069 "source_fragment" : "hdr.int_port_ids.setValid()"
7070 }
7071 },
7072 {
7073 "op" : "assign",
7074 "parameters" : [
7075 {
7076 "type" : "field",
7077 "value" : ["int_port_ids", "ingress_port_id"]
7078 },
7079 {
7080 "type" : "expression",
7081 "value" : {
7082 "type" : "expression",
7083 "value" : {
7084 "op" : "&",
7085 "left" : {
7086 "type" : "field",
7087 "value" : ["standard_metadata", "ingress_port"]
7088 },
7089 "right" : {
7090 "type" : "hexstr",
7091 "value" : "0xffff"
7092 }
7093 }
7094 }
7095 }
7096 ],
7097 "source_info" : {
7098 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007099 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007100 "column" : 8,
7101 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7102 }
7103 },
7104 {
7105 "op" : "assign",
7106 "parameters" : [
7107 {
7108 "type" : "field",
7109 "value" : ["int_port_ids", "egress_port_id"]
7110 },
7111 {
7112 "type" : "expression",
7113 "value" : {
7114 "type" : "expression",
7115 "value" : {
7116 "op" : "&",
7117 "left" : {
7118 "type" : "field",
7119 "value" : ["standard_metadata", "egress_port"]
7120 },
7121 "right" : {
7122 "type" : "hexstr",
7123 "value" : "0xffff"
7124 }
7125 }
7126 }
7127 }
7128 ],
7129 "source_info" : {
7130 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007131 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007132 "column" : 8,
7133 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7134 }
7135 },
7136 {
7137 "op" : "add_header",
7138 "parameters" : [
7139 {
7140 "type" : "header",
7141 "value" : "int_switch_id"
7142 }
7143 ],
7144 "source_info" : {
7145 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007146 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007147 "column" : 8,
7148 "source_fragment" : "hdr.int_switch_id.setValid()"
7149 }
7150 },
7151 {
7152 "op" : "assign",
7153 "parameters" : [
7154 {
7155 "type" : "field",
7156 "value" : ["int_switch_id", "switch_id"]
7157 },
7158 {
7159 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007160 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007161 }
7162 ],
7163 "source_info" : {
7164 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007165 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007166 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007167 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007168 }
7169 },
7170 {
7171 "op" : "assign",
7172 "parameters" : [
7173 {
7174 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007175 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007176 },
7177 {
7178 "type" : "expression",
7179 "value" : {
7180 "type" : "expression",
7181 "value" : {
7182 "op" : "&",
7183 "left" : {
7184 "type" : "expression",
7185 "value" : {
7186 "op" : "+",
7187 "left" : {
7188 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007189 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007190 },
7191 "right" : {
7192 "type" : "hexstr",
7193 "value" : "0x03"
7194 }
7195 }
7196 },
7197 "right" : {
7198 "type" : "hexstr",
7199 "value" : "0xff"
7200 }
7201 }
7202 }
7203 }
7204 ],
7205 "source_info" : {
7206 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007207 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007208 "column" : 33,
7209 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007210 }
7211 },
7212 {
7213 "op" : "assign",
7214 "parameters" : [
7215 {
7216 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007217 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007218 },
7219 {
7220 "type" : "expression",
7221 "value" : {
7222 "type" : "expression",
7223 "value" : {
7224 "op" : "&",
7225 "left" : {
7226 "type" : "expression",
7227 "value" : {
7228 "op" : "+",
7229 "left" : {
7230 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007231 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007232 },
7233 "right" : {
7234 "type" : "hexstr",
7235 "value" : "0x000c"
7236 }
7237 }
7238 },
7239 "right" : {
7240 "type" : "hexstr",
7241 "value" : "0xffff"
7242 }
7243 }
7244 }
7245 }
7246 ],
7247 "source_info" : {
7248 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007249 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007250 "column" : 33,
7251 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007252 }
7253 }
7254 ]
7255 },
7256 {
7257 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007258 "id" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007259 "runtime_data" : [],
7260 "primitives" : [
7261 {
7262 "op" : "add_header",
7263 "parameters" : [
7264 {
7265 "type" : "header",
7266 "value" : "int_hop_latency"
7267 }
7268 ],
7269 "source_info" : {
7270 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007271 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007272 "column" : 8,
7273 "source_fragment" : "hdr.int_hop_latency.setValid()"
7274 }
7275 },
7276 {
7277 "op" : "assign",
7278 "parameters" : [
7279 {
7280 "type" : "field",
7281 "value" : ["int_hop_latency", "hop_latency"]
7282 },
7283 {
7284 "type" : "field",
7285 "value" : ["standard_metadata", "deq_timedelta"]
7286 }
7287 ],
7288 "source_info" : {
7289 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007290 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007291 "column" : 8,
7292 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7293 }
7294 },
7295 {
7296 "op" : "add_header",
7297 "parameters" : [
7298 {
7299 "type" : "header",
7300 "value" : "int_port_ids"
7301 }
7302 ],
7303 "source_info" : {
7304 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007305 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007306 "column" : 8,
7307 "source_fragment" : "hdr.int_port_ids.setValid()"
7308 }
7309 },
7310 {
7311 "op" : "assign",
7312 "parameters" : [
7313 {
7314 "type" : "field",
7315 "value" : ["int_port_ids", "ingress_port_id"]
7316 },
7317 {
7318 "type" : "expression",
7319 "value" : {
7320 "type" : "expression",
7321 "value" : {
7322 "op" : "&",
7323 "left" : {
7324 "type" : "field",
7325 "value" : ["standard_metadata", "ingress_port"]
7326 },
7327 "right" : {
7328 "type" : "hexstr",
7329 "value" : "0xffff"
7330 }
7331 }
7332 }
7333 }
7334 ],
7335 "source_info" : {
7336 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007337 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007338 "column" : 8,
7339 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7340 }
7341 },
7342 {
7343 "op" : "assign",
7344 "parameters" : [
7345 {
7346 "type" : "field",
7347 "value" : ["int_port_ids", "egress_port_id"]
7348 },
7349 {
7350 "type" : "expression",
7351 "value" : {
7352 "type" : "expression",
7353 "value" : {
7354 "op" : "&",
7355 "left" : {
7356 "type" : "field",
7357 "value" : ["standard_metadata", "egress_port"]
7358 },
7359 "right" : {
7360 "type" : "hexstr",
7361 "value" : "0xffff"
7362 }
7363 }
7364 }
7365 }
7366 ],
7367 "source_info" : {
7368 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007369 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007370 "column" : 8,
7371 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7372 }
7373 },
7374 {
7375 "op" : "add_header",
7376 "parameters" : [
7377 {
7378 "type" : "header",
7379 "value" : "int_switch_id"
7380 }
7381 ],
7382 "source_info" : {
7383 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007384 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007385 "column" : 8,
7386 "source_fragment" : "hdr.int_switch_id.setValid()"
7387 }
7388 },
7389 {
7390 "op" : "assign",
7391 "parameters" : [
7392 {
7393 "type" : "field",
7394 "value" : ["int_switch_id", "switch_id"]
7395 },
7396 {
7397 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007398 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007399 }
7400 ],
7401 "source_info" : {
7402 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007403 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007404 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007405 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007406 }
7407 },
7408 {
7409 "op" : "assign",
7410 "parameters" : [
7411 {
7412 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007413 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007414 },
7415 {
7416 "type" : "expression",
7417 "value" : {
7418 "type" : "expression",
7419 "value" : {
7420 "op" : "&",
7421 "left" : {
7422 "type" : "expression",
7423 "value" : {
7424 "op" : "+",
7425 "left" : {
7426 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007427 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007428 },
7429 "right" : {
7430 "type" : "hexstr",
7431 "value" : "0x03"
7432 }
7433 }
7434 },
7435 "right" : {
7436 "type" : "hexstr",
7437 "value" : "0xff"
7438 }
7439 }
7440 }
7441 }
7442 ],
7443 "source_info" : {
7444 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007445 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007446 "column" : 33,
7447 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007448 }
7449 },
7450 {
7451 "op" : "assign",
7452 "parameters" : [
7453 {
7454 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007455 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007456 },
7457 {
7458 "type" : "expression",
7459 "value" : {
7460 "type" : "expression",
7461 "value" : {
7462 "op" : "&",
7463 "left" : {
7464 "type" : "expression",
7465 "value" : {
7466 "op" : "+",
7467 "left" : {
7468 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007469 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007470 },
7471 "right" : {
7472 "type" : "hexstr",
7473 "value" : "0x000c"
7474 }
7475 }
7476 },
7477 "right" : {
7478 "type" : "hexstr",
7479 "value" : "0xffff"
7480 }
7481 }
7482 }
7483 }
7484 ],
7485 "source_info" : {
7486 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007487 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007488 "column" : 33,
7489 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007490 }
7491 }
7492 ]
7493 },
7494 {
7495 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007496 "id" : 76,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007497 "runtime_data" : [],
7498 "primitives" : [
7499 {
7500 "op" : "add_header",
7501 "parameters" : [
7502 {
7503 "type" : "header",
7504 "value" : "int_q_occupancy"
7505 }
7506 ],
7507 "source_info" : {
7508 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007509 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007510 "column" : 8,
7511 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7512 }
7513 },
7514 {
7515 "op" : "assign",
7516 "parameters" : [
7517 {
7518 "type" : "field",
7519 "value" : ["int_q_occupancy", "q_id"]
7520 },
7521 {
7522 "type" : "hexstr",
7523 "value" : "0x00"
7524 }
7525 ],
7526 "source_info" : {
7527 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007528 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007529 "column" : 8,
7530 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7531 }
7532 },
7533 {
7534 "op" : "assign",
7535 "parameters" : [
7536 {
7537 "type" : "field",
7538 "value" : ["int_q_occupancy", "q_occupancy"]
7539 },
7540 {
7541 "type" : "expression",
7542 "value" : {
7543 "type" : "expression",
7544 "value" : {
7545 "op" : "&",
7546 "left" : {
7547 "type" : "field",
7548 "value" : ["standard_metadata", "deq_qdepth"]
7549 },
7550 "right" : {
7551 "type" : "hexstr",
7552 "value" : "0xffffff"
7553 }
7554 }
7555 }
7556 }
7557 ],
7558 "source_info" : {
7559 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007560 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007561 "column" : 8,
7562 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7563 }
7564 },
7565 {
7566 "op" : "add_header",
7567 "parameters" : [
7568 {
7569 "type" : "header",
7570 "value" : "int_hop_latency"
7571 }
7572 ],
7573 "source_info" : {
7574 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007575 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007576 "column" : 8,
7577 "source_fragment" : "hdr.int_hop_latency.setValid()"
7578 }
7579 },
7580 {
7581 "op" : "assign",
7582 "parameters" : [
7583 {
7584 "type" : "field",
7585 "value" : ["int_hop_latency", "hop_latency"]
7586 },
7587 {
7588 "type" : "field",
7589 "value" : ["standard_metadata", "deq_timedelta"]
7590 }
7591 ],
7592 "source_info" : {
7593 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007594 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007595 "column" : 8,
7596 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7597 }
7598 },
7599 {
7600 "op" : "add_header",
7601 "parameters" : [
7602 {
7603 "type" : "header",
7604 "value" : "int_port_ids"
7605 }
7606 ],
7607 "source_info" : {
7608 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007609 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007610 "column" : 8,
7611 "source_fragment" : "hdr.int_port_ids.setValid()"
7612 }
7613 },
7614 {
7615 "op" : "assign",
7616 "parameters" : [
7617 {
7618 "type" : "field",
7619 "value" : ["int_port_ids", "ingress_port_id"]
7620 },
7621 {
7622 "type" : "expression",
7623 "value" : {
7624 "type" : "expression",
7625 "value" : {
7626 "op" : "&",
7627 "left" : {
7628 "type" : "field",
7629 "value" : ["standard_metadata", "ingress_port"]
7630 },
7631 "right" : {
7632 "type" : "hexstr",
7633 "value" : "0xffff"
7634 }
7635 }
7636 }
7637 }
7638 ],
7639 "source_info" : {
7640 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007641 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007642 "column" : 8,
7643 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7644 }
7645 },
7646 {
7647 "op" : "assign",
7648 "parameters" : [
7649 {
7650 "type" : "field",
7651 "value" : ["int_port_ids", "egress_port_id"]
7652 },
7653 {
7654 "type" : "expression",
7655 "value" : {
7656 "type" : "expression",
7657 "value" : {
7658 "op" : "&",
7659 "left" : {
7660 "type" : "field",
7661 "value" : ["standard_metadata", "egress_port"]
7662 },
7663 "right" : {
7664 "type" : "hexstr",
7665 "value" : "0xffff"
7666 }
7667 }
7668 }
7669 }
7670 ],
7671 "source_info" : {
7672 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007673 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007674 "column" : 8,
7675 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7676 }
7677 },
7678 {
7679 "op" : "add_header",
7680 "parameters" : [
7681 {
7682 "type" : "header",
7683 "value" : "int_switch_id"
7684 }
7685 ],
7686 "source_info" : {
7687 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007688 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007689 "column" : 8,
7690 "source_fragment" : "hdr.int_switch_id.setValid()"
7691 }
7692 },
7693 {
7694 "op" : "assign",
7695 "parameters" : [
7696 {
7697 "type" : "field",
7698 "value" : ["int_switch_id", "switch_id"]
7699 },
7700 {
7701 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007702 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007703 }
7704 ],
7705 "source_info" : {
7706 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007707 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007708 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007709 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007710 }
7711 },
7712 {
7713 "op" : "assign",
7714 "parameters" : [
7715 {
7716 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007717 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007718 },
7719 {
7720 "type" : "expression",
7721 "value" : {
7722 "type" : "expression",
7723 "value" : {
7724 "op" : "&",
7725 "left" : {
7726 "type" : "expression",
7727 "value" : {
7728 "op" : "+",
7729 "left" : {
7730 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007731 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007732 },
7733 "right" : {
7734 "type" : "hexstr",
7735 "value" : "0x04"
7736 }
7737 }
7738 },
7739 "right" : {
7740 "type" : "hexstr",
7741 "value" : "0xff"
7742 }
7743 }
7744 }
7745 }
7746 ],
7747 "source_info" : {
7748 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007749 "line" : 115,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007750 "column" : 33,
7751 "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007752 }
7753 },
7754 {
7755 "op" : "assign",
7756 "parameters" : [
7757 {
7758 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007759 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007760 },
7761 {
7762 "type" : "expression",
7763 "value" : {
7764 "type" : "expression",
7765 "value" : {
7766 "op" : "&",
7767 "left" : {
7768 "type" : "expression",
7769 "value" : {
7770 "op" : "+",
7771 "left" : {
7772 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007773 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007774 },
7775 "right" : {
7776 "type" : "hexstr",
7777 "value" : "0x0010"
7778 }
7779 }
7780 },
7781 "right" : {
7782 "type" : "hexstr",
7783 "value" : "0xffff"
7784 }
7785 }
7786 }
7787 }
7788 ],
7789 "source_info" : {
7790 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007791 "line" : 116,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007792 "column" : 33,
7793 "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007794 }
7795 }
7796 ]
7797 },
7798 {
7799 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007800 "id" : 77,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007801 "runtime_data" : [],
7802 "primitives" : []
7803 },
7804 {
7805 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007806 "id" : 78,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007807 "runtime_data" : [],
7808 "primitives" : [
7809 {
7810 "op" : "add_header",
7811 "parameters" : [
7812 {
7813 "type" : "header",
7814 "value" : "int_egress_tx_util"
7815 }
7816 ],
7817 "source_info" : {
7818 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007819 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007820 "column" : 8,
7821 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
7822 }
7823 },
7824 {
7825 "op" : "assign",
7826 "parameters" : [
7827 {
7828 "type" : "field",
7829 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
7830 },
7831 {
7832 "type" : "hexstr",
7833 "value" : "0x00000000"
7834 }
7835 ],
7836 "source_info" : {
7837 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007838 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007839 "column" : 8,
7840 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
7841 }
7842 },
7843 {
7844 "op" : "assign",
7845 "parameters" : [
7846 {
7847 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007848 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007849 },
7850 {
7851 "type" : "expression",
7852 "value" : {
7853 "type" : "expression",
7854 "value" : {
7855 "op" : "&",
7856 "left" : {
7857 "type" : "expression",
7858 "value" : {
7859 "op" : "+",
7860 "left" : {
7861 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007862 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007863 },
7864 "right" : {
7865 "type" : "hexstr",
7866 "value" : "0x01"
7867 }
7868 }
7869 },
7870 "right" : {
7871 "type" : "hexstr",
7872 "value" : "0xff"
7873 }
7874 }
7875 }
7876 }
7877 ],
7878 "source_info" : {
7879 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007880 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007881 "column" : 33,
7882 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007883 }
7884 },
7885 {
7886 "op" : "assign",
7887 "parameters" : [
7888 {
7889 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007890 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007891 },
7892 {
7893 "type" : "expression",
7894 "value" : {
7895 "type" : "expression",
7896 "value" : {
7897 "op" : "&",
7898 "left" : {
7899 "type" : "expression",
7900 "value" : {
7901 "op" : "+",
7902 "left" : {
7903 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007904 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007905 },
7906 "right" : {
7907 "type" : "hexstr",
7908 "value" : "0x0004"
7909 }
7910 }
7911 },
7912 "right" : {
7913 "type" : "hexstr",
7914 "value" : "0xffff"
7915 }
7916 }
7917 }
7918 }
7919 ],
7920 "source_info" : {
7921 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007922 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007923 "column" : 33,
7924 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007925 }
7926 }
7927 ]
7928 },
7929 {
7930 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007931 "id" : 79,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007932 "runtime_data" : [],
7933 "primitives" : [
7934 {
7935 "op" : "add_header",
7936 "parameters" : [
7937 {
7938 "type" : "header",
7939 "value" : "int_q_congestion"
7940 }
7941 ],
7942 "source_info" : {
7943 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007944 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007945 "column" : 8,
7946 "source_fragment" : "hdr.int_q_congestion.setValid()"
7947 }
7948 },
7949 {
7950 "op" : "assign",
7951 "parameters" : [
7952 {
7953 "type" : "field",
7954 "value" : ["int_q_congestion", "q_id"]
7955 },
7956 {
7957 "type" : "hexstr",
7958 "value" : "0x00"
7959 }
7960 ],
7961 "source_info" : {
7962 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007963 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007964 "column" : 8,
7965 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
7966 }
7967 },
7968 {
7969 "op" : "assign",
7970 "parameters" : [
7971 {
7972 "type" : "field",
7973 "value" : ["int_q_congestion", "q_congestion"]
7974 },
7975 {
7976 "type" : "hexstr",
7977 "value" : "0x000000"
7978 }
7979 ],
7980 "source_info" : {
7981 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007982 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007983 "column" : 8,
7984 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
7985 }
7986 },
7987 {
7988 "op" : "assign",
7989 "parameters" : [
7990 {
7991 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07007992 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007993 },
7994 {
7995 "type" : "expression",
7996 "value" : {
7997 "type" : "expression",
7998 "value" : {
7999 "op" : "&",
8000 "left" : {
8001 "type" : "expression",
8002 "value" : {
8003 "op" : "+",
8004 "left" : {
8005 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008006 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008007 },
8008 "right" : {
8009 "type" : "hexstr",
8010 "value" : "0x01"
8011 }
8012 }
8013 },
8014 "right" : {
8015 "type" : "hexstr",
8016 "value" : "0xff"
8017 }
8018 }
8019 }
8020 }
8021 ],
8022 "source_info" : {
8023 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008024 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008025 "column" : 33,
8026 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008027 }
8028 },
8029 {
8030 "op" : "assign",
8031 "parameters" : [
8032 {
8033 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008034 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008035 },
8036 {
8037 "type" : "expression",
8038 "value" : {
8039 "type" : "expression",
8040 "value" : {
8041 "op" : "&",
8042 "left" : {
8043 "type" : "expression",
8044 "value" : {
8045 "op" : "+",
8046 "left" : {
8047 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008048 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008049 },
8050 "right" : {
8051 "type" : "hexstr",
8052 "value" : "0x0004"
8053 }
8054 }
8055 },
8056 "right" : {
8057 "type" : "hexstr",
8058 "value" : "0xffff"
8059 }
8060 }
8061 }
8062 }
8063 ],
8064 "source_info" : {
8065 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008066 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008067 "column" : 33,
8068 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008069 }
8070 }
8071 ]
8072 },
8073 {
8074 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008075 "id" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008076 "runtime_data" : [],
8077 "primitives" : [
8078 {
8079 "op" : "add_header",
8080 "parameters" : [
8081 {
8082 "type" : "header",
8083 "value" : "int_egress_tx_util"
8084 }
8085 ],
8086 "source_info" : {
8087 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008088 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008089 "column" : 8,
8090 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8091 }
8092 },
8093 {
8094 "op" : "assign",
8095 "parameters" : [
8096 {
8097 "type" : "field",
8098 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8099 },
8100 {
8101 "type" : "hexstr",
8102 "value" : "0x00000000"
8103 }
8104 ],
8105 "source_info" : {
8106 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008107 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008108 "column" : 8,
8109 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8110 }
8111 },
8112 {
8113 "op" : "add_header",
8114 "parameters" : [
8115 {
8116 "type" : "header",
8117 "value" : "int_q_congestion"
8118 }
8119 ],
8120 "source_info" : {
8121 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008122 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008123 "column" : 8,
8124 "source_fragment" : "hdr.int_q_congestion.setValid()"
8125 }
8126 },
8127 {
8128 "op" : "assign",
8129 "parameters" : [
8130 {
8131 "type" : "field",
8132 "value" : ["int_q_congestion", "q_id"]
8133 },
8134 {
8135 "type" : "hexstr",
8136 "value" : "0x00"
8137 }
8138 ],
8139 "source_info" : {
8140 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008141 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008142 "column" : 8,
8143 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8144 }
8145 },
8146 {
8147 "op" : "assign",
8148 "parameters" : [
8149 {
8150 "type" : "field",
8151 "value" : ["int_q_congestion", "q_congestion"]
8152 },
8153 {
8154 "type" : "hexstr",
8155 "value" : "0x000000"
8156 }
8157 ],
8158 "source_info" : {
8159 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008160 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008161 "column" : 8,
8162 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8163 }
8164 },
8165 {
8166 "op" : "assign",
8167 "parameters" : [
8168 {
8169 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008170 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008171 },
8172 {
8173 "type" : "expression",
8174 "value" : {
8175 "type" : "expression",
8176 "value" : {
8177 "op" : "&",
8178 "left" : {
8179 "type" : "expression",
8180 "value" : {
8181 "op" : "+",
8182 "left" : {
8183 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008184 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008185 },
8186 "right" : {
8187 "type" : "hexstr",
8188 "value" : "0x02"
8189 }
8190 }
8191 },
8192 "right" : {
8193 "type" : "hexstr",
8194 "value" : "0xff"
8195 }
8196 }
8197 }
8198 }
8199 ],
8200 "source_info" : {
8201 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008202 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008203 "column" : 33,
8204 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008205 }
8206 },
8207 {
8208 "op" : "assign",
8209 "parameters" : [
8210 {
8211 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008212 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008213 },
8214 {
8215 "type" : "expression",
8216 "value" : {
8217 "type" : "expression",
8218 "value" : {
8219 "op" : "&",
8220 "left" : {
8221 "type" : "expression",
8222 "value" : {
8223 "op" : "+",
8224 "left" : {
8225 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008226 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008227 },
8228 "right" : {
8229 "type" : "hexstr",
8230 "value" : "0x0008"
8231 }
8232 }
8233 },
8234 "right" : {
8235 "type" : "hexstr",
8236 "value" : "0xffff"
8237 }
8238 }
8239 }
8240 }
8241 ],
8242 "source_info" : {
8243 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008244 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008245 "column" : 33,
8246 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008247 }
8248 }
8249 ]
8250 },
8251 {
8252 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008253 "id" : 81,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008254 "runtime_data" : [],
8255 "primitives" : [
8256 {
8257 "op" : "add_header",
8258 "parameters" : [
8259 {
8260 "type" : "header",
8261 "value" : "int_egress_tstamp"
8262 }
8263 ],
8264 "source_info" : {
8265 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008266 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008267 "column" : 8,
8268 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8269 }
8270 },
8271 {
8272 "op" : "assign",
8273 "parameters" : [
8274 {
8275 "type" : "field",
8276 "value" : ["int_egress_tstamp", "egress_tstamp"]
8277 },
8278 {
8279 "type" : "expression",
8280 "value" : {
8281 "type" : "expression",
8282 "value" : {
8283 "op" : "&",
8284 "left" : {
8285 "type" : "expression",
8286 "value" : {
8287 "op" : "+",
8288 "left" : {
8289 "type" : "field",
8290 "value" : ["standard_metadata", "enq_timestamp"]
8291 },
8292 "right" : {
8293 "type" : "field",
8294 "value" : ["standard_metadata", "deq_timedelta"]
8295 }
8296 }
8297 },
8298 "right" : {
8299 "type" : "hexstr",
8300 "value" : "0xffffffff"
8301 }
8302 }
8303 }
8304 }
8305 ],
8306 "source_info" : {
8307 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008308 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008309 "column" : 8,
8310 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8311 }
8312 },
8313 {
8314 "op" : "assign",
8315 "parameters" : [
8316 {
8317 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008318 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008319 },
8320 {
8321 "type" : "expression",
8322 "value" : {
8323 "type" : "expression",
8324 "value" : {
8325 "op" : "&",
8326 "left" : {
8327 "type" : "expression",
8328 "value" : {
8329 "op" : "+",
8330 "left" : {
8331 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008332 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008333 },
8334 "right" : {
8335 "type" : "hexstr",
8336 "value" : "0x01"
8337 }
8338 }
8339 },
8340 "right" : {
8341 "type" : "hexstr",
8342 "value" : "0xff"
8343 }
8344 }
8345 }
8346 }
8347 ],
8348 "source_info" : {
8349 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008350 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008351 "column" : 33,
8352 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008353 }
8354 },
8355 {
8356 "op" : "assign",
8357 "parameters" : [
8358 {
8359 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008360 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008361 },
8362 {
8363 "type" : "expression",
8364 "value" : {
8365 "type" : "expression",
8366 "value" : {
8367 "op" : "&",
8368 "left" : {
8369 "type" : "expression",
8370 "value" : {
8371 "op" : "+",
8372 "left" : {
8373 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008374 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008375 },
8376 "right" : {
8377 "type" : "hexstr",
8378 "value" : "0x0004"
8379 }
8380 }
8381 },
8382 "right" : {
8383 "type" : "hexstr",
8384 "value" : "0xffff"
8385 }
8386 }
8387 }
8388 }
8389 ],
8390 "source_info" : {
8391 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008392 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008393 "column" : 33,
8394 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008395 }
8396 }
8397 ]
8398 },
8399 {
8400 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008401 "id" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008402 "runtime_data" : [],
8403 "primitives" : [
8404 {
8405 "op" : "add_header",
8406 "parameters" : [
8407 {
8408 "type" : "header",
8409 "value" : "int_egress_tx_util"
8410 }
8411 ],
8412 "source_info" : {
8413 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008414 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008415 "column" : 8,
8416 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8417 }
8418 },
8419 {
8420 "op" : "assign",
8421 "parameters" : [
8422 {
8423 "type" : "field",
8424 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8425 },
8426 {
8427 "type" : "hexstr",
8428 "value" : "0x00000000"
8429 }
8430 ],
8431 "source_info" : {
8432 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008433 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008434 "column" : 8,
8435 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8436 }
8437 },
8438 {
8439 "op" : "add_header",
8440 "parameters" : [
8441 {
8442 "type" : "header",
8443 "value" : "int_egress_tstamp"
8444 }
8445 ],
8446 "source_info" : {
8447 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008448 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008449 "column" : 8,
8450 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8451 }
8452 },
8453 {
8454 "op" : "assign",
8455 "parameters" : [
8456 {
8457 "type" : "field",
8458 "value" : ["int_egress_tstamp", "egress_tstamp"]
8459 },
8460 {
8461 "type" : "expression",
8462 "value" : {
8463 "type" : "expression",
8464 "value" : {
8465 "op" : "&",
8466 "left" : {
8467 "type" : "expression",
8468 "value" : {
8469 "op" : "+",
8470 "left" : {
8471 "type" : "field",
8472 "value" : ["standard_metadata", "enq_timestamp"]
8473 },
8474 "right" : {
8475 "type" : "field",
8476 "value" : ["standard_metadata", "deq_timedelta"]
8477 }
8478 }
8479 },
8480 "right" : {
8481 "type" : "hexstr",
8482 "value" : "0xffffffff"
8483 }
8484 }
8485 }
8486 }
8487 ],
8488 "source_info" : {
8489 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008490 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008491 "column" : 8,
8492 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8493 }
8494 },
8495 {
8496 "op" : "assign",
8497 "parameters" : [
8498 {
8499 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008500 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008501 },
8502 {
8503 "type" : "expression",
8504 "value" : {
8505 "type" : "expression",
8506 "value" : {
8507 "op" : "&",
8508 "left" : {
8509 "type" : "expression",
8510 "value" : {
8511 "op" : "+",
8512 "left" : {
8513 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008514 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008515 },
8516 "right" : {
8517 "type" : "hexstr",
8518 "value" : "0x02"
8519 }
8520 }
8521 },
8522 "right" : {
8523 "type" : "hexstr",
8524 "value" : "0xff"
8525 }
8526 }
8527 }
8528 }
8529 ],
8530 "source_info" : {
8531 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008532 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008533 "column" : 33,
8534 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008535 }
8536 },
8537 {
8538 "op" : "assign",
8539 "parameters" : [
8540 {
8541 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008542 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008543 },
8544 {
8545 "type" : "expression",
8546 "value" : {
8547 "type" : "expression",
8548 "value" : {
8549 "op" : "&",
8550 "left" : {
8551 "type" : "expression",
8552 "value" : {
8553 "op" : "+",
8554 "left" : {
8555 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008556 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008557 },
8558 "right" : {
8559 "type" : "hexstr",
8560 "value" : "0x0008"
8561 }
8562 }
8563 },
8564 "right" : {
8565 "type" : "hexstr",
8566 "value" : "0xffff"
8567 }
8568 }
8569 }
8570 }
8571 ],
8572 "source_info" : {
8573 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008574 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008575 "column" : 33,
8576 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008577 }
8578 }
8579 ]
8580 },
8581 {
8582 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008583 "id" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008584 "runtime_data" : [],
8585 "primitives" : [
8586 {
8587 "op" : "add_header",
8588 "parameters" : [
8589 {
8590 "type" : "header",
8591 "value" : "int_q_congestion"
8592 }
8593 ],
8594 "source_info" : {
8595 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008596 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008597 "column" : 8,
8598 "source_fragment" : "hdr.int_q_congestion.setValid()"
8599 }
8600 },
8601 {
8602 "op" : "assign",
8603 "parameters" : [
8604 {
8605 "type" : "field",
8606 "value" : ["int_q_congestion", "q_id"]
8607 },
8608 {
8609 "type" : "hexstr",
8610 "value" : "0x00"
8611 }
8612 ],
8613 "source_info" : {
8614 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008615 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008616 "column" : 8,
8617 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8618 }
8619 },
8620 {
8621 "op" : "assign",
8622 "parameters" : [
8623 {
8624 "type" : "field",
8625 "value" : ["int_q_congestion", "q_congestion"]
8626 },
8627 {
8628 "type" : "hexstr",
8629 "value" : "0x000000"
8630 }
8631 ],
8632 "source_info" : {
8633 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008634 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008635 "column" : 8,
8636 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8637 }
8638 },
8639 {
8640 "op" : "add_header",
8641 "parameters" : [
8642 {
8643 "type" : "header",
8644 "value" : "int_egress_tstamp"
8645 }
8646 ],
8647 "source_info" : {
8648 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008649 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008650 "column" : 8,
8651 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8652 }
8653 },
8654 {
8655 "op" : "assign",
8656 "parameters" : [
8657 {
8658 "type" : "field",
8659 "value" : ["int_egress_tstamp", "egress_tstamp"]
8660 },
8661 {
8662 "type" : "expression",
8663 "value" : {
8664 "type" : "expression",
8665 "value" : {
8666 "op" : "&",
8667 "left" : {
8668 "type" : "expression",
8669 "value" : {
8670 "op" : "+",
8671 "left" : {
8672 "type" : "field",
8673 "value" : ["standard_metadata", "enq_timestamp"]
8674 },
8675 "right" : {
8676 "type" : "field",
8677 "value" : ["standard_metadata", "deq_timedelta"]
8678 }
8679 }
8680 },
8681 "right" : {
8682 "type" : "hexstr",
8683 "value" : "0xffffffff"
8684 }
8685 }
8686 }
8687 }
8688 ],
8689 "source_info" : {
8690 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008691 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008692 "column" : 8,
8693 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8694 }
8695 },
8696 {
8697 "op" : "assign",
8698 "parameters" : [
8699 {
8700 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008701 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008702 },
8703 {
8704 "type" : "expression",
8705 "value" : {
8706 "type" : "expression",
8707 "value" : {
8708 "op" : "&",
8709 "left" : {
8710 "type" : "expression",
8711 "value" : {
8712 "op" : "+",
8713 "left" : {
8714 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008715 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008716 },
8717 "right" : {
8718 "type" : "hexstr",
8719 "value" : "0x02"
8720 }
8721 }
8722 },
8723 "right" : {
8724 "type" : "hexstr",
8725 "value" : "0xff"
8726 }
8727 }
8728 }
8729 }
8730 ],
8731 "source_info" : {
8732 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008733 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008734 "column" : 33,
8735 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008736 }
8737 },
8738 {
8739 "op" : "assign",
8740 "parameters" : [
8741 {
8742 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008743 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008744 },
8745 {
8746 "type" : "expression",
8747 "value" : {
8748 "type" : "expression",
8749 "value" : {
8750 "op" : "&",
8751 "left" : {
8752 "type" : "expression",
8753 "value" : {
8754 "op" : "+",
8755 "left" : {
8756 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008757 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008758 },
8759 "right" : {
8760 "type" : "hexstr",
8761 "value" : "0x0008"
8762 }
8763 }
8764 },
8765 "right" : {
8766 "type" : "hexstr",
8767 "value" : "0xffff"
8768 }
8769 }
8770 }
8771 }
8772 ],
8773 "source_info" : {
8774 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008775 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008776 "column" : 33,
8777 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008778 }
8779 }
8780 ]
8781 },
8782 {
8783 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008784 "id" : 84,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008785 "runtime_data" : [],
8786 "primitives" : [
8787 {
8788 "op" : "add_header",
8789 "parameters" : [
8790 {
8791 "type" : "header",
8792 "value" : "int_egress_tx_util"
8793 }
8794 ],
8795 "source_info" : {
8796 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008797 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008798 "column" : 8,
8799 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8800 }
8801 },
8802 {
8803 "op" : "assign",
8804 "parameters" : [
8805 {
8806 "type" : "field",
8807 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8808 },
8809 {
8810 "type" : "hexstr",
8811 "value" : "0x00000000"
8812 }
8813 ],
8814 "source_info" : {
8815 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008816 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008817 "column" : 8,
8818 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8819 }
8820 },
8821 {
8822 "op" : "add_header",
8823 "parameters" : [
8824 {
8825 "type" : "header",
8826 "value" : "int_q_congestion"
8827 }
8828 ],
8829 "source_info" : {
8830 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008831 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008832 "column" : 8,
8833 "source_fragment" : "hdr.int_q_congestion.setValid()"
8834 }
8835 },
8836 {
8837 "op" : "assign",
8838 "parameters" : [
8839 {
8840 "type" : "field",
8841 "value" : ["int_q_congestion", "q_id"]
8842 },
8843 {
8844 "type" : "hexstr",
8845 "value" : "0x00"
8846 }
8847 ],
8848 "source_info" : {
8849 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008850 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008851 "column" : 8,
8852 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8853 }
8854 },
8855 {
8856 "op" : "assign",
8857 "parameters" : [
8858 {
8859 "type" : "field",
8860 "value" : ["int_q_congestion", "q_congestion"]
8861 },
8862 {
8863 "type" : "hexstr",
8864 "value" : "0x000000"
8865 }
8866 ],
8867 "source_info" : {
8868 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008869 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008870 "column" : 8,
8871 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8872 }
8873 },
8874 {
8875 "op" : "add_header",
8876 "parameters" : [
8877 {
8878 "type" : "header",
8879 "value" : "int_egress_tstamp"
8880 }
8881 ],
8882 "source_info" : {
8883 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008884 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008885 "column" : 8,
8886 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8887 }
8888 },
8889 {
8890 "op" : "assign",
8891 "parameters" : [
8892 {
8893 "type" : "field",
8894 "value" : ["int_egress_tstamp", "egress_tstamp"]
8895 },
8896 {
8897 "type" : "expression",
8898 "value" : {
8899 "type" : "expression",
8900 "value" : {
8901 "op" : "&",
8902 "left" : {
8903 "type" : "expression",
8904 "value" : {
8905 "op" : "+",
8906 "left" : {
8907 "type" : "field",
8908 "value" : ["standard_metadata", "enq_timestamp"]
8909 },
8910 "right" : {
8911 "type" : "field",
8912 "value" : ["standard_metadata", "deq_timedelta"]
8913 }
8914 }
8915 },
8916 "right" : {
8917 "type" : "hexstr",
8918 "value" : "0xffffffff"
8919 }
8920 }
8921 }
8922 }
8923 ],
8924 "source_info" : {
8925 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008926 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008927 "column" : 8,
8928 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8929 }
8930 },
8931 {
8932 "op" : "assign",
8933 "parameters" : [
8934 {
8935 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008936 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008937 },
8938 {
8939 "type" : "expression",
8940 "value" : {
8941 "type" : "expression",
8942 "value" : {
8943 "op" : "&",
8944 "left" : {
8945 "type" : "expression",
8946 "value" : {
8947 "op" : "+",
8948 "left" : {
8949 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008950 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008951 },
8952 "right" : {
8953 "type" : "hexstr",
8954 "value" : "0x03"
8955 }
8956 }
8957 },
8958 "right" : {
8959 "type" : "hexstr",
8960 "value" : "0xff"
8961 }
8962 }
8963 }
8964 }
8965 ],
8966 "source_info" : {
8967 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008968 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008969 "column" : 33,
8970 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008971 }
8972 },
8973 {
8974 "op" : "assign",
8975 "parameters" : [
8976 {
8977 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008978 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008979 },
8980 {
8981 "type" : "expression",
8982 "value" : {
8983 "type" : "expression",
8984 "value" : {
8985 "op" : "&",
8986 "left" : {
8987 "type" : "expression",
8988 "value" : {
8989 "op" : "+",
8990 "left" : {
8991 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07008992 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008993 },
8994 "right" : {
8995 "type" : "hexstr",
8996 "value" : "0x000c"
8997 }
8998 }
8999 },
9000 "right" : {
9001 "type" : "hexstr",
9002 "value" : "0xffff"
9003 }
9004 }
9005 }
9006 }
9007 ],
9008 "source_info" : {
9009 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009010 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009011 "column" : 33,
9012 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009013 }
9014 }
9015 ]
9016 },
9017 {
9018 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009019 "id" : 85,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009020 "runtime_data" : [],
9021 "primitives" : [
9022 {
9023 "op" : "add_header",
9024 "parameters" : [
9025 {
9026 "type" : "header",
9027 "value" : "int_ingress_tstamp"
9028 }
9029 ],
9030 "source_info" : {
9031 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009032 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009033 "column" : 8,
9034 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9035 }
9036 },
9037 {
9038 "op" : "assign",
9039 "parameters" : [
9040 {
9041 "type" : "field",
9042 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9043 },
9044 {
9045 "type" : "field",
9046 "value" : ["standard_metadata", "enq_timestamp"]
9047 }
9048 ],
9049 "source_info" : {
9050 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009051 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009052 "column" : 8,
9053 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9054 }
9055 },
9056 {
9057 "op" : "assign",
9058 "parameters" : [
9059 {
9060 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009061 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009062 },
9063 {
9064 "type" : "expression",
9065 "value" : {
9066 "type" : "expression",
9067 "value" : {
9068 "op" : "&",
9069 "left" : {
9070 "type" : "expression",
9071 "value" : {
9072 "op" : "+",
9073 "left" : {
9074 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009075 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009076 },
9077 "right" : {
9078 "type" : "hexstr",
9079 "value" : "0x01"
9080 }
9081 }
9082 },
9083 "right" : {
9084 "type" : "hexstr",
9085 "value" : "0xff"
9086 }
9087 }
9088 }
9089 }
9090 ],
9091 "source_info" : {
9092 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009093 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009094 "column" : 33,
9095 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009096 }
9097 },
9098 {
9099 "op" : "assign",
9100 "parameters" : [
9101 {
9102 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009103 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009104 },
9105 {
9106 "type" : "expression",
9107 "value" : {
9108 "type" : "expression",
9109 "value" : {
9110 "op" : "&",
9111 "left" : {
9112 "type" : "expression",
9113 "value" : {
9114 "op" : "+",
9115 "left" : {
9116 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009117 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009118 },
9119 "right" : {
9120 "type" : "hexstr",
9121 "value" : "0x0004"
9122 }
9123 }
9124 },
9125 "right" : {
9126 "type" : "hexstr",
9127 "value" : "0xffff"
9128 }
9129 }
9130 }
9131 }
9132 ],
9133 "source_info" : {
9134 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009135 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009136 "column" : 33,
9137 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009138 }
9139 }
9140 ]
9141 },
9142 {
9143 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009144 "id" : 86,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009145 "runtime_data" : [],
9146 "primitives" : [
9147 {
9148 "op" : "add_header",
9149 "parameters" : [
9150 {
9151 "type" : "header",
9152 "value" : "int_egress_tx_util"
9153 }
9154 ],
9155 "source_info" : {
9156 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009157 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009158 "column" : 8,
9159 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9160 }
9161 },
9162 {
9163 "op" : "assign",
9164 "parameters" : [
9165 {
9166 "type" : "field",
9167 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9168 },
9169 {
9170 "type" : "hexstr",
9171 "value" : "0x00000000"
9172 }
9173 ],
9174 "source_info" : {
9175 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009176 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009177 "column" : 8,
9178 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9179 }
9180 },
9181 {
9182 "op" : "add_header",
9183 "parameters" : [
9184 {
9185 "type" : "header",
9186 "value" : "int_ingress_tstamp"
9187 }
9188 ],
9189 "source_info" : {
9190 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009191 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009192 "column" : 8,
9193 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9194 }
9195 },
9196 {
9197 "op" : "assign",
9198 "parameters" : [
9199 {
9200 "type" : "field",
9201 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9202 },
9203 {
9204 "type" : "field",
9205 "value" : ["standard_metadata", "enq_timestamp"]
9206 }
9207 ],
9208 "source_info" : {
9209 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009210 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009211 "column" : 8,
9212 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9213 }
9214 },
9215 {
9216 "op" : "assign",
9217 "parameters" : [
9218 {
9219 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009220 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009221 },
9222 {
9223 "type" : "expression",
9224 "value" : {
9225 "type" : "expression",
9226 "value" : {
9227 "op" : "&",
9228 "left" : {
9229 "type" : "expression",
9230 "value" : {
9231 "op" : "+",
9232 "left" : {
9233 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009234 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009235 },
9236 "right" : {
9237 "type" : "hexstr",
9238 "value" : "0x02"
9239 }
9240 }
9241 },
9242 "right" : {
9243 "type" : "hexstr",
9244 "value" : "0xff"
9245 }
9246 }
9247 }
9248 }
9249 ],
9250 "source_info" : {
9251 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009252 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009253 "column" : 33,
9254 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009255 }
9256 },
9257 {
9258 "op" : "assign",
9259 "parameters" : [
9260 {
9261 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009262 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009263 },
9264 {
9265 "type" : "expression",
9266 "value" : {
9267 "type" : "expression",
9268 "value" : {
9269 "op" : "&",
9270 "left" : {
9271 "type" : "expression",
9272 "value" : {
9273 "op" : "+",
9274 "left" : {
9275 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009276 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009277 },
9278 "right" : {
9279 "type" : "hexstr",
9280 "value" : "0x0008"
9281 }
9282 }
9283 },
9284 "right" : {
9285 "type" : "hexstr",
9286 "value" : "0xffff"
9287 }
9288 }
9289 }
9290 }
9291 ],
9292 "source_info" : {
9293 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009294 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009295 "column" : 33,
9296 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009297 }
9298 }
9299 ]
9300 },
9301 {
9302 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009303 "id" : 87,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009304 "runtime_data" : [],
9305 "primitives" : [
9306 {
9307 "op" : "add_header",
9308 "parameters" : [
9309 {
9310 "type" : "header",
9311 "value" : "int_q_congestion"
9312 }
9313 ],
9314 "source_info" : {
9315 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009316 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009317 "column" : 8,
9318 "source_fragment" : "hdr.int_q_congestion.setValid()"
9319 }
9320 },
9321 {
9322 "op" : "assign",
9323 "parameters" : [
9324 {
9325 "type" : "field",
9326 "value" : ["int_q_congestion", "q_id"]
9327 },
9328 {
9329 "type" : "hexstr",
9330 "value" : "0x00"
9331 }
9332 ],
9333 "source_info" : {
9334 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009335 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009336 "column" : 8,
9337 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9338 }
9339 },
9340 {
9341 "op" : "assign",
9342 "parameters" : [
9343 {
9344 "type" : "field",
9345 "value" : ["int_q_congestion", "q_congestion"]
9346 },
9347 {
9348 "type" : "hexstr",
9349 "value" : "0x000000"
9350 }
9351 ],
9352 "source_info" : {
9353 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009354 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009355 "column" : 8,
9356 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9357 }
9358 },
9359 {
9360 "op" : "add_header",
9361 "parameters" : [
9362 {
9363 "type" : "header",
9364 "value" : "int_ingress_tstamp"
9365 }
9366 ],
9367 "source_info" : {
9368 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009369 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009370 "column" : 8,
9371 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9372 }
9373 },
9374 {
9375 "op" : "assign",
9376 "parameters" : [
9377 {
9378 "type" : "field",
9379 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9380 },
9381 {
9382 "type" : "field",
9383 "value" : ["standard_metadata", "enq_timestamp"]
9384 }
9385 ],
9386 "source_info" : {
9387 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009388 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009389 "column" : 8,
9390 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9391 }
9392 },
9393 {
9394 "op" : "assign",
9395 "parameters" : [
9396 {
9397 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009398 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009399 },
9400 {
9401 "type" : "expression",
9402 "value" : {
9403 "type" : "expression",
9404 "value" : {
9405 "op" : "&",
9406 "left" : {
9407 "type" : "expression",
9408 "value" : {
9409 "op" : "+",
9410 "left" : {
9411 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009412 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009413 },
9414 "right" : {
9415 "type" : "hexstr",
9416 "value" : "0x02"
9417 }
9418 }
9419 },
9420 "right" : {
9421 "type" : "hexstr",
9422 "value" : "0xff"
9423 }
9424 }
9425 }
9426 }
9427 ],
9428 "source_info" : {
9429 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009430 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009431 "column" : 33,
9432 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009433 }
9434 },
9435 {
9436 "op" : "assign",
9437 "parameters" : [
9438 {
9439 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009440 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009441 },
9442 {
9443 "type" : "expression",
9444 "value" : {
9445 "type" : "expression",
9446 "value" : {
9447 "op" : "&",
9448 "left" : {
9449 "type" : "expression",
9450 "value" : {
9451 "op" : "+",
9452 "left" : {
9453 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009454 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009455 },
9456 "right" : {
9457 "type" : "hexstr",
9458 "value" : "0x0008"
9459 }
9460 }
9461 },
9462 "right" : {
9463 "type" : "hexstr",
9464 "value" : "0xffff"
9465 }
9466 }
9467 }
9468 }
9469 ],
9470 "source_info" : {
9471 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009472 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009473 "column" : 33,
9474 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009475 }
9476 }
9477 ]
9478 },
9479 {
9480 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009481 "id" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009482 "runtime_data" : [],
9483 "primitives" : [
9484 {
9485 "op" : "add_header",
9486 "parameters" : [
9487 {
9488 "type" : "header",
9489 "value" : "int_egress_tx_util"
9490 }
9491 ],
9492 "source_info" : {
9493 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009494 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009495 "column" : 8,
9496 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9497 }
9498 },
9499 {
9500 "op" : "assign",
9501 "parameters" : [
9502 {
9503 "type" : "field",
9504 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9505 },
9506 {
9507 "type" : "hexstr",
9508 "value" : "0x00000000"
9509 }
9510 ],
9511 "source_info" : {
9512 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009513 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009514 "column" : 8,
9515 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9516 }
9517 },
9518 {
9519 "op" : "add_header",
9520 "parameters" : [
9521 {
9522 "type" : "header",
9523 "value" : "int_q_congestion"
9524 }
9525 ],
9526 "source_info" : {
9527 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009528 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009529 "column" : 8,
9530 "source_fragment" : "hdr.int_q_congestion.setValid()"
9531 }
9532 },
9533 {
9534 "op" : "assign",
9535 "parameters" : [
9536 {
9537 "type" : "field",
9538 "value" : ["int_q_congestion", "q_id"]
9539 },
9540 {
9541 "type" : "hexstr",
9542 "value" : "0x00"
9543 }
9544 ],
9545 "source_info" : {
9546 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009547 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009548 "column" : 8,
9549 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9550 }
9551 },
9552 {
9553 "op" : "assign",
9554 "parameters" : [
9555 {
9556 "type" : "field",
9557 "value" : ["int_q_congestion", "q_congestion"]
9558 },
9559 {
9560 "type" : "hexstr",
9561 "value" : "0x000000"
9562 }
9563 ],
9564 "source_info" : {
9565 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009566 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009567 "column" : 8,
9568 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9569 }
9570 },
9571 {
9572 "op" : "add_header",
9573 "parameters" : [
9574 {
9575 "type" : "header",
9576 "value" : "int_ingress_tstamp"
9577 }
9578 ],
9579 "source_info" : {
9580 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009581 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009582 "column" : 8,
9583 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9584 }
9585 },
9586 {
9587 "op" : "assign",
9588 "parameters" : [
9589 {
9590 "type" : "field",
9591 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9592 },
9593 {
9594 "type" : "field",
9595 "value" : ["standard_metadata", "enq_timestamp"]
9596 }
9597 ],
9598 "source_info" : {
9599 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009600 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009601 "column" : 8,
9602 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9603 }
9604 },
9605 {
9606 "op" : "assign",
9607 "parameters" : [
9608 {
9609 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009610 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009611 },
9612 {
9613 "type" : "expression",
9614 "value" : {
9615 "type" : "expression",
9616 "value" : {
9617 "op" : "&",
9618 "left" : {
9619 "type" : "expression",
9620 "value" : {
9621 "op" : "+",
9622 "left" : {
9623 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009624 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009625 },
9626 "right" : {
9627 "type" : "hexstr",
9628 "value" : "0x03"
9629 }
9630 }
9631 },
9632 "right" : {
9633 "type" : "hexstr",
9634 "value" : "0xff"
9635 }
9636 }
9637 }
9638 }
9639 ],
9640 "source_info" : {
9641 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009642 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009643 "column" : 33,
9644 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009645 }
9646 },
9647 {
9648 "op" : "assign",
9649 "parameters" : [
9650 {
9651 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009652 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009653 },
9654 {
9655 "type" : "expression",
9656 "value" : {
9657 "type" : "expression",
9658 "value" : {
9659 "op" : "&",
9660 "left" : {
9661 "type" : "expression",
9662 "value" : {
9663 "op" : "+",
9664 "left" : {
9665 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009666 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009667 },
9668 "right" : {
9669 "type" : "hexstr",
9670 "value" : "0x000c"
9671 }
9672 }
9673 },
9674 "right" : {
9675 "type" : "hexstr",
9676 "value" : "0xffff"
9677 }
9678 }
9679 }
9680 }
9681 ],
9682 "source_info" : {
9683 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009684 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009685 "column" : 33,
9686 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009687 }
9688 }
9689 ]
9690 },
9691 {
9692 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009693 "id" : 89,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009694 "runtime_data" : [],
9695 "primitives" : [
9696 {
9697 "op" : "add_header",
9698 "parameters" : [
9699 {
9700 "type" : "header",
9701 "value" : "int_egress_tstamp"
9702 }
9703 ],
9704 "source_info" : {
9705 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009706 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009707 "column" : 8,
9708 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9709 }
9710 },
9711 {
9712 "op" : "assign",
9713 "parameters" : [
9714 {
9715 "type" : "field",
9716 "value" : ["int_egress_tstamp", "egress_tstamp"]
9717 },
9718 {
9719 "type" : "expression",
9720 "value" : {
9721 "type" : "expression",
9722 "value" : {
9723 "op" : "&",
9724 "left" : {
9725 "type" : "expression",
9726 "value" : {
9727 "op" : "+",
9728 "left" : {
9729 "type" : "field",
9730 "value" : ["standard_metadata", "enq_timestamp"]
9731 },
9732 "right" : {
9733 "type" : "field",
9734 "value" : ["standard_metadata", "deq_timedelta"]
9735 }
9736 }
9737 },
9738 "right" : {
9739 "type" : "hexstr",
9740 "value" : "0xffffffff"
9741 }
9742 }
9743 }
9744 }
9745 ],
9746 "source_info" : {
9747 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009748 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009749 "column" : 8,
9750 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9751 }
9752 },
9753 {
9754 "op" : "add_header",
9755 "parameters" : [
9756 {
9757 "type" : "header",
9758 "value" : "int_ingress_tstamp"
9759 }
9760 ],
9761 "source_info" : {
9762 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009763 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009764 "column" : 8,
9765 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9766 }
9767 },
9768 {
9769 "op" : "assign",
9770 "parameters" : [
9771 {
9772 "type" : "field",
9773 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9774 },
9775 {
9776 "type" : "field",
9777 "value" : ["standard_metadata", "enq_timestamp"]
9778 }
9779 ],
9780 "source_info" : {
9781 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009782 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009783 "column" : 8,
9784 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9785 }
9786 },
9787 {
9788 "op" : "assign",
9789 "parameters" : [
9790 {
9791 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009792 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009793 },
9794 {
9795 "type" : "expression",
9796 "value" : {
9797 "type" : "expression",
9798 "value" : {
9799 "op" : "&",
9800 "left" : {
9801 "type" : "expression",
9802 "value" : {
9803 "op" : "+",
9804 "left" : {
9805 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009806 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009807 },
9808 "right" : {
9809 "type" : "hexstr",
9810 "value" : "0x02"
9811 }
9812 }
9813 },
9814 "right" : {
9815 "type" : "hexstr",
9816 "value" : "0xff"
9817 }
9818 }
9819 }
9820 }
9821 ],
9822 "source_info" : {
9823 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009824 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009825 "column" : 33,
9826 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009827 }
9828 },
9829 {
9830 "op" : "assign",
9831 "parameters" : [
9832 {
9833 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009834 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009835 },
9836 {
9837 "type" : "expression",
9838 "value" : {
9839 "type" : "expression",
9840 "value" : {
9841 "op" : "&",
9842 "left" : {
9843 "type" : "expression",
9844 "value" : {
9845 "op" : "+",
9846 "left" : {
9847 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -07009848 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009849 },
9850 "right" : {
9851 "type" : "hexstr",
9852 "value" : "0x0008"
9853 }
9854 }
9855 },
9856 "right" : {
9857 "type" : "hexstr",
9858 "value" : "0xffff"
9859 }
9860 }
9861 }
9862 }
9863 ],
9864 "source_info" : {
9865 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009866 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009867 "column" : 33,
9868 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009869 }
9870 }
9871 ]
9872 },
9873 {
9874 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009875 "id" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009876 "runtime_data" : [],
9877 "primitives" : [
9878 {
9879 "op" : "add_header",
9880 "parameters" : [
9881 {
9882 "type" : "header",
9883 "value" : "int_egress_tx_util"
9884 }
9885 ],
9886 "source_info" : {
9887 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009888 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009889 "column" : 8,
9890 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9891 }
9892 },
9893 {
9894 "op" : "assign",
9895 "parameters" : [
9896 {
9897 "type" : "field",
9898 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9899 },
9900 {
9901 "type" : "hexstr",
9902 "value" : "0x00000000"
9903 }
9904 ],
9905 "source_info" : {
9906 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009907 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009908 "column" : 8,
9909 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9910 }
9911 },
9912 {
9913 "op" : "add_header",
9914 "parameters" : [
9915 {
9916 "type" : "header",
9917 "value" : "int_egress_tstamp"
9918 }
9919 ],
9920 "source_info" : {
9921 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009922 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009923 "column" : 8,
9924 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9925 }
9926 },
9927 {
9928 "op" : "assign",
9929 "parameters" : [
9930 {
9931 "type" : "field",
9932 "value" : ["int_egress_tstamp", "egress_tstamp"]
9933 },
9934 {
9935 "type" : "expression",
9936 "value" : {
9937 "type" : "expression",
9938 "value" : {
9939 "op" : "&",
9940 "left" : {
9941 "type" : "expression",
9942 "value" : {
9943 "op" : "+",
9944 "left" : {
9945 "type" : "field",
9946 "value" : ["standard_metadata", "enq_timestamp"]
9947 },
9948 "right" : {
9949 "type" : "field",
9950 "value" : ["standard_metadata", "deq_timedelta"]
9951 }
9952 }
9953 },
9954 "right" : {
9955 "type" : "hexstr",
9956 "value" : "0xffffffff"
9957 }
9958 }
9959 }
9960 }
9961 ],
9962 "source_info" : {
9963 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009964 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009965 "column" : 8,
9966 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9967 }
9968 },
9969 {
9970 "op" : "add_header",
9971 "parameters" : [
9972 {
9973 "type" : "header",
9974 "value" : "int_ingress_tstamp"
9975 }
9976 ],
9977 "source_info" : {
9978 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009979 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009980 "column" : 8,
9981 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9982 }
9983 },
9984 {
9985 "op" : "assign",
9986 "parameters" : [
9987 {
9988 "type" : "field",
9989 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9990 },
9991 {
9992 "type" : "field",
9993 "value" : ["standard_metadata", "enq_timestamp"]
9994 }
9995 ],
9996 "source_info" : {
9997 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009998 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009999 "column" : 8,
10000 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10001 }
10002 },
10003 {
10004 "op" : "assign",
10005 "parameters" : [
10006 {
10007 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010008 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010009 },
10010 {
10011 "type" : "expression",
10012 "value" : {
10013 "type" : "expression",
10014 "value" : {
10015 "op" : "&",
10016 "left" : {
10017 "type" : "expression",
10018 "value" : {
10019 "op" : "+",
10020 "left" : {
10021 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010022 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010023 },
10024 "right" : {
10025 "type" : "hexstr",
10026 "value" : "0x03"
10027 }
10028 }
10029 },
10030 "right" : {
10031 "type" : "hexstr",
10032 "value" : "0xff"
10033 }
10034 }
10035 }
10036 }
10037 ],
10038 "source_info" : {
10039 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010040 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010041 "column" : 33,
10042 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010043 }
10044 },
10045 {
10046 "op" : "assign",
10047 "parameters" : [
10048 {
10049 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010050 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010051 },
10052 {
10053 "type" : "expression",
10054 "value" : {
10055 "type" : "expression",
10056 "value" : {
10057 "op" : "&",
10058 "left" : {
10059 "type" : "expression",
10060 "value" : {
10061 "op" : "+",
10062 "left" : {
10063 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010064 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010065 },
10066 "right" : {
10067 "type" : "hexstr",
10068 "value" : "0x000c"
10069 }
10070 }
10071 },
10072 "right" : {
10073 "type" : "hexstr",
10074 "value" : "0xffff"
10075 }
10076 }
10077 }
10078 }
10079 ],
10080 "source_info" : {
10081 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010082 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010083 "column" : 33,
10084 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010085 }
10086 }
10087 ]
10088 },
10089 {
10090 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010091 "id" : 91,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010092 "runtime_data" : [],
10093 "primitives" : [
10094 {
10095 "op" : "add_header",
10096 "parameters" : [
10097 {
10098 "type" : "header",
10099 "value" : "int_q_congestion"
10100 }
10101 ],
10102 "source_info" : {
10103 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010104 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010105 "column" : 8,
10106 "source_fragment" : "hdr.int_q_congestion.setValid()"
10107 }
10108 },
10109 {
10110 "op" : "assign",
10111 "parameters" : [
10112 {
10113 "type" : "field",
10114 "value" : ["int_q_congestion", "q_id"]
10115 },
10116 {
10117 "type" : "hexstr",
10118 "value" : "0x00"
10119 }
10120 ],
10121 "source_info" : {
10122 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010123 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010124 "column" : 8,
10125 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10126 }
10127 },
10128 {
10129 "op" : "assign",
10130 "parameters" : [
10131 {
10132 "type" : "field",
10133 "value" : ["int_q_congestion", "q_congestion"]
10134 },
10135 {
10136 "type" : "hexstr",
10137 "value" : "0x000000"
10138 }
10139 ],
10140 "source_info" : {
10141 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010142 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010143 "column" : 8,
10144 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10145 }
10146 },
10147 {
10148 "op" : "add_header",
10149 "parameters" : [
10150 {
10151 "type" : "header",
10152 "value" : "int_egress_tstamp"
10153 }
10154 ],
10155 "source_info" : {
10156 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010157 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010158 "column" : 8,
10159 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10160 }
10161 },
10162 {
10163 "op" : "assign",
10164 "parameters" : [
10165 {
10166 "type" : "field",
10167 "value" : ["int_egress_tstamp", "egress_tstamp"]
10168 },
10169 {
10170 "type" : "expression",
10171 "value" : {
10172 "type" : "expression",
10173 "value" : {
10174 "op" : "&",
10175 "left" : {
10176 "type" : "expression",
10177 "value" : {
10178 "op" : "+",
10179 "left" : {
10180 "type" : "field",
10181 "value" : ["standard_metadata", "enq_timestamp"]
10182 },
10183 "right" : {
10184 "type" : "field",
10185 "value" : ["standard_metadata", "deq_timedelta"]
10186 }
10187 }
10188 },
10189 "right" : {
10190 "type" : "hexstr",
10191 "value" : "0xffffffff"
10192 }
10193 }
10194 }
10195 }
10196 ],
10197 "source_info" : {
10198 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010199 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010200 "column" : 8,
10201 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10202 }
10203 },
10204 {
10205 "op" : "add_header",
10206 "parameters" : [
10207 {
10208 "type" : "header",
10209 "value" : "int_ingress_tstamp"
10210 }
10211 ],
10212 "source_info" : {
10213 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010214 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010215 "column" : 8,
10216 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10217 }
10218 },
10219 {
10220 "op" : "assign",
10221 "parameters" : [
10222 {
10223 "type" : "field",
10224 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10225 },
10226 {
10227 "type" : "field",
10228 "value" : ["standard_metadata", "enq_timestamp"]
10229 }
10230 ],
10231 "source_info" : {
10232 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010233 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010234 "column" : 8,
10235 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10236 }
10237 },
10238 {
10239 "op" : "assign",
10240 "parameters" : [
10241 {
10242 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010243 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010244 },
10245 {
10246 "type" : "expression",
10247 "value" : {
10248 "type" : "expression",
10249 "value" : {
10250 "op" : "&",
10251 "left" : {
10252 "type" : "expression",
10253 "value" : {
10254 "op" : "+",
10255 "left" : {
10256 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010257 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010258 },
10259 "right" : {
10260 "type" : "hexstr",
10261 "value" : "0x03"
10262 }
10263 }
10264 },
10265 "right" : {
10266 "type" : "hexstr",
10267 "value" : "0xff"
10268 }
10269 }
10270 }
10271 }
10272 ],
10273 "source_info" : {
10274 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010275 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010276 "column" : 33,
10277 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010278 }
10279 },
10280 {
10281 "op" : "assign",
10282 "parameters" : [
10283 {
10284 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010285 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010286 },
10287 {
10288 "type" : "expression",
10289 "value" : {
10290 "type" : "expression",
10291 "value" : {
10292 "op" : "&",
10293 "left" : {
10294 "type" : "expression",
10295 "value" : {
10296 "op" : "+",
10297 "left" : {
10298 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010299 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010300 },
10301 "right" : {
10302 "type" : "hexstr",
10303 "value" : "0x000c"
10304 }
10305 }
10306 },
10307 "right" : {
10308 "type" : "hexstr",
10309 "value" : "0xffff"
10310 }
10311 }
10312 }
10313 }
10314 ],
10315 "source_info" : {
10316 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010317 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010318 "column" : 33,
10319 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010320 }
10321 }
10322 ]
10323 },
10324 {
10325 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010326 "id" : 92,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010327 "runtime_data" : [],
10328 "primitives" : [
10329 {
10330 "op" : "add_header",
10331 "parameters" : [
10332 {
10333 "type" : "header",
10334 "value" : "int_egress_tx_util"
10335 }
10336 ],
10337 "source_info" : {
10338 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010339 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010340 "column" : 8,
10341 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10342 }
10343 },
10344 {
10345 "op" : "assign",
10346 "parameters" : [
10347 {
10348 "type" : "field",
10349 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10350 },
10351 {
10352 "type" : "hexstr",
10353 "value" : "0x00000000"
10354 }
10355 ],
10356 "source_info" : {
10357 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010358 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010359 "column" : 8,
10360 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10361 }
10362 },
10363 {
10364 "op" : "add_header",
10365 "parameters" : [
10366 {
10367 "type" : "header",
10368 "value" : "int_q_congestion"
10369 }
10370 ],
10371 "source_info" : {
10372 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010373 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010374 "column" : 8,
10375 "source_fragment" : "hdr.int_q_congestion.setValid()"
10376 }
10377 },
10378 {
10379 "op" : "assign",
10380 "parameters" : [
10381 {
10382 "type" : "field",
10383 "value" : ["int_q_congestion", "q_id"]
10384 },
10385 {
10386 "type" : "hexstr",
10387 "value" : "0x00"
10388 }
10389 ],
10390 "source_info" : {
10391 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010392 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010393 "column" : 8,
10394 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10395 }
10396 },
10397 {
10398 "op" : "assign",
10399 "parameters" : [
10400 {
10401 "type" : "field",
10402 "value" : ["int_q_congestion", "q_congestion"]
10403 },
10404 {
10405 "type" : "hexstr",
10406 "value" : "0x000000"
10407 }
10408 ],
10409 "source_info" : {
10410 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010411 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010412 "column" : 8,
10413 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10414 }
10415 },
10416 {
10417 "op" : "add_header",
10418 "parameters" : [
10419 {
10420 "type" : "header",
10421 "value" : "int_egress_tstamp"
10422 }
10423 ],
10424 "source_info" : {
10425 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010426 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010427 "column" : 8,
10428 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10429 }
10430 },
10431 {
10432 "op" : "assign",
10433 "parameters" : [
10434 {
10435 "type" : "field",
10436 "value" : ["int_egress_tstamp", "egress_tstamp"]
10437 },
10438 {
10439 "type" : "expression",
10440 "value" : {
10441 "type" : "expression",
10442 "value" : {
10443 "op" : "&",
10444 "left" : {
10445 "type" : "expression",
10446 "value" : {
10447 "op" : "+",
10448 "left" : {
10449 "type" : "field",
10450 "value" : ["standard_metadata", "enq_timestamp"]
10451 },
10452 "right" : {
10453 "type" : "field",
10454 "value" : ["standard_metadata", "deq_timedelta"]
10455 }
10456 }
10457 },
10458 "right" : {
10459 "type" : "hexstr",
10460 "value" : "0xffffffff"
10461 }
10462 }
10463 }
10464 }
10465 ],
10466 "source_info" : {
10467 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010468 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010469 "column" : 8,
10470 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10471 }
10472 },
10473 {
10474 "op" : "add_header",
10475 "parameters" : [
10476 {
10477 "type" : "header",
10478 "value" : "int_ingress_tstamp"
10479 }
10480 ],
10481 "source_info" : {
10482 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010483 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010484 "column" : 8,
10485 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10486 }
10487 },
10488 {
10489 "op" : "assign",
10490 "parameters" : [
10491 {
10492 "type" : "field",
10493 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10494 },
10495 {
10496 "type" : "field",
10497 "value" : ["standard_metadata", "enq_timestamp"]
10498 }
10499 ],
10500 "source_info" : {
10501 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010502 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010503 "column" : 8,
10504 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10505 }
10506 },
10507 {
10508 "op" : "assign",
10509 "parameters" : [
10510 {
10511 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010512 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010513 },
10514 {
10515 "type" : "expression",
10516 "value" : {
10517 "type" : "expression",
10518 "value" : {
10519 "op" : "&",
10520 "left" : {
10521 "type" : "expression",
10522 "value" : {
10523 "op" : "+",
10524 "left" : {
10525 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010526 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010527 },
10528 "right" : {
10529 "type" : "hexstr",
10530 "value" : "0x04"
10531 }
10532 }
10533 },
10534 "right" : {
10535 "type" : "hexstr",
10536 "value" : "0xff"
10537 }
10538 }
10539 }
10540 }
10541 ],
10542 "source_info" : {
10543 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010544 "line" : 115,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010545 "column" : 33,
10546 "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010547 }
10548 },
10549 {
10550 "op" : "assign",
10551 "parameters" : [
10552 {
10553 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010554 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010555 },
10556 {
10557 "type" : "expression",
10558 "value" : {
10559 "type" : "expression",
10560 "value" : {
10561 "op" : "&",
10562 "left" : {
10563 "type" : "expression",
10564 "value" : {
10565 "op" : "+",
10566 "left" : {
10567 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010568 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010569 },
10570 "right" : {
10571 "type" : "hexstr",
10572 "value" : "0x0010"
10573 }
10574 }
10575 },
10576 "right" : {
10577 "type" : "hexstr",
10578 "value" : "0xffff"
10579 }
10580 }
10581 }
10582 }
10583 ],
10584 "source_info" : {
10585 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010586 "line" : 116,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010587 "column" : 33,
10588 "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010589 }
10590 }
10591 ]
10592 },
10593 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010594 "name" : "FabricEgress.egress_next.pop_mpls_if_present",
10595 "id" : 93,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010596 "runtime_data" : [],
10597 "primitives" : [
10598 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010599 "op" : "remove_header",
10600 "parameters" : [
10601 {
10602 "type" : "header",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010603 "value" : "mpls"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010604 }
10605 ],
10606 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010607 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010608 "line" : 252,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010609 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010610 "source_fragment" : "hdr.mpls.setInvalid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010611 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010612 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010613 {
10614 "op" : "assign",
10615 "parameters" : [
10616 {
10617 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010618 "value" : ["scalars", "fabric_metadata_t._eth_type0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010619 },
10620 {
10621 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010622 "value" : ["scalars", "fabric_metadata_t._ip_eth_type1"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010623 }
10624 ],
10625 "source_info" : {
10626 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010627 "line" : 254,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010628 "column" : 33,
10629 "source_fragment" : "= fabric_metadata.ip_eth_type; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010630 }
10631 }
10632 ]
10633 },
10634 {
10635 "name" : "FabricEgress.egress_next.set_mpls",
10636 "id" : 94,
10637 "runtime_data" : [],
10638 "primitives" : [
10639 {
10640 "op" : "add_header",
10641 "parameters" : [
10642 {
10643 "type" : "header",
10644 "value" : "mpls"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010645 }
10646 ],
10647 "source_info" : {
10648 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010649 "line" : 259,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010650 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010651 "source_fragment" : "hdr.mpls.setValid()"
10652 }
10653 },
10654 {
10655 "op" : "assign",
10656 "parameters" : [
10657 {
10658 "type" : "field",
10659 "value" : ["mpls", "label"]
10660 },
10661 {
10662 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010663 "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010664 }
10665 ],
10666 "source_info" : {
10667 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010668 "line" : 260,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010669 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010670 "source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010671 }
10672 },
10673 {
10674 "op" : "assign",
10675 "parameters" : [
10676 {
10677 "type" : "field",
10678 "value" : ["mpls", "tc"]
10679 },
10680 {
10681 "type" : "hexstr",
10682 "value" : "0x00"
10683 }
10684 ],
10685 "source_info" : {
10686 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010687 "line" : 261,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010688 "column" : 8,
10689 "source_fragment" : "hdr.mpls.tc = 3w0"
10690 }
10691 },
10692 {
10693 "op" : "assign",
10694 "parameters" : [
10695 {
10696 "type" : "field",
10697 "value" : ["mpls", "bos"]
10698 },
10699 {
10700 "type" : "hexstr",
10701 "value" : "0x01"
10702 }
10703 ],
10704 "source_info" : {
10705 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010706 "line" : 262,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010707 "column" : 8,
10708 "source_fragment" : "hdr.mpls.bos = 1w1"
10709 }
10710 },
10711 {
10712 "op" : "assign",
10713 "parameters" : [
10714 {
10715 "type" : "field",
10716 "value" : ["mpls", "ttl"]
10717 },
10718 {
10719 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010720 "value" : ["scalars", "fabric_metadata_t._mpls_ttl6"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010721 }
10722 ],
10723 "source_info" : {
10724 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010725 "line" : 263,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010726 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010727 "source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push. ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010728 }
10729 },
10730 {
10731 "op" : "assign",
10732 "parameters" : [
10733 {
10734 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010735 "value" : ["scalars", "fabric_metadata_t._eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010736 },
10737 {
10738 "type" : "hexstr",
10739 "value" : "0x8847"
10740 }
10741 ],
10742 "source_info" : {
10743 "filename" : "include/control/../define.p4",
10744 "line" : 108,
10745 "column" : 31,
10746 "source_fragment" : "0x8847; ..."
10747 }
10748 }
10749 ]
10750 },
10751 {
10752 "name" : "FabricEgress.egress_next.push_vlan",
10753 "id" : 95,
10754 "runtime_data" : [],
10755 "primitives" : [
10756 {
10757 "op" : "add_header",
10758 "parameters" : [
10759 {
10760 "type" : "header",
10761 "value" : "vlan_tag"
10762 }
10763 ],
10764 "source_info" : {
10765 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010766 "line" : 271,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010767 "column" : 8,
10768 "source_fragment" : "hdr.vlan_tag.setValid()"
10769 }
10770 },
10771 {
10772 "op" : "assign",
10773 "parameters" : [
10774 {
10775 "type" : "field",
10776 "value" : ["vlan_tag", "cfi"]
10777 },
10778 {
10779 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010780 "value" : ["scalars", "fabric_metadata_t._vlan_cfi4"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010781 }
10782 ],
10783 "source_info" : {
10784 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010785 "line" : 272,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010786 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010787 "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010788 }
10789 },
10790 {
10791 "op" : "assign",
10792 "parameters" : [
10793 {
10794 "type" : "field",
10795 "value" : ["vlan_tag", "pri"]
10796 },
10797 {
10798 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010799 "value" : ["scalars", "fabric_metadata_t._vlan_pri3"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010800 }
10801 ],
10802 "source_info" : {
10803 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010804 "line" : 273,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010805 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010806 "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010807 }
10808 },
10809 {
10810 "op" : "assign",
10811 "parameters" : [
10812 {
10813 "type" : "field",
10814 "value" : ["vlan_tag", "eth_type"]
10815 },
10816 {
10817 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010818 "value" : ["scalars", "fabric_metadata_t._eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010819 }
10820 ],
10821 "source_info" : {
10822 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010823 "line" : 274,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010824 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010825 "source_fragment" : "hdr.vlan_tag.eth_type = fabric_metadata.eth_type; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010826 }
10827 },
10828 {
10829 "op" : "assign",
10830 "parameters" : [
10831 {
10832 "type" : "field",
10833 "value" : ["vlan_tag", "vlan_id"]
10834 },
10835 {
10836 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010837 "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010838 }
10839 ],
10840 "source_info" : {
10841 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010842 "line" : 275,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010843 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010844 "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010845 }
10846 },
10847 {
10848 "op" : "assign",
10849 "parameters" : [
10850 {
10851 "type" : "field",
10852 "value" : ["ethernet", "eth_type"]
10853 },
10854 {
10855 "type" : "hexstr",
10856 "value" : "0x8100"
10857 }
10858 ],
10859 "source_info" : {
10860 "filename" : "include/control/../define.p4",
10861 "line" : 107,
10862 "column" : 31,
10863 "source_fragment" : "0x8100; ..."
10864 }
10865 }
10866 ]
10867 },
10868 {
10869 "name" : "FabricEgress.egress_next.pop_vlan",
10870 "id" : 96,
10871 "runtime_data" : [],
10872 "primitives" : [
10873 {
10874 "op" : "assign",
10875 "parameters" : [
10876 {
10877 "type" : "field",
10878 "value" : ["ethernet", "eth_type"]
10879 },
10880 {
10881 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010882 "value" : ["scalars", "fabric_metadata_t._eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010883 }
10884 ],
10885 "source_info" : {
10886 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010887 "line" : 286,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010888 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010889 "source_fragment" : "hdr.ethernet.eth_type = fabric_metadata.eth_type; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010890 }
10891 },
10892 {
10893 "op" : "remove_header",
10894 "parameters" : [
10895 {
10896 "type" : "header",
10897 "value" : "vlan_tag"
10898 }
10899 ],
10900 "source_info" : {
10901 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070010902 "line" : 287,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010903 "column" : 8,
10904 "source_fragment" : "hdr.vlan_tag.setInvalid()"
10905 }
10906 }
10907 ]
10908 },
10909 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010910 "name" : "act_19",
10911 "id" : 97,
10912 "runtime_data" : [],
10913 "primitives" : [
10914 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010915 "op" : "exit",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010916 "parameters" : [],
10917 "source_info" : {
10918 "filename" : "include/control/packetio.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010919 "line" : 41,
10920 "column" : 12,
10921 "source_fragment" : "exit"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010922 }
10923 }
10924 ]
10925 },
10926 {
10927 "name" : "act_20",
10928 "id" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010929 "runtime_data" : [],
10930 "primitives" : [
10931 {
10932 "op" : "add_header",
10933 "parameters" : [
10934 {
10935 "type" : "header",
10936 "value" : "packet_in"
10937 }
10938 ],
10939 "source_info" : {
10940 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010941 "line" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010942 "column" : 12,
10943 "source_fragment" : "hdr.packet_in.setValid()"
10944 }
10945 },
10946 {
10947 "op" : "assign",
10948 "parameters" : [
10949 {
10950 "type" : "field",
10951 "value" : ["packet_in", "ingress_port"]
10952 },
10953 {
10954 "type" : "field",
10955 "value" : ["standard_metadata", "ingress_port"]
10956 }
10957 ],
10958 "source_info" : {
10959 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010960 "line" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010961 "column" : 12,
10962 "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
10963 }
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010964 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010965 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010966 "op" : "exit",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010967 "parameters" : [],
10968 "source_info" : {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010969 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010970 "line" : 47,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010971 "column" : 12,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010972 "source_fragment" : "exit"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010973 }
10974 }
10975 ]
10976 },
10977 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010978 "name" : "act_21",
10979 "id" : 99,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010980 "runtime_data" : [],
10981 "primitives" : [
10982 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010983 "op" : "mark_to_drop",
10984 "parameters" : [
10985 {
10986 "type" : "header",
10987 "value" : "standard_metadata"
10988 }
10989 ],
10990 "source_info" : {
10991 "filename" : "include/control/next.p4",
10992 "line" : 308,
10993 "column" : 12,
10994 "source_fragment" : "mark_to_drop(standard_metadata)"
10995 }
10996 }
10997 ]
10998 },
10999 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011000 "name" : "act_22",
11001 "id" : 100,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011002 "runtime_data" : [],
11003 "primitives" : [
11004 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011005 "op" : "assign",
11006 "parameters" : [
11007 {
11008 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011009 "value" : ["scalars", "egress_next_tmp"]
11010 },
11011 {
11012 "type" : "expression",
11013 "value" : {
11014 "type" : "expression",
11015 "value" : {
11016 "op" : "b2d",
11017 "left" : null,
11018 "right" : {
11019 "type" : "bool",
11020 "value" : true
11021 }
11022 }
11023 }
11024 }
11025 ]
11026 }
11027 ]
11028 },
11029 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011030 "name" : "act_23",
11031 "id" : 101,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011032 "runtime_data" : [],
11033 "primitives" : [
11034 {
11035 "op" : "assign",
11036 "parameters" : [
11037 {
11038 "type" : "field",
11039 "value" : ["scalars", "egress_next_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011040 },
11041 {
11042 "type" : "expression",
11043 "value" : {
11044 "type" : "expression",
11045 "value" : {
11046 "op" : "b2d",
11047 "left" : null,
11048 "right" : {
11049 "type" : "bool",
11050 "value" : false
11051 }
11052 }
11053 }
11054 }
11055 ]
11056 }
11057 ]
11058 },
11059 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011060 "name" : "act_24",
11061 "id" : 102,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011062 "runtime_data" : [],
11063 "primitives" : [
11064 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011065 "op" : "mark_to_drop",
11066 "parameters" : [
11067 {
11068 "type" : "header",
11069 "value" : "standard_metadata"
11070 }
11071 ],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011072 "source_info" : {
11073 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070011074 "line" : 327,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011075 "column" : 35,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011076 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011077 }
11078 }
11079 ]
11080 },
11081 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011082 "name" : "act_25",
11083 "id" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011084 "runtime_data" : [],
11085 "primitives" : [
11086 {
11087 "op" : "assign",
11088 "parameters" : [
11089 {
11090 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011091 "value" : ["mpls", "ttl"]
11092 },
11093 {
11094 "type" : "expression",
11095 "value" : {
11096 "type" : "expression",
11097 "value" : {
11098 "op" : "&",
11099 "left" : {
11100 "type" : "expression",
11101 "value" : {
11102 "op" : "+",
11103 "left" : {
11104 "type" : "field",
11105 "value" : ["mpls", "ttl"]
11106 },
11107 "right" : {
11108 "type" : "hexstr",
11109 "value" : "0xff"
11110 }
11111 }
11112 },
11113 "right" : {
11114 "type" : "hexstr",
11115 "value" : "0xff"
11116 }
11117 }
11118 }
11119 }
11120 ],
11121 "source_info" : {
11122 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070011123 "line" : 326,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011124 "column" : 12,
11125 "source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
11126 }
11127 }
11128 ]
11129 },
11130 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011131 "name" : "act_26",
11132 "id" : 104,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011133 "runtime_data" : [],
11134 "primitives" : [
11135 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011136 "op" : "mark_to_drop",
11137 "parameters" : [
11138 {
11139 "type" : "header",
11140 "value" : "standard_metadata"
11141 }
11142 ],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011143 "source_info" : {
11144 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070011145 "line" : 331,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011146 "column" : 39,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011147 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011148 }
11149 }
11150 ]
11151 },
11152 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011153 "name" : "act_27",
11154 "id" : 105,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011155 "runtime_data" : [],
11156 "primitives" : [
11157 {
11158 "op" : "assign",
11159 "parameters" : [
11160 {
11161 "type" : "field",
11162 "value" : ["ipv4", "ttl"]
11163 },
11164 {
11165 "type" : "expression",
11166 "value" : {
11167 "type" : "expression",
11168 "value" : {
11169 "op" : "&",
11170 "left" : {
11171 "type" : "expression",
11172 "value" : {
11173 "op" : "+",
11174 "left" : {
11175 "type" : "field",
11176 "value" : ["ipv4", "ttl"]
11177 },
11178 "right" : {
11179 "type" : "hexstr",
11180 "value" : "0xff"
11181 }
11182 }
11183 },
11184 "right" : {
11185 "type" : "hexstr",
11186 "value" : "0xff"
11187 }
11188 }
11189 }
11190 }
11191 ],
11192 "source_info" : {
11193 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070011194 "line" : 330,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011195 "column" : 16,
11196 "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
11197 }
11198 }
11199 ]
11200 },
11201 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011202 "name" : "act_28",
11203 "id" : 106,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011204 "runtime_data" : [],
11205 "primitives" : [
11206 {
11207 "op" : "assign",
11208 "parameters" : [
11209 {
11210 "type" : "field",
11211 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
11212 },
11213 {
11214 "type" : "expression",
11215 "value" : {
11216 "type" : "expression",
11217 "value" : {
11218 "op" : "b2d",
11219 "left" : null,
11220 "right" : {
11221 "type" : "bool",
11222 "value" : false
11223 }
11224 }
11225 }
11226 }
11227 ]
11228 }
11229 ]
11230 },
11231 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011232 "name" : "act_29",
11233 "id" : 107,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011234 "runtime_data" : [],
11235 "primitives" : [
11236 {
11237 "op" : "assign",
11238 "parameters" : [
11239 {
11240 "type" : "field",
11241 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011242 },
11243 {
11244 "type" : "expression",
11245 "value" : {
11246 "type" : "expression",
11247 "value" : {
11248 "op" : "b2d",
11249 "left" : null,
11250 "right" : {
11251 "type" : "bool",
11252 "value" : true
11253 }
11254 }
11255 }
11256 }
11257 ],
11258 "source_info" : {
11259 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011260 "line" : 420,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011261 "column" : 12,
11262 "source_fragment" : "return"
11263 }
11264 }
11265 ]
11266 },
11267 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011268 "name" : "act_30",
11269 "id" : 108,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011270 "runtime_data" : [],
11271 "primitives" : [
11272 {
11273 "op" : "assign",
11274 "parameters" : [
11275 {
11276 "type" : "field",
11277 "value" : ["ipv4", "total_len"]
11278 },
11279 {
11280 "type" : "expression",
11281 "value" : {
11282 "type" : "expression",
11283 "value" : {
11284 "op" : "&",
11285 "left" : {
11286 "type" : "expression",
11287 "value" : {
11288 "op" : "+",
11289 "left" : {
11290 "type" : "field",
11291 "value" : ["ipv4", "total_len"]
11292 },
11293 "right" : {
11294 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011295 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011296 }
11297 }
11298 },
11299 "right" : {
11300 "type" : "hexstr",
11301 "value" : "0xffff"
11302 }
11303 }
11304 }
11305 }
11306 ],
11307 "source_info" : {
11308 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011309 "line" : 428,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011310 "column" : 12,
11311 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + fmeta.int_meta.new_bytes"
11312 }
11313 }
11314 ]
11315 },
11316 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011317 "name" : "act_31",
11318 "id" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011319 "runtime_data" : [],
11320 "primitives" : [
11321 {
11322 "op" : "assign",
11323 "parameters" : [
11324 {
11325 "type" : "field",
11326 "value" : ["int_header", "total_hop_cnt"]
11327 },
11328 {
11329 "type" : "expression",
11330 "value" : {
11331 "type" : "expression",
11332 "value" : {
11333 "op" : "&",
11334 "left" : {
11335 "type" : "expression",
11336 "value" : {
11337 "op" : "+",
11338 "left" : {
11339 "type" : "field",
11340 "value" : ["int_header", "total_hop_cnt"]
11341 },
11342 "right" : {
11343 "type" : "hexstr",
11344 "value" : "0x01"
11345 }
11346 }
11347 },
11348 "right" : {
11349 "type" : "hexstr",
11350 "value" : "0xff"
11351 }
11352 }
11353 }
11354 }
11355 ],
11356 "source_info" : {
11357 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011358 "line" : 425,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011359 "column" : 8,
11360 "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
11361 }
11362 }
11363 ]
11364 },
11365 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011366 "name" : "act_32",
11367 "id" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011368 "runtime_data" : [],
11369 "primitives" : [
11370 {
11371 "op" : "assign",
11372 "parameters" : [
11373 {
11374 "type" : "field",
11375 "value" : ["udp", "len"]
11376 },
11377 {
11378 "type" : "expression",
11379 "value" : {
11380 "type" : "expression",
11381 "value" : {
11382 "op" : "&",
11383 "left" : {
11384 "type" : "expression",
11385 "value" : {
11386 "op" : "+",
11387 "left" : {
11388 "type" : "field",
11389 "value" : ["udp", "len"]
11390 },
11391 "right" : {
11392 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011393 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes26"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011394 }
11395 }
11396 },
11397 "right" : {
11398 "type" : "hexstr",
11399 "value" : "0xffff"
11400 }
11401 }
11402 }
11403 }
11404 ],
11405 "source_info" : {
11406 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011407 "line" : 431,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011408 "column" : 12,
11409 "source_fragment" : "hdr.udp.len = hdr.udp.len + fmeta.int_meta.new_bytes"
11410 }
11411 }
11412 ]
11413 },
11414 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011415 "name" : "act_33",
11416 "id" : 111,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011417 "runtime_data" : [],
11418 "primitives" : [
11419 {
11420 "op" : "assign",
11421 "parameters" : [
11422 {
11423 "type" : "field",
11424 "value" : ["intl4_shim", "len_words"]
11425 },
11426 {
11427 "type" : "expression",
11428 "value" : {
11429 "type" : "expression",
11430 "value" : {
11431 "op" : "&",
11432 "left" : {
11433 "type" : "expression",
11434 "value" : {
11435 "op" : "+",
11436 "left" : {
11437 "type" : "field",
11438 "value" : ["intl4_shim", "len_words"]
11439 },
11440 "right" : {
11441 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070011442 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011443 }
11444 }
11445 },
11446 "right" : {
11447 "type" : "hexstr",
11448 "value" : "0xff"
11449 }
11450 }
11451 }
11452 }
11453 ],
11454 "source_info" : {
11455 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011456 "line" : 434,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011457 "column" : 12,
11458 "source_fragment" : "hdr.intl4_shim.len_words = hdr.intl4_shim.len_words + fmeta.int_meta.new_words"
11459 }
11460 }
11461 ]
11462 }
11463 ],
11464 "pipelines" : [
11465 {
11466 "name" : "ingress",
11467 "id" : 0,
11468 "source_info" : {
11469 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -070011470 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011471 "column" : 8,
11472 "source_fragment" : "FabricIngress"
11473 },
11474 "init_table" : "tbl_act",
11475 "tables" : [
11476 {
11477 "name" : "tbl_act",
11478 "id" : 0,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011479 "source_info" : {
11480 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -070011481 "line" : 62,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011482 "column" : 50,
11483 "source_fragment" : "hdr.gtpu_ipv4, hdr.gtpu_udp"
11484 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011485 "key" : [],
11486 "match_type" : "exact",
11487 "type" : "simple",
11488 "max_size" : 1024,
11489 "with_counters" : false,
11490 "support_timeout" : false,
11491 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011492 "action_ids" : [34],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011493 "actions" : ["act_0"],
11494 "base_default_next" : "node_3",
11495 "next_tables" : {
11496 "act_0" : "node_3"
11497 },
11498 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011499 "action_id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011500 "action_const" : true,
11501 "action_data" : [],
11502 "action_entry_const" : true
11503 }
11504 },
11505 {
11506 "name" : "tbl_act_0",
11507 "id" : 1,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011508 "source_info" : {
11509 "filename" : "include/spgw.p4",
11510 "line" : 30,
11511 "column" : 32,
11512 "source_fragment" : "return"
11513 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011514 "key" : [],
11515 "match_type" : "exact",
11516 "type" : "simple",
11517 "max_size" : 1024,
11518 "with_counters" : false,
11519 "support_timeout" : false,
11520 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011521 "action_ids" : [33],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011522 "actions" : ["act"],
11523 "base_default_next" : "node_5",
11524 "next_tables" : {
11525 "act" : "node_5"
11526 },
11527 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011528 "action_id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011529 "action_const" : true,
11530 "action_data" : [],
11531 "action_entry_const" : true
11532 }
11533 },
11534 {
11535 "name" : "tbl_act_1",
11536 "id" : 2,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011537 "source_info" : {
11538 "filename" : "include/spgw.p4",
11539 "line" : 31,
11540 "column" : 18,
11541 "source_fragment" : "= ipv4; ..."
11542 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011543 "key" : [],
11544 "match_type" : "exact",
11545 "type" : "simple",
11546 "max_size" : 1024,
11547 "with_counters" : false,
11548 "support_timeout" : false,
11549 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011550 "action_ids" : [37],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011551 "actions" : ["act_3"],
11552 "base_default_next" : "node_7",
11553 "next_tables" : {
11554 "act_3" : "node_7"
11555 },
11556 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011557 "action_id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011558 "action_const" : true,
11559 "action_data" : [],
11560 "action_entry_const" : true
11561 }
11562 },
11563 {
11564 "name" : "tbl_act_2",
11565 "id" : 3,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011566 "source_info" : {
11567 "filename" : "include/spgw.p4",
11568 "line" : 35,
11569 "column" : 16,
11570 "source_fragment" : "="
11571 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011572 "key" : [],
11573 "match_type" : "exact",
11574 "type" : "simple",
11575 "max_size" : 1024,
11576 "with_counters" : false,
11577 "support_timeout" : false,
11578 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011579 "action_ids" : [35],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011580 "actions" : ["act_1"],
11581 "base_default_next" : "node_10",
11582 "next_tables" : {
11583 "act_1" : "node_10"
11584 },
11585 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011586 "action_id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011587 "action_const" : true,
11588 "action_data" : [],
11589 "action_entry_const" : true
11590 }
11591 },
11592 {
11593 "name" : "tbl_act_3",
11594 "id" : 4,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011595 "source_info" : {
11596 "filename" : "include/spgw.p4",
11597 "line" : 37,
11598 "column" : 12,
11599 "source_fragment" : "udp.setInvalid()"
11600 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011601 "key" : [],
11602 "match_type" : "exact",
11603 "type" : "simple",
11604 "max_size" : 1024,
11605 "with_counters" : false,
11606 "support_timeout" : false,
11607 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011608 "action_ids" : [36],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011609 "actions" : ["act_2"],
11610 "base_default_next" : "node_10",
11611 "next_tables" : {
11612 "act_2" : "node_10"
11613 },
11614 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011615 "action_id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011616 "action_const" : true,
11617 "action_data" : [],
11618 "action_entry_const" : true
11619 }
11620 },
11621 {
11622 "name" : "tbl_act_4",
11623 "id" : 5,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011624 "source_info" : {
11625 "filename" : "include/control/packetio.p4",
11626 "line" : 25,
11627 "column" : 42,
11628 "source_fragment" : "= hdr.packet_out.egress_port; ..."
11629 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011630 "key" : [],
11631 "match_type" : "exact",
11632 "type" : "simple",
11633 "max_size" : 1024,
11634 "with_counters" : false,
11635 "support_timeout" : false,
11636 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011637 "action_ids" : [38],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011638 "actions" : ["act_4"],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011639 "base_default_next" : "node_12",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011640 "next_tables" : {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011641 "act_4" : "node_12"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011642 },
11643 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011644 "action_id" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011645 "action_const" : true,
11646 "action_data" : [],
11647 "action_entry_const" : true
11648 }
11649 },
11650 {
11651 "name" : "tbl_act_5",
11652 "id" : 6,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011653 "source_info" : {
11654 "filename" : "include/control/filtering.p4",
11655 "line" : 105,
11656 "column" : 37,
11657 "source_fragment" : "= hdr.vlan_tag.eth_type; ..."
11658 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011659 "key" : [],
11660 "match_type" : "exact",
11661 "type" : "simple",
11662 "max_size" : 1024,
11663 "with_counters" : false,
11664 "support_timeout" : false,
11665 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011666 "action_ids" : [39],
11667 "actions" : ["act_5"],
11668 "base_default_next" : "node_14",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011669 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011670 "act_5" : "node_14"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011671 },
11672 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011673 "action_id" : 39,
11674 "action_const" : true,
11675 "action_data" : [],
11676 "action_entry_const" : true
11677 }
11678 },
11679 {
11680 "name" : "tbl_act_6",
11681 "id" : 7,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011682 "source_info" : {
11683 "filename" : "include/control/filtering.p4",
11684 "line" : 115,
11685 "column" : 37,
11686 "source_fragment" : "="
11687 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011688 "key" : [],
11689 "match_type" : "exact",
11690 "type" : "simple",
11691 "max_size" : 1024,
11692 "with_counters" : false,
11693 "support_timeout" : false,
11694 "direct_meters" : null,
11695 "action_ids" : [40],
11696 "actions" : ["act_6"],
11697 "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
11698 "next_tables" : {
11699 "act_6" : "FabricIngress.filtering.ingress_port_vlan"
11700 },
11701 "default_entry" : {
11702 "action_id" : 40,
11703 "action_const" : true,
11704 "action_data" : [],
11705 "action_entry_const" : true
11706 }
11707 },
11708 {
11709 "name" : "FabricIngress.filtering.ingress_port_vlan",
11710 "id" : 8,
11711 "source_info" : {
11712 "filename" : "include/control/filtering.p4",
11713 "line" : 51,
11714 "column" : 10,
11715 "source_fragment" : "ingress_port_vlan"
11716 },
11717 "key" : [
11718 {
11719 "match_type" : "exact",
11720 "name" : "ig_port",
11721 "target" : ["standard_metadata", "ingress_port"],
11722 "mask" : null
11723 },
11724 {
11725 "match_type" : "exact",
11726 "name" : "vlan_is_valid",
11727 "target" : ["vlan_tag", "$valid$"],
11728 "mask" : null
11729 },
11730 {
11731 "match_type" : "ternary",
11732 "name" : "vlan_id",
11733 "target" : ["vlan_tag", "vlan_id"],
11734 "mask" : null
11735 }
11736 ],
11737 "match_type" : "ternary",
11738 "type" : "simple",
11739 "max_size" : 1024,
11740 "with_counters" : true,
11741 "support_timeout" : false,
11742 "direct_meters" : null,
11743 "action_ids" : [13, 14, 15],
11744 "actions" : ["FabricIngress.filtering.deny", "FabricIngress.filtering.permit", "FabricIngress.filtering.permit_with_internal_vlan"],
11745 "base_default_next" : "FabricIngress.filtering.fwd_classifier",
11746 "next_tables" : {
11747 "FabricIngress.filtering.deny" : "FabricIngress.filtering.fwd_classifier",
11748 "FabricIngress.filtering.permit" : "FabricIngress.filtering.fwd_classifier",
11749 "FabricIngress.filtering.permit_with_internal_vlan" : "FabricIngress.filtering.fwd_classifier"
11750 },
11751 "default_entry" : {
11752 "action_id" : 13,
11753 "action_const" : true,
11754 "action_data" : [],
11755 "action_entry_const" : true
11756 }
11757 },
11758 {
11759 "name" : "FabricIngress.filtering.fwd_classifier",
11760 "id" : 9,
11761 "source_info" : {
11762 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070011763 "line" : 87,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011764 "column" : 10,
11765 "source_fragment" : "fwd_classifier"
11766 },
11767 "key" : [
11768 {
11769 "match_type" : "exact",
11770 "name" : "ig_port",
11771 "target" : ["standard_metadata", "ingress_port"],
11772 "mask" : null
11773 },
11774 {
11775 "match_type" : "ternary",
11776 "name" : "eth_dst",
11777 "target" : ["ethernet", "dst_addr"],
11778 "mask" : null
11779 },
11780 {
11781 "match_type" : "exact",
11782 "name" : "eth_type",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080011783 "target" : ["scalars", "fabric_metadata_t._eth_type0"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011784 "mask" : null
11785 }
11786 ],
11787 "match_type" : "ternary",
11788 "type" : "simple",
11789 "max_size" : 1024,
11790 "with_counters" : true,
11791 "support_timeout" : false,
11792 "direct_meters" : null,
11793 "action_ids" : [16],
11794 "actions" : ["FabricIngress.filtering.set_forwarding_type"],
11795 "base_default_next" : "tbl_act_7",
11796 "next_tables" : {
11797 "FabricIngress.filtering.set_forwarding_type" : "tbl_act_7"
11798 },
11799 "default_entry" : {
11800 "action_id" : 16,
11801 "action_const" : true,
11802 "action_data" : ["0x0"],
11803 "action_entry_const" : true
11804 }
11805 },
11806 {
11807 "name" : "tbl_act_7",
11808 "id" : 10,
11809 "key" : [],
11810 "match_type" : "exact",
11811 "type" : "simple",
11812 "max_size" : 1024,
11813 "with_counters" : false,
11814 "support_timeout" : false,
11815 "direct_meters" : null,
11816 "action_ids" : [49],
11817 "actions" : ["act_15"],
11818 "base_default_next" : "node_19",
11819 "next_tables" : {
11820 "act_15" : "node_19"
11821 },
11822 "default_entry" : {
11823 "action_id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011824 "action_const" : true,
11825 "action_data" : [],
11826 "action_entry_const" : true
11827 }
11828 },
11829 {
11830 "name" : "FabricIngress.spgw_ingress.s1u_filter_table",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011831 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011832 "source_info" : {
11833 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011834 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011835 "column" : 10,
11836 "source_fragment" : "s1u_filter_table"
11837 },
11838 "key" : [
11839 {
11840 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011841 "name" : "gtp_ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011842 "target" : ["gtpu_ipv4", "dst_addr"],
11843 "mask" : null
11844 }
11845 ],
11846 "match_type" : "exact",
11847 "type" : "simple",
11848 "max_size" : 1024,
11849 "with_counters" : false,
11850 "support_timeout" : false,
11851 "direct_meters" : null,
11852 "action_ids" : [1],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011853 "actions" : ["nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011854 "base_default_next" : null,
11855 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011856 "__HIT__" : "tbl_act_8",
11857 "__MISS__" : "tbl_act_9"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011858 },
11859 "default_entry" : {
11860 "action_id" : 1,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011861 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011862 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011863 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011864 }
11865 },
11866 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011867 "name" : "tbl_act_8",
11868 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011869 "key" : [],
11870 "match_type" : "exact",
11871 "type" : "simple",
11872 "max_size" : 1024,
11873 "with_counters" : false,
11874 "support_timeout" : false,
11875 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011876 "action_ids" : [41],
11877 "actions" : ["act_7"],
11878 "base_default_next" : "node_23",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011879 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011880 "act_7" : "node_23"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011881 },
11882 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011883 "action_id" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011884 "action_const" : true,
11885 "action_data" : [],
11886 "action_entry_const" : true
11887 }
11888 },
11889 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011890 "name" : "tbl_act_9",
11891 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011892 "key" : [],
11893 "match_type" : "exact",
11894 "type" : "simple",
11895 "max_size" : 1024,
11896 "with_counters" : false,
11897 "support_timeout" : false,
11898 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011899 "action_ids" : [42],
11900 "actions" : ["act_8"],
11901 "base_default_next" : "node_23",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011902 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011903 "act_8" : "node_23"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011904 },
11905 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011906 "action_id" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011907 "action_const" : true,
11908 "action_data" : [],
11909 "action_entry_const" : true
11910 }
11911 },
11912 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011913 "name" : "tbl_act_10",
11914 "id" : 14,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011915 "source_info" : {
11916 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011917 "line" : 149,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011918 "column" : 16,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011919 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Cascone3032b872019-04-13 01:23:54 -070011920 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011921 "key" : [],
11922 "match_type" : "exact",
11923 "type" : "simple",
11924 "max_size" : 1024,
11925 "with_counters" : false,
11926 "support_timeout" : false,
11927 "direct_meters" : null,
11928 "action_ids" : [43],
11929 "actions" : ["act_9"],
11930 "base_default_next" : "tbl_act_11",
11931 "next_tables" : {
11932 "act_9" : "tbl_act_11"
11933 },
11934 "default_entry" : {
11935 "action_id" : 43,
11936 "action_const" : true,
11937 "action_data" : [],
11938 "action_entry_const" : true
11939 }
11940 },
11941 {
11942 "name" : "tbl_act_11",
11943 "id" : 15,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011944 "source_info" : {
11945 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011946 "line" : 151,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011947 "column" : 39,
11948 "source_fragment" : "="
11949 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011950 "key" : [],
11951 "match_type" : "exact",
11952 "type" : "simple",
11953 "max_size" : 1024,
11954 "with_counters" : false,
11955 "support_timeout" : false,
11956 "direct_meters" : null,
11957 "action_ids" : [44],
11958 "actions" : ["act_10"],
11959 "base_default_next" : "tbl_spgw_ingress_gtpu_decap",
11960 "next_tables" : {
11961 "act_10" : "tbl_spgw_ingress_gtpu_decap"
11962 },
11963 "default_entry" : {
11964 "action_id" : 44,
11965 "action_const" : true,
11966 "action_data" : [],
11967 "action_entry_const" : true
11968 }
11969 },
11970 {
11971 "name" : "tbl_spgw_ingress_gtpu_decap",
11972 "id" : 16,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011973 "source_info" : {
11974 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011975 "line" : 152,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011976 "column" : 12,
11977 "source_fragment" : "gtpu_decap()"
11978 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011979 "key" : [],
11980 "match_type" : "exact",
11981 "type" : "simple",
11982 "max_size" : 1024,
11983 "with_counters" : false,
11984 "support_timeout" : false,
11985 "direct_meters" : null,
11986 "action_ids" : [10],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011987 "actions" : ["FabricIngress.spgw_ingress.gtpu_decap"],
11988 "base_default_next" : "node_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011989 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011990 "FabricIngress.spgw_ingress.gtpu_decap" : "node_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011991 },
11992 "default_entry" : {
11993 "action_id" : 10,
11994 "action_const" : true,
11995 "action_data" : [],
11996 "action_entry_const" : true
11997 }
11998 },
11999 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012000 "name" : "FabricIngress.spgw_ingress.dl_sess_lookup",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012001 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012002 "source_info" : {
12003 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012004 "line" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012005 "column" : 10,
12006 "source_fragment" : "dl_sess_lookup"
12007 },
12008 "key" : [
12009 {
12010 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012011 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012012 "target" : ["ipv4", "dst_addr"],
12013 "mask" : null
12014 }
12015 ],
12016 "match_type" : "exact",
12017 "type" : "simple",
12018 "max_size" : 1024,
12019 "with_counters" : true,
12020 "support_timeout" : false,
12021 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012022 "action_ids" : [11, 0],
12023 "actions" : ["FabricIngress.spgw_ingress.set_dl_sess_info", "nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012024 "base_default_next" : null,
12025 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012026 "__HIT__" : "tbl_act_12",
12027 "__MISS__" : "tbl_act_13"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012028 },
12029 "default_entry" : {
12030 "action_id" : 0,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012031 "action_const" : true,
12032 "action_data" : [],
12033 "action_entry_const" : true
12034 }
12035 },
12036 {
12037 "name" : "tbl_act_12",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012038 "id" : 18,
12039 "key" : [],
12040 "match_type" : "exact",
12041 "type" : "simple",
12042 "max_size" : 1024,
12043 "with_counters" : false,
12044 "support_timeout" : false,
12045 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012046 "action_ids" : [45],
12047 "actions" : ["act_11"],
12048 "base_default_next" : "node_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012049 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012050 "act_11" : "node_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012051 },
12052 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012053 "action_id" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012054 "action_const" : true,
12055 "action_data" : [],
12056 "action_entry_const" : true
12057 }
12058 },
12059 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012060 "name" : "tbl_act_13",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012061 "id" : 19,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012062 "key" : [],
12063 "match_type" : "exact",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012064 "type" : "simple",
12065 "max_size" : 1024,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012066 "with_counters" : false,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012067 "support_timeout" : false,
12068 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012069 "action_ids" : [46],
12070 "actions" : ["act_12"],
12071 "base_default_next" : "node_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012072 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012073 "act_12" : "node_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012074 },
12075 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012076 "action_id" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012077 "action_const" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012078 "action_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012079 "action_entry_const" : true
12080 }
12081 },
12082 {
12083 "name" : "tbl_act_14",
12084 "id" : 20,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012085 "source_info" : {
12086 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012087 "line" : 154,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012088 "column" : 39,
12089 "source_fragment" : "="
12090 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012091 "key" : [],
12092 "match_type" : "exact",
12093 "type" : "simple",
12094 "max_size" : 1024,
12095 "with_counters" : false,
12096 "support_timeout" : false,
12097 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012098 "action_ids" : [47],
12099 "actions" : ["act_13"],
12100 "base_default_next" : "node_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012101 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012102 "act_13" : "node_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012103 },
12104 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012105 "action_id" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012106 "action_const" : true,
12107 "action_data" : [],
12108 "action_entry_const" : true
12109 }
12110 },
12111 {
12112 "name" : "tbl_act_15",
12113 "id" : 21,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012114 "source_info" : {
12115 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012116 "line" : 156,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012117 "column" : 39,
12118 "source_fragment" : "= SPGW_DIR_UNKNOWN; ..."
12119 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012120 "key" : [],
12121 "match_type" : "exact",
12122 "type" : "simple",
12123 "max_size" : 1024,
12124 "with_counters" : false,
12125 "support_timeout" : false,
12126 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012127 "action_ids" : [48],
12128 "actions" : ["act_14"],
12129 "base_default_next" : "node_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012130 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012131 "act_14" : "node_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012132 },
12133 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012134 "action_id" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012135 "action_const" : true,
12136 "action_data" : [],
12137 "action_entry_const" : true
12138 }
12139 },
12140 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012141 "name" : "tbl_act_16",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012142 "id" : 22,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012143 "source_info" : {
12144 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012145 "line" : 175,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012146 "column" : 34,
12147 "source_fragment" : "="
12148 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012149 "key" : [],
12150 "match_type" : "exact",
12151 "type" : "simple",
12152 "max_size" : 1024,
12153 "with_counters" : false,
12154 "support_timeout" : false,
12155 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012156 "action_ids" : [50],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012157 "actions" : ["act_16"],
12158 "base_default_next" : "node_35",
12159 "next_tables" : {
12160 "act_16" : "node_35"
12161 },
12162 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012163 "action_id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012164 "action_const" : true,
12165 "action_data" : [],
12166 "action_entry_const" : true
12167 }
12168 },
12169 {
12170 "name" : "FabricIngress.forwarding.bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012171 "id" : 23,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012172 "source_info" : {
12173 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012174 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012175 "column" : 10,
12176 "source_fragment" : "bridging"
12177 },
12178 "key" : [
12179 {
12180 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012181 "name" : "vlan_id",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080012182 "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012183 "mask" : null
12184 },
12185 {
12186 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012187 "name" : "eth_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012188 "target" : ["ethernet", "dst_addr"],
12189 "mask" : null
12190 }
12191 ],
12192 "match_type" : "ternary",
12193 "type" : "simple",
12194 "max_size" : 1024,
12195 "with_counters" : true,
12196 "support_timeout" : false,
12197 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012198 "action_ids" : [17, 3],
12199 "actions" : ["FabricIngress.forwarding.set_next_id_bridging", "nop"],
12200 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012201 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012202 "FabricIngress.forwarding.set_next_id_bridging" : "FabricIngress.acl.acl",
12203 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012204 },
12205 "default_entry" : {
12206 "action_id" : 3,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012207 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012208 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012209 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012210 }
12211 },
12212 {
12213 "name" : "FabricIngress.forwarding.mpls",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012214 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012215 "source_info" : {
12216 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012217 "line" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012218 "column" : 10,
12219 "source_fragment" : "mpls"
12220 },
12221 "key" : [
12222 {
12223 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012224 "name" : "mpls_label",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080012225 "target" : ["scalars", "fabric_metadata_t._mpls_label5"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012226 "mask" : null
12227 }
12228 ],
12229 "match_type" : "exact",
12230 "type" : "simple",
12231 "max_size" : 1024,
12232 "with_counters" : true,
12233 "support_timeout" : false,
12234 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012235 "action_ids" : [18, 4],
12236 "actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "nop"],
12237 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012238 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012239 "FabricIngress.forwarding.pop_mpls_and_next" : "FabricIngress.acl.acl",
12240 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012241 },
12242 "default_entry" : {
12243 "action_id" : 4,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012244 "action_const" : true,
12245 "action_data" : [],
12246 "action_entry_const" : true
12247 }
12248 },
12249 {
12250 "name" : "FabricIngress.forwarding.routing_v4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012251 "id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012252 "source_info" : {
12253 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012254 "line" : 101,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012255 "column" : 10,
12256 "source_fragment" : "routing_v4"
12257 },
12258 "key" : [
12259 {
12260 "match_type" : "lpm",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012261 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012262 "target" : ["ipv4", "dst_addr"],
12263 "mask" : null
12264 }
12265 ],
12266 "match_type" : "lpm",
12267 "type" : "simple",
12268 "max_size" : 1024,
12269 "with_counters" : true,
12270 "support_timeout" : false,
12271 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012272 "action_ids" : [19, 20, 5],
12273 "actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "nop"],
12274 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012275 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012276 "FabricIngress.forwarding.set_next_id_routing_v4" : "FabricIngress.acl.acl",
12277 "FabricIngress.forwarding.nop_routing_v4" : "FabricIngress.acl.acl",
12278 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012279 },
12280 "default_entry" : {
12281 "action_id" : 5,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012282 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012283 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012284 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012285 }
12286 },
12287 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012288 "name" : "FabricIngress.acl.acl",
12289 "id" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012290 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012291 "filename" : "include/control/acl.p4",
12292 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012293 "column" : 10,
12294 "source_fragment" : "acl"
12295 },
12296 "key" : [
12297 {
12298 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012299 "name" : "ig_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012300 "target" : ["standard_metadata", "ingress_port"],
12301 "mask" : null
12302 },
12303 {
12304 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012305 "name" : "ip_proto",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012306 "target" : ["scalars", "fabric_metadata_t._ip_proto13"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012307 "mask" : null
12308 },
12309 {
12310 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012311 "name" : "l4_sport",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012312 "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012313 "mask" : null
12314 },
12315 {
12316 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012317 "name" : "l4_dport",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012318 "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012319 "mask" : null
12320 },
12321 {
12322 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012323 "name" : "eth_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012324 "target" : ["ethernet", "dst_addr"],
12325 "mask" : null
12326 },
12327 {
12328 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012329 "name" : "eth_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012330 "target" : ["ethernet", "src_addr"],
12331 "mask" : null
12332 },
12333 {
12334 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012335 "name" : "vlan_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012336 "target" : ["vlan_tag", "vlan_id"],
12337 "mask" : null
12338 },
12339 {
12340 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012341 "name" : "eth_type",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080012342 "target" : ["scalars", "fabric_metadata_t._eth_type0"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012343 "mask" : null
12344 },
12345 {
12346 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012347 "name" : "ipv4_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012348 "target" : ["ipv4", "src_addr"],
12349 "mask" : null
12350 },
12351 {
12352 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012353 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012354 "target" : ["ipv4", "dst_addr"],
12355 "mask" : null
12356 },
12357 {
12358 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012359 "name" : "icmp_type",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012360 "target" : ["icmp", "icmp_type"],
12361 "mask" : null
12362 },
12363 {
12364 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012365 "name" : "icmp_code",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012366 "target" : ["icmp", "icmp_code"],
12367 "mask" : null
12368 }
12369 ],
12370 "match_type" : "ternary",
12371 "type" : "simple",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012372 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012373 "with_counters" : true,
12374 "support_timeout" : false,
12375 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012376 "action_ids" : [21, 22, 23, 24, 25],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012377 "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"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012378 "base_default_next" : "node_43",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012379 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012380 "FabricIngress.acl.set_next_id_acl" : "node_43",
12381 "FabricIngress.acl.punt_to_cpu" : "node_43",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012382 "FabricIngress.acl.set_clone_session_id" : "node_43",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012383 "FabricIngress.acl.drop" : "node_43",
12384 "FabricIngress.acl.nop_acl" : "node_43"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012385 },
12386 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012387 "action_id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012388 "action_const" : true,
12389 "action_data" : [],
12390 "action_entry_const" : true
12391 }
12392 },
12393 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012394 "name" : "FabricIngress.next.xconnect",
12395 "id" : 27,
12396 "source_info" : {
12397 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012398 "line" : 104,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012399 "column" : 10,
12400 "source_fragment" : "xconnect"
12401 },
12402 "key" : [
12403 {
12404 "match_type" : "exact",
12405 "name" : "ig_port",
12406 "target" : ["standard_metadata", "ingress_port"],
12407 "mask" : null
12408 },
12409 {
12410 "match_type" : "exact",
12411 "name" : "next_id",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080012412 "target" : ["scalars", "fabric_metadata_t._next_id10"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012413 "mask" : null
12414 }
12415 ],
12416 "match_type" : "exact",
12417 "type" : "simple",
12418 "max_size" : 1024,
12419 "with_counters" : true,
12420 "support_timeout" : false,
12421 "direct_meters" : null,
12422 "action_ids" : [27, 28, 7],
12423 "actions" : ["FabricIngress.next.output_xconnect", "FabricIngress.next.set_next_id_xconnect", "nop"],
12424 "base_default_next" : "FabricIngress.next.hashed",
12425 "next_tables" : {
12426 "FabricIngress.next.output_xconnect" : "FabricIngress.next.hashed",
12427 "FabricIngress.next.set_next_id_xconnect" : "FabricIngress.next.hashed",
12428 "nop" : "FabricIngress.next.hashed"
12429 },
12430 "default_entry" : {
12431 "action_id" : 7,
12432 "action_const" : true,
12433 "action_data" : [],
12434 "action_entry_const" : true
12435 }
12436 },
12437 {
12438 "name" : "FabricIngress.next.hashed",
12439 "id" : 28,
12440 "source_info" : {
12441 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012442 "line" : 184,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012443 "column" : 10,
12444 "source_fragment" : "hashed"
12445 },
12446 "key" : [
12447 {
12448 "match_type" : "exact",
12449 "name" : "next_id",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080012450 "target" : ["scalars", "fabric_metadata_t._next_id10"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012451 "mask" : null
12452 }
12453 ],
12454 "match_type" : "exact",
12455 "type" : "indirect_ws",
12456 "action_profile" : "FabricIngress.next.hashed_selector",
12457 "max_size" : 1024,
12458 "with_counters" : true,
12459 "support_timeout" : false,
12460 "direct_meters" : null,
12461 "action_ids" : [29, 30, 31, 8],
12462 "actions" : ["FabricIngress.next.output_hashed", "FabricIngress.next.routing_hashed", "FabricIngress.next.mpls_routing_hashed", "nop"],
12463 "base_default_next" : "FabricIngress.next.multicast",
12464 "next_tables" : {
12465 "FabricIngress.next.output_hashed" : "FabricIngress.next.multicast",
12466 "FabricIngress.next.routing_hashed" : "FabricIngress.next.multicast",
12467 "FabricIngress.next.mpls_routing_hashed" : "FabricIngress.next.multicast",
12468 "nop" : "FabricIngress.next.multicast"
12469 }
12470 },
12471 {
12472 "name" : "FabricIngress.next.multicast",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012473 "id" : 29,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012474 "source_info" : {
12475 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012476 "line" : 218,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012477 "column" : 10,
12478 "source_fragment" : "multicast"
12479 },
12480 "key" : [
12481 {
12482 "match_type" : "exact",
12483 "name" : "next_id",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080012484 "target" : ["scalars", "fabric_metadata_t._next_id10"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012485 "mask" : null
12486 }
12487 ],
12488 "match_type" : "exact",
12489 "type" : "simple",
12490 "max_size" : 1024,
12491 "with_counters" : true,
12492 "support_timeout" : false,
12493 "direct_meters" : null,
12494 "action_ids" : [32, 9],
12495 "actions" : ["FabricIngress.next.set_mcast_group_id", "nop"],
12496 "base_default_next" : "FabricIngress.next.next_vlan",
12497 "next_tables" : {
12498 "FabricIngress.next.set_mcast_group_id" : "FabricIngress.next.next_vlan",
12499 "nop" : "FabricIngress.next.next_vlan"
12500 },
12501 "default_entry" : {
12502 "action_id" : 9,
12503 "action_const" : true,
12504 "action_data" : [],
12505 "action_entry_const" : true
12506 }
12507 },
12508 {
12509 "name" : "FabricIngress.next.next_vlan",
12510 "id" : 30,
12511 "source_info" : {
12512 "filename" : "include/control/next.p4",
12513 "line" : 74,
12514 "column" : 10,
12515 "source_fragment" : "next_vlan"
12516 },
12517 "key" : [
12518 {
12519 "match_type" : "exact",
12520 "name" : "next_id",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080012521 "target" : ["scalars", "fabric_metadata_t._next_id10"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012522 "mask" : null
12523 }
12524 ],
12525 "match_type" : "exact",
12526 "type" : "simple",
12527 "max_size" : 1024,
12528 "with_counters" : true,
12529 "support_timeout" : false,
12530 "direct_meters" : null,
12531 "action_ids" : [26, 6],
12532 "actions" : ["FabricIngress.next.set_vlan", "nop"],
12533 "base_default_next" : "node_48",
12534 "next_tables" : {
12535 "FabricIngress.next.set_vlan" : "node_48",
12536 "nop" : "node_48"
12537 },
12538 "default_entry" : {
12539 "action_id" : 6,
12540 "action_const" : true,
12541 "action_data" : [],
12542 "action_entry_const" : true
12543 }
12544 },
12545 {
12546 "name" : "tbl_act_17",
12547 "id" : 31,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012548 "source_info" : {
12549 "filename" : "include/control/port_counter.p4",
12550 "line" : 31,
12551 "column" : 12,
12552 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
12553 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012554 "key" : [],
12555 "match_type" : "exact",
12556 "type" : "simple",
12557 "max_size" : 1024,
12558 "with_counters" : false,
12559 "support_timeout" : false,
12560 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012561 "action_ids" : [51],
12562 "actions" : ["act_17"],
12563 "base_default_next" : "node_50",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012564 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012565 "act_17" : "node_50"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012566 },
12567 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012568 "action_id" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012569 "action_const" : true,
12570 "action_data" : [],
12571 "action_entry_const" : true
12572 }
12573 },
12574 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012575 "name" : "tbl_act_18",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012576 "id" : 32,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012577 "source_info" : {
12578 "filename" : "include/control/port_counter.p4",
12579 "line" : 34,
12580 "column" : 12,
12581 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
12582 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012583 "key" : [],
12584 "match_type" : "exact",
12585 "type" : "simple",
12586 "max_size" : 1024,
12587 "with_counters" : false,
12588 "support_timeout" : false,
12589 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012590 "action_ids" : [52],
12591 "actions" : ["act_18"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012592 "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
12593 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012594 "act_18" : "FabricIngress.process_set_source_sink.tb_set_source"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012595 },
12596 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012597 "action_id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012598 "action_const" : true,
12599 "action_data" : [],
12600 "action_entry_const" : true
12601 }
12602 },
12603 {
12604 "name" : "FabricIngress.process_set_source_sink.tb_set_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012605 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012606 "source_info" : {
12607 "filename" : "include/int/int_main.p4",
12608 "line" : 46,
12609 "column" : 10,
12610 "source_fragment" : "tb_set_source"
12611 },
12612 "key" : [
12613 {
12614 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012615 "name" : "ig_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012616 "target" : ["standard_metadata", "ingress_port"],
12617 "mask" : null
12618 }
12619 ],
12620 "match_type" : "exact",
12621 "type" : "simple",
12622 "max_size" : 511,
12623 "with_counters" : true,
12624 "support_timeout" : false,
12625 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012626 "action_ids" : [12, 2],
12627 "actions" : ["FabricIngress.process_set_source_sink.int_set_source", "nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012628 "base_default_next" : null,
12629 "next_tables" : {
12630 "FabricIngress.process_set_source_sink.int_set_source" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012631 "nop" : null
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012632 },
12633 "default_entry" : {
12634 "action_id" : 2,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012635 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012636 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012637 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012638 }
12639 }
12640 ],
12641 "action_profiles" : [
12642 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012643 "name" : "FabricIngress.next.hashed_selector",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012644 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012645 "source_info" : {
12646 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012647 "line" : 165,
12648 "column" : 57,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012649 "source_fragment" : "hashed_selector"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012650 },
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012651 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012652 "selector" : {
12653 "algo" : "crc16",
12654 "input" : [
12655 {
12656 "type" : "field",
12657 "value" : ["ipv4", "dst_addr"]
12658 },
12659 {
12660 "type" : "field",
12661 "value" : ["ipv4", "src_addr"]
12662 },
12663 {
12664 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012665 "value" : ["scalars", "fabric_metadata_t._ip_proto13"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012666 },
12667 {
12668 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012669 "value" : ["scalars", "fabric_metadata_t._l4_sport14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012670 },
12671 {
12672 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012673 "value" : ["scalars", "fabric_metadata_t._l4_dport15"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012674 }
12675 ]
12676 }
12677 }
12678 ],
12679 "conditionals" : [
12680 {
12681 "name" : "node_3",
12682 "id" : 0,
12683 "source_info" : {
12684 "filename" : "include/spgw.p4",
12685 "line" : 30,
12686 "column" : 12,
12687 "source_fragment" : "! is_gtpu_encapped"
12688 },
12689 "expression" : {
12690 "type" : "expression",
12691 "value" : {
12692 "op" : "not",
12693 "left" : null,
12694 "right" : {
12695 "type" : "expression",
12696 "value" : {
12697 "op" : "d2b",
12698 "left" : null,
12699 "right" : {
12700 "type" : "field",
12701 "value" : ["gtpu", "$valid$"]
12702 }
12703 }
12704 }
12705 }
12706 },
12707 "true_next" : "tbl_act_0",
12708 "false_next" : "node_5"
12709 },
12710 {
12711 "name" : "node_5",
12712 "id" : 1,
12713 "expression" : {
12714 "type" : "expression",
12715 "value" : {
12716 "op" : "not",
12717 "left" : null,
12718 "right" : {
12719 "type" : "expression",
12720 "value" : {
12721 "op" : "d2b",
12722 "left" : null,
12723 "right" : {
12724 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012725 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012726 }
12727 }
12728 }
12729 }
12730 },
12731 "true_next" : "tbl_act_1",
12732 "false_next" : "node_10"
12733 },
12734 {
12735 "name" : "node_7",
12736 "id" : 2,
12737 "source_info" : {
12738 "filename" : "include/spgw.p4",
12739 "line" : 34,
12740 "column" : 12,
12741 "source_fragment" : "inner_udp.isValid()"
12742 },
12743 "expression" : {
12744 "type" : "expression",
12745 "value" : {
12746 "op" : "d2b",
12747 "left" : null,
12748 "right" : {
12749 "type" : "field",
12750 "value" : ["inner_udp", "$valid$"]
12751 }
12752 }
12753 },
12754 "true_next" : "tbl_act_2",
12755 "false_next" : "tbl_act_3"
12756 },
12757 {
12758 "name" : "node_10",
12759 "id" : 3,
12760 "source_info" : {
12761 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012762 "line" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012763 "column" : 12,
12764 "source_fragment" : "hdr.packet_out.isValid()"
12765 },
12766 "expression" : {
12767 "type" : "expression",
12768 "value" : {
12769 "op" : "d2b",
12770 "left" : null,
12771 "right" : {
12772 "type" : "field",
12773 "value" : ["packet_out", "$valid$"]
12774 }
12775 }
12776 },
12777 "true_next" : "tbl_act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012778 "false_next" : "node_12"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012779 },
12780 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012781 "name" : "node_12",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012782 "id" : 4,
12783 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012784 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012785 "line" : 104,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012786 "column" : 12,
12787 "source_fragment" : "hdr.vlan_tag.isValid()"
12788 },
12789 "expression" : {
12790 "type" : "expression",
12791 "value" : {
12792 "op" : "d2b",
12793 "left" : null,
12794 "right" : {
12795 "type" : "field",
12796 "value" : ["vlan_tag", "$valid$"]
12797 }
12798 }
12799 },
12800 "true_next" : "tbl_act_5",
12801 "false_next" : "node_14"
12802 },
12803 {
12804 "name" : "node_14",
12805 "id" : 5,
12806 "source_info" : {
12807 "filename" : "include/control/filtering.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012808 "line" : 110,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012809 "column" : 12,
12810 "source_fragment" : "!hdr.mpls.isValid()"
12811 },
12812 "expression" : {
12813 "type" : "expression",
12814 "value" : {
12815 "op" : "not",
12816 "left" : null,
12817 "right" : {
12818 "type" : "expression",
12819 "value" : {
12820 "op" : "d2b",
12821 "left" : null,
12822 "right" : {
12823 "type" : "field",
12824 "value" : ["mpls", "$valid$"]
12825 }
12826 }
12827 }
12828 }
12829 },
12830 "true_next" : "tbl_act_6",
12831 "false_next" : "FabricIngress.filtering.ingress_port_vlan"
12832 },
12833 {
12834 "name" : "node_19",
12835 "id" : 6,
12836 "source_info" : {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012837 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012838 "line" : 144,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012839 "column" : 12,
12840 "source_fragment" : "gtpu.isValid()"
12841 },
12842 "expression" : {
12843 "type" : "expression",
12844 "value" : {
12845 "op" : "d2b",
12846 "left" : null,
12847 "right" : {
12848 "type" : "field",
12849 "value" : ["gtpu", "$valid$"]
12850 }
12851 }
12852 },
12853 "true_next" : "FabricIngress.spgw_ingress.s1u_filter_table",
12854 "false_next" : "FabricIngress.spgw_ingress.dl_sess_lookup"
12855 },
12856 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012857 "name" : "node_23",
12858 "id" : 7,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012859 "source_info" : {
12860 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012861 "line" : 148,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012862 "column" : 16,
12863 "source_fragment" : "!s1u_filter_table.apply().hit"
12864 },
12865 "expression" : {
12866 "type" : "expression",
12867 "value" : {
12868 "op" : "not",
12869 "left" : null,
12870 "right" : {
12871 "type" : "expression",
12872 "value" : {
12873 "op" : "d2b",
12874 "left" : null,
12875 "right" : {
12876 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012877 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012878 }
12879 }
12880 }
12881 }
12882 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012883 "true_next" : "tbl_act_10",
12884 "false_next" : "tbl_act_11"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012885 },
12886 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012887 "name" : "node_30",
12888 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012889 "expression" : {
12890 "type" : "expression",
12891 "value" : {
12892 "op" : "d2b",
12893 "left" : null,
12894 "right" : {
12895 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012896 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012897 }
12898 }
12899 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012900 "true_next" : "tbl_act_14",
12901 "false_next" : "tbl_act_15"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012902 },
12903 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012904 "name" : "node_33",
12905 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012906 "expression" : {
12907 "type" : "expression",
12908 "value" : {
12909 "op" : "not",
12910 "left" : null,
12911 "right" : {
12912 "type" : "expression",
12913 "value" : {
12914 "op" : "d2b",
12915 "left" : null,
12916 "right" : {
12917 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012918 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012919 }
12920 }
12921 }
12922 }
12923 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012924 "true_next" : "tbl_act_16",
12925 "false_next" : "node_35"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012926 },
12927 {
12928 "name" : "node_35",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012929 "id" : 10,
12930 "source_info" : {
12931 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -070012932 "line" : 74,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012933 "column" : 12,
12934 "source_fragment" : "fabric_metadata.skip_forwarding == false"
12935 },
12936 "expression" : {
12937 "type" : "expression",
12938 "value" : {
12939 "op" : "==",
12940 "left" : {
12941 "type" : "expression",
12942 "value" : {
12943 "op" : "d2b",
12944 "left" : null,
12945 "right" : {
12946 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080012947 "value" : ["scalars", "fabric_metadata_t._skip_forwarding7"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012948 }
12949 }
12950 },
12951 "right" : {
12952 "type" : "bool",
12953 "value" : false
12954 }
12955 }
12956 },
12957 "true_next" : "node_36",
12958 "false_next" : "FabricIngress.acl.acl"
12959 },
12960 {
12961 "name" : "node_36",
12962 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012963 "source_info" : {
12964 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012965 "line" : 141,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012966 "column" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012967 "source_fragment" : "fabric_metadata.fwd_type == FWD_BRIDGING"
12968 },
12969 "expression" : {
12970 "type" : "expression",
12971 "value" : {
12972 "op" : "==",
12973 "left" : {
12974 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080012975 "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012976 },
12977 "right" : {
12978 "type" : "hexstr",
12979 "value" : "0x00"
12980 }
12981 }
12982 },
12983 "true_next" : "FabricIngress.forwarding.bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012984 "false_next" : "node_38"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012985 },
12986 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012987 "name" : "node_38",
12988 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012989 "source_info" : {
12990 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012991 "line" : 142,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012992 "column" : 17,
12993 "source_fragment" : "fabric_metadata.fwd_type == FWD_MPLS"
12994 },
12995 "expression" : {
12996 "type" : "expression",
12997 "value" : {
12998 "op" : "==",
12999 "left" : {
13000 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080013001 "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013002 },
13003 "right" : {
13004 "type" : "hexstr",
13005 "value" : "0x01"
13006 }
13007 }
13008 },
13009 "true_next" : "FabricIngress.forwarding.mpls",
13010 "false_next" : "node_40"
13011 },
13012 {
13013 "name" : "node_40",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013014 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013015 "source_info" : {
13016 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070013017 "line" : 143,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013018 "column" : 17,
13019 "source_fragment" : "fabric_metadata.fwd_type == FWD_IPV4_UNICAST"
13020 },
13021 "expression" : {
13022 "type" : "expression",
13023 "value" : {
13024 "op" : "==",
13025 "left" : {
13026 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080013027 "value" : ["scalars", "fabric_metadata_t._fwd_type9"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013028 },
13029 "right" : {
13030 "type" : "hexstr",
13031 "value" : "0x02"
13032 }
13033 }
13034 },
13035 "true_next" : "FabricIngress.forwarding.routing_v4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013036 "false_next" : "FabricIngress.acl.acl"
13037 },
13038 {
13039 "name" : "node_43",
13040 "id" : 14,
13041 "source_info" : {
13042 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -070013043 "line" : 78,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013044 "column" : 12,
13045 "source_fragment" : "fabric_metadata.skip_next == false"
13046 },
13047 "expression" : {
13048 "type" : "expression",
13049 "value" : {
13050 "op" : "==",
13051 "left" : {
13052 "type" : "expression",
13053 "value" : {
13054 "op" : "d2b",
13055 "left" : null,
13056 "right" : {
13057 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080013058 "value" : ["scalars", "fabric_metadata_t._skip_next8"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013059 }
13060 }
13061 },
13062 "right" : {
13063 "type" : "bool",
13064 "value" : false
13065 }
13066 }
13067 },
13068 "false_next" : null,
13069 "true_next" : "FabricIngress.next.xconnect"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013070 },
13071 {
13072 "name" : "node_48",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013073 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013074 "source_info" : {
13075 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013076 "line" : 30,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013077 "column" : 12,
13078 "source_fragment" : "standard_metadata.egress_spec < 511"
13079 },
13080 "expression" : {
13081 "type" : "expression",
13082 "value" : {
13083 "op" : "<",
13084 "left" : {
13085 "type" : "field",
13086 "value" : ["standard_metadata", "egress_spec"]
13087 },
13088 "right" : {
13089 "type" : "hexstr",
13090 "value" : "0x01ff"
13091 }
13092 }
13093 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013094 "true_next" : "tbl_act_17",
13095 "false_next" : "node_50"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013096 },
13097 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013098 "name" : "node_50",
13099 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013100 "source_info" : {
13101 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013102 "line" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013103 "column" : 12,
13104 "source_fragment" : "standard_metadata.ingress_port < 511"
13105 },
13106 "expression" : {
13107 "type" : "expression",
13108 "value" : {
13109 "op" : "<",
13110 "left" : {
13111 "type" : "field",
13112 "value" : ["standard_metadata", "ingress_port"]
13113 },
13114 "right" : {
13115 "type" : "hexstr",
13116 "value" : "0x01ff"
13117 }
13118 }
13119 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013120 "true_next" : "tbl_act_18",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013121 "false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
13122 }
13123 ]
13124 },
13125 {
13126 "name" : "egress",
13127 "id" : 1,
13128 "source_info" : {
13129 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -070013130 "line" : 92,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013131 "column" : 8,
13132 "source_fragment" : "FabricEgress"
13133 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013134 "init_table" : "node_55",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013135 "tables" : [
13136 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013137 "name" : "tbl_act_19",
13138 "id" : 34,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013139 "source_info" : {
13140 "filename" : "include/control/packetio.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013141 "line" : 41,
13142 "column" : 12,
13143 "source_fragment" : "exit"
Carmelo Cascone3032b872019-04-13 01:23:54 -070013144 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013145 "key" : [],
13146 "match_type" : "exact",
13147 "type" : "simple",
13148 "max_size" : 1024,
13149 "with_counters" : false,
13150 "support_timeout" : false,
13151 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013152 "action_ids" : [97],
13153 "actions" : ["act_19"],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013154 "base_default_next" : "node_57",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013155 "next_tables" : {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013156 "act_19" : "node_57"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013157 },
13158 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013159 "action_id" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013160 "action_const" : true,
13161 "action_data" : [],
13162 "action_entry_const" : true
13163 }
13164 },
13165 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013166 "name" : "tbl_act_20",
13167 "id" : 35,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013168 "source_info" : {
13169 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013170 "line" : 44,
13171 "column" : 12,
13172 "source_fragment" : "hdr.packet_in.setValid(); ..."
Carmelo Cascone3032b872019-04-13 01:23:54 -070013173 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013174 "key" : [],
13175 "match_type" : "exact",
13176 "type" : "simple",
13177 "max_size" : 1024,
13178 "with_counters" : false,
13179 "support_timeout" : false,
13180 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013181 "action_ids" : [98],
13182 "actions" : ["act_20"],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013183 "base_default_next" : "node_59",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013184 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013185 "act_20" : "node_59"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013186 },
13187 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013188 "action_id" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013189 "action_const" : true,
13190 "action_data" : [],
13191 "action_entry_const" : true
13192 }
13193 },
13194 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013195 "name" : "tbl_act_21",
13196 "id" : 36,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013197 "source_info" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013198 "filename" : "include/control/next.p4",
13199 "line" : 308,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013200 "column" : 12,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013201 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Cascone3032b872019-04-13 01:23:54 -070013202 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013203 "key" : [],
13204 "match_type" : "exact",
13205 "type" : "simple",
13206 "max_size" : 1024,
13207 "with_counters" : false,
13208 "support_timeout" : false,
13209 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013210 "action_ids" : [99],
13211 "actions" : ["act_21"],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013212 "base_default_next" : "node_61",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013213 "next_tables" : {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013214 "act_21" : "node_61"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013215 },
13216 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013217 "action_id" : 99,
13218 "action_const" : true,
13219 "action_data" : [],
13220 "action_entry_const" : true
13221 }
13222 },
13223 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013224 "name" : "tbl_egress_next_pop_mpls_if_present",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013225 "id" : 37,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013226 "source_info" : {
13227 "filename" : "include/control/next.p4",
Carmelo Cascone3032b872019-04-13 01:23:54 -070013228 "line" : 312,
13229 "column" : 36,
13230 "source_fragment" : "pop_mpls_if_present()"
13231 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013232 "key" : [],
13233 "match_type" : "exact",
13234 "type" : "simple",
13235 "max_size" : 1024,
13236 "with_counters" : false,
13237 "support_timeout" : false,
13238 "direct_meters" : null,
13239 "action_ids" : [93],
13240 "actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
13241 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
13242 "next_tables" : {
13243 "FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
13244 },
13245 "default_entry" : {
13246 "action_id" : 93,
13247 "action_const" : true,
13248 "action_data" : [],
13249 "action_entry_const" : true
13250 }
13251 },
13252 {
13253 "name" : "tbl_egress_next_set_mpls",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013254 "id" : 38,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013255 "source_info" : {
13256 "filename" : "include/control/next.p4",
13257 "line" : 314,
13258 "column" : 12,
13259 "source_fragment" : "set_mpls()"
13260 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013261 "key" : [],
13262 "match_type" : "exact",
13263 "type" : "simple",
13264 "max_size" : 1024,
13265 "with_counters" : false,
13266 "support_timeout" : false,
13267 "direct_meters" : null,
13268 "action_ids" : [94],
13269 "actions" : ["FabricEgress.egress_next.set_mpls"],
13270 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
13271 "next_tables" : {
13272 "FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
13273 },
13274 "default_entry" : {
13275 "action_id" : 94,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013276 "action_const" : true,
13277 "action_data" : [],
13278 "action_entry_const" : true
13279 }
13280 },
13281 {
13282 "name" : "FabricEgress.egress_next.egress_vlan",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013283 "id" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013284 "source_info" : {
13285 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070013286 "line" : 291,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013287 "column" : 10,
13288 "source_fragment" : "egress_vlan"
13289 },
13290 "key" : [
13291 {
13292 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013293 "name" : "vlan_id",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080013294 "target" : ["scalars", "fabric_metadata_t._vlan_id2"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013295 "mask" : null
13296 },
13297 {
13298 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013299 "name" : "eg_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013300 "target" : ["standard_metadata", "egress_port"],
13301 "mask" : null
13302 }
13303 ],
13304 "match_type" : "exact",
13305 "type" : "simple",
13306 "max_size" : 1024,
13307 "with_counters" : true,
13308 "support_timeout" : false,
13309 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013310 "action_ids" : [96, 55],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013311 "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013312 "base_default_next" : null,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013313 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013314 "__HIT__" : "tbl_act_22",
13315 "__MISS__" : "tbl_act_23"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013316 },
13317 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013318 "action_id" : 55,
13319 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013320 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013321 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013322 }
13323 },
13324 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013325 "name" : "tbl_act_22",
13326 "id" : 40,
13327 "key" : [],
13328 "match_type" : "exact",
13329 "type" : "simple",
13330 "max_size" : 1024,
13331 "with_counters" : false,
13332 "support_timeout" : false,
13333 "direct_meters" : null,
13334 "action_ids" : [100],
13335 "actions" : ["act_22"],
13336 "base_default_next" : "node_68",
13337 "next_tables" : {
13338 "act_22" : "node_68"
13339 },
13340 "default_entry" : {
13341 "action_id" : 100,
13342 "action_const" : true,
13343 "action_data" : [],
13344 "action_entry_const" : true
13345 }
13346 },
13347 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013348 "name" : "tbl_act_23",
13349 "id" : 41,
13350 "key" : [],
13351 "match_type" : "exact",
13352 "type" : "simple",
13353 "max_size" : 1024,
13354 "with_counters" : false,
13355 "support_timeout" : false,
13356 "direct_meters" : null,
13357 "action_ids" : [101],
13358 "actions" : ["act_23"],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013359 "base_default_next" : "node_68",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013360 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013361 "act_23" : "node_68"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013362 },
13363 "default_entry" : {
13364 "action_id" : 101,
13365 "action_const" : true,
13366 "action_data" : [],
13367 "action_entry_const" : true
13368 }
13369 },
13370 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013371 "name" : "tbl_egress_next_push_vlan",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013372 "id" : 42,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013373 "source_info" : {
13374 "filename" : "include/control/next.p4",
13375 "line" : 320,
13376 "column" : 16,
13377 "source_fragment" : "push_vlan()"
13378 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013379 "key" : [],
13380 "match_type" : "exact",
13381 "type" : "simple",
13382 "max_size" : 1024,
13383 "with_counters" : false,
13384 "support_timeout" : false,
13385 "direct_meters" : null,
13386 "action_ids" : [95],
13387 "actions" : ["FabricEgress.egress_next.push_vlan"],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013388 "base_default_next" : "node_71",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013389 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013390 "FabricEgress.egress_next.push_vlan" : "node_71"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013391 },
13392 "default_entry" : {
13393 "action_id" : 95,
13394 "action_const" : true,
13395 "action_data" : [],
13396 "action_entry_const" : true
13397 }
13398 },
13399 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013400 "name" : "tbl_act_24",
13401 "id" : 43,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013402 "source_info" : {
13403 "filename" : "include/control/next.p4",
13404 "line" : 326,
13405 "column" : 25,
13406 "source_fragment" : "="
13407 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013408 "key" : [],
13409 "match_type" : "exact",
13410 "type" : "simple",
13411 "max_size" : 1024,
13412 "with_counters" : false,
13413 "support_timeout" : false,
13414 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013415 "action_ids" : [103],
13416 "actions" : ["act_25"],
13417 "base_default_next" : "node_73",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013418 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013419 "act_25" : "node_73"
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013420 },
13421 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013422 "action_id" : 103,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013423 "action_const" : true,
13424 "action_data" : [],
13425 "action_entry_const" : true
13426 }
13427 },
13428 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013429 "name" : "tbl_act_25",
13430 "id" : 44,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013431 "source_info" : {
13432 "filename" : "include/control/next.p4",
13433 "line" : 327,
13434 "column" : 35,
13435 "source_fragment" : "mark_to_drop(standard_metadata)"
13436 },
13437 "key" : [],
13438 "match_type" : "exact",
13439 "type" : "simple",
13440 "max_size" : 1024,
13441 "with_counters" : false,
13442 "support_timeout" : false,
13443 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013444 "action_ids" : [102],
13445 "actions" : ["act_24"],
13446 "base_default_next" : "node_79",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013447 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013448 "act_24" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013449 },
13450 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013451 "action_id" : 102,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013452 "action_const" : true,
13453 "action_data" : [],
13454 "action_entry_const" : true
13455 }
13456 },
13457 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013458 "name" : "tbl_act_26",
13459 "id" : 45,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013460 "source_info" : {
13461 "filename" : "include/control/next.p4",
13462 "line" : 330,
13463 "column" : 29,
13464 "source_fragment" : "="
13465 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013466 "key" : [],
13467 "match_type" : "exact",
13468 "type" : "simple",
13469 "max_size" : 1024,
13470 "with_counters" : false,
13471 "support_timeout" : false,
13472 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013473 "action_ids" : [105],
13474 "actions" : ["act_27"],
13475 "base_default_next" : "node_77",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013476 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013477 "act_27" : "node_77"
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013478 },
13479 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013480 "action_id" : 105,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013481 "action_const" : true,
13482 "action_data" : [],
13483 "action_entry_const" : true
13484 }
13485 },
13486 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013487 "name" : "tbl_act_27",
13488 "id" : 46,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013489 "source_info" : {
13490 "filename" : "include/control/next.p4",
13491 "line" : 331,
13492 "column" : 39,
13493 "source_fragment" : "mark_to_drop(standard_metadata)"
13494 },
13495 "key" : [],
13496 "match_type" : "exact",
13497 "type" : "simple",
13498 "max_size" : 1024,
13499 "with_counters" : false,
13500 "support_timeout" : false,
13501 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013502 "action_ids" : [104],
13503 "actions" : ["act_26"],
13504 "base_default_next" : "node_79",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013505 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013506 "act_26" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013507 },
13508 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013509 "action_id" : 104,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013510 "action_const" : true,
13511 "action_data" : [],
13512 "action_entry_const" : true
13513 }
13514 },
13515 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013516 "name" : "tbl_spgw_egress_gtpu_encap",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013517 "id" : 47,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013518 "source_info" : {
13519 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013520 "line" : 228,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013521 "column" : 12,
13522 "source_fragment" : "gtpu_encap()"
13523 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013524 "key" : [],
13525 "match_type" : "exact",
13526 "type" : "simple",
13527 "max_size" : 1024,
13528 "with_counters" : false,
13529 "support_timeout" : false,
13530 "direct_meters" : null,
13531 "action_ids" : [58],
13532 "actions" : ["FabricEgress.spgw_egress.gtpu_encap"],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013533 "base_default_next" : "node_81",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013534 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013535 "FabricEgress.spgw_egress.gtpu_encap" : "node_81"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013536 },
13537 "default_entry" : {
13538 "action_id" : 58,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013539 "action_const" : true,
13540 "action_data" : [],
13541 "action_entry_const" : true
13542 }
13543 },
13544 {
13545 "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013546 "id" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013547 "source_info" : {
13548 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013549 "line" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013550 "column" : 10,
13551 "source_fragment" : "tb_int_source"
13552 },
13553 "key" : [
13554 {
13555 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013556 "name" : "ipv4_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013557 "target" : ["ipv4", "src_addr"],
13558 "mask" : null
13559 },
13560 {
13561 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013562 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013563 "target" : ["ipv4", "dst_addr"],
13564 "mask" : null
13565 },
13566 {
13567 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013568 "name" : "l4_sport",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013569 "target" : ["scalars", "fabric_metadata_t._l4_sport14"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013570 "mask" : null
13571 },
13572 {
13573 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013574 "name" : "l4_dport",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013575 "target" : ["scalars", "fabric_metadata_t._l4_dport15"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013576 "mask" : null
13577 }
13578 ],
13579 "match_type" : "ternary",
13580 "type" : "simple",
13581 "max_size" : 1024,
13582 "with_counters" : true,
13583 "support_timeout" : false,
13584 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013585 "action_ids" : [59, 53],
13586 "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013587 "base_default_next" : "node_84",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013588 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013589 "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_84",
13590 "nop" : "node_84"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013591 },
13592 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013593 "action_id" : 53,
13594 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013595 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013596 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013597 }
13598 },
13599 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013600 "name" : "tbl_act_28",
13601 "id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013602 "key" : [],
13603 "match_type" : "exact",
13604 "type" : "simple",
13605 "max_size" : 1024,
13606 "with_counters" : false,
13607 "support_timeout" : false,
13608 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013609 "action_ids" : [106],
13610 "actions" : ["act_28"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013611 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
13612 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013613 "act_28" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013614 },
13615 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013616 "action_id" : 106,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013617 "action_const" : true,
13618 "action_data" : [],
13619 "action_entry_const" : true
13620 }
13621 },
13622 {
13623 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013624 "id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013625 "source_info" : {
13626 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013627 "line" : 315,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013628 "column" : 10,
13629 "source_fragment" : "tb_int_insert"
13630 },
Carmelo Casconefa421582018-09-13 10:05:57 -070013631 "key" : [
13632 {
13633 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013634 "name" : "int_is_valid",
Carmelo Casconefa421582018-09-13 10:05:57 -070013635 "target" : ["int_header", "$valid$"],
13636 "mask" : null
13637 }
13638 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013639 "match_type" : "exact",
13640 "type" : "simple",
Carmelo Casconefa421582018-09-13 10:05:57 -070013641 "max_size" : 1,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013642 "with_counters" : false,
13643 "support_timeout" : false,
13644 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013645 "action_ids" : [60, 54],
Carmelo Casconefa421582018-09-13 10:05:57 -070013646 "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013647 "base_default_next" : "node_87",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013648 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013649 "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_87",
13650 "nop" : "node_87"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013651 },
13652 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013653 "action_id" : 54,
Carmelo Casconefa421582018-09-13 10:05:57 -070013654 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013655 "action_data" : [],
Carmelo Casconefa421582018-09-13 10:05:57 -070013656 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013657 }
13658 },
13659 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013660 "name" : "tbl_act_29",
13661 "id" : 51,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013662 "source_info" : {
13663 "filename" : "include/int/int_transit.p4",
13664 "line" : 420,
13665 "column" : 12,
13666 "source_fragment" : "return"
13667 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013668 "key" : [],
13669 "match_type" : "exact",
13670 "type" : "simple",
13671 "max_size" : 1024,
13672 "with_counters" : false,
13673 "support_timeout" : false,
13674 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013675 "action_ids" : [107],
13676 "actions" : ["act_29"],
13677 "base_default_next" : "node_89",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013678 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013679 "act_29" : "node_89"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013680 },
13681 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013682 "action_id" : 107,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013683 "action_const" : true,
13684 "action_data" : [],
13685 "action_entry_const" : true
13686 }
13687 },
13688 {
13689 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013690 "id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013691 "source_info" : {
13692 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013693 "line" : 331,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013694 "column" : 10,
13695 "source_fragment" : "tb_int_inst_0003"
13696 },
13697 "key" : [
13698 {
13699 "match_type" : "exact",
13700 "name" : "hdr.int_header.instruction_mask_0003",
13701 "target" : ["int_header", "instruction_mask_0003"],
13702 "mask" : null
13703 }
13704 ],
13705 "match_type" : "exact",
13706 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013707 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013708 "with_counters" : false,
13709 "support_timeout" : false,
13710 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013711 "action_ids" : [61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 56],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013712 "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"],
13713 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13714 "next_tables" : {
13715 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13716 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13717 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13718 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13719 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13720 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13721 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13722 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13723 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13724 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13725 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13726 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13727 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13728 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13729 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13730 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13731 "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
13732 },
13733 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013734 "action_id" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013735 "action_const" : false,
13736 "action_data" : [],
13737 "action_entry_const" : false
13738 },
13739 "entries" : [
13740 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013741 "source_info" : {
13742 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013743 "line" : 354,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013744 "column" : 12,
13745 "source_fragment" : "(0x0) : int_set_header_0003_i0()"
13746 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013747 "match_key" : [
13748 {
13749 "match_type" : "exact",
13750 "key" : "0x00"
13751 }
13752 ],
13753 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013754 "action_id" : 61,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013755 "action_data" : []
13756 },
13757 "priority" : 1
13758 },
13759 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013760 "source_info" : {
13761 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013762 "line" : 355,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013763 "column" : 12,
13764 "source_fragment" : "(0x1) : int_set_header_0003_i1()"
13765 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013766 "match_key" : [
13767 {
13768 "match_type" : "exact",
13769 "key" : "0x01"
13770 }
13771 ],
13772 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013773 "action_id" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013774 "action_data" : []
13775 },
13776 "priority" : 2
13777 },
13778 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013779 "source_info" : {
13780 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013781 "line" : 356,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013782 "column" : 12,
13783 "source_fragment" : "(0x2) : int_set_header_0003_i2()"
13784 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013785 "match_key" : [
13786 {
13787 "match_type" : "exact",
13788 "key" : "0x02"
13789 }
13790 ],
13791 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013792 "action_id" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013793 "action_data" : []
13794 },
13795 "priority" : 3
13796 },
13797 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013798 "source_info" : {
13799 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013800 "line" : 357,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013801 "column" : 12,
13802 "source_fragment" : "(0x3) : int_set_header_0003_i3()"
13803 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013804 "match_key" : [
13805 {
13806 "match_type" : "exact",
13807 "key" : "0x03"
13808 }
13809 ],
13810 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013811 "action_id" : 64,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013812 "action_data" : []
13813 },
13814 "priority" : 4
13815 },
13816 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013817 "source_info" : {
13818 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013819 "line" : 358,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013820 "column" : 12,
13821 "source_fragment" : "(0x4) : int_set_header_0003_i4()"
13822 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013823 "match_key" : [
13824 {
13825 "match_type" : "exact",
13826 "key" : "0x04"
13827 }
13828 ],
13829 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013830 "action_id" : 65,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013831 "action_data" : []
13832 },
13833 "priority" : 5
13834 },
13835 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013836 "source_info" : {
13837 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013838 "line" : 359,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013839 "column" : 12,
13840 "source_fragment" : "(0x5) : int_set_header_0003_i5()"
13841 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013842 "match_key" : [
13843 {
13844 "match_type" : "exact",
13845 "key" : "0x05"
13846 }
13847 ],
13848 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013849 "action_id" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013850 "action_data" : []
13851 },
13852 "priority" : 6
13853 },
13854 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013855 "source_info" : {
13856 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013857 "line" : 360,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013858 "column" : 12,
13859 "source_fragment" : "(0x6) : int_set_header_0003_i6()"
13860 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013861 "match_key" : [
13862 {
13863 "match_type" : "exact",
13864 "key" : "0x06"
13865 }
13866 ],
13867 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013868 "action_id" : 67,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013869 "action_data" : []
13870 },
13871 "priority" : 7
13872 },
13873 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013874 "source_info" : {
13875 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013876 "line" : 361,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013877 "column" : 12,
13878 "source_fragment" : "(0x7) : int_set_header_0003_i7()"
13879 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013880 "match_key" : [
13881 {
13882 "match_type" : "exact",
13883 "key" : "0x07"
13884 }
13885 ],
13886 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013887 "action_id" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013888 "action_data" : []
13889 },
13890 "priority" : 8
13891 },
13892 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013893 "source_info" : {
13894 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013895 "line" : 362,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013896 "column" : 12,
13897 "source_fragment" : "(0x8) : int_set_header_0003_i8()"
13898 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013899 "match_key" : [
13900 {
13901 "match_type" : "exact",
13902 "key" : "0x08"
13903 }
13904 ],
13905 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013906 "action_id" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013907 "action_data" : []
13908 },
13909 "priority" : 9
13910 },
13911 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013912 "source_info" : {
13913 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013914 "line" : 363,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013915 "column" : 12,
13916 "source_fragment" : "(0x9) : int_set_header_0003_i9()"
13917 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013918 "match_key" : [
13919 {
13920 "match_type" : "exact",
13921 "key" : "0x09"
13922 }
13923 ],
13924 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013925 "action_id" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013926 "action_data" : []
13927 },
13928 "priority" : 10
13929 },
13930 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013931 "source_info" : {
13932 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013933 "line" : 364,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013934 "column" : 12,
13935 "source_fragment" : "(0xA) : int_set_header_0003_i10()"
13936 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013937 "match_key" : [
13938 {
13939 "match_type" : "exact",
13940 "key" : "0x0a"
13941 }
13942 ],
13943 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013944 "action_id" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013945 "action_data" : []
13946 },
13947 "priority" : 11
13948 },
13949 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013950 "source_info" : {
13951 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013952 "line" : 365,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013953 "column" : 12,
13954 "source_fragment" : "(0xB) : int_set_header_0003_i11()"
13955 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013956 "match_key" : [
13957 {
13958 "match_type" : "exact",
13959 "key" : "0x0b"
13960 }
13961 ],
13962 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013963 "action_id" : 72,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013964 "action_data" : []
13965 },
13966 "priority" : 12
13967 },
13968 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013969 "source_info" : {
13970 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013971 "line" : 366,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013972 "column" : 12,
13973 "source_fragment" : "(0xC) : int_set_header_0003_i12()"
13974 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013975 "match_key" : [
13976 {
13977 "match_type" : "exact",
13978 "key" : "0x0c"
13979 }
13980 ],
13981 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013982 "action_id" : 73,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013983 "action_data" : []
13984 },
13985 "priority" : 13
13986 },
13987 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013988 "source_info" : {
13989 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013990 "line" : 367,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013991 "column" : 12,
13992 "source_fragment" : "(0xD) : int_set_header_0003_i13()"
13993 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013994 "match_key" : [
13995 {
13996 "match_type" : "exact",
13997 "key" : "0x0d"
13998 }
13999 ],
14000 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014001 "action_id" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014002 "action_data" : []
14003 },
14004 "priority" : 14
14005 },
14006 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014007 "source_info" : {
14008 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014009 "line" : 368,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014010 "column" : 12,
14011 "source_fragment" : "(0xE) : int_set_header_0003_i14()"
14012 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014013 "match_key" : [
14014 {
14015 "match_type" : "exact",
14016 "key" : "0x0e"
14017 }
14018 ],
14019 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014020 "action_id" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014021 "action_data" : []
14022 },
14023 "priority" : 15
14024 },
14025 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014026 "source_info" : {
14027 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014028 "line" : 369,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014029 "column" : 12,
14030 "source_fragment" : "(0xF) : int_set_header_0003_i15()"
14031 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014032 "match_key" : [
14033 {
14034 "match_type" : "exact",
14035 "key" : "0x0f"
14036 }
14037 ],
14038 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014039 "action_id" : 76,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014040 "action_data" : []
14041 },
14042 "priority" : 16
14043 }
14044 ]
14045 },
14046 {
14047 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014048 "id" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014049 "source_info" : {
14050 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014051 "line" : 375,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014052 "column" : 10,
14053 "source_fragment" : "tb_int_inst_0407"
14054 },
14055 "key" : [
14056 {
14057 "match_type" : "exact",
14058 "name" : "hdr.int_header.instruction_mask_0407",
14059 "target" : ["int_header", "instruction_mask_0407"],
14060 "mask" : null
14061 }
14062 ],
14063 "match_type" : "exact",
14064 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014065 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014066 "with_counters" : false,
14067 "support_timeout" : false,
14068 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014069 "action_ids" : [77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 57],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014070 "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 Moro01ca2ab2019-06-25 11:48:48 -070014071 "base_default_next" : "tbl_act_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014072 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014073 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_30",
14074 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_30",
14075 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_30",
14076 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_30",
14077 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_30",
14078 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_30",
14079 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_30",
14080 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_30",
14081 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_30",
14082 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_30",
14083 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_30",
14084 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_30",
14085 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_30",
14086 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_30",
14087 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_30",
14088 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_30",
14089 "NoAction" : "tbl_act_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014090 },
14091 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014092 "action_id" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014093 "action_const" : false,
14094 "action_data" : [],
14095 "action_entry_const" : false
14096 },
14097 "entries" : [
14098 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014099 "source_info" : {
14100 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014101 "line" : 398,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014102 "column" : 12,
14103 "source_fragment" : "(0x0) : int_set_header_0407_i0()"
14104 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014105 "match_key" : [
14106 {
14107 "match_type" : "exact",
14108 "key" : "0x00"
14109 }
14110 ],
14111 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014112 "action_id" : 77,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014113 "action_data" : []
14114 },
14115 "priority" : 1
14116 },
14117 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014118 "source_info" : {
14119 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014120 "line" : 399,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014121 "column" : 12,
14122 "source_fragment" : "(0x1) : int_set_header_0407_i1()"
14123 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014124 "match_key" : [
14125 {
14126 "match_type" : "exact",
14127 "key" : "0x01"
14128 }
14129 ],
14130 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014131 "action_id" : 78,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014132 "action_data" : []
14133 },
14134 "priority" : 2
14135 },
14136 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014137 "source_info" : {
14138 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014139 "line" : 400,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014140 "column" : 12,
14141 "source_fragment" : "(0x2) : int_set_header_0407_i2()"
14142 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014143 "match_key" : [
14144 {
14145 "match_type" : "exact",
14146 "key" : "0x02"
14147 }
14148 ],
14149 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014150 "action_id" : 79,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014151 "action_data" : []
14152 },
14153 "priority" : 3
14154 },
14155 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014156 "source_info" : {
14157 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014158 "line" : 401,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014159 "column" : 12,
14160 "source_fragment" : "(0x3) : int_set_header_0407_i3()"
14161 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014162 "match_key" : [
14163 {
14164 "match_type" : "exact",
14165 "key" : "0x03"
14166 }
14167 ],
14168 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014169 "action_id" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014170 "action_data" : []
14171 },
14172 "priority" : 4
14173 },
14174 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014175 "source_info" : {
14176 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014177 "line" : 402,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014178 "column" : 12,
14179 "source_fragment" : "(0x4) : int_set_header_0407_i4()"
14180 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014181 "match_key" : [
14182 {
14183 "match_type" : "exact",
14184 "key" : "0x04"
14185 }
14186 ],
14187 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014188 "action_id" : 81,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014189 "action_data" : []
14190 },
14191 "priority" : 5
14192 },
14193 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014194 "source_info" : {
14195 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014196 "line" : 403,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014197 "column" : 12,
14198 "source_fragment" : "(0x5) : int_set_header_0407_i5()"
14199 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014200 "match_key" : [
14201 {
14202 "match_type" : "exact",
14203 "key" : "0x05"
14204 }
14205 ],
14206 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014207 "action_id" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014208 "action_data" : []
14209 },
14210 "priority" : 6
14211 },
14212 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014213 "source_info" : {
14214 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014215 "line" : 404,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014216 "column" : 12,
14217 "source_fragment" : "(0x6) : int_set_header_0407_i6()"
14218 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014219 "match_key" : [
14220 {
14221 "match_type" : "exact",
14222 "key" : "0x06"
14223 }
14224 ],
14225 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014226 "action_id" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014227 "action_data" : []
14228 },
14229 "priority" : 7
14230 },
14231 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014232 "source_info" : {
14233 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014234 "line" : 405,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014235 "column" : 12,
14236 "source_fragment" : "(0x7) : int_set_header_0407_i7()"
14237 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014238 "match_key" : [
14239 {
14240 "match_type" : "exact",
14241 "key" : "0x07"
14242 }
14243 ],
14244 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014245 "action_id" : 84,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014246 "action_data" : []
14247 },
14248 "priority" : 8
14249 },
14250 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014251 "source_info" : {
14252 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014253 "line" : 406,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014254 "column" : 12,
14255 "source_fragment" : "(0x8) : int_set_header_0407_i8()"
14256 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014257 "match_key" : [
14258 {
14259 "match_type" : "exact",
14260 "key" : "0x08"
14261 }
14262 ],
14263 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014264 "action_id" : 85,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014265 "action_data" : []
14266 },
14267 "priority" : 9
14268 },
14269 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014270 "source_info" : {
14271 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014272 "line" : 407,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014273 "column" : 12,
14274 "source_fragment" : "(0x9) : int_set_header_0407_i9()"
14275 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014276 "match_key" : [
14277 {
14278 "match_type" : "exact",
14279 "key" : "0x09"
14280 }
14281 ],
14282 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014283 "action_id" : 86,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014284 "action_data" : []
14285 },
14286 "priority" : 10
14287 },
14288 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014289 "source_info" : {
14290 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014291 "line" : 408,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014292 "column" : 12,
14293 "source_fragment" : "(0xA) : int_set_header_0407_i10()"
14294 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014295 "match_key" : [
14296 {
14297 "match_type" : "exact",
14298 "key" : "0x0a"
14299 }
14300 ],
14301 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014302 "action_id" : 87,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014303 "action_data" : []
14304 },
14305 "priority" : 11
14306 },
14307 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014308 "source_info" : {
14309 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014310 "line" : 409,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014311 "column" : 12,
14312 "source_fragment" : "(0xB) : int_set_header_0407_i11()"
14313 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014314 "match_key" : [
14315 {
14316 "match_type" : "exact",
14317 "key" : "0x0b"
14318 }
14319 ],
14320 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014321 "action_id" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014322 "action_data" : []
14323 },
14324 "priority" : 12
14325 },
14326 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014327 "source_info" : {
14328 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014329 "line" : 410,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014330 "column" : 12,
14331 "source_fragment" : "(0xC) : int_set_header_0407_i12()"
14332 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014333 "match_key" : [
14334 {
14335 "match_type" : "exact",
14336 "key" : "0x0c"
14337 }
14338 ],
14339 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014340 "action_id" : 89,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014341 "action_data" : []
14342 },
14343 "priority" : 13
14344 },
14345 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014346 "source_info" : {
14347 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014348 "line" : 411,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014349 "column" : 12,
14350 "source_fragment" : "(0xD) : int_set_header_0407_i13()"
14351 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014352 "match_key" : [
14353 {
14354 "match_type" : "exact",
14355 "key" : "0x0d"
14356 }
14357 ],
14358 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014359 "action_id" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014360 "action_data" : []
14361 },
14362 "priority" : 14
14363 },
14364 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014365 "source_info" : {
14366 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014367 "line" : 412,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014368 "column" : 12,
14369 "source_fragment" : "(0xE) : int_set_header_0407_i14()"
14370 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014371 "match_key" : [
14372 {
14373 "match_type" : "exact",
14374 "key" : "0x0e"
14375 }
14376 ],
14377 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014378 "action_id" : 91,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014379 "action_data" : []
14380 },
14381 "priority" : 15
14382 },
14383 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014384 "source_info" : {
14385 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014386 "line" : 413,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014387 "column" : 12,
14388 "source_fragment" : "(0xF) : int_set_header_0407_i15()"
14389 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014390 "match_key" : [
14391 {
14392 "match_type" : "exact",
14393 "key" : "0x0f"
14394 }
14395 ],
14396 "action_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014397 "action_id" : 92,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014398 "action_data" : []
14399 },
14400 "priority" : 16
14401 }
14402 ]
14403 },
14404 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014405 "name" : "tbl_act_30",
14406 "id" : 54,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014407 "source_info" : {
14408 "filename" : "include/int/int_transit.p4",
14409 "line" : 425,
14410 "column" : 37,
14411 "source_fragment" : "="
14412 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014413 "key" : [],
14414 "match_type" : "exact",
14415 "type" : "simple",
14416 "max_size" : 1024,
14417 "with_counters" : false,
14418 "support_timeout" : false,
14419 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014420 "action_ids" : [109],
14421 "actions" : ["act_31"],
14422 "base_default_next" : "node_93",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014423 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014424 "act_31" : "node_93"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014425 },
14426 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014427 "action_id" : 109,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014428 "action_const" : true,
14429 "action_data" : [],
14430 "action_entry_const" : true
14431 }
14432 },
14433 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014434 "name" : "tbl_act_31",
14435 "id" : 55,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014436 "source_info" : {
14437 "filename" : "include/int/int_transit.p4",
14438 "line" : 428,
14439 "column" : 31,
14440 "source_fragment" : "="
14441 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014442 "key" : [],
14443 "match_type" : "exact",
14444 "type" : "simple",
14445 "max_size" : 1024,
14446 "with_counters" : false,
14447 "support_timeout" : false,
14448 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014449 "action_ids" : [108],
14450 "actions" : ["act_30"],
14451 "base_default_next" : "node_95",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014452 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014453 "act_30" : "node_95"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014454 },
14455 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014456 "action_id" : 108,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014457 "action_const" : true,
14458 "action_data" : [],
14459 "action_entry_const" : true
14460 }
14461 },
14462 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014463 "name" : "tbl_act_32",
14464 "id" : 56,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014465 "source_info" : {
14466 "filename" : "include/int/int_transit.p4",
14467 "line" : 431,
14468 "column" : 24,
14469 "source_fragment" : "="
14470 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014471 "key" : [],
14472 "match_type" : "exact",
14473 "type" : "simple",
14474 "max_size" : 1024,
14475 "with_counters" : false,
14476 "support_timeout" : false,
14477 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014478 "action_ids" : [110],
14479 "actions" : ["act_32"],
14480 "base_default_next" : "node_97",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014481 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014482 "act_32" : "node_97"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014483 },
14484 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014485 "action_id" : 110,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014486 "action_const" : true,
14487 "action_data" : [],
14488 "action_entry_const" : true
14489 }
14490 },
14491 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014492 "name" : "tbl_act_33",
14493 "id" : 57,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014494 "source_info" : {
14495 "filename" : "include/int/int_transit.p4",
14496 "line" : 434,
14497 "column" : 37,
14498 "source_fragment" : "="
14499 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014500 "key" : [],
14501 "match_type" : "exact",
14502 "type" : "simple",
14503 "max_size" : 1024,
14504 "with_counters" : false,
14505 "support_timeout" : false,
14506 "direct_meters" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014507 "action_ids" : [111],
14508 "actions" : ["act_33"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014509 "base_default_next" : null,
14510 "next_tables" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014511 "act_33" : null
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014512 },
14513 "default_entry" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014514 "action_id" : 111,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014515 "action_const" : true,
14516 "action_data" : [],
14517 "action_entry_const" : true
14518 }
14519 }
14520 ],
14521 "action_profiles" : [],
14522 "conditionals" : [
14523 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014524 "name" : "node_55",
14525 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014526 "source_info" : {
14527 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014528 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014529 "column" : 12,
14530 "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
14531 },
14532 "expression" : {
14533 "type" : "expression",
14534 "value" : {
14535 "op" : "==",
14536 "left" : {
14537 "type" : "expression",
14538 "value" : {
14539 "op" : "d2b",
14540 "left" : null,
14541 "right" : {
14542 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080014543 "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out12"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014544 }
14545 }
14546 },
14547 "right" : {
14548 "type" : "bool",
14549 "value" : true
14550 }
14551 }
14552 },
Carmelo Cascone9b607da2019-05-08 14:03:01 -070014553 "true_next" : "tbl_act_19",
14554 "false_next" : "node_57"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014555 },
14556 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070014557 "name" : "node_57",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014558 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014559 "source_info" : {
14560 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014561 "line" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014562 "column" : 12,
14563 "source_fragment" : "standard_metadata.egress_port == 255"
14564 },
14565 "expression" : {
14566 "type" : "expression",
14567 "value" : {
14568 "op" : "==",
14569 "left" : {
14570 "type" : "field",
14571 "value" : ["standard_metadata", "egress_port"]
14572 },
14573 "right" : {
14574 "type" : "hexstr",
14575 "value" : "0x00ff"
14576 }
14577 }
14578 },
Carmelo Cascone9b607da2019-05-08 14:03:01 -070014579 "true_next" : "tbl_act_20",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014580 "false_next" : "node_59"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014581 },
14582 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014583 "name" : "node_59",
14584 "id" : 19,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014585 "source_info" : {
14586 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070014587 "line" : 306,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014588 "column" : 12,
14589 "source_fragment" : "fabric_metadata.is_multicast == true ..."
14590 },
14591 "expression" : {
14592 "type" : "expression",
14593 "value" : {
14594 "op" : "and",
14595 "left" : {
14596 "type" : "expression",
14597 "value" : {
14598 "op" : "==",
14599 "left" : {
14600 "type" : "expression",
14601 "value" : {
14602 "op" : "d2b",
14603 "left" : null,
14604 "right" : {
14605 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080014606 "value" : ["scalars", "fabric_metadata_t._is_multicast11"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014607 }
14608 }
14609 },
14610 "right" : {
14611 "type" : "bool",
14612 "value" : true
14613 }
14614 }
14615 },
14616 "right" : {
14617 "type" : "expression",
14618 "value" : {
14619 "op" : "==",
14620 "left" : {
14621 "type" : "field",
14622 "value" : ["standard_metadata", "ingress_port"]
14623 },
14624 "right" : {
14625 "type" : "field",
14626 "value" : ["standard_metadata", "egress_port"]
14627 }
14628 }
14629 }
14630 }
14631 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014632 "true_next" : "tbl_act_21",
14633 "false_next" : "node_61"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014634 },
14635 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014636 "name" : "node_61",
14637 "id" : 20,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014638 "source_info" : {
14639 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070014640 "line" : 311,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014641 "column" : 12,
14642 "source_fragment" : "fabric_metadata.mpls_label == 0"
14643 },
14644 "expression" : {
14645 "type" : "expression",
14646 "value" : {
14647 "op" : "==",
14648 "left" : {
14649 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080014650 "value" : ["scalars", "fabric_metadata_t._mpls_label5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014651 },
14652 "right" : {
14653 "type" : "hexstr",
14654 "value" : "0x000000"
14655 }
14656 }
14657 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014658 "true_next" : "node_62",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014659 "false_next" : "tbl_egress_next_set_mpls"
14660 },
14661 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014662 "name" : "node_62",
14663 "id" : 21,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014664 "source_info" : {
14665 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070014666 "line" : 312,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014667 "column" : 16,
14668 "source_fragment" : "hdr.mpls.isValid()"
14669 },
14670 "expression" : {
14671 "type" : "expression",
14672 "value" : {
14673 "op" : "d2b",
14674 "left" : null,
14675 "right" : {
14676 "type" : "field",
14677 "value" : ["mpls", "$valid$"]
14678 }
14679 }
14680 },
14681 "true_next" : "tbl_egress_next_pop_mpls_if_present",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014682 "false_next" : "FabricEgress.egress_next.egress_vlan"
14683 },
14684 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014685 "name" : "node_68",
14686 "id" : 22,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014687 "source_info" : {
14688 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070014689 "line" : 317,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014690 "column" : 12,
14691 "source_fragment" : "!egress_vlan.apply().hit"
14692 },
14693 "expression" : {
14694 "type" : "expression",
14695 "value" : {
14696 "op" : "not",
14697 "left" : null,
14698 "right" : {
14699 "type" : "expression",
14700 "value" : {
14701 "op" : "d2b",
14702 "left" : null,
14703 "right" : {
14704 "type" : "field",
14705 "value" : ["scalars", "egress_next_tmp"]
14706 }
14707 }
14708 }
14709 }
14710 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014711 "true_next" : "node_69",
14712 "false_next" : "node_71"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014713 },
14714 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014715 "name" : "node_69",
14716 "id" : 23,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014717 "source_info" : {
14718 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070014719 "line" : 319,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014720 "column" : 16,
14721 "source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
14722 },
14723 "expression" : {
14724 "type" : "expression",
14725 "value" : {
14726 "op" : "!=",
14727 "left" : {
14728 "type" : "field",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080014729 "value" : ["scalars", "fabric_metadata_t._vlan_id2"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014730 },
14731 "right" : {
14732 "type" : "hexstr",
14733 "value" : "0x0ffe"
14734 }
14735 }
14736 },
14737 "true_next" : "tbl_egress_next_push_vlan",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014738 "false_next" : "node_71"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014739 },
14740 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014741 "name" : "node_71",
14742 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014743 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014744 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070014745 "line" : 325,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014746 "column" : 12,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014747 "source_fragment" : "hdr.mpls.isValid()"
14748 },
14749 "expression" : {
14750 "type" : "expression",
14751 "value" : {
14752 "op" : "d2b",
14753 "left" : null,
14754 "right" : {
14755 "type" : "field",
14756 "value" : ["mpls", "$valid$"]
14757 }
14758 }
14759 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014760 "true_next" : "tbl_act_24",
14761 "false_next" : "node_75"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014762 },
14763 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014764 "name" : "node_73",
14765 "id" : 25,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014766 "source_info" : {
14767 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070014768 "line" : 327,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014769 "column" : 16,
14770 "source_fragment" : "hdr.mpls.ttl == 0"
14771 },
14772 "expression" : {
14773 "type" : "expression",
14774 "value" : {
14775 "op" : "==",
14776 "left" : {
14777 "type" : "field",
14778 "value" : ["mpls", "ttl"]
14779 },
14780 "right" : {
14781 "type" : "hexstr",
14782 "value" : "0x00"
14783 }
14784 }
14785 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014786 "true_next" : "tbl_act_25",
14787 "false_next" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014788 },
14789 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014790 "name" : "node_75",
14791 "id" : 26,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014792 "source_info" : {
14793 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070014794 "line" : 329,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014795 "column" : 15,
14796 "source_fragment" : "hdr.ipv4.isValid()"
14797 },
14798 "expression" : {
14799 "type" : "expression",
14800 "value" : {
14801 "op" : "d2b",
14802 "left" : null,
14803 "right" : {
14804 "type" : "field",
14805 "value" : ["ipv4", "$valid$"]
14806 }
14807 }
14808 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014809 "true_next" : "tbl_act_26",
14810 "false_next" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014811 },
14812 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014813 "name" : "node_77",
14814 "id" : 27,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014815 "source_info" : {
14816 "filename" : "include/control/next.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070014817 "line" : 331,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014818 "column" : 20,
14819 "source_fragment" : "hdr.ipv4.ttl == 0"
14820 },
14821 "expression" : {
14822 "type" : "expression",
14823 "value" : {
14824 "op" : "==",
14825 "left" : {
14826 "type" : "field",
14827 "value" : ["ipv4", "ttl"]
14828 },
14829 "right" : {
14830 "type" : "hexstr",
14831 "value" : "0x00"
14832 }
14833 }
14834 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014835 "true_next" : "tbl_act_27",
14836 "false_next" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014837 },
14838 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014839 "name" : "node_79",
14840 "id" : 28,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014841 "source_info" : {
14842 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070014843 "line" : 227,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014844 "column" : 12,
14845 "source_fragment" : "fabric_meta.spgw.direction == SPGW_DIR_DOWNLINK"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014846 },
14847 "expression" : {
14848 "type" : "expression",
14849 "value" : {
14850 "op" : "==",
14851 "left" : {
14852 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014853 "value" : ["scalars", "fabric_metadata_t._spgw_direction16"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014854 },
14855 "right" : {
14856 "type" : "hexstr",
14857 "value" : "0x02"
14858 }
14859 }
14860 },
14861 "true_next" : "tbl_spgw_egress_gtpu_encap",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014862 "false_next" : "node_81"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014863 },
14864 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014865 "name" : "node_81",
14866 "id" : 29,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014867 "source_info" : {
14868 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014869 "line" : 102,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014870 "column" : 12,
14871 "source_fragment" : "standard_metadata.ingress_port != 255 && ..."
14872 },
14873 "expression" : {
14874 "type" : "expression",
14875 "value" : {
14876 "op" : "and",
14877 "left" : {
14878 "type" : "expression",
14879 "value" : {
14880 "op" : "and",
14881 "left" : {
14882 "type" : "expression",
14883 "value" : {
14884 "op" : "!=",
14885 "left" : {
14886 "type" : "field",
14887 "value" : ["standard_metadata", "ingress_port"]
14888 },
14889 "right" : {
14890 "type" : "hexstr",
14891 "value" : "0x00ff"
14892 }
14893 }
14894 },
14895 "right" : {
14896 "type" : "expression",
14897 "value" : {
14898 "op" : "!=",
14899 "left" : {
14900 "type" : "field",
14901 "value" : ["standard_metadata", "egress_port"]
14902 },
14903 "right" : {
14904 "type" : "hexstr",
14905 "value" : "0x00ff"
14906 }
14907 }
14908 }
14909 }
14910 },
14911 "right" : {
14912 "type" : "expression",
14913 "value" : {
14914 "op" : "or",
14915 "left" : {
14916 "type" : "expression",
14917 "value" : {
14918 "op" : "d2b",
14919 "left" : null,
14920 "right" : {
14921 "type" : "field",
14922 "value" : ["udp", "$valid$"]
14923 }
14924 }
14925 },
14926 "right" : {
14927 "type" : "expression",
14928 "value" : {
14929 "op" : "d2b",
14930 "left" : null,
14931 "right" : {
14932 "type" : "field",
14933 "value" : ["tcp", "$valid$"]
14934 }
14935 }
14936 }
14937 }
14938 }
14939 }
14940 },
14941 "false_next" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014942 "true_next" : "node_82"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014943 },
14944 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014945 "name" : "node_82",
14946 "id" : 30,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014947 "source_info" : {
14948 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014949 "line" : 106,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014950 "column" : 16,
14951 "source_fragment" : "fabric_metadata.int_meta.source == true"
14952 },
14953 "expression" : {
14954 "type" : "expression",
14955 "value" : {
14956 "op" : "==",
14957 "left" : {
14958 "type" : "expression",
14959 "value" : {
14960 "op" : "d2b",
14961 "left" : null,
14962 "right" : {
14963 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014964 "value" : ["scalars", "fabric_metadata_t._int_meta_source21"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014965 }
14966 }
14967 },
14968 "right" : {
14969 "type" : "bool",
14970 "value" : true
14971 }
14972 }
14973 },
14974 "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014975 "false_next" : "node_84"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014976 },
14977 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014978 "name" : "node_84",
14979 "id" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014980 "source_info" : {
14981 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014982 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014983 "column" : 15,
14984 "source_fragment" : "hdr.int_header.isValid()"
14985 },
14986 "expression" : {
14987 "type" : "expression",
14988 "value" : {
14989 "op" : "d2b",
14990 "left" : null,
14991 "right" : {
14992 "type" : "field",
14993 "value" : ["int_header", "$valid$"]
14994 }
14995 }
14996 },
14997 "false_next" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070014998 "true_next" : "tbl_act_28"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014999 },
15000 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015001 "name" : "node_87",
15002 "id" : 32,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015003 "source_info" : {
15004 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015005 "line" : 419,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015006 "column" : 12,
15007 "source_fragment" : "fmeta.int_meta.transit == false"
15008 },
15009 "expression" : {
15010 "type" : "expression",
15011 "value" : {
15012 "op" : "==",
15013 "left" : {
15014 "type" : "expression",
15015 "value" : {
15016 "op" : "d2b",
15017 "left" : null,
15018 "right" : {
15019 "type" : "field",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015020 "value" : ["scalars", "fabric_metadata_t._int_meta_transit22"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015021 }
15022 }
15023 },
15024 "right" : {
15025 "type" : "bool",
15026 "value" : false
15027 }
15028 }
15029 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015030 "true_next" : "tbl_act_29",
15031 "false_next" : "node_89"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015032 },
15033 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015034 "name" : "node_89",
15035 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015036 "expression" : {
15037 "type" : "expression",
15038 "value" : {
15039 "op" : "not",
15040 "left" : null,
15041 "right" : {
15042 "type" : "expression",
15043 "value" : {
15044 "op" : "d2b",
15045 "left" : null,
15046 "right" : {
15047 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015048 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015049 }
15050 }
15051 }
15052 }
15053 },
15054 "false_next" : null,
15055 "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
15056 },
15057 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015058 "name" : "node_93",
15059 "id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015060 "source_info" : {
15061 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015062 "line" : 427,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015063 "column" : 12,
15064 "source_fragment" : "hdr.ipv4.isValid()"
15065 },
15066 "expression" : {
15067 "type" : "expression",
15068 "value" : {
15069 "op" : "d2b",
15070 "left" : null,
15071 "right" : {
15072 "type" : "field",
15073 "value" : ["ipv4", "$valid$"]
15074 }
15075 }
15076 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015077 "true_next" : "tbl_act_31",
15078 "false_next" : "node_95"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015079 },
15080 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015081 "name" : "node_95",
15082 "id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015083 "source_info" : {
15084 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015085 "line" : 430,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015086 "column" : 12,
15087 "source_fragment" : "hdr.udp.isValid()"
15088 },
15089 "expression" : {
15090 "type" : "expression",
15091 "value" : {
15092 "op" : "d2b",
15093 "left" : null,
15094 "right" : {
15095 "type" : "field",
15096 "value" : ["udp", "$valid$"]
15097 }
15098 }
15099 },
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015100 "true_next" : "tbl_act_32",
15101 "false_next" : "node_97"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015102 },
15103 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015104 "name" : "node_97",
15105 "id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015106 "source_info" : {
15107 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015108 "line" : 433,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015109 "column" : 12,
15110 "source_fragment" : "hdr.intl4_shim.isValid()"
15111 },
15112 "expression" : {
15113 "type" : "expression",
15114 "value" : {
15115 "op" : "d2b",
15116 "left" : null,
15117 "right" : {
15118 "type" : "field",
15119 "value" : ["intl4_shim", "$valid$"]
15120 }
15121 }
15122 },
15123 "false_next" : null,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070015124 "true_next" : "tbl_act_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015125 }
15126 ]
15127 }
15128 ],
15129 "checksums" : [
15130 {
15131 "name" : "cksum",
15132 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015133 "source_info" : {
15134 "filename" : "include/checksum.p4",
15135 "line" : 28,
15136 "column" : 8,
15137 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
15138 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015139 "target" : ["ipv4", "hdr_checksum"],
15140 "type" : "generic",
15141 "calculation" : "calc",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080015142 "verify" : false,
15143 "update" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015144 "if_cond" : {
15145 "type" : "expression",
15146 "value" : {
15147 "op" : "d2b",
15148 "left" : null,
15149 "right" : {
15150 "type" : "field",
15151 "value" : ["ipv4", "$valid$"]
15152 }
15153 }
15154 }
15155 },
15156 {
15157 "name" : "cksum_0",
15158 "id" : 1,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015159 "source_info" : {
15160 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070015161 "line" : 243,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015162 "column" : 8,
15163 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
15164 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015165 "target" : ["gtpu_ipv4", "hdr_checksum"],
15166 "type" : "generic",
15167 "calculation" : "calc_0",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080015168 "verify" : false,
15169 "update" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015170 "if_cond" : {
15171 "type" : "expression",
15172 "value" : {
15173 "op" : "d2b",
15174 "left" : null,
15175 "right" : {
15176 "type" : "field",
15177 "value" : ["gtpu_ipv4", "$valid$"]
15178 }
15179 }
15180 }
15181 },
15182 {
15183 "name" : "cksum_1",
15184 "id" : 2,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015185 "source_info" : {
15186 "filename" : "include/checksum.p4",
15187 "line" : 57,
15188 "column" : 8,
15189 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
15190 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015191 "target" : ["ipv4", "hdr_checksum"],
15192 "type" : "generic",
15193 "calculation" : "calc_1",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080015194 "verify" : true,
15195 "update" : false,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015196 "if_cond" : {
15197 "type" : "expression",
15198 "value" : {
15199 "op" : "d2b",
15200 "left" : null,
15201 "right" : {
15202 "type" : "field",
15203 "value" : ["ipv4", "$valid$"]
15204 }
15205 }
15206 }
15207 }
15208 ],
15209 "force_arith" : [],
15210 "extern_instances" : [],
15211 "field_aliases" : [
15212 [
15213 "queueing_metadata.enq_timestamp",
15214 ["standard_metadata", "enq_timestamp"]
15215 ],
15216 [
15217 "queueing_metadata.enq_qdepth",
15218 ["standard_metadata", "enq_qdepth"]
15219 ],
15220 [
15221 "queueing_metadata.deq_timedelta",
15222 ["standard_metadata", "deq_timedelta"]
15223 ],
15224 [
15225 "queueing_metadata.deq_qdepth",
15226 ["standard_metadata", "deq_qdepth"]
15227 ],
15228 [
15229 "intrinsic_metadata.ingress_global_timestamp",
15230 ["standard_metadata", "ingress_global_timestamp"]
15231 ],
15232 [
15233 "intrinsic_metadata.egress_global_timestamp",
15234 ["standard_metadata", "egress_global_timestamp"]
15235 ],
15236 [
15237 "intrinsic_metadata.lf_field_list",
15238 ["standard_metadata", "lf_field_list"]
15239 ],
15240 [
15241 "intrinsic_metadata.mcast_grp",
15242 ["standard_metadata", "mcast_grp"]
15243 ],
15244 [
15245 "intrinsic_metadata.resubmit_flag",
15246 ["standard_metadata", "resubmit_flag"]
15247 ],
15248 [
15249 "intrinsic_metadata.egress_rid",
15250 ["standard_metadata", "egress_rid"]
15251 ],
15252 [
15253 "intrinsic_metadata.recirculate_flag",
15254 ["standard_metadata", "recirculate_flag"]
Carmelo Cascone9b607da2019-05-08 14:03:01 -070015255 ],
15256 [
15257 "intrinsic_metadata.priority",
15258 ["standard_metadata", "priority"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015259 ]
15260 ],
15261 "program" : "fabric.p4",
15262 "__meta__" : {
15263 "version" : [2, 18],
15264 "compiler" : "https://github.com/p4lang/p4c"
15265 }
Carmelo Cascone25243d62019-02-21 15:37:31 -080015266}