blob: 70c184a984cbfed2a2fa1ff95f3d97f44c8c6aa3 [file] [log] [blame]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001{
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002 "header_types" : [
3 {
4 "name" : "scalars_0",
5 "id" : 0,
6 "fields" : [
Jonghwan Hyunc235d462019-01-30 23:31:48 +09007 ["tmp", 32, false],
8 ["tmp_0", 32, false],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009 ["tmp_1", 32, false],
Jonghwan Hyun8be03392017-12-04 15:48:44 -080010 ["tmp_2", 32, false],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011 ["process_int_transit_hasReturned_0", 1, false],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080012 ["local_metadata_t.l4_src_port", 16, false],
13 ["local_metadata_t.l4_dst_port", 16, false],
14 ["local_metadata_t.next_hop_id", 16, false],
Jonghwan Hyun8be03392017-12-04 15:48:44 -080015 ["local_metadata_t.selector", 16, false],
Jonghwan Hyun6777d532018-11-18 20:50:16 +090016 ["local_metadata_t.compute_checksum", 1, false],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090017 ["_padding_2", 6, false]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080018 ]
19 },
20 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080021 "name" : "standard_metadata",
Carmelo Cascone6af4e172018-06-15 16:01:30 +020022 "id" : 1,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080023 "fields" : [
24 ["ingress_port", 9, false],
25 ["egress_spec", 9, false],
26 ["egress_port", 9, false],
27 ["clone_spec", 32, false],
28 ["instance_type", 32, false],
29 ["drop", 1, false],
30 ["recirculate_port", 16, false],
31 ["packet_length", 32, false],
32 ["enq_timestamp", 32, false],
33 ["enq_qdepth", 19, false],
34 ["deq_timedelta", 32, false],
35 ["deq_qdepth", 19, false],
36 ["ingress_global_timestamp", 48, false],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070037 ["egress_global_timestamp", 48, false],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080038 ["lf_field_list", 32, false],
39 ["mcast_grp", 16, false],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070040 ["resubmit_flag", 32, false],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080041 ["egress_rid", 16, false],
42 ["checksum_error", 1, false],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070043 ["recirculate_flag", 32, false],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -070044 ["parser_error", 32, false],
Carmelo Cascone6af4e172018-06-15 16:01:30 +020045 ["_padding_0", 5, false]
46 ]
47 },
48 {
49 "name" : "packet_out_header_t",
50 "id" : 2,
51 "fields" : [
52 ["egress_port", 9, false],
53 ["_padding", 7, false]
54 ]
55 },
56 {
57 "name" : "packet_in_header_t",
58 "id" : 3,
59 "fields" : [
60 ["ingress_port", 9, false],
61 ["_padding", 7, false]
62 ]
63 },
64 {
65 "name" : "ethernet_t",
66 "id" : 4,
67 "fields" : [
68 ["dst_addr", 48, false],
69 ["src_addr", 48, false],
70 ["ether_type", 16, false]
71 ]
72 },
73 {
74 "name" : "ipv4_t",
75 "id" : 5,
76 "fields" : [
77 ["version", 4, false],
78 ["ihl", 4, false],
79 ["dscp", 6, false],
80 ["ecn", 2, false],
81 ["len", 16, false],
82 ["identification", 16, false],
83 ["flags", 3, false],
84 ["frag_offset", 13, false],
85 ["ttl", 8, false],
86 ["protocol", 8, false],
87 ["hdr_checksum", 16, false],
88 ["src_addr", 32, false],
89 ["dst_addr", 32, false]
90 ]
91 },
92 {
Jonghwan Hyun6777d532018-11-18 20:50:16 +090093 "name" : "udp_t",
Carmelo Cascone6af4e172018-06-15 16:01:30 +020094 "id" : 6,
95 "fields" : [
96 ["src_port", 16, false],
97 ["dst_port", 16, false],
Jonghwan Hyun6777d532018-11-18 20:50:16 +090098 ["length_", 16, false],
99 ["checksum", 16, false]
100 ]
101 },
102 {
103 "name" : "report_fixed_header_t",
104 "id" : 7,
105 "fields" : [
106 ["ver", 4, false],
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900107 ["len", 4, false],
108 ["nproto", 3, false],
109 ["rep_md_bits", 6, false],
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900110 ["d", 1, false],
111 ["q", 1, false],
112 ["f", 1, false],
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900113 ["rsvd", 6, false],
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900114 ["hw_id", 6, false],
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900115 ["sw_id", 32, false],
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900116 ["seq_no", 32, false],
117 ["ingress_tstamp", 32, false]
118 ]
119 },
120 {
121 "name" : "drop_report_header_t",
122 "id" : 8,
123 "fields" : [
124 ["switch_id", 32, false],
125 ["ingress_port_id", 16, false],
126 ["egress_port_id", 16, false],
127 ["queue_id", 8, false],
128 ["drop_reason", 8, false],
129 ["pad", 16, false]
130 ]
131 },
132 {
133 "name" : "local_report_header_t",
134 "id" : 9,
135 "fields" : [
136 ["switch_id", 32, false],
137 ["ingress_port_id", 16, false],
138 ["egress_port_id", 16, false],
139 ["queue_id", 8, false],
140 ["queue_occupancy", 24, false],
141 ["egress_tstamp", 32, false]
142 ]
143 },
144 {
145 "name" : "tcp_t",
146 "id" : 10,
147 "fields" : [
148 ["src_port", 16, false],
149 ["dst_port", 16, false],
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200150 ["seq_no", 32, false],
151 ["ack_no", 32, false],
152 ["data_offset", 4, false],
153 ["res", 3, false],
154 ["ecn", 3, false],
155 ["ctrl", 6, false],
156 ["window", 16, false],
157 ["checksum", 16, false],
158 ["urgent_ptr", 16, false]
159 ]
160 },
161 {
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200162 "name" : "intl4_shim_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900163 "id" : 11,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200164 "fields" : [
165 ["int_type", 8, false],
166 ["rsvd1", 8, false],
167 ["len", 8, false],
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900168 ["dscp", 6, false],
169 ["rsvd2", 2, false]
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200170 ]
171 },
172 {
173 "name" : "int_header_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900174 "id" : 12,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200175 "fields" : [
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900176 ["ver", 4, false],
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200177 ["rep", 2, false],
178 ["c", 1, false],
179 ["e", 1, false],
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900180 ["m", 1, false],
181 ["rsvd1", 7, false],
182 ["rsvd2", 3, false],
183 ["hop_metadata_len", 5, false],
184 ["remaining_hop_cnt", 8, false],
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200185 ["instruction_mask_0003", 4, false],
186 ["instruction_mask_0407", 4, false],
187 ["instruction_mask_0811", 4, false],
188 ["instruction_mask_1215", 4, false],
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900189 ["rsvd3", 16, false]
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200190 ]
191 },
192 {
193 "name" : "int_data_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900194 "id" : 13,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200195 "fields" : [
196 ["data", "*"]
197 ],
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900198 "max_length" : 240
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200199 },
200 {
201 "name" : "int_switch_id_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900202 "id" : 14,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200203 "fields" : [
204 ["switch_id", 32, false]
205 ]
206 },
207 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900208 "name" : "int_level1_port_ids_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900209 "id" : 15,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200210 "fields" : [
211 ["ingress_port_id", 16, false],
212 ["egress_port_id", 16, false]
213 ]
214 },
215 {
216 "name" : "int_hop_latency_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900217 "id" : 16,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200218 "fields" : [
219 ["hop_latency", 32, false]
220 ]
221 },
222 {
223 "name" : "int_q_occupancy_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900224 "id" : 17,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200225 "fields" : [
226 ["q_id", 8, false],
227 ["q_occupancy", 24, false]
228 ]
229 },
230 {
231 "name" : "int_ingress_tstamp_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900232 "id" : 18,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200233 "fields" : [
234 ["ingress_tstamp", 32, false]
235 ]
236 },
237 {
238 "name" : "int_egress_tstamp_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900239 "id" : 19,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200240 "fields" : [
241 ["egress_tstamp", 32, false]
242 ]
243 },
244 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900245 "name" : "int_level2_port_ids_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900246 "id" : 20,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200247 "fields" : [
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900248 ["ingress_port_id", 32, false],
249 ["egress_port_id", 32, false]
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200250 ]
251 },
252 {
253 "name" : "int_egress_port_tx_util_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900254 "id" : 21,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200255 "fields" : [
256 ["egress_port_tx_util", 32, false]
257 ]
258 },
259 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900260 "name" : "int_metadata_t",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900261 "id" : 22,
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200262 "fields" : [
Carmelo Cascone6af4e172018-06-15 16:01:30 +0200263 ["switch_id", 32, false],
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900264 ["new_bytes", 16, false],
265 ["new_words", 8, false],
266 ["source", 1, 0],
267 ["sink", 1, 0],
268 ["transit", 1, 0],
269 ["intl4_shim_len", 8, false],
270 ["_padding_1", 5, false]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800271 ]
272 }
273 ],
274 "headers" : [
275 {
276 "name" : "scalars",
277 "id" : 0,
278 "header_type" : "scalars_0",
279 "metadata" : true,
280 "pi_omit" : true
281 },
282 {
283 "name" : "standard_metadata",
284 "id" : 1,
285 "header_type" : "standard_metadata",
286 "metadata" : true,
287 "pi_omit" : true
288 },
289 {
290 "name" : "packet_out",
291 "id" : 2,
292 "header_type" : "packet_out_header_t",
293 "metadata" : false,
294 "pi_omit" : true
295 },
296 {
297 "name" : "packet_in",
298 "id" : 3,
299 "header_type" : "packet_in_header_t",
300 "metadata" : false,
301 "pi_omit" : true
302 },
303 {
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900304 "name" : "report_ethernet",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800305 "id" : 4,
306 "header_type" : "ethernet_t",
307 "metadata" : false,
308 "pi_omit" : true
309 },
310 {
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900311 "name" : "report_ipv4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800312 "id" : 5,
313 "header_type" : "ipv4_t",
314 "metadata" : false,
315 "pi_omit" : true
316 },
317 {
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900318 "name" : "report_udp",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800319 "id" : 6,
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900320 "header_type" : "udp_t",
321 "metadata" : false,
322 "pi_omit" : true
323 },
324 {
325 "name" : "report_fixed_header",
326 "id" : 7,
327 "header_type" : "report_fixed_header_t",
328 "metadata" : false,
329 "pi_omit" : true
330 },
331 {
332 "name" : "report_local.drop_report_header",
333 "id" : 8,
334 "header_type" : "drop_report_header_t",
335 "metadata" : false,
336 "pi_omit" : true
337 },
338 {
339 "name" : "report_local.local_report_header",
340 "id" : 9,
341 "header_type" : "local_report_header_t",
342 "metadata" : false,
343 "pi_omit" : true
344 },
345 {
346 "name" : "ethernet",
347 "id" : 10,
348 "header_type" : "ethernet_t",
349 "metadata" : false,
350 "pi_omit" : true
351 },
352 {
353 "name" : "ipv4",
354 "id" : 11,
355 "header_type" : "ipv4_t",
356 "metadata" : false,
357 "pi_omit" : true
358 },
359 {
360 "name" : "tcp",
361 "id" : 12,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800362 "header_type" : "tcp_t",
363 "metadata" : false,
364 "pi_omit" : true
365 },
366 {
367 "name" : "udp",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900368 "id" : 13,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800369 "header_type" : "udp_t",
370 "metadata" : false,
371 "pi_omit" : true
372 },
373 {
374 "name" : "intl4_shim",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900375 "id" : 14,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800376 "header_type" : "intl4_shim_t",
377 "metadata" : false,
378 "pi_omit" : true
379 },
380 {
381 "name" : "int_header",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900382 "id" : 15,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800383 "header_type" : "int_header_t",
384 "metadata" : false,
385 "pi_omit" : true
386 },
387 {
388 "name" : "int_data",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900389 "id" : 16,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800390 "header_type" : "int_data_t",
391 "metadata" : false,
392 "pi_omit" : true
393 },
394 {
395 "name" : "int_switch_id",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900396 "id" : 17,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800397 "header_type" : "int_switch_id_t",
398 "metadata" : false,
399 "pi_omit" : true
400 },
401 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900402 "name" : "int_level1_port_ids",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900403 "id" : 18,
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900404 "header_type" : "int_level1_port_ids_t",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800405 "metadata" : false,
406 "pi_omit" : true
407 },
408 {
409 "name" : "int_hop_latency",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900410 "id" : 19,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800411 "header_type" : "int_hop_latency_t",
412 "metadata" : false,
413 "pi_omit" : true
414 },
415 {
416 "name" : "int_q_occupancy",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900417 "id" : 20,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800418 "header_type" : "int_q_occupancy_t",
419 "metadata" : false,
420 "pi_omit" : true
421 },
422 {
423 "name" : "int_ingress_tstamp",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900424 "id" : 21,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800425 "header_type" : "int_ingress_tstamp_t",
426 "metadata" : false,
427 "pi_omit" : true
428 },
429 {
430 "name" : "int_egress_tstamp",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900431 "id" : 22,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800432 "header_type" : "int_egress_tstamp_t",
433 "metadata" : false,
434 "pi_omit" : true
435 },
436 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900437 "name" : "int_level2_port_ids",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900438 "id" : 23,
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900439 "header_type" : "int_level2_port_ids_t",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800440 "metadata" : false,
441 "pi_omit" : true
442 },
443 {
444 "name" : "int_egress_tx_util",
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900445 "id" : 24,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800446 "header_type" : "int_egress_port_tx_util_t",
447 "metadata" : false,
448 "pi_omit" : true
449 },
450 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700451 "name" : "userMetadata.int_meta",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900452 "id" : 25,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800453 "header_type" : "int_metadata_t",
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800454 "metadata" : true,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800455 "pi_omit" : true
456 }
457 ],
458 "header_stacks" : [],
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900459 "header_union_types" : [
460 {
461 "name" : "local_report_t",
462 "id" : 0,
463 "headers" : [
464 ["drop_report_header", "drop_report_header_t"],
465 ["local_report_header", "local_report_header_t"]
466 ]
467 }
468 ],
469 "header_unions" : [
470 {
471 "name" : "report_local",
472 "id" : 0,
473 "union_type" : "local_report_t",
474 "header_ids" : [8, 9],
475 "pi_omit" : true
476 }
477 ],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800478 "header_union_stacks" : [],
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900479 "field_lists" : [
480 {
481 "id" : 1,
482 "name" : "fl",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900483 "source_info" : {
484 "filename" : "int.p4",
485 "line" : 56,
486 "column" : 60,
487 "source_fragment" : "standard_metadata"
488 },
489 "elements" : [
490 {
491 "type" : "field",
492 "value" : ["standard_metadata", "ingress_port"]
493 },
494 {
495 "type" : "field",
496 "value" : ["standard_metadata", "egress_spec"]
497 },
498 {
499 "type" : "field",
500 "value" : ["standard_metadata", "egress_port"]
501 },
502 {
503 "type" : "field",
504 "value" : ["standard_metadata", "clone_spec"]
505 },
506 {
507 "type" : "field",
508 "value" : ["standard_metadata", "instance_type"]
509 },
510 {
511 "type" : "field",
512 "value" : ["standard_metadata", "drop"]
513 },
514 {
515 "type" : "field",
516 "value" : ["standard_metadata", "recirculate_port"]
517 },
518 {
519 "type" : "field",
520 "value" : ["standard_metadata", "packet_length"]
521 },
522 {
523 "type" : "field",
524 "value" : ["standard_metadata", "enq_timestamp"]
525 },
526 {
527 "type" : "field",
528 "value" : ["standard_metadata", "enq_qdepth"]
529 },
530 {
531 "type" : "field",
532 "value" : ["standard_metadata", "deq_timedelta"]
533 },
534 {
535 "type" : "field",
536 "value" : ["standard_metadata", "deq_qdepth"]
537 },
538 {
539 "type" : "field",
540 "value" : ["standard_metadata", "ingress_global_timestamp"]
541 },
542 {
543 "type" : "field",
544 "value" : ["standard_metadata", "egress_global_timestamp"]
545 },
546 {
547 "type" : "field",
548 "value" : ["standard_metadata", "lf_field_list"]
549 },
550 {
551 "type" : "field",
552 "value" : ["standard_metadata", "mcast_grp"]
553 },
554 {
555 "type" : "field",
556 "value" : ["standard_metadata", "resubmit_flag"]
557 },
558 {
559 "type" : "field",
560 "value" : ["standard_metadata", "egress_rid"]
561 },
562 {
563 "type" : "field",
564 "value" : ["standard_metadata", "checksum_error"]
565 },
566 {
567 "type" : "field",
568 "value" : ["standard_metadata", "recirculate_flag"]
569 },
570 {
571 "type" : "field",
572 "value" : ["standard_metadata", "parser_error"]
573 }
574 ]
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900575 }
576 ],
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700577 "errors" : [
Jonghwan Hyun6777d532018-11-18 20:50:16 +0900578 ["NoError", 0],
579 ["PacketTooShort", 1],
580 ["NoMatch", 2],
581 ["StackOutOfBounds", 3],
582 ["HeaderTooShort", 4],
583 ["ParserTimeout", 5]
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700584 ],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800585 "enums" : [],
586 "parsers" : [
587 {
588 "name" : "parser",
589 "id" : 0,
590 "init_state" : "start",
591 "parse_states" : [
592 {
593 "name" : "start",
594 "id" : 0,
595 "parser_ops" : [],
596 "transitions" : [
597 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700598 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800599 "value" : "0x00ff",
600 "mask" : null,
601 "next_state" : "parse_packet_out"
602 },
603 {
604 "value" : "default",
605 "mask" : null,
606 "next_state" : "parse_ethernet"
607 }
608 ],
609 "transition_key" : [
610 {
611 "type" : "field",
612 "value" : ["standard_metadata", "ingress_port"]
613 }
614 ]
615 },
616 {
617 "name" : "parse_packet_out",
618 "id" : 1,
619 "parser_ops" : [
620 {
621 "parameters" : [
622 {
623 "type" : "regular",
624 "value" : "packet_out"
625 }
626 ],
627 "op" : "extract"
628 }
629 ],
630 "transitions" : [
631 {
632 "value" : "default",
633 "mask" : null,
634 "next_state" : "parse_ethernet"
635 }
636 ],
637 "transition_key" : []
638 },
639 {
640 "name" : "parse_ethernet",
641 "id" : 2,
642 "parser_ops" : [
643 {
644 "parameters" : [
645 {
646 "type" : "regular",
647 "value" : "ethernet"
648 }
649 ],
650 "op" : "extract"
651 }
652 ],
653 "transitions" : [
654 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700655 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800656 "value" : "0x0800",
657 "mask" : null,
658 "next_state" : "parse_ipv4"
659 },
660 {
661 "value" : "default",
662 "mask" : null,
663 "next_state" : null
664 }
665 ],
666 "transition_key" : [
667 {
668 "type" : "field",
669 "value" : ["ethernet", "ether_type"]
670 }
671 ]
672 },
673 {
674 "name" : "parse_ipv4",
675 "id" : 3,
676 "parser_ops" : [
677 {
678 "parameters" : [
679 {
680 "type" : "regular",
681 "value" : "ipv4"
682 }
683 ],
684 "op" : "extract"
685 }
686 ],
687 "transitions" : [
688 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700689 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800690 "value" : "0x06",
691 "mask" : null,
692 "next_state" : "parse_tcp"
693 },
694 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700695 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800696 "value" : "0x11",
697 "mask" : null,
698 "next_state" : "parse_udp"
699 },
700 {
701 "value" : "default",
702 "mask" : null,
703 "next_state" : null
704 }
705 ],
706 "transition_key" : [
707 {
708 "type" : "field",
709 "value" : ["ipv4", "protocol"]
710 }
711 ]
712 },
713 {
714 "name" : "parse_tcp",
715 "id" : 4,
716 "parser_ops" : [
717 {
718 "parameters" : [
719 {
720 "type" : "regular",
721 "value" : "tcp"
722 }
723 ],
724 "op" : "extract"
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800725 },
726 {
727 "parameters" : [
728 {
729 "type" : "field",
730 "value" : ["scalars", "local_metadata_t.l4_src_port"]
731 },
732 {
733 "type" : "field",
734 "value" : ["tcp", "src_port"]
735 }
736 ],
737 "op" : "set"
738 },
739 {
740 "parameters" : [
741 {
742 "type" : "field",
743 "value" : ["scalars", "local_metadata_t.l4_dst_port"]
744 },
745 {
746 "type" : "field",
747 "value" : ["tcp", "dst_port"]
748 }
749 ],
750 "op" : "set"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800751 }
752 ],
753 "transitions" : [
754 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700755 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900756 "value" : "0x17",
757 "mask" : "0x3f",
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800758 "next_state" : "parse_intl4_shim"
759 },
760 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800761 "value" : "default",
762 "mask" : null,
763 "next_state" : null
764 }
765 ],
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800766 "transition_key" : [
767 {
768 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900769 "value" : ["ipv4", "dscp"]
Jonghwan Hyun8be03392017-12-04 15:48:44 -0800770 }
771 ]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800772 },
773 {
774 "name" : "parse_udp",
775 "id" : 5,
776 "parser_ops" : [
777 {
778 "parameters" : [
779 {
780 "type" : "regular",
781 "value" : "udp"
782 }
783 ],
784 "op" : "extract"
785 },
786 {
787 "parameters" : [
788 {
789 "type" : "field",
790 "value" : ["scalars", "local_metadata_t.l4_src_port"]
791 },
792 {
793 "type" : "field",
794 "value" : ["udp", "src_port"]
795 }
796 ],
797 "op" : "set"
798 },
799 {
800 "parameters" : [
801 {
802 "type" : "field",
803 "value" : ["scalars", "local_metadata_t.l4_dst_port"]
804 },
805 {
806 "type" : "field",
807 "value" : ["udp", "dst_port"]
808 }
809 ],
810 "op" : "set"
811 }
812 ],
813 "transitions" : [
814 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700815 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900816 "value" : "0x17",
817 "mask" : "0x3f",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800818 "next_state" : "parse_intl4_shim"
819 },
820 {
821 "value" : "default",
822 "mask" : null,
823 "next_state" : null
824 }
825 ],
826 "transition_key" : [
827 {
828 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900829 "value" : ["ipv4", "dscp"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800830 }
831 ]
832 },
833 {
834 "name" : "parse_intl4_shim",
835 "id" : 6,
836 "parser_ops" : [
837 {
838 "parameters" : [
839 {
840 "type" : "regular",
841 "value" : "intl4_shim"
842 }
843 ],
844 "op" : "extract"
845 },
846 {
847 "parameters" : [
848 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900849 "type" : "field",
850 "value" : ["userMetadata.int_meta", "intl4_shim_len"]
851 },
852 {
853 "type" : "field",
854 "value" : ["intl4_shim", "len"]
855 }
856 ],
857 "op" : "set"
858 },
859 {
860 "parameters" : [
861 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800862 "type" : "regular",
863 "value" : "int_header"
864 }
865 ],
866 "op" : "extract"
867 },
868 {
869 "parameters" : [
870 {
871 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900872 "value" : ["scalars", "tmp"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800873 },
874 {
875 "type" : "expression",
876 "value" : {
877 "type" : "expression",
878 "value" : {
879 "op" : "&",
880 "left" : {
881 "type" : "expression",
882 "value" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900883 "op" : "<<",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800884 "left" : {
885 "type" : "expression",
886 "value" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900887 "op" : "&",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800888 "left" : {
889 "type" : "expression",
890 "value" : {
891 "op" : "&",
892 "left" : {
893 "type" : "expression",
894 "value" : {
895 "op" : "+",
896 "left" : {
897 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900898 "value" : ["userMetadata.int_meta", "intl4_shim_len"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800899 },
900 "right" : {
901 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900902 "value" : "0xfd"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800903 }
904 }
905 },
906 "right" : {
907 "type" : "hexstr",
908 "value" : "0xff"
909 }
910 }
911 },
912 "right" : {
913 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900914 "value" : "0xffffffff"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800915 }
916 }
917 },
918 "right" : {
919 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900920 "value" : "0x5"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800921 }
922 }
923 },
924 "right" : {
925 "type" : "hexstr",
926 "value" : "0xffffffff"
927 }
928 }
929 }
930 }
931 ],
932 "op" : "set"
933 },
934 {
935 "parameters" : [
936 {
937 "type" : "regular",
938 "value" : "int_data"
939 },
940 {
941 "type" : "expression",
942 "value" : {
943 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900944 "value" : ["scalars", "tmp"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800945 }
946 }
947 ],
948 "op" : "extract_VL"
949 }
950 ],
951 "transitions" : [
952 {
953 "value" : "default",
954 "mask" : null,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800955 "next_state" : null
956 }
957 ],
958 "transition_key" : []
959 }
960 ]
961 }
962 ],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700963 "parse_vsets" : [],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800964 "deparsers" : [
965 {
966 "name" : "deparser",
967 "id" : 0,
968 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700969 "filename" : "include/int_parser.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900970 "line" : 93,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800971 "column" : 8,
972 "source_fragment" : "int_deparser"
973 },
Jonghwan Hyunc235d462019-01-30 23:31:48 +0900974 "order" : ["packet_in", "report_ethernet", "report_ipv4", "report_udp", "report_fixed_header", "ethernet", "ipv4", "tcp", "udp", "intl4_shim", "int_header", "int_switch_id", "int_level1_port_ids", "int_hop_latency", "int_q_occupancy", "int_ingress_tstamp", "int_egress_tstamp", "int_level2_port_ids", "int_egress_tx_util", "int_data"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800975 }
976 ],
977 "meter_arrays" : [],
978 "counter_arrays" : [
979 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700980 "name" : "ingress.port_counters_ingress.ingress_port_counter",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800981 "id" : 0,
982 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700983 "filename" : "include/port_counters.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800984 "line" : 26,
985 "column" : 38,
986 "source_fragment" : "ingress_port_counter"
987 },
988 "size" : 511,
989 "is_direct" : false
990 },
991 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -0700992 "name" : "ingress.table0_control.table0_counter",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -0800993 "id" : 1,
994 "is_direct" : true,
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -0700995 "binding" : "ingress.table0_control.table0",
996 "source_info" : {
997 "filename" : "include/table0.p4",
998 "line" : 27,
999 "column" : 50,
1000 "source_fragment" : "table0_counter"
1001 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001002 },
1003 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001004 "name" : "ingress.process_int_source_sink.counter_set_source",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001005 "id" : 2,
1006 "is_direct" : true,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001007 "binding" : "ingress.process_int_source_sink.tb_set_source",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001008 "source_info" : {
1009 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001010 "line" : 88,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001011 "column" : 50,
1012 "source_fragment" : "counter_set_source"
1013 }
1014 },
1015 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001016 "name" : "ingress.process_int_source_sink.counter_set_sink",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001017 "id" : 3,
1018 "is_direct" : true,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001019 "binding" : "ingress.process_int_source_sink.tb_set_sink",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001020 "source_info" : {
1021 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001022 "line" : 89,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001023 "column" : 50,
1024 "source_fragment" : "counter_set_sink"
1025 }
1026 },
1027 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001028 "name" : "ingress.process_int_source.counter_int_source",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001029 "id" : 4,
1030 "is_direct" : true,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001031 "binding" : "ingress.process_int_source.tb_int_source",
Carmelo Cascone03ae0ac2018-10-11 08:31:59 -07001032 "source_info" : {
1033 "filename" : "include/int_source.p4",
1034 "line" : 27,
1035 "column" : 50,
1036 "source_fragment" : "counter_int_source"
1037 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001038 },
1039 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001040 "name" : "egress.port_counters_egress.egress_port_counter",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001041 "id" : 5,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001042 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001043 "filename" : "include/port_counters.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001044 "line" : 36,
1045 "column" : 38,
1046 "source_fragment" : "egress_port_counter"
1047 },
1048 "size" : 511,
1049 "is_direct" : false
1050 }
1051 ],
1052 "register_arrays" : [],
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001053 "calculations" : [
1054 {
1055 "name" : "calc",
1056 "id" : 0,
1057 "source_info" : {
1058 "filename" : "include/checksums.p4",
1059 "line" : 32,
1060 "column" : 8,
1061 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
1062 },
1063 "algo" : "csum16",
1064 "input" : [
1065 {
1066 "type" : "field",
1067 "value" : ["ipv4", "version"]
1068 },
1069 {
1070 "type" : "field",
1071 "value" : ["ipv4", "ihl"]
1072 },
1073 {
1074 "type" : "field",
1075 "value" : ["ipv4", "dscp"]
1076 },
1077 {
1078 "type" : "field",
1079 "value" : ["ipv4", "ecn"]
1080 },
1081 {
1082 "type" : "field",
1083 "value" : ["ipv4", "len"]
1084 },
1085 {
1086 "type" : "field",
1087 "value" : ["ipv4", "identification"]
1088 },
1089 {
1090 "type" : "field",
1091 "value" : ["ipv4", "flags"]
1092 },
1093 {
1094 "type" : "field",
1095 "value" : ["ipv4", "frag_offset"]
1096 },
1097 {
1098 "type" : "field",
1099 "value" : ["ipv4", "ttl"]
1100 },
1101 {
1102 "type" : "field",
1103 "value" : ["ipv4", "protocol"]
1104 },
1105 {
1106 "type" : "field",
1107 "value" : ["ipv4", "src_addr"]
1108 },
1109 {
1110 "type" : "field",
1111 "value" : ["ipv4", "dst_addr"]
1112 }
1113 ]
1114 },
1115 {
1116 "name" : "calc_0",
1117 "id" : 1,
1118 "source_info" : {
1119 "filename" : "include/checksums.p4",
1120 "line" : 54,
1121 "column" : 8,
1122 "source_fragment" : "update_checksum(hdr.report_ipv4.isValid(), ..."
1123 },
1124 "algo" : "csum16",
1125 "input" : [
1126 {
1127 "type" : "field",
1128 "value" : ["report_ipv4", "version"]
1129 },
1130 {
1131 "type" : "field",
1132 "value" : ["report_ipv4", "ihl"]
1133 },
1134 {
1135 "type" : "field",
1136 "value" : ["report_ipv4", "dscp"]
1137 },
1138 {
1139 "type" : "field",
1140 "value" : ["report_ipv4", "ecn"]
1141 },
1142 {
1143 "type" : "field",
1144 "value" : ["report_ipv4", "len"]
1145 },
1146 {
1147 "type" : "field",
1148 "value" : ["report_ipv4", "identification"]
1149 },
1150 {
1151 "type" : "field",
1152 "value" : ["report_ipv4", "flags"]
1153 },
1154 {
1155 "type" : "field",
1156 "value" : ["report_ipv4", "frag_offset"]
1157 },
1158 {
1159 "type" : "field",
1160 "value" : ["report_ipv4", "ttl"]
1161 },
1162 {
1163 "type" : "field",
1164 "value" : ["report_ipv4", "protocol"]
1165 },
1166 {
1167 "type" : "field",
1168 "value" : ["report_ipv4", "src_addr"]
1169 },
1170 {
1171 "type" : "field",
1172 "value" : ["report_ipv4", "dst_addr"]
1173 }
1174 ]
1175 }
1176 ],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001177 "learn_lists" : [],
1178 "actions" : [
1179 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001180 "name" : "_drop",
Keesjan Karsten23368892018-05-22 10:46:01 +00001181 "id" : 0,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001182 "runtime_data" : [],
1183 "primitives" : [
1184 {
1185 "op" : "drop",
1186 "parameters" : [],
1187 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001188 "filename" : "include/actions.p4",
Keesjan Karsten23368892018-05-22 10:46:01 +00001189 "line" : 24,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001190 "column" : 4,
1191 "source_fragment" : "mark_to_drop()"
1192 }
1193 }
1194 ]
1195 },
1196 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001197 "name" : "nop",
Keesjan Karsten23368892018-05-22 10:46:01 +00001198 "id" : 1,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001199 "runtime_data" : [],
1200 "primitives" : []
1201 },
1202 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001203 "name" : "nop",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001204 "id" : 2,
1205 "runtime_data" : [],
1206 "primitives" : []
1207 },
1208 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001209 "name" : "nop",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001210 "id" : 3,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001211 "runtime_data" : [],
1212 "primitives" : []
1213 },
1214 {
1215 "name" : "ingress.table0_control.set_next_hop_id",
1216 "id" : 4,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001217 "runtime_data" : [
1218 {
1219 "name" : "next_hop_id",
1220 "bitwidth" : 16
1221 }
1222 ],
1223 "primitives" : [
1224 {
1225 "op" : "assign",
1226 "parameters" : [
1227 {
1228 "type" : "field",
1229 "value" : ["scalars", "local_metadata_t.next_hop_id"]
1230 },
1231 {
1232 "type" : "runtime_data",
1233 "value" : 0
1234 }
1235 ],
1236 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001237 "filename" : "include/table0.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001238 "line" : 30,
1239 "column" : 8,
1240 "source_fragment" : "local_metadata.next_hop_id = next_hop_id"
1241 }
1242 }
1243 ]
1244 },
1245 {
Keesjan Karsten23368892018-05-22 10:46:01 +00001246 "name" : "ingress.table0_control.send_to_cpu",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001247 "id" : 5,
Keesjan Karsten23368892018-05-22 10:46:01 +00001248 "runtime_data" : [],
1249 "primitives" : [
1250 {
1251 "op" : "assign",
1252 "parameters" : [
1253 {
1254 "type" : "field",
1255 "value" : ["standard_metadata", "egress_spec"]
1256 },
1257 {
1258 "type" : "hexstr",
1259 "value" : "0x00ff"
1260 }
1261 ],
1262 "source_info" : {
1263 "filename" : "include/defines.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001264 "line" : 43,
Keesjan Karsten23368892018-05-22 10:46:01 +00001265 "column" : 24,
1266 "source_fragment" : "255; ..."
1267 }
1268 }
1269 ]
1270 },
1271 {
1272 "name" : "ingress.table0_control.set_egress_port",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001273 "id" : 6,
Keesjan Karsten23368892018-05-22 10:46:01 +00001274 "runtime_data" : [
1275 {
1276 "name" : "port",
1277 "bitwidth" : 9
1278 }
1279 ],
1280 "primitives" : [
1281 {
1282 "op" : "assign",
1283 "parameters" : [
1284 {
1285 "type" : "field",
1286 "value" : ["standard_metadata", "egress_spec"]
1287 },
1288 {
1289 "type" : "runtime_data",
1290 "value" : 0
1291 }
1292 ],
1293 "source_info" : {
1294 "filename" : "include/table0.p4",
1295 "line" : 38,
1296 "column" : 8,
1297 "source_fragment" : "standard_metadata.egress_spec = port"
1298 }
1299 }
1300 ]
1301 },
1302 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001303 "name" : "ingress.process_int_source_sink.int_set_source",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001304 "id" : 7,
1305 "runtime_data" : [],
1306 "primitives" : [
1307 {
1308 "op" : "assign",
1309 "parameters" : [
1310 {
1311 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001312 "value" : ["userMetadata.int_meta", "source"]
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001313 },
1314 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001315 "type" : "expression",
1316 "value" : {
1317 "type" : "expression",
1318 "value" : {
1319 "op" : "b2d",
1320 "left" : null,
1321 "right" : {
1322 "type" : "bool",
1323 "value" : true
1324 }
1325 }
1326 }
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001327 }
1328 ],
1329 "source_info" : {
1330 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001331 "line" : 92,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001332 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001333 "source_fragment" : "local_metadata.int_meta.source = true"
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001334 }
1335 }
1336 ]
1337 },
1338 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001339 "name" : "ingress.process_int_source_sink.int_set_sink",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09001340 "id" : 8,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001341 "runtime_data" : [],
1342 "primitives" : [
1343 {
1344 "op" : "assign",
1345 "parameters" : [
1346 {
1347 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001348 "value" : ["userMetadata.int_meta", "sink"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001349 },
1350 {
1351 "type" : "expression",
1352 "value" : {
1353 "type" : "expression",
1354 "value" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001355 "op" : "b2d",
1356 "left" : null,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001357 "right" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001358 "type" : "bool",
1359 "value" : true
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001360 }
1361 }
1362 }
1363 }
Carmelo Cascone6af4e172018-06-15 16:01:30 +02001364 ],
1365 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001366 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001367 "line" : 97,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001368 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001369 "source_fragment" : "local_metadata.int_meta.sink = true"
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001370 }
1371 }
1372 ]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001373 },
1374 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001375 "name" : "ingress.process_int_source.int_source_dscp",
1376 "id" : 9,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001377 "runtime_data" : [
1378 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001379 "name" : "hop_metadata_len",
1380 "bitwidth" : 5
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001381 },
1382 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001383 "name" : "remaining_hop_cnt",
1384 "bitwidth" : 8
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001385 },
1386 {
1387 "name" : "ins_mask0003",
1388 "bitwidth" : 4
1389 },
1390 {
1391 "name" : "ins_mask0407",
1392 "bitwidth" : 4
1393 }
1394 ],
1395 "primitives" : [
1396 {
1397 "op" : "add_header",
1398 "parameters" : [
1399 {
1400 "type" : "header",
1401 "value" : "intl4_shim"
1402 }
1403 ],
1404 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001405 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001406 "line" : 31,
1407 "column" : 8,
1408 "source_fragment" : "hdr.intl4_shim.setValid()"
1409 }
1410 },
1411 {
1412 "op" : "assign",
1413 "parameters" : [
1414 {
1415 "type" : "field",
1416 "value" : ["intl4_shim", "int_type"]
1417 },
1418 {
1419 "type" : "hexstr",
1420 "value" : "0x01"
1421 }
1422 ],
1423 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001424 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001425 "line" : 33,
1426 "column" : 8,
1427 "source_fragment" : "hdr.intl4_shim.int_type = 1"
1428 }
1429 },
1430 {
1431 "op" : "assign",
1432 "parameters" : [
1433 {
1434 "type" : "field",
1435 "value" : ["intl4_shim", "len"]
1436 },
1437 {
1438 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001439 "value" : "0x03"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001440 }
1441 ],
1442 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001443 "filename" : "include/int_definitions.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001444 "line" : 30,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001445 "column" : 35,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001446 "source_fragment" : "3; ..."
1447 }
1448 },
1449 {
1450 "op" : "assign",
1451 "parameters" : [
1452 {
1453 "type" : "field",
1454 "value" : ["intl4_shim", "dscp"]
1455 },
1456 {
1457 "type" : "field",
1458 "value" : ["ipv4", "dscp"]
1459 }
1460 ],
1461 "source_info" : {
1462 "filename" : "include/int_source.p4",
1463 "line" : 35,
1464 "column" : 8,
1465 "source_fragment" : "hdr.intl4_shim.dscp = hdr.ipv4.dscp"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001466 }
1467 },
1468 {
1469 "op" : "add_header",
1470 "parameters" : [
1471 {
1472 "type" : "header",
1473 "value" : "int_header"
1474 }
1475 ],
1476 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001477 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001478 "line" : 38,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001479 "column" : 8,
1480 "source_fragment" : "hdr.int_header.setValid()"
1481 }
1482 },
1483 {
1484 "op" : "assign",
1485 "parameters" : [
1486 {
1487 "type" : "field",
1488 "value" : ["int_header", "ver"]
1489 },
1490 {
1491 "type" : "hexstr",
1492 "value" : "0x00"
1493 }
1494 ],
1495 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001496 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001497 "line" : 39,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001498 "column" : 8,
1499 "source_fragment" : "hdr.int_header.ver = 0"
1500 }
1501 },
1502 {
1503 "op" : "assign",
1504 "parameters" : [
1505 {
1506 "type" : "field",
1507 "value" : ["int_header", "rep"]
1508 },
1509 {
1510 "type" : "hexstr",
1511 "value" : "0x00"
1512 }
1513 ],
1514 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001515 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001516 "line" : 40,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001517 "column" : 8,
1518 "source_fragment" : "hdr.int_header.rep = 0"
1519 }
1520 },
1521 {
1522 "op" : "assign",
1523 "parameters" : [
1524 {
1525 "type" : "field",
1526 "value" : ["int_header", "c"]
1527 },
1528 {
1529 "type" : "hexstr",
1530 "value" : "0x00"
1531 }
1532 ],
1533 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001534 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001535 "line" : 41,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001536 "column" : 8,
1537 "source_fragment" : "hdr.int_header.c = 0"
1538 }
1539 },
1540 {
1541 "op" : "assign",
1542 "parameters" : [
1543 {
1544 "type" : "field",
1545 "value" : ["int_header", "e"]
1546 },
1547 {
1548 "type" : "hexstr",
1549 "value" : "0x00"
1550 }
1551 ],
1552 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001553 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001554 "line" : 42,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001555 "column" : 8,
1556 "source_fragment" : "hdr.int_header.e = 0"
1557 }
1558 },
1559 {
1560 "op" : "assign",
1561 "parameters" : [
1562 {
1563 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001564 "value" : ["int_header", "m"]
1565 },
1566 {
1567 "type" : "hexstr",
1568 "value" : "0x00"
1569 }
1570 ],
1571 "source_info" : {
1572 "filename" : "include/int_source.p4",
1573 "line" : 43,
1574 "column" : 8,
1575 "source_fragment" : "hdr.int_header.m = 0"
1576 }
1577 },
1578 {
1579 "op" : "assign",
1580 "parameters" : [
1581 {
1582 "type" : "field",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001583 "value" : ["int_header", "rsvd1"]
1584 },
1585 {
1586 "type" : "hexstr",
1587 "value" : "0x00"
1588 }
1589 ],
1590 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001591 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001592 "line" : 44,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001593 "column" : 8,
1594 "source_fragment" : "hdr.int_header.rsvd1 = 0"
1595 }
1596 },
1597 {
1598 "op" : "assign",
1599 "parameters" : [
1600 {
1601 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001602 "value" : ["int_header", "rsvd2"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001603 },
1604 {
1605 "type" : "hexstr",
1606 "value" : "0x00"
1607 }
1608 ],
1609 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001610 "filename" : "include/int_source.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001611 "line" : 45,
1612 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001613 "source_fragment" : "hdr.int_header.rsvd2 = 0"
1614 }
1615 },
1616 {
1617 "op" : "assign",
1618 "parameters" : [
1619 {
1620 "type" : "field",
1621 "value" : ["int_header", "hop_metadata_len"]
1622 },
1623 {
1624 "type" : "runtime_data",
1625 "value" : 0
1626 }
1627 ],
1628 "source_info" : {
1629 "filename" : "include/int_source.p4",
1630 "line" : 46,
1631 "column" : 8,
1632 "source_fragment" : "hdr.int_header.hop_metadata_len = hop_metadata_len; ..."
1633 }
1634 },
1635 {
1636 "op" : "assign",
1637 "parameters" : [
1638 {
1639 "type" : "field",
1640 "value" : ["int_header", "remaining_hop_cnt"]
1641 },
1642 {
1643 "type" : "runtime_data",
1644 "value" : 1
1645 }
1646 ],
1647 "source_info" : {
1648 "filename" : "include/int_source.p4",
1649 "line" : 47,
1650 "column" : 8,
1651 "source_fragment" : "hdr.int_header.remaining_hop_cnt = remaining_hop_cnt; ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001652 }
1653 },
1654 {
1655 "op" : "assign",
1656 "parameters" : [
1657 {
1658 "type" : "field",
1659 "value" : ["int_header", "instruction_mask_0003"]
1660 },
1661 {
1662 "type" : "runtime_data",
1663 "value" : 2
1664 }
1665 ],
1666 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001667 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001668 "line" : 48,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001669 "column" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001670 "source_fragment" : "hdr.int_header.instruction_mask_0003 = ins_mask0003; ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001671 }
1672 },
1673 {
1674 "op" : "assign",
1675 "parameters" : [
1676 {
1677 "type" : "field",
1678 "value" : ["int_header", "instruction_mask_0407"]
1679 },
1680 {
1681 "type" : "runtime_data",
1682 "value" : 3
1683 }
1684 ],
1685 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001686 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001687 "line" : 49,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001688 "column" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001689 "source_fragment" : "hdr.int_header.instruction_mask_0407 = ins_mask0407; ..."
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001690 }
1691 },
1692 {
1693 "op" : "assign",
1694 "parameters" : [
1695 {
1696 "type" : "field",
1697 "value" : ["int_header", "instruction_mask_0811"]
1698 },
1699 {
1700 "type" : "hexstr",
1701 "value" : "0x00"
1702 }
1703 ],
1704 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001705 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001706 "line" : 50,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001707 "column" : 8,
1708 "source_fragment" : "hdr.int_header.instruction_mask_0811 = 0"
1709 }
1710 },
1711 {
1712 "op" : "assign",
1713 "parameters" : [
1714 {
1715 "type" : "field",
1716 "value" : ["int_header", "instruction_mask_1215"]
1717 },
1718 {
1719 "type" : "hexstr",
1720 "value" : "0x00"
1721 }
1722 ],
1723 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001724 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001725 "line" : 51,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001726 "column" : 8,
1727 "source_fragment" : "hdr.int_header.instruction_mask_1215 = 0"
1728 }
1729 },
1730 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001731 "op" : "assign",
1732 "parameters" : [
1733 {
1734 "type" : "field",
1735 "value" : ["ipv4", "len"]
1736 },
1737 {
1738 "type" : "expression",
1739 "value" : {
1740 "type" : "expression",
1741 "value" : {
1742 "op" : "&",
1743 "left" : {
1744 "type" : "expression",
1745 "value" : {
1746 "op" : "+",
1747 "left" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001748 "type" : "expression",
1749 "value" : {
1750 "op" : "&",
1751 "left" : {
1752 "type" : "expression",
1753 "value" : {
1754 "op" : "+",
1755 "left" : {
1756 "type" : "field",
1757 "value" : ["ipv4", "len"]
1758 },
1759 "right" : {
1760 "type" : "hexstr",
1761 "value" : "0x0008"
1762 }
1763 }
1764 },
1765 "right" : {
1766 "type" : "hexstr",
1767 "value" : "0xffff"
1768 }
1769 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001770 },
1771 "right" : {
1772 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001773 "value" : "0x0004"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001774 }
1775 }
1776 },
1777 "right" : {
1778 "type" : "hexstr",
1779 "value" : "0xffff"
1780 }
1781 }
1782 }
1783 }
1784 ],
1785 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001786 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001787 "line" : 54,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001788 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001789 "source_fragment" : "hdr.ipv4.len = hdr.ipv4.len + INT_HEADER_SIZE + INT_SHIM_HEADER_SIZE"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001790 }
1791 },
1792 {
1793 "op" : "assign",
1794 "parameters" : [
1795 {
1796 "type" : "field",
1797 "value" : ["udp", "length_"]
1798 },
1799 {
1800 "type" : "expression",
1801 "value" : {
1802 "type" : "expression",
1803 "value" : {
1804 "op" : "&",
1805 "left" : {
1806 "type" : "expression",
1807 "value" : {
1808 "op" : "+",
1809 "left" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001810 "type" : "expression",
1811 "value" : {
1812 "op" : "&",
1813 "left" : {
1814 "type" : "expression",
1815 "value" : {
1816 "op" : "+",
1817 "left" : {
1818 "type" : "field",
1819 "value" : ["udp", "length_"]
1820 },
1821 "right" : {
1822 "type" : "hexstr",
1823 "value" : "0x0008"
1824 }
1825 }
1826 },
1827 "right" : {
1828 "type" : "hexstr",
1829 "value" : "0xffff"
1830 }
1831 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001832 },
1833 "right" : {
1834 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001835 "value" : "0x0004"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001836 }
1837 }
1838 },
1839 "right" : {
1840 "type" : "hexstr",
1841 "value" : "0xffff"
1842 }
1843 }
1844 }
1845 }
1846 ],
1847 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001848 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001849 "line" : 55,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001850 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001851 "source_fragment" : "hdr.udp.length_ = hdr.udp.length_ + INT_HEADER_SIZE + INT_SHIM_HEADER_SIZE"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001852 }
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001853 },
1854 {
1855 "op" : "assign",
1856 "parameters" : [
1857 {
1858 "type" : "field",
1859 "value" : ["ipv4", "dscp"]
1860 },
1861 {
1862 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001863 "value" : "0x17"
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001864 }
1865 ],
1866 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07001867 "filename" : "include/int_definitions.p4",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001868 "line" : 24,
1869 "column" : 24,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001870 "source_fragment" : "0x17; ..."
Jonghwan Hyun8be03392017-12-04 15:48:44 -08001871 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001872 }
1873 ]
1874 },
1875 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001876 "name" : "act",
1877 "id" : 10,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08001878 "runtime_data" : [],
1879 "primitives" : [
1880 {
1881 "op" : "assign",
1882 "parameters" : [
1883 {
1884 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09001885 "value" : ["standard_metadata", "egress_spec"]
1886 },
1887 {
1888 "type" : "field",
1889 "value" : ["packet_out", "egress_port"]
1890 }
1891 ],
1892 "source_info" : {
1893 "filename" : "include/packet_io.p4",
1894 "line" : 27,
1895 "column" : 12,
1896 "source_fragment" : "standard_metadata.egress_spec = hdr.packet_out.egress_port"
1897 }
1898 },
1899 {
1900 "op" : "remove_header",
1901 "parameters" : [
1902 {
1903 "type" : "header",
1904 "value" : "packet_out"
1905 }
1906 ],
1907 "source_info" : {
1908 "filename" : "include/packet_io.p4",
1909 "line" : 28,
1910 "column" : 12,
1911 "source_fragment" : "hdr.packet_out.setInvalid()"
1912 }
1913 }
1914 ]
1915 },
1916 {
1917 "name" : "act_0",
1918 "id" : 11,
1919 "runtime_data" : [],
1920 "primitives" : [
1921 {
1922 "op" : "assign",
1923 "parameters" : [
1924 {
1925 "type" : "field",
1926 "value" : ["scalars", "tmp_0"]
1927 },
1928 {
1929 "type" : "expression",
1930 "value" : {
1931 "type" : "expression",
1932 "value" : {
1933 "op" : "&",
1934 "left" : {
1935 "type" : "field",
1936 "value" : ["standard_metadata", "ingress_port"]
1937 },
1938 "right" : {
1939 "type" : "hexstr",
1940 "value" : "0xffffffff"
1941 }
1942 }
1943 }
1944 }
1945 ],
1946 "source_info" : {
1947 "filename" : "include/port_counters.p4",
1948 "line" : 29,
1949 "column" : 35,
1950 "source_fragment" : "(bit<32>) standard_metadata.ingress_port"
1951 }
1952 },
1953 {
1954 "op" : "count",
1955 "parameters" : [
1956 {
1957 "type" : "counter_array",
1958 "value" : "ingress.port_counters_ingress.ingress_port_counter"
1959 },
1960 {
1961 "type" : "field",
1962 "value" : ["scalars", "tmp_0"]
1963 }
1964 ],
1965 "source_info" : {
1966 "filename" : "include/port_counters.p4",
1967 "line" : 29,
1968 "column" : 8,
1969 "source_fragment" : "ingress_port_counter.count((bit<32>) standard_metadata.ingress_port)"
1970 }
1971 }
1972 ]
1973 },
1974 {
1975 "name" : "act_1",
1976 "id" : 12,
1977 "runtime_data" : [],
1978 "primitives" : [
1979 {
1980 "op" : "clone_ingress_pkt_to_egress",
1981 "parameters" : [
1982 {
1983 "type" : "hexstr",
1984 "value" : "0x000001f4"
1985 },
1986 {
1987 "type" : "hexstr",
1988 "value" : "0x1"
1989 }
1990 ],
1991 "source_info" : {
1992 "filename" : "int.p4",
1993 "line" : 56,
1994 "column" : 12,
1995 "source_fragment" : "clone3(CloneType.I2E, REPORT_MIRROR_SESSION_ID, standard_metadata)"
1996 }
1997 }
1998 ]
1999 },
2000 {
2001 "name" : "nop",
2002 "id" : 13,
2003 "runtime_data" : [],
2004 "primitives" : []
2005 },
2006 {
2007 "name" : "nop",
2008 "id" : 14,
2009 "runtime_data" : [],
2010 "primitives" : []
2011 },
2012 {
2013 "name" : "NoAction",
2014 "id" : 15,
2015 "runtime_data" : [],
2016 "primitives" : []
2017 },
2018 {
2019 "name" : "NoAction",
2020 "id" : 16,
2021 "runtime_data" : [],
2022 "primitives" : []
2023 },
2024 {
2025 "name" : "egress.process_int_transit.init_metadata",
2026 "id" : 17,
2027 "runtime_data" : [
2028 {
2029 "name" : "switch_id",
2030 "bitwidth" : 32
2031 }
2032 ],
2033 "primitives" : [
2034 {
2035 "op" : "assign",
2036 "parameters" : [
2037 {
2038 "type" : "field",
2039 "value" : ["userMetadata.int_meta", "transit"]
2040 },
2041 {
2042 "type" : "expression",
2043 "value" : {
2044 "type" : "expression",
2045 "value" : {
2046 "op" : "b2d",
2047 "left" : null,
2048 "right" : {
2049 "type" : "bool",
2050 "value" : true
2051 }
2052 }
2053 }
2054 }
2055 ],
2056 "source_info" : {
2057 "filename" : "include/int_transit.p4",
2058 "line" : 26,
2059 "column" : 8,
2060 "source_fragment" : "local_metadata.int_meta.transit = true"
2061 }
2062 },
2063 {
2064 "op" : "assign",
2065 "parameters" : [
2066 {
2067 "type" : "field",
2068 "value" : ["userMetadata.int_meta", "switch_id"]
2069 },
2070 {
2071 "type" : "runtime_data",
2072 "value" : 0
2073 }
2074 ],
2075 "source_info" : {
2076 "filename" : "include/int_transit.p4",
2077 "line" : 27,
2078 "column" : 8,
2079 "source_fragment" : "local_metadata.int_meta.switch_id = switch_id"
2080 }
2081 }
2082 ]
2083 },
2084 {
2085 "name" : "egress.process_int_transit.int_set_header_0003_i0",
2086 "id" : 18,
2087 "runtime_data" : [],
2088 "primitives" : []
2089 },
2090 {
2091 "name" : "egress.process_int_transit.int_set_header_0003_i1",
2092 "id" : 19,
2093 "runtime_data" : [],
2094 "primitives" : [
2095 {
2096 "op" : "add_header",
2097 "parameters" : [
2098 {
2099 "type" : "header",
2100 "value" : "int_q_occupancy"
2101 }
2102 ],
2103 "source_info" : {
2104 "filename" : "include/int_transit.p4",
2105 "line" : 49,
2106 "column" : 8,
2107 "source_fragment" : "hdr.int_q_occupancy.setValid()"
2108 }
2109 },
2110 {
2111 "op" : "assign",
2112 "parameters" : [
2113 {
2114 "type" : "field",
2115 "value" : ["int_q_occupancy", "q_id"]
2116 },
2117 {
2118 "type" : "hexstr",
2119 "value" : "0x00"
2120 }
2121 ],
2122 "source_info" : {
2123 "filename" : "include/int_transit.p4",
2124 "line" : 50,
2125 "column" : 8,
2126 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
2127 }
2128 },
2129 {
2130 "op" : "assign",
2131 "parameters" : [
2132 {
2133 "type" : "field",
2134 "value" : ["int_q_occupancy", "q_occupancy"]
2135 },
2136 {
2137 "type" : "expression",
2138 "value" : {
2139 "type" : "expression",
2140 "value" : {
2141 "op" : "&",
2142 "left" : {
2143 "type" : "field",
2144 "value" : ["standard_metadata", "deq_qdepth"]
2145 },
2146 "right" : {
2147 "type" : "hexstr",
2148 "value" : "0xffffff"
2149 }
2150 }
2151 }
2152 }
2153 ],
2154 "source_info" : {
2155 "filename" : "include/int_transit.p4",
2156 "line" : 53,
2157 "column" : 8,
2158 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
2159 }
2160 },
2161 {
2162 "op" : "assign",
2163 "parameters" : [
2164 {
2165 "type" : "field",
2166 "value" : ["userMetadata.int_meta", "new_words"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002167 },
2168 {
2169 "type" : "expression",
2170 "value" : {
2171 "type" : "expression",
2172 "value" : {
2173 "op" : "&",
2174 "left" : {
2175 "type" : "expression",
2176 "value" : {
2177 "op" : "+",
2178 "left" : {
2179 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002180 "value" : ["userMetadata.int_meta", "new_words"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002181 },
2182 "right" : {
2183 "type" : "hexstr",
2184 "value" : "0x01"
2185 }
2186 }
2187 },
2188 "right" : {
2189 "type" : "hexstr",
2190 "value" : "0xff"
2191 }
2192 }
2193 }
2194 }
2195 ],
2196 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002197 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002198 "line" : 87,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002199 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002200 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 1"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002201 }
2202 },
2203 {
2204 "op" : "assign",
2205 "parameters" : [
2206 {
2207 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002208 "value" : ["userMetadata.int_meta", "new_bytes"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002209 },
2210 {
2211 "type" : "expression",
2212 "value" : {
2213 "type" : "expression",
2214 "value" : {
2215 "op" : "&",
2216 "left" : {
2217 "type" : "expression",
2218 "value" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002219 "op" : "+",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002220 "left" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002221 "type" : "field",
2222 "value" : ["userMetadata.int_meta", "new_bytes"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002223 },
2224 "right" : {
2225 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002226 "value" : "0x0004"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002227 }
2228 }
2229 },
2230 "right" : {
2231 "type" : "hexstr",
2232 "value" : "0xffff"
2233 }
2234 }
2235 }
2236 }
2237 ],
2238 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002239 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002240 "line" : 88,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002241 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002242 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 4"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002243 }
2244 }
2245 ]
2246 },
2247 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002248 "name" : "egress.process_int_transit.int_set_header_0003_i2",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002249 "id" : 20,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002250 "runtime_data" : [],
2251 "primitives" : [
2252 {
2253 "op" : "add_header",
2254 "parameters" : [
2255 {
2256 "type" : "header",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002257 "value" : "int_hop_latency"
2258 }
2259 ],
2260 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002261 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002262 "line" : 43,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002263 "column" : 8,
2264 "source_fragment" : "hdr.int_hop_latency.setValid()"
2265 }
2266 },
2267 {
2268 "op" : "assign",
2269 "parameters" : [
2270 {
2271 "type" : "field",
2272 "value" : ["int_hop_latency", "hop_latency"]
2273 },
2274 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002275 "type" : "expression",
2276 "value" : {
2277 "type" : "expression",
2278 "value" : {
2279 "op" : "&",
2280 "left" : {
2281 "type" : "expression",
2282 "value" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002283 "op" : "-",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002284 "left" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002285 "type" : "expression",
2286 "value" : {
2287 "op" : "&",
2288 "left" : {
2289 "type" : "field",
2290 "value" : ["standard_metadata", "egress_global_timestamp"]
2291 },
2292 "right" : {
2293 "type" : "hexstr",
2294 "value" : "0xffffffff"
2295 }
2296 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002297 },
2298 "right" : {
2299 "type" : "expression",
2300 "value" : {
2301 "op" : "&",
2302 "left" : {
2303 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002304 "value" : ["standard_metadata", "ingress_global_timestamp"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002305 },
2306 "right" : {
2307 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002308 "value" : "0xffffffff"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002309 }
2310 }
2311 }
2312 }
2313 },
2314 "right" : {
2315 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002316 "value" : "0xffffffff"
2317 }
2318 }
2319 }
2320 }
2321 ],
2322 "source_info" : {
2323 "filename" : "include/int_transit.p4",
2324 "line" : 44,
2325 "column" : 8,
2326 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) standard_metadata.egress_global_timestamp - (bit<32>) standard_metadata.ingress_global_timestamp"
2327 }
2328 },
2329 {
2330 "op" : "assign",
2331 "parameters" : [
2332 {
2333 "type" : "field",
2334 "value" : ["userMetadata.int_meta", "new_words"]
2335 },
2336 {
2337 "type" : "expression",
2338 "value" : {
2339 "type" : "expression",
2340 "value" : {
2341 "op" : "&",
2342 "left" : {
2343 "type" : "expression",
2344 "value" : {
2345 "op" : "+",
2346 "left" : {
2347 "type" : "field",
2348 "value" : ["userMetadata.int_meta", "new_words"]
2349 },
2350 "right" : {
2351 "type" : "hexstr",
2352 "value" : "0x01"
2353 }
2354 }
2355 },
2356 "right" : {
2357 "type" : "hexstr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002358 "value" : "0xff"
2359 }
2360 }
2361 }
2362 }
2363 ],
2364 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07002365 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002366 "line" : 87,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08002367 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09002368 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 1"
2369 }
2370 },
2371 {
2372 "op" : "assign",
2373 "parameters" : [
2374 {
2375 "type" : "field",
2376 "value" : ["userMetadata.int_meta", "new_bytes"]
2377 },
2378 {
2379 "type" : "expression",
2380 "value" : {
2381 "type" : "expression",
2382 "value" : {
2383 "op" : "&",
2384 "left" : {
2385 "type" : "expression",
2386 "value" : {
2387 "op" : "+",
2388 "left" : {
2389 "type" : "field",
2390 "value" : ["userMetadata.int_meta", "new_bytes"]
2391 },
2392 "right" : {
2393 "type" : "hexstr",
2394 "value" : "0x0004"
2395 }
2396 }
2397 },
2398 "right" : {
2399 "type" : "hexstr",
2400 "value" : "0xffff"
2401 }
2402 }
2403 }
2404 }
2405 ],
2406 "source_info" : {
2407 "filename" : "include/int_transit.p4",
2408 "line" : 88,
2409 "column" : 8,
2410 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 4"
2411 }
2412 }
2413 ]
2414 },
2415 {
2416 "name" : "egress.process_int_transit.int_set_header_0003_i3",
2417 "id" : 21,
2418 "runtime_data" : [],
2419 "primitives" : [
2420 {
2421 "op" : "add_header",
2422 "parameters" : [
2423 {
2424 "type" : "header",
2425 "value" : "int_q_occupancy"
2426 }
2427 ],
2428 "source_info" : {
2429 "filename" : "include/int_transit.p4",
2430 "line" : 49,
2431 "column" : 8,
2432 "source_fragment" : "hdr.int_q_occupancy.setValid()"
2433 }
2434 },
2435 {
2436 "op" : "assign",
2437 "parameters" : [
2438 {
2439 "type" : "field",
2440 "value" : ["int_q_occupancy", "q_id"]
2441 },
2442 {
2443 "type" : "hexstr",
2444 "value" : "0x00"
2445 }
2446 ],
2447 "source_info" : {
2448 "filename" : "include/int_transit.p4",
2449 "line" : 50,
2450 "column" : 8,
2451 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
2452 }
2453 },
2454 {
2455 "op" : "assign",
2456 "parameters" : [
2457 {
2458 "type" : "field",
2459 "value" : ["int_q_occupancy", "q_occupancy"]
2460 },
2461 {
2462 "type" : "expression",
2463 "value" : {
2464 "type" : "expression",
2465 "value" : {
2466 "op" : "&",
2467 "left" : {
2468 "type" : "field",
2469 "value" : ["standard_metadata", "deq_qdepth"]
2470 },
2471 "right" : {
2472 "type" : "hexstr",
2473 "value" : "0xffffff"
2474 }
2475 }
2476 }
2477 }
2478 ],
2479 "source_info" : {
2480 "filename" : "include/int_transit.p4",
2481 "line" : 53,
2482 "column" : 8,
2483 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
2484 }
2485 },
2486 {
2487 "op" : "add_header",
2488 "parameters" : [
2489 {
2490 "type" : "header",
2491 "value" : "int_hop_latency"
2492 }
2493 ],
2494 "source_info" : {
2495 "filename" : "include/int_transit.p4",
2496 "line" : 43,
2497 "column" : 8,
2498 "source_fragment" : "hdr.int_hop_latency.setValid()"
2499 }
2500 },
2501 {
2502 "op" : "assign",
2503 "parameters" : [
2504 {
2505 "type" : "field",
2506 "value" : ["int_hop_latency", "hop_latency"]
2507 },
2508 {
2509 "type" : "expression",
2510 "value" : {
2511 "type" : "expression",
2512 "value" : {
2513 "op" : "&",
2514 "left" : {
2515 "type" : "expression",
2516 "value" : {
2517 "op" : "-",
2518 "left" : {
2519 "type" : "expression",
2520 "value" : {
2521 "op" : "&",
2522 "left" : {
2523 "type" : "field",
2524 "value" : ["standard_metadata", "egress_global_timestamp"]
2525 },
2526 "right" : {
2527 "type" : "hexstr",
2528 "value" : "0xffffffff"
2529 }
2530 }
2531 },
2532 "right" : {
2533 "type" : "expression",
2534 "value" : {
2535 "op" : "&",
2536 "left" : {
2537 "type" : "field",
2538 "value" : ["standard_metadata", "ingress_global_timestamp"]
2539 },
2540 "right" : {
2541 "type" : "hexstr",
2542 "value" : "0xffffffff"
2543 }
2544 }
2545 }
2546 }
2547 },
2548 "right" : {
2549 "type" : "hexstr",
2550 "value" : "0xffffffff"
2551 }
2552 }
2553 }
2554 }
2555 ],
2556 "source_info" : {
2557 "filename" : "include/int_transit.p4",
2558 "line" : 44,
2559 "column" : 8,
2560 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) standard_metadata.egress_global_timestamp - (bit<32>) standard_metadata.ingress_global_timestamp"
2561 }
2562 },
2563 {
2564 "op" : "assign",
2565 "parameters" : [
2566 {
2567 "type" : "field",
2568 "value" : ["userMetadata.int_meta", "new_words"]
2569 },
2570 {
2571 "type" : "expression",
2572 "value" : {
2573 "type" : "expression",
2574 "value" : {
2575 "op" : "&",
2576 "left" : {
2577 "type" : "expression",
2578 "value" : {
2579 "op" : "+",
2580 "left" : {
2581 "type" : "field",
2582 "value" : ["userMetadata.int_meta", "new_words"]
2583 },
2584 "right" : {
2585 "type" : "hexstr",
2586 "value" : "0x02"
2587 }
2588 }
2589 },
2590 "right" : {
2591 "type" : "hexstr",
2592 "value" : "0xff"
2593 }
2594 }
2595 }
2596 }
2597 ],
2598 "source_info" : {
2599 "filename" : "include/int_transit.p4",
2600 "line" : 93,
2601 "column" : 8,
2602 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
2603 }
2604 },
2605 {
2606 "op" : "assign",
2607 "parameters" : [
2608 {
2609 "type" : "field",
2610 "value" : ["userMetadata.int_meta", "new_bytes"]
2611 },
2612 {
2613 "type" : "expression",
2614 "value" : {
2615 "type" : "expression",
2616 "value" : {
2617 "op" : "&",
2618 "left" : {
2619 "type" : "expression",
2620 "value" : {
2621 "op" : "+",
2622 "left" : {
2623 "type" : "field",
2624 "value" : ["userMetadata.int_meta", "new_bytes"]
2625 },
2626 "right" : {
2627 "type" : "hexstr",
2628 "value" : "0x0008"
2629 }
2630 }
2631 },
2632 "right" : {
2633 "type" : "hexstr",
2634 "value" : "0xffff"
2635 }
2636 }
2637 }
2638 }
2639 ],
2640 "source_info" : {
2641 "filename" : "include/int_transit.p4",
2642 "line" : 94,
2643 "column" : 8,
2644 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
2645 }
2646 }
2647 ]
2648 },
2649 {
2650 "name" : "egress.process_int_transit.int_set_header_0003_i4",
2651 "id" : 22,
2652 "runtime_data" : [],
2653 "primitives" : [
2654 {
2655 "op" : "add_header",
2656 "parameters" : [
2657 {
2658 "type" : "header",
2659 "value" : "int_level1_port_ids"
2660 }
2661 ],
2662 "source_info" : {
2663 "filename" : "include/int_transit.p4",
2664 "line" : 37,
2665 "column" : 8,
2666 "source_fragment" : "hdr.int_level1_port_ids.setValid()"
2667 }
2668 },
2669 {
2670 "op" : "assign",
2671 "parameters" : [
2672 {
2673 "type" : "field",
2674 "value" : ["int_level1_port_ids", "ingress_port_id"]
2675 },
2676 {
2677 "type" : "expression",
2678 "value" : {
2679 "type" : "expression",
2680 "value" : {
2681 "op" : "&",
2682 "left" : {
2683 "type" : "field",
2684 "value" : ["standard_metadata", "ingress_port"]
2685 },
2686 "right" : {
2687 "type" : "hexstr",
2688 "value" : "0xffff"
2689 }
2690 }
2691 }
2692 }
2693 ],
2694 "source_info" : {
2695 "filename" : "include/int_transit.p4",
2696 "line" : 38,
2697 "column" : 8,
2698 "source_fragment" : "hdr.int_level1_port_ids.ingress_port_id = (bit<16>) standard_metadata.ingress_port"
2699 }
2700 },
2701 {
2702 "op" : "assign",
2703 "parameters" : [
2704 {
2705 "type" : "field",
2706 "value" : ["int_level1_port_ids", "egress_port_id"]
2707 },
2708 {
2709 "type" : "expression",
2710 "value" : {
2711 "type" : "expression",
2712 "value" : {
2713 "op" : "&",
2714 "left" : {
2715 "type" : "field",
2716 "value" : ["standard_metadata", "egress_port"]
2717 },
2718 "right" : {
2719 "type" : "hexstr",
2720 "value" : "0xffff"
2721 }
2722 }
2723 }
2724 }
2725 ],
2726 "source_info" : {
2727 "filename" : "include/int_transit.p4",
2728 "line" : 39,
2729 "column" : 8,
2730 "source_fragment" : "hdr.int_level1_port_ids.egress_port_id = (bit<16>) standard_metadata.egress_port"
2731 }
2732 },
2733 {
2734 "op" : "assign",
2735 "parameters" : [
2736 {
2737 "type" : "field",
2738 "value" : ["userMetadata.int_meta", "new_words"]
2739 },
2740 {
2741 "type" : "expression",
2742 "value" : {
2743 "type" : "expression",
2744 "value" : {
2745 "op" : "&",
2746 "left" : {
2747 "type" : "expression",
2748 "value" : {
2749 "op" : "+",
2750 "left" : {
2751 "type" : "field",
2752 "value" : ["userMetadata.int_meta", "new_words"]
2753 },
2754 "right" : {
2755 "type" : "hexstr",
2756 "value" : "0x01"
2757 }
2758 }
2759 },
2760 "right" : {
2761 "type" : "hexstr",
2762 "value" : "0xff"
2763 }
2764 }
2765 }
2766 }
2767 ],
2768 "source_info" : {
2769 "filename" : "include/int_transit.p4",
2770 "line" : 87,
2771 "column" : 8,
2772 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 1"
2773 }
2774 },
2775 {
2776 "op" : "assign",
2777 "parameters" : [
2778 {
2779 "type" : "field",
2780 "value" : ["userMetadata.int_meta", "new_bytes"]
2781 },
2782 {
2783 "type" : "expression",
2784 "value" : {
2785 "type" : "expression",
2786 "value" : {
2787 "op" : "&",
2788 "left" : {
2789 "type" : "expression",
2790 "value" : {
2791 "op" : "+",
2792 "left" : {
2793 "type" : "field",
2794 "value" : ["userMetadata.int_meta", "new_bytes"]
2795 },
2796 "right" : {
2797 "type" : "hexstr",
2798 "value" : "0x0004"
2799 }
2800 }
2801 },
2802 "right" : {
2803 "type" : "hexstr",
2804 "value" : "0xffff"
2805 }
2806 }
2807 }
2808 }
2809 ],
2810 "source_info" : {
2811 "filename" : "include/int_transit.p4",
2812 "line" : 88,
2813 "column" : 8,
2814 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 4"
2815 }
2816 }
2817 ]
2818 },
2819 {
2820 "name" : "egress.process_int_transit.int_set_header_0003_i5",
2821 "id" : 23,
2822 "runtime_data" : [],
2823 "primitives" : [
2824 {
2825 "op" : "add_header",
2826 "parameters" : [
2827 {
2828 "type" : "header",
2829 "value" : "int_q_occupancy"
2830 }
2831 ],
2832 "source_info" : {
2833 "filename" : "include/int_transit.p4",
2834 "line" : 49,
2835 "column" : 8,
2836 "source_fragment" : "hdr.int_q_occupancy.setValid()"
2837 }
2838 },
2839 {
2840 "op" : "assign",
2841 "parameters" : [
2842 {
2843 "type" : "field",
2844 "value" : ["int_q_occupancy", "q_id"]
2845 },
2846 {
2847 "type" : "hexstr",
2848 "value" : "0x00"
2849 }
2850 ],
2851 "source_info" : {
2852 "filename" : "include/int_transit.p4",
2853 "line" : 50,
2854 "column" : 8,
2855 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
2856 }
2857 },
2858 {
2859 "op" : "assign",
2860 "parameters" : [
2861 {
2862 "type" : "field",
2863 "value" : ["int_q_occupancy", "q_occupancy"]
2864 },
2865 {
2866 "type" : "expression",
2867 "value" : {
2868 "type" : "expression",
2869 "value" : {
2870 "op" : "&",
2871 "left" : {
2872 "type" : "field",
2873 "value" : ["standard_metadata", "deq_qdepth"]
2874 },
2875 "right" : {
2876 "type" : "hexstr",
2877 "value" : "0xffffff"
2878 }
2879 }
2880 }
2881 }
2882 ],
2883 "source_info" : {
2884 "filename" : "include/int_transit.p4",
2885 "line" : 53,
2886 "column" : 8,
2887 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
2888 }
2889 },
2890 {
2891 "op" : "add_header",
2892 "parameters" : [
2893 {
2894 "type" : "header",
2895 "value" : "int_level1_port_ids"
2896 }
2897 ],
2898 "source_info" : {
2899 "filename" : "include/int_transit.p4",
2900 "line" : 37,
2901 "column" : 8,
2902 "source_fragment" : "hdr.int_level1_port_ids.setValid()"
2903 }
2904 },
2905 {
2906 "op" : "assign",
2907 "parameters" : [
2908 {
2909 "type" : "field",
2910 "value" : ["int_level1_port_ids", "ingress_port_id"]
2911 },
2912 {
2913 "type" : "expression",
2914 "value" : {
2915 "type" : "expression",
2916 "value" : {
2917 "op" : "&",
2918 "left" : {
2919 "type" : "field",
2920 "value" : ["standard_metadata", "ingress_port"]
2921 },
2922 "right" : {
2923 "type" : "hexstr",
2924 "value" : "0xffff"
2925 }
2926 }
2927 }
2928 }
2929 ],
2930 "source_info" : {
2931 "filename" : "include/int_transit.p4",
2932 "line" : 38,
2933 "column" : 8,
2934 "source_fragment" : "hdr.int_level1_port_ids.ingress_port_id = (bit<16>) standard_metadata.ingress_port"
2935 }
2936 },
2937 {
2938 "op" : "assign",
2939 "parameters" : [
2940 {
2941 "type" : "field",
2942 "value" : ["int_level1_port_ids", "egress_port_id"]
2943 },
2944 {
2945 "type" : "expression",
2946 "value" : {
2947 "type" : "expression",
2948 "value" : {
2949 "op" : "&",
2950 "left" : {
2951 "type" : "field",
2952 "value" : ["standard_metadata", "egress_port"]
2953 },
2954 "right" : {
2955 "type" : "hexstr",
2956 "value" : "0xffff"
2957 }
2958 }
2959 }
2960 }
2961 ],
2962 "source_info" : {
2963 "filename" : "include/int_transit.p4",
2964 "line" : 39,
2965 "column" : 8,
2966 "source_fragment" : "hdr.int_level1_port_ids.egress_port_id = (bit<16>) standard_metadata.egress_port"
2967 }
2968 },
2969 {
2970 "op" : "assign",
2971 "parameters" : [
2972 {
2973 "type" : "field",
2974 "value" : ["userMetadata.int_meta", "new_words"]
2975 },
2976 {
2977 "type" : "expression",
2978 "value" : {
2979 "type" : "expression",
2980 "value" : {
2981 "op" : "&",
2982 "left" : {
2983 "type" : "expression",
2984 "value" : {
2985 "op" : "+",
2986 "left" : {
2987 "type" : "field",
2988 "value" : ["userMetadata.int_meta", "new_words"]
2989 },
2990 "right" : {
2991 "type" : "hexstr",
2992 "value" : "0x02"
2993 }
2994 }
2995 },
2996 "right" : {
2997 "type" : "hexstr",
2998 "value" : "0xff"
2999 }
3000 }
3001 }
3002 }
3003 ],
3004 "source_info" : {
3005 "filename" : "include/int_transit.p4",
3006 "line" : 93,
3007 "column" : 8,
3008 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
3009 }
3010 },
3011 {
3012 "op" : "assign",
3013 "parameters" : [
3014 {
3015 "type" : "field",
3016 "value" : ["userMetadata.int_meta", "new_bytes"]
3017 },
3018 {
3019 "type" : "expression",
3020 "value" : {
3021 "type" : "expression",
3022 "value" : {
3023 "op" : "&",
3024 "left" : {
3025 "type" : "expression",
3026 "value" : {
3027 "op" : "+",
3028 "left" : {
3029 "type" : "field",
3030 "value" : ["userMetadata.int_meta", "new_bytes"]
3031 },
3032 "right" : {
3033 "type" : "hexstr",
3034 "value" : "0x0008"
3035 }
3036 }
3037 },
3038 "right" : {
3039 "type" : "hexstr",
3040 "value" : "0xffff"
3041 }
3042 }
3043 }
3044 }
3045 ],
3046 "source_info" : {
3047 "filename" : "include/int_transit.p4",
3048 "line" : 94,
3049 "column" : 8,
3050 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
3051 }
3052 }
3053 ]
3054 },
3055 {
3056 "name" : "egress.process_int_transit.int_set_header_0003_i6",
3057 "id" : 24,
3058 "runtime_data" : [],
3059 "primitives" : [
3060 {
3061 "op" : "add_header",
3062 "parameters" : [
3063 {
3064 "type" : "header",
3065 "value" : "int_hop_latency"
3066 }
3067 ],
3068 "source_info" : {
3069 "filename" : "include/int_transit.p4",
3070 "line" : 43,
3071 "column" : 8,
3072 "source_fragment" : "hdr.int_hop_latency.setValid()"
3073 }
3074 },
3075 {
3076 "op" : "assign",
3077 "parameters" : [
3078 {
3079 "type" : "field",
3080 "value" : ["int_hop_latency", "hop_latency"]
3081 },
3082 {
3083 "type" : "expression",
3084 "value" : {
3085 "type" : "expression",
3086 "value" : {
3087 "op" : "&",
3088 "left" : {
3089 "type" : "expression",
3090 "value" : {
3091 "op" : "-",
3092 "left" : {
3093 "type" : "expression",
3094 "value" : {
3095 "op" : "&",
3096 "left" : {
3097 "type" : "field",
3098 "value" : ["standard_metadata", "egress_global_timestamp"]
3099 },
3100 "right" : {
3101 "type" : "hexstr",
3102 "value" : "0xffffffff"
3103 }
3104 }
3105 },
3106 "right" : {
3107 "type" : "expression",
3108 "value" : {
3109 "op" : "&",
3110 "left" : {
3111 "type" : "field",
3112 "value" : ["standard_metadata", "ingress_global_timestamp"]
3113 },
3114 "right" : {
3115 "type" : "hexstr",
3116 "value" : "0xffffffff"
3117 }
3118 }
3119 }
3120 }
3121 },
3122 "right" : {
3123 "type" : "hexstr",
3124 "value" : "0xffffffff"
3125 }
3126 }
3127 }
3128 }
3129 ],
3130 "source_info" : {
3131 "filename" : "include/int_transit.p4",
3132 "line" : 44,
3133 "column" : 8,
3134 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) standard_metadata.egress_global_timestamp - (bit<32>) standard_metadata.ingress_global_timestamp"
3135 }
3136 },
3137 {
3138 "op" : "add_header",
3139 "parameters" : [
3140 {
3141 "type" : "header",
3142 "value" : "int_level1_port_ids"
3143 }
3144 ],
3145 "source_info" : {
3146 "filename" : "include/int_transit.p4",
3147 "line" : 37,
3148 "column" : 8,
3149 "source_fragment" : "hdr.int_level1_port_ids.setValid()"
3150 }
3151 },
3152 {
3153 "op" : "assign",
3154 "parameters" : [
3155 {
3156 "type" : "field",
3157 "value" : ["int_level1_port_ids", "ingress_port_id"]
3158 },
3159 {
3160 "type" : "expression",
3161 "value" : {
3162 "type" : "expression",
3163 "value" : {
3164 "op" : "&",
3165 "left" : {
3166 "type" : "field",
3167 "value" : ["standard_metadata", "ingress_port"]
3168 },
3169 "right" : {
3170 "type" : "hexstr",
3171 "value" : "0xffff"
3172 }
3173 }
3174 }
3175 }
3176 ],
3177 "source_info" : {
3178 "filename" : "include/int_transit.p4",
3179 "line" : 38,
3180 "column" : 8,
3181 "source_fragment" : "hdr.int_level1_port_ids.ingress_port_id = (bit<16>) standard_metadata.ingress_port"
3182 }
3183 },
3184 {
3185 "op" : "assign",
3186 "parameters" : [
3187 {
3188 "type" : "field",
3189 "value" : ["int_level1_port_ids", "egress_port_id"]
3190 },
3191 {
3192 "type" : "expression",
3193 "value" : {
3194 "type" : "expression",
3195 "value" : {
3196 "op" : "&",
3197 "left" : {
3198 "type" : "field",
3199 "value" : ["standard_metadata", "egress_port"]
3200 },
3201 "right" : {
3202 "type" : "hexstr",
3203 "value" : "0xffff"
3204 }
3205 }
3206 }
3207 }
3208 ],
3209 "source_info" : {
3210 "filename" : "include/int_transit.p4",
3211 "line" : 39,
3212 "column" : 8,
3213 "source_fragment" : "hdr.int_level1_port_ids.egress_port_id = (bit<16>) standard_metadata.egress_port"
3214 }
3215 },
3216 {
3217 "op" : "assign",
3218 "parameters" : [
3219 {
3220 "type" : "field",
3221 "value" : ["userMetadata.int_meta", "new_words"]
3222 },
3223 {
3224 "type" : "expression",
3225 "value" : {
3226 "type" : "expression",
3227 "value" : {
3228 "op" : "&",
3229 "left" : {
3230 "type" : "expression",
3231 "value" : {
3232 "op" : "+",
3233 "left" : {
3234 "type" : "field",
3235 "value" : ["userMetadata.int_meta", "new_words"]
3236 },
3237 "right" : {
3238 "type" : "hexstr",
3239 "value" : "0x02"
3240 }
3241 }
3242 },
3243 "right" : {
3244 "type" : "hexstr",
3245 "value" : "0xff"
3246 }
3247 }
3248 }
3249 }
3250 ],
3251 "source_info" : {
3252 "filename" : "include/int_transit.p4",
3253 "line" : 93,
3254 "column" : 8,
3255 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
3256 }
3257 },
3258 {
3259 "op" : "assign",
3260 "parameters" : [
3261 {
3262 "type" : "field",
3263 "value" : ["userMetadata.int_meta", "new_bytes"]
3264 },
3265 {
3266 "type" : "expression",
3267 "value" : {
3268 "type" : "expression",
3269 "value" : {
3270 "op" : "&",
3271 "left" : {
3272 "type" : "expression",
3273 "value" : {
3274 "op" : "+",
3275 "left" : {
3276 "type" : "field",
3277 "value" : ["userMetadata.int_meta", "new_bytes"]
3278 },
3279 "right" : {
3280 "type" : "hexstr",
3281 "value" : "0x0008"
3282 }
3283 }
3284 },
3285 "right" : {
3286 "type" : "hexstr",
3287 "value" : "0xffff"
3288 }
3289 }
3290 }
3291 }
3292 ],
3293 "source_info" : {
3294 "filename" : "include/int_transit.p4",
3295 "line" : 94,
3296 "column" : 8,
3297 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
3298 }
3299 }
3300 ]
3301 },
3302 {
3303 "name" : "egress.process_int_transit.int_set_header_0003_i7",
3304 "id" : 25,
3305 "runtime_data" : [],
3306 "primitives" : [
3307 {
3308 "op" : "add_header",
3309 "parameters" : [
3310 {
3311 "type" : "header",
3312 "value" : "int_q_occupancy"
3313 }
3314 ],
3315 "source_info" : {
3316 "filename" : "include/int_transit.p4",
3317 "line" : 49,
3318 "column" : 8,
3319 "source_fragment" : "hdr.int_q_occupancy.setValid()"
3320 }
3321 },
3322 {
3323 "op" : "assign",
3324 "parameters" : [
3325 {
3326 "type" : "field",
3327 "value" : ["int_q_occupancy", "q_id"]
3328 },
3329 {
3330 "type" : "hexstr",
3331 "value" : "0x00"
3332 }
3333 ],
3334 "source_info" : {
3335 "filename" : "include/int_transit.p4",
3336 "line" : 50,
3337 "column" : 8,
3338 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
3339 }
3340 },
3341 {
3342 "op" : "assign",
3343 "parameters" : [
3344 {
3345 "type" : "field",
3346 "value" : ["int_q_occupancy", "q_occupancy"]
3347 },
3348 {
3349 "type" : "expression",
3350 "value" : {
3351 "type" : "expression",
3352 "value" : {
3353 "op" : "&",
3354 "left" : {
3355 "type" : "field",
3356 "value" : ["standard_metadata", "deq_qdepth"]
3357 },
3358 "right" : {
3359 "type" : "hexstr",
3360 "value" : "0xffffff"
3361 }
3362 }
3363 }
3364 }
3365 ],
3366 "source_info" : {
3367 "filename" : "include/int_transit.p4",
3368 "line" : 53,
3369 "column" : 8,
3370 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
3371 }
3372 },
3373 {
3374 "op" : "add_header",
3375 "parameters" : [
3376 {
3377 "type" : "header",
3378 "value" : "int_hop_latency"
3379 }
3380 ],
3381 "source_info" : {
3382 "filename" : "include/int_transit.p4",
3383 "line" : 43,
3384 "column" : 8,
3385 "source_fragment" : "hdr.int_hop_latency.setValid()"
3386 }
3387 },
3388 {
3389 "op" : "assign",
3390 "parameters" : [
3391 {
3392 "type" : "field",
3393 "value" : ["int_hop_latency", "hop_latency"]
3394 },
3395 {
3396 "type" : "expression",
3397 "value" : {
3398 "type" : "expression",
3399 "value" : {
3400 "op" : "&",
3401 "left" : {
3402 "type" : "expression",
3403 "value" : {
3404 "op" : "-",
3405 "left" : {
3406 "type" : "expression",
3407 "value" : {
3408 "op" : "&",
3409 "left" : {
3410 "type" : "field",
3411 "value" : ["standard_metadata", "egress_global_timestamp"]
3412 },
3413 "right" : {
3414 "type" : "hexstr",
3415 "value" : "0xffffffff"
3416 }
3417 }
3418 },
3419 "right" : {
3420 "type" : "expression",
3421 "value" : {
3422 "op" : "&",
3423 "left" : {
3424 "type" : "field",
3425 "value" : ["standard_metadata", "ingress_global_timestamp"]
3426 },
3427 "right" : {
3428 "type" : "hexstr",
3429 "value" : "0xffffffff"
3430 }
3431 }
3432 }
3433 }
3434 },
3435 "right" : {
3436 "type" : "hexstr",
3437 "value" : "0xffffffff"
3438 }
3439 }
3440 }
3441 }
3442 ],
3443 "source_info" : {
3444 "filename" : "include/int_transit.p4",
3445 "line" : 44,
3446 "column" : 8,
3447 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) standard_metadata.egress_global_timestamp - (bit<32>) standard_metadata.ingress_global_timestamp"
3448 }
3449 },
3450 {
3451 "op" : "add_header",
3452 "parameters" : [
3453 {
3454 "type" : "header",
3455 "value" : "int_level1_port_ids"
3456 }
3457 ],
3458 "source_info" : {
3459 "filename" : "include/int_transit.p4",
3460 "line" : 37,
3461 "column" : 8,
3462 "source_fragment" : "hdr.int_level1_port_ids.setValid()"
3463 }
3464 },
3465 {
3466 "op" : "assign",
3467 "parameters" : [
3468 {
3469 "type" : "field",
3470 "value" : ["int_level1_port_ids", "ingress_port_id"]
3471 },
3472 {
3473 "type" : "expression",
3474 "value" : {
3475 "type" : "expression",
3476 "value" : {
3477 "op" : "&",
3478 "left" : {
3479 "type" : "field",
3480 "value" : ["standard_metadata", "ingress_port"]
3481 },
3482 "right" : {
3483 "type" : "hexstr",
3484 "value" : "0xffff"
3485 }
3486 }
3487 }
3488 }
3489 ],
3490 "source_info" : {
3491 "filename" : "include/int_transit.p4",
3492 "line" : 38,
3493 "column" : 8,
3494 "source_fragment" : "hdr.int_level1_port_ids.ingress_port_id = (bit<16>) standard_metadata.ingress_port"
3495 }
3496 },
3497 {
3498 "op" : "assign",
3499 "parameters" : [
3500 {
3501 "type" : "field",
3502 "value" : ["int_level1_port_ids", "egress_port_id"]
3503 },
3504 {
3505 "type" : "expression",
3506 "value" : {
3507 "type" : "expression",
3508 "value" : {
3509 "op" : "&",
3510 "left" : {
3511 "type" : "field",
3512 "value" : ["standard_metadata", "egress_port"]
3513 },
3514 "right" : {
3515 "type" : "hexstr",
3516 "value" : "0xffff"
3517 }
3518 }
3519 }
3520 }
3521 ],
3522 "source_info" : {
3523 "filename" : "include/int_transit.p4",
3524 "line" : 39,
3525 "column" : 8,
3526 "source_fragment" : "hdr.int_level1_port_ids.egress_port_id = (bit<16>) standard_metadata.egress_port"
3527 }
3528 },
3529 {
3530 "op" : "assign",
3531 "parameters" : [
3532 {
3533 "type" : "field",
3534 "value" : ["userMetadata.int_meta", "new_words"]
3535 },
3536 {
3537 "type" : "expression",
3538 "value" : {
3539 "type" : "expression",
3540 "value" : {
3541 "op" : "&",
3542 "left" : {
3543 "type" : "expression",
3544 "value" : {
3545 "op" : "+",
3546 "left" : {
3547 "type" : "field",
3548 "value" : ["userMetadata.int_meta", "new_words"]
3549 },
3550 "right" : {
3551 "type" : "hexstr",
3552 "value" : "0x03"
3553 }
3554 }
3555 },
3556 "right" : {
3557 "type" : "hexstr",
3558 "value" : "0xff"
3559 }
3560 }
3561 }
3562 }
3563 ],
3564 "source_info" : {
3565 "filename" : "include/int_transit.p4",
3566 "line" : 99,
3567 "column" : 8,
3568 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 3"
3569 }
3570 },
3571 {
3572 "op" : "assign",
3573 "parameters" : [
3574 {
3575 "type" : "field",
3576 "value" : ["userMetadata.int_meta", "new_bytes"]
3577 },
3578 {
3579 "type" : "expression",
3580 "value" : {
3581 "type" : "expression",
3582 "value" : {
3583 "op" : "&",
3584 "left" : {
3585 "type" : "expression",
3586 "value" : {
3587 "op" : "+",
3588 "left" : {
3589 "type" : "field",
3590 "value" : ["userMetadata.int_meta", "new_bytes"]
3591 },
3592 "right" : {
3593 "type" : "hexstr",
3594 "value" : "0x000c"
3595 }
3596 }
3597 },
3598 "right" : {
3599 "type" : "hexstr",
3600 "value" : "0xffff"
3601 }
3602 }
3603 }
3604 }
3605 ],
3606 "source_info" : {
3607 "filename" : "include/int_transit.p4",
3608 "line" : 100,
3609 "column" : 8,
3610 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 12"
3611 }
3612 }
3613 ]
3614 },
3615 {
3616 "name" : "egress.process_int_transit.int_set_header_0003_i8",
3617 "id" : 26,
3618 "runtime_data" : [],
3619 "primitives" : [
3620 {
3621 "op" : "add_header",
3622 "parameters" : [
3623 {
3624 "type" : "header",
3625 "value" : "int_switch_id"
3626 }
3627 ],
3628 "source_info" : {
3629 "filename" : "include/int_transit.p4",
3630 "line" : 32,
3631 "column" : 8,
3632 "source_fragment" : "hdr.int_switch_id.setValid()"
3633 }
3634 },
3635 {
3636 "op" : "assign",
3637 "parameters" : [
3638 {
3639 "type" : "field",
3640 "value" : ["int_switch_id", "switch_id"]
3641 },
3642 {
3643 "type" : "field",
3644 "value" : ["userMetadata.int_meta", "switch_id"]
3645 }
3646 ],
3647 "source_info" : {
3648 "filename" : "include/int_transit.p4",
3649 "line" : 33,
3650 "column" : 8,
3651 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
3652 }
3653 },
3654 {
3655 "op" : "assign",
3656 "parameters" : [
3657 {
3658 "type" : "field",
3659 "value" : ["userMetadata.int_meta", "new_words"]
3660 },
3661 {
3662 "type" : "expression",
3663 "value" : {
3664 "type" : "expression",
3665 "value" : {
3666 "op" : "&",
3667 "left" : {
3668 "type" : "expression",
3669 "value" : {
3670 "op" : "+",
3671 "left" : {
3672 "type" : "field",
3673 "value" : ["userMetadata.int_meta", "new_words"]
3674 },
3675 "right" : {
3676 "type" : "hexstr",
3677 "value" : "0x01"
3678 }
3679 }
3680 },
3681 "right" : {
3682 "type" : "hexstr",
3683 "value" : "0xff"
3684 }
3685 }
3686 }
3687 }
3688 ],
3689 "source_info" : {
3690 "filename" : "include/int_transit.p4",
3691 "line" : 87,
3692 "column" : 8,
3693 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 1"
3694 }
3695 },
3696 {
3697 "op" : "assign",
3698 "parameters" : [
3699 {
3700 "type" : "field",
3701 "value" : ["userMetadata.int_meta", "new_bytes"]
3702 },
3703 {
3704 "type" : "expression",
3705 "value" : {
3706 "type" : "expression",
3707 "value" : {
3708 "op" : "&",
3709 "left" : {
3710 "type" : "expression",
3711 "value" : {
3712 "op" : "+",
3713 "left" : {
3714 "type" : "field",
3715 "value" : ["userMetadata.int_meta", "new_bytes"]
3716 },
3717 "right" : {
3718 "type" : "hexstr",
3719 "value" : "0x0004"
3720 }
3721 }
3722 },
3723 "right" : {
3724 "type" : "hexstr",
3725 "value" : "0xffff"
3726 }
3727 }
3728 }
3729 }
3730 ],
3731 "source_info" : {
3732 "filename" : "include/int_transit.p4",
3733 "line" : 88,
3734 "column" : 8,
3735 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 4"
3736 }
3737 }
3738 ]
3739 },
3740 {
3741 "name" : "egress.process_int_transit.int_set_header_0003_i9",
3742 "id" : 27,
3743 "runtime_data" : [],
3744 "primitives" : [
3745 {
3746 "op" : "add_header",
3747 "parameters" : [
3748 {
3749 "type" : "header",
3750 "value" : "int_q_occupancy"
3751 }
3752 ],
3753 "source_info" : {
3754 "filename" : "include/int_transit.p4",
3755 "line" : 49,
3756 "column" : 8,
3757 "source_fragment" : "hdr.int_q_occupancy.setValid()"
3758 }
3759 },
3760 {
3761 "op" : "assign",
3762 "parameters" : [
3763 {
3764 "type" : "field",
3765 "value" : ["int_q_occupancy", "q_id"]
3766 },
3767 {
3768 "type" : "hexstr",
3769 "value" : "0x00"
3770 }
3771 ],
3772 "source_info" : {
3773 "filename" : "include/int_transit.p4",
3774 "line" : 50,
3775 "column" : 8,
3776 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
3777 }
3778 },
3779 {
3780 "op" : "assign",
3781 "parameters" : [
3782 {
3783 "type" : "field",
3784 "value" : ["int_q_occupancy", "q_occupancy"]
3785 },
3786 {
3787 "type" : "expression",
3788 "value" : {
3789 "type" : "expression",
3790 "value" : {
3791 "op" : "&",
3792 "left" : {
3793 "type" : "field",
3794 "value" : ["standard_metadata", "deq_qdepth"]
3795 },
3796 "right" : {
3797 "type" : "hexstr",
3798 "value" : "0xffffff"
3799 }
3800 }
3801 }
3802 }
3803 ],
3804 "source_info" : {
3805 "filename" : "include/int_transit.p4",
3806 "line" : 53,
3807 "column" : 8,
3808 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
3809 }
3810 },
3811 {
3812 "op" : "add_header",
3813 "parameters" : [
3814 {
3815 "type" : "header",
3816 "value" : "int_switch_id"
3817 }
3818 ],
3819 "source_info" : {
3820 "filename" : "include/int_transit.p4",
3821 "line" : 32,
3822 "column" : 8,
3823 "source_fragment" : "hdr.int_switch_id.setValid()"
3824 }
3825 },
3826 {
3827 "op" : "assign",
3828 "parameters" : [
3829 {
3830 "type" : "field",
3831 "value" : ["int_switch_id", "switch_id"]
3832 },
3833 {
3834 "type" : "field",
3835 "value" : ["userMetadata.int_meta", "switch_id"]
3836 }
3837 ],
3838 "source_info" : {
3839 "filename" : "include/int_transit.p4",
3840 "line" : 33,
3841 "column" : 8,
3842 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
3843 }
3844 },
3845 {
3846 "op" : "assign",
3847 "parameters" : [
3848 {
3849 "type" : "field",
3850 "value" : ["userMetadata.int_meta", "new_words"]
3851 },
3852 {
3853 "type" : "expression",
3854 "value" : {
3855 "type" : "expression",
3856 "value" : {
3857 "op" : "&",
3858 "left" : {
3859 "type" : "expression",
3860 "value" : {
3861 "op" : "+",
3862 "left" : {
3863 "type" : "field",
3864 "value" : ["userMetadata.int_meta", "new_words"]
3865 },
3866 "right" : {
3867 "type" : "hexstr",
3868 "value" : "0x02"
3869 }
3870 }
3871 },
3872 "right" : {
3873 "type" : "hexstr",
3874 "value" : "0xff"
3875 }
3876 }
3877 }
3878 }
3879 ],
3880 "source_info" : {
3881 "filename" : "include/int_transit.p4",
3882 "line" : 93,
3883 "column" : 8,
3884 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
3885 }
3886 },
3887 {
3888 "op" : "assign",
3889 "parameters" : [
3890 {
3891 "type" : "field",
3892 "value" : ["userMetadata.int_meta", "new_bytes"]
3893 },
3894 {
3895 "type" : "expression",
3896 "value" : {
3897 "type" : "expression",
3898 "value" : {
3899 "op" : "&",
3900 "left" : {
3901 "type" : "expression",
3902 "value" : {
3903 "op" : "+",
3904 "left" : {
3905 "type" : "field",
3906 "value" : ["userMetadata.int_meta", "new_bytes"]
3907 },
3908 "right" : {
3909 "type" : "hexstr",
3910 "value" : "0x0008"
3911 }
3912 }
3913 },
3914 "right" : {
3915 "type" : "hexstr",
3916 "value" : "0xffff"
3917 }
3918 }
3919 }
3920 }
3921 ],
3922 "source_info" : {
3923 "filename" : "include/int_transit.p4",
3924 "line" : 94,
3925 "column" : 8,
3926 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
3927 }
3928 }
3929 ]
3930 },
3931 {
3932 "name" : "egress.process_int_transit.int_set_header_0003_i10",
3933 "id" : 28,
3934 "runtime_data" : [],
3935 "primitives" : [
3936 {
3937 "op" : "add_header",
3938 "parameters" : [
3939 {
3940 "type" : "header",
3941 "value" : "int_hop_latency"
3942 }
3943 ],
3944 "source_info" : {
3945 "filename" : "include/int_transit.p4",
3946 "line" : 43,
3947 "column" : 8,
3948 "source_fragment" : "hdr.int_hop_latency.setValid()"
3949 }
3950 },
3951 {
3952 "op" : "assign",
3953 "parameters" : [
3954 {
3955 "type" : "field",
3956 "value" : ["int_hop_latency", "hop_latency"]
3957 },
3958 {
3959 "type" : "expression",
3960 "value" : {
3961 "type" : "expression",
3962 "value" : {
3963 "op" : "&",
3964 "left" : {
3965 "type" : "expression",
3966 "value" : {
3967 "op" : "-",
3968 "left" : {
3969 "type" : "expression",
3970 "value" : {
3971 "op" : "&",
3972 "left" : {
3973 "type" : "field",
3974 "value" : ["standard_metadata", "egress_global_timestamp"]
3975 },
3976 "right" : {
3977 "type" : "hexstr",
3978 "value" : "0xffffffff"
3979 }
3980 }
3981 },
3982 "right" : {
3983 "type" : "expression",
3984 "value" : {
3985 "op" : "&",
3986 "left" : {
3987 "type" : "field",
3988 "value" : ["standard_metadata", "ingress_global_timestamp"]
3989 },
3990 "right" : {
3991 "type" : "hexstr",
3992 "value" : "0xffffffff"
3993 }
3994 }
3995 }
3996 }
3997 },
3998 "right" : {
3999 "type" : "hexstr",
4000 "value" : "0xffffffff"
4001 }
4002 }
4003 }
4004 }
4005 ],
4006 "source_info" : {
4007 "filename" : "include/int_transit.p4",
4008 "line" : 44,
4009 "column" : 8,
4010 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) standard_metadata.egress_global_timestamp - (bit<32>) standard_metadata.ingress_global_timestamp"
4011 }
4012 },
4013 {
4014 "op" : "add_header",
4015 "parameters" : [
4016 {
4017 "type" : "header",
4018 "value" : "int_switch_id"
4019 }
4020 ],
4021 "source_info" : {
4022 "filename" : "include/int_transit.p4",
4023 "line" : 32,
4024 "column" : 8,
4025 "source_fragment" : "hdr.int_switch_id.setValid()"
4026 }
4027 },
4028 {
4029 "op" : "assign",
4030 "parameters" : [
4031 {
4032 "type" : "field",
4033 "value" : ["int_switch_id", "switch_id"]
4034 },
4035 {
4036 "type" : "field",
4037 "value" : ["userMetadata.int_meta", "switch_id"]
4038 }
4039 ],
4040 "source_info" : {
4041 "filename" : "include/int_transit.p4",
4042 "line" : 33,
4043 "column" : 8,
4044 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
4045 }
4046 },
4047 {
4048 "op" : "assign",
4049 "parameters" : [
4050 {
4051 "type" : "field",
4052 "value" : ["userMetadata.int_meta", "new_words"]
4053 },
4054 {
4055 "type" : "expression",
4056 "value" : {
4057 "type" : "expression",
4058 "value" : {
4059 "op" : "&",
4060 "left" : {
4061 "type" : "expression",
4062 "value" : {
4063 "op" : "+",
4064 "left" : {
4065 "type" : "field",
4066 "value" : ["userMetadata.int_meta", "new_words"]
4067 },
4068 "right" : {
4069 "type" : "hexstr",
4070 "value" : "0x02"
4071 }
4072 }
4073 },
4074 "right" : {
4075 "type" : "hexstr",
4076 "value" : "0xff"
4077 }
4078 }
4079 }
4080 }
4081 ],
4082 "source_info" : {
4083 "filename" : "include/int_transit.p4",
4084 "line" : 93,
4085 "column" : 8,
4086 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
4087 }
4088 },
4089 {
4090 "op" : "assign",
4091 "parameters" : [
4092 {
4093 "type" : "field",
4094 "value" : ["userMetadata.int_meta", "new_bytes"]
4095 },
4096 {
4097 "type" : "expression",
4098 "value" : {
4099 "type" : "expression",
4100 "value" : {
4101 "op" : "&",
4102 "left" : {
4103 "type" : "expression",
4104 "value" : {
4105 "op" : "+",
4106 "left" : {
4107 "type" : "field",
4108 "value" : ["userMetadata.int_meta", "new_bytes"]
4109 },
4110 "right" : {
4111 "type" : "hexstr",
4112 "value" : "0x0008"
4113 }
4114 }
4115 },
4116 "right" : {
4117 "type" : "hexstr",
4118 "value" : "0xffff"
4119 }
4120 }
4121 }
4122 }
4123 ],
4124 "source_info" : {
4125 "filename" : "include/int_transit.p4",
4126 "line" : 94,
4127 "column" : 8,
4128 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
4129 }
4130 }
4131 ]
4132 },
4133 {
4134 "name" : "egress.process_int_transit.int_set_header_0003_i11",
4135 "id" : 29,
4136 "runtime_data" : [],
4137 "primitives" : [
4138 {
4139 "op" : "add_header",
4140 "parameters" : [
4141 {
4142 "type" : "header",
4143 "value" : "int_q_occupancy"
4144 }
4145 ],
4146 "source_info" : {
4147 "filename" : "include/int_transit.p4",
4148 "line" : 49,
4149 "column" : 8,
4150 "source_fragment" : "hdr.int_q_occupancy.setValid()"
4151 }
4152 },
4153 {
4154 "op" : "assign",
4155 "parameters" : [
4156 {
4157 "type" : "field",
4158 "value" : ["int_q_occupancy", "q_id"]
4159 },
4160 {
4161 "type" : "hexstr",
4162 "value" : "0x00"
4163 }
4164 ],
4165 "source_info" : {
4166 "filename" : "include/int_transit.p4",
4167 "line" : 50,
4168 "column" : 8,
4169 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
4170 }
4171 },
4172 {
4173 "op" : "assign",
4174 "parameters" : [
4175 {
4176 "type" : "field",
4177 "value" : ["int_q_occupancy", "q_occupancy"]
4178 },
4179 {
4180 "type" : "expression",
4181 "value" : {
4182 "type" : "expression",
4183 "value" : {
4184 "op" : "&",
4185 "left" : {
4186 "type" : "field",
4187 "value" : ["standard_metadata", "deq_qdepth"]
4188 },
4189 "right" : {
4190 "type" : "hexstr",
4191 "value" : "0xffffff"
4192 }
4193 }
4194 }
4195 }
4196 ],
4197 "source_info" : {
4198 "filename" : "include/int_transit.p4",
4199 "line" : 53,
4200 "column" : 8,
4201 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
4202 }
4203 },
4204 {
4205 "op" : "add_header",
4206 "parameters" : [
4207 {
4208 "type" : "header",
4209 "value" : "int_hop_latency"
4210 }
4211 ],
4212 "source_info" : {
4213 "filename" : "include/int_transit.p4",
4214 "line" : 43,
4215 "column" : 8,
4216 "source_fragment" : "hdr.int_hop_latency.setValid()"
4217 }
4218 },
4219 {
4220 "op" : "assign",
4221 "parameters" : [
4222 {
4223 "type" : "field",
4224 "value" : ["int_hop_latency", "hop_latency"]
4225 },
4226 {
4227 "type" : "expression",
4228 "value" : {
4229 "type" : "expression",
4230 "value" : {
4231 "op" : "&",
4232 "left" : {
4233 "type" : "expression",
4234 "value" : {
4235 "op" : "-",
4236 "left" : {
4237 "type" : "expression",
4238 "value" : {
4239 "op" : "&",
4240 "left" : {
4241 "type" : "field",
4242 "value" : ["standard_metadata", "egress_global_timestamp"]
4243 },
4244 "right" : {
4245 "type" : "hexstr",
4246 "value" : "0xffffffff"
4247 }
4248 }
4249 },
4250 "right" : {
4251 "type" : "expression",
4252 "value" : {
4253 "op" : "&",
4254 "left" : {
4255 "type" : "field",
4256 "value" : ["standard_metadata", "ingress_global_timestamp"]
4257 },
4258 "right" : {
4259 "type" : "hexstr",
4260 "value" : "0xffffffff"
4261 }
4262 }
4263 }
4264 }
4265 },
4266 "right" : {
4267 "type" : "hexstr",
4268 "value" : "0xffffffff"
4269 }
4270 }
4271 }
4272 }
4273 ],
4274 "source_info" : {
4275 "filename" : "include/int_transit.p4",
4276 "line" : 44,
4277 "column" : 8,
4278 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) standard_metadata.egress_global_timestamp - (bit<32>) standard_metadata.ingress_global_timestamp"
4279 }
4280 },
4281 {
4282 "op" : "add_header",
4283 "parameters" : [
4284 {
4285 "type" : "header",
4286 "value" : "int_switch_id"
4287 }
4288 ],
4289 "source_info" : {
4290 "filename" : "include/int_transit.p4",
4291 "line" : 32,
4292 "column" : 8,
4293 "source_fragment" : "hdr.int_switch_id.setValid()"
4294 }
4295 },
4296 {
4297 "op" : "assign",
4298 "parameters" : [
4299 {
4300 "type" : "field",
4301 "value" : ["int_switch_id", "switch_id"]
4302 },
4303 {
4304 "type" : "field",
4305 "value" : ["userMetadata.int_meta", "switch_id"]
4306 }
4307 ],
4308 "source_info" : {
4309 "filename" : "include/int_transit.p4",
4310 "line" : 33,
4311 "column" : 8,
4312 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
4313 }
4314 },
4315 {
4316 "op" : "assign",
4317 "parameters" : [
4318 {
4319 "type" : "field",
4320 "value" : ["userMetadata.int_meta", "new_words"]
4321 },
4322 {
4323 "type" : "expression",
4324 "value" : {
4325 "type" : "expression",
4326 "value" : {
4327 "op" : "&",
4328 "left" : {
4329 "type" : "expression",
4330 "value" : {
4331 "op" : "+",
4332 "left" : {
4333 "type" : "field",
4334 "value" : ["userMetadata.int_meta", "new_words"]
4335 },
4336 "right" : {
4337 "type" : "hexstr",
4338 "value" : "0x03"
4339 }
4340 }
4341 },
4342 "right" : {
4343 "type" : "hexstr",
4344 "value" : "0xff"
4345 }
4346 }
4347 }
4348 }
4349 ],
4350 "source_info" : {
4351 "filename" : "include/int_transit.p4",
4352 "line" : 99,
4353 "column" : 8,
4354 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 3"
4355 }
4356 },
4357 {
4358 "op" : "assign",
4359 "parameters" : [
4360 {
4361 "type" : "field",
4362 "value" : ["userMetadata.int_meta", "new_bytes"]
4363 },
4364 {
4365 "type" : "expression",
4366 "value" : {
4367 "type" : "expression",
4368 "value" : {
4369 "op" : "&",
4370 "left" : {
4371 "type" : "expression",
4372 "value" : {
4373 "op" : "+",
4374 "left" : {
4375 "type" : "field",
4376 "value" : ["userMetadata.int_meta", "new_bytes"]
4377 },
4378 "right" : {
4379 "type" : "hexstr",
4380 "value" : "0x000c"
4381 }
4382 }
4383 },
4384 "right" : {
4385 "type" : "hexstr",
4386 "value" : "0xffff"
4387 }
4388 }
4389 }
4390 }
4391 ],
4392 "source_info" : {
4393 "filename" : "include/int_transit.p4",
4394 "line" : 100,
4395 "column" : 8,
4396 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 12"
4397 }
4398 }
4399 ]
4400 },
4401 {
4402 "name" : "egress.process_int_transit.int_set_header_0003_i12",
4403 "id" : 30,
4404 "runtime_data" : [],
4405 "primitives" : [
4406 {
4407 "op" : "add_header",
4408 "parameters" : [
4409 {
4410 "type" : "header",
4411 "value" : "int_level1_port_ids"
4412 }
4413 ],
4414 "source_info" : {
4415 "filename" : "include/int_transit.p4",
4416 "line" : 37,
4417 "column" : 8,
4418 "source_fragment" : "hdr.int_level1_port_ids.setValid()"
4419 }
4420 },
4421 {
4422 "op" : "assign",
4423 "parameters" : [
4424 {
4425 "type" : "field",
4426 "value" : ["int_level1_port_ids", "ingress_port_id"]
4427 },
4428 {
4429 "type" : "expression",
4430 "value" : {
4431 "type" : "expression",
4432 "value" : {
4433 "op" : "&",
4434 "left" : {
4435 "type" : "field",
4436 "value" : ["standard_metadata", "ingress_port"]
4437 },
4438 "right" : {
4439 "type" : "hexstr",
4440 "value" : "0xffff"
4441 }
4442 }
4443 }
4444 }
4445 ],
4446 "source_info" : {
4447 "filename" : "include/int_transit.p4",
4448 "line" : 38,
4449 "column" : 8,
4450 "source_fragment" : "hdr.int_level1_port_ids.ingress_port_id = (bit<16>) standard_metadata.ingress_port"
4451 }
4452 },
4453 {
4454 "op" : "assign",
4455 "parameters" : [
4456 {
4457 "type" : "field",
4458 "value" : ["int_level1_port_ids", "egress_port_id"]
4459 },
4460 {
4461 "type" : "expression",
4462 "value" : {
4463 "type" : "expression",
4464 "value" : {
4465 "op" : "&",
4466 "left" : {
4467 "type" : "field",
4468 "value" : ["standard_metadata", "egress_port"]
4469 },
4470 "right" : {
4471 "type" : "hexstr",
4472 "value" : "0xffff"
4473 }
4474 }
4475 }
4476 }
4477 ],
4478 "source_info" : {
4479 "filename" : "include/int_transit.p4",
4480 "line" : 39,
4481 "column" : 8,
4482 "source_fragment" : "hdr.int_level1_port_ids.egress_port_id = (bit<16>) standard_metadata.egress_port"
4483 }
4484 },
4485 {
4486 "op" : "add_header",
4487 "parameters" : [
4488 {
4489 "type" : "header",
4490 "value" : "int_switch_id"
4491 }
4492 ],
4493 "source_info" : {
4494 "filename" : "include/int_transit.p4",
4495 "line" : 32,
4496 "column" : 8,
4497 "source_fragment" : "hdr.int_switch_id.setValid()"
4498 }
4499 },
4500 {
4501 "op" : "assign",
4502 "parameters" : [
4503 {
4504 "type" : "field",
4505 "value" : ["int_switch_id", "switch_id"]
4506 },
4507 {
4508 "type" : "field",
4509 "value" : ["userMetadata.int_meta", "switch_id"]
4510 }
4511 ],
4512 "source_info" : {
4513 "filename" : "include/int_transit.p4",
4514 "line" : 33,
4515 "column" : 8,
4516 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
4517 }
4518 },
4519 {
4520 "op" : "assign",
4521 "parameters" : [
4522 {
4523 "type" : "field",
4524 "value" : ["userMetadata.int_meta", "new_words"]
4525 },
4526 {
4527 "type" : "expression",
4528 "value" : {
4529 "type" : "expression",
4530 "value" : {
4531 "op" : "&",
4532 "left" : {
4533 "type" : "expression",
4534 "value" : {
4535 "op" : "+",
4536 "left" : {
4537 "type" : "field",
4538 "value" : ["userMetadata.int_meta", "new_words"]
4539 },
4540 "right" : {
4541 "type" : "hexstr",
4542 "value" : "0x02"
4543 }
4544 }
4545 },
4546 "right" : {
4547 "type" : "hexstr",
4548 "value" : "0xff"
4549 }
4550 }
4551 }
4552 }
4553 ],
4554 "source_info" : {
4555 "filename" : "include/int_transit.p4",
4556 "line" : 93,
4557 "column" : 8,
4558 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
4559 }
4560 },
4561 {
4562 "op" : "assign",
4563 "parameters" : [
4564 {
4565 "type" : "field",
4566 "value" : ["userMetadata.int_meta", "new_bytes"]
4567 },
4568 {
4569 "type" : "expression",
4570 "value" : {
4571 "type" : "expression",
4572 "value" : {
4573 "op" : "&",
4574 "left" : {
4575 "type" : "expression",
4576 "value" : {
4577 "op" : "+",
4578 "left" : {
4579 "type" : "field",
4580 "value" : ["userMetadata.int_meta", "new_bytes"]
4581 },
4582 "right" : {
4583 "type" : "hexstr",
4584 "value" : "0x0008"
4585 }
4586 }
4587 },
4588 "right" : {
4589 "type" : "hexstr",
4590 "value" : "0xffff"
4591 }
4592 }
4593 }
4594 }
4595 ],
4596 "source_info" : {
4597 "filename" : "include/int_transit.p4",
4598 "line" : 94,
4599 "column" : 8,
4600 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
4601 }
4602 }
4603 ]
4604 },
4605 {
4606 "name" : "egress.process_int_transit.int_set_header_0003_i13",
4607 "id" : 31,
4608 "runtime_data" : [],
4609 "primitives" : [
4610 {
4611 "op" : "add_header",
4612 "parameters" : [
4613 {
4614 "type" : "header",
4615 "value" : "int_q_occupancy"
4616 }
4617 ],
4618 "source_info" : {
4619 "filename" : "include/int_transit.p4",
4620 "line" : 49,
4621 "column" : 8,
4622 "source_fragment" : "hdr.int_q_occupancy.setValid()"
4623 }
4624 },
4625 {
4626 "op" : "assign",
4627 "parameters" : [
4628 {
4629 "type" : "field",
4630 "value" : ["int_q_occupancy", "q_id"]
4631 },
4632 {
4633 "type" : "hexstr",
4634 "value" : "0x00"
4635 }
4636 ],
4637 "source_info" : {
4638 "filename" : "include/int_transit.p4",
4639 "line" : 50,
4640 "column" : 8,
4641 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
4642 }
4643 },
4644 {
4645 "op" : "assign",
4646 "parameters" : [
4647 {
4648 "type" : "field",
4649 "value" : ["int_q_occupancy", "q_occupancy"]
4650 },
4651 {
4652 "type" : "expression",
4653 "value" : {
4654 "type" : "expression",
4655 "value" : {
4656 "op" : "&",
4657 "left" : {
4658 "type" : "field",
4659 "value" : ["standard_metadata", "deq_qdepth"]
4660 },
4661 "right" : {
4662 "type" : "hexstr",
4663 "value" : "0xffffff"
4664 }
4665 }
4666 }
4667 }
4668 ],
4669 "source_info" : {
4670 "filename" : "include/int_transit.p4",
4671 "line" : 53,
4672 "column" : 8,
4673 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
4674 }
4675 },
4676 {
4677 "op" : "add_header",
4678 "parameters" : [
4679 {
4680 "type" : "header",
4681 "value" : "int_level1_port_ids"
4682 }
4683 ],
4684 "source_info" : {
4685 "filename" : "include/int_transit.p4",
4686 "line" : 37,
4687 "column" : 8,
4688 "source_fragment" : "hdr.int_level1_port_ids.setValid()"
4689 }
4690 },
4691 {
4692 "op" : "assign",
4693 "parameters" : [
4694 {
4695 "type" : "field",
4696 "value" : ["int_level1_port_ids", "ingress_port_id"]
4697 },
4698 {
4699 "type" : "expression",
4700 "value" : {
4701 "type" : "expression",
4702 "value" : {
4703 "op" : "&",
4704 "left" : {
4705 "type" : "field",
4706 "value" : ["standard_metadata", "ingress_port"]
4707 },
4708 "right" : {
4709 "type" : "hexstr",
4710 "value" : "0xffff"
4711 }
4712 }
4713 }
4714 }
4715 ],
4716 "source_info" : {
4717 "filename" : "include/int_transit.p4",
4718 "line" : 38,
4719 "column" : 8,
4720 "source_fragment" : "hdr.int_level1_port_ids.ingress_port_id = (bit<16>) standard_metadata.ingress_port"
4721 }
4722 },
4723 {
4724 "op" : "assign",
4725 "parameters" : [
4726 {
4727 "type" : "field",
4728 "value" : ["int_level1_port_ids", "egress_port_id"]
4729 },
4730 {
4731 "type" : "expression",
4732 "value" : {
4733 "type" : "expression",
4734 "value" : {
4735 "op" : "&",
4736 "left" : {
4737 "type" : "field",
4738 "value" : ["standard_metadata", "egress_port"]
4739 },
4740 "right" : {
4741 "type" : "hexstr",
4742 "value" : "0xffff"
4743 }
4744 }
4745 }
4746 }
4747 ],
4748 "source_info" : {
4749 "filename" : "include/int_transit.p4",
4750 "line" : 39,
4751 "column" : 8,
4752 "source_fragment" : "hdr.int_level1_port_ids.egress_port_id = (bit<16>) standard_metadata.egress_port"
4753 }
4754 },
4755 {
4756 "op" : "add_header",
4757 "parameters" : [
4758 {
4759 "type" : "header",
4760 "value" : "int_switch_id"
4761 }
4762 ],
4763 "source_info" : {
4764 "filename" : "include/int_transit.p4",
4765 "line" : 32,
4766 "column" : 8,
4767 "source_fragment" : "hdr.int_switch_id.setValid()"
4768 }
4769 },
4770 {
4771 "op" : "assign",
4772 "parameters" : [
4773 {
4774 "type" : "field",
4775 "value" : ["int_switch_id", "switch_id"]
4776 },
4777 {
4778 "type" : "field",
4779 "value" : ["userMetadata.int_meta", "switch_id"]
4780 }
4781 ],
4782 "source_info" : {
4783 "filename" : "include/int_transit.p4",
4784 "line" : 33,
4785 "column" : 8,
4786 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
4787 }
4788 },
4789 {
4790 "op" : "assign",
4791 "parameters" : [
4792 {
4793 "type" : "field",
4794 "value" : ["userMetadata.int_meta", "new_words"]
4795 },
4796 {
4797 "type" : "expression",
4798 "value" : {
4799 "type" : "expression",
4800 "value" : {
4801 "op" : "&",
4802 "left" : {
4803 "type" : "expression",
4804 "value" : {
4805 "op" : "+",
4806 "left" : {
4807 "type" : "field",
4808 "value" : ["userMetadata.int_meta", "new_words"]
4809 },
4810 "right" : {
4811 "type" : "hexstr",
4812 "value" : "0x03"
4813 }
4814 }
4815 },
4816 "right" : {
4817 "type" : "hexstr",
4818 "value" : "0xff"
4819 }
4820 }
4821 }
4822 }
4823 ],
4824 "source_info" : {
4825 "filename" : "include/int_transit.p4",
4826 "line" : 99,
4827 "column" : 8,
4828 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 3"
4829 }
4830 },
4831 {
4832 "op" : "assign",
4833 "parameters" : [
4834 {
4835 "type" : "field",
4836 "value" : ["userMetadata.int_meta", "new_bytes"]
4837 },
4838 {
4839 "type" : "expression",
4840 "value" : {
4841 "type" : "expression",
4842 "value" : {
4843 "op" : "&",
4844 "left" : {
4845 "type" : "expression",
4846 "value" : {
4847 "op" : "+",
4848 "left" : {
4849 "type" : "field",
4850 "value" : ["userMetadata.int_meta", "new_bytes"]
4851 },
4852 "right" : {
4853 "type" : "hexstr",
4854 "value" : "0x000c"
4855 }
4856 }
4857 },
4858 "right" : {
4859 "type" : "hexstr",
4860 "value" : "0xffff"
4861 }
4862 }
4863 }
4864 }
4865 ],
4866 "source_info" : {
4867 "filename" : "include/int_transit.p4",
4868 "line" : 100,
4869 "column" : 8,
4870 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 12"
4871 }
4872 }
4873 ]
4874 },
4875 {
4876 "name" : "egress.process_int_transit.int_set_header_0003_i14",
4877 "id" : 32,
4878 "runtime_data" : [],
4879 "primitives" : [
4880 {
4881 "op" : "add_header",
4882 "parameters" : [
4883 {
4884 "type" : "header",
4885 "value" : "int_hop_latency"
4886 }
4887 ],
4888 "source_info" : {
4889 "filename" : "include/int_transit.p4",
4890 "line" : 43,
4891 "column" : 8,
4892 "source_fragment" : "hdr.int_hop_latency.setValid()"
4893 }
4894 },
4895 {
4896 "op" : "assign",
4897 "parameters" : [
4898 {
4899 "type" : "field",
4900 "value" : ["int_hop_latency", "hop_latency"]
4901 },
4902 {
4903 "type" : "expression",
4904 "value" : {
4905 "type" : "expression",
4906 "value" : {
4907 "op" : "&",
4908 "left" : {
4909 "type" : "expression",
4910 "value" : {
4911 "op" : "-",
4912 "left" : {
4913 "type" : "expression",
4914 "value" : {
4915 "op" : "&",
4916 "left" : {
4917 "type" : "field",
4918 "value" : ["standard_metadata", "egress_global_timestamp"]
4919 },
4920 "right" : {
4921 "type" : "hexstr",
4922 "value" : "0xffffffff"
4923 }
4924 }
4925 },
4926 "right" : {
4927 "type" : "expression",
4928 "value" : {
4929 "op" : "&",
4930 "left" : {
4931 "type" : "field",
4932 "value" : ["standard_metadata", "ingress_global_timestamp"]
4933 },
4934 "right" : {
4935 "type" : "hexstr",
4936 "value" : "0xffffffff"
4937 }
4938 }
4939 }
4940 }
4941 },
4942 "right" : {
4943 "type" : "hexstr",
4944 "value" : "0xffffffff"
4945 }
4946 }
4947 }
4948 }
4949 ],
4950 "source_info" : {
4951 "filename" : "include/int_transit.p4",
4952 "line" : 44,
4953 "column" : 8,
4954 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) standard_metadata.egress_global_timestamp - (bit<32>) standard_metadata.ingress_global_timestamp"
4955 }
4956 },
4957 {
4958 "op" : "add_header",
4959 "parameters" : [
4960 {
4961 "type" : "header",
4962 "value" : "int_level1_port_ids"
4963 }
4964 ],
4965 "source_info" : {
4966 "filename" : "include/int_transit.p4",
4967 "line" : 37,
4968 "column" : 8,
4969 "source_fragment" : "hdr.int_level1_port_ids.setValid()"
4970 }
4971 },
4972 {
4973 "op" : "assign",
4974 "parameters" : [
4975 {
4976 "type" : "field",
4977 "value" : ["int_level1_port_ids", "ingress_port_id"]
4978 },
4979 {
4980 "type" : "expression",
4981 "value" : {
4982 "type" : "expression",
4983 "value" : {
4984 "op" : "&",
4985 "left" : {
4986 "type" : "field",
4987 "value" : ["standard_metadata", "ingress_port"]
4988 },
4989 "right" : {
4990 "type" : "hexstr",
4991 "value" : "0xffff"
4992 }
4993 }
4994 }
4995 }
4996 ],
4997 "source_info" : {
4998 "filename" : "include/int_transit.p4",
4999 "line" : 38,
5000 "column" : 8,
5001 "source_fragment" : "hdr.int_level1_port_ids.ingress_port_id = (bit<16>) standard_metadata.ingress_port"
5002 }
5003 },
5004 {
5005 "op" : "assign",
5006 "parameters" : [
5007 {
5008 "type" : "field",
5009 "value" : ["int_level1_port_ids", "egress_port_id"]
5010 },
5011 {
5012 "type" : "expression",
5013 "value" : {
5014 "type" : "expression",
5015 "value" : {
5016 "op" : "&",
5017 "left" : {
5018 "type" : "field",
5019 "value" : ["standard_metadata", "egress_port"]
5020 },
5021 "right" : {
5022 "type" : "hexstr",
5023 "value" : "0xffff"
5024 }
5025 }
5026 }
5027 }
5028 ],
5029 "source_info" : {
5030 "filename" : "include/int_transit.p4",
5031 "line" : 39,
5032 "column" : 8,
5033 "source_fragment" : "hdr.int_level1_port_ids.egress_port_id = (bit<16>) standard_metadata.egress_port"
5034 }
5035 },
5036 {
5037 "op" : "add_header",
5038 "parameters" : [
5039 {
5040 "type" : "header",
5041 "value" : "int_switch_id"
5042 }
5043 ],
5044 "source_info" : {
5045 "filename" : "include/int_transit.p4",
5046 "line" : 32,
5047 "column" : 8,
5048 "source_fragment" : "hdr.int_switch_id.setValid()"
5049 }
5050 },
5051 {
5052 "op" : "assign",
5053 "parameters" : [
5054 {
5055 "type" : "field",
5056 "value" : ["int_switch_id", "switch_id"]
5057 },
5058 {
5059 "type" : "field",
5060 "value" : ["userMetadata.int_meta", "switch_id"]
5061 }
5062 ],
5063 "source_info" : {
5064 "filename" : "include/int_transit.p4",
5065 "line" : 33,
5066 "column" : 8,
5067 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
5068 }
5069 },
5070 {
5071 "op" : "assign",
5072 "parameters" : [
5073 {
5074 "type" : "field",
5075 "value" : ["userMetadata.int_meta", "new_words"]
5076 },
5077 {
5078 "type" : "expression",
5079 "value" : {
5080 "type" : "expression",
5081 "value" : {
5082 "op" : "&",
5083 "left" : {
5084 "type" : "expression",
5085 "value" : {
5086 "op" : "+",
5087 "left" : {
5088 "type" : "field",
5089 "value" : ["userMetadata.int_meta", "new_words"]
5090 },
5091 "right" : {
5092 "type" : "hexstr",
5093 "value" : "0x03"
5094 }
5095 }
5096 },
5097 "right" : {
5098 "type" : "hexstr",
5099 "value" : "0xff"
5100 }
5101 }
5102 }
5103 }
5104 ],
5105 "source_info" : {
5106 "filename" : "include/int_transit.p4",
5107 "line" : 99,
5108 "column" : 8,
5109 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 3"
5110 }
5111 },
5112 {
5113 "op" : "assign",
5114 "parameters" : [
5115 {
5116 "type" : "field",
5117 "value" : ["userMetadata.int_meta", "new_bytes"]
5118 },
5119 {
5120 "type" : "expression",
5121 "value" : {
5122 "type" : "expression",
5123 "value" : {
5124 "op" : "&",
5125 "left" : {
5126 "type" : "expression",
5127 "value" : {
5128 "op" : "+",
5129 "left" : {
5130 "type" : "field",
5131 "value" : ["userMetadata.int_meta", "new_bytes"]
5132 },
5133 "right" : {
5134 "type" : "hexstr",
5135 "value" : "0x000c"
5136 }
5137 }
5138 },
5139 "right" : {
5140 "type" : "hexstr",
5141 "value" : "0xffff"
5142 }
5143 }
5144 }
5145 }
5146 ],
5147 "source_info" : {
5148 "filename" : "include/int_transit.p4",
5149 "line" : 100,
5150 "column" : 8,
5151 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 12"
5152 }
5153 }
5154 ]
5155 },
5156 {
5157 "name" : "egress.process_int_transit.int_set_header_0003_i15",
5158 "id" : 33,
5159 "runtime_data" : [],
5160 "primitives" : [
5161 {
5162 "op" : "add_header",
5163 "parameters" : [
5164 {
5165 "type" : "header",
5166 "value" : "int_q_occupancy"
5167 }
5168 ],
5169 "source_info" : {
5170 "filename" : "include/int_transit.p4",
5171 "line" : 49,
5172 "column" : 8,
5173 "source_fragment" : "hdr.int_q_occupancy.setValid()"
5174 }
5175 },
5176 {
5177 "op" : "assign",
5178 "parameters" : [
5179 {
5180 "type" : "field",
5181 "value" : ["int_q_occupancy", "q_id"]
5182 },
5183 {
5184 "type" : "hexstr",
5185 "value" : "0x00"
5186 }
5187 ],
5188 "source_info" : {
5189 "filename" : "include/int_transit.p4",
5190 "line" : 50,
5191 "column" : 8,
5192 "source_fragment" : "hdr.int_q_occupancy.q_id = ..."
5193 }
5194 },
5195 {
5196 "op" : "assign",
5197 "parameters" : [
5198 {
5199 "type" : "field",
5200 "value" : ["int_q_occupancy", "q_occupancy"]
5201 },
5202 {
5203 "type" : "expression",
5204 "value" : {
5205 "type" : "expression",
5206 "value" : {
5207 "op" : "&",
5208 "left" : {
5209 "type" : "field",
5210 "value" : ["standard_metadata", "deq_qdepth"]
5211 },
5212 "right" : {
5213 "type" : "hexstr",
5214 "value" : "0xffffff"
5215 }
5216 }
5217 }
5218 }
5219 ],
5220 "source_info" : {
5221 "filename" : "include/int_transit.p4",
5222 "line" : 53,
5223 "column" : 8,
5224 "source_fragment" : "hdr.int_q_occupancy.q_occupancy = ..."
5225 }
5226 },
5227 {
5228 "op" : "add_header",
5229 "parameters" : [
5230 {
5231 "type" : "header",
5232 "value" : "int_hop_latency"
5233 }
5234 ],
5235 "source_info" : {
5236 "filename" : "include/int_transit.p4",
5237 "line" : 43,
5238 "column" : 8,
5239 "source_fragment" : "hdr.int_hop_latency.setValid()"
5240 }
5241 },
5242 {
5243 "op" : "assign",
5244 "parameters" : [
5245 {
5246 "type" : "field",
5247 "value" : ["int_hop_latency", "hop_latency"]
5248 },
5249 {
5250 "type" : "expression",
5251 "value" : {
5252 "type" : "expression",
5253 "value" : {
5254 "op" : "&",
5255 "left" : {
5256 "type" : "expression",
5257 "value" : {
5258 "op" : "-",
5259 "left" : {
5260 "type" : "expression",
5261 "value" : {
5262 "op" : "&",
5263 "left" : {
5264 "type" : "field",
5265 "value" : ["standard_metadata", "egress_global_timestamp"]
5266 },
5267 "right" : {
5268 "type" : "hexstr",
5269 "value" : "0xffffffff"
5270 }
5271 }
5272 },
5273 "right" : {
5274 "type" : "expression",
5275 "value" : {
5276 "op" : "&",
5277 "left" : {
5278 "type" : "field",
5279 "value" : ["standard_metadata", "ingress_global_timestamp"]
5280 },
5281 "right" : {
5282 "type" : "hexstr",
5283 "value" : "0xffffffff"
5284 }
5285 }
5286 }
5287 }
5288 },
5289 "right" : {
5290 "type" : "hexstr",
5291 "value" : "0xffffffff"
5292 }
5293 }
5294 }
5295 }
5296 ],
5297 "source_info" : {
5298 "filename" : "include/int_transit.p4",
5299 "line" : 44,
5300 "column" : 8,
5301 "source_fragment" : "hdr.int_hop_latency.hop_latency = (bit<32>) standard_metadata.egress_global_timestamp - (bit<32>) standard_metadata.ingress_global_timestamp"
5302 }
5303 },
5304 {
5305 "op" : "add_header",
5306 "parameters" : [
5307 {
5308 "type" : "header",
5309 "value" : "int_level1_port_ids"
5310 }
5311 ],
5312 "source_info" : {
5313 "filename" : "include/int_transit.p4",
5314 "line" : 37,
5315 "column" : 8,
5316 "source_fragment" : "hdr.int_level1_port_ids.setValid()"
5317 }
5318 },
5319 {
5320 "op" : "assign",
5321 "parameters" : [
5322 {
5323 "type" : "field",
5324 "value" : ["int_level1_port_ids", "ingress_port_id"]
5325 },
5326 {
5327 "type" : "expression",
5328 "value" : {
5329 "type" : "expression",
5330 "value" : {
5331 "op" : "&",
5332 "left" : {
5333 "type" : "field",
5334 "value" : ["standard_metadata", "ingress_port"]
5335 },
5336 "right" : {
5337 "type" : "hexstr",
5338 "value" : "0xffff"
5339 }
5340 }
5341 }
5342 }
5343 ],
5344 "source_info" : {
5345 "filename" : "include/int_transit.p4",
5346 "line" : 38,
5347 "column" : 8,
5348 "source_fragment" : "hdr.int_level1_port_ids.ingress_port_id = (bit<16>) standard_metadata.ingress_port"
5349 }
5350 },
5351 {
5352 "op" : "assign",
5353 "parameters" : [
5354 {
5355 "type" : "field",
5356 "value" : ["int_level1_port_ids", "egress_port_id"]
5357 },
5358 {
5359 "type" : "expression",
5360 "value" : {
5361 "type" : "expression",
5362 "value" : {
5363 "op" : "&",
5364 "left" : {
5365 "type" : "field",
5366 "value" : ["standard_metadata", "egress_port"]
5367 },
5368 "right" : {
5369 "type" : "hexstr",
5370 "value" : "0xffff"
5371 }
5372 }
5373 }
5374 }
5375 ],
5376 "source_info" : {
5377 "filename" : "include/int_transit.p4",
5378 "line" : 39,
5379 "column" : 8,
5380 "source_fragment" : "hdr.int_level1_port_ids.egress_port_id = (bit<16>) standard_metadata.egress_port"
5381 }
5382 },
5383 {
5384 "op" : "add_header",
5385 "parameters" : [
5386 {
5387 "type" : "header",
5388 "value" : "int_switch_id"
5389 }
5390 ],
5391 "source_info" : {
5392 "filename" : "include/int_transit.p4",
5393 "line" : 32,
5394 "column" : 8,
5395 "source_fragment" : "hdr.int_switch_id.setValid()"
5396 }
5397 },
5398 {
5399 "op" : "assign",
5400 "parameters" : [
5401 {
5402 "type" : "field",
5403 "value" : ["int_switch_id", "switch_id"]
5404 },
5405 {
5406 "type" : "field",
5407 "value" : ["userMetadata.int_meta", "switch_id"]
5408 }
5409 ],
5410 "source_info" : {
5411 "filename" : "include/int_transit.p4",
5412 "line" : 33,
5413 "column" : 8,
5414 "source_fragment" : "hdr.int_switch_id.switch_id = local_metadata.int_meta.switch_id"
5415 }
5416 },
5417 {
5418 "op" : "assign",
5419 "parameters" : [
5420 {
5421 "type" : "field",
5422 "value" : ["userMetadata.int_meta", "new_words"]
5423 },
5424 {
5425 "type" : "expression",
5426 "value" : {
5427 "type" : "expression",
5428 "value" : {
5429 "op" : "&",
5430 "left" : {
5431 "type" : "expression",
5432 "value" : {
5433 "op" : "+",
5434 "left" : {
5435 "type" : "field",
5436 "value" : ["userMetadata.int_meta", "new_words"]
5437 },
5438 "right" : {
5439 "type" : "hexstr",
5440 "value" : "0x04"
5441 }
5442 }
5443 },
5444 "right" : {
5445 "type" : "hexstr",
5446 "value" : "0xff"
5447 }
5448 }
5449 }
5450 }
5451 ],
5452 "source_info" : {
5453 "filename" : "include/int_transit.p4",
5454 "line" : 105,
5455 "column" : 8,
5456 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 4"
5457 }
5458 },
5459 {
5460 "op" : "assign",
5461 "parameters" : [
5462 {
5463 "type" : "field",
5464 "value" : ["userMetadata.int_meta", "new_bytes"]
5465 },
5466 {
5467 "type" : "expression",
5468 "value" : {
5469 "type" : "expression",
5470 "value" : {
5471 "op" : "&",
5472 "left" : {
5473 "type" : "expression",
5474 "value" : {
5475 "op" : "+",
5476 "left" : {
5477 "type" : "field",
5478 "value" : ["userMetadata.int_meta", "new_bytes"]
5479 },
5480 "right" : {
5481 "type" : "hexstr",
5482 "value" : "0x0010"
5483 }
5484 }
5485 },
5486 "right" : {
5487 "type" : "hexstr",
5488 "value" : "0xffff"
5489 }
5490 }
5491 }
5492 }
5493 ],
5494 "source_info" : {
5495 "filename" : "include/int_transit.p4",
5496 "line" : 106,
5497 "column" : 7,
5498 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 16"
5499 }
5500 }
5501 ]
5502 },
5503 {
5504 "name" : "egress.process_int_transit.int_set_header_0407_i0",
5505 "id" : 34,
5506 "runtime_data" : [],
5507 "primitives" : []
5508 },
5509 {
5510 "name" : "egress.process_int_transit.int_set_header_0407_i1",
5511 "id" : 35,
5512 "runtime_data" : [],
5513 "primitives" : [
5514 {
5515 "op" : "add_header",
5516 "parameters" : [
5517 {
5518 "type" : "header",
5519 "value" : "int_egress_tx_util"
5520 }
5521 ],
5522 "source_info" : {
5523 "filename" : "include/int_transit.p4",
5524 "line" : 78,
5525 "column" : 8,
5526 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
5527 }
5528 },
5529 {
5530 "op" : "assign",
5531 "parameters" : [
5532 {
5533 "type" : "field",
5534 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
5535 },
5536 {
5537 "type" : "hexstr",
5538 "value" : "0x00000000"
5539 }
5540 ],
5541 "source_info" : {
5542 "filename" : "include/int_transit.p4",
5543 "line" : 79,
5544 "column" : 8,
5545 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
5546 }
5547 },
5548 {
5549 "op" : "assign",
5550 "parameters" : [
5551 {
5552 "type" : "field",
5553 "value" : ["userMetadata.int_meta", "new_words"]
5554 },
5555 {
5556 "type" : "expression",
5557 "value" : {
5558 "type" : "expression",
5559 "value" : {
5560 "op" : "&",
5561 "left" : {
5562 "type" : "expression",
5563 "value" : {
5564 "op" : "+",
5565 "left" : {
5566 "type" : "field",
5567 "value" : ["userMetadata.int_meta", "new_words"]
5568 },
5569 "right" : {
5570 "type" : "hexstr",
5571 "value" : "0x01"
5572 }
5573 }
5574 },
5575 "right" : {
5576 "type" : "hexstr",
5577 "value" : "0xff"
5578 }
5579 }
5580 }
5581 }
5582 ],
5583 "source_info" : {
5584 "filename" : "include/int_transit.p4",
5585 "line" : 87,
5586 "column" : 8,
5587 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 1"
5588 }
5589 },
5590 {
5591 "op" : "assign",
5592 "parameters" : [
5593 {
5594 "type" : "field",
5595 "value" : ["userMetadata.int_meta", "new_bytes"]
5596 },
5597 {
5598 "type" : "expression",
5599 "value" : {
5600 "type" : "expression",
5601 "value" : {
5602 "op" : "&",
5603 "left" : {
5604 "type" : "expression",
5605 "value" : {
5606 "op" : "+",
5607 "left" : {
5608 "type" : "field",
5609 "value" : ["userMetadata.int_meta", "new_bytes"]
5610 },
5611 "right" : {
5612 "type" : "hexstr",
5613 "value" : "0x0004"
5614 }
5615 }
5616 },
5617 "right" : {
5618 "type" : "hexstr",
5619 "value" : "0xffff"
5620 }
5621 }
5622 }
5623 }
5624 ],
5625 "source_info" : {
5626 "filename" : "include/int_transit.p4",
5627 "line" : 88,
5628 "column" : 8,
5629 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 4"
5630 }
5631 }
5632 ]
5633 },
5634 {
5635 "name" : "egress.process_int_transit.int_set_header_0407_i2",
5636 "id" : 36,
5637 "runtime_data" : [],
5638 "primitives" : [
5639 {
5640 "op" : "add_header",
5641 "parameters" : [
5642 {
5643 "type" : "header",
5644 "value" : "int_level2_port_ids"
5645 }
5646 ],
5647 "source_info" : {
5648 "filename" : "include/int_transit.p4",
5649 "line" : 70,
5650 "column" : 8,
5651 "source_fragment" : "hdr.int_level2_port_ids.setValid()"
5652 }
5653 },
5654 {
5655 "op" : "assign",
5656 "parameters" : [
5657 {
5658 "type" : "field",
5659 "value" : ["int_level2_port_ids", "ingress_port_id"]
5660 },
5661 {
5662 "type" : "expression",
5663 "value" : {
5664 "type" : "expression",
5665 "value" : {
5666 "op" : "&",
5667 "left" : {
5668 "type" : "field",
5669 "value" : ["standard_metadata", "ingress_port"]
5670 },
5671 "right" : {
5672 "type" : "hexstr",
5673 "value" : "0xffffffff"
5674 }
5675 }
5676 }
5677 }
5678 ],
5679 "source_info" : {
5680 "filename" : "include/int_transit.p4",
5681 "line" : 72,
5682 "column" : 8,
5683 "source_fragment" : "hdr.int_level2_port_ids.ingress_port_id = (bit<32>) standard_metadata.ingress_port"
5684 }
5685 },
5686 {
5687 "op" : "assign",
5688 "parameters" : [
5689 {
5690 "type" : "field",
5691 "value" : ["int_level2_port_ids", "egress_port_id"]
5692 },
5693 {
5694 "type" : "expression",
5695 "value" : {
5696 "type" : "expression",
5697 "value" : {
5698 "op" : "&",
5699 "left" : {
5700 "type" : "field",
5701 "value" : ["standard_metadata", "egress_port"]
5702 },
5703 "right" : {
5704 "type" : "hexstr",
5705 "value" : "0xffffffff"
5706 }
5707 }
5708 }
5709 }
5710 ],
5711 "source_info" : {
5712 "filename" : "include/int_transit.p4",
5713 "line" : 73,
5714 "column" : 8,
5715 "source_fragment" : "hdr.int_level2_port_ids.egress_port_id = (bit<32>) standard_metadata.egress_port"
5716 }
5717 },
5718 {
5719 "op" : "assign",
5720 "parameters" : [
5721 {
5722 "type" : "field",
5723 "value" : ["userMetadata.int_meta", "new_words"]
5724 },
5725 {
5726 "type" : "expression",
5727 "value" : {
5728 "type" : "expression",
5729 "value" : {
5730 "op" : "&",
5731 "left" : {
5732 "type" : "expression",
5733 "value" : {
5734 "op" : "+",
5735 "left" : {
5736 "type" : "field",
5737 "value" : ["userMetadata.int_meta", "new_words"]
5738 },
5739 "right" : {
5740 "type" : "hexstr",
5741 "value" : "0x02"
5742 }
5743 }
5744 },
5745 "right" : {
5746 "type" : "hexstr",
5747 "value" : "0xff"
5748 }
5749 }
5750 }
5751 }
5752 ],
5753 "source_info" : {
5754 "filename" : "include/int_transit.p4",
5755 "line" : 93,
5756 "column" : 8,
5757 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
5758 }
5759 },
5760 {
5761 "op" : "assign",
5762 "parameters" : [
5763 {
5764 "type" : "field",
5765 "value" : ["userMetadata.int_meta", "new_bytes"]
5766 },
5767 {
5768 "type" : "expression",
5769 "value" : {
5770 "type" : "expression",
5771 "value" : {
5772 "op" : "&",
5773 "left" : {
5774 "type" : "expression",
5775 "value" : {
5776 "op" : "+",
5777 "left" : {
5778 "type" : "field",
5779 "value" : ["userMetadata.int_meta", "new_bytes"]
5780 },
5781 "right" : {
5782 "type" : "hexstr",
5783 "value" : "0x0008"
5784 }
5785 }
5786 },
5787 "right" : {
5788 "type" : "hexstr",
5789 "value" : "0xffff"
5790 }
5791 }
5792 }
5793 }
5794 ],
5795 "source_info" : {
5796 "filename" : "include/int_transit.p4",
5797 "line" : 94,
5798 "column" : 8,
5799 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
5800 }
5801 }
5802 ]
5803 },
5804 {
5805 "name" : "egress.process_int_transit.int_set_header_0407_i3",
5806 "id" : 37,
5807 "runtime_data" : [],
5808 "primitives" : [
5809 {
5810 "op" : "add_header",
5811 "parameters" : [
5812 {
5813 "type" : "header",
5814 "value" : "int_egress_tx_util"
5815 }
5816 ],
5817 "source_info" : {
5818 "filename" : "include/int_transit.p4",
5819 "line" : 78,
5820 "column" : 8,
5821 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
5822 }
5823 },
5824 {
5825 "op" : "assign",
5826 "parameters" : [
5827 {
5828 "type" : "field",
5829 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
5830 },
5831 {
5832 "type" : "hexstr",
5833 "value" : "0x00000000"
5834 }
5835 ],
5836 "source_info" : {
5837 "filename" : "include/int_transit.p4",
5838 "line" : 79,
5839 "column" : 8,
5840 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
5841 }
5842 },
5843 {
5844 "op" : "add_header",
5845 "parameters" : [
5846 {
5847 "type" : "header",
5848 "value" : "int_level2_port_ids"
5849 }
5850 ],
5851 "source_info" : {
5852 "filename" : "include/int_transit.p4",
5853 "line" : 70,
5854 "column" : 8,
5855 "source_fragment" : "hdr.int_level2_port_ids.setValid()"
5856 }
5857 },
5858 {
5859 "op" : "assign",
5860 "parameters" : [
5861 {
5862 "type" : "field",
5863 "value" : ["int_level2_port_ids", "ingress_port_id"]
5864 },
5865 {
5866 "type" : "expression",
5867 "value" : {
5868 "type" : "expression",
5869 "value" : {
5870 "op" : "&",
5871 "left" : {
5872 "type" : "field",
5873 "value" : ["standard_metadata", "ingress_port"]
5874 },
5875 "right" : {
5876 "type" : "hexstr",
5877 "value" : "0xffffffff"
5878 }
5879 }
5880 }
5881 }
5882 ],
5883 "source_info" : {
5884 "filename" : "include/int_transit.p4",
5885 "line" : 72,
5886 "column" : 8,
5887 "source_fragment" : "hdr.int_level2_port_ids.ingress_port_id = (bit<32>) standard_metadata.ingress_port"
5888 }
5889 },
5890 {
5891 "op" : "assign",
5892 "parameters" : [
5893 {
5894 "type" : "field",
5895 "value" : ["int_level2_port_ids", "egress_port_id"]
5896 },
5897 {
5898 "type" : "expression",
5899 "value" : {
5900 "type" : "expression",
5901 "value" : {
5902 "op" : "&",
5903 "left" : {
5904 "type" : "field",
5905 "value" : ["standard_metadata", "egress_port"]
5906 },
5907 "right" : {
5908 "type" : "hexstr",
5909 "value" : "0xffffffff"
5910 }
5911 }
5912 }
5913 }
5914 ],
5915 "source_info" : {
5916 "filename" : "include/int_transit.p4",
5917 "line" : 73,
5918 "column" : 8,
5919 "source_fragment" : "hdr.int_level2_port_ids.egress_port_id = (bit<32>) standard_metadata.egress_port"
5920 }
5921 },
5922 {
5923 "op" : "assign",
5924 "parameters" : [
5925 {
5926 "type" : "field",
5927 "value" : ["userMetadata.int_meta", "new_words"]
5928 },
5929 {
5930 "type" : "expression",
5931 "value" : {
5932 "type" : "expression",
5933 "value" : {
5934 "op" : "&",
5935 "left" : {
5936 "type" : "expression",
5937 "value" : {
5938 "op" : "+",
5939 "left" : {
5940 "type" : "field",
5941 "value" : ["userMetadata.int_meta", "new_words"]
5942 },
5943 "right" : {
5944 "type" : "hexstr",
5945 "value" : "0x03"
5946 }
5947 }
5948 },
5949 "right" : {
5950 "type" : "hexstr",
5951 "value" : "0xff"
5952 }
5953 }
5954 }
5955 }
5956 ],
5957 "source_info" : {
5958 "filename" : "include/int_transit.p4",
5959 "line" : 99,
5960 "column" : 8,
5961 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 3"
5962 }
5963 },
5964 {
5965 "op" : "assign",
5966 "parameters" : [
5967 {
5968 "type" : "field",
5969 "value" : ["userMetadata.int_meta", "new_bytes"]
5970 },
5971 {
5972 "type" : "expression",
5973 "value" : {
5974 "type" : "expression",
5975 "value" : {
5976 "op" : "&",
5977 "left" : {
5978 "type" : "expression",
5979 "value" : {
5980 "op" : "+",
5981 "left" : {
5982 "type" : "field",
5983 "value" : ["userMetadata.int_meta", "new_bytes"]
5984 },
5985 "right" : {
5986 "type" : "hexstr",
5987 "value" : "0x000c"
5988 }
5989 }
5990 },
5991 "right" : {
5992 "type" : "hexstr",
5993 "value" : "0xffff"
5994 }
5995 }
5996 }
5997 }
5998 ],
5999 "source_info" : {
6000 "filename" : "include/int_transit.p4",
6001 "line" : 100,
6002 "column" : 8,
6003 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 12"
6004 }
6005 }
6006 ]
6007 },
6008 {
6009 "name" : "egress.process_int_transit.int_set_header_0407_i4",
6010 "id" : 38,
6011 "runtime_data" : [],
6012 "primitives" : [
6013 {
6014 "op" : "add_header",
6015 "parameters" : [
6016 {
6017 "type" : "header",
6018 "value" : "int_egress_tstamp"
6019 }
6020 ],
6021 "source_info" : {
6022 "filename" : "include/int_transit.p4",
6023 "line" : 64,
6024 "column" : 8,
6025 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
6026 }
6027 },
6028 {
6029 "op" : "assign",
6030 "parameters" : [
6031 {
6032 "type" : "field",
6033 "value" : ["int_egress_tstamp", "egress_tstamp"]
6034 },
6035 {
6036 "type" : "expression",
6037 "value" : {
6038 "type" : "expression",
6039 "value" : {
6040 "op" : "&",
6041 "left" : {
6042 "type" : "field",
6043 "value" : ["standard_metadata", "egress_global_timestamp"]
6044 },
6045 "right" : {
6046 "type" : "hexstr",
6047 "value" : "0xffffffff"
6048 }
6049 }
6050 }
6051 }
6052 ],
6053 "source_info" : {
6054 "filename" : "include/int_transit.p4",
6055 "line" : 65,
6056 "column" : 8,
6057 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
6058 }
6059 },
6060 {
6061 "op" : "assign",
6062 "parameters" : [
6063 {
6064 "type" : "field",
6065 "value" : ["userMetadata.int_meta", "new_words"]
6066 },
6067 {
6068 "type" : "expression",
6069 "value" : {
6070 "type" : "expression",
6071 "value" : {
6072 "op" : "&",
6073 "left" : {
6074 "type" : "expression",
6075 "value" : {
6076 "op" : "+",
6077 "left" : {
6078 "type" : "field",
6079 "value" : ["userMetadata.int_meta", "new_words"]
6080 },
6081 "right" : {
6082 "type" : "hexstr",
6083 "value" : "0x01"
6084 }
6085 }
6086 },
6087 "right" : {
6088 "type" : "hexstr",
6089 "value" : "0xff"
6090 }
6091 }
6092 }
6093 }
6094 ],
6095 "source_info" : {
6096 "filename" : "include/int_transit.p4",
6097 "line" : 87,
6098 "column" : 8,
6099 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 1"
6100 }
6101 },
6102 {
6103 "op" : "assign",
6104 "parameters" : [
6105 {
6106 "type" : "field",
6107 "value" : ["userMetadata.int_meta", "new_bytes"]
6108 },
6109 {
6110 "type" : "expression",
6111 "value" : {
6112 "type" : "expression",
6113 "value" : {
6114 "op" : "&",
6115 "left" : {
6116 "type" : "expression",
6117 "value" : {
6118 "op" : "+",
6119 "left" : {
6120 "type" : "field",
6121 "value" : ["userMetadata.int_meta", "new_bytes"]
6122 },
6123 "right" : {
6124 "type" : "hexstr",
6125 "value" : "0x0004"
6126 }
6127 }
6128 },
6129 "right" : {
6130 "type" : "hexstr",
6131 "value" : "0xffff"
6132 }
6133 }
6134 }
6135 }
6136 ],
6137 "source_info" : {
6138 "filename" : "include/int_transit.p4",
6139 "line" : 88,
6140 "column" : 8,
6141 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 4"
6142 }
6143 }
6144 ]
6145 },
6146 {
6147 "name" : "egress.process_int_transit.int_set_header_0407_i5",
6148 "id" : 39,
6149 "runtime_data" : [],
6150 "primitives" : [
6151 {
6152 "op" : "add_header",
6153 "parameters" : [
6154 {
6155 "type" : "header",
6156 "value" : "int_egress_tx_util"
6157 }
6158 ],
6159 "source_info" : {
6160 "filename" : "include/int_transit.p4",
6161 "line" : 78,
6162 "column" : 8,
6163 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
6164 }
6165 },
6166 {
6167 "op" : "assign",
6168 "parameters" : [
6169 {
6170 "type" : "field",
6171 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
6172 },
6173 {
6174 "type" : "hexstr",
6175 "value" : "0x00000000"
6176 }
6177 ],
6178 "source_info" : {
6179 "filename" : "include/int_transit.p4",
6180 "line" : 79,
6181 "column" : 8,
6182 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
6183 }
6184 },
6185 {
6186 "op" : "add_header",
6187 "parameters" : [
6188 {
6189 "type" : "header",
6190 "value" : "int_egress_tstamp"
6191 }
6192 ],
6193 "source_info" : {
6194 "filename" : "include/int_transit.p4",
6195 "line" : 64,
6196 "column" : 8,
6197 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
6198 }
6199 },
6200 {
6201 "op" : "assign",
6202 "parameters" : [
6203 {
6204 "type" : "field",
6205 "value" : ["int_egress_tstamp", "egress_tstamp"]
6206 },
6207 {
6208 "type" : "expression",
6209 "value" : {
6210 "type" : "expression",
6211 "value" : {
6212 "op" : "&",
6213 "left" : {
6214 "type" : "field",
6215 "value" : ["standard_metadata", "egress_global_timestamp"]
6216 },
6217 "right" : {
6218 "type" : "hexstr",
6219 "value" : "0xffffffff"
6220 }
6221 }
6222 }
6223 }
6224 ],
6225 "source_info" : {
6226 "filename" : "include/int_transit.p4",
6227 "line" : 65,
6228 "column" : 8,
6229 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
6230 }
6231 },
6232 {
6233 "op" : "assign",
6234 "parameters" : [
6235 {
6236 "type" : "field",
6237 "value" : ["userMetadata.int_meta", "new_words"]
6238 },
6239 {
6240 "type" : "expression",
6241 "value" : {
6242 "type" : "expression",
6243 "value" : {
6244 "op" : "&",
6245 "left" : {
6246 "type" : "expression",
6247 "value" : {
6248 "op" : "+",
6249 "left" : {
6250 "type" : "field",
6251 "value" : ["userMetadata.int_meta", "new_words"]
6252 },
6253 "right" : {
6254 "type" : "hexstr",
6255 "value" : "0x02"
6256 }
6257 }
6258 },
6259 "right" : {
6260 "type" : "hexstr",
6261 "value" : "0xff"
6262 }
6263 }
6264 }
6265 }
6266 ],
6267 "source_info" : {
6268 "filename" : "include/int_transit.p4",
6269 "line" : 93,
6270 "column" : 8,
6271 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
6272 }
6273 },
6274 {
6275 "op" : "assign",
6276 "parameters" : [
6277 {
6278 "type" : "field",
6279 "value" : ["userMetadata.int_meta", "new_bytes"]
6280 },
6281 {
6282 "type" : "expression",
6283 "value" : {
6284 "type" : "expression",
6285 "value" : {
6286 "op" : "&",
6287 "left" : {
6288 "type" : "expression",
6289 "value" : {
6290 "op" : "+",
6291 "left" : {
6292 "type" : "field",
6293 "value" : ["userMetadata.int_meta", "new_bytes"]
6294 },
6295 "right" : {
6296 "type" : "hexstr",
6297 "value" : "0x0008"
6298 }
6299 }
6300 },
6301 "right" : {
6302 "type" : "hexstr",
6303 "value" : "0xffff"
6304 }
6305 }
6306 }
6307 }
6308 ],
6309 "source_info" : {
6310 "filename" : "include/int_transit.p4",
6311 "line" : 94,
6312 "column" : 8,
6313 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
6314 }
6315 }
6316 ]
6317 },
6318 {
6319 "name" : "egress.process_int_transit.int_set_header_0407_i6",
6320 "id" : 40,
6321 "runtime_data" : [],
6322 "primitives" : [
6323 {
6324 "op" : "add_header",
6325 "parameters" : [
6326 {
6327 "type" : "header",
6328 "value" : "int_level2_port_ids"
6329 }
6330 ],
6331 "source_info" : {
6332 "filename" : "include/int_transit.p4",
6333 "line" : 70,
6334 "column" : 8,
6335 "source_fragment" : "hdr.int_level2_port_ids.setValid()"
6336 }
6337 },
6338 {
6339 "op" : "assign",
6340 "parameters" : [
6341 {
6342 "type" : "field",
6343 "value" : ["int_level2_port_ids", "ingress_port_id"]
6344 },
6345 {
6346 "type" : "expression",
6347 "value" : {
6348 "type" : "expression",
6349 "value" : {
6350 "op" : "&",
6351 "left" : {
6352 "type" : "field",
6353 "value" : ["standard_metadata", "ingress_port"]
6354 },
6355 "right" : {
6356 "type" : "hexstr",
6357 "value" : "0xffffffff"
6358 }
6359 }
6360 }
6361 }
6362 ],
6363 "source_info" : {
6364 "filename" : "include/int_transit.p4",
6365 "line" : 72,
6366 "column" : 8,
6367 "source_fragment" : "hdr.int_level2_port_ids.ingress_port_id = (bit<32>) standard_metadata.ingress_port"
6368 }
6369 },
6370 {
6371 "op" : "assign",
6372 "parameters" : [
6373 {
6374 "type" : "field",
6375 "value" : ["int_level2_port_ids", "egress_port_id"]
6376 },
6377 {
6378 "type" : "expression",
6379 "value" : {
6380 "type" : "expression",
6381 "value" : {
6382 "op" : "&",
6383 "left" : {
6384 "type" : "field",
6385 "value" : ["standard_metadata", "egress_port"]
6386 },
6387 "right" : {
6388 "type" : "hexstr",
6389 "value" : "0xffffffff"
6390 }
6391 }
6392 }
6393 }
6394 ],
6395 "source_info" : {
6396 "filename" : "include/int_transit.p4",
6397 "line" : 73,
6398 "column" : 8,
6399 "source_fragment" : "hdr.int_level2_port_ids.egress_port_id = (bit<32>) standard_metadata.egress_port"
6400 }
6401 },
6402 {
6403 "op" : "add_header",
6404 "parameters" : [
6405 {
6406 "type" : "header",
6407 "value" : "int_egress_tstamp"
6408 }
6409 ],
6410 "source_info" : {
6411 "filename" : "include/int_transit.p4",
6412 "line" : 64,
6413 "column" : 8,
6414 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
6415 }
6416 },
6417 {
6418 "op" : "assign",
6419 "parameters" : [
6420 {
6421 "type" : "field",
6422 "value" : ["int_egress_tstamp", "egress_tstamp"]
6423 },
6424 {
6425 "type" : "expression",
6426 "value" : {
6427 "type" : "expression",
6428 "value" : {
6429 "op" : "&",
6430 "left" : {
6431 "type" : "field",
6432 "value" : ["standard_metadata", "egress_global_timestamp"]
6433 },
6434 "right" : {
6435 "type" : "hexstr",
6436 "value" : "0xffffffff"
6437 }
6438 }
6439 }
6440 }
6441 ],
6442 "source_info" : {
6443 "filename" : "include/int_transit.p4",
6444 "line" : 65,
6445 "column" : 8,
6446 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
6447 }
6448 },
6449 {
6450 "op" : "assign",
6451 "parameters" : [
6452 {
6453 "type" : "field",
6454 "value" : ["userMetadata.int_meta", "new_words"]
6455 },
6456 {
6457 "type" : "expression",
6458 "value" : {
6459 "type" : "expression",
6460 "value" : {
6461 "op" : "&",
6462 "left" : {
6463 "type" : "expression",
6464 "value" : {
6465 "op" : "+",
6466 "left" : {
6467 "type" : "field",
6468 "value" : ["userMetadata.int_meta", "new_words"]
6469 },
6470 "right" : {
6471 "type" : "hexstr",
6472 "value" : "0x03"
6473 }
6474 }
6475 },
6476 "right" : {
6477 "type" : "hexstr",
6478 "value" : "0xff"
6479 }
6480 }
6481 }
6482 }
6483 ],
6484 "source_info" : {
6485 "filename" : "include/int_transit.p4",
6486 "line" : 99,
6487 "column" : 8,
6488 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 3"
6489 }
6490 },
6491 {
6492 "op" : "assign",
6493 "parameters" : [
6494 {
6495 "type" : "field",
6496 "value" : ["userMetadata.int_meta", "new_bytes"]
6497 },
6498 {
6499 "type" : "expression",
6500 "value" : {
6501 "type" : "expression",
6502 "value" : {
6503 "op" : "&",
6504 "left" : {
6505 "type" : "expression",
6506 "value" : {
6507 "op" : "+",
6508 "left" : {
6509 "type" : "field",
6510 "value" : ["userMetadata.int_meta", "new_bytes"]
6511 },
6512 "right" : {
6513 "type" : "hexstr",
6514 "value" : "0x000c"
6515 }
6516 }
6517 },
6518 "right" : {
6519 "type" : "hexstr",
6520 "value" : "0xffff"
6521 }
6522 }
6523 }
6524 }
6525 ],
6526 "source_info" : {
6527 "filename" : "include/int_transit.p4",
6528 "line" : 100,
6529 "column" : 8,
6530 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 12"
6531 }
6532 }
6533 ]
6534 },
6535 {
6536 "name" : "egress.process_int_transit.int_set_header_0407_i7",
6537 "id" : 41,
6538 "runtime_data" : [],
6539 "primitives" : [
6540 {
6541 "op" : "add_header",
6542 "parameters" : [
6543 {
6544 "type" : "header",
6545 "value" : "int_egress_tx_util"
6546 }
6547 ],
6548 "source_info" : {
6549 "filename" : "include/int_transit.p4",
6550 "line" : 78,
6551 "column" : 8,
6552 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
6553 }
6554 },
6555 {
6556 "op" : "assign",
6557 "parameters" : [
6558 {
6559 "type" : "field",
6560 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
6561 },
6562 {
6563 "type" : "hexstr",
6564 "value" : "0x00000000"
6565 }
6566 ],
6567 "source_info" : {
6568 "filename" : "include/int_transit.p4",
6569 "line" : 79,
6570 "column" : 8,
6571 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
6572 }
6573 },
6574 {
6575 "op" : "add_header",
6576 "parameters" : [
6577 {
6578 "type" : "header",
6579 "value" : "int_level2_port_ids"
6580 }
6581 ],
6582 "source_info" : {
6583 "filename" : "include/int_transit.p4",
6584 "line" : 70,
6585 "column" : 8,
6586 "source_fragment" : "hdr.int_level2_port_ids.setValid()"
6587 }
6588 },
6589 {
6590 "op" : "assign",
6591 "parameters" : [
6592 {
6593 "type" : "field",
6594 "value" : ["int_level2_port_ids", "ingress_port_id"]
6595 },
6596 {
6597 "type" : "expression",
6598 "value" : {
6599 "type" : "expression",
6600 "value" : {
6601 "op" : "&",
6602 "left" : {
6603 "type" : "field",
6604 "value" : ["standard_metadata", "ingress_port"]
6605 },
6606 "right" : {
6607 "type" : "hexstr",
6608 "value" : "0xffffffff"
6609 }
6610 }
6611 }
6612 }
6613 ],
6614 "source_info" : {
6615 "filename" : "include/int_transit.p4",
6616 "line" : 72,
6617 "column" : 8,
6618 "source_fragment" : "hdr.int_level2_port_ids.ingress_port_id = (bit<32>) standard_metadata.ingress_port"
6619 }
6620 },
6621 {
6622 "op" : "assign",
6623 "parameters" : [
6624 {
6625 "type" : "field",
6626 "value" : ["int_level2_port_ids", "egress_port_id"]
6627 },
6628 {
6629 "type" : "expression",
6630 "value" : {
6631 "type" : "expression",
6632 "value" : {
6633 "op" : "&",
6634 "left" : {
6635 "type" : "field",
6636 "value" : ["standard_metadata", "egress_port"]
6637 },
6638 "right" : {
6639 "type" : "hexstr",
6640 "value" : "0xffffffff"
6641 }
6642 }
6643 }
6644 }
6645 ],
6646 "source_info" : {
6647 "filename" : "include/int_transit.p4",
6648 "line" : 73,
6649 "column" : 8,
6650 "source_fragment" : "hdr.int_level2_port_ids.egress_port_id = (bit<32>) standard_metadata.egress_port"
6651 }
6652 },
6653 {
6654 "op" : "add_header",
6655 "parameters" : [
6656 {
6657 "type" : "header",
6658 "value" : "int_egress_tstamp"
6659 }
6660 ],
6661 "source_info" : {
6662 "filename" : "include/int_transit.p4",
6663 "line" : 64,
6664 "column" : 8,
6665 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
6666 }
6667 },
6668 {
6669 "op" : "assign",
6670 "parameters" : [
6671 {
6672 "type" : "field",
6673 "value" : ["int_egress_tstamp", "egress_tstamp"]
6674 },
6675 {
6676 "type" : "expression",
6677 "value" : {
6678 "type" : "expression",
6679 "value" : {
6680 "op" : "&",
6681 "left" : {
6682 "type" : "field",
6683 "value" : ["standard_metadata", "egress_global_timestamp"]
6684 },
6685 "right" : {
6686 "type" : "hexstr",
6687 "value" : "0xffffffff"
6688 }
6689 }
6690 }
6691 }
6692 ],
6693 "source_info" : {
6694 "filename" : "include/int_transit.p4",
6695 "line" : 65,
6696 "column" : 8,
6697 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
6698 }
6699 },
6700 {
6701 "op" : "assign",
6702 "parameters" : [
6703 {
6704 "type" : "field",
6705 "value" : ["userMetadata.int_meta", "new_words"]
6706 },
6707 {
6708 "type" : "expression",
6709 "value" : {
6710 "type" : "expression",
6711 "value" : {
6712 "op" : "&",
6713 "left" : {
6714 "type" : "expression",
6715 "value" : {
6716 "op" : "+",
6717 "left" : {
6718 "type" : "field",
6719 "value" : ["userMetadata.int_meta", "new_words"]
6720 },
6721 "right" : {
6722 "type" : "hexstr",
6723 "value" : "0x04"
6724 }
6725 }
6726 },
6727 "right" : {
6728 "type" : "hexstr",
6729 "value" : "0xff"
6730 }
6731 }
6732 }
6733 }
6734 ],
6735 "source_info" : {
6736 "filename" : "include/int_transit.p4",
6737 "line" : 105,
6738 "column" : 8,
6739 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 4"
6740 }
6741 },
6742 {
6743 "op" : "assign",
6744 "parameters" : [
6745 {
6746 "type" : "field",
6747 "value" : ["userMetadata.int_meta", "new_bytes"]
6748 },
6749 {
6750 "type" : "expression",
6751 "value" : {
6752 "type" : "expression",
6753 "value" : {
6754 "op" : "&",
6755 "left" : {
6756 "type" : "expression",
6757 "value" : {
6758 "op" : "+",
6759 "left" : {
6760 "type" : "field",
6761 "value" : ["userMetadata.int_meta", "new_bytes"]
6762 },
6763 "right" : {
6764 "type" : "hexstr",
6765 "value" : "0x0010"
6766 }
6767 }
6768 },
6769 "right" : {
6770 "type" : "hexstr",
6771 "value" : "0xffff"
6772 }
6773 }
6774 }
6775 }
6776 ],
6777 "source_info" : {
6778 "filename" : "include/int_transit.p4",
6779 "line" : 106,
6780 "column" : 7,
6781 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 16"
6782 }
6783 }
6784 ]
6785 },
6786 {
6787 "name" : "egress.process_int_transit.int_set_header_0407_i8",
6788 "id" : 42,
6789 "runtime_data" : [],
6790 "primitives" : [
6791 {
6792 "op" : "add_header",
6793 "parameters" : [
6794 {
6795 "type" : "header",
6796 "value" : "int_ingress_tstamp"
6797 }
6798 ],
6799 "source_info" : {
6800 "filename" : "include/int_transit.p4",
6801 "line" : 58,
6802 "column" : 8,
6803 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
6804 }
6805 },
6806 {
6807 "op" : "assign",
6808 "parameters" : [
6809 {
6810 "type" : "field",
6811 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
6812 },
6813 {
6814 "type" : "expression",
6815 "value" : {
6816 "type" : "expression",
6817 "value" : {
6818 "op" : "&",
6819 "left" : {
6820 "type" : "field",
6821 "value" : ["standard_metadata", "ingress_global_timestamp"]
6822 },
6823 "right" : {
6824 "type" : "hexstr",
6825 "value" : "0xffffffff"
6826 }
6827 }
6828 }
6829 }
6830 ],
6831 "source_info" : {
6832 "filename" : "include/int_transit.p4",
6833 "line" : 59,
6834 "column" : 8,
6835 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
6836 }
6837 },
6838 {
6839 "op" : "assign",
6840 "parameters" : [
6841 {
6842 "type" : "field",
6843 "value" : ["userMetadata.int_meta", "new_words"]
6844 },
6845 {
6846 "type" : "expression",
6847 "value" : {
6848 "type" : "expression",
6849 "value" : {
6850 "op" : "&",
6851 "left" : {
6852 "type" : "expression",
6853 "value" : {
6854 "op" : "+",
6855 "left" : {
6856 "type" : "field",
6857 "value" : ["userMetadata.int_meta", "new_words"]
6858 },
6859 "right" : {
6860 "type" : "hexstr",
6861 "value" : "0x01"
6862 }
6863 }
6864 },
6865 "right" : {
6866 "type" : "hexstr",
6867 "value" : "0xff"
6868 }
6869 }
6870 }
6871 }
6872 ],
6873 "source_info" : {
6874 "filename" : "include/int_transit.p4",
6875 "line" : 87,
6876 "column" : 8,
6877 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 1"
6878 }
6879 },
6880 {
6881 "op" : "assign",
6882 "parameters" : [
6883 {
6884 "type" : "field",
6885 "value" : ["userMetadata.int_meta", "new_bytes"]
6886 },
6887 {
6888 "type" : "expression",
6889 "value" : {
6890 "type" : "expression",
6891 "value" : {
6892 "op" : "&",
6893 "left" : {
6894 "type" : "expression",
6895 "value" : {
6896 "op" : "+",
6897 "left" : {
6898 "type" : "field",
6899 "value" : ["userMetadata.int_meta", "new_bytes"]
6900 },
6901 "right" : {
6902 "type" : "hexstr",
6903 "value" : "0x0004"
6904 }
6905 }
6906 },
6907 "right" : {
6908 "type" : "hexstr",
6909 "value" : "0xffff"
6910 }
6911 }
6912 }
6913 }
6914 ],
6915 "source_info" : {
6916 "filename" : "include/int_transit.p4",
6917 "line" : 88,
6918 "column" : 8,
6919 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 4"
6920 }
6921 }
6922 ]
6923 },
6924 {
6925 "name" : "egress.process_int_transit.int_set_header_0407_i9",
6926 "id" : 43,
6927 "runtime_data" : [],
6928 "primitives" : [
6929 {
6930 "op" : "add_header",
6931 "parameters" : [
6932 {
6933 "type" : "header",
6934 "value" : "int_egress_tx_util"
6935 }
6936 ],
6937 "source_info" : {
6938 "filename" : "include/int_transit.p4",
6939 "line" : 78,
6940 "column" : 8,
6941 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
6942 }
6943 },
6944 {
6945 "op" : "assign",
6946 "parameters" : [
6947 {
6948 "type" : "field",
6949 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
6950 },
6951 {
6952 "type" : "hexstr",
6953 "value" : "0x00000000"
6954 }
6955 ],
6956 "source_info" : {
6957 "filename" : "include/int_transit.p4",
6958 "line" : 79,
6959 "column" : 8,
6960 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
6961 }
6962 },
6963 {
6964 "op" : "add_header",
6965 "parameters" : [
6966 {
6967 "type" : "header",
6968 "value" : "int_ingress_tstamp"
6969 }
6970 ],
6971 "source_info" : {
6972 "filename" : "include/int_transit.p4",
6973 "line" : 58,
6974 "column" : 8,
6975 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
6976 }
6977 },
6978 {
6979 "op" : "assign",
6980 "parameters" : [
6981 {
6982 "type" : "field",
6983 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
6984 },
6985 {
6986 "type" : "expression",
6987 "value" : {
6988 "type" : "expression",
6989 "value" : {
6990 "op" : "&",
6991 "left" : {
6992 "type" : "field",
6993 "value" : ["standard_metadata", "ingress_global_timestamp"]
6994 },
6995 "right" : {
6996 "type" : "hexstr",
6997 "value" : "0xffffffff"
6998 }
6999 }
7000 }
7001 }
7002 ],
7003 "source_info" : {
7004 "filename" : "include/int_transit.p4",
7005 "line" : 59,
7006 "column" : 8,
7007 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
7008 }
7009 },
7010 {
7011 "op" : "assign",
7012 "parameters" : [
7013 {
7014 "type" : "field",
7015 "value" : ["userMetadata.int_meta", "new_words"]
7016 },
7017 {
7018 "type" : "expression",
7019 "value" : {
7020 "type" : "expression",
7021 "value" : {
7022 "op" : "&",
7023 "left" : {
7024 "type" : "expression",
7025 "value" : {
7026 "op" : "+",
7027 "left" : {
7028 "type" : "field",
7029 "value" : ["userMetadata.int_meta", "new_words"]
7030 },
7031 "right" : {
7032 "type" : "hexstr",
7033 "value" : "0x02"
7034 }
7035 }
7036 },
7037 "right" : {
7038 "type" : "hexstr",
7039 "value" : "0xff"
7040 }
7041 }
7042 }
7043 }
7044 ],
7045 "source_info" : {
7046 "filename" : "include/int_transit.p4",
7047 "line" : 93,
7048 "column" : 8,
7049 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
7050 }
7051 },
7052 {
7053 "op" : "assign",
7054 "parameters" : [
7055 {
7056 "type" : "field",
7057 "value" : ["userMetadata.int_meta", "new_bytes"]
7058 },
7059 {
7060 "type" : "expression",
7061 "value" : {
7062 "type" : "expression",
7063 "value" : {
7064 "op" : "&",
7065 "left" : {
7066 "type" : "expression",
7067 "value" : {
7068 "op" : "+",
7069 "left" : {
7070 "type" : "field",
7071 "value" : ["userMetadata.int_meta", "new_bytes"]
7072 },
7073 "right" : {
7074 "type" : "hexstr",
7075 "value" : "0x0008"
7076 }
7077 }
7078 },
7079 "right" : {
7080 "type" : "hexstr",
7081 "value" : "0xffff"
7082 }
7083 }
7084 }
7085 }
7086 ],
7087 "source_info" : {
7088 "filename" : "include/int_transit.p4",
7089 "line" : 94,
7090 "column" : 8,
7091 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
7092 }
7093 }
7094 ]
7095 },
7096 {
7097 "name" : "egress.process_int_transit.int_set_header_0407_i10",
7098 "id" : 44,
7099 "runtime_data" : [],
7100 "primitives" : [
7101 {
7102 "op" : "add_header",
7103 "parameters" : [
7104 {
7105 "type" : "header",
7106 "value" : "int_level2_port_ids"
7107 }
7108 ],
7109 "source_info" : {
7110 "filename" : "include/int_transit.p4",
7111 "line" : 70,
7112 "column" : 8,
7113 "source_fragment" : "hdr.int_level2_port_ids.setValid()"
7114 }
7115 },
7116 {
7117 "op" : "assign",
7118 "parameters" : [
7119 {
7120 "type" : "field",
7121 "value" : ["int_level2_port_ids", "ingress_port_id"]
7122 },
7123 {
7124 "type" : "expression",
7125 "value" : {
7126 "type" : "expression",
7127 "value" : {
7128 "op" : "&",
7129 "left" : {
7130 "type" : "field",
7131 "value" : ["standard_metadata", "ingress_port"]
7132 },
7133 "right" : {
7134 "type" : "hexstr",
7135 "value" : "0xffffffff"
7136 }
7137 }
7138 }
7139 }
7140 ],
7141 "source_info" : {
7142 "filename" : "include/int_transit.p4",
7143 "line" : 72,
7144 "column" : 8,
7145 "source_fragment" : "hdr.int_level2_port_ids.ingress_port_id = (bit<32>) standard_metadata.ingress_port"
7146 }
7147 },
7148 {
7149 "op" : "assign",
7150 "parameters" : [
7151 {
7152 "type" : "field",
7153 "value" : ["int_level2_port_ids", "egress_port_id"]
7154 },
7155 {
7156 "type" : "expression",
7157 "value" : {
7158 "type" : "expression",
7159 "value" : {
7160 "op" : "&",
7161 "left" : {
7162 "type" : "field",
7163 "value" : ["standard_metadata", "egress_port"]
7164 },
7165 "right" : {
7166 "type" : "hexstr",
7167 "value" : "0xffffffff"
7168 }
7169 }
7170 }
7171 }
7172 ],
7173 "source_info" : {
7174 "filename" : "include/int_transit.p4",
7175 "line" : 73,
7176 "column" : 8,
7177 "source_fragment" : "hdr.int_level2_port_ids.egress_port_id = (bit<32>) standard_metadata.egress_port"
7178 }
7179 },
7180 {
7181 "op" : "add_header",
7182 "parameters" : [
7183 {
7184 "type" : "header",
7185 "value" : "int_ingress_tstamp"
7186 }
7187 ],
7188 "source_info" : {
7189 "filename" : "include/int_transit.p4",
7190 "line" : 58,
7191 "column" : 8,
7192 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
7193 }
7194 },
7195 {
7196 "op" : "assign",
7197 "parameters" : [
7198 {
7199 "type" : "field",
7200 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
7201 },
7202 {
7203 "type" : "expression",
7204 "value" : {
7205 "type" : "expression",
7206 "value" : {
7207 "op" : "&",
7208 "left" : {
7209 "type" : "field",
7210 "value" : ["standard_metadata", "ingress_global_timestamp"]
7211 },
7212 "right" : {
7213 "type" : "hexstr",
7214 "value" : "0xffffffff"
7215 }
7216 }
7217 }
7218 }
7219 ],
7220 "source_info" : {
7221 "filename" : "include/int_transit.p4",
7222 "line" : 59,
7223 "column" : 8,
7224 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
7225 }
7226 },
7227 {
7228 "op" : "assign",
7229 "parameters" : [
7230 {
7231 "type" : "field",
7232 "value" : ["userMetadata.int_meta", "new_words"]
7233 },
7234 {
7235 "type" : "expression",
7236 "value" : {
7237 "type" : "expression",
7238 "value" : {
7239 "op" : "&",
7240 "left" : {
7241 "type" : "expression",
7242 "value" : {
7243 "op" : "+",
7244 "left" : {
7245 "type" : "field",
7246 "value" : ["userMetadata.int_meta", "new_words"]
7247 },
7248 "right" : {
7249 "type" : "hexstr",
7250 "value" : "0x03"
7251 }
7252 }
7253 },
7254 "right" : {
7255 "type" : "hexstr",
7256 "value" : "0xff"
7257 }
7258 }
7259 }
7260 }
7261 ],
7262 "source_info" : {
7263 "filename" : "include/int_transit.p4",
7264 "line" : 99,
7265 "column" : 8,
7266 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 3"
7267 }
7268 },
7269 {
7270 "op" : "assign",
7271 "parameters" : [
7272 {
7273 "type" : "field",
7274 "value" : ["userMetadata.int_meta", "new_bytes"]
7275 },
7276 {
7277 "type" : "expression",
7278 "value" : {
7279 "type" : "expression",
7280 "value" : {
7281 "op" : "&",
7282 "left" : {
7283 "type" : "expression",
7284 "value" : {
7285 "op" : "+",
7286 "left" : {
7287 "type" : "field",
7288 "value" : ["userMetadata.int_meta", "new_bytes"]
7289 },
7290 "right" : {
7291 "type" : "hexstr",
7292 "value" : "0x000c"
7293 }
7294 }
7295 },
7296 "right" : {
7297 "type" : "hexstr",
7298 "value" : "0xffff"
7299 }
7300 }
7301 }
7302 }
7303 ],
7304 "source_info" : {
7305 "filename" : "include/int_transit.p4",
7306 "line" : 100,
7307 "column" : 8,
7308 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 12"
7309 }
7310 }
7311 ]
7312 },
7313 {
7314 "name" : "egress.process_int_transit.int_set_header_0407_i11",
7315 "id" : 45,
7316 "runtime_data" : [],
7317 "primitives" : [
7318 {
7319 "op" : "add_header",
7320 "parameters" : [
7321 {
7322 "type" : "header",
7323 "value" : "int_egress_tx_util"
7324 }
7325 ],
7326 "source_info" : {
7327 "filename" : "include/int_transit.p4",
7328 "line" : 78,
7329 "column" : 8,
7330 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
7331 }
7332 },
7333 {
7334 "op" : "assign",
7335 "parameters" : [
7336 {
7337 "type" : "field",
7338 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
7339 },
7340 {
7341 "type" : "hexstr",
7342 "value" : "0x00000000"
7343 }
7344 ],
7345 "source_info" : {
7346 "filename" : "include/int_transit.p4",
7347 "line" : 79,
7348 "column" : 8,
7349 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
7350 }
7351 },
7352 {
7353 "op" : "add_header",
7354 "parameters" : [
7355 {
7356 "type" : "header",
7357 "value" : "int_level2_port_ids"
7358 }
7359 ],
7360 "source_info" : {
7361 "filename" : "include/int_transit.p4",
7362 "line" : 70,
7363 "column" : 8,
7364 "source_fragment" : "hdr.int_level2_port_ids.setValid()"
7365 }
7366 },
7367 {
7368 "op" : "assign",
7369 "parameters" : [
7370 {
7371 "type" : "field",
7372 "value" : ["int_level2_port_ids", "ingress_port_id"]
7373 },
7374 {
7375 "type" : "expression",
7376 "value" : {
7377 "type" : "expression",
7378 "value" : {
7379 "op" : "&",
7380 "left" : {
7381 "type" : "field",
7382 "value" : ["standard_metadata", "ingress_port"]
7383 },
7384 "right" : {
7385 "type" : "hexstr",
7386 "value" : "0xffffffff"
7387 }
7388 }
7389 }
7390 }
7391 ],
7392 "source_info" : {
7393 "filename" : "include/int_transit.p4",
7394 "line" : 72,
7395 "column" : 8,
7396 "source_fragment" : "hdr.int_level2_port_ids.ingress_port_id = (bit<32>) standard_metadata.ingress_port"
7397 }
7398 },
7399 {
7400 "op" : "assign",
7401 "parameters" : [
7402 {
7403 "type" : "field",
7404 "value" : ["int_level2_port_ids", "egress_port_id"]
7405 },
7406 {
7407 "type" : "expression",
7408 "value" : {
7409 "type" : "expression",
7410 "value" : {
7411 "op" : "&",
7412 "left" : {
7413 "type" : "field",
7414 "value" : ["standard_metadata", "egress_port"]
7415 },
7416 "right" : {
7417 "type" : "hexstr",
7418 "value" : "0xffffffff"
7419 }
7420 }
7421 }
7422 }
7423 ],
7424 "source_info" : {
7425 "filename" : "include/int_transit.p4",
7426 "line" : 73,
7427 "column" : 8,
7428 "source_fragment" : "hdr.int_level2_port_ids.egress_port_id = (bit<32>) standard_metadata.egress_port"
7429 }
7430 },
7431 {
7432 "op" : "add_header",
7433 "parameters" : [
7434 {
7435 "type" : "header",
7436 "value" : "int_ingress_tstamp"
7437 }
7438 ],
7439 "source_info" : {
7440 "filename" : "include/int_transit.p4",
7441 "line" : 58,
7442 "column" : 8,
7443 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
7444 }
7445 },
7446 {
7447 "op" : "assign",
7448 "parameters" : [
7449 {
7450 "type" : "field",
7451 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
7452 },
7453 {
7454 "type" : "expression",
7455 "value" : {
7456 "type" : "expression",
7457 "value" : {
7458 "op" : "&",
7459 "left" : {
7460 "type" : "field",
7461 "value" : ["standard_metadata", "ingress_global_timestamp"]
7462 },
7463 "right" : {
7464 "type" : "hexstr",
7465 "value" : "0xffffffff"
7466 }
7467 }
7468 }
7469 }
7470 ],
7471 "source_info" : {
7472 "filename" : "include/int_transit.p4",
7473 "line" : 59,
7474 "column" : 8,
7475 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
7476 }
7477 },
7478 {
7479 "op" : "assign",
7480 "parameters" : [
7481 {
7482 "type" : "field",
7483 "value" : ["userMetadata.int_meta", "new_words"]
7484 },
7485 {
7486 "type" : "expression",
7487 "value" : {
7488 "type" : "expression",
7489 "value" : {
7490 "op" : "&",
7491 "left" : {
7492 "type" : "expression",
7493 "value" : {
7494 "op" : "+",
7495 "left" : {
7496 "type" : "field",
7497 "value" : ["userMetadata.int_meta", "new_words"]
7498 },
7499 "right" : {
7500 "type" : "hexstr",
7501 "value" : "0x04"
7502 }
7503 }
7504 },
7505 "right" : {
7506 "type" : "hexstr",
7507 "value" : "0xff"
7508 }
7509 }
7510 }
7511 }
7512 ],
7513 "source_info" : {
7514 "filename" : "include/int_transit.p4",
7515 "line" : 105,
7516 "column" : 8,
7517 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 4"
7518 }
7519 },
7520 {
7521 "op" : "assign",
7522 "parameters" : [
7523 {
7524 "type" : "field",
7525 "value" : ["userMetadata.int_meta", "new_bytes"]
7526 },
7527 {
7528 "type" : "expression",
7529 "value" : {
7530 "type" : "expression",
7531 "value" : {
7532 "op" : "&",
7533 "left" : {
7534 "type" : "expression",
7535 "value" : {
7536 "op" : "+",
7537 "left" : {
7538 "type" : "field",
7539 "value" : ["userMetadata.int_meta", "new_bytes"]
7540 },
7541 "right" : {
7542 "type" : "hexstr",
7543 "value" : "0x0010"
7544 }
7545 }
7546 },
7547 "right" : {
7548 "type" : "hexstr",
7549 "value" : "0xffff"
7550 }
7551 }
7552 }
7553 }
7554 ],
7555 "source_info" : {
7556 "filename" : "include/int_transit.p4",
7557 "line" : 106,
7558 "column" : 7,
7559 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 16"
7560 }
7561 }
7562 ]
7563 },
7564 {
7565 "name" : "egress.process_int_transit.int_set_header_0407_i12",
7566 "id" : 46,
7567 "runtime_data" : [],
7568 "primitives" : [
7569 {
7570 "op" : "add_header",
7571 "parameters" : [
7572 {
7573 "type" : "header",
7574 "value" : "int_egress_tstamp"
7575 }
7576 ],
7577 "source_info" : {
7578 "filename" : "include/int_transit.p4",
7579 "line" : 64,
7580 "column" : 8,
7581 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
7582 }
7583 },
7584 {
7585 "op" : "assign",
7586 "parameters" : [
7587 {
7588 "type" : "field",
7589 "value" : ["int_egress_tstamp", "egress_tstamp"]
7590 },
7591 {
7592 "type" : "expression",
7593 "value" : {
7594 "type" : "expression",
7595 "value" : {
7596 "op" : "&",
7597 "left" : {
7598 "type" : "field",
7599 "value" : ["standard_metadata", "egress_global_timestamp"]
7600 },
7601 "right" : {
7602 "type" : "hexstr",
7603 "value" : "0xffffffff"
7604 }
7605 }
7606 }
7607 }
7608 ],
7609 "source_info" : {
7610 "filename" : "include/int_transit.p4",
7611 "line" : 65,
7612 "column" : 8,
7613 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
7614 }
7615 },
7616 {
7617 "op" : "add_header",
7618 "parameters" : [
7619 {
7620 "type" : "header",
7621 "value" : "int_ingress_tstamp"
7622 }
7623 ],
7624 "source_info" : {
7625 "filename" : "include/int_transit.p4",
7626 "line" : 58,
7627 "column" : 8,
7628 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
7629 }
7630 },
7631 {
7632 "op" : "assign",
7633 "parameters" : [
7634 {
7635 "type" : "field",
7636 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
7637 },
7638 {
7639 "type" : "expression",
7640 "value" : {
7641 "type" : "expression",
7642 "value" : {
7643 "op" : "&",
7644 "left" : {
7645 "type" : "field",
7646 "value" : ["standard_metadata", "ingress_global_timestamp"]
7647 },
7648 "right" : {
7649 "type" : "hexstr",
7650 "value" : "0xffffffff"
7651 }
7652 }
7653 }
7654 }
7655 ],
7656 "source_info" : {
7657 "filename" : "include/int_transit.p4",
7658 "line" : 59,
7659 "column" : 8,
7660 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
7661 }
7662 },
7663 {
7664 "op" : "assign",
7665 "parameters" : [
7666 {
7667 "type" : "field",
7668 "value" : ["userMetadata.int_meta", "new_words"]
7669 },
7670 {
7671 "type" : "expression",
7672 "value" : {
7673 "type" : "expression",
7674 "value" : {
7675 "op" : "&",
7676 "left" : {
7677 "type" : "expression",
7678 "value" : {
7679 "op" : "+",
7680 "left" : {
7681 "type" : "field",
7682 "value" : ["userMetadata.int_meta", "new_words"]
7683 },
7684 "right" : {
7685 "type" : "hexstr",
7686 "value" : "0x02"
7687 }
7688 }
7689 },
7690 "right" : {
7691 "type" : "hexstr",
7692 "value" : "0xff"
7693 }
7694 }
7695 }
7696 }
7697 ],
7698 "source_info" : {
7699 "filename" : "include/int_transit.p4",
7700 "line" : 93,
7701 "column" : 8,
7702 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 2"
7703 }
7704 },
7705 {
7706 "op" : "assign",
7707 "parameters" : [
7708 {
7709 "type" : "field",
7710 "value" : ["userMetadata.int_meta", "new_bytes"]
7711 },
7712 {
7713 "type" : "expression",
7714 "value" : {
7715 "type" : "expression",
7716 "value" : {
7717 "op" : "&",
7718 "left" : {
7719 "type" : "expression",
7720 "value" : {
7721 "op" : "+",
7722 "left" : {
7723 "type" : "field",
7724 "value" : ["userMetadata.int_meta", "new_bytes"]
7725 },
7726 "right" : {
7727 "type" : "hexstr",
7728 "value" : "0x0008"
7729 }
7730 }
7731 },
7732 "right" : {
7733 "type" : "hexstr",
7734 "value" : "0xffff"
7735 }
7736 }
7737 }
7738 }
7739 ],
7740 "source_info" : {
7741 "filename" : "include/int_transit.p4",
7742 "line" : 94,
7743 "column" : 8,
7744 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 8"
7745 }
7746 }
7747 ]
7748 },
7749 {
7750 "name" : "egress.process_int_transit.int_set_header_0407_i13",
7751 "id" : 47,
7752 "runtime_data" : [],
7753 "primitives" : [
7754 {
7755 "op" : "add_header",
7756 "parameters" : [
7757 {
7758 "type" : "header",
7759 "value" : "int_egress_tx_util"
7760 }
7761 ],
7762 "source_info" : {
7763 "filename" : "include/int_transit.p4",
7764 "line" : 78,
7765 "column" : 8,
7766 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
7767 }
7768 },
7769 {
7770 "op" : "assign",
7771 "parameters" : [
7772 {
7773 "type" : "field",
7774 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
7775 },
7776 {
7777 "type" : "hexstr",
7778 "value" : "0x00000000"
7779 }
7780 ],
7781 "source_info" : {
7782 "filename" : "include/int_transit.p4",
7783 "line" : 79,
7784 "column" : 8,
7785 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
7786 }
7787 },
7788 {
7789 "op" : "add_header",
7790 "parameters" : [
7791 {
7792 "type" : "header",
7793 "value" : "int_egress_tstamp"
7794 }
7795 ],
7796 "source_info" : {
7797 "filename" : "include/int_transit.p4",
7798 "line" : 64,
7799 "column" : 8,
7800 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
7801 }
7802 },
7803 {
7804 "op" : "assign",
7805 "parameters" : [
7806 {
7807 "type" : "field",
7808 "value" : ["int_egress_tstamp", "egress_tstamp"]
7809 },
7810 {
7811 "type" : "expression",
7812 "value" : {
7813 "type" : "expression",
7814 "value" : {
7815 "op" : "&",
7816 "left" : {
7817 "type" : "field",
7818 "value" : ["standard_metadata", "egress_global_timestamp"]
7819 },
7820 "right" : {
7821 "type" : "hexstr",
7822 "value" : "0xffffffff"
7823 }
7824 }
7825 }
7826 }
7827 ],
7828 "source_info" : {
7829 "filename" : "include/int_transit.p4",
7830 "line" : 65,
7831 "column" : 8,
7832 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
7833 }
7834 },
7835 {
7836 "op" : "add_header",
7837 "parameters" : [
7838 {
7839 "type" : "header",
7840 "value" : "int_ingress_tstamp"
7841 }
7842 ],
7843 "source_info" : {
7844 "filename" : "include/int_transit.p4",
7845 "line" : 58,
7846 "column" : 8,
7847 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
7848 }
7849 },
7850 {
7851 "op" : "assign",
7852 "parameters" : [
7853 {
7854 "type" : "field",
7855 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
7856 },
7857 {
7858 "type" : "expression",
7859 "value" : {
7860 "type" : "expression",
7861 "value" : {
7862 "op" : "&",
7863 "left" : {
7864 "type" : "field",
7865 "value" : ["standard_metadata", "ingress_global_timestamp"]
7866 },
7867 "right" : {
7868 "type" : "hexstr",
7869 "value" : "0xffffffff"
7870 }
7871 }
7872 }
7873 }
7874 ],
7875 "source_info" : {
7876 "filename" : "include/int_transit.p4",
7877 "line" : 59,
7878 "column" : 8,
7879 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
7880 }
7881 },
7882 {
7883 "op" : "assign",
7884 "parameters" : [
7885 {
7886 "type" : "field",
7887 "value" : ["userMetadata.int_meta", "new_words"]
7888 },
7889 {
7890 "type" : "expression",
7891 "value" : {
7892 "type" : "expression",
7893 "value" : {
7894 "op" : "&",
7895 "left" : {
7896 "type" : "expression",
7897 "value" : {
7898 "op" : "+",
7899 "left" : {
7900 "type" : "field",
7901 "value" : ["userMetadata.int_meta", "new_words"]
7902 },
7903 "right" : {
7904 "type" : "hexstr",
7905 "value" : "0x03"
7906 }
7907 }
7908 },
7909 "right" : {
7910 "type" : "hexstr",
7911 "value" : "0xff"
7912 }
7913 }
7914 }
7915 }
7916 ],
7917 "source_info" : {
7918 "filename" : "include/int_transit.p4",
7919 "line" : 99,
7920 "column" : 8,
7921 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 3"
7922 }
7923 },
7924 {
7925 "op" : "assign",
7926 "parameters" : [
7927 {
7928 "type" : "field",
7929 "value" : ["userMetadata.int_meta", "new_bytes"]
7930 },
7931 {
7932 "type" : "expression",
7933 "value" : {
7934 "type" : "expression",
7935 "value" : {
7936 "op" : "&",
7937 "left" : {
7938 "type" : "expression",
7939 "value" : {
7940 "op" : "+",
7941 "left" : {
7942 "type" : "field",
7943 "value" : ["userMetadata.int_meta", "new_bytes"]
7944 },
7945 "right" : {
7946 "type" : "hexstr",
7947 "value" : "0x000c"
7948 }
7949 }
7950 },
7951 "right" : {
7952 "type" : "hexstr",
7953 "value" : "0xffff"
7954 }
7955 }
7956 }
7957 }
7958 ],
7959 "source_info" : {
7960 "filename" : "include/int_transit.p4",
7961 "line" : 100,
7962 "column" : 8,
7963 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 12"
7964 }
7965 }
7966 ]
7967 },
7968 {
7969 "name" : "egress.process_int_transit.int_set_header_0407_i14",
7970 "id" : 48,
7971 "runtime_data" : [],
7972 "primitives" : [
7973 {
7974 "op" : "add_header",
7975 "parameters" : [
7976 {
7977 "type" : "header",
7978 "value" : "int_level2_port_ids"
7979 }
7980 ],
7981 "source_info" : {
7982 "filename" : "include/int_transit.p4",
7983 "line" : 70,
7984 "column" : 8,
7985 "source_fragment" : "hdr.int_level2_port_ids.setValid()"
7986 }
7987 },
7988 {
7989 "op" : "assign",
7990 "parameters" : [
7991 {
7992 "type" : "field",
7993 "value" : ["int_level2_port_ids", "ingress_port_id"]
7994 },
7995 {
7996 "type" : "expression",
7997 "value" : {
7998 "type" : "expression",
7999 "value" : {
8000 "op" : "&",
8001 "left" : {
8002 "type" : "field",
8003 "value" : ["standard_metadata", "ingress_port"]
8004 },
8005 "right" : {
8006 "type" : "hexstr",
8007 "value" : "0xffffffff"
8008 }
8009 }
8010 }
8011 }
8012 ],
8013 "source_info" : {
8014 "filename" : "include/int_transit.p4",
8015 "line" : 72,
8016 "column" : 8,
8017 "source_fragment" : "hdr.int_level2_port_ids.ingress_port_id = (bit<32>) standard_metadata.ingress_port"
8018 }
8019 },
8020 {
8021 "op" : "assign",
8022 "parameters" : [
8023 {
8024 "type" : "field",
8025 "value" : ["int_level2_port_ids", "egress_port_id"]
8026 },
8027 {
8028 "type" : "expression",
8029 "value" : {
8030 "type" : "expression",
8031 "value" : {
8032 "op" : "&",
8033 "left" : {
8034 "type" : "field",
8035 "value" : ["standard_metadata", "egress_port"]
8036 },
8037 "right" : {
8038 "type" : "hexstr",
8039 "value" : "0xffffffff"
8040 }
8041 }
8042 }
8043 }
8044 ],
8045 "source_info" : {
8046 "filename" : "include/int_transit.p4",
8047 "line" : 73,
8048 "column" : 8,
8049 "source_fragment" : "hdr.int_level2_port_ids.egress_port_id = (bit<32>) standard_metadata.egress_port"
8050 }
8051 },
8052 {
8053 "op" : "add_header",
8054 "parameters" : [
8055 {
8056 "type" : "header",
8057 "value" : "int_egress_tstamp"
8058 }
8059 ],
8060 "source_info" : {
8061 "filename" : "include/int_transit.p4",
8062 "line" : 64,
8063 "column" : 8,
8064 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8065 }
8066 },
8067 {
8068 "op" : "assign",
8069 "parameters" : [
8070 {
8071 "type" : "field",
8072 "value" : ["int_egress_tstamp", "egress_tstamp"]
8073 },
8074 {
8075 "type" : "expression",
8076 "value" : {
8077 "type" : "expression",
8078 "value" : {
8079 "op" : "&",
8080 "left" : {
8081 "type" : "field",
8082 "value" : ["standard_metadata", "egress_global_timestamp"]
8083 },
8084 "right" : {
8085 "type" : "hexstr",
8086 "value" : "0xffffffff"
8087 }
8088 }
8089 }
8090 }
8091 ],
8092 "source_info" : {
8093 "filename" : "include/int_transit.p4",
8094 "line" : 65,
8095 "column" : 8,
8096 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
8097 }
8098 },
8099 {
8100 "op" : "add_header",
8101 "parameters" : [
8102 {
8103 "type" : "header",
8104 "value" : "int_ingress_tstamp"
8105 }
8106 ],
8107 "source_info" : {
8108 "filename" : "include/int_transit.p4",
8109 "line" : 58,
8110 "column" : 8,
8111 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
8112 }
8113 },
8114 {
8115 "op" : "assign",
8116 "parameters" : [
8117 {
8118 "type" : "field",
8119 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
8120 },
8121 {
8122 "type" : "expression",
8123 "value" : {
8124 "type" : "expression",
8125 "value" : {
8126 "op" : "&",
8127 "left" : {
8128 "type" : "field",
8129 "value" : ["standard_metadata", "ingress_global_timestamp"]
8130 },
8131 "right" : {
8132 "type" : "hexstr",
8133 "value" : "0xffffffff"
8134 }
8135 }
8136 }
8137 }
8138 ],
8139 "source_info" : {
8140 "filename" : "include/int_transit.p4",
8141 "line" : 59,
8142 "column" : 8,
8143 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
8144 }
8145 },
8146 {
8147 "op" : "assign",
8148 "parameters" : [
8149 {
8150 "type" : "field",
8151 "value" : ["userMetadata.int_meta", "new_words"]
8152 },
8153 {
8154 "type" : "expression",
8155 "value" : {
8156 "type" : "expression",
8157 "value" : {
8158 "op" : "&",
8159 "left" : {
8160 "type" : "expression",
8161 "value" : {
8162 "op" : "+",
8163 "left" : {
8164 "type" : "field",
8165 "value" : ["userMetadata.int_meta", "new_words"]
8166 },
8167 "right" : {
8168 "type" : "hexstr",
8169 "value" : "0x04"
8170 }
8171 }
8172 },
8173 "right" : {
8174 "type" : "hexstr",
8175 "value" : "0xff"
8176 }
8177 }
8178 }
8179 }
8180 ],
8181 "source_info" : {
8182 "filename" : "include/int_transit.p4",
8183 "line" : 105,
8184 "column" : 8,
8185 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 4"
8186 }
8187 },
8188 {
8189 "op" : "assign",
8190 "parameters" : [
8191 {
8192 "type" : "field",
8193 "value" : ["userMetadata.int_meta", "new_bytes"]
8194 },
8195 {
8196 "type" : "expression",
8197 "value" : {
8198 "type" : "expression",
8199 "value" : {
8200 "op" : "&",
8201 "left" : {
8202 "type" : "expression",
8203 "value" : {
8204 "op" : "+",
8205 "left" : {
8206 "type" : "field",
8207 "value" : ["userMetadata.int_meta", "new_bytes"]
8208 },
8209 "right" : {
8210 "type" : "hexstr",
8211 "value" : "0x0010"
8212 }
8213 }
8214 },
8215 "right" : {
8216 "type" : "hexstr",
8217 "value" : "0xffff"
8218 }
8219 }
8220 }
8221 }
8222 ],
8223 "source_info" : {
8224 "filename" : "include/int_transit.p4",
8225 "line" : 106,
8226 "column" : 7,
8227 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 16"
8228 }
8229 }
8230 ]
8231 },
8232 {
8233 "name" : "egress.process_int_transit.int_set_header_0407_i15",
8234 "id" : 49,
8235 "runtime_data" : [],
8236 "primitives" : [
8237 {
8238 "op" : "add_header",
8239 "parameters" : [
8240 {
8241 "type" : "header",
8242 "value" : "int_egress_tx_util"
8243 }
8244 ],
8245 "source_info" : {
8246 "filename" : "include/int_transit.p4",
8247 "line" : 78,
8248 "column" : 8,
8249 "source_fragment" : "hdr.int_egress_tx_util.setValid()"
8250 }
8251 },
8252 {
8253 "op" : "assign",
8254 "parameters" : [
8255 {
8256 "type" : "field",
8257 "value" : ["int_egress_tx_util", "egress_port_tx_util"]
8258 },
8259 {
8260 "type" : "hexstr",
8261 "value" : "0x00000000"
8262 }
8263 ],
8264 "source_info" : {
8265 "filename" : "include/int_transit.p4",
8266 "line" : 79,
8267 "column" : 8,
8268 "source_fragment" : "hdr.int_egress_tx_util.egress_port_tx_util = ..."
8269 }
8270 },
8271 {
8272 "op" : "add_header",
8273 "parameters" : [
8274 {
8275 "type" : "header",
8276 "value" : "int_level2_port_ids"
8277 }
8278 ],
8279 "source_info" : {
8280 "filename" : "include/int_transit.p4",
8281 "line" : 70,
8282 "column" : 8,
8283 "source_fragment" : "hdr.int_level2_port_ids.setValid()"
8284 }
8285 },
8286 {
8287 "op" : "assign",
8288 "parameters" : [
8289 {
8290 "type" : "field",
8291 "value" : ["int_level2_port_ids", "ingress_port_id"]
8292 },
8293 {
8294 "type" : "expression",
8295 "value" : {
8296 "type" : "expression",
8297 "value" : {
8298 "op" : "&",
8299 "left" : {
8300 "type" : "field",
8301 "value" : ["standard_metadata", "ingress_port"]
8302 },
8303 "right" : {
8304 "type" : "hexstr",
8305 "value" : "0xffffffff"
8306 }
8307 }
8308 }
8309 }
8310 ],
8311 "source_info" : {
8312 "filename" : "include/int_transit.p4",
8313 "line" : 72,
8314 "column" : 8,
8315 "source_fragment" : "hdr.int_level2_port_ids.ingress_port_id = (bit<32>) standard_metadata.ingress_port"
8316 }
8317 },
8318 {
8319 "op" : "assign",
8320 "parameters" : [
8321 {
8322 "type" : "field",
8323 "value" : ["int_level2_port_ids", "egress_port_id"]
8324 },
8325 {
8326 "type" : "expression",
8327 "value" : {
8328 "type" : "expression",
8329 "value" : {
8330 "op" : "&",
8331 "left" : {
8332 "type" : "field",
8333 "value" : ["standard_metadata", "egress_port"]
8334 },
8335 "right" : {
8336 "type" : "hexstr",
8337 "value" : "0xffffffff"
8338 }
8339 }
8340 }
8341 }
8342 ],
8343 "source_info" : {
8344 "filename" : "include/int_transit.p4",
8345 "line" : 73,
8346 "column" : 8,
8347 "source_fragment" : "hdr.int_level2_port_ids.egress_port_id = (bit<32>) standard_metadata.egress_port"
8348 }
8349 },
8350 {
8351 "op" : "add_header",
8352 "parameters" : [
8353 {
8354 "type" : "header",
8355 "value" : "int_egress_tstamp"
8356 }
8357 ],
8358 "source_info" : {
8359 "filename" : "include/int_transit.p4",
8360 "line" : 64,
8361 "column" : 8,
8362 "source_fragment" : "hdr.int_egress_tstamp.setValid()"
8363 }
8364 },
8365 {
8366 "op" : "assign",
8367 "parameters" : [
8368 {
8369 "type" : "field",
8370 "value" : ["int_egress_tstamp", "egress_tstamp"]
8371 },
8372 {
8373 "type" : "expression",
8374 "value" : {
8375 "type" : "expression",
8376 "value" : {
8377 "op" : "&",
8378 "left" : {
8379 "type" : "field",
8380 "value" : ["standard_metadata", "egress_global_timestamp"]
8381 },
8382 "right" : {
8383 "type" : "hexstr",
8384 "value" : "0xffffffff"
8385 }
8386 }
8387 }
8388 }
8389 ],
8390 "source_info" : {
8391 "filename" : "include/int_transit.p4",
8392 "line" : 65,
8393 "column" : 8,
8394 "source_fragment" : "hdr.int_egress_tstamp.egress_tstamp = ..."
8395 }
8396 },
8397 {
8398 "op" : "add_header",
8399 "parameters" : [
8400 {
8401 "type" : "header",
8402 "value" : "int_ingress_tstamp"
8403 }
8404 ],
8405 "source_info" : {
8406 "filename" : "include/int_transit.p4",
8407 "line" : 58,
8408 "column" : 8,
8409 "source_fragment" : "hdr.int_ingress_tstamp.setValid()"
8410 }
8411 },
8412 {
8413 "op" : "assign",
8414 "parameters" : [
8415 {
8416 "type" : "field",
8417 "value" : ["int_ingress_tstamp", "ingress_tstamp"]
8418 },
8419 {
8420 "type" : "expression",
8421 "value" : {
8422 "type" : "expression",
8423 "value" : {
8424 "op" : "&",
8425 "left" : {
8426 "type" : "field",
8427 "value" : ["standard_metadata", "ingress_global_timestamp"]
8428 },
8429 "right" : {
8430 "type" : "hexstr",
8431 "value" : "0xffffffff"
8432 }
8433 }
8434 }
8435 }
8436 ],
8437 "source_info" : {
8438 "filename" : "include/int_transit.p4",
8439 "line" : 59,
8440 "column" : 8,
8441 "source_fragment" : "hdr.int_ingress_tstamp.ingress_tstamp = ..."
8442 }
8443 },
8444 {
8445 "op" : "assign",
8446 "parameters" : [
8447 {
8448 "type" : "field",
8449 "value" : ["userMetadata.int_meta", "new_words"]
8450 },
8451 {
8452 "type" : "expression",
8453 "value" : {
8454 "type" : "expression",
8455 "value" : {
8456 "op" : "&",
8457 "left" : {
8458 "type" : "expression",
8459 "value" : {
8460 "op" : "+",
8461 "left" : {
8462 "type" : "field",
8463 "value" : ["userMetadata.int_meta", "new_words"]
8464 },
8465 "right" : {
8466 "type" : "hexstr",
8467 "value" : "0x05"
8468 }
8469 }
8470 },
8471 "right" : {
8472 "type" : "hexstr",
8473 "value" : "0xff"
8474 }
8475 }
8476 }
8477 }
8478 ],
8479 "source_info" : {
8480 "filename" : "include/int_transit.p4",
8481 "line" : 111,
8482 "column" : 8,
8483 "source_fragment" : "local_metadata.int_meta.new_words = local_metadata.int_meta.new_words + 5"
8484 }
8485 },
8486 {
8487 "op" : "assign",
8488 "parameters" : [
8489 {
8490 "type" : "field",
8491 "value" : ["userMetadata.int_meta", "new_bytes"]
8492 },
8493 {
8494 "type" : "expression",
8495 "value" : {
8496 "type" : "expression",
8497 "value" : {
8498 "op" : "&",
8499 "left" : {
8500 "type" : "expression",
8501 "value" : {
8502 "op" : "+",
8503 "left" : {
8504 "type" : "field",
8505 "value" : ["userMetadata.int_meta", "new_bytes"]
8506 },
8507 "right" : {
8508 "type" : "hexstr",
8509 "value" : "0x0014"
8510 }
8511 }
8512 },
8513 "right" : {
8514 "type" : "hexstr",
8515 "value" : "0xffff"
8516 }
8517 }
8518 }
8519 }
8520 ],
8521 "source_info" : {
8522 "filename" : "include/int_transit.p4",
8523 "line" : 112,
8524 "column" : 8,
8525 "source_fragment" : "local_metadata.int_meta.new_bytes = local_metadata.int_meta.new_bytes + 20"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08008526 }
8527 }
8528 ]
8529 },
8530 {
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008531 "name" : "egress.process_int_report.do_report_encapsulation",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008532 "id" : 50,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008533 "runtime_data" : [
8534 {
8535 "name" : "src_mac",
8536 "bitwidth" : 48
8537 },
8538 {
8539 "name" : "mon_mac",
8540 "bitwidth" : 48
8541 },
8542 {
8543 "name" : "src_ip",
8544 "bitwidth" : 32
8545 },
8546 {
8547 "name" : "mon_ip",
8548 "bitwidth" : 32
8549 },
8550 {
8551 "name" : "mon_port",
8552 "bitwidth" : 16
8553 }
8554 ],
8555 "primitives" : [
8556 {
8557 "op" : "add_header",
8558 "parameters" : [
8559 {
8560 "type" : "header",
8561 "value" : "report_ethernet"
8562 }
8563 ],
8564 "source_info" : {
8565 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008566 "line" : 55,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008567 "column" : 8,
8568 "source_fragment" : "hdr.report_ethernet.setValid()"
8569 }
8570 },
8571 {
8572 "op" : "assign",
8573 "parameters" : [
8574 {
8575 "type" : "field",
8576 "value" : ["report_ethernet", "dst_addr"]
8577 },
8578 {
8579 "type" : "runtime_data",
8580 "value" : 1
8581 }
8582 ],
8583 "source_info" : {
8584 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008585 "line" : 56,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008586 "column" : 8,
8587 "source_fragment" : "hdr.report_ethernet.dst_addr = mon_mac"
8588 }
8589 },
8590 {
8591 "op" : "assign",
8592 "parameters" : [
8593 {
8594 "type" : "field",
8595 "value" : ["report_ethernet", "src_addr"]
8596 },
8597 {
8598 "type" : "runtime_data",
8599 "value" : 0
8600 }
8601 ],
8602 "source_info" : {
8603 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008604 "line" : 57,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008605 "column" : 8,
8606 "source_fragment" : "hdr.report_ethernet.src_addr = src_mac"
8607 }
8608 },
8609 {
8610 "op" : "assign",
8611 "parameters" : [
8612 {
8613 "type" : "field",
8614 "value" : ["report_ethernet", "ether_type"]
8615 },
8616 {
8617 "type" : "hexstr",
8618 "value" : "0x0800"
8619 }
8620 ],
8621 "source_info" : {
8622 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008623 "line" : 58,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008624 "column" : 8,
8625 "source_fragment" : "hdr.report_ethernet.ether_type = 0x0800"
8626 }
8627 },
8628 {
8629 "op" : "add_header",
8630 "parameters" : [
8631 {
8632 "type" : "header",
8633 "value" : "report_ipv4"
8634 }
8635 ],
8636 "source_info" : {
8637 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008638 "line" : 61,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008639 "column" : 8,
8640 "source_fragment" : "hdr.report_ipv4.setValid()"
8641 }
8642 },
8643 {
8644 "op" : "assign",
8645 "parameters" : [
8646 {
8647 "type" : "field",
8648 "value" : ["report_ipv4", "version"]
8649 },
8650 {
8651 "type" : "hexstr",
8652 "value" : "0x04"
8653 }
8654 ],
8655 "source_info" : {
8656 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008657 "line" : 62,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008658 "column" : 8,
8659 "source_fragment" : "hdr.report_ipv4.version = 4w4"
8660 }
8661 },
8662 {
8663 "op" : "assign",
8664 "parameters" : [
8665 {
8666 "type" : "field",
8667 "value" : ["report_ipv4", "ihl"]
8668 },
8669 {
8670 "type" : "hexstr",
8671 "value" : "0x05"
8672 }
8673 ],
8674 "source_info" : {
8675 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008676 "line" : 63,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008677 "column" : 8,
8678 "source_fragment" : "hdr.report_ipv4.ihl = 4w5"
8679 }
8680 },
8681 {
8682 "op" : "assign",
8683 "parameters" : [
8684 {
8685 "type" : "field",
8686 "value" : ["report_ipv4", "dscp"]
8687 },
8688 {
8689 "type" : "hexstr",
8690 "value" : "0x00"
8691 }
8692 ],
8693 "source_info" : {
8694 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008695 "line" : 64,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008696 "column" : 8,
8697 "source_fragment" : "hdr.report_ipv4.dscp = 6w0"
8698 }
8699 },
8700 {
8701 "op" : "assign",
8702 "parameters" : [
8703 {
8704 "type" : "field",
8705 "value" : ["report_ipv4", "ecn"]
8706 },
8707 {
8708 "type" : "hexstr",
8709 "value" : "0x00"
8710 }
8711 ],
8712 "source_info" : {
8713 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008714 "line" : 65,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008715 "column" : 8,
8716 "source_fragment" : "hdr.report_ipv4.ecn = 2w0"
8717 }
8718 },
8719 {
8720 "op" : "assign",
8721 "parameters" : [
8722 {
8723 "type" : "field",
8724 "value" : ["report_ipv4", "len"]
8725 },
8726 {
8727 "type" : "expression",
8728 "value" : {
8729 "type" : "expression",
8730 "value" : {
8731 "op" : "&",
8732 "left" : {
8733 "type" : "expression",
8734 "value" : {
8735 "op" : "+",
8736 "left" : {
8737 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008738 "value" : "0x0056"
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008739 },
8740 "right" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008741 "type" : "expression",
8742 "value" : {
8743 "op" : "&",
8744 "left" : {
8745 "type" : "expression",
8746 "value" : {
8747 "op" : "<<",
8748 "left" : {
8749 "type" : "expression",
8750 "value" : {
8751 "op" : "&",
8752 "left" : {
8753 "type" : "field",
8754 "value" : ["intl4_shim", "len"]
8755 },
8756 "right" : {
8757 "type" : "hexstr",
8758 "value" : "0xffff"
8759 }
8760 }
8761 },
8762 "right" : {
8763 "type" : "hexstr",
8764 "value" : "0x2"
8765 }
8766 }
8767 },
8768 "right" : {
8769 "type" : "hexstr",
8770 "value" : "0xffff"
8771 }
8772 }
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008773 }
8774 }
8775 },
8776 "right" : {
8777 "type" : "hexstr",
8778 "value" : "0xffff"
8779 }
8780 }
8781 }
8782 }
8783 ],
8784 "source_info" : {
8785 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008786 "line" : 67,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008787 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008788 "source_fragment" : "hdr.report_ipv4.len = (bit<16>) IPV4_MIN_HEAD_LEN + (bit<16>) UDP_HEADER_LEN + (bit<16>) REPORT_FIXED_HEADER_LEN + ..."
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008789 }
8790 },
8791 {
8792 "op" : "assign",
8793 "parameters" : [
8794 {
8795 "type" : "field",
8796 "value" : ["report_ipv4", "identification"]
8797 },
8798 {
8799 "type" : "hexstr",
8800 "value" : "0x0000"
8801 }
8802 ],
8803 "source_info" : {
8804 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008805 "line" : 70,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008806 "column" : 8,
8807 "source_fragment" : "hdr.report_ipv4.identification = 0"
8808 }
8809 },
8810 {
8811 "op" : "assign",
8812 "parameters" : [
8813 {
8814 "type" : "field",
8815 "value" : ["report_ipv4", "flags"]
8816 },
8817 {
8818 "type" : "hexstr",
8819 "value" : "0x00"
8820 }
8821 ],
8822 "source_info" : {
8823 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008824 "line" : 71,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008825 "column" : 8,
8826 "source_fragment" : "hdr.report_ipv4.flags = 0"
8827 }
8828 },
8829 {
8830 "op" : "assign",
8831 "parameters" : [
8832 {
8833 "type" : "field",
8834 "value" : ["report_ipv4", "frag_offset"]
8835 },
8836 {
8837 "type" : "hexstr",
8838 "value" : "0x0000"
8839 }
8840 ],
8841 "source_info" : {
8842 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008843 "line" : 72,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008844 "column" : 8,
8845 "source_fragment" : "hdr.report_ipv4.frag_offset = 0"
8846 }
8847 },
8848 {
8849 "op" : "assign",
8850 "parameters" : [
8851 {
8852 "type" : "field",
8853 "value" : ["report_ipv4", "ttl"]
8854 },
8855 {
8856 "type" : "hexstr",
8857 "value" : "0x40"
8858 }
8859 ],
8860 "source_info" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008861 "filename" : "include/int_definitions.p4",
8862 "line" : 37,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008863 "column" : 30,
8864 "source_fragment" : "64; ..."
8865 }
8866 },
8867 {
8868 "op" : "assign",
8869 "parameters" : [
8870 {
8871 "type" : "field",
8872 "value" : ["report_ipv4", "protocol"]
8873 },
8874 {
8875 "type" : "hexstr",
8876 "value" : "0x11"
8877 }
8878 ],
8879 "source_info" : {
8880 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008881 "line" : 74,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008882 "column" : 8,
8883 "source_fragment" : "hdr.report_ipv4.protocol = 8w17"
8884 }
8885 },
8886 {
8887 "op" : "assign",
8888 "parameters" : [
8889 {
8890 "type" : "field",
8891 "value" : ["report_ipv4", "src_addr"]
8892 },
8893 {
8894 "type" : "runtime_data",
8895 "value" : 2
8896 }
8897 ],
8898 "source_info" : {
8899 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008900 "line" : 75,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008901 "column" : 8,
8902 "source_fragment" : "hdr.report_ipv4.src_addr = src_ip"
8903 }
8904 },
8905 {
8906 "op" : "assign",
8907 "parameters" : [
8908 {
8909 "type" : "field",
8910 "value" : ["report_ipv4", "dst_addr"]
8911 },
8912 {
8913 "type" : "runtime_data",
8914 "value" : 3
8915 }
8916 ],
8917 "source_info" : {
8918 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008919 "line" : 76,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008920 "column" : 8,
8921 "source_fragment" : "hdr.report_ipv4.dst_addr = mon_ip"
8922 }
8923 },
8924 {
8925 "op" : "add_header",
8926 "parameters" : [
8927 {
8928 "type" : "header",
8929 "value" : "report_udp"
8930 }
8931 ],
8932 "source_info" : {
8933 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008934 "line" : 79,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008935 "column" : 8,
8936 "source_fragment" : "hdr.report_udp.setValid()"
8937 }
8938 },
8939 {
8940 "op" : "assign",
8941 "parameters" : [
8942 {
8943 "type" : "field",
8944 "value" : ["report_udp", "src_port"]
8945 },
8946 {
8947 "type" : "hexstr",
8948 "value" : "0x0000"
8949 }
8950 ],
8951 "source_info" : {
8952 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008953 "line" : 80,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008954 "column" : 8,
8955 "source_fragment" : "hdr.report_udp.src_port = 0"
8956 }
8957 },
8958 {
8959 "op" : "assign",
8960 "parameters" : [
8961 {
8962 "type" : "field",
8963 "value" : ["report_udp", "dst_port"]
8964 },
8965 {
8966 "type" : "runtime_data",
8967 "value" : 4
8968 }
8969 ],
8970 "source_info" : {
8971 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008972 "line" : 81,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008973 "column" : 8,
8974 "source_fragment" : "hdr.report_udp.dst_port = mon_port"
8975 }
8976 },
8977 {
8978 "op" : "assign",
8979 "parameters" : [
8980 {
8981 "type" : "field",
8982 "value" : ["report_udp", "length_"]
8983 },
8984 {
8985 "type" : "expression",
8986 "value" : {
8987 "type" : "expression",
8988 "value" : {
8989 "op" : "&",
8990 "left" : {
8991 "type" : "expression",
8992 "value" : {
8993 "op" : "+",
8994 "left" : {
8995 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008996 "value" : "0x0042"
Jonghwan Hyun6777d532018-11-18 20:50:16 +09008997 },
8998 "right" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09008999 "type" : "expression",
9000 "value" : {
9001 "op" : "&",
9002 "left" : {
9003 "type" : "expression",
9004 "value" : {
9005 "op" : "<<",
9006 "left" : {
9007 "type" : "expression",
9008 "value" : {
9009 "op" : "&",
9010 "left" : {
9011 "type" : "field",
9012 "value" : ["intl4_shim", "len"]
9013 },
9014 "right" : {
9015 "type" : "hexstr",
9016 "value" : "0xffff"
9017 }
9018 }
9019 },
9020 "right" : {
9021 "type" : "hexstr",
9022 "value" : "0x2"
9023 }
9024 }
9025 },
9026 "right" : {
9027 "type" : "hexstr",
9028 "value" : "0xffff"
9029 }
9030 }
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009031 }
9032 }
9033 },
9034 "right" : {
9035 "type" : "hexstr",
9036 "value" : "0xffff"
9037 }
9038 }
9039 }
9040 }
9041 ],
9042 "source_info" : {
9043 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009044 "line" : 82,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009045 "column" : 8,
9046 "source_fragment" : "hdr.report_udp.length_ = (bit<16>) UDP_HEADER_LEN + (bit<16>) REPORT_FIXED_HEADER_LEN + ..."
9047 }
9048 },
9049 {
9050 "op" : "assign",
9051 "parameters" : [
9052 {
9053 "type" : "field",
9054 "value" : ["scalars", "local_metadata_t.compute_checksum"]
9055 },
9056 {
9057 "type" : "expression",
9058 "value" : {
9059 "type" : "expression",
9060 "value" : {
9061 "op" : "b2d",
9062 "left" : null,
9063 "right" : {
9064 "type" : "bool",
9065 "value" : true
9066 }
9067 }
9068 }
9069 }
9070 ],
9071 "source_info" : {
9072 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009073 "line" : 86,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009074 "column" : 8,
9075 "source_fragment" : "local_metadata.compute_checksum = true"
9076 }
9077 },
9078 {
9079 "op" : "add_header",
9080 "parameters" : [
9081 {
9082 "type" : "header",
9083 "value" : "report_fixed_header"
9084 }
9085 ],
9086 "source_info" : {
9087 "filename" : "include/int_report.p4",
9088 "line" : 32,
9089 "column" : 8,
9090 "source_fragment" : "hdr.report_fixed_header.setValid()"
9091 }
9092 },
9093 {
9094 "op" : "assign",
9095 "parameters" : [
9096 {
9097 "type" : "field",
9098 "value" : ["report_fixed_header", "ver"]
9099 },
9100 {
9101 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009102 "value" : "0x01"
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009103 }
9104 ],
9105 "source_info" : {
9106 "filename" : "include/int_report.p4",
9107 "line" : 33,
9108 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009109 "source_fragment" : "hdr.report_fixed_header.ver = 1"
9110 }
9111 },
9112 {
9113 "op" : "assign",
9114 "parameters" : [
9115 {
9116 "type" : "field",
9117 "value" : ["report_fixed_header", "len"]
9118 },
9119 {
9120 "type" : "hexstr",
9121 "value" : "0x04"
9122 }
9123 ],
9124 "source_info" : {
9125 "filename" : "include/int_report.p4",
9126 "line" : 34,
9127 "column" : 8,
9128 "source_fragment" : "hdr.report_fixed_header.len = 4"
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009129 }
9130 },
9131 {
9132 "op" : "assign",
9133 "parameters" : [
9134 {
9135 "type" : "field",
9136 "value" : ["report_fixed_header", "nproto"]
9137 },
9138 {
9139 "type" : "hexstr",
9140 "value" : "0x00"
9141 }
9142 ],
9143 "source_info" : {
9144 "filename" : "include/telemetry_report_headers.p4",
9145 "line" : 21,
9146 "column" : 31,
9147 "source_fragment" : "0; ..."
9148 }
9149 },
9150 {
9151 "op" : "assign",
9152 "parameters" : [
9153 {
9154 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009155 "value" : ["report_fixed_header", "rep_md_bits"]
9156 },
9157 {
9158 "type" : "hexstr",
9159 "value" : "0x00"
9160 }
9161 ],
9162 "source_info" : {
9163 "filename" : "include/int_report.p4",
9164 "line" : 37,
9165 "column" : 8,
9166 "source_fragment" : "hdr.report_fixed_header.rep_md_bits = 0"
9167 }
9168 },
9169 {
9170 "op" : "assign",
9171 "parameters" : [
9172 {
9173 "type" : "field",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009174 "value" : ["report_fixed_header", "d"]
9175 },
9176 {
9177 "type" : "hexstr",
9178 "value" : "0x00"
9179 }
9180 ],
9181 "source_info" : {
9182 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009183 "line" : 38,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009184 "column" : 8,
9185 "source_fragment" : "hdr.report_fixed_header.d = 0"
9186 }
9187 },
9188 {
9189 "op" : "assign",
9190 "parameters" : [
9191 {
9192 "type" : "field",
9193 "value" : ["report_fixed_header", "q"]
9194 },
9195 {
9196 "type" : "hexstr",
9197 "value" : "0x00"
9198 }
9199 ],
9200 "source_info" : {
9201 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009202 "line" : 39,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009203 "column" : 8,
9204 "source_fragment" : "hdr.report_fixed_header.q = 0"
9205 }
9206 },
9207 {
9208 "op" : "assign",
9209 "parameters" : [
9210 {
9211 "type" : "field",
9212 "value" : ["report_fixed_header", "f"]
9213 },
9214 {
9215 "type" : "hexstr",
9216 "value" : "0x01"
9217 }
9218 ],
9219 "source_info" : {
9220 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009221 "line" : 40,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009222 "column" : 8,
9223 "source_fragment" : "hdr.report_fixed_header.f = 1"
9224 }
9225 },
9226 {
9227 "op" : "assign",
9228 "parameters" : [
9229 {
9230 "type" : "field",
9231 "value" : ["report_fixed_header", "rsvd"]
9232 },
9233 {
9234 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009235 "value" : "0x00"
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009236 }
9237 ],
9238 "source_info" : {
9239 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009240 "line" : 41,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009241 "column" : 8,
9242 "source_fragment" : "hdr.report_fixed_header.rsvd = 0"
9243 }
9244 },
9245 {
9246 "op" : "assign",
9247 "parameters" : [
9248 {
9249 "type" : "field",
9250 "value" : ["report_fixed_header", "hw_id"]
9251 },
9252 {
9253 "type" : "hexstr",
9254 "value" : "0x01"
9255 }
9256 ],
9257 "source_info" : {
9258 "filename" : "include/int_definitions.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009259 "line" : 36,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009260 "column" : 21,
9261 "source_fragment" : "1; ..."
9262 }
9263 },
9264 {
9265 "op" : "assign",
9266 "parameters" : [
9267 {
9268 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009269 "value" : ["report_fixed_header", "sw_id"]
9270 },
9271 {
9272 "type" : "field",
9273 "value" : ["userMetadata.int_meta", "switch_id"]
9274 }
9275 ],
9276 "source_info" : {
9277 "filename" : "include/int_report.p4",
9278 "line" : 44,
9279 "column" : 8,
9280 "source_fragment" : "hdr.report_fixed_header.sw_id = local_metadata.int_meta.switch_id"
9281 }
9282 },
9283 {
9284 "op" : "assign",
9285 "parameters" : [
9286 {
9287 "type" : "field",
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009288 "value" : ["report_fixed_header", "seq_no"]
9289 },
9290 {
9291 "type" : "hexstr",
9292 "value" : "0x00000000"
9293 }
9294 ],
9295 "source_info" : {
9296 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009297 "line" : 46,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009298 "column" : 8,
9299 "source_fragment" : "hdr.report_fixed_header.seq_no = 0"
9300 }
9301 },
9302 {
9303 "op" : "assign",
9304 "parameters" : [
9305 {
9306 "type" : "field",
9307 "value" : ["report_fixed_header", "ingress_tstamp"]
9308 },
9309 {
9310 "type" : "field",
9311 "value" : ["standard_metadata", "enq_timestamp"]
9312 }
9313 ],
9314 "source_info" : {
9315 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009316 "line" : 48,
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009317 "column" : 8,
9318 "source_fragment" : "hdr.report_fixed_header.ingress_tstamp = (bit<32>) standard_metadata.enq_timestamp"
9319 }
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009320 },
9321 {
9322 "op" : "assign",
9323 "parameters" : [
9324 {
9325 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009326 "value" : ["scalars", "tmp_1"]
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009327 },
9328 {
9329 "type" : "expression",
9330 "value" : {
9331 "type" : "expression",
9332 "value" : {
9333 "op" : "&",
9334 "left" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009335 "type" : "expression",
9336 "value" : {
9337 "op" : "+",
9338 "left" : {
9339 "type" : "expression",
9340 "value" : {
9341 "op" : "&",
9342 "left" : {
9343 "type" : "field",
9344 "value" : ["report_ipv4", "len"]
9345 },
9346 "right" : {
9347 "type" : "hexstr",
9348 "value" : "0xffffffff"
9349 }
9350 }
9351 },
9352 "right" : {
9353 "type" : "hexstr",
9354 "value" : "0x0000000e"
9355 }
9356 }
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009357 },
9358 "right" : {
9359 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009360 "value" : "0xffffffff"
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009361 }
9362 }
9363 }
9364 }
9365 ],
9366 "source_info" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009367 "filename" : "include/int_report.p4",
9368 "line" : 89,
9369 "column" : 17,
9370 "source_fragment" : "(bit<32>)hdr.report_ipv4.len + (bit<32>) ETH_HEADER_LEN"
9371 }
9372 },
9373 {
9374 "op" : "truncate",
9375 "parameters" : [
9376 {
9377 "type" : "field",
9378 "value" : ["scalars", "tmp_1"]
9379 }
9380 ],
9381 "source_info" : {
9382 "filename" : "include/int_report.p4",
9383 "line" : 89,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009384 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009385 "source_fragment" : "truncate((bit<32>)hdr.report_ipv4.len + (bit<32>) ETH_HEADER_LEN)"
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009386 }
9387 }
9388 ]
9389 },
9390 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009391 "name" : "egress.process_int_sink.restore_header",
9392 "id" : 51,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009393 "runtime_data" : [],
9394 "primitives" : [
9395 {
9396 "op" : "assign",
9397 "parameters" : [
9398 {
9399 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009400 "value" : ["ipv4", "dscp"]
9401 },
9402 {
9403 "type" : "field",
9404 "value" : ["intl4_shim", "dscp"]
9405 }
9406 ],
9407 "source_info" : {
9408 "filename" : "include/int_sink.p4",
9409 "line" : 27,
9410 "column" : 8,
9411 "source_fragment" : "hdr.ipv4.dscp = hdr.intl4_shim.dscp"
9412 }
9413 },
9414 {
9415 "op" : "assign",
9416 "parameters" : [
9417 {
9418 "type" : "field",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009419 "value" : ["ipv4", "len"]
9420 },
9421 {
9422 "type" : "expression",
9423 "value" : {
9424 "type" : "expression",
9425 "value" : {
9426 "op" : "&",
9427 "left" : {
9428 "type" : "expression",
9429 "value" : {
9430 "op" : "-",
9431 "left" : {
9432 "type" : "field",
9433 "value" : ["ipv4", "len"]
9434 },
9435 "right" : {
9436 "type" : "expression",
9437 "value" : {
9438 "op" : "&",
9439 "left" : {
9440 "type" : "expression",
9441 "value" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009442 "op" : "<<",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009443 "left" : {
9444 "type" : "expression",
9445 "value" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009446 "op" : "&",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009447 "left" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009448 "type" : "field",
9449 "value" : ["intl4_shim", "len"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009450 },
9451 "right" : {
9452 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009453 "value" : "0xffff"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009454 }
9455 }
9456 },
9457 "right" : {
9458 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009459 "value" : "0x2"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009460 }
9461 }
9462 },
9463 "right" : {
9464 "type" : "hexstr",
9465 "value" : "0xffff"
9466 }
9467 }
9468 }
9469 }
9470 },
9471 "right" : {
9472 "type" : "hexstr",
9473 "value" : "0xffff"
9474 }
9475 }
9476 }
9477 }
9478 ],
9479 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009480 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009481 "line" : 30,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009482 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009483 "source_fragment" : "hdr.ipv4.len = hdr.ipv4.len - len_bytes"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009484 }
9485 },
9486 {
9487 "op" : "assign",
9488 "parameters" : [
9489 {
9490 "type" : "field",
9491 "value" : ["udp", "length_"]
9492 },
9493 {
9494 "type" : "expression",
9495 "value" : {
9496 "type" : "expression",
9497 "value" : {
9498 "op" : "&",
9499 "left" : {
9500 "type" : "expression",
9501 "value" : {
9502 "op" : "-",
9503 "left" : {
9504 "type" : "field",
9505 "value" : ["udp", "length_"]
9506 },
9507 "right" : {
9508 "type" : "expression",
9509 "value" : {
9510 "op" : "&",
9511 "left" : {
9512 "type" : "expression",
9513 "value" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009514 "op" : "<<",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009515 "left" : {
9516 "type" : "expression",
9517 "value" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009518 "op" : "&",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009519 "left" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009520 "type" : "field",
9521 "value" : ["intl4_shim", "len"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009522 },
9523 "right" : {
9524 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009525 "value" : "0xffff"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009526 }
9527 }
9528 },
9529 "right" : {
9530 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009531 "value" : "0x2"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009532 }
9533 }
9534 },
9535 "right" : {
9536 "type" : "hexstr",
9537 "value" : "0xffff"
9538 }
9539 }
9540 }
9541 }
9542 },
9543 "right" : {
9544 "type" : "hexstr",
9545 "value" : "0xffff"
9546 }
9547 }
9548 }
9549 }
9550 ],
9551 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009552 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009553 "line" : 31,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009554 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009555 "source_fragment" : "hdr.udp.length_ = hdr.udp.length_ - len_bytes"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009556 }
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009557 }
9558 ]
9559 },
9560 {
9561 "name" : "egress.process_int_sink.int_sink",
9562 "id" : 52,
9563 "runtime_data" : [],
9564 "primitives" : [
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009565 {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009566 "op" : "remove_header",
9567 "parameters" : [
9568 {
9569 "type" : "header",
9570 "value" : "int_header"
9571 }
9572 ],
9573 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009574 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009575 "line" : 37,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009576 "column" : 8,
9577 "source_fragment" : "hdr.int_header.setInvalid()"
9578 }
9579 },
9580 {
9581 "op" : "remove_header",
9582 "parameters" : [
9583 {
9584 "type" : "header",
9585 "value" : "int_data"
9586 }
9587 ],
9588 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009589 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009590 "line" : 38,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009591 "column" : 8,
9592 "source_fragment" : "hdr.int_data.setInvalid()"
9593 }
9594 },
9595 {
9596 "op" : "remove_header",
9597 "parameters" : [
9598 {
9599 "type" : "header",
9600 "value" : "intl4_shim"
9601 }
9602 ],
9603 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009604 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009605 "line" : 39,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009606 "column" : 8,
9607 "source_fragment" : "hdr.intl4_shim.setInvalid()"
9608 }
9609 },
9610 {
9611 "op" : "remove_header",
9612 "parameters" : [
9613 {
9614 "type" : "header",
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009615 "value" : "int_switch_id"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009616 }
9617 ],
9618 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009619 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009620 "line" : 40,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009621 "column" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009622 "source_fragment" : "hdr.int_switch_id.setInvalid()"
9623 }
9624 },
9625 {
9626 "op" : "remove_header",
9627 "parameters" : [
9628 {
9629 "type" : "header",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009630 "value" : "int_level1_port_ids"
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009631 }
9632 ],
9633 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009634 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009635 "line" : 41,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009636 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009637 "source_fragment" : "hdr.int_level1_port_ids.setInvalid()"
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009638 }
9639 },
9640 {
9641 "op" : "remove_header",
9642 "parameters" : [
9643 {
9644 "type" : "header",
9645 "value" : "int_hop_latency"
9646 }
9647 ],
9648 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009649 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009650 "line" : 42,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009651 "column" : 8,
9652 "source_fragment" : "hdr.int_hop_latency.setInvalid()"
9653 }
9654 },
9655 {
9656 "op" : "remove_header",
9657 "parameters" : [
9658 {
9659 "type" : "header",
9660 "value" : "int_q_occupancy"
9661 }
9662 ],
9663 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009664 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009665 "line" : 43,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009666 "column" : 8,
9667 "source_fragment" : "hdr.int_q_occupancy.setInvalid()"
9668 }
9669 },
9670 {
9671 "op" : "remove_header",
9672 "parameters" : [
9673 {
9674 "type" : "header",
9675 "value" : "int_ingress_tstamp"
9676 }
9677 ],
9678 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009679 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009680 "line" : 44,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009681 "column" : 8,
9682 "source_fragment" : "hdr.int_ingress_tstamp.setInvalid()"
9683 }
9684 },
9685 {
9686 "op" : "remove_header",
9687 "parameters" : [
9688 {
9689 "type" : "header",
9690 "value" : "int_egress_tstamp"
9691 }
9692 ],
9693 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009694 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009695 "line" : 45,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009696 "column" : 8,
9697 "source_fragment" : "hdr.int_egress_tstamp.setInvalid()"
9698 }
9699 },
9700 {
9701 "op" : "remove_header",
9702 "parameters" : [
9703 {
9704 "type" : "header",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009705 "value" : "int_level2_port_ids"
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009706 }
9707 ],
9708 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009709 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009710 "line" : 46,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009711 "column" : 8,
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009712 "source_fragment" : "hdr.int_level2_port_ids.setInvalid()"
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009713 }
9714 },
9715 {
9716 "op" : "remove_header",
9717 "parameters" : [
9718 {
9719 "type" : "header",
9720 "value" : "int_egress_tx_util"
9721 }
9722 ],
9723 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -07009724 "filename" : "include/int_sink.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009725 "line" : 47,
Jonghwan Hyun8be03392017-12-04 15:48:44 -08009726 "column" : 8,
9727 "source_fragment" : "hdr.int_egress_tx_util.setInvalid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009728 }
9729 }
9730 ]
9731 },
9732 {
Jonghwan Hyun6777d532018-11-18 20:50:16 +09009733 "name" : "act_2",
Jonghwan Hyunc235d462019-01-30 23:31:48 +09009734 "id" : 53,
9735 "runtime_data" : [],
9736 "primitives" : [
9737 {
9738 "op" : "assign",
9739 "parameters" : [
9740 {
9741 "type" : "field",
9742 "value" : ["scalars", "process_int_transit_hasReturned_0"]
9743 },
9744 {
9745 "type" : "expression",
9746 "value" : {
9747 "type" : "expression",
9748 "value" : {
9749 "op" : "b2d",
9750 "left" : null,
9751 "right" : {
9752 "type" : "bool",
9753 "value" : false
9754 }
9755 }
9756 }
9757 }
9758 ]
9759 }
9760 ]
9761 },
9762 {
9763 "name" : "act_3",
9764 "id" : 54,
9765 "runtime_data" : [],
9766 "primitives" : [
9767 {
9768 "op" : "assign",
9769 "parameters" : [
9770 {
9771 "type" : "field",
9772 "value" : ["scalars", "process_int_transit_hasReturned_0"]
9773 },
9774 {
9775 "type" : "expression",
9776 "value" : {
9777 "type" : "expression",
9778 "value" : {
9779 "op" : "b2d",
9780 "left" : null,
9781 "right" : {
9782 "type" : "bool",
9783 "value" : true
9784 }
9785 }
9786 }
9787 }
9788 ],
9789 "source_info" : {
9790 "filename" : "include/int_transit.p4",
9791 "line" : 416,
9792 "column" : 12,
9793 "source_fragment" : "return"
9794 }
9795 }
9796 ]
9797 },
9798 {
9799 "name" : "act_4",
9800 "id" : 55,
9801 "runtime_data" : [],
9802 "primitives" : [
9803 {
9804 "op" : "assign",
9805 "parameters" : [
9806 {
9807 "type" : "field",
9808 "value" : ["ipv4", "len"]
9809 },
9810 {
9811 "type" : "expression",
9812 "value" : {
9813 "type" : "expression",
9814 "value" : {
9815 "op" : "&",
9816 "left" : {
9817 "type" : "expression",
9818 "value" : {
9819 "op" : "+",
9820 "left" : {
9821 "type" : "field",
9822 "value" : ["ipv4", "len"]
9823 },
9824 "right" : {
9825 "type" : "field",
9826 "value" : ["userMetadata.int_meta", "new_bytes"]
9827 }
9828 }
9829 },
9830 "right" : {
9831 "type" : "hexstr",
9832 "value" : "0xffff"
9833 }
9834 }
9835 }
9836 }
9837 ],
9838 "source_info" : {
9839 "filename" : "include/int_transit.p4",
9840 "line" : 426,
9841 "column" : 12,
9842 "source_fragment" : "hdr.ipv4.len = hdr.ipv4.len + local_metadata.int_meta.new_bytes"
9843 }
9844 }
9845 ]
9846 },
9847 {
9848 "name" : "act_5",
9849 "id" : 56,
9850 "runtime_data" : [],
9851 "primitives" : [
9852 {
9853 "op" : "assign",
9854 "parameters" : [
9855 {
9856 "type" : "field",
9857 "value" : ["int_header", "remaining_hop_cnt"]
9858 },
9859 {
9860 "type" : "expression",
9861 "value" : {
9862 "type" : "expression",
9863 "value" : {
9864 "op" : "&",
9865 "left" : {
9866 "type" : "expression",
9867 "value" : {
9868 "op" : "+",
9869 "left" : {
9870 "type" : "field",
9871 "value" : ["int_header", "remaining_hop_cnt"]
9872 },
9873 "right" : {
9874 "type" : "hexstr",
9875 "value" : "0xff"
9876 }
9877 }
9878 },
9879 "right" : {
9880 "type" : "hexstr",
9881 "value" : "0xff"
9882 }
9883 }
9884 }
9885 }
9886 ],
9887 "source_info" : {
9888 "filename" : "include/int_transit.p4",
9889 "line" : 422,
9890 "column" : 8,
9891 "source_fragment" : "hdr.int_header.remaining_hop_cnt = hdr.int_header.remaining_hop_cnt - 1"
9892 }
9893 }
9894 ]
9895 },
9896 {
9897 "name" : "act_6",
9898 "id" : 57,
9899 "runtime_data" : [],
9900 "primitives" : [
9901 {
9902 "op" : "assign",
9903 "parameters" : [
9904 {
9905 "type" : "field",
9906 "value" : ["udp", "length_"]
9907 },
9908 {
9909 "type" : "expression",
9910 "value" : {
9911 "type" : "expression",
9912 "value" : {
9913 "op" : "&",
9914 "left" : {
9915 "type" : "expression",
9916 "value" : {
9917 "op" : "+",
9918 "left" : {
9919 "type" : "field",
9920 "value" : ["udp", "length_"]
9921 },
9922 "right" : {
9923 "type" : "field",
9924 "value" : ["userMetadata.int_meta", "new_bytes"]
9925 }
9926 }
9927 },
9928 "right" : {
9929 "type" : "hexstr",
9930 "value" : "0xffff"
9931 }
9932 }
9933 }
9934 }
9935 ],
9936 "source_info" : {
9937 "filename" : "include/int_transit.p4",
9938 "line" : 429,
9939 "column" : 12,
9940 "source_fragment" : "hdr.udp.length_ = hdr.udp.length_ + local_metadata.int_meta.new_bytes"
9941 }
9942 }
9943 ]
9944 },
9945 {
9946 "name" : "act_7",
9947 "id" : 58,
9948 "runtime_data" : [],
9949 "primitives" : [
9950 {
9951 "op" : "assign",
9952 "parameters" : [
9953 {
9954 "type" : "field",
9955 "value" : ["intl4_shim", "len"]
9956 },
9957 {
9958 "type" : "expression",
9959 "value" : {
9960 "type" : "expression",
9961 "value" : {
9962 "op" : "&",
9963 "left" : {
9964 "type" : "expression",
9965 "value" : {
9966 "op" : "+",
9967 "left" : {
9968 "type" : "field",
9969 "value" : ["intl4_shim", "len"]
9970 },
9971 "right" : {
9972 "type" : "field",
9973 "value" : ["userMetadata.int_meta", "new_words"]
9974 }
9975 }
9976 },
9977 "right" : {
9978 "type" : "hexstr",
9979 "value" : "0xff"
9980 }
9981 }
9982 }
9983 }
9984 ],
9985 "source_info" : {
9986 "filename" : "include/int_transit.p4",
9987 "line" : 432,
9988 "column" : 12,
9989 "source_fragment" : "hdr.intl4_shim.len = hdr.intl4_shim.len + local_metadata.int_meta.new_words"
9990 }
9991 }
9992 ]
9993 },
9994 {
9995 "name" : "act_8",
9996 "id" : 59,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -08009997 "runtime_data" : [],
9998 "primitives" : [
9999 {
10000 "op" : "add_header",
10001 "parameters" : [
10002 {
10003 "type" : "header",
10004 "value" : "packet_in"
10005 }
10006 ],
10007 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010008 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010009 "line" : 38,
10010 "column" : 12,
10011 "source_fragment" : "hdr.packet_in.setValid()"
10012 }
10013 },
10014 {
10015 "op" : "assign",
10016 "parameters" : [
10017 {
10018 "type" : "field",
10019 "value" : ["packet_in", "ingress_port"]
10020 },
10021 {
10022 "type" : "field",
10023 "value" : ["standard_metadata", "ingress_port"]
10024 }
10025 ],
10026 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010027 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010028 "line" : 39,
10029 "column" : 12,
10030 "source_fragment" : "hdr.packet_in.ingress_port = standard_metadata.ingress_port"
10031 }
10032 }
10033 ]
10034 },
10035 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010036 "name" : "act_9",
10037 "id" : 60,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010038 "runtime_data" : [],
10039 "primitives" : [
10040 {
10041 "op" : "assign",
10042 "parameters" : [
10043 {
10044 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010045 "value" : ["scalars", "tmp_2"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010046 },
10047 {
10048 "type" : "expression",
10049 "value" : {
10050 "type" : "expression",
10051 "value" : {
10052 "op" : "&",
10053 "left" : {
10054 "type" : "field",
10055 "value" : ["standard_metadata", "egress_port"]
10056 },
10057 "right" : {
10058 "type" : "hexstr",
10059 "value" : "0xffffffff"
10060 }
10061 }
10062 }
10063 }
Carmelo Cascone6af4e172018-06-15 16:01:30 +020010064 ],
10065 "source_info" : {
10066 "filename" : "include/port_counters.p4",
10067 "line" : 39,
10068 "column" : 34,
10069 "source_fragment" : "(bit<32>) standard_metadata.egress_port"
10070 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010071 },
10072 {
10073 "op" : "count",
10074 "parameters" : [
10075 {
10076 "type" : "counter_array",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010077 "value" : "egress.port_counters_egress.egress_port_counter"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010078 },
10079 {
10080 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010081 "value" : ["scalars", "tmp_2"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010082 }
10083 ],
10084 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010085 "filename" : "include/port_counters.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010086 "line" : 39,
10087 "column" : 8,
10088 "source_fragment" : "egress_port_counter.count((bit<32>) standard_metadata.egress_port)"
10089 }
10090 }
10091 ]
10092 }
10093 ],
10094 "pipelines" : [
10095 {
10096 "name" : "ingress",
10097 "id" : 0,
10098 "source_info" : {
10099 "filename" : "int.p4",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010100 "line" : 37,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010101 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010102 "source_fragment" : "ingress"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010103 },
10104 "init_table" : "tbl_act",
10105 "tables" : [
10106 {
10107 "name" : "tbl_act",
10108 "id" : 0,
10109 "key" : [],
10110 "match_type" : "exact",
10111 "type" : "simple",
10112 "max_size" : 1024,
10113 "with_counters" : false,
10114 "support_timeout" : false,
10115 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010116 "action_ids" : [11],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010117 "actions" : ["act_0"],
10118 "base_default_next" : "node_3",
10119 "next_tables" : {
10120 "act_0" : "node_3"
10121 },
10122 "default_entry" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010123 "action_id" : 11,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010124 "action_const" : true,
10125 "action_data" : [],
10126 "action_entry_const" : true
10127 }
10128 },
10129 {
10130 "name" : "tbl_act_0",
10131 "id" : 1,
10132 "key" : [],
10133 "match_type" : "exact",
10134 "type" : "simple",
10135 "max_size" : 1024,
10136 "with_counters" : false,
10137 "support_timeout" : false,
10138 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010139 "action_ids" : [10],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010140 "actions" : ["act"],
10141 "base_default_next" : null,
10142 "next_tables" : {
10143 "act" : null
10144 },
10145 "default_entry" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010146 "action_id" : 10,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010147 "action_const" : true,
10148 "action_data" : [],
10149 "action_entry_const" : true
10150 }
10151 },
10152 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010153 "name" : "ingress.table0_control.table0",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010154 "id" : 2,
10155 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010156 "filename" : "include/table0.p4",
Keesjan Karsten23368892018-05-22 10:46:01 +000010157 "line" : 41,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010158 "column" : 10,
10159 "source_fragment" : "table0"
10160 },
10161 "key" : [
10162 {
10163 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010164 "name" : "standard_metadata.ingress_port",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010165 "target" : ["standard_metadata", "ingress_port"],
10166 "mask" : null
10167 },
10168 {
10169 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010170 "name" : "hdr.ethernet.src_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010171 "target" : ["ethernet", "src_addr"],
10172 "mask" : null
10173 },
10174 {
10175 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010176 "name" : "hdr.ethernet.dst_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010177 "target" : ["ethernet", "dst_addr"],
10178 "mask" : null
10179 },
10180 {
10181 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010182 "name" : "hdr.ethernet.ether_type",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010183 "target" : ["ethernet", "ether_type"],
10184 "mask" : null
10185 },
10186 {
10187 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010188 "name" : "hdr.ipv4.src_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010189 "target" : ["ipv4", "src_addr"],
10190 "mask" : null
10191 },
10192 {
10193 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010194 "name" : "hdr.ipv4.dst_addr",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010195 "target" : ["ipv4", "dst_addr"],
10196 "mask" : null
10197 },
10198 {
10199 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010200 "name" : "hdr.ipv4.protocol",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010201 "target" : ["ipv4", "protocol"],
10202 "mask" : null
10203 },
10204 {
10205 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010206 "name" : "local_metadata.l4_src_port",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010207 "target" : ["scalars", "local_metadata_t.l4_src_port"],
10208 "mask" : null
10209 },
10210 {
10211 "match_type" : "ternary",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010212 "name" : "local_metadata.l4_dst_port",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010213 "target" : ["scalars", "local_metadata_t.l4_dst_port"],
10214 "mask" : null
10215 }
10216 ],
10217 "match_type" : "ternary",
10218 "type" : "simple",
10219 "max_size" : 1024,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010220 "with_counters" : true,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010221 "support_timeout" : false,
10222 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010223 "action_ids" : [6, 5, 4, 0],
Keesjan Karsten23368892018-05-22 10:46:01 +000010224 "actions" : ["ingress.table0_control.set_egress_port", "ingress.table0_control.send_to_cpu", "ingress.table0_control.set_next_hop_id", "_drop"],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010225 "base_default_next" : "ingress.process_int_source_sink.tb_set_source",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010226 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010227 "ingress.table0_control.set_egress_port" : "ingress.process_int_source_sink.tb_set_source",
10228 "ingress.table0_control.send_to_cpu" : "ingress.process_int_source_sink.tb_set_source",
10229 "ingress.table0_control.set_next_hop_id" : "ingress.process_int_source_sink.tb_set_source",
10230 "_drop" : "ingress.process_int_source_sink.tb_set_source"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010231 },
10232 "default_entry" : {
Keesjan Karsten23368892018-05-22 10:46:01 +000010233 "action_id" : 0,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010234 "action_const" : true,
10235 "action_data" : [],
10236 "action_entry_const" : true
10237 }
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010238 },
10239 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010240 "name" : "ingress.process_int_source_sink.tb_set_source",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010241 "id" : 3,
10242 "source_info" : {
10243 "filename" : "include/int_source.p4",
10244 "line" : 101,
10245 "column" : 10,
10246 "source_fragment" : "tb_set_source"
10247 },
10248 "key" : [
10249 {
10250 "match_type" : "exact",
10251 "name" : "standard_metadata.ingress_port",
10252 "target" : ["standard_metadata", "ingress_port"],
10253 "mask" : null
10254 }
10255 ],
10256 "match_type" : "exact",
10257 "type" : "simple",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010258 "max_size" : 511,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010259 "with_counters" : true,
10260 "support_timeout" : false,
10261 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010262 "action_ids" : [7, 1],
10263 "actions" : ["ingress.process_int_source_sink.int_set_source", "nop"],
10264 "base_default_next" : "ingress.process_int_source_sink.tb_set_sink",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010265 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010266 "ingress.process_int_source_sink.int_set_source" : "ingress.process_int_source_sink.tb_set_sink",
10267 "nop" : "ingress.process_int_source_sink.tb_set_sink"
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010268 },
10269 "default_entry" : {
10270 "action_id" : 1,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010271 "action_const" : true,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010272 "action_data" : [],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010273 "action_entry_const" : true
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010274 }
10275 },
10276 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010277 "name" : "ingress.process_int_source_sink.tb_set_sink",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010278 "id" : 4,
10279 "source_info" : {
10280 "filename" : "include/int_source.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010281 "line" : 113,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010282 "column" : 10,
10283 "source_fragment" : "tb_set_sink"
10284 },
10285 "key" : [
10286 {
10287 "match_type" : "exact",
10288 "name" : "standard_metadata.egress_spec",
10289 "target" : ["standard_metadata", "egress_spec"],
10290 "mask" : null
10291 }
10292 ],
10293 "match_type" : "exact",
10294 "type" : "simple",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010295 "max_size" : 511,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010296 "with_counters" : true,
10297 "support_timeout" : false,
10298 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010299 "action_ids" : [8, 2],
10300 "actions" : ["ingress.process_int_source_sink.int_set_sink", "nop"],
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010301 "base_default_next" : "node_8",
10302 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010303 "ingress.process_int_source_sink.int_set_sink" : "node_8",
10304 "nop" : "node_8"
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010305 },
10306 "default_entry" : {
10307 "action_id" : 2,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010308 "action_const" : true,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010309 "action_data" : [],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010310 "action_entry_const" : true
10311 }
10312 },
10313 {
10314 "name" : "ingress.process_int_source.tb_int_source",
10315 "id" : 5,
10316 "source_info" : {
10317 "filename" : "include/int_source.p4",
10318 "line" : 63,
10319 "column" : 10,
10320 "source_fragment" : "tb_int_source"
10321 },
10322 "key" : [
10323 {
10324 "match_type" : "ternary",
10325 "name" : "hdr.ipv4.src_addr",
10326 "target" : ["ipv4", "src_addr"],
10327 "mask" : null
10328 },
10329 {
10330 "match_type" : "ternary",
10331 "name" : "hdr.ipv4.dst_addr",
10332 "target" : ["ipv4", "dst_addr"],
10333 "mask" : null
10334 },
10335 {
10336 "match_type" : "ternary",
10337 "name" : "local_metadata.l4_src_port",
10338 "target" : ["scalars", "local_metadata_t.l4_src_port"],
10339 "mask" : null
10340 },
10341 {
10342 "match_type" : "ternary",
10343 "name" : "local_metadata.l4_dst_port",
10344 "target" : ["scalars", "local_metadata_t.l4_dst_port"],
10345 "mask" : null
10346 }
10347 ],
10348 "match_type" : "ternary",
10349 "type" : "simple",
10350 "max_size" : 1024,
10351 "with_counters" : true,
10352 "support_timeout" : false,
10353 "direct_meters" : null,
10354 "action_ids" : [9, 3],
10355 "actions" : ["ingress.process_int_source.int_source_dscp", "nop"],
10356 "base_default_next" : "node_10",
10357 "next_tables" : {
10358 "ingress.process_int_source.int_source_dscp" : "node_10",
10359 "nop" : "node_10"
10360 },
10361 "default_entry" : {
10362 "action_id" : 3,
10363 "action_const" : true,
10364 "action_data" : [],
10365 "action_entry_const" : true
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010366 }
10367 },
10368 {
10369 "name" : "tbl_act_1",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010370 "id" : 6,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010371 "key" : [],
10372 "match_type" : "exact",
10373 "type" : "simple",
10374 "max_size" : 1024,
10375 "with_counters" : false,
10376 "support_timeout" : false,
10377 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010378 "action_ids" : [12],
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010379 "actions" : ["act_1"],
10380 "base_default_next" : null,
10381 "next_tables" : {
10382 "act_1" : null
10383 },
10384 "default_entry" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010385 "action_id" : 12,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010386 "action_const" : true,
10387 "action_data" : [],
10388 "action_entry_const" : true
10389 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010390 }
10391 ],
10392 "action_profiles" : [],
10393 "conditionals" : [
10394 {
10395 "name" : "node_3",
10396 "id" : 0,
10397 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010398 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010399 "line" : 26,
10400 "column" : 12,
10401 "source_fragment" : "standard_metadata.ingress_port == CPU_PORT"
10402 },
10403 "expression" : {
10404 "type" : "expression",
10405 "value" : {
10406 "op" : "==",
10407 "left" : {
10408 "type" : "field",
10409 "value" : ["standard_metadata", "ingress_port"]
10410 },
10411 "right" : {
10412 "type" : "hexstr",
10413 "value" : "0x00ff"
10414 }
10415 }
10416 },
10417 "true_next" : "tbl_act_0",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010418 "false_next" : "ingress.table0_control.table0"
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010419 },
10420 {
10421 "name" : "node_8",
10422 "id" : 1,
10423 "source_info" : {
10424 "filename" : "int.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010425 "line" : 48,
10426 "column" : 12,
10427 "source_fragment" : "local_metadata.int_meta.source == true"
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010428 },
10429 "expression" : {
10430 "type" : "expression",
10431 "value" : {
10432 "op" : "==",
10433 "left" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010434 "type" : "expression",
10435 "value" : {
10436 "op" : "d2b",
10437 "left" : null,
10438 "right" : {
10439 "type" : "field",
10440 "value" : ["userMetadata.int_meta", "source"]
10441 }
10442 }
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010443 },
10444 "right" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010445 "type" : "bool",
10446 "value" : true
10447 }
10448 }
10449 },
10450 "true_next" : "ingress.process_int_source.tb_int_source",
10451 "false_next" : "node_10"
10452 },
10453 {
10454 "name" : "node_10",
10455 "id" : 2,
10456 "source_info" : {
10457 "filename" : "int.p4",
10458 "line" : 52,
10459 "column" : 12,
10460 "source_fragment" : "local_metadata.int_meta.sink == true && hdr.int_header.isValid()"
10461 },
10462 "expression" : {
10463 "type" : "expression",
10464 "value" : {
10465 "op" : "and",
10466 "left" : {
10467 "type" : "expression",
10468 "value" : {
10469 "op" : "==",
10470 "left" : {
10471 "type" : "expression",
10472 "value" : {
10473 "op" : "d2b",
10474 "left" : null,
10475 "right" : {
10476 "type" : "field",
10477 "value" : ["userMetadata.int_meta", "sink"]
10478 }
10479 }
10480 },
10481 "right" : {
10482 "type" : "bool",
10483 "value" : true
10484 }
10485 }
10486 },
10487 "right" : {
10488 "type" : "expression",
10489 "value" : {
10490 "op" : "d2b",
10491 "left" : null,
10492 "right" : {
10493 "type" : "field",
10494 "value" : ["int_header", "$valid$"]
10495 }
10496 }
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010497 }
10498 }
10499 },
10500 "false_next" : null,
10501 "true_next" : "tbl_act_1"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010502 }
10503 ]
10504 },
10505 {
10506 "name" : "egress",
10507 "id" : 1,
10508 "source_info" : {
10509 "filename" : "int.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010510 "line" : 62,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010511 "column" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010512 "source_fragment" : "egress"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010513 },
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010514 "init_table" : "node_14",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010515 "tables" : [
10516 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010517 "name" : "tbl_act_2",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010518 "id" : 7,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010519 "key" : [],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010520 "match_type" : "exact",
10521 "type" : "simple",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010522 "max_size" : 1024,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010523 "with_counters" : false,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010524 "support_timeout" : false,
10525 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010526 "action_ids" : [53],
10527 "actions" : ["act_2"],
10528 "base_default_next" : "egress.process_int_transit.tb_int_insert",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010529 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010530 "act_2" : "egress.process_int_transit.tb_int_insert"
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010531 },
10532 "default_entry" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010533 "action_id" : 53,
10534 "action_const" : true,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010535 "action_data" : [],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010536 "action_entry_const" : true
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010537 }
10538 },
10539 {
10540 "name" : "egress.process_int_transit.tb_int_insert",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010541 "id" : 8,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010542 "source_info" : {
10543 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010544 "line" : 311,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010545 "column" : 10,
10546 "source_fragment" : "tb_int_insert"
10547 },
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010548 "key" : [
10549 {
10550 "match_type" : "exact",
10551 "name" : "int_is_valid",
10552 "target" : ["int_header", "$valid$"],
10553 "mask" : null
10554 }
10555 ],
10556 "match_type" : "exact",
10557 "type" : "simple",
10558 "max_size" : 1,
10559 "with_counters" : false,
10560 "support_timeout" : false,
10561 "direct_meters" : null,
10562 "action_ids" : [17, 13],
10563 "actions" : ["egress.process_int_transit.init_metadata", "nop"],
10564 "base_default_next" : "node_17",
10565 "next_tables" : {
10566 "egress.process_int_transit.init_metadata" : "node_17",
10567 "nop" : "node_17"
10568 },
10569 "default_entry" : {
10570 "action_id" : 13,
10571 "action_const" : true,
10572 "action_data" : [],
10573 "action_entry_const" : true
10574 }
10575 },
10576 {
10577 "name" : "tbl_act_3",
10578 "id" : 9,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010579 "key" : [],
10580 "match_type" : "exact",
10581 "type" : "simple",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010582 "max_size" : 1024,
10583 "with_counters" : false,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010584 "support_timeout" : false,
10585 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010586 "action_ids" : [54],
10587 "actions" : ["act_3"],
10588 "base_default_next" : "node_19",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010589 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010590 "act_3" : "node_19"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010591 },
10592 "default_entry" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010593 "action_id" : 54,
10594 "action_const" : true,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010595 "action_data" : [],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010596 "action_entry_const" : true
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010597 }
10598 },
10599 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010600 "name" : "egress.process_int_transit.tb_int_inst_0003",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010601 "id" : 10,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010602 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010603 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010604 "line" : 327,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010605 "column" : 10,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010606 "source_fragment" : "tb_int_inst_0003"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010607 },
10608 "key" : [
10609 {
10610 "match_type" : "exact",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010611 "name" : "hdr.int_header.instruction_mask_0003",
10612 "target" : ["int_header", "instruction_mask_0003"],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010613 "mask" : null
10614 }
10615 ],
10616 "match_type" : "exact",
10617 "type" : "simple",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010618 "max_size" : 1024,
10619 "with_counters" : false,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010620 "support_timeout" : false,
10621 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010622 "action_ids" : [18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 15],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010623 "actions" : ["egress.process_int_transit.int_set_header_0003_i0", "egress.process_int_transit.int_set_header_0003_i1", "egress.process_int_transit.int_set_header_0003_i2", "egress.process_int_transit.int_set_header_0003_i3", "egress.process_int_transit.int_set_header_0003_i4", "egress.process_int_transit.int_set_header_0003_i5", "egress.process_int_transit.int_set_header_0003_i6", "egress.process_int_transit.int_set_header_0003_i7", "egress.process_int_transit.int_set_header_0003_i8", "egress.process_int_transit.int_set_header_0003_i9", "egress.process_int_transit.int_set_header_0003_i10", "egress.process_int_transit.int_set_header_0003_i11", "egress.process_int_transit.int_set_header_0003_i12", "egress.process_int_transit.int_set_header_0003_i13", "egress.process_int_transit.int_set_header_0003_i14", "egress.process_int_transit.int_set_header_0003_i15", "NoAction"],
10624 "base_default_next" : "egress.process_int_transit.tb_int_inst_0407",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010625 "next_tables" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010626 "egress.process_int_transit.int_set_header_0003_i0" : "egress.process_int_transit.tb_int_inst_0407",
10627 "egress.process_int_transit.int_set_header_0003_i1" : "egress.process_int_transit.tb_int_inst_0407",
10628 "egress.process_int_transit.int_set_header_0003_i2" : "egress.process_int_transit.tb_int_inst_0407",
10629 "egress.process_int_transit.int_set_header_0003_i3" : "egress.process_int_transit.tb_int_inst_0407",
10630 "egress.process_int_transit.int_set_header_0003_i4" : "egress.process_int_transit.tb_int_inst_0407",
10631 "egress.process_int_transit.int_set_header_0003_i5" : "egress.process_int_transit.tb_int_inst_0407",
10632 "egress.process_int_transit.int_set_header_0003_i6" : "egress.process_int_transit.tb_int_inst_0407",
10633 "egress.process_int_transit.int_set_header_0003_i7" : "egress.process_int_transit.tb_int_inst_0407",
10634 "egress.process_int_transit.int_set_header_0003_i8" : "egress.process_int_transit.tb_int_inst_0407",
10635 "egress.process_int_transit.int_set_header_0003_i9" : "egress.process_int_transit.tb_int_inst_0407",
10636 "egress.process_int_transit.int_set_header_0003_i10" : "egress.process_int_transit.tb_int_inst_0407",
10637 "egress.process_int_transit.int_set_header_0003_i11" : "egress.process_int_transit.tb_int_inst_0407",
10638 "egress.process_int_transit.int_set_header_0003_i12" : "egress.process_int_transit.tb_int_inst_0407",
10639 "egress.process_int_transit.int_set_header_0003_i13" : "egress.process_int_transit.tb_int_inst_0407",
10640 "egress.process_int_transit.int_set_header_0003_i14" : "egress.process_int_transit.tb_int_inst_0407",
10641 "egress.process_int_transit.int_set_header_0003_i15" : "egress.process_int_transit.tb_int_inst_0407",
10642 "NoAction" : "egress.process_int_transit.tb_int_inst_0407"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010643 },
10644 "default_entry" : {
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010645 "action_id" : 15,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010646 "action_const" : false,
10647 "action_data" : [],
10648 "action_entry_const" : false
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010649 },
10650 "entries" : [
10651 {
10652 "source_info" : {
10653 "filename" : "include/int_transit.p4",
10654 "line" : 350,
10655 "column" : 12,
10656 "source_fragment" : "(0x0) : int_set_header_0003_i0()"
10657 },
10658 "match_key" : [
10659 {
10660 "match_type" : "exact",
10661 "key" : "0x00"
10662 }
10663 ],
10664 "action_entry" : {
10665 "action_id" : 18,
10666 "action_data" : []
10667 },
10668 "priority" : 1
10669 },
10670 {
10671 "source_info" : {
10672 "filename" : "include/int_transit.p4",
10673 "line" : 351,
10674 "column" : 12,
10675 "source_fragment" : "(0x1) : int_set_header_0003_i1()"
10676 },
10677 "match_key" : [
10678 {
10679 "match_type" : "exact",
10680 "key" : "0x01"
10681 }
10682 ],
10683 "action_entry" : {
10684 "action_id" : 19,
10685 "action_data" : []
10686 },
10687 "priority" : 2
10688 },
10689 {
10690 "source_info" : {
10691 "filename" : "include/int_transit.p4",
10692 "line" : 352,
10693 "column" : 12,
10694 "source_fragment" : "(0x2) : int_set_header_0003_i2()"
10695 },
10696 "match_key" : [
10697 {
10698 "match_type" : "exact",
10699 "key" : "0x02"
10700 }
10701 ],
10702 "action_entry" : {
10703 "action_id" : 20,
10704 "action_data" : []
10705 },
10706 "priority" : 3
10707 },
10708 {
10709 "source_info" : {
10710 "filename" : "include/int_transit.p4",
10711 "line" : 353,
10712 "column" : 12,
10713 "source_fragment" : "(0x3) : int_set_header_0003_i3()"
10714 },
10715 "match_key" : [
10716 {
10717 "match_type" : "exact",
10718 "key" : "0x03"
10719 }
10720 ],
10721 "action_entry" : {
10722 "action_id" : 21,
10723 "action_data" : []
10724 },
10725 "priority" : 4
10726 },
10727 {
10728 "source_info" : {
10729 "filename" : "include/int_transit.p4",
10730 "line" : 354,
10731 "column" : 12,
10732 "source_fragment" : "(0x4) : int_set_header_0003_i4()"
10733 },
10734 "match_key" : [
10735 {
10736 "match_type" : "exact",
10737 "key" : "0x04"
10738 }
10739 ],
10740 "action_entry" : {
10741 "action_id" : 22,
10742 "action_data" : []
10743 },
10744 "priority" : 5
10745 },
10746 {
10747 "source_info" : {
10748 "filename" : "include/int_transit.p4",
10749 "line" : 355,
10750 "column" : 12,
10751 "source_fragment" : "(0x5) : int_set_header_0003_i5()"
10752 },
10753 "match_key" : [
10754 {
10755 "match_type" : "exact",
10756 "key" : "0x05"
10757 }
10758 ],
10759 "action_entry" : {
10760 "action_id" : 23,
10761 "action_data" : []
10762 },
10763 "priority" : 6
10764 },
10765 {
10766 "source_info" : {
10767 "filename" : "include/int_transit.p4",
10768 "line" : 356,
10769 "column" : 12,
10770 "source_fragment" : "(0x6) : int_set_header_0003_i6()"
10771 },
10772 "match_key" : [
10773 {
10774 "match_type" : "exact",
10775 "key" : "0x06"
10776 }
10777 ],
10778 "action_entry" : {
10779 "action_id" : 24,
10780 "action_data" : []
10781 },
10782 "priority" : 7
10783 },
10784 {
10785 "source_info" : {
10786 "filename" : "include/int_transit.p4",
10787 "line" : 357,
10788 "column" : 12,
10789 "source_fragment" : "(0x7) : int_set_header_0003_i7()"
10790 },
10791 "match_key" : [
10792 {
10793 "match_type" : "exact",
10794 "key" : "0x07"
10795 }
10796 ],
10797 "action_entry" : {
10798 "action_id" : 25,
10799 "action_data" : []
10800 },
10801 "priority" : 8
10802 },
10803 {
10804 "source_info" : {
10805 "filename" : "include/int_transit.p4",
10806 "line" : 358,
10807 "column" : 12,
10808 "source_fragment" : "(0x8) : int_set_header_0003_i8()"
10809 },
10810 "match_key" : [
10811 {
10812 "match_type" : "exact",
10813 "key" : "0x08"
10814 }
10815 ],
10816 "action_entry" : {
10817 "action_id" : 26,
10818 "action_data" : []
10819 },
10820 "priority" : 9
10821 },
10822 {
10823 "source_info" : {
10824 "filename" : "include/int_transit.p4",
10825 "line" : 359,
10826 "column" : 12,
10827 "source_fragment" : "(0x9) : int_set_header_0003_i9()"
10828 },
10829 "match_key" : [
10830 {
10831 "match_type" : "exact",
10832 "key" : "0x09"
10833 }
10834 ],
10835 "action_entry" : {
10836 "action_id" : 27,
10837 "action_data" : []
10838 },
10839 "priority" : 10
10840 },
10841 {
10842 "source_info" : {
10843 "filename" : "include/int_transit.p4",
10844 "line" : 360,
10845 "column" : 12,
10846 "source_fragment" : "(0xA) : int_set_header_0003_i10()"
10847 },
10848 "match_key" : [
10849 {
10850 "match_type" : "exact",
10851 "key" : "0x0a"
10852 }
10853 ],
10854 "action_entry" : {
10855 "action_id" : 28,
10856 "action_data" : []
10857 },
10858 "priority" : 11
10859 },
10860 {
10861 "source_info" : {
10862 "filename" : "include/int_transit.p4",
10863 "line" : 361,
10864 "column" : 12,
10865 "source_fragment" : "(0xB) : int_set_header_0003_i11()"
10866 },
10867 "match_key" : [
10868 {
10869 "match_type" : "exact",
10870 "key" : "0x0b"
10871 }
10872 ],
10873 "action_entry" : {
10874 "action_id" : 29,
10875 "action_data" : []
10876 },
10877 "priority" : 12
10878 },
10879 {
10880 "source_info" : {
10881 "filename" : "include/int_transit.p4",
10882 "line" : 362,
10883 "column" : 12,
10884 "source_fragment" : "(0xC) : int_set_header_0003_i12()"
10885 },
10886 "match_key" : [
10887 {
10888 "match_type" : "exact",
10889 "key" : "0x0c"
10890 }
10891 ],
10892 "action_entry" : {
10893 "action_id" : 30,
10894 "action_data" : []
10895 },
10896 "priority" : 13
10897 },
10898 {
10899 "source_info" : {
10900 "filename" : "include/int_transit.p4",
10901 "line" : 363,
10902 "column" : 12,
10903 "source_fragment" : "(0xD) : int_set_header_0003_i13()"
10904 },
10905 "match_key" : [
10906 {
10907 "match_type" : "exact",
10908 "key" : "0x0d"
10909 }
10910 ],
10911 "action_entry" : {
10912 "action_id" : 31,
10913 "action_data" : []
10914 },
10915 "priority" : 14
10916 },
10917 {
10918 "source_info" : {
10919 "filename" : "include/int_transit.p4",
10920 "line" : 364,
10921 "column" : 12,
10922 "source_fragment" : "(0xE) : int_set_header_0003_i14()"
10923 },
10924 "match_key" : [
10925 {
10926 "match_type" : "exact",
10927 "key" : "0x0e"
10928 }
10929 ],
10930 "action_entry" : {
10931 "action_id" : 32,
10932 "action_data" : []
10933 },
10934 "priority" : 15
10935 },
10936 {
10937 "source_info" : {
10938 "filename" : "include/int_transit.p4",
10939 "line" : 365,
10940 "column" : 12,
10941 "source_fragment" : "(0xF) : int_set_header_0003_i15()"
10942 },
10943 "match_key" : [
10944 {
10945 "match_type" : "exact",
10946 "key" : "0x0f"
10947 }
10948 ],
10949 "action_entry" : {
10950 "action_id" : 33,
10951 "action_data" : []
10952 },
10953 "priority" : 16
10954 }
10955 ]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010956 },
10957 {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010958 "name" : "egress.process_int_transit.tb_int_inst_0407",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090010959 "id" : 11,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010960 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010961 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010962 "line" : 371,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010963 "column" : 10,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010964 "source_fragment" : "tb_int_inst_0407"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010965 },
10966 "key" : [
10967 {
10968 "match_type" : "exact",
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010969 "name" : "hdr.int_header.instruction_mask_0407",
10970 "target" : ["int_header", "instruction_mask_0407"],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010971 "mask" : null
10972 }
10973 ],
10974 "match_type" : "exact",
10975 "type" : "simple",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010976 "max_size" : 1024,
10977 "with_counters" : false,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010978 "support_timeout" : false,
10979 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010980 "action_ids" : [34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 16],
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070010981 "actions" : ["egress.process_int_transit.int_set_header_0407_i0", "egress.process_int_transit.int_set_header_0407_i1", "egress.process_int_transit.int_set_header_0407_i2", "egress.process_int_transit.int_set_header_0407_i3", "egress.process_int_transit.int_set_header_0407_i4", "egress.process_int_transit.int_set_header_0407_i5", "egress.process_int_transit.int_set_header_0407_i6", "egress.process_int_transit.int_set_header_0407_i7", "egress.process_int_transit.int_set_header_0407_i8", "egress.process_int_transit.int_set_header_0407_i9", "egress.process_int_transit.int_set_header_0407_i10", "egress.process_int_transit.int_set_header_0407_i11", "egress.process_int_transit.int_set_header_0407_i12", "egress.process_int_transit.int_set_header_0407_i13", "egress.process_int_transit.int_set_header_0407_i14", "egress.process_int_transit.int_set_header_0407_i15", "NoAction"],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010982 "base_default_next" : "tbl_act_4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080010983 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090010984 "egress.process_int_transit.int_set_header_0407_i0" : "tbl_act_4",
10985 "egress.process_int_transit.int_set_header_0407_i1" : "tbl_act_4",
10986 "egress.process_int_transit.int_set_header_0407_i2" : "tbl_act_4",
10987 "egress.process_int_transit.int_set_header_0407_i3" : "tbl_act_4",
10988 "egress.process_int_transit.int_set_header_0407_i4" : "tbl_act_4",
10989 "egress.process_int_transit.int_set_header_0407_i5" : "tbl_act_4",
10990 "egress.process_int_transit.int_set_header_0407_i6" : "tbl_act_4",
10991 "egress.process_int_transit.int_set_header_0407_i7" : "tbl_act_4",
10992 "egress.process_int_transit.int_set_header_0407_i8" : "tbl_act_4",
10993 "egress.process_int_transit.int_set_header_0407_i9" : "tbl_act_4",
10994 "egress.process_int_transit.int_set_header_0407_i10" : "tbl_act_4",
10995 "egress.process_int_transit.int_set_header_0407_i11" : "tbl_act_4",
10996 "egress.process_int_transit.int_set_header_0407_i12" : "tbl_act_4",
10997 "egress.process_int_transit.int_set_header_0407_i13" : "tbl_act_4",
10998 "egress.process_int_transit.int_set_header_0407_i14" : "tbl_act_4",
10999 "egress.process_int_transit.int_set_header_0407_i15" : "tbl_act_4",
11000 "NoAction" : "tbl_act_4"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011001 },
11002 "default_entry" : {
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011003 "action_id" : 16,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011004 "action_const" : false,
11005 "action_data" : [],
11006 "action_entry_const" : false
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011007 },
11008 "entries" : [
11009 {
11010 "source_info" : {
11011 "filename" : "include/int_transit.p4",
11012 "line" : 394,
11013 "column" : 12,
11014 "source_fragment" : "(0x0) : int_set_header_0407_i0()"
11015 },
11016 "match_key" : [
11017 {
11018 "match_type" : "exact",
11019 "key" : "0x00"
11020 }
11021 ],
11022 "action_entry" : {
11023 "action_id" : 34,
11024 "action_data" : []
11025 },
11026 "priority" : 1
11027 },
11028 {
11029 "source_info" : {
11030 "filename" : "include/int_transit.p4",
11031 "line" : 395,
11032 "column" : 12,
11033 "source_fragment" : "(0x1) : int_set_header_0407_i1()"
11034 },
11035 "match_key" : [
11036 {
11037 "match_type" : "exact",
11038 "key" : "0x01"
11039 }
11040 ],
11041 "action_entry" : {
11042 "action_id" : 35,
11043 "action_data" : []
11044 },
11045 "priority" : 2
11046 },
11047 {
11048 "source_info" : {
11049 "filename" : "include/int_transit.p4",
11050 "line" : 396,
11051 "column" : 12,
11052 "source_fragment" : "(0x2) : int_set_header_0407_i2()"
11053 },
11054 "match_key" : [
11055 {
11056 "match_type" : "exact",
11057 "key" : "0x02"
11058 }
11059 ],
11060 "action_entry" : {
11061 "action_id" : 36,
11062 "action_data" : []
11063 },
11064 "priority" : 3
11065 },
11066 {
11067 "source_info" : {
11068 "filename" : "include/int_transit.p4",
11069 "line" : 397,
11070 "column" : 12,
11071 "source_fragment" : "(0x3) : int_set_header_0407_i3()"
11072 },
11073 "match_key" : [
11074 {
11075 "match_type" : "exact",
11076 "key" : "0x03"
11077 }
11078 ],
11079 "action_entry" : {
11080 "action_id" : 37,
11081 "action_data" : []
11082 },
11083 "priority" : 4
11084 },
11085 {
11086 "source_info" : {
11087 "filename" : "include/int_transit.p4",
11088 "line" : 398,
11089 "column" : 12,
11090 "source_fragment" : "(0x4) : int_set_header_0407_i4()"
11091 },
11092 "match_key" : [
11093 {
11094 "match_type" : "exact",
11095 "key" : "0x04"
11096 }
11097 ],
11098 "action_entry" : {
11099 "action_id" : 38,
11100 "action_data" : []
11101 },
11102 "priority" : 5
11103 },
11104 {
11105 "source_info" : {
11106 "filename" : "include/int_transit.p4",
11107 "line" : 399,
11108 "column" : 12,
11109 "source_fragment" : "(0x5) : int_set_header_0407_i5()"
11110 },
11111 "match_key" : [
11112 {
11113 "match_type" : "exact",
11114 "key" : "0x05"
11115 }
11116 ],
11117 "action_entry" : {
11118 "action_id" : 39,
11119 "action_data" : []
11120 },
11121 "priority" : 6
11122 },
11123 {
11124 "source_info" : {
11125 "filename" : "include/int_transit.p4",
11126 "line" : 400,
11127 "column" : 12,
11128 "source_fragment" : "(0x6) : int_set_header_0407_i6()"
11129 },
11130 "match_key" : [
11131 {
11132 "match_type" : "exact",
11133 "key" : "0x06"
11134 }
11135 ],
11136 "action_entry" : {
11137 "action_id" : 40,
11138 "action_data" : []
11139 },
11140 "priority" : 7
11141 },
11142 {
11143 "source_info" : {
11144 "filename" : "include/int_transit.p4",
11145 "line" : 401,
11146 "column" : 12,
11147 "source_fragment" : "(0x7) : int_set_header_0407_i7()"
11148 },
11149 "match_key" : [
11150 {
11151 "match_type" : "exact",
11152 "key" : "0x07"
11153 }
11154 ],
11155 "action_entry" : {
11156 "action_id" : 41,
11157 "action_data" : []
11158 },
11159 "priority" : 8
11160 },
11161 {
11162 "source_info" : {
11163 "filename" : "include/int_transit.p4",
11164 "line" : 402,
11165 "column" : 12,
11166 "source_fragment" : "(0x8) : int_set_header_0407_i8()"
11167 },
11168 "match_key" : [
11169 {
11170 "match_type" : "exact",
11171 "key" : "0x08"
11172 }
11173 ],
11174 "action_entry" : {
11175 "action_id" : 42,
11176 "action_data" : []
11177 },
11178 "priority" : 9
11179 },
11180 {
11181 "source_info" : {
11182 "filename" : "include/int_transit.p4",
11183 "line" : 403,
11184 "column" : 12,
11185 "source_fragment" : "(0x9) : int_set_header_0407_i9()"
11186 },
11187 "match_key" : [
11188 {
11189 "match_type" : "exact",
11190 "key" : "0x09"
11191 }
11192 ],
11193 "action_entry" : {
11194 "action_id" : 43,
11195 "action_data" : []
11196 },
11197 "priority" : 10
11198 },
11199 {
11200 "source_info" : {
11201 "filename" : "include/int_transit.p4",
11202 "line" : 404,
11203 "column" : 12,
11204 "source_fragment" : "(0xA) : int_set_header_0407_i10()"
11205 },
11206 "match_key" : [
11207 {
11208 "match_type" : "exact",
11209 "key" : "0x0a"
11210 }
11211 ],
11212 "action_entry" : {
11213 "action_id" : 44,
11214 "action_data" : []
11215 },
11216 "priority" : 11
11217 },
11218 {
11219 "source_info" : {
11220 "filename" : "include/int_transit.p4",
11221 "line" : 405,
11222 "column" : 12,
11223 "source_fragment" : "(0xB) : int_set_header_0407_i11()"
11224 },
11225 "match_key" : [
11226 {
11227 "match_type" : "exact",
11228 "key" : "0x0b"
11229 }
11230 ],
11231 "action_entry" : {
11232 "action_id" : 45,
11233 "action_data" : []
11234 },
11235 "priority" : 12
11236 },
11237 {
11238 "source_info" : {
11239 "filename" : "include/int_transit.p4",
11240 "line" : 406,
11241 "column" : 12,
11242 "source_fragment" : "(0xC) : int_set_header_0407_i12()"
11243 },
11244 "match_key" : [
11245 {
11246 "match_type" : "exact",
11247 "key" : "0x0c"
11248 }
11249 ],
11250 "action_entry" : {
11251 "action_id" : 46,
11252 "action_data" : []
11253 },
11254 "priority" : 13
11255 },
11256 {
11257 "source_info" : {
11258 "filename" : "include/int_transit.p4",
11259 "line" : 407,
11260 "column" : 12,
11261 "source_fragment" : "(0xD) : int_set_header_0407_i13()"
11262 },
11263 "match_key" : [
11264 {
11265 "match_type" : "exact",
11266 "key" : "0x0d"
11267 }
11268 ],
11269 "action_entry" : {
11270 "action_id" : 47,
11271 "action_data" : []
11272 },
11273 "priority" : 14
11274 },
11275 {
11276 "source_info" : {
11277 "filename" : "include/int_transit.p4",
11278 "line" : 408,
11279 "column" : 12,
11280 "source_fragment" : "(0xE) : int_set_header_0407_i14()"
11281 },
11282 "match_key" : [
11283 {
11284 "match_type" : "exact",
11285 "key" : "0x0e"
11286 }
11287 ],
11288 "action_entry" : {
11289 "action_id" : 48,
11290 "action_data" : []
11291 },
11292 "priority" : 15
11293 },
11294 {
11295 "source_info" : {
11296 "filename" : "include/int_transit.p4",
11297 "line" : 409,
11298 "column" : 12,
11299 "source_fragment" : "(0xF) : int_set_header_0407_i15()"
11300 },
11301 "match_key" : [
11302 {
11303 "match_type" : "exact",
11304 "key" : "0x0f"
11305 }
11306 ],
11307 "action_entry" : {
11308 "action_id" : 49,
11309 "action_data" : []
11310 },
11311 "priority" : 16
11312 }
11313 ]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011314 },
11315 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011316 "name" : "tbl_act_4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011317 "id" : 12,
11318 "key" : [],
11319 "match_type" : "exact",
11320 "type" : "simple",
11321 "max_size" : 1024,
11322 "with_counters" : false,
11323 "support_timeout" : false,
11324 "direct_meters" : null,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011325 "action_ids" : [56],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011326 "actions" : ["act_5"],
11327 "base_default_next" : "node_23",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011328 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011329 "act_5" : "node_23"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011330 },
11331 "default_entry" : {
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011332 "action_id" : 56,
11333 "action_const" : true,
11334 "action_data" : [],
11335 "action_entry_const" : true
11336 }
11337 },
11338 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011339 "name" : "tbl_act_5",
11340 "id" : 13,
11341 "key" : [],
11342 "match_type" : "exact",
11343 "type" : "simple",
11344 "max_size" : 1024,
11345 "with_counters" : false,
11346 "support_timeout" : false,
11347 "direct_meters" : null,
11348 "action_ids" : [55],
11349 "actions" : ["act_4"],
11350 "base_default_next" : "node_25",
11351 "next_tables" : {
11352 "act_4" : "node_25"
11353 },
11354 "default_entry" : {
11355 "action_id" : 55,
11356 "action_const" : true,
11357 "action_data" : [],
11358 "action_entry_const" : true
11359 }
11360 },
11361 {
11362 "name" : "tbl_act_6",
11363 "id" : 14,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011364 "key" : [],
11365 "match_type" : "exact",
11366 "type" : "simple",
11367 "max_size" : 1024,
11368 "with_counters" : false,
11369 "support_timeout" : false,
11370 "direct_meters" : null,
11371 "action_ids" : [57],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011372 "actions" : ["act_6"],
11373 "base_default_next" : "node_27",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011374 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011375 "act_6" : "node_27"
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011376 },
11377 "default_entry" : {
11378 "action_id" : 57,
11379 "action_const" : true,
11380 "action_data" : [],
11381 "action_entry_const" : true
11382 }
11383 },
11384 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011385 "name" : "tbl_act_7",
11386 "id" : 15,
11387 "key" : [],
11388 "match_type" : "exact",
11389 "type" : "simple",
11390 "max_size" : 1024,
11391 "with_counters" : false,
11392 "support_timeout" : false,
11393 "direct_meters" : null,
11394 "action_ids" : [58],
11395 "actions" : ["act_7"],
11396 "base_default_next" : "node_29",
11397 "next_tables" : {
11398 "act_7" : "node_29"
11399 },
11400 "default_entry" : {
11401 "action_id" : 58,
11402 "action_const" : true,
11403 "action_data" : [],
11404 "action_entry_const" : true
11405 }
11406 },
11407 {
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011408 "name" : "egress.process_int_report.tb_generate_report",
11409 "id" : 16,
11410 "source_info" : {
11411 "filename" : "include/int_report.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011412 "line" : 93,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011413 "column" : 10,
11414 "source_fragment" : "tb_generate_report"
11415 },
11416 "key" : [
11417 {
11418 "match_type" : "exact",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011419 "name" : "int_is_valid",
11420 "target" : ["int_header", "$valid$"],
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011421 "mask" : null
11422 }
11423 ],
11424 "match_type" : "exact",
11425 "type" : "simple",
11426 "max_size" : 1024,
11427 "with_counters" : false,
11428 "support_timeout" : false,
11429 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011430 "action_ids" : [50, 14],
11431 "actions" : ["egress.process_int_report.do_report_encapsulation", "nop"],
11432 "base_default_next" : "node_31",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011433 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011434 "egress.process_int_report.do_report_encapsulation" : "node_31",
11435 "nop" : "node_31"
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011436 },
11437 "default_entry" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011438 "action_id" : 14,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011439 "action_const" : false,
11440 "action_data" : [],
11441 "action_entry_const" : false
11442 }
11443 },
11444 {
11445 "name" : "tbl_process_int_sink_restore_header",
11446 "id" : 17,
11447 "key" : [],
11448 "match_type" : "exact",
11449 "type" : "simple",
11450 "max_size" : 1024,
11451 "with_counters" : false,
11452 "support_timeout" : false,
11453 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011454 "action_ids" : [51],
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011455 "actions" : ["egress.process_int_sink.restore_header"],
11456 "base_default_next" : "tbl_process_int_sink_int_sink",
11457 "next_tables" : {
11458 "egress.process_int_sink.restore_header" : "tbl_process_int_sink_int_sink"
11459 },
11460 "default_entry" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011461 "action_id" : 51,
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011462 "action_const" : true,
11463 "action_data" : [],
11464 "action_entry_const" : true
11465 }
11466 },
11467 {
11468 "name" : "tbl_process_int_sink_int_sink",
11469 "id" : 18,
11470 "key" : [],
11471 "match_type" : "exact",
11472 "type" : "simple",
11473 "max_size" : 1024,
11474 "with_counters" : false,
11475 "support_timeout" : false,
11476 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011477 "action_ids" : [52],
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011478 "actions" : ["egress.process_int_sink.int_sink"],
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011479 "base_default_next" : "tbl_act_8",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011480 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011481 "egress.process_int_sink.int_sink" : "tbl_act_8"
11482 },
11483 "default_entry" : {
11484 "action_id" : 52,
11485 "action_const" : true,
11486 "action_data" : [],
11487 "action_entry_const" : true
11488 }
11489 },
11490 {
11491 "name" : "tbl_act_8",
11492 "id" : 19,
11493 "key" : [],
11494 "match_type" : "exact",
11495 "type" : "simple",
11496 "max_size" : 1024,
11497 "with_counters" : false,
11498 "support_timeout" : false,
11499 "direct_meters" : null,
11500 "action_ids" : [60],
11501 "actions" : ["act_9"],
11502 "base_default_next" : "node_35",
11503 "next_tables" : {
11504 "act_9" : "node_35"
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011505 },
11506 "default_entry" : {
11507 "action_id" : 60,
11508 "action_const" : true,
11509 "action_data" : [],
11510 "action_entry_const" : true
11511 }
11512 },
11513 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011514 "name" : "tbl_act_9",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011515 "id" : 20,
11516 "key" : [],
11517 "match_type" : "exact",
11518 "type" : "simple",
11519 "max_size" : 1024,
11520 "with_counters" : false,
11521 "support_timeout" : false,
11522 "direct_meters" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011523 "action_ids" : [59],
11524 "actions" : ["act_8"],
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011525 "base_default_next" : null,
11526 "next_tables" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011527 "act_8" : null
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011528 },
11529 "default_entry" : {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011530 "action_id" : 59,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011531 "action_const" : true,
11532 "action_data" : [],
11533 "action_entry_const" : true
11534 }
11535 }
11536 ],
11537 "action_profiles" : [],
11538 "conditionals" : [
11539 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011540 "name" : "node_14",
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011541 "id" : 3,
Jonghwan Hyun8be03392017-12-04 15:48:44 -080011542 "source_info" : {
11543 "filename" : "int.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011544 "line" : 68,
11545 "column" : 11,
Jonghwan Hyun8be03392017-12-04 15:48:44 -080011546 "source_fragment" : "hdr.int_header.isValid()"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011547 },
11548 "expression" : {
11549 "type" : "expression",
11550 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011551 "op" : "d2b",
11552 "left" : null,
11553 "right" : {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011554 "type" : "field",
Jonghwan Hyun8be03392017-12-04 15:48:44 -080011555 "value" : ["int_header", "$valid$"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011556 }
11557 }
11558 },
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011559 "true_next" : "tbl_act_2",
11560 "false_next" : "tbl_act_8"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011561 },
11562 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011563 "name" : "node_17",
11564 "id" : 4,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011565 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011566 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011567 "line" : 415,
11568 "column" : 12,
11569 "source_fragment" : "local_metadata.int_meta.transit == false"
11570 },
11571 "expression" : {
11572 "type" : "expression",
11573 "value" : {
11574 "op" : "==",
11575 "left" : {
11576 "type" : "expression",
11577 "value" : {
11578 "op" : "d2b",
11579 "left" : null,
11580 "right" : {
11581 "type" : "field",
11582 "value" : ["userMetadata.int_meta", "transit"]
11583 }
11584 }
11585 },
11586 "right" : {
11587 "type" : "bool",
11588 "value" : false
11589 }
11590 }
11591 },
11592 "true_next" : "tbl_act_3",
11593 "false_next" : "node_19"
11594 },
11595 {
11596 "name" : "node_19",
11597 "id" : 5,
11598 "expression" : {
11599 "type" : "expression",
11600 "value" : {
11601 "op" : "not",
11602 "left" : null,
11603 "right" : {
11604 "type" : "expression",
11605 "value" : {
11606 "op" : "d2b",
11607 "left" : null,
11608 "right" : {
11609 "type" : "field",
11610 "value" : ["scalars", "process_int_transit_hasReturned_0"]
11611 }
11612 }
11613 }
11614 }
11615 },
11616 "true_next" : "egress.process_int_transit.tb_int_inst_0003",
11617 "false_next" : "node_29"
11618 },
11619 {
11620 "name" : "node_23",
11621 "id" : 6,
11622 "source_info" : {
11623 "filename" : "include/int_transit.p4",
11624 "line" : 425,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011625 "column" : 12,
11626 "source_fragment" : "hdr.ipv4.isValid()"
11627 },
11628 "expression" : {
11629 "type" : "expression",
11630 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011631 "op" : "d2b",
11632 "left" : null,
11633 "right" : {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011634 "type" : "field",
11635 "value" : ["ipv4", "$valid$"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011636 }
11637 }
11638 },
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011639 "true_next" : "tbl_act_5",
11640 "false_next" : "node_25"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011641 },
11642 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011643 "name" : "node_25",
11644 "id" : 7,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011645 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011646 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011647 "line" : 428,
Jonghwan Hyun8be03392017-12-04 15:48:44 -080011648 "column" : 12,
11649 "source_fragment" : "hdr.udp.isValid()"
11650 },
11651 "expression" : {
11652 "type" : "expression",
11653 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011654 "op" : "d2b",
11655 "left" : null,
11656 "right" : {
Jonghwan Hyun8be03392017-12-04 15:48:44 -080011657 "type" : "field",
11658 "value" : ["udp", "$valid$"]
Jonghwan Hyun8be03392017-12-04 15:48:44 -080011659 }
11660 }
11661 },
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011662 "true_next" : "tbl_act_6",
11663 "false_next" : "node_27"
Jonghwan Hyun8be03392017-12-04 15:48:44 -080011664 },
11665 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011666 "name" : "node_27",
11667 "id" : 8,
Jonghwan Hyun8be03392017-12-04 15:48:44 -080011668 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011669 "filename" : "include/int_transit.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011670 "line" : 431,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011671 "column" : 12,
11672 "source_fragment" : "hdr.intl4_shim.isValid()"
11673 },
11674 "expression" : {
11675 "type" : "expression",
11676 "value" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011677 "op" : "d2b",
11678 "left" : null,
11679 "right" : {
11680 "type" : "field",
11681 "value" : ["intl4_shim", "$valid$"]
11682 }
11683 }
11684 },
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011685 "true_next" : "tbl_act_7",
11686 "false_next" : "node_29"
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011687 },
11688 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011689 "name" : "node_29",
11690 "id" : 9,
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011691 "source_info" : {
11692 "filename" : "int.p4",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011693 "line" : 72,
11694 "column" : 17,
11695 "source_fragment" : "standard_metadata.instance_type == BMV2_V1MODEL_INSTANCE_TYPE_INGRESS_CLONE"
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011696 },
11697 "expression" : {
11698 "type" : "expression",
11699 "value" : {
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011700 "op" : "==",
11701 "left" : {
11702 "type" : "field",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011703 "value" : ["standard_metadata", "instance_type"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011704 },
11705 "right" : {
11706 "type" : "hexstr",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011707 "value" : "0x00000001"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011708 }
11709 }
11710 },
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011711 "true_next" : "egress.process_int_report.tb_generate_report",
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011712 "false_next" : "node_31"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011713 },
11714 {
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011715 "name" : "node_31",
11716 "id" : 10,
11717 "source_info" : {
11718 "filename" : "int.p4",
11719 "line" : 77,
11720 "column" : 16,
11721 "source_fragment" : "local_metadata.int_meta.sink == true && !(standard_metadata.instance_type == BMV2_V1MODEL_INSTANCE_TYPE_INGRESS_CLONE)"
11722 },
11723 "expression" : {
11724 "type" : "expression",
11725 "value" : {
11726 "op" : "and",
11727 "left" : {
11728 "type" : "expression",
11729 "value" : {
11730 "op" : "==",
11731 "left" : {
11732 "type" : "expression",
11733 "value" : {
11734 "op" : "d2b",
11735 "left" : null,
11736 "right" : {
11737 "type" : "field",
11738 "value" : ["userMetadata.int_meta", "sink"]
11739 }
11740 }
11741 },
11742 "right" : {
11743 "type" : "bool",
11744 "value" : true
11745 }
11746 }
11747 },
11748 "right" : {
11749 "type" : "expression",
11750 "value" : {
11751 "op" : "!=",
11752 "left" : {
11753 "type" : "field",
11754 "value" : ["standard_metadata", "instance_type"]
11755 },
11756 "right" : {
11757 "type" : "hexstr",
11758 "value" : "0x00000001"
11759 }
11760 }
11761 }
11762 }
11763 },
11764 "true_next" : "tbl_process_int_sink_restore_header",
11765 "false_next" : "tbl_act_8"
11766 },
11767 {
11768 "name" : "node_35",
11769 "id" : 11,
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011770 "source_info" : {
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011771 "filename" : "include/packet_io.p4",
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011772 "line" : 37,
11773 "column" : 12,
11774 "source_fragment" : "standard_metadata.egress_port == CPU_PORT"
11775 },
11776 "expression" : {
11777 "type" : "expression",
11778 "value" : {
11779 "op" : "==",
11780 "left" : {
11781 "type" : "field",
11782 "value" : ["standard_metadata", "egress_port"]
11783 },
11784 "right" : {
11785 "type" : "hexstr",
11786 "value" : "0x00ff"
11787 }
11788 }
11789 },
11790 "false_next" : null,
Jonghwan Hyunc235d462019-01-30 23:31:48 +090011791 "true_next" : "tbl_act_9"
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011792 }
11793 ]
11794 }
11795 ],
Jonghwan Hyun6777d532018-11-18 20:50:16 +090011796 "checksums" : [
11797 {
11798 "name" : "cksum",
11799 "id" : 0,
11800 "source_info" : {
11801 "filename" : "include/checksums.p4",
11802 "line" : 32,
11803 "column" : 8,
11804 "source_fragment" : "update_checksum(hdr.ipv4.isValid(), ..."
11805 },
11806 "target" : ["ipv4", "hdr_checksum"],
11807 "type" : "generic",
11808 "calculation" : "calc",
11809 "if_cond" : {
11810 "type" : "expression",
11811 "value" : {
11812 "op" : "d2b",
11813 "left" : null,
11814 "right" : {
11815 "type" : "field",
11816 "value" : ["ipv4", "$valid$"]
11817 }
11818 }
11819 }
11820 },
11821 {
11822 "name" : "cksum_0",
11823 "id" : 1,
11824 "source_info" : {
11825 "filename" : "include/checksums.p4",
11826 "line" : 54,
11827 "column" : 8,
11828 "source_fragment" : "update_checksum(hdr.report_ipv4.isValid(), ..."
11829 },
11830 "target" : ["report_ipv4", "hdr_checksum"],
11831 "type" : "generic",
11832 "calculation" : "calc_0",
11833 "if_cond" : {
11834 "type" : "expression",
11835 "value" : {
11836 "op" : "d2b",
11837 "left" : null,
11838 "right" : {
11839 "type" : "field",
11840 "value" : ["report_ipv4", "$valid$"]
11841 }
11842 }
11843 }
11844 }
11845 ],
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011846 "force_arith" : [],
11847 "extern_instances" : [],
11848 "field_aliases" : [
11849 [
11850 "queueing_metadata.enq_timestamp",
11851 ["standard_metadata", "enq_timestamp"]
11852 ],
11853 [
11854 "queueing_metadata.enq_qdepth",
11855 ["standard_metadata", "enq_qdepth"]
11856 ],
11857 [
11858 "queueing_metadata.deq_timedelta",
11859 ["standard_metadata", "deq_timedelta"]
11860 ],
11861 [
11862 "queueing_metadata.deq_qdepth",
11863 ["standard_metadata", "deq_qdepth"]
11864 ],
11865 [
11866 "intrinsic_metadata.ingress_global_timestamp",
11867 ["standard_metadata", "ingress_global_timestamp"]
11868 ],
11869 [
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011870 "intrinsic_metadata.egress_global_timestamp",
11871 ["standard_metadata", "egress_global_timestamp"]
11872 ],
11873 [
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011874 "intrinsic_metadata.lf_field_list",
11875 ["standard_metadata", "lf_field_list"]
11876 ],
11877 [
11878 "intrinsic_metadata.mcast_grp",
11879 ["standard_metadata", "mcast_grp"]
11880 ],
11881 [
11882 "intrinsic_metadata.resubmit_flag",
11883 ["standard_metadata", "resubmit_flag"]
11884 ],
11885 [
11886 "intrinsic_metadata.egress_rid",
11887 ["standard_metadata", "egress_rid"]
Jonghwan Hyunf5d57822018-05-09 10:19:50 -070011888 ],
11889 [
11890 "intrinsic_metadata.recirculate_flag",
11891 ["standard_metadata", "recirculate_flag"]
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011892 ]
Carmelo Cascone6af4e172018-06-15 16:01:30 +020011893 ],
11894 "program" : "int.p4",
11895 "__meta__" : {
11896 "version" : [2, 18],
11897 "compiler" : "https://github.com/p4lang/p4c"
11898 }
Jonghwan Hyun4a9a6712017-11-13 14:43:55 -080011899}