blob: a3e31ffa9727e2372e29bc184a5538e7c62ceea8 [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],
Daniele Moro5a2de712019-09-24 14:34:07 -07008 ["tmp_2", 16, false],
9 ["tmp_3", 16, false],
10 ["tmp_4", 4, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011 ["tmp", 8, false],
Daniele Moro5a2de712019-09-24 14:34:07 -070012 ["tmp_0", 32, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013 ["tmp_1", 32, false],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014 ["spgw_ingress_tmp", 1, false],
15 ["spgw_ingress_tmp_0", 1, false],
16 ["spgw_normalizer_hasReturned", 1, false],
17 ["spgw_ingress_hasReturned", 1, false],
18 ["egress_next_tmp", 1, false],
19 ["process_int_main_process_int_transit_hasReturned", 1, false],
Daniele Moro5a2de712019-09-24 14:34:07 -070020 ["fabric_metadata_t._ip_eth_type0", 16, false],
21 ["fabric_metadata_t._vlan_id1", 12, false],
22 ["fabric_metadata_t._vlan_pri2", 3, false],
23 ["fabric_metadata_t._vlan_cfi3", 1, false],
24 ["fabric_metadata_t._mpls_label4", 20, false],
25 ["fabric_metadata_t._mpls_ttl5", 8, false],
26 ["fabric_metadata_t._skip_forwarding6", 1, false],
27 ["fabric_metadata_t._skip_next7", 1, false],
28 ["fabric_metadata_t._fwd_type8", 3, false],
29 ["fabric_metadata_t._next_id9", 32, false],
30 ["fabric_metadata_t._is_multicast10", 1, false],
31 ["fabric_metadata_t._is_controller_packet_out11", 1, false],
32 ["fabric_metadata_t._ip_proto12", 8, false],
33 ["fabric_metadata_t._l4_sport13", 16, false],
34 ["fabric_metadata_t._l4_dport14", 16, false],
35 ["fabric_metadata_t._spgw_direction15", 2, false],
36 ["fabric_metadata_t._spgw_ipv4_len16", 16, false],
37 ["fabric_metadata_t._spgw_teid17", 32, false],
38 ["fabric_metadata_t._spgw_s1u_enb_addr18", 32, false],
39 ["fabric_metadata_t._spgw_s1u_sgw_addr19", 32, false],
40 ["fabric_metadata_t._int_meta_source20", 1, false],
41 ["fabric_metadata_t._int_meta_transit21", 1, false],
42 ["fabric_metadata_t._int_meta_sink22", 1, false],
43 ["fabric_metadata_t._int_meta_switch_id23", 32, false],
44 ["fabric_metadata_t._int_meta_new_words24", 8, false],
45 ["fabric_metadata_t._int_meta_new_bytes25", 16, false],
46 ["fabric_metadata_t._int_meta_ig_tstamp26", 32, false],
47 ["fabric_metadata_t._int_meta_eg_tstamp27", 32, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070048 ]
49 },
50 {
51 "name" : "standard_metadata",
52 "id" : 1,
53 "fields" : [
54 ["ingress_port", 9, false],
55 ["egress_spec", 9, false],
56 ["egress_port", 9, false],
57 ["clone_spec", 32, false],
58 ["instance_type", 32, false],
59 ["drop", 1, false],
60 ["recirculate_port", 16, false],
61 ["packet_length", 32, false],
62 ["enq_timestamp", 32, false],
63 ["enq_qdepth", 19, false],
64 ["deq_timedelta", 32, false],
65 ["deq_qdepth", 19, false],
66 ["ingress_global_timestamp", 48, false],
67 ["egress_global_timestamp", 48, false],
68 ["lf_field_list", 32, false],
69 ["mcast_grp", 16, false],
70 ["resubmit_flag", 32, false],
71 ["egress_rid", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070072 ["recirculate_flag", 32, false],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070073 ["checksum_error", 1, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070074 ["parser_error", 32, false],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070075 ["priority", 3, false],
76 ["_padding", 2, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070077 ]
78 },
79 {
80 "name" : "ethernet_t",
81 "id" : 2,
82 "fields" : [
83 ["dst_addr", 48, false],
Daniele Moro5a2de712019-09-24 14:34:07 -070084 ["src_addr", 48, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070085 ]
86 },
87 {
88 "name" : "vlan_tag_t",
89 "id" : 3,
90 "fields" : [
Daniele Moro5a2de712019-09-24 14:34:07 -070091 ["eth_type", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070092 ["pri", 3, false],
93 ["cfi", 1, false],
Daniele Moro5a2de712019-09-24 14:34:07 -070094 ["vlan_id", 12, false]
95 ]
96 },
97 {
98 "name" : "eth_type_t",
99 "id" : 4,
100 "fields" : [
101 ["value", 16, false]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700102 ]
103 },
104 {
105 "name" : "mpls_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700106 "id" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700107 "fields" : [
108 ["label", 20, false],
109 ["tc", 3, false],
110 ["bos", 1, false],
111 ["ttl", 8, false]
112 ]
113 },
114 {
115 "name" : "ipv4_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700116 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700117 "fields" : [
118 ["version", 4, false],
119 ["ihl", 4, false],
120 ["dscp", 6, false],
121 ["ecn", 2, false],
122 ["total_len", 16, false],
123 ["identification", 16, false],
124 ["flags", 3, false],
125 ["frag_offset", 13, false],
126 ["ttl", 8, false],
127 ["protocol", 8, false],
128 ["hdr_checksum", 16, false],
129 ["src_addr", 32, false],
130 ["dst_addr", 32, false]
131 ]
132 },
133 {
134 "name" : "udp_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700135 "id" : 7,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700136 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800137 ["sport", 16, false],
138 ["dport", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700139 ["len", 16, false],
140 ["checksum", 16, false]
141 ]
142 },
143 {
144 "name" : "gtpu_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700145 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700146 "fields" : [
147 ["version", 3, false],
148 ["pt", 1, false],
149 ["spare", 1, false],
150 ["ex_flag", 1, false],
151 ["seq_flag", 1, false],
152 ["npdu_flag", 1, false],
153 ["msgtype", 8, false],
154 ["msglen", 16, false],
155 ["teid", 32, false]
156 ]
157 },
158 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800159 "name" : "tcp_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700160 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700161 "fields" : [
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800162 ["sport", 16, false],
163 ["dport", 16, false],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700164 ["seq_no", 32, false],
165 ["ack_no", 32, false],
166 ["data_offset", 4, false],
167 ["res", 3, false],
168 ["ecn", 3, false],
169 ["ctrl", 6, false],
170 ["window", 16, false],
171 ["checksum", 16, false],
172 ["urgent_ptr", 16, false]
173 ]
174 },
175 {
176 "name" : "icmp_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700177 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700178 "fields" : [
179 ["icmp_type", 8, false],
180 ["icmp_code", 8, false],
181 ["checksum", 16, false],
182 ["identifier", 16, false],
183 ["sequence_number", 16, false],
184 ["timestamp", 64, false]
185 ]
186 },
187 {
188 "name" : "packet_out_header_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700189 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700190 "fields" : [
191 ["egress_port", 9, false],
192 ["_pad", 7, false]
193 ]
194 },
195 {
196 "name" : "packet_in_header_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700197 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700198 "fields" : [
199 ["ingress_port", 9, false],
200 ["_pad", 7, false]
201 ]
202 },
203 {
204 "name" : "intl4_shim_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700205 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700206 "fields" : [
207 ["int_type", 8, false],
208 ["rsvd1", 8, false],
209 ["len_words", 8, false],
210 ["rsvd2", 8, false]
211 ]
212 },
213 {
214 "name" : "int_header_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700215 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700216 "fields" : [
217 ["ver", 2, false],
218 ["rep", 2, false],
219 ["c", 1, false],
220 ["e", 1, false],
221 ["rsvd1", 5, false],
222 ["ins_cnt", 5, false],
223 ["max_hop_cnt", 8, false],
224 ["total_hop_cnt", 8, false],
225 ["instruction_mask_0003", 4, false],
226 ["instruction_mask_0407", 4, false],
227 ["instruction_mask_0811", 4, false],
228 ["instruction_mask_1215", 4, false],
229 ["rsvd2", 16, false]
230 ]
231 },
232 {
233 "name" : "int_switch_id_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700234 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700235 "fields" : [
236 ["switch_id", 32, false]
237 ]
238 },
239 {
240 "name" : "int_port_ids_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700241 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700242 "fields" : [
243 ["ingress_port_id", 16, false],
244 ["egress_port_id", 16, false]
245 ]
246 },
247 {
248 "name" : "int_hop_latency_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700249 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700250 "fields" : [
251 ["hop_latency", 32, false]
252 ]
253 },
254 {
255 "name" : "int_q_occupancy_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700256 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700257 "fields" : [
258 ["q_id", 8, false],
259 ["q_occupancy", 24, false]
260 ]
261 },
262 {
263 "name" : "int_ingress_tstamp_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700264 "id" : 19,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700265 "fields" : [
266 ["ingress_tstamp", 32, false]
267 ]
268 },
269 {
270 "name" : "int_egress_tstamp_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700271 "id" : 20,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700272 "fields" : [
273 ["egress_tstamp", 32, false]
274 ]
275 },
276 {
277 "name" : "int_q_congestion_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700278 "id" : 21,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700279 "fields" : [
280 ["q_id", 8, false],
281 ["q_congestion", 24, false]
282 ]
283 },
284 {
285 "name" : "int_egress_port_tx_util_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700286 "id" : 22,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700287 "fields" : [
288 ["egress_port_tx_util", 32, false]
289 ]
290 },
291 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700292 "name" : "intl4_tail_t",
Daniele Moro5a2de712019-09-24 14:34:07 -0700293 "id" : 23,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700294 "fields" : [
295 ["next_proto", 8, false],
296 ["dest_port", 16, false],
297 ["padding", 2, false],
298 ["dscp", 6, false]
299 ]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700300 }
301 ],
302 "headers" : [
303 {
304 "name" : "scalars",
305 "id" : 0,
306 "header_type" : "scalars_0",
307 "metadata" : true,
308 "pi_omit" : true
309 },
310 {
311 "name" : "standard_metadata",
312 "id" : 1,
313 "header_type" : "standard_metadata",
314 "metadata" : true,
315 "pi_omit" : true
316 },
317 {
318 "name" : "ethernet",
319 "id" : 2,
320 "header_type" : "ethernet_t",
321 "metadata" : false,
322 "pi_omit" : true
323 },
324 {
325 "name" : "vlan_tag",
326 "id" : 3,
327 "header_type" : "vlan_tag_t",
328 "metadata" : false,
329 "pi_omit" : true
330 },
331 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800332 "name" : "inner_vlan_tag",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700333 "id" : 4,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800334 "header_type" : "vlan_tag_t",
335 "metadata" : false,
336 "pi_omit" : true
337 },
338 {
Daniele Moro5a2de712019-09-24 14:34:07 -0700339 "name" : "eth_type",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800340 "id" : 5,
Daniele Moro5a2de712019-09-24 14:34:07 -0700341 "header_type" : "eth_type_t",
342 "metadata" : false,
343 "pi_omit" : true
344 },
345 {
346 "name" : "mpls",
347 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700348 "header_type" : "mpls_t",
349 "metadata" : false,
350 "pi_omit" : true
351 },
352 {
353 "name" : "gtpu_ipv4",
Daniele Moro5a2de712019-09-24 14:34:07 -0700354 "id" : 7,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700355 "header_type" : "ipv4_t",
356 "metadata" : false,
357 "pi_omit" : true
358 },
359 {
360 "name" : "gtpu_udp",
Daniele Moro5a2de712019-09-24 14:34:07 -0700361 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700362 "header_type" : "udp_t",
363 "metadata" : false,
364 "pi_omit" : true
365 },
366 {
367 "name" : "gtpu",
Daniele Moro5a2de712019-09-24 14:34:07 -0700368 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700369 "header_type" : "gtpu_t",
370 "metadata" : false,
371 "pi_omit" : true
372 },
373 {
374 "name" : "inner_ipv4",
Daniele Moro5a2de712019-09-24 14:34:07 -0700375 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700376 "header_type" : "ipv4_t",
377 "metadata" : false,
378 "pi_omit" : true
379 },
380 {
381 "name" : "inner_udp",
Daniele Moro5a2de712019-09-24 14:34:07 -0700382 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700383 "header_type" : "udp_t",
384 "metadata" : false,
385 "pi_omit" : true
386 },
387 {
388 "name" : "ipv4",
Daniele Moro5a2de712019-09-24 14:34:07 -0700389 "id" : 12,
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800390 "header_type" : "ipv4_t",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700391 "metadata" : false,
392 "pi_omit" : true
393 },
394 {
395 "name" : "tcp",
Daniele Moro5a2de712019-09-24 14:34:07 -0700396 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700397 "header_type" : "tcp_t",
398 "metadata" : false,
399 "pi_omit" : true
400 },
401 {
402 "name" : "udp",
Daniele Moro5a2de712019-09-24 14:34:07 -0700403 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700404 "header_type" : "udp_t",
405 "metadata" : false,
406 "pi_omit" : true
407 },
408 {
409 "name" : "icmp",
Daniele Moro5a2de712019-09-24 14:34:07 -0700410 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700411 "header_type" : "icmp_t",
412 "metadata" : false,
413 "pi_omit" : true
414 },
415 {
416 "name" : "packet_out",
Daniele Moro5a2de712019-09-24 14:34:07 -0700417 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700418 "header_type" : "packet_out_header_t",
419 "metadata" : false,
420 "pi_omit" : true
421 },
422 {
423 "name" : "packet_in",
Daniele Moro5a2de712019-09-24 14:34:07 -0700424 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700425 "header_type" : "packet_in_header_t",
426 "metadata" : false,
427 "pi_omit" : true
428 },
429 {
430 "name" : "intl4_shim",
Daniele Moro5a2de712019-09-24 14:34:07 -0700431 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700432 "header_type" : "intl4_shim_t",
433 "metadata" : false,
434 "pi_omit" : true
435 },
436 {
437 "name" : "int_header",
Daniele Moro5a2de712019-09-24 14:34:07 -0700438 "id" : 19,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700439 "header_type" : "int_header_t",
440 "metadata" : false,
441 "pi_omit" : true
442 },
443 {
444 "name" : "int_switch_id",
Daniele Moro5a2de712019-09-24 14:34:07 -0700445 "id" : 20,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700446 "header_type" : "int_switch_id_t",
447 "metadata" : false,
448 "pi_omit" : true
449 },
450 {
451 "name" : "int_port_ids",
Daniele Moro5a2de712019-09-24 14:34:07 -0700452 "id" : 21,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700453 "header_type" : "int_port_ids_t",
454 "metadata" : false,
455 "pi_omit" : true
456 },
457 {
458 "name" : "int_hop_latency",
Daniele Moro5a2de712019-09-24 14:34:07 -0700459 "id" : 22,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700460 "header_type" : "int_hop_latency_t",
461 "metadata" : false,
462 "pi_omit" : true
463 },
464 {
465 "name" : "int_q_occupancy",
Daniele Moro5a2de712019-09-24 14:34:07 -0700466 "id" : 23,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700467 "header_type" : "int_q_occupancy_t",
468 "metadata" : false,
469 "pi_omit" : true
470 },
471 {
472 "name" : "int_ingress_tstamp",
Daniele Moro5a2de712019-09-24 14:34:07 -0700473 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700474 "header_type" : "int_ingress_tstamp_t",
475 "metadata" : false,
476 "pi_omit" : true
477 },
478 {
479 "name" : "int_egress_tstamp",
Daniele Moro5a2de712019-09-24 14:34:07 -0700480 "id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700481 "header_type" : "int_egress_tstamp_t",
482 "metadata" : false,
483 "pi_omit" : true
484 },
485 {
486 "name" : "int_q_congestion",
Daniele Moro5a2de712019-09-24 14:34:07 -0700487 "id" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700488 "header_type" : "int_q_congestion_t",
489 "metadata" : false,
490 "pi_omit" : true
491 },
492 {
493 "name" : "int_egress_tx_util",
Daniele Moro5a2de712019-09-24 14:34:07 -0700494 "id" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700495 "header_type" : "int_egress_port_tx_util_t",
496 "metadata" : false,
497 "pi_omit" : true
498 },
499 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700500 "name" : "intl4_tail",
Daniele Moro5a2de712019-09-24 14:34:07 -0700501 "id" : 28,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700502 "header_type" : "intl4_tail_t",
503 "metadata" : false,
504 "pi_omit" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700505 }
506 ],
507 "header_stacks" : [],
508 "header_union_types" : [],
509 "header_unions" : [],
510 "header_union_stacks" : [],
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700511 "field_lists" : [
512 {
513 "id" : 1,
514 "name" : "fl",
515 "source_info" : {
Daniele Moro3b7a21b2019-06-25 17:33:40 -0700516 "filename" : "include/control/acl.p4",
517 "line" : 46,
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700518 "column" : 40,
Daniele Moro3b7a21b2019-06-25 17:33:40 -0700519 "source_fragment" : "{standard_metadata.ingress_port}"
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700520 },
521 "elements" : [
522 {
523 "type" : "field",
524 "value" : ["standard_metadata", "ingress_port"]
Daniele Moro01ca2ab2019-06-25 11:48:48 -0700525 }
526 ]
527 }
528 ],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700529 "errors" : [
Carmelo Cascone4d8785b2019-05-31 17:11:26 -0700530 ["NoError", 1],
531 ["PacketTooShort", 2],
532 ["NoMatch", 3],
533 ["StackOutOfBounds", 4],
534 ["HeaderTooShort", 5],
535 ["ParserTimeout", 6],
536 ["ParserInvalidArgument", 7]
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700537 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700538 "enums" : [],
539 "parsers" : [
540 {
541 "name" : "parser",
542 "id" : 0,
543 "init_state" : "start",
544 "parse_states" : [
545 {
546 "name" : "start",
547 "id" : 0,
548 "parser_ops" : [],
549 "transitions" : [
550 {
551 "type" : "hexstr",
552 "value" : "0x00ff",
553 "mask" : null,
554 "next_state" : "parse_packet_out"
555 },
556 {
557 "value" : "default",
558 "mask" : null,
559 "next_state" : "parse_ethernet"
560 }
561 ],
562 "transition_key" : [
563 {
564 "type" : "field",
565 "value" : ["standard_metadata", "ingress_port"]
566 }
567 ]
568 },
569 {
570 "name" : "parse_packet_out",
571 "id" : 1,
572 "parser_ops" : [
573 {
574 "parameters" : [
575 {
576 "type" : "regular",
577 "value" : "packet_out"
578 }
579 ],
580 "op" : "extract"
581 }
582 ],
583 "transitions" : [
584 {
585 "value" : "default",
586 "mask" : null,
587 "next_state" : "parse_ethernet"
588 }
589 ],
590 "transition_key" : []
591 },
592 {
593 "name" : "parse_ethernet",
594 "id" : 2,
595 "parser_ops" : [
596 {
597 "parameters" : [
598 {
599 "type" : "regular",
600 "value" : "ethernet"
601 }
602 ],
603 "op" : "extract"
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800604 },
605 {
606 "parameters" : [
607 {
608 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700609 "value" : ["scalars", "fabric_metadata_t._vlan_id1"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800610 },
611 {
Daniele Moro5a2de712019-09-24 14:34:07 -0700612 "type" : "hexstr",
613 "value" : "0x0ffe"
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800614 }
615 ],
616 "op" : "set"
617 },
618 {
619 "parameters" : [
620 {
621 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700622 "value" : ["scalars", "tmp_2"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800623 },
624 {
Daniele Moro5a2de712019-09-24 14:34:07 -0700625 "type" : "lookahead",
626 "value" : [0, 16]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800627 }
628 ],
629 "op" : "set"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700630 }
631 ],
632 "transitions" : [
633 {
634 "type" : "hexstr",
Daniele Moro77654f92019-07-30 10:29:54 -0700635 "value" : "0x88a8",
636 "mask" : null,
637 "next_state" : "parse_vlan_tag"
638 },
639 {
640 "type" : "hexstr",
641 "value" : "0x9100",
642 "mask" : null,
643 "next_state" : "parse_vlan_tag"
644 },
645 {
646 "type" : "hexstr",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700647 "value" : "0x8100",
648 "mask" : null,
649 "next_state" : "parse_vlan_tag"
650 },
651 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700652 "value" : "default",
653 "mask" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -0700654 "next_state" : "parse_eth_type"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700655 }
656 ],
657 "transition_key" : [
658 {
659 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700660 "value" : ["scalars", "tmp_2"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700661 }
662 ]
663 },
664 {
665 "name" : "parse_vlan_tag",
666 "id" : 3,
667 "parser_ops" : [
668 {
669 "parameters" : [
670 {
671 "type" : "regular",
672 "value" : "vlan_tag"
673 }
674 ],
675 "op" : "extract"
Daniele Moro5a2de712019-09-24 14:34:07 -0700676 },
677 {
678 "parameters" : [
679 {
680 "type" : "field",
681 "value" : ["scalars", "tmp_3"]
682 },
683 {
684 "type" : "lookahead",
685 "value" : [0, 16]
686 }
687 ],
688 "op" : "set"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700689 }
690 ],
691 "transitions" : [
692 {
693 "type" : "hexstr",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800694 "value" : "0x8100",
695 "mask" : null,
696 "next_state" : "parse_inner_vlan_tag"
697 },
698 {
699 "value" : "default",
700 "mask" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -0700701 "next_state" : "parse_eth_type"
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800702 }
703 ],
704 "transition_key" : [
705 {
706 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700707 "value" : ["scalars", "tmp_3"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800708 }
709 ]
710 },
711 {
712 "name" : "parse_inner_vlan_tag",
713 "id" : 4,
714 "parser_ops" : [
715 {
716 "parameters" : [
717 {
718 "type" : "regular",
719 "value" : "inner_vlan_tag"
720 }
721 ],
722 "op" : "extract"
723 }
724 ],
725 "transitions" : [
726 {
Daniele Moro5a2de712019-09-24 14:34:07 -0700727 "value" : "default",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700728 "mask" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -0700729 "next_state" : "parse_eth_type"
730 }
731 ],
732 "transition_key" : []
733 },
734 {
735 "name" : "parse_eth_type",
736 "id" : 5,
737 "parser_ops" : [
738 {
739 "parameters" : [
740 {
741 "type" : "regular",
742 "value" : "eth_type"
743 }
744 ],
745 "op" : "extract"
746 }
747 ],
748 "transitions" : [
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700749 {
750 "type" : "hexstr",
751 "value" : "0x8847",
752 "mask" : null,
753 "next_state" : "parse_mpls"
754 },
755 {
Daniele Moro5a2de712019-09-24 14:34:07 -0700756 "type" : "hexstr",
757 "value" : "0x0800",
758 "mask" : null,
759 "next_state" : "parse_ipv4"
760 },
761 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700762 "value" : "default",
763 "mask" : null,
764 "next_state" : null
765 }
766 ],
767 "transition_key" : [
768 {
769 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700770 "value" : ["eth_type", "value"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700771 }
772 ]
773 },
774 {
775 "name" : "parse_mpls",
Daniele Moro5a2de712019-09-24 14:34:07 -0700776 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700777 "parser_ops" : [
778 {
779 "parameters" : [
780 {
781 "type" : "regular",
782 "value" : "mpls"
783 }
784 ],
785 "op" : "extract"
786 },
787 {
788 "parameters" : [
789 {
790 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700791 "value" : ["scalars", "fabric_metadata_t._mpls_label4"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800792 },
793 {
794 "type" : "field",
795 "value" : ["mpls", "label"]
796 }
797 ],
798 "op" : "set"
799 },
800 {
801 "parameters" : [
802 {
803 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700804 "value" : ["scalars", "fabric_metadata_t._mpls_ttl5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800805 },
806 {
807 "type" : "field",
808 "value" : ["mpls", "ttl"]
809 }
810 ],
811 "op" : "set"
812 },
813 {
814 "parameters" : [
815 {
816 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700817 "value" : ["scalars", "tmp_4"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700818 },
819 {
820 "type" : "lookahead",
821 "value" : [0, 4]
822 }
823 ],
824 "op" : "set"
825 }
826 ],
827 "transitions" : [
828 {
829 "type" : "hexstr",
830 "value" : "0x04",
831 "mask" : null,
832 "next_state" : "parse_ipv4"
833 },
834 {
835 "value" : "default",
836 "mask" : null,
837 "next_state" : "parse_ethernet"
838 }
839 ],
840 "transition_key" : [
841 {
842 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700843 "value" : ["scalars", "tmp_4"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700844 }
845 ]
846 },
847 {
Daniele Moro7c3a0022019-07-12 13:38:34 -0700848 "name" : "parse_ipv4",
849 "id" : 7,
850 "parser_ops" : [
851 {
852 "parameters" : [
853 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700854 "type" : "regular",
855 "value" : "ipv4"
856 }
857 ],
858 "op" : "extract"
859 },
860 {
861 "parameters" : [
862 {
863 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700864 "value" : ["scalars", "fabric_metadata_t._ip_proto12"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700865 },
866 {
867 "type" : "field",
868 "value" : ["ipv4", "protocol"]
869 }
870 ],
871 "op" : "set"
872 },
873 {
874 "parameters" : [
875 {
876 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700877 "value" : ["scalars", "fabric_metadata_t._ip_eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800878 },
879 {
880 "type" : "hexstr",
881 "value" : "0x0800"
882 }
883 ],
884 "op" : "set"
885 },
886 {
887 "parameters" : [
888 {
889 "type" : "field",
890 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700891 },
892 {
893 "type" : "field",
894 "value" : ["ipv4", "dscp"]
895 }
896 ],
897 "op" : "set"
898 }
899 ],
900 "transitions" : [
901 {
902 "type" : "hexstr",
903 "value" : "0x06",
904 "mask" : null,
905 "next_state" : "parse_tcp"
906 },
907 {
908 "type" : "hexstr",
909 "value" : "0x11",
910 "mask" : null,
911 "next_state" : "parse_udp"
912 },
913 {
914 "type" : "hexstr",
915 "value" : "0x01",
916 "mask" : null,
917 "next_state" : "parse_icmp"
918 },
919 {
920 "value" : "default",
921 "mask" : null,
922 "next_state" : null
923 }
924 ],
925 "transition_key" : [
926 {
927 "type" : "field",
928 "value" : ["ipv4", "protocol"]
929 }
930 ]
931 },
932 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700933 "name" : "parse_tcp",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700934 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700935 "parser_ops" : [
936 {
937 "parameters" : [
938 {
939 "type" : "regular",
940 "value" : "tcp"
941 }
942 ],
943 "op" : "extract"
944 },
945 {
946 "parameters" : [
947 {
948 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700949 "value" : ["scalars", "fabric_metadata_t._l4_sport13"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700950 },
951 {
952 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800953 "value" : ["tcp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700954 }
955 ],
956 "op" : "set"
957 },
958 {
959 "parameters" : [
960 {
961 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700962 "value" : ["scalars", "fabric_metadata_t._l4_dport14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700963 },
964 {
965 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -0800966 "value" : ["tcp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700967 }
968 ],
969 "op" : "set"
970 }
971 ],
972 "transitions" : [
973 {
974 "value" : "default",
975 "mask" : null,
976 "next_state" : "parse_int"
977 }
978 ],
979 "transition_key" : []
980 },
981 {
982 "name" : "parse_udp",
Daniele Moro7c3a0022019-07-12 13:38:34 -0700983 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700984 "parser_ops" : [
985 {
986 "parameters" : [
987 {
988 "type" : "regular",
989 "value" : "udp"
990 }
991 ],
992 "op" : "extract"
993 },
994 {
995 "parameters" : [
996 {
997 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -0700998 "value" : ["scalars", "fabric_metadata_t._l4_sport13"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -0700999 },
1000 {
1001 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001002 "value" : ["udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001003 }
1004 ],
1005 "op" : "set"
1006 },
1007 {
1008 "parameters" : [
1009 {
1010 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07001011 "value" : ["scalars", "fabric_metadata_t._l4_dport14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001012 },
1013 {
1014 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001015 "value" : ["udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001016 }
1017 ],
1018 "op" : "set"
1019 }
1020 ],
1021 "transitions" : [
1022 {
1023 "type" : "hexstr",
1024 "value" : "0x0868",
1025 "mask" : null,
1026 "next_state" : "parse_gtpu"
1027 },
1028 {
1029 "value" : "default",
1030 "mask" : null,
1031 "next_state" : "parse_int"
1032 }
1033 ],
1034 "transition_key" : [
1035 {
1036 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001037 "value" : ["udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001038 }
1039 ]
1040 },
1041 {
1042 "name" : "parse_icmp",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001043 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001044 "parser_ops" : [
1045 {
1046 "parameters" : [
1047 {
1048 "type" : "regular",
1049 "value" : "icmp"
1050 }
1051 ],
1052 "op" : "extract"
1053 }
1054 ],
1055 "transitions" : [
1056 {
1057 "value" : "default",
1058 "mask" : null,
1059 "next_state" : null
1060 }
1061 ],
1062 "transition_key" : []
1063 },
1064 {
1065 "name" : "parse_gtpu",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001066 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001067 "parser_ops" : [
1068 {
1069 "parameters" : [
1070 {
1071 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001072 "value" : ["scalars", "tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001073 },
1074 {
1075 "type" : "expression",
1076 "value" : {
1077 "type" : "expression",
1078 "value" : {
1079 "op" : "&",
1080 "left" : {
1081 "type" : "expression",
1082 "value" : {
1083 "op" : "&",
1084 "left" : {
1085 "type" : "expression",
1086 "value" : {
1087 "op" : ">>",
1088 "left" : {
1089 "type" : "field",
1090 "value" : ["ipv4", "dst_addr"]
1091 },
1092 "right" : {
1093 "type" : "hexstr",
1094 "value" : "0x18"
1095 }
1096 }
1097 },
1098 "right" : {
1099 "type" : "hexstr",
1100 "value" : "0xffffffff"
1101 }
1102 }
1103 },
1104 "right" : {
1105 "type" : "hexstr",
1106 "value" : "0xff"
1107 }
1108 }
1109 }
1110 }
1111 ],
1112 "op" : "set"
1113 }
1114 ],
1115 "transitions" : [
1116 {
1117 "type" : "hexstr",
1118 "value" : "0x8c",
1119 "mask" : null,
1120 "next_state" : "do_parse_gtpu"
1121 },
1122 {
1123 "value" : "default",
1124 "mask" : null,
1125 "next_state" : null
1126 }
1127 ],
1128 "transition_key" : [
1129 {
1130 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001131 "value" : ["scalars", "tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001132 }
1133 ]
1134 },
1135 {
1136 "name" : "do_parse_gtpu",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001137 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001138 "parser_ops" : [
1139 {
1140 "parameters" : [
1141 {
1142 "type" : "regular",
1143 "value" : "gtpu"
1144 }
1145 ],
1146 "op" : "extract"
1147 },
1148 {
1149 "parameters" : [
1150 {
1151 "type" : "regular",
1152 "value" : "inner_ipv4"
1153 }
1154 ],
1155 "op" : "extract"
1156 },
1157 {
1158 "parameters" : [
1159 {
1160 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001161 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001162 },
1163 {
1164 "type" : "field",
1165 "value" : ["inner_ipv4", "dscp"]
1166 }
1167 ],
1168 "op" : "set"
1169 }
1170 ],
1171 "transitions" : [
1172 {
1173 "type" : "hexstr",
1174 "value" : "0x06",
1175 "mask" : null,
1176 "next_state" : "parse_tcp"
1177 },
1178 {
1179 "type" : "hexstr",
1180 "value" : "0x11",
1181 "mask" : null,
1182 "next_state" : "parse_inner_udp"
1183 },
1184 {
1185 "type" : "hexstr",
1186 "value" : "0x01",
1187 "mask" : null,
1188 "next_state" : "parse_icmp"
1189 },
1190 {
1191 "value" : "default",
1192 "mask" : null,
1193 "next_state" : null
1194 }
1195 ],
1196 "transition_key" : [
1197 {
1198 "type" : "field",
1199 "value" : ["inner_ipv4", "protocol"]
1200 }
1201 ]
1202 },
1203 {
1204 "name" : "parse_inner_udp",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001205 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001206 "parser_ops" : [
1207 {
1208 "parameters" : [
1209 {
1210 "type" : "regular",
1211 "value" : "inner_udp"
1212 }
1213 ],
1214 "op" : "extract"
1215 },
1216 {
1217 "parameters" : [
1218 {
1219 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07001220 "value" : ["scalars", "fabric_metadata_t._l4_sport13"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001221 },
1222 {
1223 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001224 "value" : ["inner_udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001225 }
1226 ],
1227 "op" : "set"
1228 },
1229 {
1230 "parameters" : [
1231 {
1232 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07001233 "value" : ["scalars", "fabric_metadata_t._l4_dport14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001234 },
1235 {
1236 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001237 "value" : ["inner_udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001238 }
1239 ],
1240 "op" : "set"
1241 }
1242 ],
1243 "transitions" : [
1244 {
1245 "value" : "default",
1246 "mask" : null,
1247 "next_state" : "parse_int"
1248 }
1249 ],
1250 "transition_key" : []
1251 },
1252 {
1253 "name" : "parse_int",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001254 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001255 "parser_ops" : [],
1256 "transitions" : [
1257 {
1258 "type" : "hexstr",
1259 "value" : "0x01",
1260 "mask" : "0x01",
1261 "next_state" : "parse_intl4_shim"
1262 },
1263 {
1264 "value" : "default",
1265 "mask" : null,
1266 "next_state" : null
1267 }
1268 ],
1269 "transition_key" : [
1270 {
1271 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001272 "value" : ["scalars", "last_ipv4_dscp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001273 }
1274 ]
1275 },
1276 {
1277 "name" : "parse_intl4_shim",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001278 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001279 "parser_ops" : [
1280 {
1281 "parameters" : [
1282 {
1283 "type" : "regular",
1284 "value" : "intl4_shim"
1285 }
1286 ],
1287 "op" : "extract"
1288 },
1289 {
1290 "parameters" : [
1291 {
1292 "type" : "regular",
1293 "value" : "int_header"
1294 }
1295 ],
1296 "op" : "extract"
1297 }
1298 ],
1299 "transitions" : [
1300 {
1301 "type" : "hexstr",
1302 "value" : "0x04",
1303 "mask" : null,
1304 "next_state" : "parse_intl4_tail"
1305 },
1306 {
1307 "value" : "default",
1308 "mask" : null,
1309 "next_state" : "parse_int_data"
1310 }
1311 ],
1312 "transition_key" : [
1313 {
1314 "type" : "field",
1315 "value" : ["intl4_shim", "len_words"]
1316 }
1317 ]
1318 },
1319 {
1320 "name" : "parse_int_data",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001321 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001322 "parser_ops" : [],
1323 "transitions" : [
1324 {
1325 "value" : "default",
1326 "mask" : null,
1327 "next_state" : null
1328 }
1329 ],
1330 "transition_key" : []
1331 },
1332 {
1333 "name" : "parse_intl4_tail",
Daniele Moro7c3a0022019-07-12 13:38:34 -07001334 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001335 "parser_ops" : [
1336 {
1337 "parameters" : [
1338 {
1339 "type" : "regular",
1340 "value" : "intl4_tail"
1341 }
1342 ],
1343 "op" : "extract"
1344 }
1345 ],
1346 "transitions" : [
1347 {
1348 "value" : "default",
1349 "mask" : null,
1350 "next_state" : null
1351 }
1352 ],
1353 "transition_key" : []
1354 }
1355 ]
1356 }
1357 ],
1358 "parse_vsets" : [],
1359 "deparsers" : [
1360 {
1361 "name" : "deparser",
1362 "id" : 0,
1363 "source_info" : {
1364 "filename" : "include/parser.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07001365 "line" : 265,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001366 "column" : 8,
1367 "source_fragment" : "FabricDeparser"
1368 },
Daniele Moro5a2de712019-09-24 14:34:07 -07001369 "order" : ["packet_in", "ethernet", "vlan_tag", "inner_vlan_tag", "eth_type", "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 -07001370 }
1371 ],
1372 "meter_arrays" : [],
1373 "counter_arrays" : [
1374 {
1375 "name" : "FabricIngress.spgw_ingress.ue_counter",
1376 "id" : 0,
1377 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001378 "binding" : "FabricIngress.spgw_ingress.dl_sess_lookup",
1379 "source_info" : {
1380 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001381 "line" : 52,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001382 "column" : 50,
1383 "source_fragment" : "ue_counter"
1384 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001385 },
1386 {
1387 "name" : "FabricIngress.process_set_source_sink.counter_set_source",
1388 "id" : 1,
1389 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001390 "binding" : "FabricIngress.process_set_source_sink.tb_set_source",
1391 "source_info" : {
1392 "filename" : "include/int/int_main.p4",
1393 "line" : 39,
1394 "column" : 50,
1395 "source_fragment" : "counter_set_source"
1396 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001397 },
1398 {
1399 "name" : "FabricIngress.filtering.ingress_port_vlan_counter",
1400 "id" : 2,
1401 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001402 "binding" : "FabricIngress.filtering.ingress_port_vlan",
1403 "source_info" : {
1404 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001405 "line" : 31,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001406 "column" : 50,
1407 "source_fragment" : "ingress_port_vlan_counter"
1408 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001409 },
1410 {
1411 "name" : "FabricIngress.filtering.fwd_classifier_counter",
1412 "id" : 3,
1413 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001414 "binding" : "FabricIngress.filtering.fwd_classifier",
1415 "source_info" : {
1416 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07001417 "line" : 85,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001418 "column" : 50,
1419 "source_fragment" : "fwd_classifier_counter"
1420 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001421 },
1422 {
1423 "name" : "FabricIngress.forwarding.bridging_counter",
1424 "id" : 4,
1425 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001426 "binding" : "FabricIngress.forwarding.bridging",
1427 "source_info" : {
1428 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001429 "line" : 36,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001430 "column" : 50,
1431 "source_fragment" : "bridging_counter"
1432 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001433 },
1434 {
1435 "name" : "FabricIngress.forwarding.mpls_counter",
1436 "id" : 5,
1437 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001438 "binding" : "FabricIngress.forwarding.mpls",
1439 "source_info" : {
1440 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07001441 "line" : 63,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001442 "column" : 50,
1443 "source_fragment" : "mpls_counter"
1444 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001445 },
1446 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001447 "name" : "FabricIngress.acl.acl_counter",
Daniele Moro5a2de712019-09-24 14:34:07 -07001448 "id" : 6,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001449 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001450 "binding" : "FabricIngress.acl.acl",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001451 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001452 "filename" : "include/control/acl.p4",
1453 "line" : 30,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001454 "column" : 50,
1455 "source_fragment" : "acl_counter"
1456 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001457 },
1458 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001459 "name" : "FabricIngress.next.next_vlan_counter",
Daniele Moro5a2de712019-09-24 14:34:07 -07001460 "id" : 7,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001461 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001462 "binding" : "FabricIngress.next.next_vlan",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001463 "source_info" : {
1464 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001465 "line" : 67,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001466 "column" : 50,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001467 "source_fragment" : "next_vlan_counter"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001468 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001469 },
1470 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001471 "name" : "FabricIngress.next.xconnect_counter",
Daniele Moro5a2de712019-09-24 14:34:07 -07001472 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001473 "is_direct" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001474 "binding" : "FabricIngress.next.xconnect",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001475 "source_info" : {
1476 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07001477 "line" : 107,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001478 "column" : 50,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001479 "source_fragment" : "xconnect_counter"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001480 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001481 },
1482 {
1483 "name" : "FabricIngress.next.hashed_counter",
Daniele Moro5a2de712019-09-24 14:34:07 -07001484 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001485 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001486 "binding" : "FabricIngress.next.hashed",
1487 "source_info" : {
1488 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07001489 "line" : 184,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001490 "column" : 50,
1491 "source_fragment" : "hashed_counter"
1492 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001493 },
1494 {
1495 "name" : "FabricIngress.next.multicast_counter",
Daniele Moro5a2de712019-09-24 14:34:07 -07001496 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001497 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001498 "binding" : "FabricIngress.next.multicast",
1499 "source_info" : {
1500 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07001501 "line" : 228,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001502 "column" : 50,
1503 "source_fragment" : "multicast_counter"
1504 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001505 },
1506 {
1507 "name" : "FabricIngress.port_counters_control.egress_port_counter",
Daniele Moro5a2de712019-09-24 14:34:07 -07001508 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001509 "source_info" : {
1510 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001511 "line" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001512 "column" : 48,
1513 "source_fragment" : "egress_port_counter"
1514 },
1515 "size" : 511,
1516 "is_direct" : false
1517 },
1518 {
1519 "name" : "FabricIngress.port_counters_control.ingress_port_counter",
Daniele Moro5a2de712019-09-24 14:34:07 -07001520 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001521 "source_info" : {
1522 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001523 "line" : 27,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001524 "column" : 48,
1525 "source_fragment" : "ingress_port_counter"
1526 },
1527 "size" : 511,
1528 "is_direct" : false
1529 },
1530 {
1531 "name" : "FabricEgress.process_int_main.process_int_source.counter_int_source",
Daniele Moro5a2de712019-09-24 14:34:07 -07001532 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001533 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001534 "binding" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
1535 "source_info" : {
1536 "filename" : "include/int/int_source.p4",
1537 "line" : 27,
1538 "column" : 50,
1539 "source_fragment" : "counter_int_source"
1540 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001541 },
1542 {
1543 "name" : "FabricEgress.egress_next.egress_vlan_counter",
Daniele Moro5a2de712019-09-24 14:34:07 -07001544 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001545 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001546 "binding" : "FabricEgress.egress_next.egress_vlan",
1547 "source_info" : {
1548 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07001549 "line" : 313,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001550 "column" : 50,
1551 "source_fragment" : "egress_vlan_counter"
1552 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001553 }
1554 ],
1555 "register_arrays" : [],
1556 "calculations" : [
1557 {
1558 "name" : "calc",
1559 "id" : 0,
1560 "source_info" : {
1561 "filename" : "include/checksum.p4",
1562 "line" : 28,
1563 "column" : 8,
1564 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
1565 },
1566 "algo" : "csum16",
1567 "input" : [
1568 {
1569 "type" : "field",
1570 "value" : ["ipv4", "version"]
1571 },
1572 {
1573 "type" : "field",
1574 "value" : ["ipv4", "ihl"]
1575 },
1576 {
1577 "type" : "field",
1578 "value" : ["ipv4", "dscp"]
1579 },
1580 {
1581 "type" : "field",
1582 "value" : ["ipv4", "ecn"]
1583 },
1584 {
1585 "type" : "field",
1586 "value" : ["ipv4", "total_len"]
1587 },
1588 {
1589 "type" : "field",
1590 "value" : ["ipv4", "identification"]
1591 },
1592 {
1593 "type" : "field",
1594 "value" : ["ipv4", "flags"]
1595 },
1596 {
1597 "type" : "field",
1598 "value" : ["ipv4", "frag_offset"]
1599 },
1600 {
1601 "type" : "field",
1602 "value" : ["ipv4", "ttl"]
1603 },
1604 {
1605 "type" : "field",
1606 "value" : ["ipv4", "protocol"]
1607 },
1608 {
1609 "type" : "field",
1610 "value" : ["ipv4", "src_addr"]
1611 },
1612 {
1613 "type" : "field",
1614 "value" : ["ipv4", "dst_addr"]
1615 }
1616 ]
1617 },
1618 {
1619 "name" : "calc_0",
1620 "id" : 1,
1621 "source_info" : {
1622 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001623 "line" : 243,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001624 "column" : 8,
1625 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
1626 },
1627 "algo" : "csum16",
1628 "input" : [
1629 {
1630 "type" : "field",
1631 "value" : ["gtpu_ipv4", "version"]
1632 },
1633 {
1634 "type" : "field",
1635 "value" : ["gtpu_ipv4", "ihl"]
1636 },
1637 {
1638 "type" : "field",
1639 "value" : ["gtpu_ipv4", "dscp"]
1640 },
1641 {
1642 "type" : "field",
1643 "value" : ["gtpu_ipv4", "ecn"]
1644 },
1645 {
1646 "type" : "field",
1647 "value" : ["gtpu_ipv4", "total_len"]
1648 },
1649 {
1650 "type" : "field",
1651 "value" : ["gtpu_ipv4", "identification"]
1652 },
1653 {
1654 "type" : "field",
1655 "value" : ["gtpu_ipv4", "flags"]
1656 },
1657 {
1658 "type" : "field",
1659 "value" : ["gtpu_ipv4", "frag_offset"]
1660 },
1661 {
1662 "type" : "field",
1663 "value" : ["gtpu_ipv4", "ttl"]
1664 },
1665 {
1666 "type" : "field",
1667 "value" : ["gtpu_ipv4", "protocol"]
1668 },
1669 {
1670 "type" : "field",
1671 "value" : ["gtpu_ipv4", "src_addr"]
1672 },
1673 {
1674 "type" : "field",
1675 "value" : ["gtpu_ipv4", "dst_addr"]
1676 }
1677 ]
1678 },
1679 {
1680 "name" : "calc_1",
1681 "id" : 2,
1682 "source_info" : {
1683 "filename" : "include/checksum.p4",
1684 "line" : 57,
1685 "column" : 8,
1686 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
1687 },
1688 "algo" : "csum16",
1689 "input" : [
1690 {
1691 "type" : "field",
1692 "value" : ["ipv4", "version"]
1693 },
1694 {
1695 "type" : "field",
1696 "value" : ["ipv4", "ihl"]
1697 },
1698 {
1699 "type" : "field",
1700 "value" : ["ipv4", "dscp"]
1701 },
1702 {
1703 "type" : "field",
1704 "value" : ["ipv4", "ecn"]
1705 },
1706 {
1707 "type" : "field",
1708 "value" : ["ipv4", "total_len"]
1709 },
1710 {
1711 "type" : "field",
1712 "value" : ["ipv4", "identification"]
1713 },
1714 {
1715 "type" : "field",
1716 "value" : ["ipv4", "flags"]
1717 },
1718 {
1719 "type" : "field",
1720 "value" : ["ipv4", "frag_offset"]
1721 },
1722 {
1723 "type" : "field",
1724 "value" : ["ipv4", "ttl"]
1725 },
1726 {
1727 "type" : "field",
1728 "value" : ["ipv4", "protocol"]
1729 },
1730 {
1731 "type" : "field",
1732 "value" : ["ipv4", "src_addr"]
1733 },
1734 {
1735 "type" : "field",
1736 "value" : ["ipv4", "dst_addr"]
1737 }
1738 ]
1739 }
1740 ],
1741 "learn_lists" : [],
1742 "actions" : [
1743 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001744 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001745 "id" : 0,
1746 "runtime_data" : [],
1747 "primitives" : []
1748 },
1749 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001750 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001751 "id" : 1,
1752 "runtime_data" : [],
1753 "primitives" : []
1754 },
1755 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001756 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001757 "id" : 2,
1758 "runtime_data" : [],
1759 "primitives" : []
1760 },
1761 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001762 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001763 "id" : 3,
1764 "runtime_data" : [],
1765 "primitives" : []
1766 },
1767 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001768 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001769 "id" : 4,
1770 "runtime_data" : [],
1771 "primitives" : []
1772 },
1773 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001774 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001775 "id" : 5,
1776 "runtime_data" : [],
1777 "primitives" : []
1778 },
1779 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001780 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001781 "id" : 6,
1782 "runtime_data" : [],
1783 "primitives" : []
1784 },
1785 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001786 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001787 "id" : 7,
1788 "runtime_data" : [],
1789 "primitives" : []
1790 },
1791 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001792 "name" : "nop",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001793 "id" : 8,
1794 "runtime_data" : [],
1795 "primitives" : []
1796 },
1797 {
1798 "name" : "nop",
1799 "id" : 9,
1800 "runtime_data" : [],
1801 "primitives" : []
1802 },
1803 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001804 "name" : "FabricIngress.spgw_ingress.gtpu_decap",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001805 "id" : 10,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001806 "runtime_data" : [],
1807 "primitives" : [
1808 {
1809 "op" : "remove_header",
1810 "parameters" : [
1811 {
1812 "type" : "header",
1813 "value" : "gtpu_ipv4"
1814 }
1815 ],
1816 "source_info" : {
1817 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001818 "line" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001819 "column" : 8,
1820 "source_fragment" : "gtpu_ipv4.setInvalid()"
1821 }
1822 },
1823 {
1824 "op" : "remove_header",
1825 "parameters" : [
1826 {
1827 "type" : "header",
1828 "value" : "gtpu_udp"
1829 }
1830 ],
1831 "source_info" : {
1832 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001833 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001834 "column" : 8,
1835 "source_fragment" : "gtpu_udp.setInvalid()"
1836 }
1837 },
1838 {
1839 "op" : "remove_header",
1840 "parameters" : [
1841 {
1842 "type" : "header",
1843 "value" : "gtpu"
1844 }
1845 ],
1846 "source_info" : {
1847 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001848 "line" : 58,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001849 "column" : 8,
1850 "source_fragment" : "gtpu.setInvalid()"
1851 }
1852 }
1853 ]
1854 },
1855 {
1856 "name" : "FabricIngress.spgw_ingress.set_dl_sess_info",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001857 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001858 "runtime_data" : [
1859 {
1860 "name" : "teid",
1861 "bitwidth" : 32
1862 },
1863 {
1864 "name" : "s1u_enb_addr",
1865 "bitwidth" : 32
1866 },
1867 {
1868 "name" : "s1u_sgw_addr",
1869 "bitwidth" : 32
1870 }
1871 ],
1872 "primitives" : [
1873 {
1874 "op" : "assign",
1875 "parameters" : [
1876 {
1877 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07001878 "value" : ["scalars", "fabric_metadata_t._spgw_teid17"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001879 },
1880 {
1881 "type" : "runtime_data",
1882 "value" : 0
1883 }
1884 ],
1885 "source_info" : {
1886 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001887 "line" : 64,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001888 "column" : 30,
1889 "source_fragment" : "= teid; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001890 }
1891 },
1892 {
1893 "op" : "assign",
1894 "parameters" : [
1895 {
1896 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07001897 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr18"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001898 },
1899 {
1900 "type" : "runtime_data",
1901 "value" : 1
1902 }
1903 ],
1904 "source_info" : {
1905 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001906 "line" : 65,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001907 "column" : 38,
1908 "source_fragment" : "= s1u_enb_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001909 }
1910 },
1911 {
1912 "op" : "assign",
1913 "parameters" : [
1914 {
1915 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07001916 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr19"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001917 },
1918 {
1919 "type" : "runtime_data",
1920 "value" : 2
1921 }
1922 ],
1923 "source_info" : {
1924 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07001925 "line" : 66,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001926 "column" : 38,
1927 "source_fragment" : "= s1u_sgw_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001928 }
1929 }
1930 ]
1931 },
1932 {
1933 "name" : "FabricIngress.process_set_source_sink.int_set_source",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001934 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001935 "runtime_data" : [],
1936 "primitives" : [
1937 {
1938 "op" : "assign",
1939 "parameters" : [
1940 {
1941 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07001942 "value" : ["scalars", "fabric_metadata_t._int_meta_source20"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001943 },
1944 {
1945 "type" : "expression",
1946 "value" : {
1947 "type" : "expression",
1948 "value" : {
1949 "op" : "b2d",
1950 "left" : null,
1951 "right" : {
1952 "type" : "bool",
1953 "value" : true
1954 }
1955 }
1956 }
1957 }
1958 ],
1959 "source_info" : {
1960 "filename" : "include/int/int_main.p4",
1961 "line" : 42,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001962 "column" : 40,
1963 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001964 }
1965 }
1966 ]
1967 },
1968 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001969 "name" : "FabricIngress.filtering.deny",
1970 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001971 "runtime_data" : [],
1972 "primitives" : [
1973 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001974 "op" : "assign",
1975 "parameters" : [
1976 {
1977 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07001978 "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07001979 },
1980 {
1981 "type" : "expression",
1982 "value" : {
1983 "type" : "expression",
1984 "value" : {
1985 "op" : "b2d",
1986 "left" : null,
1987 "right" : {
1988 "type" : "bool",
1989 "value" : true
1990 }
1991 }
1992 }
1993 }
1994 ],
1995 "source_info" : {
1996 "filename" : "include/control/filtering.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08001997 "line" : 36,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08001998 "column" : 40,
1999 "source_fragment" : "= true; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002000 }
2001 },
2002 {
2003 "op" : "assign",
2004 "parameters" : [
2005 {
2006 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002007 "value" : ["scalars", "fabric_metadata_t._skip_next7"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002008 },
2009 {
2010 "type" : "expression",
2011 "value" : {
2012 "type" : "expression",
2013 "value" : {
2014 "op" : "b2d",
2015 "left" : null,
2016 "right" : {
2017 "type" : "bool",
2018 "value" : true
2019 }
2020 }
2021 }
2022 }
2023 ],
2024 "source_info" : {
2025 "filename" : "include/control/filtering.p4",
2026 "line" : 37,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002027 "column" : 34,
2028 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002029 }
2030 }
2031 ]
2032 },
2033 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002034 "name" : "FabricIngress.filtering.permit",
2035 "id" : 14,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002036 "runtime_data" : [],
2037 "primitives" : []
2038 },
2039 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002040 "name" : "FabricIngress.filtering.permit_with_internal_vlan",
2041 "id" : 15,
2042 "runtime_data" : [
2043 {
2044 "name" : "vlan_id",
2045 "bitwidth" : 12
2046 }
2047 ],
2048 "primitives" : [
2049 {
2050 "op" : "assign",
2051 "parameters" : [
2052 {
2053 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002054 "value" : ["scalars", "fabric_metadata_t._vlan_id1"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002055 },
2056 {
2057 "type" : "runtime_data",
2058 "value" : 0
2059 }
2060 ],
2061 "source_info" : {
2062 "filename" : "include/control/filtering.p4",
2063 "line" : 47,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002064 "column" : 32,
2065 "source_fragment" : "= vlan_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002066 }
2067 }
2068 ]
2069 },
2070 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002071 "name" : "FabricIngress.filtering.set_forwarding_type",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002072 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002073 "runtime_data" : [
2074 {
2075 "name" : "fwd_type",
2076 "bitwidth" : 3
2077 }
2078 ],
2079 "primitives" : [
2080 {
2081 "op" : "assign",
2082 "parameters" : [
2083 {
2084 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002085 "value" : ["scalars", "fabric_metadata_t._fwd_type8"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002086 },
2087 {
2088 "type" : "runtime_data",
2089 "value" : 0
2090 }
2091 ],
2092 "source_info" : {
2093 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07002094 "line" : 88,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002095 "column" : 33,
2096 "source_fragment" : "= fwd_type; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002097 }
2098 }
2099 ]
2100 },
2101 {
2102 "name" : "FabricIngress.forwarding.set_next_id_bridging",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002103 "id" : 17,
2104 "runtime_data" : [
2105 {
2106 "name" : "next_id",
2107 "bitwidth" : 32
2108 }
2109 ],
2110 "primitives" : [
2111 {
2112 "op" : "assign",
2113 "parameters" : [
2114 {
2115 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002116 "value" : ["scalars", "fabric_metadata_t._next_id9"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002117 },
2118 {
2119 "type" : "runtime_data",
2120 "value" : 0
2121 }
2122 ],
2123 "source_info" : {
2124 "filename" : "include/control/forwarding.p4",
2125 "line" : 30,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002126 "column" : 32,
2127 "source_fragment" : "= next_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002128 }
2129 }
2130 ]
2131 },
2132 {
2133 "name" : "FabricIngress.forwarding.pop_mpls_and_next",
2134 "id" : 18,
2135 "runtime_data" : [
2136 {
2137 "name" : "next_id",
2138 "bitwidth" : 32
2139 }
2140 ],
2141 "primitives" : [
2142 {
2143 "op" : "assign",
2144 "parameters" : [
2145 {
2146 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002147 "value" : ["scalars", "fabric_metadata_t._mpls_label4"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002148 },
2149 {
2150 "type" : "hexstr",
2151 "value" : "0x000000"
2152 }
2153 ],
2154 "source_info" : {
2155 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -07002156 "line" : 66,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002157 "column" : 35,
2158 "source_fragment" : "= 0; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002159 }
2160 },
2161 {
2162 "op" : "assign",
2163 "parameters" : [
2164 {
2165 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002166 "value" : ["scalars", "fabric_metadata_t._next_id9"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002167 },
2168 {
2169 "type" : "runtime_data",
2170 "value" : 0
2171 }
2172 ],
2173 "source_info" : {
2174 "filename" : "include/control/forwarding.p4",
2175 "line" : 30,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002176 "column" : 32,
2177 "source_fragment" : "= next_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002178 }
2179 }
2180 ]
2181 },
2182 {
2183 "name" : "FabricIngress.forwarding.set_next_id_routing_v4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002184 "id" : 19,
2185 "runtime_data" : [
2186 {
2187 "name" : "next_id",
2188 "bitwidth" : 32
2189 }
2190 ],
2191 "primitives" : [
2192 {
2193 "op" : "assign",
2194 "parameters" : [
2195 {
2196 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002197 "value" : ["scalars", "fabric_metadata_t._next_id9"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002198 },
2199 {
2200 "type" : "runtime_data",
2201 "value" : 0
2202 }
2203 ],
2204 "source_info" : {
2205 "filename" : "include/control/forwarding.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002206 "line" : 30,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002207 "column" : 32,
2208 "source_fragment" : "= next_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002209 }
2210 }
2211 ]
2212 },
2213 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002214 "name" : "FabricIngress.forwarding.nop_routing_v4",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002215 "id" : 20,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002216 "runtime_data" : [],
2217 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002218 },
2219 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002220 "name" : "FabricIngress.acl.set_next_id_acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002221 "id" : 21,
2222 "runtime_data" : [
2223 {
2224 "name" : "next_id",
2225 "bitwidth" : 32
2226 }
2227 ],
2228 "primitives" : [
2229 {
2230 "op" : "assign",
2231 "parameters" : [
2232 {
2233 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002234 "value" : ["scalars", "fabric_metadata_t._next_id9"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002235 },
2236 {
2237 "type" : "runtime_data",
2238 "value" : 0
2239 }
2240 ],
2241 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002242 "filename" : "include/control/acl.p4",
2243 "line" : 33,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002244 "column" : 32,
2245 "source_fragment" : "= next_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002246 }
2247 }
2248 ]
2249 },
2250 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002251 "name" : "FabricIngress.acl.punt_to_cpu",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002252 "id" : 22,
2253 "runtime_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002254 "primitives" : [
2255 {
2256 "op" : "assign",
2257 "parameters" : [
2258 {
2259 "type" : "field",
2260 "value" : ["standard_metadata", "egress_spec"]
2261 },
2262 {
2263 "type" : "hexstr",
2264 "value" : "0x00ff"
2265 }
2266 ],
2267 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002268 "filename" : "include/control/acl.p4",
2269 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002270 "column" : 8,
2271 "source_fragment" : "standard_metadata.egress_spec = 255"
2272 }
2273 },
2274 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002275 "op" : "assign",
2276 "parameters" : [
2277 {
2278 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002279 "value" : ["scalars", "fabric_metadata_t._skip_next7"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002280 },
2281 {
2282 "type" : "expression",
2283 "value" : {
2284 "type" : "expression",
2285 "value" : {
2286 "op" : "b2d",
2287 "left" : null,
2288 "right" : {
2289 "type" : "bool",
2290 "value" : true
2291 }
2292 }
2293 }
2294 }
2295 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002296 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002297 "filename" : "include/control/acl.p4",
2298 "line" : 40,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002299 "column" : 34,
2300 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002301 }
2302 }
2303 ]
2304 },
2305 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002306 "name" : "FabricIngress.acl.set_clone_session_id",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002307 "id" : 23,
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002308 "runtime_data" : [
2309 {
2310 "name" : "clone_id",
2311 "bitwidth" : 32
2312 }
2313 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002314 "primitives" : [
2315 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002316 "op" : "clone_ingress_pkt_to_egress",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002317 "parameters" : [
2318 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002319 "type" : "runtime_data",
2320 "value" : 0
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002321 },
2322 {
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002323 "type" : "hexstr",
2324 "value" : "0x1"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002325 }
2326 ],
2327 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002328 "filename" : "include/control/acl.p4",
2329 "line" : 46,
Daniele Moro01ca2ab2019-06-25 11:48:48 -07002330 "column" : 8,
Daniele Moro3b7a21b2019-06-25 17:33:40 -07002331 "source_fragment" : "clone3(CloneType.I2E, clone_id, {standard_metadata.ingress_port})"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002332 }
2333 }
2334 ]
2335 },
2336 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002337 "name" : "FabricIngress.acl.drop",
2338 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002339 "runtime_data" : [],
2340 "primitives" : [
2341 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -07002342 "op" : "mark_to_drop",
2343 "parameters" : [
2344 {
2345 "type" : "header",
2346 "value" : "standard_metadata"
2347 }
2348 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002349 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002350 "filename" : "include/control/acl.p4",
2351 "line" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002352 "column" : 8,
Carmelo Cascone9b607da2019-05-08 14:03:01 -07002353 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002354 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002355 },
2356 {
2357 "op" : "assign",
2358 "parameters" : [
2359 {
2360 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002361 "value" : ["scalars", "fabric_metadata_t._skip_next7"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002362 },
2363 {
2364 "type" : "expression",
2365 "value" : {
2366 "type" : "expression",
2367 "value" : {
2368 "op" : "b2d",
2369 "left" : null,
2370 "right" : {
2371 "type" : "bool",
2372 "value" : true
2373 }
2374 }
2375 }
2376 }
2377 ],
2378 "source_info" : {
2379 "filename" : "include/control/acl.p4",
2380 "line" : 52,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002381 "column" : 34,
2382 "source_fragment" : "= true; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002383 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002384 }
2385 ]
2386 },
2387 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002388 "name" : "FabricIngress.acl.nop_acl",
2389 "id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002390 "runtime_data" : [],
2391 "primitives" : []
2392 },
2393 {
2394 "name" : "FabricIngress.next.set_vlan",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002395 "id" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002396 "runtime_data" : [
2397 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002398 "name" : "vlan_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002399 "bitwidth" : 12
2400 }
2401 ],
2402 "primitives" : [
2403 {
2404 "op" : "assign",
2405 "parameters" : [
2406 {
2407 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002408 "value" : ["scalars", "fabric_metadata_t._vlan_id1"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002409 },
2410 {
2411 "type" : "runtime_data",
2412 "value" : 0
2413 }
2414 ],
2415 "source_info" : {
2416 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002417 "line" : 70,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002418 "column" : 32,
2419 "source_fragment" : "= vlan_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002420 }
2421 }
2422 ]
2423 },
2424 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002425 "name" : "FabricIngress.next.output_xconnect",
2426 "id" : 27,
2427 "runtime_data" : [
2428 {
2429 "name" : "port_num",
2430 "bitwidth" : 9
2431 }
2432 ],
2433 "primitives" : [
2434 {
2435 "op" : "assign",
2436 "parameters" : [
2437 {
2438 "type" : "field",
2439 "value" : ["standard_metadata", "egress_spec"]
2440 },
2441 {
2442 "type" : "runtime_data",
2443 "value" : 0
2444 }
2445 ],
2446 "source_info" : {
2447 "filename" : "include/control/next.p4",
2448 "line" : 31,
2449 "column" : 5,
2450 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2451 }
2452 }
2453 ]
2454 },
2455 {
2456 "name" : "FabricIngress.next.set_next_id_xconnect",
2457 "id" : 28,
2458 "runtime_data" : [
2459 {
2460 "name" : "next_id",
2461 "bitwidth" : 32
2462 }
2463 ],
2464 "primitives" : [
2465 {
2466 "op" : "assign",
2467 "parameters" : [
2468 {
2469 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002470 "value" : ["scalars", "fabric_metadata_t._next_id9"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002471 },
2472 {
2473 "type" : "runtime_data",
2474 "value" : 0
2475 }
2476 ],
2477 "source_info" : {
2478 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07002479 "line" : 115,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002480 "column" : 32,
2481 "source_fragment" : "= next_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002482 }
2483 }
2484 ]
2485 },
2486 {
2487 "name" : "FabricIngress.next.output_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002488 "id" : 29,
2489 "runtime_data" : [
2490 {
2491 "name" : "port_num",
2492 "bitwidth" : 9
2493 }
2494 ],
2495 "primitives" : [
2496 {
2497 "op" : "assign",
2498 "parameters" : [
2499 {
2500 "type" : "field",
2501 "value" : ["standard_metadata", "egress_spec"]
2502 },
2503 {
2504 "type" : "runtime_data",
2505 "value" : 0
2506 }
2507 ],
2508 "source_info" : {
2509 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002510 "line" : 31,
2511 "column" : 5,
2512 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002513 }
2514 }
2515 ]
2516 },
2517 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002518 "name" : "FabricIngress.next.routing_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002519 "id" : 30,
2520 "runtime_data" : [
2521 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002522 "name" : "port_num",
2523 "bitwidth" : 9
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002524 },
2525 {
2526 "name" : "smac",
2527 "bitwidth" : 48
2528 },
2529 {
2530 "name" : "dmac",
2531 "bitwidth" : 48
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002532 }
2533 ],
2534 "primitives" : [
2535 {
2536 "op" : "assign",
2537 "parameters" : [
2538 {
2539 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002540 "value" : ["ethernet", "src_addr"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002541 },
2542 {
2543 "type" : "runtime_data",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002544 "value" : 1
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002545 }
2546 ],
2547 "source_info" : {
2548 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002549 "line" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002550 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002551 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2552 }
2553 },
2554 {
2555 "op" : "assign",
2556 "parameters" : [
2557 {
2558 "type" : "field",
2559 "value" : ["ethernet", "dst_addr"]
2560 },
2561 {
2562 "type" : "runtime_data",
2563 "value" : 2
2564 }
2565 ],
2566 "source_info" : {
2567 "filename" : "include/control/next.p4",
2568 "line" : 41,
2569 "column" : 8,
2570 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002571 }
2572 },
2573 {
2574 "op" : "assign",
2575 "parameters" : [
2576 {
2577 "type" : "field",
2578 "value" : ["standard_metadata", "egress_spec"]
2579 },
2580 {
2581 "type" : "runtime_data",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002582 "value" : 0
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002583 }
2584 ],
2585 "source_info" : {
2586 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002587 "line" : 31,
2588 "column" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002589 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2590 }
2591 }
2592 ]
2593 },
2594 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002595 "name" : "FabricIngress.next.mpls_routing_hashed",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002596 "id" : 31,
2597 "runtime_data" : [
2598 {
2599 "name" : "port_num",
2600 "bitwidth" : 9
2601 },
2602 {
2603 "name" : "smac",
2604 "bitwidth" : 48
2605 },
2606 {
2607 "name" : "dmac",
2608 "bitwidth" : 48
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002609 },
2610 {
2611 "name" : "label",
2612 "bitwidth" : 20
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002613 }
2614 ],
2615 "primitives" : [
2616 {
2617 "op" : "assign",
2618 "parameters" : [
2619 {
2620 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002621 "value" : ["scalars", "fabric_metadata_t._mpls_label4"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002622 },
2623 {
2624 "type" : "runtime_data",
2625 "value" : 3
2626 }
2627 ],
2628 "source_info" : {
2629 "filename" : "include/control/next.p4",
2630 "line" : 46,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002631 "column" : 35,
2632 "source_fragment" : "= label; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002633 }
2634 },
2635 {
2636 "op" : "assign",
2637 "parameters" : [
2638 {
2639 "type" : "field",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002640 "value" : ["ethernet", "src_addr"]
2641 },
2642 {
2643 "type" : "runtime_data",
2644 "value" : 1
2645 }
2646 ],
2647 "source_info" : {
2648 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002649 "line" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002650 "column" : 8,
2651 "source_fragment" : "hdr.ethernet.src_addr = smac; ..."
2652 }
2653 },
2654 {
2655 "op" : "assign",
2656 "parameters" : [
2657 {
2658 "type" : "field",
2659 "value" : ["ethernet", "dst_addr"]
2660 },
2661 {
2662 "type" : "runtime_data",
2663 "value" : 2
2664 }
2665 ],
2666 "source_info" : {
2667 "filename" : "include/control/next.p4",
2668 "line" : 41,
2669 "column" : 8,
2670 "source_fragment" : "hdr.ethernet.dst_addr = dmac; ..."
2671 }
2672 },
2673 {
2674 "op" : "assign",
2675 "parameters" : [
2676 {
2677 "type" : "field",
2678 "value" : ["standard_metadata", "egress_spec"]
2679 },
2680 {
2681 "type" : "runtime_data",
2682 "value" : 0
2683 }
2684 ],
2685 "source_info" : {
2686 "filename" : "include/control/next.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002687 "line" : 31,
2688 "column" : 5,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002689 "source_fragment" : "standard_metadata.egress_spec = port_num; ..."
2690 }
2691 }
2692 ]
2693 },
2694 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002695 "name" : "FabricIngress.next.set_mcast_group_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002696 "id" : 32,
2697 "runtime_data" : [
2698 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002699 "name" : "group_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002700 "bitwidth" : 16
2701 }
2702 ],
2703 "primitives" : [
2704 {
2705 "op" : "assign",
2706 "parameters" : [
2707 {
2708 "type" : "field",
2709 "value" : ["standard_metadata", "mcast_grp"]
2710 },
2711 {
2712 "type" : "runtime_data",
2713 "value" : 0
2714 }
2715 ],
2716 "source_info" : {
2717 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07002718 "line" : 231,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002719 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002720 "source_fragment" : "standard_metadata.mcast_grp = group_id"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002721 }
2722 },
2723 {
2724 "op" : "assign",
2725 "parameters" : [
2726 {
2727 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07002728 "value" : ["scalars", "fabric_metadata_t._is_multicast10"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002729 },
2730 {
2731 "type" : "expression",
2732 "value" : {
2733 "type" : "expression",
2734 "value" : {
2735 "op" : "b2d",
2736 "left" : null,
2737 "right" : {
2738 "type" : "bool",
2739 "value" : true
2740 }
2741 }
2742 }
2743 }
2744 ],
2745 "source_info" : {
2746 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07002747 "line" : 232,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08002748 "column" : 37,
2749 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002750 }
2751 }
2752 ]
2753 },
2754 {
2755 "name" : "act",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002756 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002757 "runtime_data" : [],
2758 "primitives" : [
2759 {
2760 "op" : "assign",
2761 "parameters" : [
2762 {
2763 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002764 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002765 },
2766 {
2767 "type" : "expression",
2768 "value" : {
2769 "type" : "expression",
2770 "value" : {
2771 "op" : "b2d",
2772 "left" : null,
2773 "right" : {
2774 "type" : "bool",
2775 "value" : true
2776 }
2777 }
2778 }
2779 }
2780 ],
2781 "source_info" : {
2782 "filename" : "include/spgw.p4",
2783 "line" : 30,
2784 "column" : 32,
2785 "source_fragment" : "return"
2786 }
2787 }
2788 ]
2789 },
2790 {
2791 "name" : "act_0",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002792 "id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002793 "runtime_data" : [],
2794 "primitives" : [
2795 {
2796 "op" : "remove_header",
2797 "parameters" : [
2798 {
2799 "type" : "header",
2800 "value" : "gtpu_ipv4"
2801 }
2802 ],
2803 "source_info" : {
2804 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07002805 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002806 "column" : 50,
2807 "source_fragment" : "hdr.gtpu_ipv4"
2808 }
2809 },
2810 {
2811 "op" : "remove_header",
2812 "parameters" : [
2813 {
2814 "type" : "header",
2815 "value" : "gtpu_udp"
2816 }
2817 ],
2818 "source_info" : {
2819 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -07002820 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002821 "column" : 65,
2822 "source_fragment" : "hdr.gtpu_udp"
2823 }
2824 },
2825 {
2826 "op" : "assign",
2827 "parameters" : [
2828 {
2829 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002830 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002831 },
2832 {
2833 "type" : "expression",
2834 "value" : {
2835 "type" : "expression",
2836 "value" : {
2837 "op" : "b2d",
2838 "left" : null,
2839 "right" : {
2840 "type" : "bool",
2841 "value" : false
2842 }
2843 }
2844 }
2845 }
2846 ]
2847 }
2848 ]
2849 },
2850 {
2851 "name" : "act_1",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002852 "id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002853 "runtime_data" : [],
2854 "primitives" : [
2855 {
2856 "op" : "assign_header",
2857 "parameters" : [
2858 {
2859 "type" : "header",
2860 "value" : "udp"
2861 },
2862 {
2863 "type" : "header",
2864 "value" : "inner_udp"
2865 }
2866 ],
2867 "source_info" : {
2868 "filename" : "include/spgw.p4",
2869 "line" : 35,
2870 "column" : 16,
2871 "source_fragment" : "= inner_udp; ..."
2872 }
2873 }
2874 ]
2875 },
2876 {
2877 "name" : "act_2",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002878 "id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002879 "runtime_data" : [],
2880 "primitives" : [
2881 {
2882 "op" : "remove_header",
2883 "parameters" : [
2884 {
2885 "type" : "header",
2886 "value" : "udp"
2887 }
2888 ],
2889 "source_info" : {
2890 "filename" : "include/spgw.p4",
2891 "line" : 37,
2892 "column" : 12,
2893 "source_fragment" : "udp.setInvalid()"
2894 }
2895 }
2896 ]
2897 },
2898 {
2899 "name" : "act_3",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002900 "id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002901 "runtime_data" : [],
2902 "primitives" : [
2903 {
2904 "op" : "assign_header",
2905 "parameters" : [
2906 {
2907 "type" : "header",
2908 "value" : "gtpu_ipv4"
2909 },
2910 {
2911 "type" : "header",
2912 "value" : "ipv4"
2913 }
2914 ],
2915 "source_info" : {
2916 "filename" : "include/spgw.p4",
2917 "line" : 31,
2918 "column" : 18,
2919 "source_fragment" : "= ipv4; ..."
2920 }
2921 },
2922 {
2923 "op" : "assign_header",
2924 "parameters" : [
2925 {
2926 "type" : "header",
2927 "value" : "ipv4"
2928 },
2929 {
2930 "type" : "header",
2931 "value" : "inner_ipv4"
2932 }
2933 ],
2934 "source_info" : {
2935 "filename" : "include/spgw.p4",
2936 "line" : 32,
2937 "column" : 13,
2938 "source_fragment" : "= inner_ipv4; ..."
2939 }
2940 },
2941 {
2942 "op" : "assign_header",
2943 "parameters" : [
2944 {
2945 "type" : "header",
2946 "value" : "gtpu_udp"
2947 },
2948 {
2949 "type" : "header",
2950 "value" : "udp"
2951 }
2952 ],
2953 "source_info" : {
2954 "filename" : "include/spgw.p4",
2955 "line" : 33,
2956 "column" : 17,
2957 "source_fragment" : "= udp; ..."
2958 }
2959 }
2960 ]
2961 },
2962 {
2963 "name" : "act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002964 "id" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002965 "runtime_data" : [],
2966 "primitives" : [
2967 {
2968 "op" : "assign",
2969 "parameters" : [
2970 {
2971 "type" : "field",
2972 "value" : ["standard_metadata", "egress_spec"]
2973 },
2974 {
2975 "type" : "field",
2976 "value" : ["packet_out", "egress_port"]
2977 }
2978 ],
2979 "source_info" : {
2980 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002981 "line" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002982 "column" : 12,
2983 "source_fragment" : "standard_metadata.egress_spec = hdr.packet_out.egress_port"
2984 }
2985 },
2986 {
2987 "op" : "remove_header",
2988 "parameters" : [
2989 {
2990 "type" : "header",
2991 "value" : "packet_out"
2992 }
2993 ],
2994 "source_info" : {
2995 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08002996 "line" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07002997 "column" : 12,
2998 "source_fragment" : "hdr.packet_out.setInvalid()"
2999 }
3000 },
3001 {
3002 "op" : "assign",
3003 "parameters" : [
3004 {
3005 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003006 "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out11"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003007 },
3008 {
3009 "type" : "expression",
3010 "value" : {
3011 "type" : "expression",
3012 "value" : {
3013 "op" : "b2d",
3014 "left" : null,
3015 "right" : {
3016 "type" : "bool",
3017 "value" : true
3018 }
3019 }
3020 }
3021 }
3022 ],
3023 "source_info" : {
3024 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003025 "line" : 27,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003026 "column" : 53,
3027 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003028 }
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003029 },
3030 {
3031 "op" : "exit",
3032 "parameters" : [],
3033 "source_info" : {
3034 "filename" : "include/control/packetio.p4",
3035 "line" : 29,
3036 "column" : 12,
3037 "source_fragment" : "exit"
3038 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003039 }
3040 ]
3041 },
3042 {
3043 "name" : "act_5",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003044 "id" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003045 "runtime_data" : [],
3046 "primitives" : [
3047 {
3048 "op" : "assign",
3049 "parameters" : [
3050 {
3051 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003052 "value" : ["scalars", "fabric_metadata_t._vlan_id1"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003053 },
3054 {
3055 "type" : "field",
3056 "value" : ["vlan_tag", "vlan_id"]
3057 }
3058 ],
3059 "source_info" : {
3060 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07003061 "line" : 111,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003062 "column" : 36,
3063 "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003064 }
3065 },
3066 {
3067 "op" : "assign",
3068 "parameters" : [
3069 {
3070 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003071 "value" : ["scalars", "fabric_metadata_t._vlan_pri2"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003072 },
3073 {
3074 "type" : "field",
3075 "value" : ["vlan_tag", "pri"]
3076 }
3077 ],
3078 "source_info" : {
3079 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07003080 "line" : 112,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003081 "column" : 37,
3082 "source_fragment" : "= hdr.vlan_tag.pri; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003083 }
3084 },
3085 {
3086 "op" : "assign",
3087 "parameters" : [
3088 {
3089 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003090 "value" : ["scalars", "fabric_metadata_t._vlan_cfi3"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003091 },
3092 {
3093 "type" : "field",
3094 "value" : ["vlan_tag", "cfi"]
3095 }
3096 ],
3097 "source_info" : {
3098 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07003099 "line" : 113,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003100 "column" : 37,
3101 "source_fragment" : "= hdr.vlan_tag.cfi; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003102 }
3103 }
3104 ]
3105 },
3106 {
3107 "name" : "act_6",
3108 "id" : 40,
3109 "runtime_data" : [],
3110 "primitives" : [
3111 {
3112 "op" : "assign",
3113 "parameters" : [
3114 {
3115 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003116 "value" : ["scalars", "fabric_metadata_t._mpls_ttl5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003117 },
3118 {
3119 "type" : "hexstr",
3120 "value" : "0x41"
3121 }
3122 ],
3123 "source_info" : {
3124 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -07003125 "line" : 127,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003126 "column" : 37,
3127 "source_fragment" : "= DEFAULT_MPLS_TTL + 1; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003128 }
3129 }
3130 ]
3131 },
3132 {
3133 "name" : "act_7",
3134 "id" : 41,
3135 "runtime_data" : [],
3136 "primitives" : [
3137 {
3138 "op" : "assign",
3139 "parameters" : [
3140 {
3141 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003142 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003143 },
3144 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003145 "type" : "expression",
3146 "value" : {
3147 "type" : "expression",
3148 "value" : {
3149 "op" : "b2d",
3150 "left" : null,
3151 "right" : {
3152 "type" : "bool",
3153 "value" : true
3154 }
3155 }
3156 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003157 }
Daniele Moro5a2de712019-09-24 14:34:07 -07003158 ]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003159 }
3160 ]
3161 },
3162 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003163 "name" : "act_8",
3164 "id" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003165 "runtime_data" : [],
3166 "primitives" : [
3167 {
3168 "op" : "assign",
3169 "parameters" : [
3170 {
3171 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003172 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003173 },
3174 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003175 "type" : "expression",
3176 "value" : {
3177 "type" : "expression",
3178 "value" : {
3179 "op" : "b2d",
3180 "left" : null,
3181 "right" : {
3182 "type" : "bool",
3183 "value" : false
3184 }
3185 }
3186 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003187 }
Daniele Moro5a2de712019-09-24 14:34:07 -07003188 ]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003189 }
3190 ]
3191 },
3192 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003193 "name" : "act_9",
3194 "id" : 43,
3195 "runtime_data" : [],
3196 "primitives" : [
3197 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003198 "op" : "mark_to_drop",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003199 "parameters" : [
3200 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003201 "type" : "header",
3202 "value" : "standard_metadata"
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003203 }
3204 ],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003205 "source_info" : {
Daniele Moro5a2de712019-09-24 14:34:07 -07003206 "filename" : "include/spgw.p4",
3207 "line" : 149,
3208 "column" : 16,
3209 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003210 }
3211 }
3212 ]
3213 },
3214 {
3215 "name" : "act_10",
3216 "id" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003217 "runtime_data" : [],
3218 "primitives" : [
3219 {
3220 "op" : "assign",
3221 "parameters" : [
3222 {
3223 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003224 "value" : ["scalars", "fabric_metadata_t._spgw_direction15"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003225 },
3226 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003227 "type" : "hexstr",
3228 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003229 }
3230 ],
3231 "source_info" : {
Daniele Moro5a2de712019-09-24 14:34:07 -07003232 "filename" : "include/control/../define.p4",
3233 "line" : 147,
3234 "column" : 36,
3235 "source_fragment" : "2w1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003236 }
3237 }
3238 ]
3239 },
3240 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003241 "name" : "act_11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003242 "id" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003243 "runtime_data" : [],
3244 "primitives" : [
3245 {
3246 "op" : "assign",
3247 "parameters" : [
3248 {
3249 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003250 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003251 },
3252 {
3253 "type" : "expression",
3254 "value" : {
3255 "type" : "expression",
3256 "value" : {
3257 "op" : "b2d",
3258 "left" : null,
3259 "right" : {
3260 "type" : "bool",
3261 "value" : true
3262 }
3263 }
3264 }
3265 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003266 ]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003267 }
3268 ]
3269 },
3270 {
3271 "name" : "act_12",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003272 "id" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003273 "runtime_data" : [],
3274 "primitives" : [
3275 {
3276 "op" : "assign",
3277 "parameters" : [
3278 {
3279 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003280 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003281 },
3282 {
3283 "type" : "expression",
3284 "value" : {
3285 "type" : "expression",
3286 "value" : {
3287 "op" : "b2d",
3288 "left" : null,
3289 "right" : {
3290 "type" : "bool",
3291 "value" : false
3292 }
3293 }
3294 }
3295 }
3296 ]
3297 }
3298 ]
3299 },
3300 {
3301 "name" : "act_13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003302 "id" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003303 "runtime_data" : [],
3304 "primitives" : [
3305 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003306 "op" : "assign",
Daniele Moro7c3a0022019-07-12 13:38:34 -07003307 "parameters" : [
3308 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003309 "type" : "field",
3310 "value" : ["scalars", "fabric_metadata_t._spgw_direction15"]
3311 },
3312 {
3313 "type" : "hexstr",
3314 "value" : "0x02"
Daniele Moro7c3a0022019-07-12 13:38:34 -07003315 }
3316 ],
3317 "source_info" : {
Daniele Moro5a2de712019-09-24 14:34:07 -07003318 "filename" : "include/control/../define.p4",
3319 "line" : 148,
3320 "column" : 38,
3321 "source_fragment" : "2w2; ..."
Daniele Moro7c3a0022019-07-12 13:38:34 -07003322 }
3323 }
3324 ]
3325 },
3326 {
3327 "name" : "act_14",
3328 "id" : 48,
3329 "runtime_data" : [],
3330 "primitives" : [
3331 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003332 "op" : "assign",
3333 "parameters" : [
3334 {
3335 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003336 "value" : ["scalars", "fabric_metadata_t._spgw_direction15"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003337 },
3338 {
3339 "type" : "hexstr",
3340 "value" : "0x00"
3341 }
3342 ],
3343 "source_info" : {
3344 "filename" : "include/control/../define.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07003345 "line" : 146,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003346 "column" : 37,
3347 "source_fragment" : "2w0; ..."
3348 }
3349 },
3350 {
3351 "op" : "assign",
3352 "parameters" : [
3353 {
3354 "type" : "field",
3355 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003356 },
3357 {
3358 "type" : "expression",
3359 "value" : {
3360 "type" : "expression",
3361 "value" : {
3362 "op" : "b2d",
3363 "left" : null,
3364 "right" : {
3365 "type" : "bool",
3366 "value" : true
3367 }
3368 }
3369 }
3370 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003371 ],
3372 "source_info" : {
3373 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003374 "line" : 158,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003375 "column" : 12,
3376 "source_fragment" : "return"
3377 }
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003378 }
3379 ]
3380 },
3381 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003382 "name" : "act_15",
3383 "id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003384 "runtime_data" : [],
3385 "primitives" : [
3386 {
3387 "op" : "assign",
3388 "parameters" : [
3389 {
3390 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003391 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003392 },
3393 {
3394 "type" : "expression",
3395 "value" : {
3396 "type" : "expression",
3397 "value" : {
3398 "op" : "b2d",
3399 "left" : null,
3400 "right" : {
3401 "type" : "bool",
3402 "value" : false
3403 }
3404 }
3405 }
3406 }
3407 ]
3408 }
3409 ]
3410 },
3411 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003412 "name" : "act_16",
3413 "id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003414 "runtime_data" : [],
3415 "primitives" : [
3416 {
3417 "op" : "assign",
3418 "parameters" : [
3419 {
3420 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003421 "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len16"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003422 },
3423 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003424 "type" : "field",
3425 "value" : ["ipv4", "total_len"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003426 }
3427 ],
3428 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003429 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003430 "line" : 175,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003431 "column" : 34,
3432 "source_fragment" : "= ipv4.total_len; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003433 }
3434 }
3435 ]
3436 },
3437 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003438 "name" : "act_17",
3439 "id" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003440 "runtime_data" : [],
3441 "primitives" : [
3442 {
3443 "op" : "assign",
3444 "parameters" : [
3445 {
3446 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003447 "value" : ["scalars", "tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003448 },
3449 {
3450 "type" : "expression",
3451 "value" : {
3452 "type" : "expression",
3453 "value" : {
3454 "op" : "&",
3455 "left" : {
3456 "type" : "field",
3457 "value" : ["standard_metadata", "egress_spec"]
3458 },
3459 "right" : {
3460 "type" : "hexstr",
3461 "value" : "0xffffffff"
3462 }
3463 }
3464 }
3465 }
3466 ],
3467 "source_info" : {
3468 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003469 "line" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003470 "column" : 38,
3471 "source_fragment" : "(bit<32>)standard_metadata.egress_spec"
3472 }
3473 },
3474 {
3475 "op" : "count",
3476 "parameters" : [
3477 {
3478 "type" : "counter_array",
3479 "value" : "FabricIngress.port_counters_control.egress_port_counter"
3480 },
3481 {
3482 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003483 "value" : ["scalars", "tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003484 }
3485 ],
3486 "source_info" : {
3487 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003488 "line" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003489 "column" : 12,
3490 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
3491 }
3492 }
3493 ]
3494 },
3495 {
Daniele Moro5a2de712019-09-24 14:34:07 -07003496 "name" : "act_18",
3497 "id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003498 "runtime_data" : [],
3499 "primitives" : [
3500 {
3501 "op" : "assign",
3502 "parameters" : [
3503 {
3504 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003505 "value" : ["scalars", "tmp_1"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003506 },
3507 {
3508 "type" : "expression",
3509 "value" : {
3510 "type" : "expression",
3511 "value" : {
3512 "op" : "&",
3513 "left" : {
3514 "type" : "field",
3515 "value" : ["standard_metadata", "ingress_port"]
3516 },
3517 "right" : {
3518 "type" : "hexstr",
3519 "value" : "0xffffffff"
3520 }
3521 }
3522 }
3523 }
3524 ],
3525 "source_info" : {
3526 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003527 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003528 "column" : 39,
3529 "source_fragment" : "(bit<32>)standard_metadata.ingress_port"
3530 }
3531 },
3532 {
3533 "op" : "count",
3534 "parameters" : [
3535 {
3536 "type" : "counter_array",
3537 "value" : "FabricIngress.port_counters_control.ingress_port_counter"
3538 },
3539 {
3540 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003541 "value" : ["scalars", "tmp_1"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003542 }
3543 ],
3544 "source_info" : {
3545 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003546 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003547 "column" : 12,
3548 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
3549 }
3550 }
3551 ]
3552 },
3553 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003554 "name" : "nop",
Daniele Moro5a2de712019-09-24 14:34:07 -07003555 "id" : 53,
3556 "runtime_data" : [],
3557 "primitives" : []
3558 },
3559 {
3560 "name" : "nop",
3561 "id" : 54,
3562 "runtime_data" : [],
3563 "primitives" : []
3564 },
3565 {
3566 "name" : "nop",
3567 "id" : 55,
3568 "runtime_data" : [],
3569 "primitives" : []
3570 },
3571 {
3572 "name" : "NoAction",
3573 "id" : 56,
3574 "runtime_data" : [],
3575 "primitives" : []
3576 },
3577 {
3578 "name" : "NoAction",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003579 "id" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003580 "runtime_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003581 "primitives" : []
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003582 },
3583 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07003584 "name" : "FabricEgress.spgw_egress.gtpu_encap",
Daniele Moro5a2de712019-09-24 14:34:07 -07003585 "id" : 58,
Daniele Moro7c3a0022019-07-12 13:38:34 -07003586 "runtime_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003587 "primitives" : [
3588 {
3589 "op" : "add_header",
3590 "parameters" : [
3591 {
3592 "type" : "header",
3593 "value" : "gtpu_ipv4"
3594 }
3595 ],
3596 "source_info" : {
3597 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003598 "line" : 191,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003599 "column" : 8,
3600 "source_fragment" : "gtpu_ipv4.setValid()"
3601 }
3602 },
3603 {
3604 "op" : "assign",
3605 "parameters" : [
3606 {
3607 "type" : "field",
3608 "value" : ["gtpu_ipv4", "version"]
3609 },
3610 {
3611 "type" : "hexstr",
3612 "value" : "0x04"
3613 }
3614 ],
3615 "source_info" : {
3616 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003617 "line" : 192,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003618 "column" : 8,
3619 "source_fragment" : "gtpu_ipv4.version = 4"
3620 }
3621 },
3622 {
3623 "op" : "assign",
3624 "parameters" : [
3625 {
3626 "type" : "field",
3627 "value" : ["gtpu_ipv4", "ihl"]
3628 },
3629 {
3630 "type" : "hexstr",
3631 "value" : "0x05"
3632 }
3633 ],
3634 "source_info" : {
3635 "filename" : "include/control/../define.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07003636 "line" : 129,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003637 "column" : 28,
3638 "source_fragment" : "5; ..."
3639 }
3640 },
3641 {
3642 "op" : "assign",
3643 "parameters" : [
3644 {
3645 "type" : "field",
3646 "value" : ["gtpu_ipv4", "dscp"]
3647 },
3648 {
3649 "type" : "hexstr",
3650 "value" : "0x00"
3651 }
3652 ],
3653 "source_info" : {
3654 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003655 "line" : 194,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003656 "column" : 8,
3657 "source_fragment" : "gtpu_ipv4.dscp = 0"
3658 }
3659 },
3660 {
3661 "op" : "assign",
3662 "parameters" : [
3663 {
3664 "type" : "field",
3665 "value" : ["gtpu_ipv4", "ecn"]
3666 },
3667 {
3668 "type" : "hexstr",
3669 "value" : "0x00"
3670 }
3671 ],
3672 "source_info" : {
3673 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003674 "line" : 195,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003675 "column" : 8,
3676 "source_fragment" : "gtpu_ipv4.ecn = 0"
3677 }
3678 },
3679 {
3680 "op" : "assign",
3681 "parameters" : [
3682 {
3683 "type" : "field",
3684 "value" : ["gtpu_ipv4", "total_len"]
3685 },
3686 {
3687 "type" : "expression",
3688 "value" : {
3689 "type" : "expression",
3690 "value" : {
3691 "op" : "&",
3692 "left" : {
3693 "type" : "expression",
3694 "value" : {
3695 "op" : "+",
3696 "left" : {
3697 "type" : "field",
3698 "value" : ["ipv4", "total_len"]
3699 },
3700 "right" : {
3701 "type" : "hexstr",
3702 "value" : "0x0024"
3703 }
3704 }
3705 },
3706 "right" : {
3707 "type" : "hexstr",
3708 "value" : "0xffff"
3709 }
3710 }
3711 }
3712 }
3713 ],
3714 "source_info" : {
3715 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003716 "line" : 196,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003717 "column" : 8,
3718 "source_fragment" : "gtpu_ipv4.total_len = ipv4.total_len ..."
3719 }
3720 },
3721 {
3722 "op" : "assign",
3723 "parameters" : [
3724 {
3725 "type" : "field",
3726 "value" : ["gtpu_ipv4", "identification"]
3727 },
3728 {
3729 "type" : "hexstr",
3730 "value" : "0x1513"
3731 }
3732 ],
3733 "source_info" : {
3734 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003735 "line" : 198,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003736 "column" : 8,
3737 "source_fragment" : "gtpu_ipv4.identification = 0x1513"
3738 }
3739 },
3740 {
3741 "op" : "assign",
3742 "parameters" : [
3743 {
3744 "type" : "field",
3745 "value" : ["gtpu_ipv4", "flags"]
3746 },
3747 {
3748 "type" : "hexstr",
3749 "value" : "0x00"
3750 }
3751 ],
3752 "source_info" : {
3753 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003754 "line" : 199,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003755 "column" : 8,
3756 "source_fragment" : "gtpu_ipv4.flags = 0"
3757 }
3758 },
3759 {
3760 "op" : "assign",
3761 "parameters" : [
3762 {
3763 "type" : "field",
3764 "value" : ["gtpu_ipv4", "frag_offset"]
3765 },
3766 {
3767 "type" : "hexstr",
3768 "value" : "0x0000"
3769 }
3770 ],
3771 "source_info" : {
3772 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003773 "line" : 200,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003774 "column" : 8,
3775 "source_fragment" : "gtpu_ipv4.frag_offset = 0"
3776 }
3777 },
3778 {
3779 "op" : "assign",
3780 "parameters" : [
3781 {
3782 "type" : "field",
3783 "value" : ["gtpu_ipv4", "ttl"]
3784 },
3785 {
3786 "type" : "hexstr",
3787 "value" : "0x40"
3788 }
3789 ],
3790 "source_info" : {
3791 "filename" : "include/control/../define.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07003792 "line" : 142,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003793 "column" : 32,
3794 "source_fragment" : "64; ..."
3795 }
3796 },
3797 {
3798 "op" : "assign",
3799 "parameters" : [
3800 {
3801 "type" : "field",
3802 "value" : ["gtpu_ipv4", "protocol"]
3803 },
3804 {
3805 "type" : "hexstr",
3806 "value" : "0x11"
3807 }
3808 ],
3809 "source_info" : {
3810 "filename" : "include/control/../define.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07003811 "line" : 126,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003812 "column" : 25,
3813 "source_fragment" : "17; ..."
3814 }
3815 },
3816 {
3817 "op" : "assign",
3818 "parameters" : [
3819 {
3820 "type" : "field",
3821 "value" : ["gtpu_ipv4", "dst_addr"]
3822 },
3823 {
3824 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003825 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_enb_addr18"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003826 }
3827 ],
3828 "source_info" : {
3829 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003830 "line" : 203,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003831 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003832 "source_fragment" : "gtpu_ipv4.dst_addr = fabric_meta.spgw.s1u_enb_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003833 }
3834 },
3835 {
3836 "op" : "assign",
3837 "parameters" : [
3838 {
3839 "type" : "field",
3840 "value" : ["gtpu_ipv4", "src_addr"]
3841 },
3842 {
3843 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003844 "value" : ["scalars", "fabric_metadata_t._spgw_s1u_sgw_addr19"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003845 }
3846 ],
3847 "source_info" : {
3848 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003849 "line" : 204,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003850 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08003851 "source_fragment" : "gtpu_ipv4.src_addr = fabric_meta.spgw.s1u_sgw_addr; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003852 }
3853 },
3854 {
3855 "op" : "assign",
3856 "parameters" : [
3857 {
3858 "type" : "field",
3859 "value" : ["gtpu_ipv4", "hdr_checksum"]
3860 },
3861 {
3862 "type" : "hexstr",
3863 "value" : "0x0000"
3864 }
3865 ],
3866 "source_info" : {
3867 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003868 "line" : 205,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003869 "column" : 8,
3870 "source_fragment" : "gtpu_ipv4.hdr_checksum = 0"
3871 }
3872 },
3873 {
3874 "op" : "add_header",
3875 "parameters" : [
3876 {
3877 "type" : "header",
3878 "value" : "gtpu_udp"
3879 }
3880 ],
3881 "source_info" : {
3882 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003883 "line" : 207,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003884 "column" : 8,
3885 "source_fragment" : "gtpu_udp.setValid()"
3886 }
3887 },
3888 {
3889 "op" : "assign",
3890 "parameters" : [
3891 {
3892 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003893 "value" : ["gtpu_udp", "sport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003894 },
3895 {
3896 "type" : "hexstr",
3897 "value" : "0x0868"
3898 }
3899 ],
3900 "source_info" : {
3901 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003902 "line" : 208,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003903 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003904 "source_fragment" : "gtpu_udp.sport = 2152"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003905 }
3906 },
3907 {
3908 "op" : "assign",
3909 "parameters" : [
3910 {
3911 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003912 "value" : ["gtpu_udp", "dport"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003913 },
3914 {
3915 "type" : "hexstr",
3916 "value" : "0x0868"
3917 }
3918 ],
3919 "source_info" : {
3920 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003921 "line" : 209,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003922 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003923 "source_fragment" : "gtpu_udp.dport = 2152"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003924 }
3925 },
3926 {
3927 "op" : "assign",
3928 "parameters" : [
3929 {
3930 "type" : "field",
3931 "value" : ["gtpu_udp", "len"]
3932 },
3933 {
3934 "type" : "expression",
3935 "value" : {
3936 "type" : "expression",
3937 "value" : {
3938 "op" : "&",
3939 "left" : {
3940 "type" : "expression",
3941 "value" : {
3942 "op" : "+",
3943 "left" : {
3944 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07003945 "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len16"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003946 },
3947 "right" : {
3948 "type" : "hexstr",
3949 "value" : "0x0010"
3950 }
3951 }
3952 },
3953 "right" : {
3954 "type" : "hexstr",
3955 "value" : "0xffff"
3956 }
3957 }
3958 }
3959 }
3960 ],
3961 "source_info" : {
3962 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003963 "line" : 210,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003964 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -08003965 "source_fragment" : "gtpu_udp.len = fabric_meta.spgw.ipv4_len ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003966 }
3967 },
3968 {
3969 "op" : "assign",
3970 "parameters" : [
3971 {
3972 "type" : "field",
3973 "value" : ["gtpu_udp", "checksum"]
3974 },
3975 {
3976 "type" : "hexstr",
3977 "value" : "0x0000"
3978 }
3979 ],
3980 "source_info" : {
3981 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003982 "line" : 212,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003983 "column" : 8,
3984 "source_fragment" : "gtpu_udp.checksum = 0"
3985 }
3986 },
3987 {
3988 "op" : "add_header",
3989 "parameters" : [
3990 {
3991 "type" : "header",
3992 "value" : "gtpu"
3993 }
3994 ],
3995 "source_info" : {
3996 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07003997 "line" : 214,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07003998 "column" : 8,
3999 "source_fragment" : "gtpu.setValid()"
4000 }
4001 },
4002 {
4003 "op" : "assign",
4004 "parameters" : [
4005 {
4006 "type" : "field",
4007 "value" : ["gtpu", "version"]
4008 },
4009 {
4010 "type" : "hexstr",
4011 "value" : "0x01"
4012 }
4013 ],
4014 "source_info" : {
4015 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004016 "line" : 215,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004017 "column" : 8,
4018 "source_fragment" : "gtpu.version = 0x01"
4019 }
4020 },
4021 {
4022 "op" : "assign",
4023 "parameters" : [
4024 {
4025 "type" : "field",
4026 "value" : ["gtpu", "pt"]
4027 },
4028 {
4029 "type" : "hexstr",
4030 "value" : "0x01"
4031 }
4032 ],
4033 "source_info" : {
4034 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004035 "line" : 216,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004036 "column" : 8,
4037 "source_fragment" : "gtpu.pt = 0x01"
4038 }
4039 },
4040 {
4041 "op" : "assign",
4042 "parameters" : [
4043 {
4044 "type" : "field",
4045 "value" : ["gtpu", "spare"]
4046 },
4047 {
4048 "type" : "hexstr",
4049 "value" : "0x00"
4050 }
4051 ],
4052 "source_info" : {
4053 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004054 "line" : 217,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004055 "column" : 8,
4056 "source_fragment" : "gtpu.spare = 0"
4057 }
4058 },
4059 {
4060 "op" : "assign",
4061 "parameters" : [
4062 {
4063 "type" : "field",
4064 "value" : ["gtpu", "ex_flag"]
4065 },
4066 {
4067 "type" : "hexstr",
4068 "value" : "0x00"
4069 }
4070 ],
4071 "source_info" : {
4072 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004073 "line" : 218,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004074 "column" : 8,
4075 "source_fragment" : "gtpu.ex_flag = 0"
4076 }
4077 },
4078 {
4079 "op" : "assign",
4080 "parameters" : [
4081 {
4082 "type" : "field",
4083 "value" : ["gtpu", "seq_flag"]
4084 },
4085 {
4086 "type" : "hexstr",
4087 "value" : "0x00"
4088 }
4089 ],
4090 "source_info" : {
4091 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004092 "line" : 219,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004093 "column" : 8,
4094 "source_fragment" : "gtpu.seq_flag = 0"
4095 }
4096 },
4097 {
4098 "op" : "assign",
4099 "parameters" : [
4100 {
4101 "type" : "field",
4102 "value" : ["gtpu", "npdu_flag"]
4103 },
4104 {
4105 "type" : "hexstr",
4106 "value" : "0x00"
4107 }
4108 ],
4109 "source_info" : {
4110 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004111 "line" : 220,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004112 "column" : 8,
4113 "source_fragment" : "gtpu.npdu_flag = 0"
4114 }
4115 },
4116 {
4117 "op" : "assign",
4118 "parameters" : [
4119 {
4120 "type" : "field",
4121 "value" : ["gtpu", "msgtype"]
4122 },
4123 {
4124 "type" : "hexstr",
4125 "value" : "0xff"
4126 }
4127 ],
4128 "source_info" : {
4129 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004130 "line" : 221,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004131 "column" : 8,
4132 "source_fragment" : "gtpu.msgtype = 0xff"
4133 }
4134 },
4135 {
4136 "op" : "assign",
4137 "parameters" : [
4138 {
4139 "type" : "field",
4140 "value" : ["gtpu", "msglen"]
4141 },
4142 {
4143 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004144 "value" : ["scalars", "fabric_metadata_t._spgw_ipv4_len16"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004145 }
4146 ],
4147 "source_info" : {
4148 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004149 "line" : 222,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004150 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004151 "source_fragment" : "gtpu.msglen = fabric_meta.spgw.ipv4_len; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004152 }
4153 },
4154 {
4155 "op" : "assign",
4156 "parameters" : [
4157 {
4158 "type" : "field",
4159 "value" : ["gtpu", "teid"]
4160 },
4161 {
4162 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004163 "value" : ["scalars", "fabric_metadata_t._spgw_teid17"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004164 }
4165 ],
4166 "source_info" : {
4167 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -07004168 "line" : 223,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004169 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004170 "source_fragment" : "gtpu.teid = fabric_meta.spgw.teid; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004171 }
4172 }
4173 ]
4174 },
4175 {
4176 "name" : "FabricEgress.process_int_main.process_int_source.int_source_dscp",
Daniele Moro5a2de712019-09-24 14:34:07 -07004177 "id" : 59,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004178 "runtime_data" : [
4179 {
4180 "name" : "max_hop",
4181 "bitwidth" : 8
4182 },
4183 {
4184 "name" : "ins_cnt",
4185 "bitwidth" : 5
4186 },
4187 {
4188 "name" : "ins_mask0003",
4189 "bitwidth" : 4
4190 },
4191 {
4192 "name" : "ins_mask0407",
4193 "bitwidth" : 4
4194 }
4195 ],
4196 "primitives" : [
4197 {
4198 "op" : "add_header",
4199 "parameters" : [
4200 {
4201 "type" : "header",
4202 "value" : "intl4_shim"
4203 }
4204 ],
4205 "source_info" : {
4206 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004207 "line" : 32,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004208 "column" : 8,
4209 "source_fragment" : "hdr.intl4_shim.setValid()"
4210 }
4211 },
4212 {
4213 "op" : "assign",
4214 "parameters" : [
4215 {
4216 "type" : "field",
4217 "value" : ["intl4_shim", "int_type"]
4218 },
4219 {
4220 "type" : "hexstr",
4221 "value" : "0x01"
4222 }
4223 ],
4224 "source_info" : {
4225 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004226 "line" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004227 "column" : 8,
4228 "source_fragment" : "hdr.intl4_shim.int_type = 1"
4229 }
4230 },
4231 {
4232 "op" : "assign",
4233 "parameters" : [
4234 {
4235 "type" : "field",
4236 "value" : ["intl4_shim", "len_words"]
4237 },
4238 {
4239 "type" : "hexstr",
4240 "value" : "0x04"
4241 }
4242 ],
4243 "source_info" : {
4244 "filename" : "include/control/../define.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07004245 "line" : 157,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004246 "column" : 36,
4247 "source_fragment" : "4; ..."
4248 }
4249 },
4250 {
4251 "op" : "add_header",
4252 "parameters" : [
4253 {
4254 "type" : "header",
4255 "value" : "int_header"
4256 }
4257 ],
4258 "source_info" : {
4259 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004260 "line" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004261 "column" : 8,
4262 "source_fragment" : "hdr.int_header.setValid()"
4263 }
4264 },
4265 {
4266 "op" : "assign",
4267 "parameters" : [
4268 {
4269 "type" : "field",
4270 "value" : ["int_header", "ver"]
4271 },
4272 {
4273 "type" : "hexstr",
4274 "value" : "0x00"
4275 }
4276 ],
4277 "source_info" : {
4278 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004279 "line" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004280 "column" : 8,
4281 "source_fragment" : "hdr.int_header.ver = 0"
4282 }
4283 },
4284 {
4285 "op" : "assign",
4286 "parameters" : [
4287 {
4288 "type" : "field",
4289 "value" : ["int_header", "rep"]
4290 },
4291 {
4292 "type" : "hexstr",
4293 "value" : "0x00"
4294 }
4295 ],
4296 "source_info" : {
4297 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004298 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004299 "column" : 8,
4300 "source_fragment" : "hdr.int_header.rep = 0"
4301 }
4302 },
4303 {
4304 "op" : "assign",
4305 "parameters" : [
4306 {
4307 "type" : "field",
4308 "value" : ["int_header", "c"]
4309 },
4310 {
4311 "type" : "hexstr",
4312 "value" : "0x00"
4313 }
4314 ],
4315 "source_info" : {
4316 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004317 "line" : 40,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004318 "column" : 8,
4319 "source_fragment" : "hdr.int_header.c = 0"
4320 }
4321 },
4322 {
4323 "op" : "assign",
4324 "parameters" : [
4325 {
4326 "type" : "field",
4327 "value" : ["int_header", "e"]
4328 },
4329 {
4330 "type" : "hexstr",
4331 "value" : "0x00"
4332 }
4333 ],
4334 "source_info" : {
4335 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004336 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004337 "column" : 8,
4338 "source_fragment" : "hdr.int_header.e = 0"
4339 }
4340 },
4341 {
4342 "op" : "assign",
4343 "parameters" : [
4344 {
4345 "type" : "field",
4346 "value" : ["int_header", "rsvd1"]
4347 },
4348 {
4349 "type" : "hexstr",
4350 "value" : "0x00"
4351 }
4352 ],
4353 "source_info" : {
4354 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004355 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004356 "column" : 8,
4357 "source_fragment" : "hdr.int_header.rsvd1 = 0"
4358 }
4359 },
4360 {
4361 "op" : "assign",
4362 "parameters" : [
4363 {
4364 "type" : "field",
4365 "value" : ["int_header", "ins_cnt"]
4366 },
4367 {
4368 "type" : "runtime_data",
4369 "value" : 1
4370 }
4371 ],
4372 "source_info" : {
4373 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004374 "line" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004375 "column" : 8,
4376 "source_fragment" : "hdr.int_header.ins_cnt = ins_cnt; ..."
4377 }
4378 },
4379 {
4380 "op" : "assign",
4381 "parameters" : [
4382 {
4383 "type" : "field",
4384 "value" : ["int_header", "max_hop_cnt"]
4385 },
4386 {
4387 "type" : "runtime_data",
4388 "value" : 0
4389 }
4390 ],
4391 "source_info" : {
4392 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004393 "line" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004394 "column" : 8,
4395 "source_fragment" : "hdr.int_header.max_hop_cnt = max_hop; ..."
4396 }
4397 },
4398 {
4399 "op" : "assign",
4400 "parameters" : [
4401 {
4402 "type" : "field",
4403 "value" : ["int_header", "total_hop_cnt"]
4404 },
4405 {
4406 "type" : "hexstr",
4407 "value" : "0x00"
4408 }
4409 ],
4410 "source_info" : {
4411 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004412 "line" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004413 "column" : 8,
4414 "source_fragment" : "hdr.int_header.total_hop_cnt = 0"
4415 }
4416 },
4417 {
4418 "op" : "assign",
4419 "parameters" : [
4420 {
4421 "type" : "field",
4422 "value" : ["int_header", "instruction_mask_0003"]
4423 },
4424 {
4425 "type" : "runtime_data",
4426 "value" : 2
4427 }
4428 ],
4429 "source_info" : {
4430 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004431 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004432 "column" : 8,
4433 "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
4434 }
4435 },
4436 {
4437 "op" : "assign",
4438 "parameters" : [
4439 {
4440 "type" : "field",
4441 "value" : ["int_header", "instruction_mask_0407"]
4442 },
4443 {
4444 "type" : "runtime_data",
4445 "value" : 3
4446 }
4447 ],
4448 "source_info" : {
4449 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004450 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004451 "column" : 8,
4452 "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
4453 }
4454 },
4455 {
4456 "op" : "assign",
4457 "parameters" : [
4458 {
4459 "type" : "field",
4460 "value" : ["int_header", "instruction_mask_0811"]
4461 },
4462 {
4463 "type" : "hexstr",
4464 "value" : "0x00"
4465 }
4466 ],
4467 "source_info" : {
4468 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004469 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004470 "column" : 8,
4471 "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
4472 }
4473 },
4474 {
4475 "op" : "assign",
4476 "parameters" : [
4477 {
4478 "type" : "field",
4479 "value" : ["int_header", "instruction_mask_1215"]
4480 },
4481 {
4482 "type" : "hexstr",
4483 "value" : "0x00"
4484 }
4485 ],
4486 "source_info" : {
4487 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004488 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004489 "column" : 8,
4490 "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
4491 }
4492 },
4493 {
4494 "op" : "add_header",
4495 "parameters" : [
4496 {
4497 "type" : "header",
4498 "value" : "intl4_tail"
4499 }
4500 ],
4501 "source_info" : {
4502 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004503 "line" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004504 "column" : 8,
4505 "source_fragment" : "hdr.intl4_tail.setValid()"
4506 }
4507 },
4508 {
4509 "op" : "assign",
4510 "parameters" : [
4511 {
4512 "type" : "field",
4513 "value" : ["intl4_tail", "next_proto"]
4514 },
4515 {
4516 "type" : "field",
4517 "value" : ["ipv4", "protocol"]
4518 }
4519 ],
4520 "source_info" : {
4521 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004522 "line" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004523 "column" : 8,
4524 "source_fragment" : "hdr.intl4_tail.next_proto = hdr.ipv4.protocol"
4525 }
4526 },
4527 {
4528 "op" : "assign",
4529 "parameters" : [
4530 {
4531 "type" : "field",
4532 "value" : ["intl4_tail", "dest_port"]
4533 },
4534 {
4535 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004536 "value" : ["scalars", "fabric_metadata_t._l4_dport14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004537 }
4538 ],
4539 "source_info" : {
4540 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004541 "line" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004542 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004543 "source_fragment" : "hdr.intl4_tail.dest_port = fabric_metadata.l4_dport; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004544 }
4545 },
4546 {
4547 "op" : "assign",
4548 "parameters" : [
4549 {
4550 "type" : "field",
4551 "value" : ["intl4_tail", "dscp"]
4552 },
4553 {
4554 "type" : "field",
4555 "value" : ["ipv4", "dscp"]
4556 }
4557 ],
4558 "source_info" : {
4559 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004560 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004561 "column" : 8,
4562 "source_fragment" : "hdr.intl4_tail.dscp = hdr.ipv4.dscp"
4563 }
4564 },
4565 {
4566 "op" : "assign",
4567 "parameters" : [
4568 {
4569 "type" : "field",
4570 "value" : ["ipv4", "total_len"]
4571 },
4572 {
4573 "type" : "expression",
4574 "value" : {
4575 "type" : "expression",
4576 "value" : {
4577 "op" : "&",
4578 "left" : {
4579 "type" : "expression",
4580 "value" : {
4581 "op" : "+",
4582 "left" : {
4583 "type" : "field",
4584 "value" : ["ipv4", "total_len"]
4585 },
4586 "right" : {
4587 "type" : "hexstr",
4588 "value" : "0x0010"
4589 }
4590 }
4591 },
4592 "right" : {
4593 "type" : "hexstr",
4594 "value" : "0xffff"
4595 }
4596 }
4597 }
4598 }
4599 ],
4600 "source_info" : {
4601 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004602 "line" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004603 "column" : 8,
4604 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + INT_HEADER_LEN_BYTES"
4605 }
4606 },
4607 {
4608 "op" : "assign",
4609 "parameters" : [
4610 {
4611 "type" : "field",
4612 "value" : ["udp", "len"]
4613 },
4614 {
4615 "type" : "expression",
4616 "value" : {
4617 "type" : "expression",
4618 "value" : {
4619 "op" : "&",
4620 "left" : {
4621 "type" : "expression",
4622 "value" : {
4623 "op" : "+",
4624 "left" : {
4625 "type" : "field",
4626 "value" : ["udp", "len"]
4627 },
4628 "right" : {
4629 "type" : "hexstr",
4630 "value" : "0x0010"
4631 }
4632 }
4633 },
4634 "right" : {
4635 "type" : "hexstr",
4636 "value" : "0xffff"
4637 }
4638 }
4639 }
4640 }
4641 ],
4642 "source_info" : {
4643 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004644 "line" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004645 "column" : 8,
4646 "source_fragment" : "hdr.udp.len = hdr.udp.len + INT_HEADER_LEN_BYTES"
4647 }
4648 },
4649 {
4650 "op" : "assign",
4651 "parameters" : [
4652 {
4653 "type" : "field",
4654 "value" : ["ipv4", "dscp"]
4655 },
4656 {
4657 "type" : "hexstr",
4658 "value" : "0x01"
4659 }
4660 ],
4661 "source_info" : {
4662 "filename" : "include/control/../define.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07004663 "line" : 153,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004664 "column" : 24,
4665 "source_fragment" : "0x1; ..."
4666 }
4667 }
4668 ]
4669 },
4670 {
4671 "name" : "FabricEgress.process_int_main.process_int_transit.init_metadata",
Daniele Moro5a2de712019-09-24 14:34:07 -07004672 "id" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004673 "runtime_data" : [
4674 {
4675 "name" : "switch_id",
4676 "bitwidth" : 32
4677 }
4678 ],
4679 "primitives" : [
4680 {
4681 "op" : "assign",
4682 "parameters" : [
4683 {
4684 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004685 "value" : ["scalars", "fabric_metadata_t._int_meta_transit21"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004686 },
4687 {
4688 "type" : "expression",
4689 "value" : {
4690 "type" : "expression",
4691 "value" : {
4692 "op" : "b2d",
4693 "left" : null,
4694 "right" : {
4695 "type" : "bool",
4696 "value" : true
4697 }
4698 }
4699 }
4700 }
4701 ],
4702 "source_info" : {
4703 "filename" : "include/int/int_transit.p4",
4704 "line" : 26,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004705 "column" : 31,
4706 "source_fragment" : "= true; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004707 }
4708 },
4709 {
4710 "op" : "assign",
4711 "parameters" : [
4712 {
4713 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004714 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id23"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004715 },
4716 {
4717 "type" : "runtime_data",
4718 "value" : 0
4719 }
4720 ],
4721 "source_info" : {
4722 "filename" : "include/int/int_transit.p4",
4723 "line" : 31,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004724 "column" : 33,
4725 "source_fragment" : "= switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004726 }
4727 }
4728 ]
4729 },
4730 {
4731 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0",
Daniele Moro5a2de712019-09-24 14:34:07 -07004732 "id" : 61,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004733 "runtime_data" : [],
4734 "primitives" : []
4735 },
4736 {
4737 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1",
Daniele Moro5a2de712019-09-24 14:34:07 -07004738 "id" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004739 "runtime_data" : [],
4740 "primitives" : [
4741 {
4742 "op" : "add_header",
4743 "parameters" : [
4744 {
4745 "type" : "header",
4746 "value" : "int_q_occupancy"
4747 }
4748 ],
4749 "source_info" : {
4750 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004751 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004752 "column" : 8,
4753 "source_fragment" : "hdr.int_q_occupancy.setValid()"
4754 }
4755 },
4756 {
4757 "op" : "assign",
4758 "parameters" : [
4759 {
4760 "type" : "field",
4761 "value" : ["int_q_occupancy", "q_id"]
4762 },
4763 {
4764 "type" : "hexstr",
4765 "value" : "0x00"
4766 }
4767 ],
4768 "source_info" : {
4769 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004770 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004771 "column" : 8,
4772 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
4773 }
4774 },
4775 {
4776 "op" : "assign",
4777 "parameters" : [
4778 {
4779 "type" : "field",
4780 "value" : ["int_q_occupancy", "q_occupancy"]
4781 },
4782 {
4783 "type" : "expression",
4784 "value" : {
4785 "type" : "expression",
4786 "value" : {
4787 "op" : "&",
4788 "left" : {
4789 "type" : "field",
4790 "value" : ["standard_metadata", "deq_qdepth"]
4791 },
4792 "right" : {
4793 "type" : "hexstr",
4794 "value" : "0xffffff"
4795 }
4796 }
4797 }
4798 }
4799 ],
4800 "source_info" : {
4801 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004802 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004803 "column" : 8,
4804 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
4805 }
4806 },
4807 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004808 "op" : "assign",
4809 "parameters" : [
4810 {
4811 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004812 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004813 },
4814 {
4815 "type" : "expression",
4816 "value" : {
4817 "type" : "expression",
4818 "value" : {
4819 "op" : "&",
4820 "left" : {
4821 "type" : "expression",
4822 "value" : {
4823 "op" : "+",
4824 "left" : {
4825 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004826 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004827 },
4828 "right" : {
4829 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004830 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004831 }
4832 }
4833 },
4834 "right" : {
4835 "type" : "hexstr",
4836 "value" : "0xff"
4837 }
4838 }
4839 }
4840 }
4841 ],
4842 "source_info" : {
4843 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004844 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004845 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07004846 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004847 }
4848 },
4849 {
4850 "op" : "assign",
4851 "parameters" : [
4852 {
4853 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004854 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004855 },
4856 {
4857 "type" : "expression",
4858 "value" : {
4859 "type" : "expression",
4860 "value" : {
4861 "op" : "&",
4862 "left" : {
4863 "type" : "expression",
4864 "value" : {
4865 "op" : "+",
4866 "left" : {
4867 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004868 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004869 },
4870 "right" : {
4871 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004872 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004873 }
4874 }
4875 },
4876 "right" : {
4877 "type" : "hexstr",
4878 "value" : "0xffff"
4879 }
4880 }
4881 }
4882 }
4883 ],
4884 "source_info" : {
4885 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004886 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004887 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07004888 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004889 }
4890 }
4891 ]
4892 },
4893 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07004894 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2",
Daniele Moro5a2de712019-09-24 14:34:07 -07004895 "id" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004896 "runtime_data" : [],
4897 "primitives" : [
4898 {
4899 "op" : "add_header",
4900 "parameters" : [
4901 {
4902 "type" : "header",
4903 "value" : "int_hop_latency"
4904 }
4905 ],
4906 "source_info" : {
4907 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004908 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004909 "column" : 8,
4910 "source_fragment" : "hdr.int_hop_latency.setValid()"
4911 }
4912 },
4913 {
4914 "op" : "assign",
4915 "parameters" : [
4916 {
4917 "type" : "field",
4918 "value" : ["int_hop_latency", "hop_latency"]
4919 },
4920 {
4921 "type" : "field",
4922 "value" : ["standard_metadata", "deq_timedelta"]
4923 }
4924 ],
4925 "source_info" : {
4926 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08004927 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004928 "column" : 8,
4929 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
4930 }
4931 },
4932 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004933 "op" : "assign",
4934 "parameters" : [
4935 {
4936 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004937 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004938 },
4939 {
4940 "type" : "expression",
4941 "value" : {
4942 "type" : "expression",
4943 "value" : {
4944 "op" : "&",
4945 "left" : {
4946 "type" : "expression",
4947 "value" : {
4948 "op" : "+",
4949 "left" : {
4950 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004951 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004952 },
4953 "right" : {
4954 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004955 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004956 }
4957 }
4958 },
4959 "right" : {
4960 "type" : "hexstr",
4961 "value" : "0xff"
4962 }
4963 }
4964 }
4965 }
4966 ],
4967 "source_info" : {
4968 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004969 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08004970 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07004971 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004972 }
4973 },
4974 {
4975 "op" : "assign",
4976 "parameters" : [
4977 {
4978 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004979 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004980 },
4981 {
4982 "type" : "expression",
4983 "value" : {
4984 "type" : "expression",
4985 "value" : {
4986 "op" : "&",
4987 "left" : {
4988 "type" : "expression",
4989 "value" : {
4990 "op" : "+",
4991 "left" : {
4992 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07004993 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004994 },
4995 "right" : {
4996 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07004997 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07004998 }
4999 }
5000 },
5001 "right" : {
5002 "type" : "hexstr",
5003 "value" : "0xffff"
5004 }
5005 }
5006 }
5007 }
5008 ],
5009 "source_info" : {
5010 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07005011 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08005012 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07005013 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005014 }
5015 }
5016 ]
5017 },
5018 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07005019 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3",
Daniele Moro5a2de712019-09-24 14:34:07 -07005020 "id" : 64,
5021 "runtime_data" : [],
5022 "primitives" : [
5023 {
5024 "op" : "add_header",
5025 "parameters" : [
5026 {
5027 "type" : "header",
5028 "value" : "int_q_occupancy"
5029 }
5030 ],
5031 "source_info" : {
5032 "filename" : "include/int/int_transit.p4",
5033 "line" : 60,
5034 "column" : 8,
5035 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5036 }
5037 },
5038 {
5039 "op" : "assign",
5040 "parameters" : [
5041 {
5042 "type" : "field",
5043 "value" : ["int_q_occupancy", "q_id"]
5044 },
5045 {
5046 "type" : "hexstr",
5047 "value" : "0x00"
5048 }
5049 ],
5050 "source_info" : {
5051 "filename" : "include/int/int_transit.p4",
5052 "line" : 62,
5053 "column" : 8,
5054 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5055 }
5056 },
5057 {
5058 "op" : "assign",
5059 "parameters" : [
5060 {
5061 "type" : "field",
5062 "value" : ["int_q_occupancy", "q_occupancy"]
5063 },
5064 {
5065 "type" : "expression",
5066 "value" : {
5067 "type" : "expression",
5068 "value" : {
5069 "op" : "&",
5070 "left" : {
5071 "type" : "field",
5072 "value" : ["standard_metadata", "deq_qdepth"]
5073 },
5074 "right" : {
5075 "type" : "hexstr",
5076 "value" : "0xffffff"
5077 }
5078 }
5079 }
5080 }
5081 ],
5082 "source_info" : {
5083 "filename" : "include/int/int_transit.p4",
5084 "line" : 63,
5085 "column" : 8,
5086 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5087 }
5088 },
5089 {
5090 "op" : "add_header",
5091 "parameters" : [
5092 {
5093 "type" : "header",
5094 "value" : "int_hop_latency"
5095 }
5096 ],
5097 "source_info" : {
5098 "filename" : "include/int/int_transit.p4",
5099 "line" : 54,
5100 "column" : 8,
5101 "source_fragment" : "hdr.int_hop_latency.setValid()"
5102 }
5103 },
5104 {
5105 "op" : "assign",
5106 "parameters" : [
5107 {
5108 "type" : "field",
5109 "value" : ["int_hop_latency", "hop_latency"]
5110 },
5111 {
5112 "type" : "field",
5113 "value" : ["standard_metadata", "deq_timedelta"]
5114 }
5115 ],
5116 "source_info" : {
5117 "filename" : "include/int/int_transit.p4",
5118 "line" : 55,
5119 "column" : 8,
5120 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5121 }
5122 },
5123 {
5124 "op" : "assign",
5125 "parameters" : [
5126 {
5127 "type" : "field",
5128 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
5129 },
5130 {
5131 "type" : "expression",
5132 "value" : {
5133 "type" : "expression",
5134 "value" : {
5135 "op" : "&",
5136 "left" : {
5137 "type" : "expression",
5138 "value" : {
5139 "op" : "+",
5140 "left" : {
5141 "type" : "field",
5142 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
5143 },
5144 "right" : {
5145 "type" : "hexstr",
5146 "value" : "0x02"
5147 }
5148 }
5149 },
5150 "right" : {
5151 "type" : "hexstr",
5152 "value" : "0xff"
5153 }
5154 }
5155 }
5156 }
5157 ],
5158 "source_info" : {
5159 "filename" : "include/int/int_transit.p4",
5160 "line" : 103,
5161 "column" : 33,
5162 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
5163 }
5164 },
5165 {
5166 "op" : "assign",
5167 "parameters" : [
5168 {
5169 "type" : "field",
5170 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
5171 },
5172 {
5173 "type" : "expression",
5174 "value" : {
5175 "type" : "expression",
5176 "value" : {
5177 "op" : "&",
5178 "left" : {
5179 "type" : "expression",
5180 "value" : {
5181 "op" : "+",
5182 "left" : {
5183 "type" : "field",
5184 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
5185 },
5186 "right" : {
5187 "type" : "hexstr",
5188 "value" : "0x0008"
5189 }
5190 }
5191 },
5192 "right" : {
5193 "type" : "hexstr",
5194 "value" : "0xffff"
5195 }
5196 }
5197 }
5198 }
5199 ],
5200 "source_info" : {
5201 "filename" : "include/int/int_transit.p4",
5202 "line" : 104,
5203 "column" : 33,
5204 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
5205 }
5206 }
5207 ]
5208 },
5209 {
5210 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4",
5211 "id" : 65,
5212 "runtime_data" : [],
5213 "primitives" : [
5214 {
5215 "op" : "add_header",
5216 "parameters" : [
5217 {
5218 "type" : "header",
5219 "value" : "int_port_ids"
5220 }
5221 ],
5222 "source_info" : {
5223 "filename" : "include/int/int_transit.p4",
5224 "line" : 47,
5225 "column" : 8,
5226 "source_fragment" : "hdr.int_port_ids.setValid()"
5227 }
5228 },
5229 {
5230 "op" : "assign",
5231 "parameters" : [
5232 {
5233 "type" : "field",
5234 "value" : ["int_port_ids", "ingress_port_id"]
5235 },
5236 {
5237 "type" : "expression",
5238 "value" : {
5239 "type" : "expression",
5240 "value" : {
5241 "op" : "&",
5242 "left" : {
5243 "type" : "field",
5244 "value" : ["standard_metadata", "ingress_port"]
5245 },
5246 "right" : {
5247 "type" : "hexstr",
5248 "value" : "0xffff"
5249 }
5250 }
5251 }
5252 }
5253 ],
5254 "source_info" : {
5255 "filename" : "include/int/int_transit.p4",
5256 "line" : 48,
5257 "column" : 8,
5258 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5259 }
5260 },
5261 {
5262 "op" : "assign",
5263 "parameters" : [
5264 {
5265 "type" : "field",
5266 "value" : ["int_port_ids", "egress_port_id"]
5267 },
5268 {
5269 "type" : "expression",
5270 "value" : {
5271 "type" : "expression",
5272 "value" : {
5273 "op" : "&",
5274 "left" : {
5275 "type" : "field",
5276 "value" : ["standard_metadata", "egress_port"]
5277 },
5278 "right" : {
5279 "type" : "hexstr",
5280 "value" : "0xffff"
5281 }
5282 }
5283 }
5284 }
5285 ],
5286 "source_info" : {
5287 "filename" : "include/int/int_transit.p4",
5288 "line" : 49,
5289 "column" : 8,
5290 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5291 }
5292 },
5293 {
5294 "op" : "assign",
5295 "parameters" : [
5296 {
5297 "type" : "field",
5298 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
5299 },
5300 {
5301 "type" : "expression",
5302 "value" : {
5303 "type" : "expression",
5304 "value" : {
5305 "op" : "&",
5306 "left" : {
5307 "type" : "expression",
5308 "value" : {
5309 "op" : "+",
5310 "left" : {
5311 "type" : "field",
5312 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
5313 },
5314 "right" : {
5315 "type" : "hexstr",
5316 "value" : "0x01"
5317 }
5318 }
5319 },
5320 "right" : {
5321 "type" : "hexstr",
5322 "value" : "0xff"
5323 }
5324 }
5325 }
5326 }
5327 ],
5328 "source_info" : {
5329 "filename" : "include/int/int_transit.p4",
5330 "line" : 97,
5331 "column" : 33,
5332 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
5333 }
5334 },
5335 {
5336 "op" : "assign",
5337 "parameters" : [
5338 {
5339 "type" : "field",
5340 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
5341 },
5342 {
5343 "type" : "expression",
5344 "value" : {
5345 "type" : "expression",
5346 "value" : {
5347 "op" : "&",
5348 "left" : {
5349 "type" : "expression",
5350 "value" : {
5351 "op" : "+",
5352 "left" : {
5353 "type" : "field",
5354 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
5355 },
5356 "right" : {
5357 "type" : "hexstr",
5358 "value" : "0x0004"
5359 }
5360 }
5361 },
5362 "right" : {
5363 "type" : "hexstr",
5364 "value" : "0xffff"
5365 }
5366 }
5367 }
5368 }
5369 ],
5370 "source_info" : {
5371 "filename" : "include/int/int_transit.p4",
5372 "line" : 98,
5373 "column" : 33,
5374 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
5375 }
5376 }
5377 ]
5378 },
5379 {
5380 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5",
5381 "id" : 66,
5382 "runtime_data" : [],
5383 "primitives" : [
5384 {
5385 "op" : "add_header",
5386 "parameters" : [
5387 {
5388 "type" : "header",
5389 "value" : "int_q_occupancy"
5390 }
5391 ],
5392 "source_info" : {
5393 "filename" : "include/int/int_transit.p4",
5394 "line" : 60,
5395 "column" : 8,
5396 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5397 }
5398 },
5399 {
5400 "op" : "assign",
5401 "parameters" : [
5402 {
5403 "type" : "field",
5404 "value" : ["int_q_occupancy", "q_id"]
5405 },
5406 {
5407 "type" : "hexstr",
5408 "value" : "0x00"
5409 }
5410 ],
5411 "source_info" : {
5412 "filename" : "include/int/int_transit.p4",
5413 "line" : 62,
5414 "column" : 8,
5415 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5416 }
5417 },
5418 {
5419 "op" : "assign",
5420 "parameters" : [
5421 {
5422 "type" : "field",
5423 "value" : ["int_q_occupancy", "q_occupancy"]
5424 },
5425 {
5426 "type" : "expression",
5427 "value" : {
5428 "type" : "expression",
5429 "value" : {
5430 "op" : "&",
5431 "left" : {
5432 "type" : "field",
5433 "value" : ["standard_metadata", "deq_qdepth"]
5434 },
5435 "right" : {
5436 "type" : "hexstr",
5437 "value" : "0xffffff"
5438 }
5439 }
5440 }
5441 }
5442 ],
5443 "source_info" : {
5444 "filename" : "include/int/int_transit.p4",
5445 "line" : 63,
5446 "column" : 8,
5447 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5448 }
5449 },
5450 {
5451 "op" : "add_header",
5452 "parameters" : [
5453 {
5454 "type" : "header",
5455 "value" : "int_port_ids"
5456 }
5457 ],
5458 "source_info" : {
5459 "filename" : "include/int/int_transit.p4",
5460 "line" : 47,
5461 "column" : 8,
5462 "source_fragment" : "hdr.int_port_ids.setValid()"
5463 }
5464 },
5465 {
5466 "op" : "assign",
5467 "parameters" : [
5468 {
5469 "type" : "field",
5470 "value" : ["int_port_ids", "ingress_port_id"]
5471 },
5472 {
5473 "type" : "expression",
5474 "value" : {
5475 "type" : "expression",
5476 "value" : {
5477 "op" : "&",
5478 "left" : {
5479 "type" : "field",
5480 "value" : ["standard_metadata", "ingress_port"]
5481 },
5482 "right" : {
5483 "type" : "hexstr",
5484 "value" : "0xffff"
5485 }
5486 }
5487 }
5488 }
5489 ],
5490 "source_info" : {
5491 "filename" : "include/int/int_transit.p4",
5492 "line" : 48,
5493 "column" : 8,
5494 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5495 }
5496 },
5497 {
5498 "op" : "assign",
5499 "parameters" : [
5500 {
5501 "type" : "field",
5502 "value" : ["int_port_ids", "egress_port_id"]
5503 },
5504 {
5505 "type" : "expression",
5506 "value" : {
5507 "type" : "expression",
5508 "value" : {
5509 "op" : "&",
5510 "left" : {
5511 "type" : "field",
5512 "value" : ["standard_metadata", "egress_port"]
5513 },
5514 "right" : {
5515 "type" : "hexstr",
5516 "value" : "0xffff"
5517 }
5518 }
5519 }
5520 }
5521 ],
5522 "source_info" : {
5523 "filename" : "include/int/int_transit.p4",
5524 "line" : 49,
5525 "column" : 8,
5526 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5527 }
5528 },
5529 {
5530 "op" : "assign",
5531 "parameters" : [
5532 {
5533 "type" : "field",
5534 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
5535 },
5536 {
5537 "type" : "expression",
5538 "value" : {
5539 "type" : "expression",
5540 "value" : {
5541 "op" : "&",
5542 "left" : {
5543 "type" : "expression",
5544 "value" : {
5545 "op" : "+",
5546 "left" : {
5547 "type" : "field",
5548 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
5549 },
5550 "right" : {
5551 "type" : "hexstr",
5552 "value" : "0x02"
5553 }
5554 }
5555 },
5556 "right" : {
5557 "type" : "hexstr",
5558 "value" : "0xff"
5559 }
5560 }
5561 }
5562 }
5563 ],
5564 "source_info" : {
5565 "filename" : "include/int/int_transit.p4",
5566 "line" : 103,
5567 "column" : 33,
5568 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
5569 }
5570 },
5571 {
5572 "op" : "assign",
5573 "parameters" : [
5574 {
5575 "type" : "field",
5576 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
5577 },
5578 {
5579 "type" : "expression",
5580 "value" : {
5581 "type" : "expression",
5582 "value" : {
5583 "op" : "&",
5584 "left" : {
5585 "type" : "expression",
5586 "value" : {
5587 "op" : "+",
5588 "left" : {
5589 "type" : "field",
5590 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
5591 },
5592 "right" : {
5593 "type" : "hexstr",
5594 "value" : "0x0008"
5595 }
5596 }
5597 },
5598 "right" : {
5599 "type" : "hexstr",
5600 "value" : "0xffff"
5601 }
5602 }
5603 }
5604 }
5605 ],
5606 "source_info" : {
5607 "filename" : "include/int/int_transit.p4",
5608 "line" : 104,
5609 "column" : 33,
5610 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
5611 }
5612 }
5613 ]
5614 },
5615 {
5616 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6",
5617 "id" : 67,
5618 "runtime_data" : [],
5619 "primitives" : [
5620 {
5621 "op" : "add_header",
5622 "parameters" : [
5623 {
5624 "type" : "header",
5625 "value" : "int_hop_latency"
5626 }
5627 ],
5628 "source_info" : {
5629 "filename" : "include/int/int_transit.p4",
5630 "line" : 54,
5631 "column" : 8,
5632 "source_fragment" : "hdr.int_hop_latency.setValid()"
5633 }
5634 },
5635 {
5636 "op" : "assign",
5637 "parameters" : [
5638 {
5639 "type" : "field",
5640 "value" : ["int_hop_latency", "hop_latency"]
5641 },
5642 {
5643 "type" : "field",
5644 "value" : ["standard_metadata", "deq_timedelta"]
5645 }
5646 ],
5647 "source_info" : {
5648 "filename" : "include/int/int_transit.p4",
5649 "line" : 55,
5650 "column" : 8,
5651 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5652 }
5653 },
5654 {
5655 "op" : "add_header",
5656 "parameters" : [
5657 {
5658 "type" : "header",
5659 "value" : "int_port_ids"
5660 }
5661 ],
5662 "source_info" : {
5663 "filename" : "include/int/int_transit.p4",
5664 "line" : 47,
5665 "column" : 8,
5666 "source_fragment" : "hdr.int_port_ids.setValid()"
5667 }
5668 },
5669 {
5670 "op" : "assign",
5671 "parameters" : [
5672 {
5673 "type" : "field",
5674 "value" : ["int_port_ids", "ingress_port_id"]
5675 },
5676 {
5677 "type" : "expression",
5678 "value" : {
5679 "type" : "expression",
5680 "value" : {
5681 "op" : "&",
5682 "left" : {
5683 "type" : "field",
5684 "value" : ["standard_metadata", "ingress_port"]
5685 },
5686 "right" : {
5687 "type" : "hexstr",
5688 "value" : "0xffff"
5689 }
5690 }
5691 }
5692 }
5693 ],
5694 "source_info" : {
5695 "filename" : "include/int/int_transit.p4",
5696 "line" : 48,
5697 "column" : 8,
5698 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5699 }
5700 },
5701 {
5702 "op" : "assign",
5703 "parameters" : [
5704 {
5705 "type" : "field",
5706 "value" : ["int_port_ids", "egress_port_id"]
5707 },
5708 {
5709 "type" : "expression",
5710 "value" : {
5711 "type" : "expression",
5712 "value" : {
5713 "op" : "&",
5714 "left" : {
5715 "type" : "field",
5716 "value" : ["standard_metadata", "egress_port"]
5717 },
5718 "right" : {
5719 "type" : "hexstr",
5720 "value" : "0xffff"
5721 }
5722 }
5723 }
5724 }
5725 ],
5726 "source_info" : {
5727 "filename" : "include/int/int_transit.p4",
5728 "line" : 49,
5729 "column" : 8,
5730 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
5731 }
5732 },
5733 {
5734 "op" : "assign",
5735 "parameters" : [
5736 {
5737 "type" : "field",
5738 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
5739 },
5740 {
5741 "type" : "expression",
5742 "value" : {
5743 "type" : "expression",
5744 "value" : {
5745 "op" : "&",
5746 "left" : {
5747 "type" : "expression",
5748 "value" : {
5749 "op" : "+",
5750 "left" : {
5751 "type" : "field",
5752 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
5753 },
5754 "right" : {
5755 "type" : "hexstr",
5756 "value" : "0x02"
5757 }
5758 }
5759 },
5760 "right" : {
5761 "type" : "hexstr",
5762 "value" : "0xff"
5763 }
5764 }
5765 }
5766 }
5767 ],
5768 "source_info" : {
5769 "filename" : "include/int/int_transit.p4",
5770 "line" : 103,
5771 "column" : 33,
5772 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
5773 }
5774 },
5775 {
5776 "op" : "assign",
5777 "parameters" : [
5778 {
5779 "type" : "field",
5780 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
5781 },
5782 {
5783 "type" : "expression",
5784 "value" : {
5785 "type" : "expression",
5786 "value" : {
5787 "op" : "&",
5788 "left" : {
5789 "type" : "expression",
5790 "value" : {
5791 "op" : "+",
5792 "left" : {
5793 "type" : "field",
5794 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
5795 },
5796 "right" : {
5797 "type" : "hexstr",
5798 "value" : "0x0008"
5799 }
5800 }
5801 },
5802 "right" : {
5803 "type" : "hexstr",
5804 "value" : "0xffff"
5805 }
5806 }
5807 }
5808 }
5809 ],
5810 "source_info" : {
5811 "filename" : "include/int/int_transit.p4",
5812 "line" : 104,
5813 "column" : 33,
5814 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
5815 }
5816 }
5817 ]
5818 },
5819 {
5820 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005821 "id" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005822 "runtime_data" : [],
5823 "primitives" : [
5824 {
5825 "op" : "add_header",
5826 "parameters" : [
5827 {
5828 "type" : "header",
5829 "value" : "int_q_occupancy"
5830 }
5831 ],
5832 "source_info" : {
5833 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005834 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005835 "column" : 8,
5836 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5837 }
5838 },
5839 {
5840 "op" : "assign",
5841 "parameters" : [
5842 {
5843 "type" : "field",
5844 "value" : ["int_q_occupancy", "q_id"]
5845 },
5846 {
5847 "type" : "hexstr",
5848 "value" : "0x00"
5849 }
5850 ],
5851 "source_info" : {
5852 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005853 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005854 "column" : 8,
5855 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
5856 }
5857 },
5858 {
5859 "op" : "assign",
5860 "parameters" : [
5861 {
5862 "type" : "field",
5863 "value" : ["int_q_occupancy", "q_occupancy"]
5864 },
5865 {
5866 "type" : "expression",
5867 "value" : {
5868 "type" : "expression",
5869 "value" : {
5870 "op" : "&",
5871 "left" : {
5872 "type" : "field",
5873 "value" : ["standard_metadata", "deq_qdepth"]
5874 },
5875 "right" : {
5876 "type" : "hexstr",
5877 "value" : "0xffffff"
5878 }
5879 }
5880 }
5881 }
5882 ],
5883 "source_info" : {
5884 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005885 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005886 "column" : 8,
5887 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
5888 }
5889 },
5890 {
5891 "op" : "add_header",
5892 "parameters" : [
5893 {
5894 "type" : "header",
5895 "value" : "int_hop_latency"
5896 }
5897 ],
5898 "source_info" : {
5899 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005900 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005901 "column" : 8,
5902 "source_fragment" : "hdr.int_hop_latency.setValid()"
5903 }
5904 },
5905 {
5906 "op" : "assign",
5907 "parameters" : [
5908 {
5909 "type" : "field",
5910 "value" : ["int_hop_latency", "hop_latency"]
5911 },
5912 {
5913 "type" : "field",
5914 "value" : ["standard_metadata", "deq_timedelta"]
5915 }
5916 ],
5917 "source_info" : {
5918 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005919 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005920 "column" : 8,
5921 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
5922 }
5923 },
5924 {
5925 "op" : "add_header",
5926 "parameters" : [
5927 {
5928 "type" : "header",
5929 "value" : "int_port_ids"
5930 }
5931 ],
5932 "source_info" : {
5933 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005934 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005935 "column" : 8,
5936 "source_fragment" : "hdr.int_port_ids.setValid()"
5937 }
5938 },
5939 {
5940 "op" : "assign",
5941 "parameters" : [
5942 {
5943 "type" : "field",
5944 "value" : ["int_port_ids", "ingress_port_id"]
5945 },
5946 {
5947 "type" : "expression",
5948 "value" : {
5949 "type" : "expression",
5950 "value" : {
5951 "op" : "&",
5952 "left" : {
5953 "type" : "field",
5954 "value" : ["standard_metadata", "ingress_port"]
5955 },
5956 "right" : {
5957 "type" : "hexstr",
5958 "value" : "0xffff"
5959 }
5960 }
5961 }
5962 }
5963 ],
5964 "source_info" : {
5965 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005966 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005967 "column" : 8,
5968 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
5969 }
5970 },
5971 {
5972 "op" : "assign",
5973 "parameters" : [
5974 {
5975 "type" : "field",
5976 "value" : ["int_port_ids", "egress_port_id"]
5977 },
5978 {
5979 "type" : "expression",
5980 "value" : {
5981 "type" : "expression",
5982 "value" : {
5983 "op" : "&",
5984 "left" : {
5985 "type" : "field",
5986 "value" : ["standard_metadata", "egress_port"]
5987 },
5988 "right" : {
5989 "type" : "hexstr",
5990 "value" : "0xffff"
5991 }
5992 }
5993 }
5994 }
5995 ],
5996 "source_info" : {
5997 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08005998 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07005999 "column" : 8,
6000 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6001 }
6002 },
6003 {
6004 "op" : "assign",
6005 "parameters" : [
6006 {
6007 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006008 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006009 },
6010 {
6011 "type" : "expression",
6012 "value" : {
6013 "type" : "expression",
6014 "value" : {
6015 "op" : "&",
6016 "left" : {
6017 "type" : "expression",
6018 "value" : {
6019 "op" : "+",
6020 "left" : {
6021 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006022 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
6023 },
6024 "right" : {
6025 "type" : "hexstr",
6026 "value" : "0x03"
6027 }
6028 }
6029 },
6030 "right" : {
6031 "type" : "hexstr",
6032 "value" : "0xff"
6033 }
6034 }
6035 }
6036 }
6037 ],
6038 "source_info" : {
6039 "filename" : "include/int/int_transit.p4",
6040 "line" : 109,
6041 "column" : 33,
6042 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
6043 }
6044 },
6045 {
6046 "op" : "assign",
6047 "parameters" : [
6048 {
6049 "type" : "field",
6050 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
6051 },
6052 {
6053 "type" : "expression",
6054 "value" : {
6055 "type" : "expression",
6056 "value" : {
6057 "op" : "&",
6058 "left" : {
6059 "type" : "expression",
6060 "value" : {
6061 "op" : "+",
6062 "left" : {
6063 "type" : "field",
6064 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
6065 },
6066 "right" : {
6067 "type" : "hexstr",
6068 "value" : "0x000c"
6069 }
6070 }
6071 },
6072 "right" : {
6073 "type" : "hexstr",
6074 "value" : "0xffff"
6075 }
6076 }
6077 }
6078 }
6079 ],
6080 "source_info" : {
6081 "filename" : "include/int/int_transit.p4",
6082 "line" : 110,
6083 "column" : 33,
6084 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
6085 }
6086 }
6087 ]
6088 },
6089 {
6090 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8",
6091 "id" : 69,
6092 "runtime_data" : [],
6093 "primitives" : [
6094 {
6095 "op" : "add_header",
6096 "parameters" : [
6097 {
6098 "type" : "header",
6099 "value" : "int_switch_id"
6100 }
6101 ],
6102 "source_info" : {
6103 "filename" : "include/int/int_transit.p4",
6104 "line" : 41,
6105 "column" : 8,
6106 "source_fragment" : "hdr.int_switch_id.setValid()"
6107 }
6108 },
6109 {
6110 "op" : "assign",
6111 "parameters" : [
6112 {
6113 "type" : "field",
6114 "value" : ["int_switch_id", "switch_id"]
6115 },
6116 {
6117 "type" : "field",
6118 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id23"]
6119 }
6120 ],
6121 "source_info" : {
6122 "filename" : "include/int/int_transit.p4",
6123 "line" : 42,
6124 "column" : 8,
6125 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
6126 }
6127 },
6128 {
6129 "op" : "assign",
6130 "parameters" : [
6131 {
6132 "type" : "field",
6133 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
6134 },
6135 {
6136 "type" : "expression",
6137 "value" : {
6138 "type" : "expression",
6139 "value" : {
6140 "op" : "&",
6141 "left" : {
6142 "type" : "expression",
6143 "value" : {
6144 "op" : "+",
6145 "left" : {
6146 "type" : "field",
6147 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006148 },
6149 "right" : {
6150 "type" : "hexstr",
6151 "value" : "0x01"
6152 }
6153 }
6154 },
6155 "right" : {
6156 "type" : "hexstr",
6157 "value" : "0xff"
6158 }
6159 }
6160 }
6161 }
6162 ],
6163 "source_info" : {
6164 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006165 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006166 "column" : 33,
6167 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006168 }
6169 },
6170 {
6171 "op" : "assign",
6172 "parameters" : [
6173 {
6174 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006175 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006176 },
6177 {
6178 "type" : "expression",
6179 "value" : {
6180 "type" : "expression",
6181 "value" : {
6182 "op" : "&",
6183 "left" : {
6184 "type" : "expression",
6185 "value" : {
6186 "op" : "+",
6187 "left" : {
6188 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006189 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006190 },
6191 "right" : {
6192 "type" : "hexstr",
6193 "value" : "0x0004"
6194 }
6195 }
6196 },
6197 "right" : {
6198 "type" : "hexstr",
6199 "value" : "0xffff"
6200 }
6201 }
6202 }
6203 }
6204 ],
6205 "source_info" : {
6206 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006207 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006208 "column" : 33,
6209 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006210 }
6211 }
6212 ]
6213 },
6214 {
Daniele Moro5a2de712019-09-24 14:34:07 -07006215 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006216 "id" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006217 "runtime_data" : [],
6218 "primitives" : [
6219 {
6220 "op" : "add_header",
6221 "parameters" : [
6222 {
6223 "type" : "header",
6224 "value" : "int_q_occupancy"
6225 }
6226 ],
6227 "source_info" : {
6228 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006229 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006230 "column" : 8,
6231 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6232 }
6233 },
6234 {
6235 "op" : "assign",
6236 "parameters" : [
6237 {
6238 "type" : "field",
6239 "value" : ["int_q_occupancy", "q_id"]
6240 },
6241 {
6242 "type" : "hexstr",
6243 "value" : "0x00"
6244 }
6245 ],
6246 "source_info" : {
6247 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006248 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006249 "column" : 8,
6250 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6251 }
6252 },
6253 {
6254 "op" : "assign",
6255 "parameters" : [
6256 {
6257 "type" : "field",
6258 "value" : ["int_q_occupancy", "q_occupancy"]
6259 },
6260 {
6261 "type" : "expression",
6262 "value" : {
6263 "type" : "expression",
6264 "value" : {
6265 "op" : "&",
6266 "left" : {
6267 "type" : "field",
6268 "value" : ["standard_metadata", "deq_qdepth"]
6269 },
6270 "right" : {
6271 "type" : "hexstr",
6272 "value" : "0xffffff"
6273 }
6274 }
6275 }
6276 }
6277 ],
6278 "source_info" : {
6279 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006280 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006281 "column" : 8,
6282 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6283 }
6284 },
6285 {
6286 "op" : "add_header",
6287 "parameters" : [
6288 {
6289 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -07006290 "value" : "int_switch_id"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006291 }
6292 ],
6293 "source_info" : {
6294 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07006295 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006296 "column" : 8,
Daniele Moro5a2de712019-09-24 14:34:07 -07006297 "source_fragment" : "hdr.int_switch_id.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006298 }
6299 },
6300 {
6301 "op" : "assign",
6302 "parameters" : [
6303 {
6304 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006305 "value" : ["int_switch_id", "switch_id"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006306 },
6307 {
Daniele Moro5a2de712019-09-24 14:34:07 -07006308 "type" : "field",
6309 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id23"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006310 }
6311 ],
6312 "source_info" : {
6313 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07006314 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006315 "column" : 8,
Daniele Moro5a2de712019-09-24 14:34:07 -07006316 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006317 }
6318 },
6319 {
6320 "op" : "assign",
6321 "parameters" : [
6322 {
6323 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006324 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006325 },
6326 {
6327 "type" : "expression",
6328 "value" : {
6329 "type" : "expression",
6330 "value" : {
6331 "op" : "&",
6332 "left" : {
6333 "type" : "expression",
6334 "value" : {
6335 "op" : "+",
6336 "left" : {
6337 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006338 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006339 },
6340 "right" : {
6341 "type" : "hexstr",
6342 "value" : "0x02"
6343 }
6344 }
6345 },
6346 "right" : {
6347 "type" : "hexstr",
6348 "value" : "0xff"
6349 }
6350 }
6351 }
6352 }
6353 ],
6354 "source_info" : {
6355 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006356 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006357 "column" : 33,
6358 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006359 }
6360 },
6361 {
6362 "op" : "assign",
6363 "parameters" : [
6364 {
6365 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006366 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006367 },
6368 {
6369 "type" : "expression",
6370 "value" : {
6371 "type" : "expression",
6372 "value" : {
6373 "op" : "&",
6374 "left" : {
6375 "type" : "expression",
6376 "value" : {
6377 "op" : "+",
6378 "left" : {
6379 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006380 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006381 },
6382 "right" : {
6383 "type" : "hexstr",
6384 "value" : "0x0008"
6385 }
6386 }
6387 },
6388 "right" : {
6389 "type" : "hexstr",
6390 "value" : "0xffff"
6391 }
6392 }
6393 }
6394 }
6395 ],
6396 "source_info" : {
6397 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006398 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006399 "column" : 33,
6400 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006401 }
6402 }
6403 ]
6404 },
6405 {
Daniele Moro5a2de712019-09-24 14:34:07 -07006406 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006407 "id" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006408 "runtime_data" : [],
6409 "primitives" : [
6410 {
6411 "op" : "add_header",
6412 "parameters" : [
6413 {
6414 "type" : "header",
6415 "value" : "int_hop_latency"
6416 }
6417 ],
6418 "source_info" : {
6419 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006420 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006421 "column" : 8,
6422 "source_fragment" : "hdr.int_hop_latency.setValid()"
6423 }
6424 },
6425 {
6426 "op" : "assign",
6427 "parameters" : [
6428 {
6429 "type" : "field",
6430 "value" : ["int_hop_latency", "hop_latency"]
6431 },
6432 {
6433 "type" : "field",
6434 "value" : ["standard_metadata", "deq_timedelta"]
6435 }
6436 ],
6437 "source_info" : {
6438 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006439 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006440 "column" : 8,
6441 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6442 }
6443 },
6444 {
6445 "op" : "add_header",
6446 "parameters" : [
6447 {
6448 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -07006449 "value" : "int_switch_id"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006450 }
6451 ],
6452 "source_info" : {
6453 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07006454 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006455 "column" : 8,
Daniele Moro5a2de712019-09-24 14:34:07 -07006456 "source_fragment" : "hdr.int_switch_id.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006457 }
6458 },
6459 {
6460 "op" : "assign",
6461 "parameters" : [
6462 {
6463 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006464 "value" : ["int_switch_id", "switch_id"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006465 },
6466 {
Daniele Moro5a2de712019-09-24 14:34:07 -07006467 "type" : "field",
6468 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id23"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006469 }
6470 ],
6471 "source_info" : {
6472 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07006473 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006474 "column" : 8,
Daniele Moro5a2de712019-09-24 14:34:07 -07006475 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006476 }
6477 },
6478 {
6479 "op" : "assign",
6480 "parameters" : [
6481 {
6482 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006483 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006484 },
6485 {
6486 "type" : "expression",
6487 "value" : {
6488 "type" : "expression",
6489 "value" : {
6490 "op" : "&",
6491 "left" : {
6492 "type" : "expression",
6493 "value" : {
6494 "op" : "+",
6495 "left" : {
6496 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006497 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006498 },
6499 "right" : {
6500 "type" : "hexstr",
6501 "value" : "0x02"
6502 }
6503 }
6504 },
6505 "right" : {
6506 "type" : "hexstr",
6507 "value" : "0xff"
6508 }
6509 }
6510 }
6511 }
6512 ],
6513 "source_info" : {
6514 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006515 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006516 "column" : 33,
6517 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006518 }
6519 },
6520 {
6521 "op" : "assign",
6522 "parameters" : [
6523 {
6524 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006525 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006526 },
6527 {
6528 "type" : "expression",
6529 "value" : {
6530 "type" : "expression",
6531 "value" : {
6532 "op" : "&",
6533 "left" : {
6534 "type" : "expression",
6535 "value" : {
6536 "op" : "+",
6537 "left" : {
6538 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006539 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006540 },
6541 "right" : {
6542 "type" : "hexstr",
6543 "value" : "0x0008"
6544 }
6545 }
6546 },
6547 "right" : {
6548 "type" : "hexstr",
6549 "value" : "0xffff"
6550 }
6551 }
6552 }
6553 }
6554 ],
6555 "source_info" : {
6556 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006557 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006558 "column" : 33,
6559 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006560 }
6561 }
6562 ]
6563 },
6564 {
Daniele Moro5a2de712019-09-24 14:34:07 -07006565 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006566 "id" : 72,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006567 "runtime_data" : [],
6568 "primitives" : [
6569 {
6570 "op" : "add_header",
6571 "parameters" : [
6572 {
6573 "type" : "header",
6574 "value" : "int_q_occupancy"
6575 }
6576 ],
6577 "source_info" : {
6578 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006579 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006580 "column" : 8,
6581 "source_fragment" : "hdr.int_q_occupancy.setValid()"
6582 }
6583 },
6584 {
6585 "op" : "assign",
6586 "parameters" : [
6587 {
6588 "type" : "field",
6589 "value" : ["int_q_occupancy", "q_id"]
6590 },
6591 {
6592 "type" : "hexstr",
6593 "value" : "0x00"
6594 }
6595 ],
6596 "source_info" : {
6597 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006598 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006599 "column" : 8,
6600 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
6601 }
6602 },
6603 {
6604 "op" : "assign",
6605 "parameters" : [
6606 {
6607 "type" : "field",
6608 "value" : ["int_q_occupancy", "q_occupancy"]
6609 },
6610 {
6611 "type" : "expression",
6612 "value" : {
6613 "type" : "expression",
6614 "value" : {
6615 "op" : "&",
6616 "left" : {
6617 "type" : "field",
6618 "value" : ["standard_metadata", "deq_qdepth"]
6619 },
6620 "right" : {
6621 "type" : "hexstr",
6622 "value" : "0xffffff"
6623 }
6624 }
6625 }
6626 }
6627 ],
6628 "source_info" : {
6629 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006630 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006631 "column" : 8,
6632 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
6633 }
6634 },
6635 {
6636 "op" : "add_header",
6637 "parameters" : [
6638 {
6639 "type" : "header",
6640 "value" : "int_hop_latency"
6641 }
6642 ],
6643 "source_info" : {
6644 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006645 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006646 "column" : 8,
6647 "source_fragment" : "hdr.int_hop_latency.setValid()"
6648 }
6649 },
6650 {
6651 "op" : "assign",
6652 "parameters" : [
6653 {
6654 "type" : "field",
6655 "value" : ["int_hop_latency", "hop_latency"]
6656 },
6657 {
6658 "type" : "field",
6659 "value" : ["standard_metadata", "deq_timedelta"]
6660 }
6661 ],
6662 "source_info" : {
6663 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006664 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006665 "column" : 8,
6666 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
6667 }
6668 },
6669 {
6670 "op" : "add_header",
6671 "parameters" : [
6672 {
6673 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -07006674 "value" : "int_switch_id"
6675 }
6676 ],
6677 "source_info" : {
6678 "filename" : "include/int/int_transit.p4",
6679 "line" : 41,
6680 "column" : 8,
6681 "source_fragment" : "hdr.int_switch_id.setValid()"
6682 }
6683 },
6684 {
6685 "op" : "assign",
6686 "parameters" : [
6687 {
6688 "type" : "field",
6689 "value" : ["int_switch_id", "switch_id"]
6690 },
6691 {
6692 "type" : "field",
6693 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id23"]
6694 }
6695 ],
6696 "source_info" : {
6697 "filename" : "include/int/int_transit.p4",
6698 "line" : 42,
6699 "column" : 8,
6700 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
6701 }
6702 },
6703 {
6704 "op" : "assign",
6705 "parameters" : [
6706 {
6707 "type" : "field",
6708 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
6709 },
6710 {
6711 "type" : "expression",
6712 "value" : {
6713 "type" : "expression",
6714 "value" : {
6715 "op" : "&",
6716 "left" : {
6717 "type" : "expression",
6718 "value" : {
6719 "op" : "+",
6720 "left" : {
6721 "type" : "field",
6722 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
6723 },
6724 "right" : {
6725 "type" : "hexstr",
6726 "value" : "0x03"
6727 }
6728 }
6729 },
6730 "right" : {
6731 "type" : "hexstr",
6732 "value" : "0xff"
6733 }
6734 }
6735 }
6736 }
6737 ],
6738 "source_info" : {
6739 "filename" : "include/int/int_transit.p4",
6740 "line" : 109,
6741 "column" : 33,
6742 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
6743 }
6744 },
6745 {
6746 "op" : "assign",
6747 "parameters" : [
6748 {
6749 "type" : "field",
6750 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
6751 },
6752 {
6753 "type" : "expression",
6754 "value" : {
6755 "type" : "expression",
6756 "value" : {
6757 "op" : "&",
6758 "left" : {
6759 "type" : "expression",
6760 "value" : {
6761 "op" : "+",
6762 "left" : {
6763 "type" : "field",
6764 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
6765 },
6766 "right" : {
6767 "type" : "hexstr",
6768 "value" : "0x000c"
6769 }
6770 }
6771 },
6772 "right" : {
6773 "type" : "hexstr",
6774 "value" : "0xffff"
6775 }
6776 }
6777 }
6778 }
6779 ],
6780 "source_info" : {
6781 "filename" : "include/int/int_transit.p4",
6782 "line" : 110,
6783 "column" : 33,
6784 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
6785 }
6786 }
6787 ]
6788 },
6789 {
6790 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12",
6791 "id" : 73,
6792 "runtime_data" : [],
6793 "primitives" : [
6794 {
6795 "op" : "add_header",
6796 "parameters" : [
6797 {
6798 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006799 "value" : "int_port_ids"
6800 }
6801 ],
6802 "source_info" : {
6803 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006804 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006805 "column" : 8,
6806 "source_fragment" : "hdr.int_port_ids.setValid()"
6807 }
6808 },
6809 {
6810 "op" : "assign",
6811 "parameters" : [
6812 {
6813 "type" : "field",
6814 "value" : ["int_port_ids", "ingress_port_id"]
6815 },
6816 {
6817 "type" : "expression",
6818 "value" : {
6819 "type" : "expression",
6820 "value" : {
6821 "op" : "&",
6822 "left" : {
6823 "type" : "field",
6824 "value" : ["standard_metadata", "ingress_port"]
6825 },
6826 "right" : {
6827 "type" : "hexstr",
6828 "value" : "0xffff"
6829 }
6830 }
6831 }
6832 }
6833 ],
6834 "source_info" : {
6835 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006836 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006837 "column" : 8,
6838 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
6839 }
6840 },
6841 {
6842 "op" : "assign",
6843 "parameters" : [
6844 {
6845 "type" : "field",
6846 "value" : ["int_port_ids", "egress_port_id"]
6847 },
6848 {
6849 "type" : "expression",
6850 "value" : {
6851 "type" : "expression",
6852 "value" : {
6853 "op" : "&",
6854 "left" : {
6855 "type" : "field",
6856 "value" : ["standard_metadata", "egress_port"]
6857 },
6858 "right" : {
6859 "type" : "hexstr",
6860 "value" : "0xffff"
6861 }
6862 }
6863 }
6864 }
6865 ],
6866 "source_info" : {
6867 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006868 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006869 "column" : 8,
6870 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
6871 }
6872 },
6873 {
6874 "op" : "add_header",
6875 "parameters" : [
6876 {
6877 "type" : "header",
6878 "value" : "int_switch_id"
6879 }
6880 ],
6881 "source_info" : {
6882 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006883 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006884 "column" : 8,
6885 "source_fragment" : "hdr.int_switch_id.setValid()"
6886 }
6887 },
6888 {
6889 "op" : "assign",
6890 "parameters" : [
6891 {
6892 "type" : "field",
6893 "value" : ["int_switch_id", "switch_id"]
6894 },
6895 {
6896 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006897 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id23"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006898 }
6899 ],
6900 "source_info" : {
6901 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006902 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006903 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006904 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006905 }
6906 },
6907 {
6908 "op" : "assign",
6909 "parameters" : [
6910 {
6911 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006912 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006913 },
6914 {
6915 "type" : "expression",
6916 "value" : {
6917 "type" : "expression",
6918 "value" : {
6919 "op" : "&",
6920 "left" : {
6921 "type" : "expression",
6922 "value" : {
6923 "op" : "+",
6924 "left" : {
6925 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006926 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006927 },
6928 "right" : {
6929 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -07006930 "value" : "0x02"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006931 }
6932 }
6933 },
6934 "right" : {
6935 "type" : "hexstr",
6936 "value" : "0xff"
6937 }
6938 }
6939 }
6940 }
6941 ],
6942 "source_info" : {
6943 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07006944 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006945 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -07006946 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006947 }
6948 },
6949 {
6950 "op" : "assign",
6951 "parameters" : [
6952 {
6953 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006954 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006955 },
6956 {
6957 "type" : "expression",
6958 "value" : {
6959 "type" : "expression",
6960 "value" : {
6961 "op" : "&",
6962 "left" : {
6963 "type" : "expression",
6964 "value" : {
6965 "op" : "+",
6966 "left" : {
6967 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07006968 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006969 },
6970 "right" : {
6971 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -07006972 "value" : "0x0008"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006973 }
6974 }
6975 },
6976 "right" : {
6977 "type" : "hexstr",
6978 "value" : "0xffff"
6979 }
6980 }
6981 }
6982 }
6983 ],
6984 "source_info" : {
6985 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07006986 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08006987 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -07006988 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006989 }
6990 }
6991 ]
6992 },
6993 {
Daniele Moro5a2de712019-09-24 14:34:07 -07006994 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08006995 "id" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07006996 "runtime_data" : [],
6997 "primitives" : [
6998 {
6999 "op" : "add_header",
7000 "parameters" : [
7001 {
7002 "type" : "header",
7003 "value" : "int_q_occupancy"
7004 }
7005 ],
7006 "source_info" : {
7007 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007008 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007009 "column" : 8,
7010 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7011 }
7012 },
7013 {
7014 "op" : "assign",
7015 "parameters" : [
7016 {
7017 "type" : "field",
7018 "value" : ["int_q_occupancy", "q_id"]
7019 },
7020 {
7021 "type" : "hexstr",
7022 "value" : "0x00"
7023 }
7024 ],
7025 "source_info" : {
7026 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007027 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007028 "column" : 8,
7029 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7030 }
7031 },
7032 {
7033 "op" : "assign",
7034 "parameters" : [
7035 {
7036 "type" : "field",
7037 "value" : ["int_q_occupancy", "q_occupancy"]
7038 },
7039 {
7040 "type" : "expression",
7041 "value" : {
7042 "type" : "expression",
7043 "value" : {
7044 "op" : "&",
7045 "left" : {
7046 "type" : "field",
7047 "value" : ["standard_metadata", "deq_qdepth"]
7048 },
7049 "right" : {
7050 "type" : "hexstr",
7051 "value" : "0xffffff"
7052 }
7053 }
7054 }
7055 }
7056 ],
7057 "source_info" : {
7058 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007059 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007060 "column" : 8,
7061 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7062 }
7063 },
7064 {
7065 "op" : "add_header",
7066 "parameters" : [
7067 {
7068 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -07007069 "value" : "int_port_ids"
7070 }
7071 ],
7072 "source_info" : {
7073 "filename" : "include/int/int_transit.p4",
7074 "line" : 47,
7075 "column" : 8,
7076 "source_fragment" : "hdr.int_port_ids.setValid()"
7077 }
7078 },
7079 {
7080 "op" : "assign",
7081 "parameters" : [
7082 {
7083 "type" : "field",
7084 "value" : ["int_port_ids", "ingress_port_id"]
7085 },
7086 {
7087 "type" : "expression",
7088 "value" : {
7089 "type" : "expression",
7090 "value" : {
7091 "op" : "&",
7092 "left" : {
7093 "type" : "field",
7094 "value" : ["standard_metadata", "ingress_port"]
7095 },
7096 "right" : {
7097 "type" : "hexstr",
7098 "value" : "0xffff"
7099 }
7100 }
7101 }
7102 }
7103 ],
7104 "source_info" : {
7105 "filename" : "include/int/int_transit.p4",
7106 "line" : 48,
7107 "column" : 8,
7108 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7109 }
7110 },
7111 {
7112 "op" : "assign",
7113 "parameters" : [
7114 {
7115 "type" : "field",
7116 "value" : ["int_port_ids", "egress_port_id"]
7117 },
7118 {
7119 "type" : "expression",
7120 "value" : {
7121 "type" : "expression",
7122 "value" : {
7123 "op" : "&",
7124 "left" : {
7125 "type" : "field",
7126 "value" : ["standard_metadata", "egress_port"]
7127 },
7128 "right" : {
7129 "type" : "hexstr",
7130 "value" : "0xffff"
7131 }
7132 }
7133 }
7134 }
7135 ],
7136 "source_info" : {
7137 "filename" : "include/int/int_transit.p4",
7138 "line" : 49,
7139 "column" : 8,
7140 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7141 }
7142 },
7143 {
7144 "op" : "add_header",
7145 "parameters" : [
7146 {
7147 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007148 "value" : "int_switch_id"
7149 }
7150 ],
7151 "source_info" : {
7152 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007153 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007154 "column" : 8,
7155 "source_fragment" : "hdr.int_switch_id.setValid()"
7156 }
7157 },
7158 {
7159 "op" : "assign",
7160 "parameters" : [
7161 {
7162 "type" : "field",
7163 "value" : ["int_switch_id", "switch_id"]
7164 },
7165 {
7166 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007167 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id23"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007168 }
7169 ],
7170 "source_info" : {
7171 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007172 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007173 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007174 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007175 }
7176 },
7177 {
7178 "op" : "assign",
7179 "parameters" : [
7180 {
7181 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007182 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007183 },
7184 {
7185 "type" : "expression",
7186 "value" : {
7187 "type" : "expression",
7188 "value" : {
7189 "op" : "&",
7190 "left" : {
7191 "type" : "expression",
7192 "value" : {
7193 "op" : "+",
7194 "left" : {
7195 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007196 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007197 },
7198 "right" : {
7199 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -07007200 "value" : "0x03"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007201 }
7202 }
7203 },
7204 "right" : {
7205 "type" : "hexstr",
7206 "value" : "0xff"
7207 }
7208 }
7209 }
7210 }
7211 ],
7212 "source_info" : {
7213 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07007214 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007215 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -07007216 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007217 }
7218 },
7219 {
7220 "op" : "assign",
7221 "parameters" : [
7222 {
7223 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007224 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007225 },
7226 {
7227 "type" : "expression",
7228 "value" : {
7229 "type" : "expression",
7230 "value" : {
7231 "op" : "&",
7232 "left" : {
7233 "type" : "expression",
7234 "value" : {
7235 "op" : "+",
7236 "left" : {
7237 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007238 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007239 },
7240 "right" : {
7241 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -07007242 "value" : "0x000c"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007243 }
7244 }
7245 },
7246 "right" : {
7247 "type" : "hexstr",
7248 "value" : "0xffff"
7249 }
7250 }
7251 }
7252 }
7253 ],
7254 "source_info" : {
7255 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07007256 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007257 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -07007258 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007259 }
7260 }
7261 ]
7262 },
7263 {
Daniele Moro5a2de712019-09-24 14:34:07 -07007264 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007265 "id" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007266 "runtime_data" : [],
7267 "primitives" : [
7268 {
7269 "op" : "add_header",
7270 "parameters" : [
7271 {
7272 "type" : "header",
7273 "value" : "int_hop_latency"
7274 }
7275 ],
7276 "source_info" : {
7277 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007278 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007279 "column" : 8,
7280 "source_fragment" : "hdr.int_hop_latency.setValid()"
7281 }
7282 },
7283 {
7284 "op" : "assign",
7285 "parameters" : [
7286 {
7287 "type" : "field",
7288 "value" : ["int_hop_latency", "hop_latency"]
7289 },
7290 {
7291 "type" : "field",
7292 "value" : ["standard_metadata", "deq_timedelta"]
7293 }
7294 ],
7295 "source_info" : {
7296 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007297 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007298 "column" : 8,
7299 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7300 }
7301 },
7302 {
7303 "op" : "add_header",
7304 "parameters" : [
7305 {
7306 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -07007307 "value" : "int_port_ids"
7308 }
7309 ],
7310 "source_info" : {
7311 "filename" : "include/int/int_transit.p4",
7312 "line" : 47,
7313 "column" : 8,
7314 "source_fragment" : "hdr.int_port_ids.setValid()"
7315 }
7316 },
7317 {
7318 "op" : "assign",
7319 "parameters" : [
7320 {
7321 "type" : "field",
7322 "value" : ["int_port_ids", "ingress_port_id"]
7323 },
7324 {
7325 "type" : "expression",
7326 "value" : {
7327 "type" : "expression",
7328 "value" : {
7329 "op" : "&",
7330 "left" : {
7331 "type" : "field",
7332 "value" : ["standard_metadata", "ingress_port"]
7333 },
7334 "right" : {
7335 "type" : "hexstr",
7336 "value" : "0xffff"
7337 }
7338 }
7339 }
7340 }
7341 ],
7342 "source_info" : {
7343 "filename" : "include/int/int_transit.p4",
7344 "line" : 48,
7345 "column" : 8,
7346 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7347 }
7348 },
7349 {
7350 "op" : "assign",
7351 "parameters" : [
7352 {
7353 "type" : "field",
7354 "value" : ["int_port_ids", "egress_port_id"]
7355 },
7356 {
7357 "type" : "expression",
7358 "value" : {
7359 "type" : "expression",
7360 "value" : {
7361 "op" : "&",
7362 "left" : {
7363 "type" : "field",
7364 "value" : ["standard_metadata", "egress_port"]
7365 },
7366 "right" : {
7367 "type" : "hexstr",
7368 "value" : "0xffff"
7369 }
7370 }
7371 }
7372 }
7373 ],
7374 "source_info" : {
7375 "filename" : "include/int/int_transit.p4",
7376 "line" : 49,
7377 "column" : 8,
7378 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7379 }
7380 },
7381 {
7382 "op" : "add_header",
7383 "parameters" : [
7384 {
7385 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007386 "value" : "int_switch_id"
7387 }
7388 ],
7389 "source_info" : {
7390 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007391 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007392 "column" : 8,
7393 "source_fragment" : "hdr.int_switch_id.setValid()"
7394 }
7395 },
7396 {
7397 "op" : "assign",
7398 "parameters" : [
7399 {
7400 "type" : "field",
7401 "value" : ["int_switch_id", "switch_id"]
7402 },
7403 {
7404 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007405 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id23"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007406 }
7407 ],
7408 "source_info" : {
7409 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007410 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007411 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007412 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007413 }
7414 },
7415 {
7416 "op" : "assign",
7417 "parameters" : [
7418 {
7419 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007420 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007421 },
7422 {
7423 "type" : "expression",
7424 "value" : {
7425 "type" : "expression",
7426 "value" : {
7427 "op" : "&",
7428 "left" : {
7429 "type" : "expression",
7430 "value" : {
7431 "op" : "+",
7432 "left" : {
7433 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007434 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007435 },
7436 "right" : {
7437 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -07007438 "value" : "0x03"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007439 }
7440 }
7441 },
7442 "right" : {
7443 "type" : "hexstr",
7444 "value" : "0xff"
7445 }
7446 }
7447 }
7448 }
7449 ],
7450 "source_info" : {
7451 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07007452 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007453 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -07007454 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007455 }
7456 },
7457 {
7458 "op" : "assign",
7459 "parameters" : [
7460 {
7461 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007462 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007463 },
7464 {
7465 "type" : "expression",
7466 "value" : {
7467 "type" : "expression",
7468 "value" : {
7469 "op" : "&",
7470 "left" : {
7471 "type" : "expression",
7472 "value" : {
7473 "op" : "+",
7474 "left" : {
7475 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007476 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007477 },
7478 "right" : {
7479 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -07007480 "value" : "0x000c"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007481 }
7482 }
7483 },
7484 "right" : {
7485 "type" : "hexstr",
7486 "value" : "0xffff"
7487 }
7488 }
7489 }
7490 }
7491 ],
7492 "source_info" : {
7493 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07007494 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007495 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -07007496 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007497 }
7498 }
7499 ]
7500 },
7501 {
Daniele Moro5a2de712019-09-24 14:34:07 -07007502 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007503 "id" : 76,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007504 "runtime_data" : [],
7505 "primitives" : [
7506 {
7507 "op" : "add_header",
7508 "parameters" : [
7509 {
7510 "type" : "header",
7511 "value" : "int_q_occupancy"
7512 }
7513 ],
7514 "source_info" : {
7515 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007516 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007517 "column" : 8,
7518 "source_fragment" : "hdr.int_q_occupancy.setValid()"
7519 }
7520 },
7521 {
7522 "op" : "assign",
7523 "parameters" : [
7524 {
7525 "type" : "field",
7526 "value" : ["int_q_occupancy", "q_id"]
7527 },
7528 {
7529 "type" : "hexstr",
7530 "value" : "0x00"
7531 }
7532 ],
7533 "source_info" : {
7534 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007535 "line" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007536 "column" : 8,
7537 "source_fragment" : "hdr.int_q_occupancy.q_id = 8w0"
7538 }
7539 },
7540 {
7541 "op" : "assign",
7542 "parameters" : [
7543 {
7544 "type" : "field",
7545 "value" : ["int_q_occupancy", "q_occupancy"]
7546 },
7547 {
7548 "type" : "expression",
7549 "value" : {
7550 "type" : "expression",
7551 "value" : {
7552 "op" : "&",
7553 "left" : {
7554 "type" : "field",
7555 "value" : ["standard_metadata", "deq_qdepth"]
7556 },
7557 "right" : {
7558 "type" : "hexstr",
7559 "value" : "0xffffff"
7560 }
7561 }
7562 }
7563 }
7564 ],
7565 "source_info" : {
7566 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007567 "line" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007568 "column" : 8,
7569 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = (bit<24>) smeta.deq_qdepth"
7570 }
7571 },
7572 {
7573 "op" : "add_header",
7574 "parameters" : [
7575 {
7576 "type" : "header",
7577 "value" : "int_hop_latency"
7578 }
7579 ],
7580 "source_info" : {
7581 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007582 "line" : 54,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007583 "column" : 8,
7584 "source_fragment" : "hdr.int_hop_latency.setValid()"
7585 }
7586 },
7587 {
7588 "op" : "assign",
7589 "parameters" : [
7590 {
7591 "type" : "field",
7592 "value" : ["int_hop_latency", "hop_latency"]
7593 },
7594 {
7595 "type" : "field",
7596 "value" : ["standard_metadata", "deq_timedelta"]
7597 }
7598 ],
7599 "source_info" : {
7600 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007601 "line" : 55,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007602 "column" : 8,
7603 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) smeta.deq_timedelta"
7604 }
7605 },
7606 {
7607 "op" : "add_header",
7608 "parameters" : [
7609 {
7610 "type" : "header",
7611 "value" : "int_port_ids"
7612 }
7613 ],
7614 "source_info" : {
7615 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007616 "line" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007617 "column" : 8,
7618 "source_fragment" : "hdr.int_port_ids.setValid()"
7619 }
7620 },
7621 {
7622 "op" : "assign",
7623 "parameters" : [
7624 {
7625 "type" : "field",
7626 "value" : ["int_port_ids", "ingress_port_id"]
7627 },
7628 {
7629 "type" : "expression",
7630 "value" : {
7631 "type" : "expression",
7632 "value" : {
7633 "op" : "&",
7634 "left" : {
7635 "type" : "field",
7636 "value" : ["standard_metadata", "ingress_port"]
7637 },
7638 "right" : {
7639 "type" : "hexstr",
7640 "value" : "0xffff"
7641 }
7642 }
7643 }
7644 }
7645 ],
7646 "source_info" : {
7647 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007648 "line" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007649 "column" : 8,
7650 "source_fragment" : "hdr.int_port_ids.ingress_port_id = (bit<16>) smeta.ingress_port"
7651 }
7652 },
7653 {
7654 "op" : "assign",
7655 "parameters" : [
7656 {
7657 "type" : "field",
7658 "value" : ["int_port_ids", "egress_port_id"]
7659 },
7660 {
7661 "type" : "expression",
7662 "value" : {
7663 "type" : "expression",
7664 "value" : {
7665 "op" : "&",
7666 "left" : {
7667 "type" : "field",
7668 "value" : ["standard_metadata", "egress_port"]
7669 },
7670 "right" : {
7671 "type" : "hexstr",
7672 "value" : "0xffff"
7673 }
7674 }
7675 }
7676 }
7677 ],
7678 "source_info" : {
7679 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007680 "line" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007681 "column" : 8,
7682 "source_fragment" : "hdr.int_port_ids.egress_port_id = (bit<16>) smeta.egress_port"
7683 }
7684 },
7685 {
7686 "op" : "add_header",
7687 "parameters" : [
7688 {
7689 "type" : "header",
7690 "value" : "int_switch_id"
7691 }
7692 ],
7693 "source_info" : {
7694 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007695 "line" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007696 "column" : 8,
7697 "source_fragment" : "hdr.int_switch_id.setValid()"
7698 }
7699 },
7700 {
7701 "op" : "assign",
7702 "parameters" : [
7703 {
7704 "type" : "field",
7705 "value" : ["int_switch_id", "switch_id"]
7706 },
7707 {
7708 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007709 "value" : ["scalars", "fabric_metadata_t._int_meta_switch_id23"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007710 }
7711 ],
7712 "source_info" : {
7713 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007714 "line" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007715 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007716 "source_fragment" : "hdr.int_switch_id.switch_id = fmeta.int_meta.switch_id; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007717 }
7718 },
7719 {
7720 "op" : "assign",
7721 "parameters" : [
7722 {
7723 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007724 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007725 },
7726 {
7727 "type" : "expression",
7728 "value" : {
7729 "type" : "expression",
7730 "value" : {
7731 "op" : "&",
7732 "left" : {
7733 "type" : "expression",
7734 "value" : {
7735 "op" : "+",
7736 "left" : {
7737 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007738 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Daniele Moro7c3a0022019-07-12 13:38:34 -07007739 },
7740 "right" : {
7741 "type" : "hexstr",
7742 "value" : "0x04"
7743 }
7744 }
7745 },
7746 "right" : {
7747 "type" : "hexstr",
7748 "value" : "0xff"
7749 }
7750 }
7751 }
7752 }
7753 ],
7754 "source_info" : {
7755 "filename" : "include/int/int_transit.p4",
7756 "line" : 115,
7757 "column" : 33,
7758 "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
7759 }
7760 },
7761 {
7762 "op" : "assign",
7763 "parameters" : [
7764 {
7765 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007766 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Daniele Moro7c3a0022019-07-12 13:38:34 -07007767 },
7768 {
7769 "type" : "expression",
7770 "value" : {
7771 "type" : "expression",
7772 "value" : {
7773 "op" : "&",
7774 "left" : {
7775 "type" : "expression",
7776 "value" : {
7777 "op" : "+",
7778 "left" : {
7779 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007780 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Daniele Moro7c3a0022019-07-12 13:38:34 -07007781 },
7782 "right" : {
7783 "type" : "hexstr",
7784 "value" : "0x0010"
7785 }
7786 }
7787 },
7788 "right" : {
7789 "type" : "hexstr",
7790 "value" : "0xffff"
7791 }
7792 }
7793 }
7794 }
7795 ],
7796 "source_info" : {
7797 "filename" : "include/int/int_transit.p4",
7798 "line" : 116,
7799 "column" : 33,
7800 "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
7801 }
7802 }
7803 ]
7804 },
7805 {
7806 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0",
Daniele Moro5a2de712019-09-24 14:34:07 -07007807 "id" : 77,
Daniele Moro7c3a0022019-07-12 13:38:34 -07007808 "runtime_data" : [],
7809 "primitives" : []
7810 },
7811 {
7812 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1",
Daniele Moro5a2de712019-09-24 14:34:07 -07007813 "id" : 78,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007814 "runtime_data" : [],
7815 "primitives" : [
7816 {
7817 "op" : "add_header",
7818 "parameters" : [
7819 {
7820 "type" : "header",
7821 "value" : "int_egress_tx_util"
7822 }
7823 ],
7824 "source_info" : {
7825 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007826 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007827 "column" : 8,
7828 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
7829 }
7830 },
7831 {
7832 "op" : "assign",
7833 "parameters" : [
7834 {
7835 "type" : "field",
7836 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
7837 },
7838 {
7839 "type" : "hexstr",
7840 "value" : "0x00000000"
7841 }
7842 ],
7843 "source_info" : {
7844 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007845 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007846 "column" : 8,
7847 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
7848 }
7849 },
7850 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007851 "op" : "assign",
7852 "parameters" : [
7853 {
7854 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007855 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007856 },
7857 {
7858 "type" : "expression",
7859 "value" : {
7860 "type" : "expression",
7861 "value" : {
7862 "op" : "&",
7863 "left" : {
7864 "type" : "expression",
7865 "value" : {
7866 "op" : "+",
7867 "left" : {
7868 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007869 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007870 },
7871 "right" : {
7872 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007873 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007874 }
7875 }
7876 },
7877 "right" : {
7878 "type" : "hexstr",
7879 "value" : "0xff"
7880 }
7881 }
7882 }
7883 }
7884 ],
7885 "source_info" : {
7886 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007887 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007888 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07007889 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007890 }
7891 },
7892 {
7893 "op" : "assign",
7894 "parameters" : [
7895 {
7896 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007897 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007898 },
7899 {
7900 "type" : "expression",
7901 "value" : {
7902 "type" : "expression",
7903 "value" : {
7904 "op" : "&",
7905 "left" : {
7906 "type" : "expression",
7907 "value" : {
7908 "op" : "+",
7909 "left" : {
7910 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007911 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007912 },
7913 "right" : {
7914 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007915 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007916 }
7917 }
7918 },
7919 "right" : {
7920 "type" : "hexstr",
7921 "value" : "0xffff"
7922 }
7923 }
7924 }
7925 }
7926 ],
7927 "source_info" : {
7928 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07007929 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08007930 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07007931 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007932 }
7933 }
7934 ]
7935 },
7936 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07007937 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2",
Daniele Moro5a2de712019-09-24 14:34:07 -07007938 "id" : 79,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007939 "runtime_data" : [],
7940 "primitives" : [
7941 {
7942 "op" : "add_header",
7943 "parameters" : [
7944 {
7945 "type" : "header",
7946 "value" : "int_q_congestion"
7947 }
7948 ],
7949 "source_info" : {
7950 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007951 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007952 "column" : 8,
7953 "source_fragment" : "hdr.int_q_congestion.setValid()"
7954 }
7955 },
7956 {
7957 "op" : "assign",
7958 "parameters" : [
7959 {
7960 "type" : "field",
7961 "value" : ["int_q_congestion", "q_id"]
7962 },
7963 {
7964 "type" : "hexstr",
7965 "value" : "0x00"
7966 }
7967 ],
7968 "source_info" : {
7969 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007970 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007971 "column" : 8,
7972 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
7973 }
7974 },
7975 {
7976 "op" : "assign",
7977 "parameters" : [
7978 {
7979 "type" : "field",
7980 "value" : ["int_q_congestion", "q_congestion"]
7981 },
7982 {
7983 "type" : "hexstr",
7984 "value" : "0x000000"
7985 }
7986 ],
7987 "source_info" : {
7988 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08007989 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007990 "column" : 8,
7991 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
7992 }
7993 },
7994 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07007995 "op" : "assign",
7996 "parameters" : [
7997 {
7998 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07007999 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008000 },
8001 {
8002 "type" : "expression",
8003 "value" : {
8004 "type" : "expression",
8005 "value" : {
8006 "op" : "&",
8007 "left" : {
8008 "type" : "expression",
8009 "value" : {
8010 "op" : "+",
8011 "left" : {
8012 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07008013 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008014 },
8015 "right" : {
8016 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008017 "value" : "0x01"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008018 }
8019 }
8020 },
8021 "right" : {
8022 "type" : "hexstr",
8023 "value" : "0xff"
8024 }
8025 }
8026 }
8027 }
8028 ],
8029 "source_info" : {
8030 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008031 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008032 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07008033 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008034 }
8035 },
8036 {
8037 "op" : "assign",
8038 "parameters" : [
8039 {
8040 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07008041 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008042 },
8043 {
8044 "type" : "expression",
8045 "value" : {
8046 "type" : "expression",
8047 "value" : {
8048 "op" : "&",
8049 "left" : {
8050 "type" : "expression",
8051 "value" : {
8052 "op" : "+",
8053 "left" : {
8054 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07008055 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008056 },
8057 "right" : {
8058 "type" : "hexstr",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008059 "value" : "0x0004"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008060 }
8061 }
8062 },
8063 "right" : {
8064 "type" : "hexstr",
8065 "value" : "0xffff"
8066 }
8067 }
8068 }
8069 }
8070 ],
8071 "source_info" : {
8072 "filename" : "include/int/int_transit.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -07008073 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08008074 "column" : 33,
Daniele Moro7c3a0022019-07-12 13:38:34 -07008075 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008076 }
8077 }
8078 ]
8079 },
8080 {
Daniele Moro7c3a0022019-07-12 13:38:34 -07008081 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3",
Daniele Moro5a2de712019-09-24 14:34:07 -07008082 "id" : 80,
8083 "runtime_data" : [],
8084 "primitives" : [
8085 {
8086 "op" : "add_header",
8087 "parameters" : [
8088 {
8089 "type" : "header",
8090 "value" : "int_egress_tx_util"
8091 }
8092 ],
8093 "source_info" : {
8094 "filename" : "include/int/int_transit.p4",
8095 "line" : 88,
8096 "column" : 8,
8097 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8098 }
8099 },
8100 {
8101 "op" : "assign",
8102 "parameters" : [
8103 {
8104 "type" : "field",
8105 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8106 },
8107 {
8108 "type" : "hexstr",
8109 "value" : "0x00000000"
8110 }
8111 ],
8112 "source_info" : {
8113 "filename" : "include/int/int_transit.p4",
8114 "line" : 90,
8115 "column" : 8,
8116 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8117 }
8118 },
8119 {
8120 "op" : "add_header",
8121 "parameters" : [
8122 {
8123 "type" : "header",
8124 "value" : "int_q_congestion"
8125 }
8126 ],
8127 "source_info" : {
8128 "filename" : "include/int/int_transit.p4",
8129 "line" : 80,
8130 "column" : 8,
8131 "source_fragment" : "hdr.int_q_congestion.setValid()"
8132 }
8133 },
8134 {
8135 "op" : "assign",
8136 "parameters" : [
8137 {
8138 "type" : "field",
8139 "value" : ["int_q_congestion", "q_id"]
8140 },
8141 {
8142 "type" : "hexstr",
8143 "value" : "0x00"
8144 }
8145 ],
8146 "source_info" : {
8147 "filename" : "include/int/int_transit.p4",
8148 "line" : 82,
8149 "column" : 8,
8150 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8151 }
8152 },
8153 {
8154 "op" : "assign",
8155 "parameters" : [
8156 {
8157 "type" : "field",
8158 "value" : ["int_q_congestion", "q_congestion"]
8159 },
8160 {
8161 "type" : "hexstr",
8162 "value" : "0x000000"
8163 }
8164 ],
8165 "source_info" : {
8166 "filename" : "include/int/int_transit.p4",
8167 "line" : 83,
8168 "column" : 8,
8169 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8170 }
8171 },
8172 {
8173 "op" : "assign",
8174 "parameters" : [
8175 {
8176 "type" : "field",
8177 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
8178 },
8179 {
8180 "type" : "expression",
8181 "value" : {
8182 "type" : "expression",
8183 "value" : {
8184 "op" : "&",
8185 "left" : {
8186 "type" : "expression",
8187 "value" : {
8188 "op" : "+",
8189 "left" : {
8190 "type" : "field",
8191 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
8192 },
8193 "right" : {
8194 "type" : "hexstr",
8195 "value" : "0x02"
8196 }
8197 }
8198 },
8199 "right" : {
8200 "type" : "hexstr",
8201 "value" : "0xff"
8202 }
8203 }
8204 }
8205 }
8206 ],
8207 "source_info" : {
8208 "filename" : "include/int/int_transit.p4",
8209 "line" : 103,
8210 "column" : 33,
8211 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
8212 }
8213 },
8214 {
8215 "op" : "assign",
8216 "parameters" : [
8217 {
8218 "type" : "field",
8219 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
8220 },
8221 {
8222 "type" : "expression",
8223 "value" : {
8224 "type" : "expression",
8225 "value" : {
8226 "op" : "&",
8227 "left" : {
8228 "type" : "expression",
8229 "value" : {
8230 "op" : "+",
8231 "left" : {
8232 "type" : "field",
8233 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
8234 },
8235 "right" : {
8236 "type" : "hexstr",
8237 "value" : "0x0008"
8238 }
8239 }
8240 },
8241 "right" : {
8242 "type" : "hexstr",
8243 "value" : "0xffff"
8244 }
8245 }
8246 }
8247 }
8248 ],
8249 "source_info" : {
8250 "filename" : "include/int/int_transit.p4",
8251 "line" : 104,
8252 "column" : 33,
8253 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
8254 }
8255 }
8256 ]
8257 },
8258 {
8259 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4",
8260 "id" : 81,
8261 "runtime_data" : [],
8262 "primitives" : [
8263 {
8264 "op" : "add_header",
8265 "parameters" : [
8266 {
8267 "type" : "header",
8268 "value" : "int_egress_tstamp"
8269 }
8270 ],
8271 "source_info" : {
8272 "filename" : "include/int/int_transit.p4",
8273 "line" : 74,
8274 "column" : 8,
8275 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8276 }
8277 },
8278 {
8279 "op" : "assign",
8280 "parameters" : [
8281 {
8282 "type" : "field",
8283 "value" : ["int_egress_tstamp", "egress_tstamp"]
8284 },
8285 {
8286 "type" : "expression",
8287 "value" : {
8288 "type" : "expression",
8289 "value" : {
8290 "op" : "&",
8291 "left" : {
8292 "type" : "expression",
8293 "value" : {
8294 "op" : "+",
8295 "left" : {
8296 "type" : "field",
8297 "value" : ["standard_metadata", "enq_timestamp"]
8298 },
8299 "right" : {
8300 "type" : "field",
8301 "value" : ["standard_metadata", "deq_timedelta"]
8302 }
8303 }
8304 },
8305 "right" : {
8306 "type" : "hexstr",
8307 "value" : "0xffffffff"
8308 }
8309 }
8310 }
8311 }
8312 ],
8313 "source_info" : {
8314 "filename" : "include/int/int_transit.p4",
8315 "line" : 75,
8316 "column" : 8,
8317 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8318 }
8319 },
8320 {
8321 "op" : "assign",
8322 "parameters" : [
8323 {
8324 "type" : "field",
8325 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
8326 },
8327 {
8328 "type" : "expression",
8329 "value" : {
8330 "type" : "expression",
8331 "value" : {
8332 "op" : "&",
8333 "left" : {
8334 "type" : "expression",
8335 "value" : {
8336 "op" : "+",
8337 "left" : {
8338 "type" : "field",
8339 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
8340 },
8341 "right" : {
8342 "type" : "hexstr",
8343 "value" : "0x01"
8344 }
8345 }
8346 },
8347 "right" : {
8348 "type" : "hexstr",
8349 "value" : "0xff"
8350 }
8351 }
8352 }
8353 }
8354 ],
8355 "source_info" : {
8356 "filename" : "include/int/int_transit.p4",
8357 "line" : 97,
8358 "column" : 33,
8359 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
8360 }
8361 },
8362 {
8363 "op" : "assign",
8364 "parameters" : [
8365 {
8366 "type" : "field",
8367 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
8368 },
8369 {
8370 "type" : "expression",
8371 "value" : {
8372 "type" : "expression",
8373 "value" : {
8374 "op" : "&",
8375 "left" : {
8376 "type" : "expression",
8377 "value" : {
8378 "op" : "+",
8379 "left" : {
8380 "type" : "field",
8381 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
8382 },
8383 "right" : {
8384 "type" : "hexstr",
8385 "value" : "0x0004"
8386 }
8387 }
8388 },
8389 "right" : {
8390 "type" : "hexstr",
8391 "value" : "0xffff"
8392 }
8393 }
8394 }
8395 }
8396 ],
8397 "source_info" : {
8398 "filename" : "include/int/int_transit.p4",
8399 "line" : 98,
8400 "column" : 33,
8401 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
8402 }
8403 }
8404 ]
8405 },
8406 {
8407 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5",
8408 "id" : 82,
8409 "runtime_data" : [],
8410 "primitives" : [
8411 {
8412 "op" : "add_header",
8413 "parameters" : [
8414 {
8415 "type" : "header",
8416 "value" : "int_egress_tx_util"
8417 }
8418 ],
8419 "source_info" : {
8420 "filename" : "include/int/int_transit.p4",
8421 "line" : 88,
8422 "column" : 8,
8423 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8424 }
8425 },
8426 {
8427 "op" : "assign",
8428 "parameters" : [
8429 {
8430 "type" : "field",
8431 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8432 },
8433 {
8434 "type" : "hexstr",
8435 "value" : "0x00000000"
8436 }
8437 ],
8438 "source_info" : {
8439 "filename" : "include/int/int_transit.p4",
8440 "line" : 90,
8441 "column" : 8,
8442 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8443 }
8444 },
8445 {
8446 "op" : "add_header",
8447 "parameters" : [
8448 {
8449 "type" : "header",
8450 "value" : "int_egress_tstamp"
8451 }
8452 ],
8453 "source_info" : {
8454 "filename" : "include/int/int_transit.p4",
8455 "line" : 74,
8456 "column" : 8,
8457 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8458 }
8459 },
8460 {
8461 "op" : "assign",
8462 "parameters" : [
8463 {
8464 "type" : "field",
8465 "value" : ["int_egress_tstamp", "egress_tstamp"]
8466 },
8467 {
8468 "type" : "expression",
8469 "value" : {
8470 "type" : "expression",
8471 "value" : {
8472 "op" : "&",
8473 "left" : {
8474 "type" : "expression",
8475 "value" : {
8476 "op" : "+",
8477 "left" : {
8478 "type" : "field",
8479 "value" : ["standard_metadata", "enq_timestamp"]
8480 },
8481 "right" : {
8482 "type" : "field",
8483 "value" : ["standard_metadata", "deq_timedelta"]
8484 }
8485 }
8486 },
8487 "right" : {
8488 "type" : "hexstr",
8489 "value" : "0xffffffff"
8490 }
8491 }
8492 }
8493 }
8494 ],
8495 "source_info" : {
8496 "filename" : "include/int/int_transit.p4",
8497 "line" : 75,
8498 "column" : 8,
8499 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8500 }
8501 },
8502 {
8503 "op" : "assign",
8504 "parameters" : [
8505 {
8506 "type" : "field",
8507 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
8508 },
8509 {
8510 "type" : "expression",
8511 "value" : {
8512 "type" : "expression",
8513 "value" : {
8514 "op" : "&",
8515 "left" : {
8516 "type" : "expression",
8517 "value" : {
8518 "op" : "+",
8519 "left" : {
8520 "type" : "field",
8521 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
8522 },
8523 "right" : {
8524 "type" : "hexstr",
8525 "value" : "0x02"
8526 }
8527 }
8528 },
8529 "right" : {
8530 "type" : "hexstr",
8531 "value" : "0xff"
8532 }
8533 }
8534 }
8535 }
8536 ],
8537 "source_info" : {
8538 "filename" : "include/int/int_transit.p4",
8539 "line" : 103,
8540 "column" : 33,
8541 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
8542 }
8543 },
8544 {
8545 "op" : "assign",
8546 "parameters" : [
8547 {
8548 "type" : "field",
8549 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
8550 },
8551 {
8552 "type" : "expression",
8553 "value" : {
8554 "type" : "expression",
8555 "value" : {
8556 "op" : "&",
8557 "left" : {
8558 "type" : "expression",
8559 "value" : {
8560 "op" : "+",
8561 "left" : {
8562 "type" : "field",
8563 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
8564 },
8565 "right" : {
8566 "type" : "hexstr",
8567 "value" : "0x0008"
8568 }
8569 }
8570 },
8571 "right" : {
8572 "type" : "hexstr",
8573 "value" : "0xffff"
8574 }
8575 }
8576 }
8577 }
8578 ],
8579 "source_info" : {
8580 "filename" : "include/int/int_transit.p4",
8581 "line" : 104,
8582 "column" : 33,
8583 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
8584 }
8585 }
8586 ]
8587 },
8588 {
8589 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6",
8590 "id" : 83,
8591 "runtime_data" : [],
8592 "primitives" : [
8593 {
8594 "op" : "add_header",
8595 "parameters" : [
8596 {
8597 "type" : "header",
8598 "value" : "int_q_congestion"
8599 }
8600 ],
8601 "source_info" : {
8602 "filename" : "include/int/int_transit.p4",
8603 "line" : 80,
8604 "column" : 8,
8605 "source_fragment" : "hdr.int_q_congestion.setValid()"
8606 }
8607 },
8608 {
8609 "op" : "assign",
8610 "parameters" : [
8611 {
8612 "type" : "field",
8613 "value" : ["int_q_congestion", "q_id"]
8614 },
8615 {
8616 "type" : "hexstr",
8617 "value" : "0x00"
8618 }
8619 ],
8620 "source_info" : {
8621 "filename" : "include/int/int_transit.p4",
8622 "line" : 82,
8623 "column" : 8,
8624 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8625 }
8626 },
8627 {
8628 "op" : "assign",
8629 "parameters" : [
8630 {
8631 "type" : "field",
8632 "value" : ["int_q_congestion", "q_congestion"]
8633 },
8634 {
8635 "type" : "hexstr",
8636 "value" : "0x000000"
8637 }
8638 ],
8639 "source_info" : {
8640 "filename" : "include/int/int_transit.p4",
8641 "line" : 83,
8642 "column" : 8,
8643 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8644 }
8645 },
8646 {
8647 "op" : "add_header",
8648 "parameters" : [
8649 {
8650 "type" : "header",
8651 "value" : "int_egress_tstamp"
8652 }
8653 ],
8654 "source_info" : {
8655 "filename" : "include/int/int_transit.p4",
8656 "line" : 74,
8657 "column" : 8,
8658 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8659 }
8660 },
8661 {
8662 "op" : "assign",
8663 "parameters" : [
8664 {
8665 "type" : "field",
8666 "value" : ["int_egress_tstamp", "egress_tstamp"]
8667 },
8668 {
8669 "type" : "expression",
8670 "value" : {
8671 "type" : "expression",
8672 "value" : {
8673 "op" : "&",
8674 "left" : {
8675 "type" : "expression",
8676 "value" : {
8677 "op" : "+",
8678 "left" : {
8679 "type" : "field",
8680 "value" : ["standard_metadata", "enq_timestamp"]
8681 },
8682 "right" : {
8683 "type" : "field",
8684 "value" : ["standard_metadata", "deq_timedelta"]
8685 }
8686 }
8687 },
8688 "right" : {
8689 "type" : "hexstr",
8690 "value" : "0xffffffff"
8691 }
8692 }
8693 }
8694 }
8695 ],
8696 "source_info" : {
8697 "filename" : "include/int/int_transit.p4",
8698 "line" : 75,
8699 "column" : 8,
8700 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8701 }
8702 },
8703 {
8704 "op" : "assign",
8705 "parameters" : [
8706 {
8707 "type" : "field",
8708 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
8709 },
8710 {
8711 "type" : "expression",
8712 "value" : {
8713 "type" : "expression",
8714 "value" : {
8715 "op" : "&",
8716 "left" : {
8717 "type" : "expression",
8718 "value" : {
8719 "op" : "+",
8720 "left" : {
8721 "type" : "field",
8722 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
8723 },
8724 "right" : {
8725 "type" : "hexstr",
8726 "value" : "0x02"
8727 }
8728 }
8729 },
8730 "right" : {
8731 "type" : "hexstr",
8732 "value" : "0xff"
8733 }
8734 }
8735 }
8736 }
8737 ],
8738 "source_info" : {
8739 "filename" : "include/int/int_transit.p4",
8740 "line" : 103,
8741 "column" : 33,
8742 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
8743 }
8744 },
8745 {
8746 "op" : "assign",
8747 "parameters" : [
8748 {
8749 "type" : "field",
8750 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
8751 },
8752 {
8753 "type" : "expression",
8754 "value" : {
8755 "type" : "expression",
8756 "value" : {
8757 "op" : "&",
8758 "left" : {
8759 "type" : "expression",
8760 "value" : {
8761 "op" : "+",
8762 "left" : {
8763 "type" : "field",
8764 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
8765 },
8766 "right" : {
8767 "type" : "hexstr",
8768 "value" : "0x0008"
8769 }
8770 }
8771 },
8772 "right" : {
8773 "type" : "hexstr",
8774 "value" : "0xffff"
8775 }
8776 }
8777 }
8778 }
8779 ],
8780 "source_info" : {
8781 "filename" : "include/int/int_transit.p4",
8782 "line" : 104,
8783 "column" : 33,
8784 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
8785 }
8786 }
8787 ]
8788 },
8789 {
8790 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008791 "id" : 84,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008792 "runtime_data" : [],
8793 "primitives" : [
8794 {
8795 "op" : "add_header",
8796 "parameters" : [
8797 {
8798 "type" : "header",
8799 "value" : "int_egress_tx_util"
8800 }
8801 ],
8802 "source_info" : {
8803 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008804 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008805 "column" : 8,
8806 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8807 }
8808 },
8809 {
8810 "op" : "assign",
8811 "parameters" : [
8812 {
8813 "type" : "field",
8814 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8815 },
8816 {
8817 "type" : "hexstr",
8818 "value" : "0x00000000"
8819 }
8820 ],
8821 "source_info" : {
8822 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008823 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008824 "column" : 8,
8825 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
8826 }
8827 },
8828 {
8829 "op" : "add_header",
8830 "parameters" : [
8831 {
8832 "type" : "header",
8833 "value" : "int_q_congestion"
8834 }
8835 ],
8836 "source_info" : {
8837 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008838 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008839 "column" : 8,
8840 "source_fragment" : "hdr.int_q_congestion.setValid()"
8841 }
8842 },
8843 {
8844 "op" : "assign",
8845 "parameters" : [
8846 {
8847 "type" : "field",
8848 "value" : ["int_q_congestion", "q_id"]
8849 },
8850 {
8851 "type" : "hexstr",
8852 "value" : "0x00"
8853 }
8854 ],
8855 "source_info" : {
8856 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008857 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008858 "column" : 8,
8859 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
8860 }
8861 },
8862 {
8863 "op" : "assign",
8864 "parameters" : [
8865 {
8866 "type" : "field",
8867 "value" : ["int_q_congestion", "q_congestion"]
8868 },
8869 {
8870 "type" : "hexstr",
8871 "value" : "0x000000"
8872 }
8873 ],
8874 "source_info" : {
8875 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008876 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008877 "column" : 8,
8878 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
8879 }
8880 },
8881 {
8882 "op" : "add_header",
8883 "parameters" : [
8884 {
8885 "type" : "header",
8886 "value" : "int_egress_tstamp"
8887 }
8888 ],
8889 "source_info" : {
8890 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008891 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008892 "column" : 8,
8893 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8894 }
8895 },
8896 {
8897 "op" : "assign",
8898 "parameters" : [
8899 {
8900 "type" : "field",
8901 "value" : ["int_egress_tstamp", "egress_tstamp"]
8902 },
8903 {
8904 "type" : "expression",
8905 "value" : {
8906 "type" : "expression",
8907 "value" : {
8908 "op" : "&",
8909 "left" : {
8910 "type" : "expression",
8911 "value" : {
8912 "op" : "+",
8913 "left" : {
8914 "type" : "field",
8915 "value" : ["standard_metadata", "enq_timestamp"]
8916 },
8917 "right" : {
8918 "type" : "field",
8919 "value" : ["standard_metadata", "deq_timedelta"]
8920 }
8921 }
8922 },
8923 "right" : {
8924 "type" : "hexstr",
8925 "value" : "0xffffffff"
8926 }
8927 }
8928 }
8929 }
8930 ],
8931 "source_info" : {
8932 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08008933 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008934 "column" : 8,
8935 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
8936 }
8937 },
8938 {
8939 "op" : "assign",
8940 "parameters" : [
8941 {
8942 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07008943 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07008944 },
8945 {
8946 "type" : "expression",
8947 "value" : {
8948 "type" : "expression",
8949 "value" : {
8950 "op" : "&",
8951 "left" : {
8952 "type" : "expression",
8953 "value" : {
8954 "op" : "+",
8955 "left" : {
8956 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07008957 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
8958 },
8959 "right" : {
8960 "type" : "hexstr",
8961 "value" : "0x03"
8962 }
8963 }
8964 },
8965 "right" : {
8966 "type" : "hexstr",
8967 "value" : "0xff"
8968 }
8969 }
8970 }
8971 }
8972 ],
8973 "source_info" : {
8974 "filename" : "include/int/int_transit.p4",
8975 "line" : 109,
8976 "column" : 33,
8977 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
8978 }
8979 },
8980 {
8981 "op" : "assign",
8982 "parameters" : [
8983 {
8984 "type" : "field",
8985 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
8986 },
8987 {
8988 "type" : "expression",
8989 "value" : {
8990 "type" : "expression",
8991 "value" : {
8992 "op" : "&",
8993 "left" : {
8994 "type" : "expression",
8995 "value" : {
8996 "op" : "+",
8997 "left" : {
8998 "type" : "field",
8999 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
9000 },
9001 "right" : {
9002 "type" : "hexstr",
9003 "value" : "0x000c"
9004 }
9005 }
9006 },
9007 "right" : {
9008 "type" : "hexstr",
9009 "value" : "0xffff"
9010 }
9011 }
9012 }
9013 }
9014 ],
9015 "source_info" : {
9016 "filename" : "include/int/int_transit.p4",
9017 "line" : 110,
9018 "column" : 33,
9019 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
9020 }
9021 }
9022 ]
9023 },
9024 {
9025 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8",
9026 "id" : 85,
9027 "runtime_data" : [],
9028 "primitives" : [
9029 {
9030 "op" : "add_header",
9031 "parameters" : [
9032 {
9033 "type" : "header",
9034 "value" : "int_ingress_tstamp"
9035 }
9036 ],
9037 "source_info" : {
9038 "filename" : "include/int/int_transit.p4",
9039 "line" : 68,
9040 "column" : 8,
9041 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9042 }
9043 },
9044 {
9045 "op" : "assign",
9046 "parameters" : [
9047 {
9048 "type" : "field",
9049 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9050 },
9051 {
9052 "type" : "field",
9053 "value" : ["standard_metadata", "enq_timestamp"]
9054 }
9055 ],
9056 "source_info" : {
9057 "filename" : "include/int/int_transit.p4",
9058 "line" : 69,
9059 "column" : 8,
9060 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9061 }
9062 },
9063 {
9064 "op" : "assign",
9065 "parameters" : [
9066 {
9067 "type" : "field",
9068 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
9069 },
9070 {
9071 "type" : "expression",
9072 "value" : {
9073 "type" : "expression",
9074 "value" : {
9075 "op" : "&",
9076 "left" : {
9077 "type" : "expression",
9078 "value" : {
9079 "op" : "+",
9080 "left" : {
9081 "type" : "field",
9082 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009083 },
9084 "right" : {
9085 "type" : "hexstr",
9086 "value" : "0x01"
9087 }
9088 }
9089 },
9090 "right" : {
9091 "type" : "hexstr",
9092 "value" : "0xff"
9093 }
9094 }
9095 }
9096 }
9097 ],
9098 "source_info" : {
9099 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009100 "line" : 97,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009101 "column" : 33,
9102 "source_fragment" : "= fmeta.int_meta.new_words + 1; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009103 }
9104 },
9105 {
9106 "op" : "assign",
9107 "parameters" : [
9108 {
9109 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009110 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009111 },
9112 {
9113 "type" : "expression",
9114 "value" : {
9115 "type" : "expression",
9116 "value" : {
9117 "op" : "&",
9118 "left" : {
9119 "type" : "expression",
9120 "value" : {
9121 "op" : "+",
9122 "left" : {
9123 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009124 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009125 },
9126 "right" : {
9127 "type" : "hexstr",
9128 "value" : "0x0004"
9129 }
9130 }
9131 },
9132 "right" : {
9133 "type" : "hexstr",
9134 "value" : "0xffff"
9135 }
9136 }
9137 }
9138 }
9139 ],
9140 "source_info" : {
9141 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009142 "line" : 98,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009143 "column" : 33,
9144 "source_fragment" : "= fmeta.int_meta.new_bytes + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009145 }
9146 }
9147 ]
9148 },
9149 {
Daniele Moro5a2de712019-09-24 14:34:07 -07009150 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009151 "id" : 86,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009152 "runtime_data" : [],
9153 "primitives" : [
9154 {
9155 "op" : "add_header",
9156 "parameters" : [
9157 {
9158 "type" : "header",
9159 "value" : "int_egress_tx_util"
9160 }
9161 ],
9162 "source_info" : {
9163 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009164 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009165 "column" : 8,
9166 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9167 }
9168 },
9169 {
9170 "op" : "assign",
9171 "parameters" : [
9172 {
9173 "type" : "field",
9174 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9175 },
9176 {
9177 "type" : "hexstr",
9178 "value" : "0x00000000"
9179 }
9180 ],
9181 "source_info" : {
9182 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009183 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009184 "column" : 8,
9185 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9186 }
9187 },
9188 {
9189 "op" : "add_header",
9190 "parameters" : [
9191 {
9192 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -07009193 "value" : "int_ingress_tstamp"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009194 }
9195 ],
9196 "source_info" : {
9197 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07009198 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009199 "column" : 8,
Daniele Moro5a2de712019-09-24 14:34:07 -07009200 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009201 }
9202 },
9203 {
9204 "op" : "assign",
9205 "parameters" : [
9206 {
9207 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009208 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9209 },
9210 {
9211 "type" : "field",
9212 "value" : ["standard_metadata", "enq_timestamp"]
9213 }
9214 ],
9215 "source_info" : {
9216 "filename" : "include/int/int_transit.p4",
9217 "line" : 69,
9218 "column" : 8,
9219 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9220 }
9221 },
9222 {
9223 "op" : "assign",
9224 "parameters" : [
9225 {
9226 "type" : "field",
9227 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009228 },
9229 {
9230 "type" : "expression",
9231 "value" : {
9232 "type" : "expression",
9233 "value" : {
9234 "op" : "&",
9235 "left" : {
9236 "type" : "expression",
9237 "value" : {
9238 "op" : "+",
9239 "left" : {
9240 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009241 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009242 },
9243 "right" : {
9244 "type" : "hexstr",
9245 "value" : "0x02"
9246 }
9247 }
9248 },
9249 "right" : {
9250 "type" : "hexstr",
9251 "value" : "0xff"
9252 }
9253 }
9254 }
9255 }
9256 ],
9257 "source_info" : {
9258 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009259 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009260 "column" : 33,
9261 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009262 }
9263 },
9264 {
9265 "op" : "assign",
9266 "parameters" : [
9267 {
9268 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009269 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009270 },
9271 {
9272 "type" : "expression",
9273 "value" : {
9274 "type" : "expression",
9275 "value" : {
9276 "op" : "&",
9277 "left" : {
9278 "type" : "expression",
9279 "value" : {
9280 "op" : "+",
9281 "left" : {
9282 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009283 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009284 },
9285 "right" : {
9286 "type" : "hexstr",
9287 "value" : "0x0008"
9288 }
9289 }
9290 },
9291 "right" : {
9292 "type" : "hexstr",
9293 "value" : "0xffff"
9294 }
9295 }
9296 }
9297 }
9298 ],
9299 "source_info" : {
9300 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009301 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009302 "column" : 33,
9303 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009304 }
9305 }
9306 ]
9307 },
9308 {
Daniele Moro5a2de712019-09-24 14:34:07 -07009309 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009310 "id" : 87,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009311 "runtime_data" : [],
9312 "primitives" : [
9313 {
9314 "op" : "add_header",
9315 "parameters" : [
9316 {
9317 "type" : "header",
9318 "value" : "int_q_congestion"
9319 }
9320 ],
9321 "source_info" : {
9322 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009323 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009324 "column" : 8,
9325 "source_fragment" : "hdr.int_q_congestion.setValid()"
9326 }
9327 },
9328 {
9329 "op" : "assign",
9330 "parameters" : [
9331 {
9332 "type" : "field",
9333 "value" : ["int_q_congestion", "q_id"]
9334 },
9335 {
9336 "type" : "hexstr",
9337 "value" : "0x00"
9338 }
9339 ],
9340 "source_info" : {
9341 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009342 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009343 "column" : 8,
9344 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9345 }
9346 },
9347 {
9348 "op" : "assign",
9349 "parameters" : [
9350 {
9351 "type" : "field",
9352 "value" : ["int_q_congestion", "q_congestion"]
9353 },
9354 {
9355 "type" : "hexstr",
9356 "value" : "0x000000"
9357 }
9358 ],
9359 "source_info" : {
9360 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009361 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009362 "column" : 8,
9363 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9364 }
9365 },
9366 {
9367 "op" : "add_header",
9368 "parameters" : [
9369 {
9370 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -07009371 "value" : "int_ingress_tstamp"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009372 }
9373 ],
9374 "source_info" : {
9375 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07009376 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009377 "column" : 8,
Daniele Moro5a2de712019-09-24 14:34:07 -07009378 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009379 }
9380 },
9381 {
9382 "op" : "assign",
9383 "parameters" : [
9384 {
9385 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009386 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9387 },
9388 {
9389 "type" : "field",
9390 "value" : ["standard_metadata", "enq_timestamp"]
9391 }
9392 ],
9393 "source_info" : {
9394 "filename" : "include/int/int_transit.p4",
9395 "line" : 69,
9396 "column" : 8,
9397 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9398 }
9399 },
9400 {
9401 "op" : "assign",
9402 "parameters" : [
9403 {
9404 "type" : "field",
9405 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009406 },
9407 {
9408 "type" : "expression",
9409 "value" : {
9410 "type" : "expression",
9411 "value" : {
9412 "op" : "&",
9413 "left" : {
9414 "type" : "expression",
9415 "value" : {
9416 "op" : "+",
9417 "left" : {
9418 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009419 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009420 },
9421 "right" : {
9422 "type" : "hexstr",
9423 "value" : "0x02"
9424 }
9425 }
9426 },
9427 "right" : {
9428 "type" : "hexstr",
9429 "value" : "0xff"
9430 }
9431 }
9432 }
9433 }
9434 ],
9435 "source_info" : {
9436 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009437 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009438 "column" : 33,
9439 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009440 }
9441 },
9442 {
9443 "op" : "assign",
9444 "parameters" : [
9445 {
9446 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009447 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009448 },
9449 {
9450 "type" : "expression",
9451 "value" : {
9452 "type" : "expression",
9453 "value" : {
9454 "op" : "&",
9455 "left" : {
9456 "type" : "expression",
9457 "value" : {
9458 "op" : "+",
9459 "left" : {
9460 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009461 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009462 },
9463 "right" : {
9464 "type" : "hexstr",
9465 "value" : "0x0008"
9466 }
9467 }
9468 },
9469 "right" : {
9470 "type" : "hexstr",
9471 "value" : "0xffff"
9472 }
9473 }
9474 }
9475 }
9476 ],
9477 "source_info" : {
9478 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009479 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009480 "column" : 33,
9481 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009482 }
9483 }
9484 ]
9485 },
9486 {
Daniele Moro5a2de712019-09-24 14:34:07 -07009487 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009488 "id" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009489 "runtime_data" : [],
9490 "primitives" : [
9491 {
9492 "op" : "add_header",
9493 "parameters" : [
9494 {
9495 "type" : "header",
9496 "value" : "int_egress_tx_util"
9497 }
9498 ],
9499 "source_info" : {
9500 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009501 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009502 "column" : 8,
9503 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9504 }
9505 },
9506 {
9507 "op" : "assign",
9508 "parameters" : [
9509 {
9510 "type" : "field",
9511 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9512 },
9513 {
9514 "type" : "hexstr",
9515 "value" : "0x00000000"
9516 }
9517 ],
9518 "source_info" : {
9519 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009520 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009521 "column" : 8,
9522 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9523 }
9524 },
9525 {
9526 "op" : "add_header",
9527 "parameters" : [
9528 {
9529 "type" : "header",
9530 "value" : "int_q_congestion"
9531 }
9532 ],
9533 "source_info" : {
9534 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009535 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009536 "column" : 8,
9537 "source_fragment" : "hdr.int_q_congestion.setValid()"
9538 }
9539 },
9540 {
9541 "op" : "assign",
9542 "parameters" : [
9543 {
9544 "type" : "field",
9545 "value" : ["int_q_congestion", "q_id"]
9546 },
9547 {
9548 "type" : "hexstr",
9549 "value" : "0x00"
9550 }
9551 ],
9552 "source_info" : {
9553 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009554 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009555 "column" : 8,
9556 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
9557 }
9558 },
9559 {
9560 "op" : "assign",
9561 "parameters" : [
9562 {
9563 "type" : "field",
9564 "value" : ["int_q_congestion", "q_congestion"]
9565 },
9566 {
9567 "type" : "hexstr",
9568 "value" : "0x000000"
9569 }
9570 ],
9571 "source_info" : {
9572 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009573 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009574 "column" : 8,
9575 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
9576 }
9577 },
9578 {
9579 "op" : "add_header",
9580 "parameters" : [
9581 {
9582 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -07009583 "value" : "int_ingress_tstamp"
9584 }
9585 ],
9586 "source_info" : {
9587 "filename" : "include/int/int_transit.p4",
9588 "line" : 68,
9589 "column" : 8,
9590 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9591 }
9592 },
9593 {
9594 "op" : "assign",
9595 "parameters" : [
9596 {
9597 "type" : "field",
9598 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9599 },
9600 {
9601 "type" : "field",
9602 "value" : ["standard_metadata", "enq_timestamp"]
9603 }
9604 ],
9605 "source_info" : {
9606 "filename" : "include/int/int_transit.p4",
9607 "line" : 69,
9608 "column" : 8,
9609 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9610 }
9611 },
9612 {
9613 "op" : "assign",
9614 "parameters" : [
9615 {
9616 "type" : "field",
9617 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
9618 },
9619 {
9620 "type" : "expression",
9621 "value" : {
9622 "type" : "expression",
9623 "value" : {
9624 "op" : "&",
9625 "left" : {
9626 "type" : "expression",
9627 "value" : {
9628 "op" : "+",
9629 "left" : {
9630 "type" : "field",
9631 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
9632 },
9633 "right" : {
9634 "type" : "hexstr",
9635 "value" : "0x03"
9636 }
9637 }
9638 },
9639 "right" : {
9640 "type" : "hexstr",
9641 "value" : "0xff"
9642 }
9643 }
9644 }
9645 }
9646 ],
9647 "source_info" : {
9648 "filename" : "include/int/int_transit.p4",
9649 "line" : 109,
9650 "column" : 33,
9651 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
9652 }
9653 },
9654 {
9655 "op" : "assign",
9656 "parameters" : [
9657 {
9658 "type" : "field",
9659 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
9660 },
9661 {
9662 "type" : "expression",
9663 "value" : {
9664 "type" : "expression",
9665 "value" : {
9666 "op" : "&",
9667 "left" : {
9668 "type" : "expression",
9669 "value" : {
9670 "op" : "+",
9671 "left" : {
9672 "type" : "field",
9673 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
9674 },
9675 "right" : {
9676 "type" : "hexstr",
9677 "value" : "0x000c"
9678 }
9679 }
9680 },
9681 "right" : {
9682 "type" : "hexstr",
9683 "value" : "0xffff"
9684 }
9685 }
9686 }
9687 }
9688 ],
9689 "source_info" : {
9690 "filename" : "include/int/int_transit.p4",
9691 "line" : 110,
9692 "column" : 33,
9693 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
9694 }
9695 }
9696 ]
9697 },
9698 {
9699 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12",
9700 "id" : 89,
9701 "runtime_data" : [],
9702 "primitives" : [
9703 {
9704 "op" : "add_header",
9705 "parameters" : [
9706 {
9707 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009708 "value" : "int_egress_tstamp"
9709 }
9710 ],
9711 "source_info" : {
9712 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009713 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009714 "column" : 8,
9715 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9716 }
9717 },
9718 {
9719 "op" : "assign",
9720 "parameters" : [
9721 {
9722 "type" : "field",
9723 "value" : ["int_egress_tstamp", "egress_tstamp"]
9724 },
9725 {
9726 "type" : "expression",
9727 "value" : {
9728 "type" : "expression",
9729 "value" : {
9730 "op" : "&",
9731 "left" : {
9732 "type" : "expression",
9733 "value" : {
9734 "op" : "+",
9735 "left" : {
9736 "type" : "field",
9737 "value" : ["standard_metadata", "enq_timestamp"]
9738 },
9739 "right" : {
9740 "type" : "field",
9741 "value" : ["standard_metadata", "deq_timedelta"]
9742 }
9743 }
9744 },
9745 "right" : {
9746 "type" : "hexstr",
9747 "value" : "0xffffffff"
9748 }
9749 }
9750 }
9751 }
9752 ],
9753 "source_info" : {
9754 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009755 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009756 "column" : 8,
9757 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9758 }
9759 },
9760 {
9761 "op" : "add_header",
9762 "parameters" : [
9763 {
9764 "type" : "header",
9765 "value" : "int_ingress_tstamp"
9766 }
9767 ],
9768 "source_info" : {
9769 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009770 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009771 "column" : 8,
9772 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9773 }
9774 },
9775 {
9776 "op" : "assign",
9777 "parameters" : [
9778 {
9779 "type" : "field",
9780 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9781 },
9782 {
9783 "type" : "field",
9784 "value" : ["standard_metadata", "enq_timestamp"]
9785 }
9786 ],
9787 "source_info" : {
9788 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009789 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009790 "column" : 8,
9791 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
9792 }
9793 },
9794 {
9795 "op" : "assign",
9796 "parameters" : [
9797 {
9798 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009799 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009800 },
9801 {
9802 "type" : "expression",
9803 "value" : {
9804 "type" : "expression",
9805 "value" : {
9806 "op" : "&",
9807 "left" : {
9808 "type" : "expression",
9809 "value" : {
9810 "op" : "+",
9811 "left" : {
9812 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009813 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009814 },
9815 "right" : {
9816 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -07009817 "value" : "0x02"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009818 }
9819 }
9820 },
9821 "right" : {
9822 "type" : "hexstr",
9823 "value" : "0xff"
9824 }
9825 }
9826 }
9827 }
9828 ],
9829 "source_info" : {
9830 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07009831 "line" : 103,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009832 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -07009833 "source_fragment" : "= fmeta.int_meta.new_words + 2; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009834 }
9835 },
9836 {
9837 "op" : "assign",
9838 "parameters" : [
9839 {
9840 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009841 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009842 },
9843 {
9844 "type" : "expression",
9845 "value" : {
9846 "type" : "expression",
9847 "value" : {
9848 "op" : "&",
9849 "left" : {
9850 "type" : "expression",
9851 "value" : {
9852 "op" : "+",
9853 "left" : {
9854 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -07009855 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009856 },
9857 "right" : {
9858 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -07009859 "value" : "0x0008"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009860 }
9861 }
9862 },
9863 "right" : {
9864 "type" : "hexstr",
9865 "value" : "0xffff"
9866 }
9867 }
9868 }
9869 }
9870 ],
9871 "source_info" : {
9872 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -07009873 "line" : 104,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -08009874 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -07009875 "source_fragment" : "= fmeta.int_meta.new_bytes + 8; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009876 }
9877 }
9878 ]
9879 },
9880 {
Daniele Moro5a2de712019-09-24 14:34:07 -07009881 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009882 "id" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009883 "runtime_data" : [],
9884 "primitives" : [
9885 {
9886 "op" : "add_header",
9887 "parameters" : [
9888 {
9889 "type" : "header",
9890 "value" : "int_egress_tx_util"
9891 }
9892 ],
9893 "source_info" : {
9894 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009895 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009896 "column" : 8,
9897 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
9898 }
9899 },
9900 {
9901 "op" : "assign",
9902 "parameters" : [
9903 {
9904 "type" : "field",
9905 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
9906 },
9907 {
9908 "type" : "hexstr",
9909 "value" : "0x00000000"
9910 }
9911 ],
9912 "source_info" : {
9913 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009914 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009915 "column" : 8,
9916 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
9917 }
9918 },
9919 {
9920 "op" : "add_header",
9921 "parameters" : [
9922 {
9923 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -07009924 "value" : "int_egress_tstamp"
9925 }
9926 ],
9927 "source_info" : {
9928 "filename" : "include/int/int_transit.p4",
9929 "line" : 74,
9930 "column" : 8,
9931 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
9932 }
9933 },
9934 {
9935 "op" : "assign",
9936 "parameters" : [
9937 {
9938 "type" : "field",
9939 "value" : ["int_egress_tstamp", "egress_tstamp"]
9940 },
9941 {
9942 "type" : "expression",
9943 "value" : {
9944 "type" : "expression",
9945 "value" : {
9946 "op" : "&",
9947 "left" : {
9948 "type" : "expression",
9949 "value" : {
9950 "op" : "+",
9951 "left" : {
9952 "type" : "field",
9953 "value" : ["standard_metadata", "enq_timestamp"]
9954 },
9955 "right" : {
9956 "type" : "field",
9957 "value" : ["standard_metadata", "deq_timedelta"]
9958 }
9959 }
9960 },
9961 "right" : {
9962 "type" : "hexstr",
9963 "value" : "0xffffffff"
9964 }
9965 }
9966 }
9967 }
9968 ],
9969 "source_info" : {
9970 "filename" : "include/int/int_transit.p4",
9971 "line" : 75,
9972 "column" : 8,
9973 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
9974 }
9975 },
9976 {
9977 "op" : "add_header",
9978 "parameters" : [
9979 {
9980 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009981 "value" : "int_ingress_tstamp"
9982 }
9983 ],
9984 "source_info" : {
9985 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -08009986 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -07009987 "column" : 8,
9988 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
9989 }
9990 },
9991 {
9992 "op" : "assign",
9993 "parameters" : [
9994 {
9995 "type" : "field",
9996 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
9997 },
9998 {
9999 "type" : "field",
10000 "value" : ["standard_metadata", "enq_timestamp"]
10001 }
10002 ],
10003 "source_info" : {
10004 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010005 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010006 "column" : 8,
10007 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10008 }
10009 },
10010 {
10011 "op" : "assign",
10012 "parameters" : [
10013 {
10014 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010015 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010016 },
10017 {
10018 "type" : "expression",
10019 "value" : {
10020 "type" : "expression",
10021 "value" : {
10022 "op" : "&",
10023 "left" : {
10024 "type" : "expression",
10025 "value" : {
10026 "op" : "+",
10027 "left" : {
10028 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010029 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010030 },
10031 "right" : {
10032 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -070010033 "value" : "0x03"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010034 }
10035 }
10036 },
10037 "right" : {
10038 "type" : "hexstr",
10039 "value" : "0xff"
10040 }
10041 }
10042 }
10043 }
10044 ],
10045 "source_info" : {
10046 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -070010047 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010048 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -070010049 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010050 }
10051 },
10052 {
10053 "op" : "assign",
10054 "parameters" : [
10055 {
10056 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010057 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010058 },
10059 {
10060 "type" : "expression",
10061 "value" : {
10062 "type" : "expression",
10063 "value" : {
10064 "op" : "&",
10065 "left" : {
10066 "type" : "expression",
10067 "value" : {
10068 "op" : "+",
10069 "left" : {
10070 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010071 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010072 },
10073 "right" : {
10074 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -070010075 "value" : "0x000c"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010076 }
10077 }
10078 },
10079 "right" : {
10080 "type" : "hexstr",
10081 "value" : "0xffff"
10082 }
10083 }
10084 }
10085 }
10086 ],
10087 "source_info" : {
10088 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -070010089 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010090 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -070010091 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010092 }
10093 }
10094 ]
10095 },
10096 {
Daniele Moro5a2de712019-09-24 14:34:07 -070010097 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010098 "id" : 91,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010099 "runtime_data" : [],
10100 "primitives" : [
10101 {
10102 "op" : "add_header",
10103 "parameters" : [
10104 {
10105 "type" : "header",
10106 "value" : "int_q_congestion"
10107 }
10108 ],
10109 "source_info" : {
10110 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010111 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010112 "column" : 8,
10113 "source_fragment" : "hdr.int_q_congestion.setValid()"
10114 }
10115 },
10116 {
10117 "op" : "assign",
10118 "parameters" : [
10119 {
10120 "type" : "field",
10121 "value" : ["int_q_congestion", "q_id"]
10122 },
10123 {
10124 "type" : "hexstr",
10125 "value" : "0x00"
10126 }
10127 ],
10128 "source_info" : {
10129 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010130 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010131 "column" : 8,
10132 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10133 }
10134 },
10135 {
10136 "op" : "assign",
10137 "parameters" : [
10138 {
10139 "type" : "field",
10140 "value" : ["int_q_congestion", "q_congestion"]
10141 },
10142 {
10143 "type" : "hexstr",
10144 "value" : "0x000000"
10145 }
10146 ],
10147 "source_info" : {
10148 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010149 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010150 "column" : 8,
10151 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10152 }
10153 },
10154 {
10155 "op" : "add_header",
10156 "parameters" : [
10157 {
10158 "type" : "header",
Daniele Moro5a2de712019-09-24 14:34:07 -070010159 "value" : "int_egress_tstamp"
10160 }
10161 ],
10162 "source_info" : {
10163 "filename" : "include/int/int_transit.p4",
10164 "line" : 74,
10165 "column" : 8,
10166 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10167 }
10168 },
10169 {
10170 "op" : "assign",
10171 "parameters" : [
10172 {
10173 "type" : "field",
10174 "value" : ["int_egress_tstamp", "egress_tstamp"]
10175 },
10176 {
10177 "type" : "expression",
10178 "value" : {
10179 "type" : "expression",
10180 "value" : {
10181 "op" : "&",
10182 "left" : {
10183 "type" : "expression",
10184 "value" : {
10185 "op" : "+",
10186 "left" : {
10187 "type" : "field",
10188 "value" : ["standard_metadata", "enq_timestamp"]
10189 },
10190 "right" : {
10191 "type" : "field",
10192 "value" : ["standard_metadata", "deq_timedelta"]
10193 }
10194 }
10195 },
10196 "right" : {
10197 "type" : "hexstr",
10198 "value" : "0xffffffff"
10199 }
10200 }
10201 }
10202 }
10203 ],
10204 "source_info" : {
10205 "filename" : "include/int/int_transit.p4",
10206 "line" : 75,
10207 "column" : 8,
10208 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10209 }
10210 },
10211 {
10212 "op" : "add_header",
10213 "parameters" : [
10214 {
10215 "type" : "header",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010216 "value" : "int_ingress_tstamp"
10217 }
10218 ],
10219 "source_info" : {
10220 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010221 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010222 "column" : 8,
10223 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10224 }
10225 },
10226 {
10227 "op" : "assign",
10228 "parameters" : [
10229 {
10230 "type" : "field",
10231 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10232 },
10233 {
10234 "type" : "field",
10235 "value" : ["standard_metadata", "enq_timestamp"]
10236 }
10237 ],
10238 "source_info" : {
10239 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010240 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010241 "column" : 8,
10242 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10243 }
10244 },
10245 {
10246 "op" : "assign",
10247 "parameters" : [
10248 {
10249 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010250 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010251 },
10252 {
10253 "type" : "expression",
10254 "value" : {
10255 "type" : "expression",
10256 "value" : {
10257 "op" : "&",
10258 "left" : {
10259 "type" : "expression",
10260 "value" : {
10261 "op" : "+",
10262 "left" : {
10263 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010264 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010265 },
10266 "right" : {
10267 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -070010268 "value" : "0x03"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010269 }
10270 }
10271 },
10272 "right" : {
10273 "type" : "hexstr",
10274 "value" : "0xff"
10275 }
10276 }
10277 }
10278 }
10279 ],
10280 "source_info" : {
10281 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -070010282 "line" : 109,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010283 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -070010284 "source_fragment" : "= fmeta.int_meta.new_words + 3; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010285 }
10286 },
10287 {
10288 "op" : "assign",
10289 "parameters" : [
10290 {
10291 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010292 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010293 },
10294 {
10295 "type" : "expression",
10296 "value" : {
10297 "type" : "expression",
10298 "value" : {
10299 "op" : "&",
10300 "left" : {
10301 "type" : "expression",
10302 "value" : {
10303 "op" : "+",
10304 "left" : {
10305 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010306 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010307 },
10308 "right" : {
10309 "type" : "hexstr",
Daniele Moro5a2de712019-09-24 14:34:07 -070010310 "value" : "0x000c"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010311 }
10312 }
10313 },
10314 "right" : {
10315 "type" : "hexstr",
10316 "value" : "0xffff"
10317 }
10318 }
10319 }
10320 }
10321 ],
10322 "source_info" : {
10323 "filename" : "include/int/int_transit.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -070010324 "line" : 110,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010325 "column" : 33,
Daniele Moro5a2de712019-09-24 14:34:07 -070010326 "source_fragment" : "= fmeta.int_meta.new_bytes + 12; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010327 }
10328 }
10329 ]
10330 },
10331 {
Daniele Moro5a2de712019-09-24 14:34:07 -070010332 "name" : "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010333 "id" : 92,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010334 "runtime_data" : [],
10335 "primitives" : [
10336 {
10337 "op" : "add_header",
10338 "parameters" : [
10339 {
10340 "type" : "header",
10341 "value" : "int_egress_tx_util"
10342 }
10343 ],
10344 "source_info" : {
10345 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010346 "line" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010347 "column" : 8,
10348 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
10349 }
10350 },
10351 {
10352 "op" : "assign",
10353 "parameters" : [
10354 {
10355 "type" : "field",
10356 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
10357 },
10358 {
10359 "type" : "hexstr",
10360 "value" : "0x00000000"
10361 }
10362 ],
10363 "source_info" : {
10364 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010365 "line" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010366 "column" : 8,
10367 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = 32w0"
10368 }
10369 },
10370 {
10371 "op" : "add_header",
10372 "parameters" : [
10373 {
10374 "type" : "header",
10375 "value" : "int_q_congestion"
10376 }
10377 ],
10378 "source_info" : {
10379 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010380 "line" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010381 "column" : 8,
10382 "source_fragment" : "hdr.int_q_congestion.setValid()"
10383 }
10384 },
10385 {
10386 "op" : "assign",
10387 "parameters" : [
10388 {
10389 "type" : "field",
10390 "value" : ["int_q_congestion", "q_id"]
10391 },
10392 {
10393 "type" : "hexstr",
10394 "value" : "0x00"
10395 }
10396 ],
10397 "source_info" : {
10398 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010399 "line" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010400 "column" : 8,
10401 "source_fragment" : "hdr.int_q_congestion.q_id = 8w0"
10402 }
10403 },
10404 {
10405 "op" : "assign",
10406 "parameters" : [
10407 {
10408 "type" : "field",
10409 "value" : ["int_q_congestion", "q_congestion"]
10410 },
10411 {
10412 "type" : "hexstr",
10413 "value" : "0x000000"
10414 }
10415 ],
10416 "source_info" : {
10417 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010418 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010419 "column" : 8,
10420 "source_fragment" : "hdr.int_q_congestion.q_congestion = 24w0"
10421 }
10422 },
10423 {
10424 "op" : "add_header",
10425 "parameters" : [
10426 {
10427 "type" : "header",
10428 "value" : "int_egress_tstamp"
10429 }
10430 ],
10431 "source_info" : {
10432 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010433 "line" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010434 "column" : 8,
10435 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
10436 }
10437 },
10438 {
10439 "op" : "assign",
10440 "parameters" : [
10441 {
10442 "type" : "field",
10443 "value" : ["int_egress_tstamp", "egress_tstamp"]
10444 },
10445 {
10446 "type" : "expression",
10447 "value" : {
10448 "type" : "expression",
10449 "value" : {
10450 "op" : "&",
10451 "left" : {
10452 "type" : "expression",
10453 "value" : {
10454 "op" : "+",
10455 "left" : {
10456 "type" : "field",
10457 "value" : ["standard_metadata", "enq_timestamp"]
10458 },
10459 "right" : {
10460 "type" : "field",
10461 "value" : ["standard_metadata", "deq_timedelta"]
10462 }
10463 }
10464 },
10465 "right" : {
10466 "type" : "hexstr",
10467 "value" : "0xffffffff"
10468 }
10469 }
10470 }
10471 }
10472 ],
10473 "source_info" : {
10474 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010475 "line" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010476 "column" : 8,
10477 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = (bit<32>) smeta.enq_timestamp + (bit<32>) smeta.deq_timedelta"
10478 }
10479 },
10480 {
10481 "op" : "add_header",
10482 "parameters" : [
10483 {
10484 "type" : "header",
10485 "value" : "int_ingress_tstamp"
10486 }
10487 ],
10488 "source_info" : {
10489 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010490 "line" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010491 "column" : 8,
10492 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
10493 }
10494 },
10495 {
10496 "op" : "assign",
10497 "parameters" : [
10498 {
10499 "type" : "field",
10500 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
10501 },
10502 {
10503 "type" : "field",
10504 "value" : ["standard_metadata", "enq_timestamp"]
10505 }
10506 ],
10507 "source_info" : {
10508 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010509 "line" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010510 "column" : 8,
10511 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = (bit<32>) smeta.enq_timestamp"
10512 }
10513 },
10514 {
10515 "op" : "assign",
10516 "parameters" : [
10517 {
10518 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010519 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010520 },
10521 {
10522 "type" : "expression",
10523 "value" : {
10524 "type" : "expression",
10525 "value" : {
10526 "op" : "&",
10527 "left" : {
10528 "type" : "expression",
10529 "value" : {
10530 "op" : "+",
10531 "left" : {
10532 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010533 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010534 },
10535 "right" : {
10536 "type" : "hexstr",
10537 "value" : "0x04"
10538 }
10539 }
10540 },
10541 "right" : {
10542 "type" : "hexstr",
10543 "value" : "0xff"
10544 }
10545 }
10546 }
10547 }
10548 ],
10549 "source_info" : {
10550 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010551 "line" : 115,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010552 "column" : 33,
10553 "source_fragment" : "= fmeta.int_meta.new_words + 4; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010554 }
10555 },
10556 {
10557 "op" : "assign",
10558 "parameters" : [
10559 {
10560 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010561 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010562 },
10563 {
10564 "type" : "expression",
10565 "value" : {
10566 "type" : "expression",
10567 "value" : {
10568 "op" : "&",
10569 "left" : {
10570 "type" : "expression",
10571 "value" : {
10572 "op" : "+",
10573 "left" : {
10574 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010575 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010576 },
10577 "right" : {
10578 "type" : "hexstr",
10579 "value" : "0x0010"
10580 }
10581 }
10582 },
10583 "right" : {
10584 "type" : "hexstr",
10585 "value" : "0xffff"
10586 }
10587 }
10588 }
10589 }
10590 ],
10591 "source_info" : {
10592 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010593 "line" : 116,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010594 "column" : 33,
10595 "source_fragment" : "= fmeta.int_meta.new_bytes + 16; ..."
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010596 }
10597 }
10598 ]
10599 },
10600 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010601 "name" : "FabricEgress.egress_next.pop_mpls_if_present",
Daniele Moro5a2de712019-09-24 14:34:07 -070010602 "id" : 93,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010603 "runtime_data" : [],
10604 "primitives" : [
10605 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010606 "op" : "remove_header",
10607 "parameters" : [
10608 {
10609 "type" : "header",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010610 "value" : "mpls"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010611 }
10612 ],
10613 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010614 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010615 "line" : 270,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010616 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010617 "source_fragment" : "hdr.mpls.setInvalid()"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010618 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010619 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010620 {
10621 "op" : "assign",
10622 "parameters" : [
10623 {
10624 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010625 "value" : ["eth_type", "value"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010626 },
10627 {
10628 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010629 "value" : ["scalars", "fabric_metadata_t._ip_eth_type0"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010630 }
10631 ],
10632 "source_info" : {
10633 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010634 "line" : 272,
Daniele Moro5a2de712019-09-24 14:34:07 -070010635 "column" : 8,
10636 "source_fragment" : "hdr.eth_type.value = fabric_metadata.ip_eth_type; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010637 }
10638 }
10639 ]
10640 },
10641 {
10642 "name" : "FabricEgress.egress_next.set_mpls",
Daniele Moro5a2de712019-09-24 14:34:07 -070010643 "id" : 94,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010644 "runtime_data" : [],
10645 "primitives" : [
10646 {
10647 "op" : "add_header",
10648 "parameters" : [
10649 {
10650 "type" : "header",
10651 "value" : "mpls"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010652 }
10653 ],
10654 "source_info" : {
10655 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010656 "line" : 277,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010657 "column" : 8,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010658 "source_fragment" : "hdr.mpls.setValid()"
10659 }
10660 },
10661 {
10662 "op" : "assign",
10663 "parameters" : [
10664 {
10665 "type" : "field",
10666 "value" : ["mpls", "label"]
10667 },
10668 {
10669 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010670 "value" : ["scalars", "fabric_metadata_t._mpls_label4"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010671 }
10672 ],
10673 "source_info" : {
10674 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010675 "line" : 278,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010676 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010677 "source_fragment" : "hdr.mpls.label = fabric_metadata.mpls_label; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010678 }
10679 },
10680 {
10681 "op" : "assign",
10682 "parameters" : [
10683 {
10684 "type" : "field",
10685 "value" : ["mpls", "tc"]
10686 },
10687 {
10688 "type" : "hexstr",
10689 "value" : "0x00"
10690 }
10691 ],
10692 "source_info" : {
10693 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010694 "line" : 279,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010695 "column" : 8,
10696 "source_fragment" : "hdr.mpls.tc = 3w0"
10697 }
10698 },
10699 {
10700 "op" : "assign",
10701 "parameters" : [
10702 {
10703 "type" : "field",
10704 "value" : ["mpls", "bos"]
10705 },
10706 {
10707 "type" : "hexstr",
10708 "value" : "0x01"
10709 }
10710 ],
10711 "source_info" : {
10712 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010713 "line" : 280,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010714 "column" : 8,
10715 "source_fragment" : "hdr.mpls.bos = 1w1"
10716 }
10717 },
10718 {
10719 "op" : "assign",
10720 "parameters" : [
10721 {
10722 "type" : "field",
10723 "value" : ["mpls", "ttl"]
10724 },
10725 {
10726 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010727 "value" : ["scalars", "fabric_metadata_t._mpls_ttl5"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010728 }
10729 ],
10730 "source_info" : {
10731 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010732 "line" : 281,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010733 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010734 "source_fragment" : "hdr.mpls.ttl = fabric_metadata.mpls_ttl; // Decrement after push. ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010735 }
10736 },
10737 {
10738 "op" : "assign",
10739 "parameters" : [
10740 {
10741 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010742 "value" : ["eth_type", "value"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010743 },
10744 {
10745 "type" : "hexstr",
10746 "value" : "0x8847"
10747 }
10748 ],
10749 "source_info" : {
10750 "filename" : "include/control/../define.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -070010751 "line" : 112,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010752 "column" : 31,
10753 "source_fragment" : "0x8847; ..."
10754 }
10755 }
10756 ]
10757 },
10758 {
10759 "name" : "FabricEgress.egress_next.push_vlan",
Daniele Moro5a2de712019-09-24 14:34:07 -070010760 "id" : 95,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010761 "runtime_data" : [],
10762 "primitives" : [
10763 {
10764 "op" : "add_header",
10765 "parameters" : [
10766 {
10767 "type" : "header",
10768 "value" : "vlan_tag"
10769 }
10770 ],
10771 "source_info" : {
10772 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010773 "line" : 289,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010774 "column" : 8,
10775 "source_fragment" : "hdr.vlan_tag.setValid()"
10776 }
10777 },
10778 {
10779 "op" : "assign",
10780 "parameters" : [
10781 {
10782 "type" : "field",
10783 "value" : ["vlan_tag", "cfi"]
10784 },
10785 {
10786 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010787 "value" : ["scalars", "fabric_metadata_t._vlan_cfi3"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010788 }
10789 ],
10790 "source_info" : {
10791 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010792 "line" : 290,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010793 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010794 "source_fragment" : "hdr.vlan_tag.cfi = fabric_metadata.vlan_cfi; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010795 }
10796 },
10797 {
10798 "op" : "assign",
10799 "parameters" : [
10800 {
10801 "type" : "field",
10802 "value" : ["vlan_tag", "pri"]
10803 },
10804 {
10805 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010806 "value" : ["scalars", "fabric_metadata_t._vlan_pri2"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010807 }
10808 ],
10809 "source_info" : {
10810 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010811 "line" : 291,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010812 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010813 "source_fragment" : "hdr.vlan_tag.pri = fabric_metadata.vlan_pri; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010814 }
10815 },
10816 {
10817 "op" : "assign",
10818 "parameters" : [
10819 {
10820 "type" : "field",
10821 "value" : ["vlan_tag", "eth_type"]
10822 },
10823 {
Daniele Moro5a2de712019-09-24 14:34:07 -070010824 "type" : "hexstr",
10825 "value" : "0x8100"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010826 }
10827 ],
10828 "source_info" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070010829 "filename" : "include/control/../define.p4",
10830 "line" : 111,
10831 "column" : 31,
10832 "source_fragment" : "0x8100; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010833 }
10834 },
10835 {
10836 "op" : "assign",
10837 "parameters" : [
10838 {
10839 "type" : "field",
10840 "value" : ["vlan_tag", "vlan_id"]
10841 },
10842 {
10843 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070010844 "value" : ["scalars", "fabric_metadata_t._vlan_id1"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010845 }
10846 ],
10847 "source_info" : {
10848 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010849 "line" : 293,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010850 "column" : 8,
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080010851 "source_fragment" : "hdr.vlan_tag.vlan_id = fabric_metadata.vlan_id; ..."
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010852 }
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010853 }
10854 ]
10855 },
10856 {
10857 "name" : "FabricEgress.egress_next.pop_vlan",
Daniele Moro5a2de712019-09-24 14:34:07 -070010858 "id" : 96,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010859 "runtime_data" : [],
10860 "primitives" : [
10861 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010862 "op" : "remove_header",
10863 "parameters" : [
10864 {
10865 "type" : "header",
10866 "value" : "vlan_tag"
10867 }
10868 ],
10869 "source_info" : {
10870 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010871 "line" : 316,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010872 "column" : 8,
10873 "source_fragment" : "hdr.vlan_tag.setInvalid()"
10874 }
10875 }
10876 ]
10877 },
10878 {
Daniele Moro5a2de712019-09-24 14:34:07 -070010879 "name" : "act_19",
10880 "id" : 97,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010881 "runtime_data" : [],
10882 "primitives" : [
10883 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010884 "op" : "exit",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010885 "parameters" : [],
10886 "source_info" : {
10887 "filename" : "include/control/packetio.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010888 "line" : 41,
10889 "column" : 12,
10890 "source_fragment" : "exit"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010891 }
10892 }
10893 ]
10894 },
10895 {
Daniele Moro5a2de712019-09-24 14:34:07 -070010896 "name" : "act_20",
10897 "id" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010898 "runtime_data" : [],
10899 "primitives" : [
10900 {
10901 "op" : "add_header",
10902 "parameters" : [
10903 {
10904 "type" : "header",
10905 "value" : "packet_in"
10906 }
10907 ],
10908 "source_info" : {
10909 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010910 "line" : 44,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010911 "column" : 12,
10912 "source_fragment" : "hdr.packet_in.setValid()"
10913 }
10914 },
10915 {
10916 "op" : "assign",
10917 "parameters" : [
10918 {
10919 "type" : "field",
10920 "value" : ["packet_in", "ingress_port"]
10921 },
10922 {
10923 "type" : "field",
10924 "value" : ["standard_metadata", "ingress_port"]
10925 }
10926 ],
10927 "source_info" : {
10928 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010929 "line" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010930 "column" : 12,
10931 "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
10932 }
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010933 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010934 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010935 "op" : "exit",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010936 "parameters" : [],
10937 "source_info" : {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010938 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070010939 "line" : 47,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010940 "column" : 12,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010941 "source_fragment" : "exit"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010942 }
10943 }
10944 ]
10945 },
10946 {
Daniele Moro5a2de712019-09-24 14:34:07 -070010947 "name" : "act_21",
10948 "id" : 99,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010949 "runtime_data" : [],
10950 "primitives" : [
10951 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010952 "op" : "mark_to_drop",
10953 "parameters" : [
10954 {
10955 "type" : "header",
10956 "value" : "standard_metadata"
10957 }
10958 ],
10959 "source_info" : {
10960 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070010961 "line" : 337,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010962 "column" : 12,
10963 "source_fragment" : "mark_to_drop(standard_metadata)"
10964 }
10965 }
10966 ]
10967 },
10968 {
Daniele Moro5a2de712019-09-24 14:34:07 -070010969 "name" : "act_22",
10970 "id" : 100,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070010971 "runtime_data" : [],
10972 "primitives" : [
10973 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070010974 "op" : "assign",
10975 "parameters" : [
10976 {
10977 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080010978 "value" : ["scalars", "egress_next_tmp"]
10979 },
10980 {
10981 "type" : "expression",
10982 "value" : {
10983 "type" : "expression",
10984 "value" : {
10985 "op" : "b2d",
10986 "left" : null,
10987 "right" : {
10988 "type" : "bool",
10989 "value" : true
10990 }
10991 }
10992 }
10993 }
10994 ]
10995 }
10996 ]
10997 },
10998 {
Daniele Moro5a2de712019-09-24 14:34:07 -070010999 "name" : "act_23",
11000 "id" : 101,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011001 "runtime_data" : [],
11002 "primitives" : [
11003 {
11004 "op" : "assign",
11005 "parameters" : [
11006 {
11007 "type" : "field",
11008 "value" : ["scalars", "egress_next_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011009 },
11010 {
11011 "type" : "expression",
11012 "value" : {
11013 "type" : "expression",
11014 "value" : {
11015 "op" : "b2d",
11016 "left" : null,
11017 "right" : {
11018 "type" : "bool",
11019 "value" : false
11020 }
11021 }
11022 }
11023 }
11024 ]
11025 }
11026 ]
11027 },
11028 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011029 "name" : "act_24",
11030 "id" : 102,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011031 "runtime_data" : [],
11032 "primitives" : [
11033 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011034 "op" : "mark_to_drop",
11035 "parameters" : [
11036 {
11037 "type" : "header",
11038 "value" : "standard_metadata"
11039 }
11040 ],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011041 "source_info" : {
11042 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070011043 "line" : 370,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011044 "column" : 35,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011045 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011046 }
11047 }
11048 ]
11049 },
11050 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011051 "name" : "act_25",
11052 "id" : 103,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011053 "runtime_data" : [],
11054 "primitives" : [
11055 {
11056 "op" : "assign",
11057 "parameters" : [
11058 {
11059 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011060 "value" : ["mpls", "ttl"]
11061 },
11062 {
11063 "type" : "expression",
11064 "value" : {
11065 "type" : "expression",
11066 "value" : {
11067 "op" : "&",
11068 "left" : {
11069 "type" : "expression",
11070 "value" : {
11071 "op" : "+",
11072 "left" : {
11073 "type" : "field",
11074 "value" : ["mpls", "ttl"]
11075 },
11076 "right" : {
11077 "type" : "hexstr",
11078 "value" : "0xff"
11079 }
11080 }
11081 },
11082 "right" : {
11083 "type" : "hexstr",
11084 "value" : "0xff"
11085 }
11086 }
11087 }
11088 }
11089 ],
11090 "source_info" : {
11091 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070011092 "line" : 369,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011093 "column" : 12,
11094 "source_fragment" : "hdr.mpls.ttl = hdr.mpls.ttl - 1"
11095 }
11096 }
11097 ]
11098 },
11099 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011100 "name" : "act_26",
11101 "id" : 104,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011102 "runtime_data" : [],
11103 "primitives" : [
11104 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011105 "op" : "mark_to_drop",
11106 "parameters" : [
11107 {
11108 "type" : "header",
11109 "value" : "standard_metadata"
11110 }
11111 ],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011112 "source_info" : {
11113 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070011114 "line" : 374,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011115 "column" : 39,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011116 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011117 }
11118 }
11119 ]
11120 },
11121 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011122 "name" : "act_27",
11123 "id" : 105,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011124 "runtime_data" : [],
11125 "primitives" : [
11126 {
11127 "op" : "assign",
11128 "parameters" : [
11129 {
11130 "type" : "field",
11131 "value" : ["ipv4", "ttl"]
11132 },
11133 {
11134 "type" : "expression",
11135 "value" : {
11136 "type" : "expression",
11137 "value" : {
11138 "op" : "&",
11139 "left" : {
11140 "type" : "expression",
11141 "value" : {
11142 "op" : "+",
11143 "left" : {
11144 "type" : "field",
11145 "value" : ["ipv4", "ttl"]
11146 },
11147 "right" : {
11148 "type" : "hexstr",
11149 "value" : "0xff"
11150 }
11151 }
11152 },
11153 "right" : {
11154 "type" : "hexstr",
11155 "value" : "0xff"
11156 }
11157 }
11158 }
11159 }
11160 ],
11161 "source_info" : {
11162 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070011163 "line" : 373,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011164 "column" : 16,
11165 "source_fragment" : "hdr.ipv4.ttl = hdr.ipv4.ttl - 1"
11166 }
11167 }
11168 ]
11169 },
11170 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011171 "name" : "act_28",
11172 "id" : 106,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011173 "runtime_data" : [],
11174 "primitives" : [
11175 {
11176 "op" : "assign",
11177 "parameters" : [
11178 {
11179 "type" : "field",
11180 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
11181 },
11182 {
11183 "type" : "expression",
11184 "value" : {
11185 "type" : "expression",
11186 "value" : {
11187 "op" : "b2d",
11188 "left" : null,
11189 "right" : {
11190 "type" : "bool",
11191 "value" : false
11192 }
11193 }
11194 }
11195 }
11196 ]
11197 }
11198 ]
11199 },
11200 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011201 "name" : "act_29",
11202 "id" : 107,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011203 "runtime_data" : [],
11204 "primitives" : [
11205 {
11206 "op" : "assign",
11207 "parameters" : [
11208 {
11209 "type" : "field",
11210 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011211 },
11212 {
11213 "type" : "expression",
11214 "value" : {
11215 "type" : "expression",
11216 "value" : {
11217 "op" : "b2d",
11218 "left" : null,
11219 "right" : {
11220 "type" : "bool",
11221 "value" : true
11222 }
11223 }
11224 }
11225 }
11226 ],
11227 "source_info" : {
11228 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011229 "line" : 420,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011230 "column" : 12,
11231 "source_fragment" : "return"
11232 }
11233 }
11234 ]
11235 },
11236 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011237 "name" : "act_30",
11238 "id" : 108,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011239 "runtime_data" : [],
11240 "primitives" : [
11241 {
11242 "op" : "assign",
11243 "parameters" : [
11244 {
11245 "type" : "field",
11246 "value" : ["ipv4", "total_len"]
11247 },
11248 {
11249 "type" : "expression",
11250 "value" : {
11251 "type" : "expression",
11252 "value" : {
11253 "op" : "&",
11254 "left" : {
11255 "type" : "expression",
11256 "value" : {
11257 "op" : "+",
11258 "left" : {
11259 "type" : "field",
11260 "value" : ["ipv4", "total_len"]
11261 },
11262 "right" : {
11263 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070011264 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011265 }
11266 }
11267 },
11268 "right" : {
11269 "type" : "hexstr",
11270 "value" : "0xffff"
11271 }
11272 }
11273 }
11274 }
11275 ],
11276 "source_info" : {
11277 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011278 "line" : 428,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011279 "column" : 12,
11280 "source_fragment" : "hdr.ipv4.total_len = hdr.ipv4.total_len + fmeta.int_meta.new_bytes"
11281 }
11282 }
11283 ]
11284 },
11285 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011286 "name" : "act_31",
11287 "id" : 109,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011288 "runtime_data" : [],
11289 "primitives" : [
11290 {
11291 "op" : "assign",
11292 "parameters" : [
11293 {
11294 "type" : "field",
11295 "value" : ["int_header", "total_hop_cnt"]
11296 },
11297 {
11298 "type" : "expression",
11299 "value" : {
11300 "type" : "expression",
11301 "value" : {
11302 "op" : "&",
11303 "left" : {
11304 "type" : "expression",
11305 "value" : {
11306 "op" : "+",
11307 "left" : {
11308 "type" : "field",
11309 "value" : ["int_header", "total_hop_cnt"]
11310 },
11311 "right" : {
11312 "type" : "hexstr",
11313 "value" : "0x01"
11314 }
11315 }
11316 },
11317 "right" : {
11318 "type" : "hexstr",
11319 "value" : "0xff"
11320 }
11321 }
11322 }
11323 }
11324 ],
11325 "source_info" : {
11326 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011327 "line" : 425,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011328 "column" : 8,
11329 "source_fragment" : "hdr.int_header.total_hop_cnt = hdr.int_header.total_hop_cnt + 1"
11330 }
11331 }
11332 ]
11333 },
11334 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011335 "name" : "act_32",
11336 "id" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011337 "runtime_data" : [],
11338 "primitives" : [
11339 {
11340 "op" : "assign",
11341 "parameters" : [
11342 {
11343 "type" : "field",
11344 "value" : ["udp", "len"]
11345 },
11346 {
11347 "type" : "expression",
11348 "value" : {
11349 "type" : "expression",
11350 "value" : {
11351 "op" : "&",
11352 "left" : {
11353 "type" : "expression",
11354 "value" : {
11355 "op" : "+",
11356 "left" : {
11357 "type" : "field",
11358 "value" : ["udp", "len"]
11359 },
11360 "right" : {
11361 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070011362 "value" : ["scalars", "fabric_metadata_t._int_meta_new_bytes25"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011363 }
11364 }
11365 },
11366 "right" : {
11367 "type" : "hexstr",
11368 "value" : "0xffff"
11369 }
11370 }
11371 }
11372 }
11373 ],
11374 "source_info" : {
11375 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011376 "line" : 431,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011377 "column" : 12,
11378 "source_fragment" : "hdr.udp.len = hdr.udp.len + fmeta.int_meta.new_bytes"
11379 }
11380 }
11381 ]
11382 },
11383 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011384 "name" : "act_33",
11385 "id" : 111,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011386 "runtime_data" : [],
11387 "primitives" : [
11388 {
11389 "op" : "assign",
11390 "parameters" : [
11391 {
11392 "type" : "field",
11393 "value" : ["intl4_shim", "len_words"]
11394 },
11395 {
11396 "type" : "expression",
11397 "value" : {
11398 "type" : "expression",
11399 "value" : {
11400 "op" : "&",
11401 "left" : {
11402 "type" : "expression",
11403 "value" : {
11404 "op" : "+",
11405 "left" : {
11406 "type" : "field",
11407 "value" : ["intl4_shim", "len_words"]
11408 },
11409 "right" : {
11410 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070011411 "value" : ["scalars", "fabric_metadata_t._int_meta_new_words24"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011412 }
11413 }
11414 },
11415 "right" : {
11416 "type" : "hexstr",
11417 "value" : "0xff"
11418 }
11419 }
11420 }
11421 }
11422 ],
11423 "source_info" : {
11424 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011425 "line" : 434,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011426 "column" : 12,
11427 "source_fragment" : "hdr.intl4_shim.len_words = hdr.intl4_shim.len_words + fmeta.int_meta.new_words"
11428 }
11429 }
11430 ]
11431 }
11432 ],
11433 "pipelines" : [
11434 {
11435 "name" : "ingress",
11436 "id" : 0,
11437 "source_info" : {
11438 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -070011439 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011440 "column" : 8,
11441 "source_fragment" : "FabricIngress"
11442 },
11443 "init_table" : "tbl_act",
11444 "tables" : [
11445 {
11446 "name" : "tbl_act",
11447 "id" : 0,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011448 "source_info" : {
11449 "filename" : "fabric.p4",
Carmelo Cascone4d8785b2019-05-31 17:11:26 -070011450 "line" : 62,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011451 "column" : 50,
11452 "source_fragment" : "hdr.gtpu_ipv4, hdr.gtpu_udp"
11453 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011454 "key" : [],
11455 "match_type" : "exact",
11456 "type" : "simple",
11457 "max_size" : 1024,
11458 "with_counters" : false,
11459 "support_timeout" : false,
11460 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011461 "action_ids" : [34],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011462 "actions" : ["act_0"],
11463 "base_default_next" : "node_3",
11464 "next_tables" : {
11465 "act_0" : "node_3"
11466 },
11467 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011468 "action_id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011469 "action_const" : true,
11470 "action_data" : [],
11471 "action_entry_const" : true
11472 }
11473 },
11474 {
11475 "name" : "tbl_act_0",
11476 "id" : 1,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011477 "source_info" : {
11478 "filename" : "include/spgw.p4",
11479 "line" : 30,
11480 "column" : 32,
11481 "source_fragment" : "return"
11482 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011483 "key" : [],
11484 "match_type" : "exact",
11485 "type" : "simple",
11486 "max_size" : 1024,
11487 "with_counters" : false,
11488 "support_timeout" : false,
11489 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011490 "action_ids" : [33],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011491 "actions" : ["act"],
11492 "base_default_next" : "node_5",
11493 "next_tables" : {
11494 "act" : "node_5"
11495 },
11496 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011497 "action_id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011498 "action_const" : true,
11499 "action_data" : [],
11500 "action_entry_const" : true
11501 }
11502 },
11503 {
11504 "name" : "tbl_act_1",
11505 "id" : 2,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011506 "source_info" : {
11507 "filename" : "include/spgw.p4",
11508 "line" : 31,
11509 "column" : 18,
11510 "source_fragment" : "= ipv4; ..."
11511 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011512 "key" : [],
11513 "match_type" : "exact",
11514 "type" : "simple",
11515 "max_size" : 1024,
11516 "with_counters" : false,
11517 "support_timeout" : false,
11518 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011519 "action_ids" : [37],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011520 "actions" : ["act_3"],
11521 "base_default_next" : "node_7",
11522 "next_tables" : {
11523 "act_3" : "node_7"
11524 },
11525 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011526 "action_id" : 37,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011527 "action_const" : true,
11528 "action_data" : [],
11529 "action_entry_const" : true
11530 }
11531 },
11532 {
11533 "name" : "tbl_act_2",
11534 "id" : 3,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011535 "source_info" : {
11536 "filename" : "include/spgw.p4",
11537 "line" : 35,
11538 "column" : 16,
11539 "source_fragment" : "="
11540 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011541 "key" : [],
11542 "match_type" : "exact",
11543 "type" : "simple",
11544 "max_size" : 1024,
11545 "with_counters" : false,
11546 "support_timeout" : false,
11547 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011548 "action_ids" : [35],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011549 "actions" : ["act_1"],
11550 "base_default_next" : "node_10",
11551 "next_tables" : {
11552 "act_1" : "node_10"
11553 },
11554 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011555 "action_id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011556 "action_const" : true,
11557 "action_data" : [],
11558 "action_entry_const" : true
11559 }
11560 },
11561 {
11562 "name" : "tbl_act_3",
11563 "id" : 4,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011564 "source_info" : {
11565 "filename" : "include/spgw.p4",
11566 "line" : 37,
11567 "column" : 12,
11568 "source_fragment" : "udp.setInvalid()"
11569 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011570 "key" : [],
11571 "match_type" : "exact",
11572 "type" : "simple",
11573 "max_size" : 1024,
11574 "with_counters" : false,
11575 "support_timeout" : false,
11576 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011577 "action_ids" : [36],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011578 "actions" : ["act_2"],
11579 "base_default_next" : "node_10",
11580 "next_tables" : {
11581 "act_2" : "node_10"
11582 },
11583 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011584 "action_id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011585 "action_const" : true,
11586 "action_data" : [],
11587 "action_entry_const" : true
11588 }
11589 },
11590 {
11591 "name" : "tbl_act_4",
11592 "id" : 5,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011593 "source_info" : {
11594 "filename" : "include/control/packetio.p4",
11595 "line" : 25,
11596 "column" : 42,
11597 "source_fragment" : "= hdr.packet_out.egress_port; ..."
11598 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011599 "key" : [],
11600 "match_type" : "exact",
11601 "type" : "simple",
11602 "max_size" : 1024,
11603 "with_counters" : false,
11604 "support_timeout" : false,
11605 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011606 "action_ids" : [38],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011607 "actions" : ["act_4"],
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011608 "base_default_next" : "node_12",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011609 "next_tables" : {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011610 "act_4" : "node_12"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011611 },
11612 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011613 "action_id" : 38,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011614 "action_const" : true,
11615 "action_data" : [],
11616 "action_entry_const" : true
11617 }
11618 },
11619 {
11620 "name" : "tbl_act_5",
11621 "id" : 6,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011622 "source_info" : {
11623 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070011624 "line" : 111,
Daniele Moro7c3a0022019-07-12 13:38:34 -070011625 "column" : 36,
11626 "source_fragment" : "= hdr.vlan_tag.vlan_id; ..."
Carmelo Cascone3032b872019-04-13 01:23:54 -070011627 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011628 "key" : [],
11629 "match_type" : "exact",
11630 "type" : "simple",
11631 "max_size" : 1024,
11632 "with_counters" : false,
11633 "support_timeout" : false,
11634 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011635 "action_ids" : [39],
11636 "actions" : ["act_5"],
11637 "base_default_next" : "node_14",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011638 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011639 "act_5" : "node_14"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011640 },
11641 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011642 "action_id" : 39,
11643 "action_const" : true,
11644 "action_data" : [],
11645 "action_entry_const" : true
11646 }
11647 },
11648 {
11649 "name" : "tbl_act_6",
11650 "id" : 7,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011651 "source_info" : {
11652 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070011653 "line" : 127,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011654 "column" : 37,
11655 "source_fragment" : "="
11656 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011657 "key" : [],
11658 "match_type" : "exact",
11659 "type" : "simple",
11660 "max_size" : 1024,
11661 "with_counters" : false,
11662 "support_timeout" : false,
11663 "direct_meters" : null,
11664 "action_ids" : [40],
11665 "actions" : ["act_6"],
Daniele Moro5a2de712019-09-24 14:34:07 -070011666 "base_default_next" : "FabricIngress.filtering.ingress_port_vlan",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011667 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011668 "act_6" : "FabricIngress.filtering.ingress_port_vlan"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011669 },
11670 "default_entry" : {
11671 "action_id" : 40,
11672 "action_const" : true,
11673 "action_data" : [],
11674 "action_entry_const" : true
11675 }
11676 },
11677 {
Daniele Moro7c3a0022019-07-12 13:38:34 -070011678 "name" : "FabricIngress.filtering.ingress_port_vlan",
Daniele Moro5a2de712019-09-24 14:34:07 -070011679 "id" : 8,
Daniele Moro7c3a0022019-07-12 13:38:34 -070011680 "source_info" : {
11681 "filename" : "include/control/filtering.p4",
11682 "line" : 53,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011683 "column" : 10,
11684 "source_fragment" : "ingress_port_vlan"
11685 },
11686 "key" : [
11687 {
11688 "match_type" : "exact",
11689 "name" : "ig_port",
11690 "target" : ["standard_metadata", "ingress_port"],
11691 "mask" : null
11692 },
11693 {
11694 "match_type" : "exact",
11695 "name" : "vlan_is_valid",
11696 "target" : ["vlan_tag", "$valid$"],
11697 "mask" : null
11698 },
11699 {
11700 "match_type" : "ternary",
11701 "name" : "vlan_id",
11702 "target" : ["vlan_tag", "vlan_id"],
11703 "mask" : null
11704 }
11705 ],
11706 "match_type" : "ternary",
11707 "type" : "simple",
11708 "max_size" : 1024,
11709 "with_counters" : true,
11710 "support_timeout" : false,
11711 "direct_meters" : null,
11712 "action_ids" : [13, 14, 15],
11713 "actions" : ["FabricIngress.filtering.deny", "FabricIngress.filtering.permit", "FabricIngress.filtering.permit_with_internal_vlan"],
11714 "base_default_next" : "FabricIngress.filtering.fwd_classifier",
11715 "next_tables" : {
11716 "FabricIngress.filtering.deny" : "FabricIngress.filtering.fwd_classifier",
11717 "FabricIngress.filtering.permit" : "FabricIngress.filtering.fwd_classifier",
11718 "FabricIngress.filtering.permit_with_internal_vlan" : "FabricIngress.filtering.fwd_classifier"
11719 },
11720 "default_entry" : {
11721 "action_id" : 13,
11722 "action_const" : true,
11723 "action_data" : [],
11724 "action_entry_const" : true
11725 }
11726 },
11727 {
11728 "name" : "FabricIngress.filtering.fwd_classifier",
Daniele Moro5a2de712019-09-24 14:34:07 -070011729 "id" : 9,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011730 "source_info" : {
11731 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070011732 "line" : 92,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011733 "column" : 10,
11734 "source_fragment" : "fwd_classifier"
11735 },
11736 "key" : [
11737 {
11738 "match_type" : "exact",
11739 "name" : "ig_port",
11740 "target" : ["standard_metadata", "ingress_port"],
11741 "mask" : null
11742 },
11743 {
11744 "match_type" : "ternary",
11745 "name" : "eth_dst",
11746 "target" : ["ethernet", "dst_addr"],
11747 "mask" : null
11748 },
11749 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011750 "match_type" : "ternary",
11751 "name" : "eth_type",
11752 "target" : ["eth_type", "value"],
Daniele Moro7c3a0022019-07-12 13:38:34 -070011753 "mask" : null
11754 },
11755 {
11756 "match_type" : "exact",
Daniele Moro5a2de712019-09-24 14:34:07 -070011757 "name" : "ip_eth_type",
11758 "target" : ["scalars", "fabric_metadata_t._ip_eth_type0"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011759 "mask" : null
11760 }
11761 ],
11762 "match_type" : "ternary",
11763 "type" : "simple",
11764 "max_size" : 1024,
11765 "with_counters" : true,
11766 "support_timeout" : false,
11767 "direct_meters" : null,
11768 "action_ids" : [16],
11769 "actions" : ["FabricIngress.filtering.set_forwarding_type"],
Daniele Moro5a2de712019-09-24 14:34:07 -070011770 "base_default_next" : "tbl_act_7",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011771 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011772 "FabricIngress.filtering.set_forwarding_type" : "tbl_act_7"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011773 },
11774 "default_entry" : {
11775 "action_id" : 16,
11776 "action_const" : true,
11777 "action_data" : ["0x0"],
11778 "action_entry_const" : true
11779 }
11780 },
11781 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011782 "name" : "tbl_act_7",
11783 "id" : 10,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011784 "key" : [],
11785 "match_type" : "exact",
11786 "type" : "simple",
11787 "max_size" : 1024,
11788 "with_counters" : false,
11789 "support_timeout" : false,
11790 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070011791 "action_ids" : [49],
11792 "actions" : ["act_15"],
11793 "base_default_next" : "node_19",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011794 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011795 "act_15" : "node_19"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011796 },
11797 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011798 "action_id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011799 "action_const" : true,
11800 "action_data" : [],
11801 "action_entry_const" : true
11802 }
11803 },
11804 {
11805 "name" : "FabricIngress.spgw_ingress.s1u_filter_table",
Daniele Moro5a2de712019-09-24 14:34:07 -070011806 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011807 "source_info" : {
11808 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011809 "line" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011810 "column" : 10,
11811 "source_fragment" : "s1u_filter_table"
11812 },
11813 "key" : [
11814 {
11815 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011816 "name" : "gtp_ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011817 "target" : ["gtpu_ipv4", "dst_addr"],
11818 "mask" : null
11819 }
11820 ],
11821 "match_type" : "exact",
11822 "type" : "simple",
11823 "max_size" : 1024,
11824 "with_counters" : false,
11825 "support_timeout" : false,
11826 "direct_meters" : null,
11827 "action_ids" : [1],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011828 "actions" : ["nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011829 "base_default_next" : null,
11830 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011831 "__HIT__" : "tbl_act_8",
11832 "__MISS__" : "tbl_act_9"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011833 },
11834 "default_entry" : {
11835 "action_id" : 1,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011836 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011837 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011838 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011839 }
11840 },
11841 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011842 "name" : "tbl_act_8",
11843 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011844 "key" : [],
11845 "match_type" : "exact",
11846 "type" : "simple",
11847 "max_size" : 1024,
11848 "with_counters" : false,
11849 "support_timeout" : false,
11850 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070011851 "action_ids" : [41],
11852 "actions" : ["act_7"],
11853 "base_default_next" : "node_23",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011854 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011855 "act_7" : "node_23"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011856 },
11857 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011858 "action_id" : 41,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011859 "action_const" : true,
11860 "action_data" : [],
11861 "action_entry_const" : true
11862 }
11863 },
11864 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011865 "name" : "tbl_act_9",
11866 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011867 "key" : [],
11868 "match_type" : "exact",
11869 "type" : "simple",
11870 "max_size" : 1024,
11871 "with_counters" : false,
11872 "support_timeout" : false,
11873 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070011874 "action_ids" : [42],
11875 "actions" : ["act_8"],
11876 "base_default_next" : "node_23",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011877 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011878 "act_8" : "node_23"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011879 },
11880 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011881 "action_id" : 42,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011882 "action_const" : true,
11883 "action_data" : [],
11884 "action_entry_const" : true
11885 }
11886 },
11887 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011888 "name" : "tbl_act_10",
11889 "id" : 14,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011890 "source_info" : {
11891 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011892 "line" : 149,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011893 "column" : 16,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011894 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Cascone3032b872019-04-13 01:23:54 -070011895 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011896 "key" : [],
11897 "match_type" : "exact",
11898 "type" : "simple",
11899 "max_size" : 1024,
11900 "with_counters" : false,
11901 "support_timeout" : false,
11902 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070011903 "action_ids" : [43],
11904 "actions" : ["act_9"],
11905 "base_default_next" : "tbl_act_11",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011906 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011907 "act_9" : "tbl_act_11"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011908 },
11909 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011910 "action_id" : 43,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011911 "action_const" : true,
11912 "action_data" : [],
11913 "action_entry_const" : true
11914 }
11915 },
11916 {
Daniele Moro5a2de712019-09-24 14:34:07 -070011917 "name" : "tbl_act_11",
11918 "id" : 15,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011919 "source_info" : {
11920 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011921 "line" : 151,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011922 "column" : 39,
11923 "source_fragment" : "="
11924 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011925 "key" : [],
11926 "match_type" : "exact",
11927 "type" : "simple",
11928 "max_size" : 1024,
11929 "with_counters" : false,
11930 "support_timeout" : false,
11931 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070011932 "action_ids" : [44],
11933 "actions" : ["act_10"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011934 "base_default_next" : "tbl_spgw_ingress_gtpu_decap",
11935 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011936 "act_10" : "tbl_spgw_ingress_gtpu_decap"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011937 },
11938 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011939 "action_id" : 44,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011940 "action_const" : true,
11941 "action_data" : [],
11942 "action_entry_const" : true
11943 }
11944 },
11945 {
11946 "name" : "tbl_spgw_ingress_gtpu_decap",
Daniele Moro5a2de712019-09-24 14:34:07 -070011947 "id" : 16,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011948 "source_info" : {
11949 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011950 "line" : 152,
Carmelo Cascone3032b872019-04-13 01:23:54 -070011951 "column" : 12,
11952 "source_fragment" : "gtpu_decap()"
11953 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011954 "key" : [],
11955 "match_type" : "exact",
11956 "type" : "simple",
11957 "max_size" : 1024,
11958 "with_counters" : false,
11959 "support_timeout" : false,
11960 "direct_meters" : null,
11961 "action_ids" : [10],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011962 "actions" : ["FabricIngress.spgw_ingress.gtpu_decap"],
Daniele Moro5a2de712019-09-24 14:34:07 -070011963 "base_default_next" : "node_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011964 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070011965 "FabricIngress.spgw_ingress.gtpu_decap" : "node_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011966 },
11967 "default_entry" : {
11968 "action_id" : 10,
11969 "action_const" : true,
11970 "action_data" : [],
11971 "action_entry_const" : true
11972 }
11973 },
11974 {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011975 "name" : "FabricIngress.spgw_ingress.dl_sess_lookup",
Daniele Moro5a2de712019-09-24 14:34:07 -070011976 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011977 "source_info" : {
11978 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070011979 "line" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011980 "column" : 10,
11981 "source_fragment" : "dl_sess_lookup"
11982 },
11983 "key" : [
11984 {
11985 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011986 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011987 "target" : ["ipv4", "dst_addr"],
11988 "mask" : null
11989 }
11990 ],
11991 "match_type" : "exact",
11992 "type" : "simple",
11993 "max_size" : 1024,
11994 "with_counters" : true,
11995 "support_timeout" : false,
11996 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080011997 "action_ids" : [11, 0],
11998 "actions" : ["FabricIngress.spgw_ingress.set_dl_sess_info", "nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070011999 "base_default_next" : null,
12000 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012001 "__HIT__" : "tbl_act_12",
12002 "__MISS__" : "tbl_act_13"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012003 },
12004 "default_entry" : {
12005 "action_id" : 0,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012006 "action_const" : true,
12007 "action_data" : [],
12008 "action_entry_const" : true
12009 }
12010 },
12011 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012012 "name" : "tbl_act_12",
12013 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012014 "key" : [],
12015 "match_type" : "exact",
12016 "type" : "simple",
12017 "max_size" : 1024,
12018 "with_counters" : false,
12019 "support_timeout" : false,
12020 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070012021 "action_ids" : [45],
12022 "actions" : ["act_11"],
12023 "base_default_next" : "node_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012024 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012025 "act_11" : "node_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012026 },
12027 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012028 "action_id" : 45,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012029 "action_const" : true,
12030 "action_data" : [],
12031 "action_entry_const" : true
12032 }
12033 },
12034 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012035 "name" : "tbl_act_13",
12036 "id" : 19,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012037 "key" : [],
12038 "match_type" : "exact",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012039 "type" : "simple",
12040 "max_size" : 1024,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012041 "with_counters" : false,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012042 "support_timeout" : false,
12043 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070012044 "action_ids" : [46],
12045 "actions" : ["act_12"],
12046 "base_default_next" : "node_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012047 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012048 "act_12" : "node_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012049 },
12050 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012051 "action_id" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012052 "action_const" : true,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012053 "action_data" : [],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012054 "action_entry_const" : true
12055 }
12056 },
12057 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012058 "name" : "tbl_act_14",
12059 "id" : 20,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012060 "source_info" : {
12061 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012062 "line" : 154,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012063 "column" : 39,
12064 "source_fragment" : "="
12065 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012066 "key" : [],
12067 "match_type" : "exact",
12068 "type" : "simple",
12069 "max_size" : 1024,
12070 "with_counters" : false,
12071 "support_timeout" : false,
12072 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070012073 "action_ids" : [47],
12074 "actions" : ["act_13"],
12075 "base_default_next" : "node_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012076 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012077 "act_13" : "node_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012078 },
12079 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012080 "action_id" : 47,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012081 "action_const" : true,
12082 "action_data" : [],
12083 "action_entry_const" : true
12084 }
12085 },
12086 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012087 "name" : "tbl_act_15",
12088 "id" : 21,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012089 "source_info" : {
12090 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012091 "line" : 156,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012092 "column" : 39,
12093 "source_fragment" : "= SPGW_DIR_UNKNOWN; ..."
12094 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012095 "key" : [],
12096 "match_type" : "exact",
12097 "type" : "simple",
12098 "max_size" : 1024,
12099 "with_counters" : false,
12100 "support_timeout" : false,
12101 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070012102 "action_ids" : [48],
12103 "actions" : ["act_14"],
12104 "base_default_next" : "node_33",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012105 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012106 "act_14" : "node_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012107 },
12108 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012109 "action_id" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012110 "action_const" : true,
12111 "action_data" : [],
12112 "action_entry_const" : true
12113 }
12114 },
12115 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012116 "name" : "tbl_act_16",
12117 "id" : 22,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012118 "source_info" : {
12119 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012120 "line" : 175,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012121 "column" : 34,
12122 "source_fragment" : "="
12123 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012124 "key" : [],
12125 "match_type" : "exact",
12126 "type" : "simple",
12127 "max_size" : 1024,
12128 "with_counters" : false,
12129 "support_timeout" : false,
12130 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070012131 "action_ids" : [50],
12132 "actions" : ["act_16"],
12133 "base_default_next" : "node_35",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012134 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012135 "act_16" : "node_35"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012136 },
12137 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012138 "action_id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012139 "action_const" : true,
12140 "action_data" : [],
12141 "action_entry_const" : true
12142 }
12143 },
12144 {
12145 "name" : "FabricIngress.forwarding.bridging",
Daniele Moro5a2de712019-09-24 14:34:07 -070012146 "id" : 23,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012147 "source_info" : {
12148 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012149 "line" : 46,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012150 "column" : 10,
12151 "source_fragment" : "bridging"
12152 },
12153 "key" : [
12154 {
12155 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012156 "name" : "vlan_id",
Daniele Moro5a2de712019-09-24 14:34:07 -070012157 "target" : ["scalars", "fabric_metadata_t._vlan_id1"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012158 "mask" : null
12159 },
12160 {
12161 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012162 "name" : "eth_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012163 "target" : ["ethernet", "dst_addr"],
12164 "mask" : null
12165 }
12166 ],
12167 "match_type" : "ternary",
12168 "type" : "simple",
12169 "max_size" : 1024,
12170 "with_counters" : true,
12171 "support_timeout" : false,
12172 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012173 "action_ids" : [17, 3],
12174 "actions" : ["FabricIngress.forwarding.set_next_id_bridging", "nop"],
12175 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012176 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012177 "FabricIngress.forwarding.set_next_id_bridging" : "FabricIngress.acl.acl",
12178 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012179 },
12180 "default_entry" : {
12181 "action_id" : 3,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012182 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012183 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012184 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012185 }
12186 },
12187 {
12188 "name" : "FabricIngress.forwarding.mpls",
Daniele Moro5a2de712019-09-24 14:34:07 -070012189 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012190 "source_info" : {
12191 "filename" : "include/control/forwarding.p4",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012192 "line" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012193 "column" : 10,
12194 "source_fragment" : "mpls"
12195 },
12196 "key" : [
12197 {
12198 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012199 "name" : "mpls_label",
Daniele Moro5a2de712019-09-24 14:34:07 -070012200 "target" : ["scalars", "fabric_metadata_t._mpls_label4"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012201 "mask" : null
12202 }
12203 ],
12204 "match_type" : "exact",
12205 "type" : "simple",
12206 "max_size" : 1024,
12207 "with_counters" : true,
12208 "support_timeout" : false,
12209 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012210 "action_ids" : [18, 4],
12211 "actions" : ["FabricIngress.forwarding.pop_mpls_and_next", "nop"],
12212 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012213 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012214 "FabricIngress.forwarding.pop_mpls_and_next" : "FabricIngress.acl.acl",
12215 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012216 },
12217 "default_entry" : {
12218 "action_id" : 4,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012219 "action_const" : true,
12220 "action_data" : [],
12221 "action_entry_const" : true
12222 }
12223 },
12224 {
12225 "name" : "FabricIngress.forwarding.routing_v4",
Daniele Moro5a2de712019-09-24 14:34:07 -070012226 "id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012227 "source_info" : {
12228 "filename" : "include/control/forwarding.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -070012229 "line" : 108,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012230 "column" : 10,
12231 "source_fragment" : "routing_v4"
12232 },
12233 "key" : [
12234 {
12235 "match_type" : "lpm",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012236 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012237 "target" : ["ipv4", "dst_addr"],
12238 "mask" : null
12239 }
12240 ],
12241 "match_type" : "lpm",
12242 "type" : "simple",
12243 "max_size" : 1024,
Daniele Moro5a2de712019-09-24 14:34:07 -070012244 "with_counters" : false,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012245 "support_timeout" : false,
12246 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012247 "action_ids" : [19, 20, 5],
12248 "actions" : ["FabricIngress.forwarding.set_next_id_routing_v4", "FabricIngress.forwarding.nop_routing_v4", "nop"],
12249 "base_default_next" : "FabricIngress.acl.acl",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012250 "next_tables" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012251 "FabricIngress.forwarding.set_next_id_routing_v4" : "FabricIngress.acl.acl",
12252 "FabricIngress.forwarding.nop_routing_v4" : "FabricIngress.acl.acl",
12253 "nop" : "FabricIngress.acl.acl"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012254 },
12255 "default_entry" : {
12256 "action_id" : 5,
CyberHasHe9ba39c2019-10-11 05:59:12 +080012257 "action_const" : false,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012258 "action_data" : [],
CyberHasHe9ba39c2019-10-11 05:59:12 +080012259 "action_entry_const" : false
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012260 }
12261 },
12262 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012263 "name" : "FabricIngress.acl.acl",
Daniele Moro5a2de712019-09-24 14:34:07 -070012264 "id" : 26,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012265 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012266 "filename" : "include/control/acl.p4",
12267 "line" : 60,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012268 "column" : 10,
12269 "source_fragment" : "acl"
12270 },
12271 "key" : [
12272 {
12273 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012274 "name" : "ig_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012275 "target" : ["standard_metadata", "ingress_port"],
12276 "mask" : null
12277 },
12278 {
12279 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012280 "name" : "ip_proto",
Daniele Moro5a2de712019-09-24 14:34:07 -070012281 "target" : ["scalars", "fabric_metadata_t._ip_proto12"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012282 "mask" : null
12283 },
12284 {
12285 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012286 "name" : "l4_sport",
Daniele Moro5a2de712019-09-24 14:34:07 -070012287 "target" : ["scalars", "fabric_metadata_t._l4_sport13"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012288 "mask" : null
12289 },
12290 {
12291 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012292 "name" : "l4_dport",
Daniele Moro5a2de712019-09-24 14:34:07 -070012293 "target" : ["scalars", "fabric_metadata_t._l4_dport14"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012294 "mask" : null
12295 },
12296 {
12297 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012298 "name" : "eth_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012299 "target" : ["ethernet", "dst_addr"],
12300 "mask" : null
12301 },
12302 {
12303 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012304 "name" : "eth_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012305 "target" : ["ethernet", "src_addr"],
12306 "mask" : null
12307 },
12308 {
12309 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012310 "name" : "vlan_id",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012311 "target" : ["vlan_tag", "vlan_id"],
12312 "mask" : null
12313 },
12314 {
12315 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012316 "name" : "eth_type",
Daniele Moro5a2de712019-09-24 14:34:07 -070012317 "target" : ["eth_type", "value"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012318 "mask" : null
12319 },
12320 {
12321 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012322 "name" : "ipv4_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012323 "target" : ["ipv4", "src_addr"],
12324 "mask" : null
12325 },
12326 {
12327 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012328 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012329 "target" : ["ipv4", "dst_addr"],
12330 "mask" : null
12331 },
12332 {
12333 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012334 "name" : "icmp_type",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012335 "target" : ["icmp", "icmp_type"],
12336 "mask" : null
12337 },
12338 {
12339 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012340 "name" : "icmp_code",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012341 "target" : ["icmp", "icmp_code"],
12342 "mask" : null
12343 }
12344 ],
12345 "match_type" : "ternary",
12346 "type" : "simple",
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012347 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012348 "with_counters" : true,
12349 "support_timeout" : false,
12350 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012351 "action_ids" : [21, 22, 23, 24, 25],
Daniele Moro01ca2ab2019-06-25 11:48:48 -070012352 "actions" : ["FabricIngress.acl.set_next_id_acl", "FabricIngress.acl.punt_to_cpu", "FabricIngress.acl.set_clone_session_id", "FabricIngress.acl.drop", "FabricIngress.acl.nop_acl"],
Daniele Moro5a2de712019-09-24 14:34:07 -070012353 "base_default_next" : "node_43",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012354 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012355 "FabricIngress.acl.set_next_id_acl" : "node_43",
12356 "FabricIngress.acl.punt_to_cpu" : "node_43",
12357 "FabricIngress.acl.set_clone_session_id" : "node_43",
12358 "FabricIngress.acl.drop" : "node_43",
12359 "FabricIngress.acl.nop_acl" : "node_43"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012360 },
12361 "default_entry" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012362 "action_id" : 25,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012363 "action_const" : true,
12364 "action_data" : [],
12365 "action_entry_const" : true
12366 }
12367 },
12368 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012369 "name" : "FabricIngress.next.xconnect",
Daniele Moro5a2de712019-09-24 14:34:07 -070012370 "id" : 27,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012371 "source_info" : {
12372 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070012373 "line" : 119,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012374 "column" : 10,
12375 "source_fragment" : "xconnect"
12376 },
12377 "key" : [
12378 {
12379 "match_type" : "exact",
12380 "name" : "ig_port",
12381 "target" : ["standard_metadata", "ingress_port"],
12382 "mask" : null
12383 },
12384 {
12385 "match_type" : "exact",
12386 "name" : "next_id",
Daniele Moro5a2de712019-09-24 14:34:07 -070012387 "target" : ["scalars", "fabric_metadata_t._next_id9"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012388 "mask" : null
12389 }
12390 ],
12391 "match_type" : "exact",
12392 "type" : "simple",
12393 "max_size" : 1024,
12394 "with_counters" : true,
12395 "support_timeout" : false,
12396 "direct_meters" : null,
12397 "action_ids" : [27, 28, 7],
12398 "actions" : ["FabricIngress.next.output_xconnect", "FabricIngress.next.set_next_id_xconnect", "nop"],
12399 "base_default_next" : "FabricIngress.next.hashed",
12400 "next_tables" : {
12401 "FabricIngress.next.output_xconnect" : "FabricIngress.next.hashed",
12402 "FabricIngress.next.set_next_id_xconnect" : "FabricIngress.next.hashed",
12403 "nop" : "FabricIngress.next.hashed"
12404 },
12405 "default_entry" : {
12406 "action_id" : 7,
12407 "action_const" : true,
12408 "action_data" : [],
12409 "action_entry_const" : true
12410 }
12411 },
12412 {
12413 "name" : "FabricIngress.next.hashed",
Daniele Moro5a2de712019-09-24 14:34:07 -070012414 "id" : 28,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012415 "source_info" : {
12416 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070012417 "line" : 202,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012418 "column" : 10,
12419 "source_fragment" : "hashed"
12420 },
12421 "key" : [
12422 {
12423 "match_type" : "exact",
12424 "name" : "next_id",
Daniele Moro5a2de712019-09-24 14:34:07 -070012425 "target" : ["scalars", "fabric_metadata_t._next_id9"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012426 "mask" : null
12427 }
12428 ],
12429 "match_type" : "exact",
12430 "type" : "indirect_ws",
12431 "action_profile" : "FabricIngress.next.hashed_selector",
12432 "max_size" : 1024,
12433 "with_counters" : true,
12434 "support_timeout" : false,
12435 "direct_meters" : null,
12436 "action_ids" : [29, 30, 31, 8],
12437 "actions" : ["FabricIngress.next.output_hashed", "FabricIngress.next.routing_hashed", "FabricIngress.next.mpls_routing_hashed", "nop"],
12438 "base_default_next" : "FabricIngress.next.multicast",
12439 "next_tables" : {
12440 "FabricIngress.next.output_hashed" : "FabricIngress.next.multicast",
12441 "FabricIngress.next.routing_hashed" : "FabricIngress.next.multicast",
12442 "FabricIngress.next.mpls_routing_hashed" : "FabricIngress.next.multicast",
12443 "nop" : "FabricIngress.next.multicast"
12444 }
12445 },
12446 {
12447 "name" : "FabricIngress.next.multicast",
Daniele Moro5a2de712019-09-24 14:34:07 -070012448 "id" : 29,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012449 "source_info" : {
12450 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070012451 "line" : 236,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012452 "column" : 10,
12453 "source_fragment" : "multicast"
12454 },
12455 "key" : [
12456 {
12457 "match_type" : "exact",
12458 "name" : "next_id",
Daniele Moro5a2de712019-09-24 14:34:07 -070012459 "target" : ["scalars", "fabric_metadata_t._next_id9"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012460 "mask" : null
12461 }
12462 ],
12463 "match_type" : "exact",
12464 "type" : "simple",
12465 "max_size" : 1024,
12466 "with_counters" : true,
12467 "support_timeout" : false,
12468 "direct_meters" : null,
12469 "action_ids" : [32, 9],
12470 "actions" : ["FabricIngress.next.set_mcast_group_id", "nop"],
12471 "base_default_next" : "FabricIngress.next.next_vlan",
12472 "next_tables" : {
12473 "FabricIngress.next.set_mcast_group_id" : "FabricIngress.next.next_vlan",
12474 "nop" : "FabricIngress.next.next_vlan"
12475 },
12476 "default_entry" : {
12477 "action_id" : 9,
12478 "action_const" : true,
12479 "action_data" : [],
12480 "action_entry_const" : true
12481 }
12482 },
12483 {
12484 "name" : "FabricIngress.next.next_vlan",
Daniele Moro5a2de712019-09-24 14:34:07 -070012485 "id" : 30,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012486 "source_info" : {
12487 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070012488 "line" : 86,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012489 "column" : 10,
12490 "source_fragment" : "next_vlan"
12491 },
12492 "key" : [
12493 {
12494 "match_type" : "exact",
12495 "name" : "next_id",
Daniele Moro5a2de712019-09-24 14:34:07 -070012496 "target" : ["scalars", "fabric_metadata_t._next_id9"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012497 "mask" : null
12498 }
12499 ],
12500 "match_type" : "exact",
12501 "type" : "simple",
12502 "max_size" : 1024,
12503 "with_counters" : true,
12504 "support_timeout" : false,
12505 "direct_meters" : null,
12506 "action_ids" : [26, 6],
12507 "actions" : ["FabricIngress.next.set_vlan", "nop"],
Daniele Moro5a2de712019-09-24 14:34:07 -070012508 "base_default_next" : "node_48",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012509 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012510 "FabricIngress.next.set_vlan" : "node_48",
12511 "nop" : "node_48"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012512 },
12513 "default_entry" : {
12514 "action_id" : 6,
12515 "action_const" : true,
12516 "action_data" : [],
12517 "action_entry_const" : true
12518 }
12519 },
12520 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012521 "name" : "tbl_act_17",
12522 "id" : 31,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012523 "source_info" : {
12524 "filename" : "include/control/port_counter.p4",
12525 "line" : 31,
12526 "column" : 12,
12527 "source_fragment" : "egress_port_counter.count((bit<32>)standard_metadata.egress_spec)"
12528 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012529 "key" : [],
12530 "match_type" : "exact",
12531 "type" : "simple",
12532 "max_size" : 1024,
12533 "with_counters" : false,
12534 "support_timeout" : false,
12535 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070012536 "action_ids" : [51],
12537 "actions" : ["act_17"],
12538 "base_default_next" : "node_50",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012539 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012540 "act_17" : "node_50"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012541 },
12542 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012543 "action_id" : 51,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012544 "action_const" : true,
12545 "action_data" : [],
12546 "action_entry_const" : true
12547 }
12548 },
12549 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012550 "name" : "tbl_act_18",
12551 "id" : 32,
Carmelo Cascone3032b872019-04-13 01:23:54 -070012552 "source_info" : {
12553 "filename" : "include/control/port_counter.p4",
12554 "line" : 34,
12555 "column" : 12,
12556 "source_fragment" : "ingress_port_counter.count((bit<32>)standard_metadata.ingress_port)"
12557 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012558 "key" : [],
12559 "match_type" : "exact",
12560 "type" : "simple",
12561 "max_size" : 1024,
12562 "with_counters" : false,
12563 "support_timeout" : false,
12564 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070012565 "action_ids" : [52],
12566 "actions" : ["act_18"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012567 "base_default_next" : "FabricIngress.process_set_source_sink.tb_set_source",
12568 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012569 "act_18" : "FabricIngress.process_set_source_sink.tb_set_source"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012570 },
12571 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070012572 "action_id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012573 "action_const" : true,
12574 "action_data" : [],
12575 "action_entry_const" : true
12576 }
12577 },
12578 {
12579 "name" : "FabricIngress.process_set_source_sink.tb_set_source",
Daniele Moro5a2de712019-09-24 14:34:07 -070012580 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012581 "source_info" : {
12582 "filename" : "include/int/int_main.p4",
12583 "line" : 46,
12584 "column" : 10,
12585 "source_fragment" : "tb_set_source"
12586 },
12587 "key" : [
12588 {
12589 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012590 "name" : "ig_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012591 "target" : ["standard_metadata", "ingress_port"],
12592 "mask" : null
12593 }
12594 ],
12595 "match_type" : "exact",
12596 "type" : "simple",
12597 "max_size" : 511,
12598 "with_counters" : true,
12599 "support_timeout" : false,
12600 "direct_meters" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012601 "action_ids" : [12, 2],
12602 "actions" : ["FabricIngress.process_set_source_sink.int_set_source", "nop"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012603 "base_default_next" : null,
12604 "next_tables" : {
12605 "FabricIngress.process_set_source_sink.int_set_source" : null,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012606 "nop" : null
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012607 },
12608 "default_entry" : {
12609 "action_id" : 2,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012610 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012611 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012612 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012613 }
12614 }
12615 ],
12616 "action_profiles" : [
12617 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012618 "name" : "FabricIngress.next.hashed_selector",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012619 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012620 "source_info" : {
12621 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070012622 "line" : 183,
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012623 "column" : 57,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012624 "source_fragment" : "hashed_selector"
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070012625 },
Carmelo Cascone70e816b2019-03-19 16:15:47 -070012626 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012627 "selector" : {
12628 "algo" : "crc16",
12629 "input" : [
12630 {
12631 "type" : "field",
12632 "value" : ["ipv4", "dst_addr"]
12633 },
12634 {
12635 "type" : "field",
12636 "value" : ["ipv4", "src_addr"]
12637 },
12638 {
12639 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070012640 "value" : ["scalars", "fabric_metadata_t._ip_proto12"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012641 },
12642 {
12643 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070012644 "value" : ["scalars", "fabric_metadata_t._l4_sport13"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012645 },
12646 {
12647 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070012648 "value" : ["scalars", "fabric_metadata_t._l4_dport14"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012649 }
12650 ]
12651 }
12652 }
12653 ],
12654 "conditionals" : [
12655 {
12656 "name" : "node_3",
12657 "id" : 0,
12658 "source_info" : {
12659 "filename" : "include/spgw.p4",
12660 "line" : 30,
12661 "column" : 12,
12662 "source_fragment" : "! is_gtpu_encapped"
12663 },
12664 "expression" : {
12665 "type" : "expression",
12666 "value" : {
12667 "op" : "not",
12668 "left" : null,
12669 "right" : {
12670 "type" : "expression",
12671 "value" : {
12672 "op" : "d2b",
12673 "left" : null,
12674 "right" : {
12675 "type" : "field",
12676 "value" : ["gtpu", "$valid$"]
12677 }
12678 }
12679 }
12680 }
12681 },
12682 "true_next" : "tbl_act_0",
12683 "false_next" : "node_5"
12684 },
12685 {
12686 "name" : "node_5",
12687 "id" : 1,
12688 "expression" : {
12689 "type" : "expression",
12690 "value" : {
12691 "op" : "not",
12692 "left" : null,
12693 "right" : {
12694 "type" : "expression",
12695 "value" : {
12696 "op" : "d2b",
12697 "left" : null,
12698 "right" : {
12699 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012700 "value" : ["scalars", "spgw_normalizer_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012701 }
12702 }
12703 }
12704 }
12705 },
12706 "true_next" : "tbl_act_1",
12707 "false_next" : "node_10"
12708 },
12709 {
12710 "name" : "node_7",
12711 "id" : 2,
12712 "source_info" : {
12713 "filename" : "include/spgw.p4",
12714 "line" : 34,
12715 "column" : 12,
12716 "source_fragment" : "inner_udp.isValid()"
12717 },
12718 "expression" : {
12719 "type" : "expression",
12720 "value" : {
12721 "op" : "d2b",
12722 "left" : null,
12723 "right" : {
12724 "type" : "field",
12725 "value" : ["inner_udp", "$valid$"]
12726 }
12727 }
12728 },
12729 "true_next" : "tbl_act_2",
12730 "false_next" : "tbl_act_3"
12731 },
12732 {
12733 "name" : "node_10",
12734 "id" : 3,
12735 "source_info" : {
12736 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012737 "line" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012738 "column" : 12,
12739 "source_fragment" : "hdr.packet_out.isValid()"
12740 },
12741 "expression" : {
12742 "type" : "expression",
12743 "value" : {
12744 "op" : "d2b",
12745 "left" : null,
12746 "right" : {
12747 "type" : "field",
12748 "value" : ["packet_out", "$valid$"]
12749 }
12750 }
12751 },
12752 "true_next" : "tbl_act_4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012753 "false_next" : "node_12"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012754 },
12755 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012756 "name" : "node_12",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012757 "id" : 4,
12758 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012759 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070012760 "line" : 110,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012761 "column" : 12,
12762 "source_fragment" : "hdr.vlan_tag.isValid()"
12763 },
12764 "expression" : {
12765 "type" : "expression",
12766 "value" : {
12767 "op" : "d2b",
12768 "left" : null,
12769 "right" : {
12770 "type" : "field",
12771 "value" : ["vlan_tag", "$valid$"]
12772 }
12773 }
12774 },
12775 "true_next" : "tbl_act_5",
12776 "false_next" : "node_14"
12777 },
12778 {
12779 "name" : "node_14",
12780 "id" : 5,
12781 "source_info" : {
12782 "filename" : "include/control/filtering.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070012783 "line" : 122,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012784 "column" : 12,
12785 "source_fragment" : "!hdr.mpls.isValid()"
12786 },
12787 "expression" : {
12788 "type" : "expression",
12789 "value" : {
12790 "op" : "not",
12791 "left" : null,
12792 "right" : {
12793 "type" : "expression",
12794 "value" : {
12795 "op" : "d2b",
12796 "left" : null,
12797 "right" : {
12798 "type" : "field",
12799 "value" : ["mpls", "$valid$"]
12800 }
12801 }
12802 }
12803 }
12804 },
12805 "true_next" : "tbl_act_6",
Daniele Moro5a2de712019-09-24 14:34:07 -070012806 "false_next" : "FabricIngress.filtering.ingress_port_vlan"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012807 },
12808 {
12809 "name" : "node_19",
Daniele Moro5a2de712019-09-24 14:34:07 -070012810 "id" : 6,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012811 "source_info" : {
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012812 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012813 "line" : 144,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012814 "column" : 12,
12815 "source_fragment" : "gtpu.isValid()"
12816 },
12817 "expression" : {
12818 "type" : "expression",
12819 "value" : {
12820 "op" : "d2b",
12821 "left" : null,
12822 "right" : {
12823 "type" : "field",
12824 "value" : ["gtpu", "$valid$"]
12825 }
12826 }
12827 },
12828 "true_next" : "FabricIngress.spgw_ingress.s1u_filter_table",
12829 "false_next" : "FabricIngress.spgw_ingress.dl_sess_lookup"
12830 },
12831 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012832 "name" : "node_23",
12833 "id" : 7,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012834 "source_info" : {
12835 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070012836 "line" : 148,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012837 "column" : 16,
12838 "source_fragment" : "!s1u_filter_table.apply().hit"
12839 },
12840 "expression" : {
12841 "type" : "expression",
12842 "value" : {
12843 "op" : "not",
12844 "left" : null,
12845 "right" : {
12846 "type" : "expression",
12847 "value" : {
12848 "op" : "d2b",
12849 "left" : null,
12850 "right" : {
12851 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012852 "value" : ["scalars", "spgw_ingress_tmp"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012853 }
12854 }
12855 }
12856 }
12857 },
Daniele Moro5a2de712019-09-24 14:34:07 -070012858 "true_next" : "tbl_act_10",
12859 "false_next" : "tbl_act_11"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012860 },
12861 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012862 "name" : "node_30",
12863 "id" : 8,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012864 "expression" : {
12865 "type" : "expression",
12866 "value" : {
12867 "op" : "d2b",
12868 "left" : null,
12869 "right" : {
12870 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012871 "value" : ["scalars", "spgw_ingress_tmp_0"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012872 }
12873 }
12874 },
Daniele Moro5a2de712019-09-24 14:34:07 -070012875 "true_next" : "tbl_act_14",
12876 "false_next" : "tbl_act_15"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012877 },
12878 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012879 "name" : "node_33",
12880 "id" : 9,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012881 "expression" : {
12882 "type" : "expression",
12883 "value" : {
12884 "op" : "not",
12885 "left" : null,
12886 "right" : {
12887 "type" : "expression",
12888 "value" : {
12889 "op" : "d2b",
12890 "left" : null,
12891 "right" : {
12892 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012893 "value" : ["scalars", "spgw_ingress_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012894 }
12895 }
12896 }
12897 }
12898 },
Daniele Moro5a2de712019-09-24 14:34:07 -070012899 "true_next" : "tbl_act_16",
12900 "false_next" : "node_35"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012901 },
12902 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012903 "name" : "node_35",
12904 "id" : 10,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012905 "source_info" : {
12906 "filename" : "fabric.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070012907 "line" : 71,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012908 "column" : 12,
12909 "source_fragment" : "fabric_metadata.skip_forwarding == false"
12910 },
12911 "expression" : {
12912 "type" : "expression",
12913 "value" : {
12914 "op" : "==",
12915 "left" : {
12916 "type" : "expression",
12917 "value" : {
12918 "op" : "d2b",
12919 "left" : null,
12920 "right" : {
12921 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070012922 "value" : ["scalars", "fabric_metadata_t._skip_forwarding6"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012923 }
12924 }
12925 },
12926 "right" : {
12927 "type" : "bool",
12928 "value" : false
12929 }
12930 }
12931 },
Daniele Moro5a2de712019-09-24 14:34:07 -070012932 "true_next" : "node_36",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012933 "false_next" : "FabricIngress.acl.acl"
12934 },
12935 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012936 "name" : "node_36",
12937 "id" : 11,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012938 "source_info" : {
12939 "filename" : "include/control/forwarding.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -070012940 "line" : 150,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080012941 "column" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012942 "source_fragment" : "fabric_metadata.fwd_type == FWD_BRIDGING"
12943 },
12944 "expression" : {
12945 "type" : "expression",
12946 "value" : {
12947 "op" : "==",
12948 "left" : {
12949 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070012950 "value" : ["scalars", "fabric_metadata_t._fwd_type8"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012951 },
12952 "right" : {
12953 "type" : "hexstr",
12954 "value" : "0x00"
12955 }
12956 }
12957 },
12958 "true_next" : "FabricIngress.forwarding.bridging",
Daniele Moro5a2de712019-09-24 14:34:07 -070012959 "false_next" : "node_38"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012960 },
12961 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012962 "name" : "node_38",
12963 "id" : 12,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012964 "source_info" : {
12965 "filename" : "include/control/forwarding.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -070012966 "line" : 151,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012967 "column" : 17,
12968 "source_fragment" : "fabric_metadata.fwd_type == FWD_MPLS"
12969 },
12970 "expression" : {
12971 "type" : "expression",
12972 "value" : {
12973 "op" : "==",
12974 "left" : {
12975 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070012976 "value" : ["scalars", "fabric_metadata_t._fwd_type8"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012977 },
12978 "right" : {
12979 "type" : "hexstr",
12980 "value" : "0x01"
12981 }
12982 }
12983 },
12984 "true_next" : "FabricIngress.forwarding.mpls",
Daniele Moro5a2de712019-09-24 14:34:07 -070012985 "false_next" : "node_40"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012986 },
12987 {
Daniele Moro5a2de712019-09-24 14:34:07 -070012988 "name" : "node_40",
12989 "id" : 13,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012990 "source_info" : {
12991 "filename" : "include/control/forwarding.p4",
Daniele Moro5a2de712019-09-24 14:34:07 -070012992 "line" : 152,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070012993 "column" : 17,
12994 "source_fragment" : "fabric_metadata.fwd_type == FWD_IPV4_UNICAST"
12995 },
12996 "expression" : {
12997 "type" : "expression",
12998 "value" : {
12999 "op" : "==",
13000 "left" : {
13001 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070013002 "value" : ["scalars", "fabric_metadata_t._fwd_type8"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013003 },
13004 "right" : {
13005 "type" : "hexstr",
13006 "value" : "0x02"
13007 }
13008 }
13009 },
13010 "true_next" : "FabricIngress.forwarding.routing_v4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013011 "false_next" : "FabricIngress.acl.acl"
13012 },
13013 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013014 "name" : "node_43",
13015 "id" : 14,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013016 "source_info" : {
13017 "filename" : "fabric.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013018 "line" : 75,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013019 "column" : 12,
13020 "source_fragment" : "fabric_metadata.skip_next == false"
13021 },
13022 "expression" : {
13023 "type" : "expression",
13024 "value" : {
13025 "op" : "==",
13026 "left" : {
13027 "type" : "expression",
13028 "value" : {
13029 "op" : "d2b",
13030 "left" : null,
13031 "right" : {
13032 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070013033 "value" : ["scalars", "fabric_metadata_t._skip_next7"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013034 }
13035 }
13036 },
13037 "right" : {
13038 "type" : "bool",
13039 "value" : false
13040 }
13041 }
13042 },
13043 "false_next" : null,
13044 "true_next" : "FabricIngress.next.xconnect"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013045 },
13046 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013047 "name" : "node_48",
13048 "id" : 15,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013049 "source_info" : {
13050 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013051 "line" : 30,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013052 "column" : 12,
13053 "source_fragment" : "standard_metadata.egress_spec < 511"
13054 },
13055 "expression" : {
13056 "type" : "expression",
13057 "value" : {
13058 "op" : "<",
13059 "left" : {
13060 "type" : "field",
13061 "value" : ["standard_metadata", "egress_spec"]
13062 },
13063 "right" : {
13064 "type" : "hexstr",
13065 "value" : "0x01ff"
13066 }
13067 }
13068 },
Daniele Moro5a2de712019-09-24 14:34:07 -070013069 "true_next" : "tbl_act_17",
13070 "false_next" : "node_50"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013071 },
13072 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013073 "name" : "node_50",
13074 "id" : 16,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013075 "source_info" : {
13076 "filename" : "include/control/port_counter.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013077 "line" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013078 "column" : 12,
13079 "source_fragment" : "standard_metadata.ingress_port < 511"
13080 },
13081 "expression" : {
13082 "type" : "expression",
13083 "value" : {
13084 "op" : "<",
13085 "left" : {
13086 "type" : "field",
13087 "value" : ["standard_metadata", "ingress_port"]
13088 },
13089 "right" : {
13090 "type" : "hexstr",
13091 "value" : "0x01ff"
13092 }
13093 }
13094 },
Daniele Moro5a2de712019-09-24 14:34:07 -070013095 "true_next" : "tbl_act_18",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013096 "false_next" : "FabricIngress.process_set_source_sink.tb_set_source"
13097 }
13098 ]
13099 },
13100 {
13101 "name" : "egress",
13102 "id" : 1,
13103 "source_info" : {
13104 "filename" : "fabric.p4",
Daniele Moro7c3a0022019-07-12 13:38:34 -070013105 "line" : 93,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013106 "column" : 8,
13107 "source_fragment" : "FabricEgress"
13108 },
Daniele Moro5a2de712019-09-24 14:34:07 -070013109 "init_table" : "node_55",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013110 "tables" : [
13111 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013112 "name" : "tbl_act_19",
13113 "id" : 34,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013114 "source_info" : {
13115 "filename" : "include/control/packetio.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013116 "line" : 41,
13117 "column" : 12,
13118 "source_fragment" : "exit"
Carmelo Cascone3032b872019-04-13 01:23:54 -070013119 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013120 "key" : [],
13121 "match_type" : "exact",
13122 "type" : "simple",
13123 "max_size" : 1024,
13124 "with_counters" : false,
13125 "support_timeout" : false,
13126 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013127 "action_ids" : [97],
13128 "actions" : ["act_19"],
13129 "base_default_next" : "node_57",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013130 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013131 "act_19" : "node_57"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013132 },
13133 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013134 "action_id" : 97,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013135 "action_const" : true,
13136 "action_data" : [],
13137 "action_entry_const" : true
13138 }
13139 },
13140 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013141 "name" : "tbl_act_20",
13142 "id" : 35,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013143 "source_info" : {
13144 "filename" : "include/control/packetio.p4",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013145 "line" : 44,
13146 "column" : 12,
13147 "source_fragment" : "hdr.packet_in.setValid(); ..."
Carmelo Cascone3032b872019-04-13 01:23:54 -070013148 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013149 "key" : [],
13150 "match_type" : "exact",
13151 "type" : "simple",
13152 "max_size" : 1024,
13153 "with_counters" : false,
13154 "support_timeout" : false,
13155 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013156 "action_ids" : [98],
13157 "actions" : ["act_20"],
13158 "base_default_next" : "node_59",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013159 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013160 "act_20" : "node_59"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013161 },
13162 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013163 "action_id" : 98,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013164 "action_const" : true,
13165 "action_data" : [],
13166 "action_entry_const" : true
13167 }
13168 },
13169 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013170 "name" : "tbl_act_21",
13171 "id" : 36,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013172 "source_info" : {
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013173 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070013174 "line" : 337,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013175 "column" : 12,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013176 "source_fragment" : "mark_to_drop(standard_metadata)"
Carmelo Cascone3032b872019-04-13 01:23:54 -070013177 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013178 "key" : [],
13179 "match_type" : "exact",
13180 "type" : "simple",
13181 "max_size" : 1024,
13182 "with_counters" : false,
13183 "support_timeout" : false,
13184 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013185 "action_ids" : [99],
13186 "actions" : ["act_21"],
13187 "base_default_next" : "node_61",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013188 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013189 "act_21" : "node_61"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013190 },
13191 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013192 "action_id" : 99,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013193 "action_const" : true,
13194 "action_data" : [],
13195 "action_entry_const" : true
13196 }
13197 },
13198 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013199 "name" : "tbl_egress_next_pop_mpls_if_present",
Daniele Moro5a2de712019-09-24 14:34:07 -070013200 "id" : 37,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013201 "source_info" : {
13202 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070013203 "line" : 341,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013204 "column" : 36,
13205 "source_fragment" : "pop_mpls_if_present()"
13206 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013207 "key" : [],
13208 "match_type" : "exact",
13209 "type" : "simple",
13210 "max_size" : 1024,
13211 "with_counters" : false,
13212 "support_timeout" : false,
13213 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013214 "action_ids" : [93],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013215 "actions" : ["FabricEgress.egress_next.pop_mpls_if_present"],
13216 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
13217 "next_tables" : {
13218 "FabricEgress.egress_next.pop_mpls_if_present" : "FabricEgress.egress_next.egress_vlan"
13219 },
13220 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013221 "action_id" : 93,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013222 "action_const" : true,
13223 "action_data" : [],
13224 "action_entry_const" : true
13225 }
13226 },
13227 {
13228 "name" : "tbl_egress_next_set_mpls",
Daniele Moro5a2de712019-09-24 14:34:07 -070013229 "id" : 38,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013230 "source_info" : {
13231 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070013232 "line" : 343,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013233 "column" : 12,
13234 "source_fragment" : "set_mpls()"
13235 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013236 "key" : [],
13237 "match_type" : "exact",
13238 "type" : "simple",
13239 "max_size" : 1024,
13240 "with_counters" : false,
13241 "support_timeout" : false,
13242 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013243 "action_ids" : [94],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013244 "actions" : ["FabricEgress.egress_next.set_mpls"],
13245 "base_default_next" : "FabricEgress.egress_next.egress_vlan",
13246 "next_tables" : {
13247 "FabricEgress.egress_next.set_mpls" : "FabricEgress.egress_next.egress_vlan"
13248 },
13249 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013250 "action_id" : 94,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013251 "action_const" : true,
13252 "action_data" : [],
13253 "action_entry_const" : true
13254 }
13255 },
13256 {
13257 "name" : "FabricEgress.egress_next.egress_vlan",
Daniele Moro5a2de712019-09-24 14:34:07 -070013258 "id" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013259 "source_info" : {
13260 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070013261 "line" : 320,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013262 "column" : 10,
13263 "source_fragment" : "egress_vlan"
13264 },
13265 "key" : [
13266 {
13267 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013268 "name" : "vlan_id",
Daniele Moro5a2de712019-09-24 14:34:07 -070013269 "target" : ["scalars", "fabric_metadata_t._vlan_id1"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013270 "mask" : null
13271 },
13272 {
13273 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013274 "name" : "eg_port",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013275 "target" : ["standard_metadata", "egress_port"],
13276 "mask" : null
13277 }
13278 ],
13279 "match_type" : "exact",
13280 "type" : "simple",
13281 "max_size" : 1024,
13282 "with_counters" : true,
13283 "support_timeout" : false,
13284 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013285 "action_ids" : [96, 55],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013286 "actions" : ["FabricEgress.egress_next.pop_vlan", "nop"],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013287 "base_default_next" : null,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013288 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013289 "__HIT__" : "tbl_act_22",
13290 "__MISS__" : "tbl_act_23"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013291 },
13292 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013293 "action_id" : 55,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013294 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013295 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013296 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013297 }
13298 },
13299 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013300 "name" : "tbl_act_22",
13301 "id" : 40,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013302 "key" : [],
13303 "match_type" : "exact",
13304 "type" : "simple",
13305 "max_size" : 1024,
13306 "with_counters" : false,
13307 "support_timeout" : false,
13308 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013309 "action_ids" : [100],
13310 "actions" : ["act_22"],
13311 "base_default_next" : "node_68",
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013312 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013313 "act_22" : "node_68"
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013314 },
13315 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013316 "action_id" : 100,
Daniele Moro01ca2ab2019-06-25 11:48:48 -070013317 "action_const" : true,
13318 "action_data" : [],
13319 "action_entry_const" : true
13320 }
13321 },
13322 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013323 "name" : "tbl_act_23",
13324 "id" : 41,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013325 "key" : [],
13326 "match_type" : "exact",
13327 "type" : "simple",
13328 "max_size" : 1024,
13329 "with_counters" : false,
13330 "support_timeout" : false,
13331 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013332 "action_ids" : [101],
13333 "actions" : ["act_23"],
13334 "base_default_next" : "node_68",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013335 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013336 "act_23" : "node_68"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013337 },
13338 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013339 "action_id" : 101,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013340 "action_const" : true,
13341 "action_data" : [],
13342 "action_entry_const" : true
13343 }
13344 },
13345 {
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013346 "name" : "tbl_egress_next_push_vlan",
Daniele Moro5a2de712019-09-24 14:34:07 -070013347 "id" : 42,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013348 "source_info" : {
13349 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070013350 "line" : 360,
Daniele Moro7c3a0022019-07-12 13:38:34 -070013351 "column" : 20,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013352 "source_fragment" : "push_vlan()"
13353 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013354 "key" : [],
13355 "match_type" : "exact",
13356 "type" : "simple",
13357 "max_size" : 1024,
13358 "with_counters" : false,
13359 "support_timeout" : false,
13360 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013361 "action_ids" : [95],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013362 "actions" : ["FabricEgress.egress_next.push_vlan"],
Daniele Moro5a2de712019-09-24 14:34:07 -070013363 "base_default_next" : "node_71",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013364 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013365 "FabricEgress.egress_next.push_vlan" : "node_71"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013366 },
13367 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013368 "action_id" : 95,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013369 "action_const" : true,
13370 "action_data" : [],
13371 "action_entry_const" : true
13372 }
13373 },
13374 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013375 "name" : "tbl_act_24",
13376 "id" : 43,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013377 "source_info" : {
13378 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070013379 "line" : 369,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013380 "column" : 25,
13381 "source_fragment" : "="
13382 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013383 "key" : [],
13384 "match_type" : "exact",
13385 "type" : "simple",
13386 "max_size" : 1024,
13387 "with_counters" : false,
13388 "support_timeout" : false,
13389 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013390 "action_ids" : [103],
13391 "actions" : ["act_25"],
13392 "base_default_next" : "node_73",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013393 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013394 "act_25" : "node_73"
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013395 },
13396 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013397 "action_id" : 103,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013398 "action_const" : true,
13399 "action_data" : [],
13400 "action_entry_const" : true
13401 }
13402 },
13403 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013404 "name" : "tbl_act_25",
13405 "id" : 44,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013406 "source_info" : {
13407 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070013408 "line" : 370,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013409 "column" : 35,
13410 "source_fragment" : "mark_to_drop(standard_metadata)"
13411 },
13412 "key" : [],
13413 "match_type" : "exact",
13414 "type" : "simple",
13415 "max_size" : 1024,
13416 "with_counters" : false,
13417 "support_timeout" : false,
13418 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013419 "action_ids" : [102],
13420 "actions" : ["act_24"],
13421 "base_default_next" : "node_79",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013422 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013423 "act_24" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013424 },
13425 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013426 "action_id" : 102,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013427 "action_const" : true,
13428 "action_data" : [],
13429 "action_entry_const" : true
13430 }
13431 },
13432 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013433 "name" : "tbl_act_26",
13434 "id" : 45,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013435 "source_info" : {
13436 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070013437 "line" : 373,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013438 "column" : 29,
13439 "source_fragment" : "="
13440 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013441 "key" : [],
13442 "match_type" : "exact",
13443 "type" : "simple",
13444 "max_size" : 1024,
13445 "with_counters" : false,
13446 "support_timeout" : false,
13447 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013448 "action_ids" : [105],
13449 "actions" : ["act_27"],
13450 "base_default_next" : "node_77",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013451 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013452 "act_27" : "node_77"
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013453 },
13454 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013455 "action_id" : 105,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013456 "action_const" : true,
13457 "action_data" : [],
13458 "action_entry_const" : true
13459 }
13460 },
13461 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013462 "name" : "tbl_act_27",
13463 "id" : 46,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013464 "source_info" : {
13465 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070013466 "line" : 374,
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013467 "column" : 39,
13468 "source_fragment" : "mark_to_drop(standard_metadata)"
13469 },
13470 "key" : [],
13471 "match_type" : "exact",
13472 "type" : "simple",
13473 "max_size" : 1024,
13474 "with_counters" : false,
13475 "support_timeout" : false,
13476 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013477 "action_ids" : [104],
13478 "actions" : ["act_26"],
13479 "base_default_next" : "node_79",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013480 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013481 "act_26" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013482 },
13483 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013484 "action_id" : 104,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013485 "action_const" : true,
13486 "action_data" : [],
13487 "action_entry_const" : true
13488 }
13489 },
13490 {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013491 "name" : "tbl_spgw_egress_gtpu_encap",
Daniele Moro5a2de712019-09-24 14:34:07 -070013492 "id" : 47,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013493 "source_info" : {
13494 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070013495 "line" : 228,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013496 "column" : 12,
13497 "source_fragment" : "gtpu_encap()"
13498 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013499 "key" : [],
13500 "match_type" : "exact",
13501 "type" : "simple",
13502 "max_size" : 1024,
13503 "with_counters" : false,
13504 "support_timeout" : false,
13505 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013506 "action_ids" : [58],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013507 "actions" : ["FabricEgress.spgw_egress.gtpu_encap"],
Daniele Moro5a2de712019-09-24 14:34:07 -070013508 "base_default_next" : "node_81",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013509 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013510 "FabricEgress.spgw_egress.gtpu_encap" : "node_81"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013511 },
13512 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013513 "action_id" : 58,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013514 "action_const" : true,
13515 "action_data" : [],
13516 "action_entry_const" : true
13517 }
13518 },
13519 {
13520 "name" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Daniele Moro5a2de712019-09-24 14:34:07 -070013521 "id" : 48,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013522 "source_info" : {
13523 "filename" : "include/int/int_source.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013524 "line" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013525 "column" : 10,
13526 "source_fragment" : "tb_int_source"
13527 },
13528 "key" : [
13529 {
13530 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013531 "name" : "ipv4_src",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013532 "target" : ["ipv4", "src_addr"],
13533 "mask" : null
13534 },
13535 {
13536 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013537 "name" : "ipv4_dst",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013538 "target" : ["ipv4", "dst_addr"],
13539 "mask" : null
13540 },
13541 {
13542 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013543 "name" : "l4_sport",
Daniele Moro5a2de712019-09-24 14:34:07 -070013544 "target" : ["scalars", "fabric_metadata_t._l4_sport13"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013545 "mask" : null
13546 },
13547 {
13548 "match_type" : "ternary",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013549 "name" : "l4_dport",
Daniele Moro5a2de712019-09-24 14:34:07 -070013550 "target" : ["scalars", "fabric_metadata_t._l4_dport14"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013551 "mask" : null
13552 }
13553 ],
13554 "match_type" : "ternary",
13555 "type" : "simple",
13556 "max_size" : 1024,
13557 "with_counters" : true,
13558 "support_timeout" : false,
13559 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013560 "action_ids" : [59, 53],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013561 "actions" : ["FabricEgress.process_int_main.process_int_source.int_source_dscp", "nop"],
Daniele Moro5a2de712019-09-24 14:34:07 -070013562 "base_default_next" : "node_84",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013563 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013564 "FabricEgress.process_int_main.process_int_source.int_source_dscp" : "node_84",
13565 "nop" : "node_84"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013566 },
13567 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013568 "action_id" : 53,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013569 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013570 "action_data" : [],
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013571 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013572 }
13573 },
13574 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013575 "name" : "tbl_act_28",
13576 "id" : 49,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013577 "key" : [],
13578 "match_type" : "exact",
13579 "type" : "simple",
13580 "max_size" : 1024,
13581 "with_counters" : false,
13582 "support_timeout" : false,
13583 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013584 "action_ids" : [106],
13585 "actions" : ["act_28"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013586 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
13587 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013588 "act_28" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013589 },
13590 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013591 "action_id" : 106,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013592 "action_const" : true,
13593 "action_data" : [],
13594 "action_entry_const" : true
13595 }
13596 },
13597 {
13598 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_insert",
Daniele Moro5a2de712019-09-24 14:34:07 -070013599 "id" : 50,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013600 "source_info" : {
13601 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013602 "line" : 315,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013603 "column" : 10,
13604 "source_fragment" : "tb_int_insert"
13605 },
Carmelo Casconefa421582018-09-13 10:05:57 -070013606 "key" : [
13607 {
13608 "match_type" : "exact",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013609 "name" : "int_is_valid",
Carmelo Casconefa421582018-09-13 10:05:57 -070013610 "target" : ["int_header", "$valid$"],
13611 "mask" : null
13612 }
13613 ],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013614 "match_type" : "exact",
13615 "type" : "simple",
Carmelo Casconefa421582018-09-13 10:05:57 -070013616 "max_size" : 1,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013617 "with_counters" : false,
13618 "support_timeout" : false,
13619 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013620 "action_ids" : [60, 54],
Carmelo Casconefa421582018-09-13 10:05:57 -070013621 "actions" : ["FabricEgress.process_int_main.process_int_transit.init_metadata", "nop"],
Daniele Moro5a2de712019-09-24 14:34:07 -070013622 "base_default_next" : "node_87",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013623 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013624 "FabricEgress.process_int_main.process_int_transit.init_metadata" : "node_87",
13625 "nop" : "node_87"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013626 },
13627 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013628 "action_id" : 54,
Carmelo Casconefa421582018-09-13 10:05:57 -070013629 "action_const" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013630 "action_data" : [],
Carmelo Casconefa421582018-09-13 10:05:57 -070013631 "action_entry_const" : true
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013632 }
13633 },
13634 {
Daniele Moro5a2de712019-09-24 14:34:07 -070013635 "name" : "tbl_act_29",
13636 "id" : 51,
Carmelo Cascone3032b872019-04-13 01:23:54 -070013637 "source_info" : {
13638 "filename" : "include/int/int_transit.p4",
13639 "line" : 420,
13640 "column" : 12,
13641 "source_fragment" : "return"
13642 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013643 "key" : [],
13644 "match_type" : "exact",
13645 "type" : "simple",
13646 "max_size" : 1024,
13647 "with_counters" : false,
13648 "support_timeout" : false,
13649 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013650 "action_ids" : [107],
13651 "actions" : ["act_29"],
13652 "base_default_next" : "node_89",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013653 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013654 "act_29" : "node_89"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013655 },
13656 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013657 "action_id" : 107,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013658 "action_const" : true,
13659 "action_data" : [],
13660 "action_entry_const" : true
13661 }
13662 },
13663 {
13664 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003",
Daniele Moro5a2de712019-09-24 14:34:07 -070013665 "id" : 52,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013666 "source_info" : {
13667 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013668 "line" : 331,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013669 "column" : 10,
13670 "source_fragment" : "tb_int_inst_0003"
13671 },
13672 "key" : [
13673 {
13674 "match_type" : "exact",
13675 "name" : "hdr.int_header.instruction_mask_0003",
13676 "target" : ["int_header", "instruction_mask_0003"],
13677 "mask" : null
13678 }
13679 ],
13680 "match_type" : "exact",
13681 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013682 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013683 "with_counters" : false,
13684 "support_timeout" : false,
13685 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070013686 "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 -070013687 "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"],
13688 "base_default_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13689 "next_tables" : {
13690 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i0" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13691 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i1" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13692 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i2" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13693 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i3" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13694 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i4" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13695 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i5" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13696 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i6" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13697 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i7" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13698 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i8" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13699 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i9" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13700 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i10" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13701 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i11" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13702 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i12" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13703 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i13" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13704 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i14" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13705 "FabricEgress.process_int_main.process_int_transit.int_set_header_0003_i15" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
13706 "NoAction" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407"
13707 },
13708 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013709 "action_id" : 56,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013710 "action_const" : false,
13711 "action_data" : [],
13712 "action_entry_const" : false
13713 },
13714 "entries" : [
13715 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013716 "source_info" : {
13717 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013718 "line" : 354,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013719 "column" : 12,
13720 "source_fragment" : "(0x0) : int_set_header_0003_i0()"
13721 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013722 "match_key" : [
13723 {
13724 "match_type" : "exact",
13725 "key" : "0x00"
13726 }
13727 ],
13728 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013729 "action_id" : 61,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013730 "action_data" : []
13731 },
13732 "priority" : 1
13733 },
13734 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013735 "source_info" : {
13736 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013737 "line" : 355,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013738 "column" : 12,
13739 "source_fragment" : "(0x1) : int_set_header_0003_i1()"
13740 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013741 "match_key" : [
13742 {
13743 "match_type" : "exact",
13744 "key" : "0x01"
13745 }
13746 ],
13747 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013748 "action_id" : 62,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013749 "action_data" : []
13750 },
13751 "priority" : 2
13752 },
13753 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013754 "source_info" : {
13755 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013756 "line" : 356,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013757 "column" : 12,
13758 "source_fragment" : "(0x2) : int_set_header_0003_i2()"
13759 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013760 "match_key" : [
13761 {
13762 "match_type" : "exact",
13763 "key" : "0x02"
13764 }
13765 ],
13766 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013767 "action_id" : 63,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013768 "action_data" : []
13769 },
13770 "priority" : 3
13771 },
13772 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013773 "source_info" : {
13774 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013775 "line" : 357,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013776 "column" : 12,
13777 "source_fragment" : "(0x3) : int_set_header_0003_i3()"
13778 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013779 "match_key" : [
13780 {
13781 "match_type" : "exact",
13782 "key" : "0x03"
13783 }
13784 ],
13785 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013786 "action_id" : 64,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013787 "action_data" : []
13788 },
13789 "priority" : 4
13790 },
13791 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013792 "source_info" : {
13793 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013794 "line" : 358,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013795 "column" : 12,
13796 "source_fragment" : "(0x4) : int_set_header_0003_i4()"
13797 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013798 "match_key" : [
13799 {
13800 "match_type" : "exact",
13801 "key" : "0x04"
13802 }
13803 ],
13804 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013805 "action_id" : 65,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013806 "action_data" : []
13807 },
13808 "priority" : 5
13809 },
13810 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013811 "source_info" : {
13812 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013813 "line" : 359,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013814 "column" : 12,
13815 "source_fragment" : "(0x5) : int_set_header_0003_i5()"
13816 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013817 "match_key" : [
13818 {
13819 "match_type" : "exact",
13820 "key" : "0x05"
13821 }
13822 ],
13823 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013824 "action_id" : 66,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013825 "action_data" : []
13826 },
13827 "priority" : 6
13828 },
13829 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013830 "source_info" : {
13831 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013832 "line" : 360,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013833 "column" : 12,
13834 "source_fragment" : "(0x6) : int_set_header_0003_i6()"
13835 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013836 "match_key" : [
13837 {
13838 "match_type" : "exact",
13839 "key" : "0x06"
13840 }
13841 ],
13842 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013843 "action_id" : 67,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013844 "action_data" : []
13845 },
13846 "priority" : 7
13847 },
13848 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013849 "source_info" : {
13850 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013851 "line" : 361,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013852 "column" : 12,
13853 "source_fragment" : "(0x7) : int_set_header_0003_i7()"
13854 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013855 "match_key" : [
13856 {
13857 "match_type" : "exact",
13858 "key" : "0x07"
13859 }
13860 ],
13861 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013862 "action_id" : 68,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013863 "action_data" : []
13864 },
13865 "priority" : 8
13866 },
13867 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013868 "source_info" : {
13869 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013870 "line" : 362,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013871 "column" : 12,
13872 "source_fragment" : "(0x8) : int_set_header_0003_i8()"
13873 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013874 "match_key" : [
13875 {
13876 "match_type" : "exact",
13877 "key" : "0x08"
13878 }
13879 ],
13880 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013881 "action_id" : 69,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013882 "action_data" : []
13883 },
13884 "priority" : 9
13885 },
13886 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013887 "source_info" : {
13888 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013889 "line" : 363,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013890 "column" : 12,
13891 "source_fragment" : "(0x9) : int_set_header_0003_i9()"
13892 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013893 "match_key" : [
13894 {
13895 "match_type" : "exact",
13896 "key" : "0x09"
13897 }
13898 ],
13899 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013900 "action_id" : 70,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013901 "action_data" : []
13902 },
13903 "priority" : 10
13904 },
13905 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013906 "source_info" : {
13907 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013908 "line" : 364,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013909 "column" : 12,
13910 "source_fragment" : "(0xA) : int_set_header_0003_i10()"
13911 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013912 "match_key" : [
13913 {
13914 "match_type" : "exact",
13915 "key" : "0x0a"
13916 }
13917 ],
13918 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013919 "action_id" : 71,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013920 "action_data" : []
13921 },
13922 "priority" : 11
13923 },
13924 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013925 "source_info" : {
13926 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013927 "line" : 365,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013928 "column" : 12,
13929 "source_fragment" : "(0xB) : int_set_header_0003_i11()"
13930 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013931 "match_key" : [
13932 {
13933 "match_type" : "exact",
13934 "key" : "0x0b"
13935 }
13936 ],
13937 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013938 "action_id" : 72,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013939 "action_data" : []
13940 },
13941 "priority" : 12
13942 },
13943 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013944 "source_info" : {
13945 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013946 "line" : 366,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013947 "column" : 12,
13948 "source_fragment" : "(0xC) : int_set_header_0003_i12()"
13949 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013950 "match_key" : [
13951 {
13952 "match_type" : "exact",
13953 "key" : "0x0c"
13954 }
13955 ],
13956 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013957 "action_id" : 73,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013958 "action_data" : []
13959 },
13960 "priority" : 13
13961 },
13962 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013963 "source_info" : {
13964 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013965 "line" : 367,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013966 "column" : 12,
13967 "source_fragment" : "(0xD) : int_set_header_0003_i13()"
13968 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013969 "match_key" : [
13970 {
13971 "match_type" : "exact",
13972 "key" : "0x0d"
13973 }
13974 ],
13975 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013976 "action_id" : 74,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013977 "action_data" : []
13978 },
13979 "priority" : 14
13980 },
13981 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013982 "source_info" : {
13983 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080013984 "line" : 368,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070013985 "column" : 12,
13986 "source_fragment" : "(0xE) : int_set_header_0003_i14()"
13987 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013988 "match_key" : [
13989 {
13990 "match_type" : "exact",
13991 "key" : "0x0e"
13992 }
13993 ],
13994 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070013995 "action_id" : 75,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070013996 "action_data" : []
13997 },
13998 "priority" : 15
13999 },
14000 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014001 "source_info" : {
14002 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014003 "line" : 369,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014004 "column" : 12,
14005 "source_fragment" : "(0xF) : int_set_header_0003_i15()"
14006 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014007 "match_key" : [
14008 {
14009 "match_type" : "exact",
14010 "key" : "0x0f"
14011 }
14012 ],
14013 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014014 "action_id" : 76,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014015 "action_data" : []
14016 },
14017 "priority" : 16
14018 }
14019 ]
14020 },
14021 {
14022 "name" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0407",
Daniele Moro5a2de712019-09-24 14:34:07 -070014023 "id" : 53,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014024 "source_info" : {
14025 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014026 "line" : 375,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014027 "column" : 10,
14028 "source_fragment" : "tb_int_inst_0407"
14029 },
14030 "key" : [
14031 {
14032 "match_type" : "exact",
14033 "name" : "hdr.int_header.instruction_mask_0407",
14034 "target" : ["int_header", "instruction_mask_0407"],
14035 "mask" : null
14036 }
14037 ],
14038 "match_type" : "exact",
14039 "type" : "simple",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014040 "max_size" : 1024,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014041 "with_counters" : false,
14042 "support_timeout" : false,
14043 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070014044 "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 -070014045 "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 Moro5a2de712019-09-24 14:34:07 -070014046 "base_default_next" : "tbl_act_30",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014047 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014048 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i0" : "tbl_act_30",
14049 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i1" : "tbl_act_30",
14050 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i2" : "tbl_act_30",
14051 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i3" : "tbl_act_30",
14052 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i4" : "tbl_act_30",
14053 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i5" : "tbl_act_30",
14054 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i6" : "tbl_act_30",
14055 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i7" : "tbl_act_30",
14056 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i8" : "tbl_act_30",
14057 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i9" : "tbl_act_30",
14058 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i10" : "tbl_act_30",
14059 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i11" : "tbl_act_30",
14060 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i12" : "tbl_act_30",
14061 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i13" : "tbl_act_30",
14062 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i14" : "tbl_act_30",
14063 "FabricEgress.process_int_main.process_int_transit.int_set_header_0407_i15" : "tbl_act_30",
14064 "NoAction" : "tbl_act_30"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014065 },
14066 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014067 "action_id" : 57,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014068 "action_const" : false,
14069 "action_data" : [],
14070 "action_entry_const" : false
14071 },
14072 "entries" : [
14073 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014074 "source_info" : {
14075 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014076 "line" : 398,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014077 "column" : 12,
14078 "source_fragment" : "(0x0) : int_set_header_0407_i0()"
14079 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014080 "match_key" : [
14081 {
14082 "match_type" : "exact",
14083 "key" : "0x00"
14084 }
14085 ],
14086 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014087 "action_id" : 77,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014088 "action_data" : []
14089 },
14090 "priority" : 1
14091 },
14092 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014093 "source_info" : {
14094 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014095 "line" : 399,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014096 "column" : 12,
14097 "source_fragment" : "(0x1) : int_set_header_0407_i1()"
14098 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014099 "match_key" : [
14100 {
14101 "match_type" : "exact",
14102 "key" : "0x01"
14103 }
14104 ],
14105 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014106 "action_id" : 78,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014107 "action_data" : []
14108 },
14109 "priority" : 2
14110 },
14111 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014112 "source_info" : {
14113 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014114 "line" : 400,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014115 "column" : 12,
14116 "source_fragment" : "(0x2) : int_set_header_0407_i2()"
14117 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014118 "match_key" : [
14119 {
14120 "match_type" : "exact",
14121 "key" : "0x02"
14122 }
14123 ],
14124 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014125 "action_id" : 79,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014126 "action_data" : []
14127 },
14128 "priority" : 3
14129 },
14130 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014131 "source_info" : {
14132 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014133 "line" : 401,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014134 "column" : 12,
14135 "source_fragment" : "(0x3) : int_set_header_0407_i3()"
14136 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014137 "match_key" : [
14138 {
14139 "match_type" : "exact",
14140 "key" : "0x03"
14141 }
14142 ],
14143 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014144 "action_id" : 80,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014145 "action_data" : []
14146 },
14147 "priority" : 4
14148 },
14149 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014150 "source_info" : {
14151 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014152 "line" : 402,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014153 "column" : 12,
14154 "source_fragment" : "(0x4) : int_set_header_0407_i4()"
14155 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014156 "match_key" : [
14157 {
14158 "match_type" : "exact",
14159 "key" : "0x04"
14160 }
14161 ],
14162 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014163 "action_id" : 81,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014164 "action_data" : []
14165 },
14166 "priority" : 5
14167 },
14168 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014169 "source_info" : {
14170 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014171 "line" : 403,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014172 "column" : 12,
14173 "source_fragment" : "(0x5) : int_set_header_0407_i5()"
14174 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014175 "match_key" : [
14176 {
14177 "match_type" : "exact",
14178 "key" : "0x05"
14179 }
14180 ],
14181 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014182 "action_id" : 82,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014183 "action_data" : []
14184 },
14185 "priority" : 6
14186 },
14187 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014188 "source_info" : {
14189 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014190 "line" : 404,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014191 "column" : 12,
14192 "source_fragment" : "(0x6) : int_set_header_0407_i6()"
14193 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014194 "match_key" : [
14195 {
14196 "match_type" : "exact",
14197 "key" : "0x06"
14198 }
14199 ],
14200 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014201 "action_id" : 83,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014202 "action_data" : []
14203 },
14204 "priority" : 7
14205 },
14206 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014207 "source_info" : {
14208 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014209 "line" : 405,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014210 "column" : 12,
14211 "source_fragment" : "(0x7) : int_set_header_0407_i7()"
14212 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014213 "match_key" : [
14214 {
14215 "match_type" : "exact",
14216 "key" : "0x07"
14217 }
14218 ],
14219 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014220 "action_id" : 84,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014221 "action_data" : []
14222 },
14223 "priority" : 8
14224 },
14225 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014226 "source_info" : {
14227 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014228 "line" : 406,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014229 "column" : 12,
14230 "source_fragment" : "(0x8) : int_set_header_0407_i8()"
14231 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014232 "match_key" : [
14233 {
14234 "match_type" : "exact",
14235 "key" : "0x08"
14236 }
14237 ],
14238 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014239 "action_id" : 85,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014240 "action_data" : []
14241 },
14242 "priority" : 9
14243 },
14244 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014245 "source_info" : {
14246 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014247 "line" : 407,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014248 "column" : 12,
14249 "source_fragment" : "(0x9) : int_set_header_0407_i9()"
14250 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014251 "match_key" : [
14252 {
14253 "match_type" : "exact",
14254 "key" : "0x09"
14255 }
14256 ],
14257 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014258 "action_id" : 86,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014259 "action_data" : []
14260 },
14261 "priority" : 10
14262 },
14263 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014264 "source_info" : {
14265 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014266 "line" : 408,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014267 "column" : 12,
14268 "source_fragment" : "(0xA) : int_set_header_0407_i10()"
14269 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014270 "match_key" : [
14271 {
14272 "match_type" : "exact",
14273 "key" : "0x0a"
14274 }
14275 ],
14276 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014277 "action_id" : 87,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014278 "action_data" : []
14279 },
14280 "priority" : 11
14281 },
14282 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014283 "source_info" : {
14284 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014285 "line" : 409,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014286 "column" : 12,
14287 "source_fragment" : "(0xB) : int_set_header_0407_i11()"
14288 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014289 "match_key" : [
14290 {
14291 "match_type" : "exact",
14292 "key" : "0x0b"
14293 }
14294 ],
14295 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014296 "action_id" : 88,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014297 "action_data" : []
14298 },
14299 "priority" : 12
14300 },
14301 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014302 "source_info" : {
14303 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014304 "line" : 410,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014305 "column" : 12,
14306 "source_fragment" : "(0xC) : int_set_header_0407_i12()"
14307 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014308 "match_key" : [
14309 {
14310 "match_type" : "exact",
14311 "key" : "0x0c"
14312 }
14313 ],
14314 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014315 "action_id" : 89,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014316 "action_data" : []
14317 },
14318 "priority" : 13
14319 },
14320 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014321 "source_info" : {
14322 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014323 "line" : 411,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014324 "column" : 12,
14325 "source_fragment" : "(0xD) : int_set_header_0407_i13()"
14326 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014327 "match_key" : [
14328 {
14329 "match_type" : "exact",
14330 "key" : "0x0d"
14331 }
14332 ],
14333 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014334 "action_id" : 90,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014335 "action_data" : []
14336 },
14337 "priority" : 14
14338 },
14339 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014340 "source_info" : {
14341 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014342 "line" : 412,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014343 "column" : 12,
14344 "source_fragment" : "(0xE) : int_set_header_0407_i14()"
14345 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014346 "match_key" : [
14347 {
14348 "match_type" : "exact",
14349 "key" : "0x0e"
14350 }
14351 ],
14352 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014353 "action_id" : 91,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014354 "action_data" : []
14355 },
14356 "priority" : 15
14357 },
14358 {
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014359 "source_info" : {
14360 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014361 "line" : 413,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070014362 "column" : 12,
14363 "source_fragment" : "(0xF) : int_set_header_0407_i15()"
14364 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014365 "match_key" : [
14366 {
14367 "match_type" : "exact",
14368 "key" : "0x0f"
14369 }
14370 ],
14371 "action_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014372 "action_id" : 92,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014373 "action_data" : []
14374 },
14375 "priority" : 16
14376 }
14377 ]
14378 },
14379 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014380 "name" : "tbl_act_30",
14381 "id" : 54,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014382 "source_info" : {
14383 "filename" : "include/int/int_transit.p4",
14384 "line" : 425,
14385 "column" : 37,
14386 "source_fragment" : "="
14387 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014388 "key" : [],
14389 "match_type" : "exact",
14390 "type" : "simple",
14391 "max_size" : 1024,
14392 "with_counters" : false,
14393 "support_timeout" : false,
14394 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070014395 "action_ids" : [109],
14396 "actions" : ["act_31"],
14397 "base_default_next" : "node_93",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014398 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014399 "act_31" : "node_93"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014400 },
14401 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014402 "action_id" : 109,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014403 "action_const" : true,
14404 "action_data" : [],
14405 "action_entry_const" : true
14406 }
14407 },
14408 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014409 "name" : "tbl_act_31",
14410 "id" : 55,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014411 "source_info" : {
14412 "filename" : "include/int/int_transit.p4",
14413 "line" : 428,
14414 "column" : 31,
14415 "source_fragment" : "="
14416 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014417 "key" : [],
14418 "match_type" : "exact",
14419 "type" : "simple",
14420 "max_size" : 1024,
14421 "with_counters" : false,
14422 "support_timeout" : false,
14423 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070014424 "action_ids" : [108],
14425 "actions" : ["act_30"],
14426 "base_default_next" : "node_95",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014427 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014428 "act_30" : "node_95"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014429 },
14430 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014431 "action_id" : 108,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014432 "action_const" : true,
14433 "action_data" : [],
14434 "action_entry_const" : true
14435 }
14436 },
14437 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014438 "name" : "tbl_act_32",
14439 "id" : 56,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014440 "source_info" : {
14441 "filename" : "include/int/int_transit.p4",
14442 "line" : 431,
14443 "column" : 24,
14444 "source_fragment" : "="
14445 },
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014446 "key" : [],
14447 "match_type" : "exact",
14448 "type" : "simple",
14449 "max_size" : 1024,
14450 "with_counters" : false,
14451 "support_timeout" : false,
14452 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070014453 "action_ids" : [110],
14454 "actions" : ["act_32"],
14455 "base_default_next" : "node_97",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014456 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014457 "act_32" : "node_97"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014458 },
14459 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014460 "action_id" : 110,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014461 "action_const" : true,
14462 "action_data" : [],
14463 "action_entry_const" : true
14464 }
14465 },
14466 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014467 "name" : "tbl_act_33",
14468 "id" : 57,
Carmelo Cascone3032b872019-04-13 01:23:54 -070014469 "source_info" : {
14470 "filename" : "include/int/int_transit.p4",
14471 "line" : 434,
14472 "column" : 37,
14473 "source_fragment" : "="
14474 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014475 "key" : [],
14476 "match_type" : "exact",
14477 "type" : "simple",
14478 "max_size" : 1024,
14479 "with_counters" : false,
14480 "support_timeout" : false,
14481 "direct_meters" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070014482 "action_ids" : [111],
14483 "actions" : ["act_33"],
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014484 "base_default_next" : null,
14485 "next_tables" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014486 "act_33" : null
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014487 },
14488 "default_entry" : {
Daniele Moro5a2de712019-09-24 14:34:07 -070014489 "action_id" : 111,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014490 "action_const" : true,
14491 "action_data" : [],
14492 "action_entry_const" : true
14493 }
14494 }
14495 ],
14496 "action_profiles" : [],
14497 "conditionals" : [
14498 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014499 "name" : "node_55",
14500 "id" : 17,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014501 "source_info" : {
14502 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014503 "line" : 39,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014504 "column" : 12,
14505 "source_fragment" : "fabric_metadata.is_controller_packet_out == true"
14506 },
14507 "expression" : {
14508 "type" : "expression",
14509 "value" : {
14510 "op" : "==",
14511 "left" : {
14512 "type" : "expression",
14513 "value" : {
14514 "op" : "d2b",
14515 "left" : null,
14516 "right" : {
14517 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070014518 "value" : ["scalars", "fabric_metadata_t._is_controller_packet_out11"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014519 }
14520 }
14521 },
14522 "right" : {
14523 "type" : "bool",
14524 "value" : true
14525 }
14526 }
14527 },
Daniele Moro5a2de712019-09-24 14:34:07 -070014528 "true_next" : "tbl_act_19",
14529 "false_next" : "node_57"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014530 },
14531 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014532 "name" : "node_57",
14533 "id" : 18,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014534 "source_info" : {
14535 "filename" : "include/control/packetio.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014536 "line" : 43,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014537 "column" : 12,
14538 "source_fragment" : "standard_metadata.egress_port == 255"
14539 },
14540 "expression" : {
14541 "type" : "expression",
14542 "value" : {
14543 "op" : "==",
14544 "left" : {
14545 "type" : "field",
14546 "value" : ["standard_metadata", "egress_port"]
14547 },
14548 "right" : {
14549 "type" : "hexstr",
14550 "value" : "0x00ff"
14551 }
14552 }
14553 },
Daniele Moro5a2de712019-09-24 14:34:07 -070014554 "true_next" : "tbl_act_20",
14555 "false_next" : "node_59"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014556 },
14557 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014558 "name" : "node_59",
14559 "id" : 19,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014560 "source_info" : {
14561 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070014562 "line" : 335,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014563 "column" : 12,
14564 "source_fragment" : "fabric_metadata.is_multicast == true ..."
14565 },
14566 "expression" : {
14567 "type" : "expression",
14568 "value" : {
14569 "op" : "and",
14570 "left" : {
14571 "type" : "expression",
14572 "value" : {
14573 "op" : "==",
14574 "left" : {
14575 "type" : "expression",
14576 "value" : {
14577 "op" : "d2b",
14578 "left" : null,
14579 "right" : {
14580 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070014581 "value" : ["scalars", "fabric_metadata_t._is_multicast10"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014582 }
14583 }
14584 },
14585 "right" : {
14586 "type" : "bool",
14587 "value" : true
14588 }
14589 }
14590 },
14591 "right" : {
14592 "type" : "expression",
14593 "value" : {
14594 "op" : "==",
14595 "left" : {
14596 "type" : "field",
14597 "value" : ["standard_metadata", "ingress_port"]
14598 },
14599 "right" : {
14600 "type" : "field",
14601 "value" : ["standard_metadata", "egress_port"]
14602 }
14603 }
14604 }
14605 }
14606 },
Daniele Moro5a2de712019-09-24 14:34:07 -070014607 "true_next" : "tbl_act_21",
14608 "false_next" : "node_61"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014609 },
14610 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014611 "name" : "node_61",
14612 "id" : 20,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014613 "source_info" : {
14614 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070014615 "line" : 340,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014616 "column" : 12,
14617 "source_fragment" : "fabric_metadata.mpls_label == 0"
14618 },
14619 "expression" : {
14620 "type" : "expression",
14621 "value" : {
14622 "op" : "==",
14623 "left" : {
14624 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070014625 "value" : ["scalars", "fabric_metadata_t._mpls_label4"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014626 },
14627 "right" : {
14628 "type" : "hexstr",
14629 "value" : "0x000000"
14630 }
14631 }
14632 },
Daniele Moro5a2de712019-09-24 14:34:07 -070014633 "true_next" : "node_62",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014634 "false_next" : "tbl_egress_next_set_mpls"
14635 },
14636 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014637 "name" : "node_62",
14638 "id" : 21,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014639 "source_info" : {
14640 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070014641 "line" : 341,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014642 "column" : 16,
14643 "source_fragment" : "hdr.mpls.isValid()"
14644 },
14645 "expression" : {
14646 "type" : "expression",
14647 "value" : {
14648 "op" : "d2b",
14649 "left" : null,
14650 "right" : {
14651 "type" : "field",
14652 "value" : ["mpls", "$valid$"]
14653 }
14654 }
14655 },
14656 "true_next" : "tbl_egress_next_pop_mpls_if_present",
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014657 "false_next" : "FabricEgress.egress_next.egress_vlan"
14658 },
14659 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014660 "name" : "node_68",
14661 "id" : 22,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014662 "source_info" : {
14663 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070014664 "line" : 357,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014665 "column" : 16,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014666 "source_fragment" : "!egress_vlan.apply().hit"
14667 },
14668 "expression" : {
14669 "type" : "expression",
14670 "value" : {
14671 "op" : "not",
14672 "left" : null,
14673 "right" : {
14674 "type" : "expression",
14675 "value" : {
14676 "op" : "d2b",
14677 "left" : null,
14678 "right" : {
14679 "type" : "field",
14680 "value" : ["scalars", "egress_next_tmp"]
14681 }
14682 }
14683 }
14684 }
14685 },
Daniele Moro5a2de712019-09-24 14:34:07 -070014686 "true_next" : "node_69",
14687 "false_next" : "node_71"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014688 },
14689 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014690 "name" : "node_69",
14691 "id" : 23,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014692 "source_info" : {
14693 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070014694 "line" : 359,
Daniele Moro7c3a0022019-07-12 13:38:34 -070014695 "column" : 20,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014696 "source_fragment" : "fabric_metadata.vlan_id != DEFAULT_VLAN_ID"
14697 },
14698 "expression" : {
14699 "type" : "expression",
14700 "value" : {
14701 "op" : "!=",
14702 "left" : {
14703 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070014704 "value" : ["scalars", "fabric_metadata_t._vlan_id1"]
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014705 },
14706 "right" : {
14707 "type" : "hexstr",
14708 "value" : "0x0ffe"
14709 }
14710 }
14711 },
14712 "true_next" : "tbl_egress_next_push_vlan",
Daniele Moro5a2de712019-09-24 14:34:07 -070014713 "false_next" : "node_71"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014714 },
14715 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014716 "name" : "node_71",
14717 "id" : 24,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014718 "source_info" : {
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014719 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070014720 "line" : 368,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014721 "column" : 12,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014722 "source_fragment" : "hdr.mpls.isValid()"
14723 },
14724 "expression" : {
14725 "type" : "expression",
14726 "value" : {
14727 "op" : "d2b",
14728 "left" : null,
14729 "right" : {
14730 "type" : "field",
14731 "value" : ["mpls", "$valid$"]
14732 }
14733 }
14734 },
Daniele Moro5a2de712019-09-24 14:34:07 -070014735 "true_next" : "tbl_act_24",
14736 "false_next" : "node_75"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014737 },
14738 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014739 "name" : "node_73",
14740 "id" : 25,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014741 "source_info" : {
14742 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070014743 "line" : 370,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014744 "column" : 16,
14745 "source_fragment" : "hdr.mpls.ttl == 0"
14746 },
14747 "expression" : {
14748 "type" : "expression",
14749 "value" : {
14750 "op" : "==",
14751 "left" : {
14752 "type" : "field",
14753 "value" : ["mpls", "ttl"]
14754 },
14755 "right" : {
14756 "type" : "hexstr",
14757 "value" : "0x00"
14758 }
14759 }
14760 },
Daniele Moro5a2de712019-09-24 14:34:07 -070014761 "true_next" : "tbl_act_25",
14762 "false_next" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014763 },
14764 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014765 "name" : "node_75",
14766 "id" : 26,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014767 "source_info" : {
14768 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070014769 "line" : 372,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014770 "column" : 15,
14771 "source_fragment" : "hdr.ipv4.isValid()"
14772 },
14773 "expression" : {
14774 "type" : "expression",
14775 "value" : {
14776 "op" : "d2b",
14777 "left" : null,
14778 "right" : {
14779 "type" : "field",
14780 "value" : ["ipv4", "$valid$"]
14781 }
14782 }
14783 },
Daniele Moro5a2de712019-09-24 14:34:07 -070014784 "true_next" : "tbl_act_26",
14785 "false_next" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014786 },
14787 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014788 "name" : "node_77",
14789 "id" : 27,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014790 "source_info" : {
14791 "filename" : "include/control/next.p4",
Daniele Morob3d199b2019-11-01 14:01:46 -070014792 "line" : 374,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014793 "column" : 20,
14794 "source_fragment" : "hdr.ipv4.ttl == 0"
14795 },
14796 "expression" : {
14797 "type" : "expression",
14798 "value" : {
14799 "op" : "==",
14800 "left" : {
14801 "type" : "field",
14802 "value" : ["ipv4", "ttl"]
14803 },
14804 "right" : {
14805 "type" : "hexstr",
14806 "value" : "0x00"
14807 }
14808 }
14809 },
Daniele Moro5a2de712019-09-24 14:34:07 -070014810 "true_next" : "tbl_act_27",
14811 "false_next" : "node_79"
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014812 },
14813 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014814 "name" : "node_79",
14815 "id" : 28,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014816 "source_info" : {
14817 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070014818 "line" : 227,
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014819 "column" : 12,
14820 "source_fragment" : "fabric_meta.spgw.direction == SPGW_DIR_DOWNLINK"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014821 },
14822 "expression" : {
14823 "type" : "expression",
14824 "value" : {
14825 "op" : "==",
14826 "left" : {
14827 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070014828 "value" : ["scalars", "fabric_metadata_t._spgw_direction15"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014829 },
14830 "right" : {
14831 "type" : "hexstr",
14832 "value" : "0x02"
14833 }
14834 }
14835 },
14836 "true_next" : "tbl_spgw_egress_gtpu_encap",
Daniele Moro5a2de712019-09-24 14:34:07 -070014837 "false_next" : "node_81"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014838 },
14839 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014840 "name" : "node_81",
14841 "id" : 29,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014842 "source_info" : {
14843 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014844 "line" : 102,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014845 "column" : 12,
14846 "source_fragment" : "standard_metadata.ingress_port != 255 && ..."
14847 },
14848 "expression" : {
14849 "type" : "expression",
14850 "value" : {
14851 "op" : "and",
14852 "left" : {
14853 "type" : "expression",
14854 "value" : {
14855 "op" : "and",
14856 "left" : {
14857 "type" : "expression",
14858 "value" : {
14859 "op" : "!=",
14860 "left" : {
14861 "type" : "field",
14862 "value" : ["standard_metadata", "ingress_port"]
14863 },
14864 "right" : {
14865 "type" : "hexstr",
14866 "value" : "0x00ff"
14867 }
14868 }
14869 },
14870 "right" : {
14871 "type" : "expression",
14872 "value" : {
14873 "op" : "!=",
14874 "left" : {
14875 "type" : "field",
14876 "value" : ["standard_metadata", "egress_port"]
14877 },
14878 "right" : {
14879 "type" : "hexstr",
14880 "value" : "0x00ff"
14881 }
14882 }
14883 }
14884 }
14885 },
14886 "right" : {
14887 "type" : "expression",
14888 "value" : {
14889 "op" : "or",
14890 "left" : {
14891 "type" : "expression",
14892 "value" : {
14893 "op" : "d2b",
14894 "left" : null,
14895 "right" : {
14896 "type" : "field",
14897 "value" : ["udp", "$valid$"]
14898 }
14899 }
14900 },
14901 "right" : {
14902 "type" : "expression",
14903 "value" : {
14904 "op" : "d2b",
14905 "left" : null,
14906 "right" : {
14907 "type" : "field",
14908 "value" : ["tcp", "$valid$"]
14909 }
14910 }
14911 }
14912 }
14913 }
14914 }
14915 },
14916 "false_next" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070014917 "true_next" : "node_82"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014918 },
14919 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014920 "name" : "node_82",
14921 "id" : 30,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014922 "source_info" : {
14923 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014924 "line" : 106,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014925 "column" : 16,
14926 "source_fragment" : "fabric_metadata.int_meta.source == true"
14927 },
14928 "expression" : {
14929 "type" : "expression",
14930 "value" : {
14931 "op" : "==",
14932 "left" : {
14933 "type" : "expression",
14934 "value" : {
14935 "op" : "d2b",
14936 "left" : null,
14937 "right" : {
14938 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070014939 "value" : ["scalars", "fabric_metadata_t._int_meta_source20"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014940 }
14941 }
14942 },
14943 "right" : {
14944 "type" : "bool",
14945 "value" : true
14946 }
14947 }
14948 },
14949 "true_next" : "FabricEgress.process_int_main.process_int_source.tb_int_source",
Daniele Moro5a2de712019-09-24 14:34:07 -070014950 "false_next" : "node_84"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014951 },
14952 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014953 "name" : "node_84",
14954 "id" : 31,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014955 "source_info" : {
14956 "filename" : "include/int/int_main.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014957 "line" : 110,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014958 "column" : 15,
14959 "source_fragment" : "hdr.int_header.isValid()"
14960 },
14961 "expression" : {
14962 "type" : "expression",
14963 "value" : {
14964 "op" : "d2b",
14965 "left" : null,
14966 "right" : {
14967 "type" : "field",
14968 "value" : ["int_header", "$valid$"]
14969 }
14970 }
14971 },
14972 "false_next" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070014973 "true_next" : "tbl_act_28"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014974 },
14975 {
Daniele Moro5a2de712019-09-24 14:34:07 -070014976 "name" : "node_87",
14977 "id" : 32,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014978 "source_info" : {
14979 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080014980 "line" : 419,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014981 "column" : 12,
14982 "source_fragment" : "fmeta.int_meta.transit == false"
14983 },
14984 "expression" : {
14985 "type" : "expression",
14986 "value" : {
14987 "op" : "==",
14988 "left" : {
14989 "type" : "expression",
14990 "value" : {
14991 "op" : "d2b",
14992 "left" : null,
14993 "right" : {
14994 "type" : "field",
Daniele Moro5a2de712019-09-24 14:34:07 -070014995 "value" : ["scalars", "fabric_metadata_t._int_meta_transit21"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070014996 }
14997 }
14998 },
14999 "right" : {
15000 "type" : "bool",
15001 "value" : false
15002 }
15003 }
15004 },
Daniele Moro5a2de712019-09-24 14:34:07 -070015005 "true_next" : "tbl_act_29",
15006 "false_next" : "node_89"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015007 },
15008 {
Daniele Moro5a2de712019-09-24 14:34:07 -070015009 "name" : "node_89",
15010 "id" : 33,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015011 "expression" : {
15012 "type" : "expression",
15013 "value" : {
15014 "op" : "not",
15015 "left" : null,
15016 "right" : {
15017 "type" : "expression",
15018 "value" : {
15019 "op" : "d2b",
15020 "left" : null,
15021 "right" : {
15022 "type" : "field",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015023 "value" : ["scalars", "process_int_main_process_int_transit_hasReturned"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015024 }
15025 }
15026 }
15027 }
15028 },
15029 "false_next" : null,
15030 "true_next" : "FabricEgress.process_int_main.process_int_transit.tb_int_inst_0003"
15031 },
15032 {
Daniele Moro5a2de712019-09-24 14:34:07 -070015033 "name" : "node_93",
15034 "id" : 34,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015035 "source_info" : {
15036 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015037 "line" : 427,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015038 "column" : 12,
15039 "source_fragment" : "hdr.ipv4.isValid()"
15040 },
15041 "expression" : {
15042 "type" : "expression",
15043 "value" : {
15044 "op" : "d2b",
15045 "left" : null,
15046 "right" : {
15047 "type" : "field",
15048 "value" : ["ipv4", "$valid$"]
15049 }
15050 }
15051 },
Daniele Moro5a2de712019-09-24 14:34:07 -070015052 "true_next" : "tbl_act_31",
15053 "false_next" : "node_95"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015054 },
15055 {
Daniele Moro5a2de712019-09-24 14:34:07 -070015056 "name" : "node_95",
15057 "id" : 35,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015058 "source_info" : {
15059 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015060 "line" : 430,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015061 "column" : 12,
15062 "source_fragment" : "hdr.udp.isValid()"
15063 },
15064 "expression" : {
15065 "type" : "expression",
15066 "value" : {
15067 "op" : "d2b",
15068 "left" : null,
15069 "right" : {
15070 "type" : "field",
15071 "value" : ["udp", "$valid$"]
15072 }
15073 }
15074 },
Daniele Moro5a2de712019-09-24 14:34:07 -070015075 "true_next" : "tbl_act_32",
15076 "false_next" : "node_97"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015077 },
15078 {
Daniele Moro5a2de712019-09-24 14:34:07 -070015079 "name" : "node_97",
15080 "id" : 36,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015081 "source_info" : {
15082 "filename" : "include/int/int_transit.p4",
Carmelo Casconeb5324e72018-11-25 02:26:32 -080015083 "line" : 433,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015084 "column" : 12,
15085 "source_fragment" : "hdr.intl4_shim.isValid()"
15086 },
15087 "expression" : {
15088 "type" : "expression",
15089 "value" : {
15090 "op" : "d2b",
15091 "left" : null,
15092 "right" : {
15093 "type" : "field",
15094 "value" : ["intl4_shim", "$valid$"]
15095 }
15096 }
15097 },
15098 "false_next" : null,
Daniele Moro5a2de712019-09-24 14:34:07 -070015099 "true_next" : "tbl_act_33"
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015100 }
15101 ]
15102 }
15103 ],
15104 "checksums" : [
15105 {
15106 "name" : "cksum",
15107 "id" : 0,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015108 "source_info" : {
15109 "filename" : "include/checksum.p4",
15110 "line" : 28,
15111 "column" : 8,
15112 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
15113 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015114 "target" : ["ipv4", "hdr_checksum"],
15115 "type" : "generic",
15116 "calculation" : "calc",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080015117 "verify" : false,
15118 "update" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015119 "if_cond" : {
15120 "type" : "expression",
15121 "value" : {
15122 "op" : "d2b",
15123 "left" : null,
15124 "right" : {
15125 "type" : "field",
15126 "value" : ["ipv4", "$valid$"]
15127 }
15128 }
15129 }
15130 },
15131 {
15132 "name" : "cksum_0",
15133 "id" : 1,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015134 "source_info" : {
15135 "filename" : "include/spgw.p4",
Carmelo Cascone9b607da2019-05-08 14:03:01 -070015136 "line" : 243,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015137 "column" : 8,
15138 "source_fragment" : "update_checksum(gtpu_ipv4.isValid(), ..."
15139 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015140 "target" : ["gtpu_ipv4", "hdr_checksum"],
15141 "type" : "generic",
15142 "calculation" : "calc_0",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080015143 "verify" : false,
15144 "update" : true,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015145 "if_cond" : {
15146 "type" : "expression",
15147 "value" : {
15148 "op" : "d2b",
15149 "left" : null,
15150 "right" : {
15151 "type" : "field",
15152 "value" : ["gtpu_ipv4", "$valid$"]
15153 }
15154 }
15155 }
15156 },
15157 {
15158 "name" : "cksum_1",
15159 "id" : 2,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070015160 "source_info" : {
15161 "filename" : "include/checksum.p4",
15162 "line" : 57,
15163 "column" : 8,
15164 "source_fragment" : "verify_checksum(hdr.ipv4.isValid(), ..."
15165 },
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015166 "target" : ["ipv4", "hdr_checksum"],
15167 "type" : "generic",
15168 "calculation" : "calc_1",
Carmelo Casconea4dc3c12019-02-12 17:30:00 -080015169 "verify" : true,
15170 "update" : false,
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015171 "if_cond" : {
15172 "type" : "expression",
15173 "value" : {
15174 "op" : "d2b",
15175 "left" : null,
15176 "right" : {
15177 "type" : "field",
15178 "value" : ["ipv4", "$valid$"]
15179 }
15180 }
15181 }
15182 }
15183 ],
15184 "force_arith" : [],
15185 "extern_instances" : [],
15186 "field_aliases" : [
15187 [
15188 "queueing_metadata.enq_timestamp",
15189 ["standard_metadata", "enq_timestamp"]
15190 ],
15191 [
15192 "queueing_metadata.enq_qdepth",
15193 ["standard_metadata", "enq_qdepth"]
15194 ],
15195 [
15196 "queueing_metadata.deq_timedelta",
15197 ["standard_metadata", "deq_timedelta"]
15198 ],
15199 [
15200 "queueing_metadata.deq_qdepth",
15201 ["standard_metadata", "deq_qdepth"]
15202 ],
15203 [
15204 "intrinsic_metadata.ingress_global_timestamp",
15205 ["standard_metadata", "ingress_global_timestamp"]
15206 ],
15207 [
15208 "intrinsic_metadata.egress_global_timestamp",
15209 ["standard_metadata", "egress_global_timestamp"]
15210 ],
15211 [
15212 "intrinsic_metadata.lf_field_list",
15213 ["standard_metadata", "lf_field_list"]
15214 ],
15215 [
15216 "intrinsic_metadata.mcast_grp",
15217 ["standard_metadata", "mcast_grp"]
15218 ],
15219 [
15220 "intrinsic_metadata.resubmit_flag",
15221 ["standard_metadata", "resubmit_flag"]
15222 ],
15223 [
15224 "intrinsic_metadata.egress_rid",
15225 ["standard_metadata", "egress_rid"]
15226 ],
15227 [
15228 "intrinsic_metadata.recirculate_flag",
15229 ["standard_metadata", "recirculate_flag"]
Carmelo Cascone9b607da2019-05-08 14:03:01 -070015230 ],
15231 [
15232 "intrinsic_metadata.priority",
15233 ["standard_metadata", "priority"]
Carmelo Cascone5a8a6502018-09-16 13:52:45 -070015234 ]
15235 ],
15236 "program" : "fabric.p4",
15237 "__meta__" : {
15238 "version" : [2, 18],
15239 "compiler" : "https://github.com/p4lang/p4c"
15240 }
Carmelo Cascone25243d62019-02-21 15:37:31 -080015241}