blob: eb6cc14478739639f41a3e160ab7e9980615863c [file] [log] [blame]
+---------------------------------------------------------------------+
| Log file: parde.log |
| Compiler version: 5.1.0 (fca32d1) |
| Created on: Thu Sep 7 13:56:08 2017 |
+---------------------------------------------------------------------+
># Begin digest init (pre-PHV)
>## Gress 0
>## Gress 1
>## Rewrite CLONE_I2E_DIGEST_RCVR ids
>## Rewrite CLONE_E2E_DIGEST_RCVR ids
># End digest init (pre-PHV)
># Begin digest PHV reservations
># End digest PHV reservations
># Begin digest init (post-PHV)
># End digest init (post-PHV)
Bridge-MF:ig_intr_md_for_tm.copy_to_cpu
Bridge-MF:ig_intr_md.ingress_port
Found parser entry point: start
># Begin unroll of HLIR parse graph
>## Create shadow parse graph and find loops
>## Entrypoint 'p4_parse_state.start'
Creating shadow state: 'p4_parse_state.start' -> 'shadow_state (start, 140040985456016)'
Creating shadow state: 'p4_parse_state.parse_pkt_in' -> 'shadow_state (parse_pkt_in, 140040985455824)'
Creating shadow state: 'p4_parse_state.parse_ethernet' -> 'shadow_state (parse_ethernet, 140040985455056)'
Creating shadow state: 'p4_parse_state.parse_ipv4' -> 'shadow_state (parse_ipv4, 140040985455184)'
Creating shadow state: 'p4_parse_state.parse_tcp' -> 'shadow_state (parse_tcp, 140040985454864)'
Creating shadow state: 'p4_parse_state.parse_udp' -> 'shadow_state (parse_udp, 140040985454928)'
Creating shadow state: 'p4_parse_state.default_parser' -> 'shadow_state (default_parser, 140040985454800)'
Creating shadow state: 'p4_parse_state.parse_pkt_out' -> 'shadow_state (parse_pkt_out, 140040985454736)'
># End unroll of HLIR parse graph
># Begin deparser init
>## Create records for gress 0
Skipping metadata header 'p4_header_instance.standard_metadata'
Skipping intrinsic header 'p4_header_instance.ig_intr_md'
Skipping intrinsic header 'p4_header_instance.ig_intr_md_for_tm'
Skipping intrinsic header 'p4_header_instance.ig_intr_md_for_mb'
Skipping intrinsic header 'p4_header_instance.eg_intr_md'
Skipping intrinsic header 'p4_header_instance.eg_intr_md_for_mb'
Skipping intrinsic header 'p4_header_instance.eg_intr_md_for_oport'
Created record for 'p4_header_instance.packet_in_hdr'
Created record for 'p4_header_instance.packet_out_hdr'
Created record for 'p4_header_instance.ethernet'
Created record for 'p4_header_instance.ipv4'
Created record for 'p4_header_instance.tcp'
Created record for 'p4_header_instance.udp'
>## Build record ordering for gress 0
>## Build field ordering for record 'packet_out_hdr'
>## Build field ordering for record 'packet_in_hdr'
>## Build field ordering for record 'ethernet'
>## Build field ordering for record 'ipv4'
>## Build field ordering for record 'udp'
>## Build field ordering for record 'tcp'
>## Create records for gress 1
Skipping metadata header 'p4_header_instance.standard_metadata'
Skipping intrinsic header 'p4_header_instance.ig_intr_md'
Skipping intrinsic header 'p4_header_instance.ig_intr_md_for_tm'
Skipping intrinsic header 'p4_header_instance.ig_intr_md_for_mb'
Skipping intrinsic header 'p4_header_instance.eg_intr_md'
Skipping intrinsic header 'p4_header_instance.eg_intr_md_for_mb'
Skipping intrinsic header 'p4_header_instance.eg_intr_md_for_oport'
Created record for 'p4_header_instance.packet_in_hdr'
Created record for 'p4_header_instance.packet_out_hdr'
Created record for 'p4_header_instance.ethernet'
Created record for 'p4_header_instance.ipv4'
Created record for 'p4_header_instance.tcp'
Created record for 'p4_header_instance.udp'
>## Build record ordering for gress 1
>## Build field ordering for record 'packet_out_hdr'
>## Build field ordering for record 'packet_in_hdr'
>## Build field ordering for record 'ethernet'
>## Build field ordering for record 'ipv4'
>## Build field ordering for record 'udp'
>## Build field ordering for record 'tcp'
Deparse bmeta_ig_intr_md header
>## Create deparser bridge_ig_intr_md record
Add container 128 for ig_intr_md.resubmit_flag to bmeta_ig_intr_md
Add container 128 for ig_intr_md._pad1 to bmeta_ig_intr_md
Add container 128 for ig_intr_md._pad2 to bmeta_ig_intr_md
Add container 128 for ig_intr_md._pad3 to bmeta_ig_intr_md
Add container 128 for ig_intr_md.ingress_port to bmeta_ig_intr_md
>## Create deparser bridge record
Bridge contains user-provided data
># End deparser init
Constructing parse graph for entry point start on ingress
Constructing parse graph for entry point start on egress
Adding special Egress state to access ingress intrisic metadata
Egress intrinsic metadata unconditional extraction plan: ExtractionPlan { shift 24, extractions ['eg_intr_md.egress_port', 'eg_intr_md.egress_cos'] }
Egress intrinsic metadata conditional extraction plan: ExtractionPlan { shift 0, extractions [] }
Stretch extraction of ingress_port to state <Ingress intrinsic metadata> offset 7
Stretch extraction of ig_intr_md.ingress_port to state <_parse_bridged_ingress_intrinsic_metadata> offset 7
># Begin scraping deparser POV allocation from raw PHV allocation
PHV layout: [0, 0, 0, 0, 67, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None]
>## Scraping individual POV records
POV 32 -> packet_in_hdr
POV 33 -> packet_out_hdr
POV 34 -> ethernet
POV 35 -> ipv4
POV 38 -> pov_bmeta
POV 36 -> tcp
POV 37 -> udp
>## Setting up array bits
># End scraping deparser POV allocation from raw PHV allocation
># Begin parser POV rewrite
>## Filling in POV init state
>## Rewriting parser POV extractions
POV for metadata_bridge -> PHV 67 |= 0x40
POV for packet_in_hdr -> PHV 67 |= 0x1
POV for ethernet -> PHV 67 |= 0x4
POV for ipv4 -> PHV 67 |= 0x8
POV for tcp -> PHV 67 |= 0x10
POV for udp -> PHV 67 |= 0x20
POV for packet_out_hdr -> PHV 67 |= 0x2
POV for ig_intr_md -> dropped (no deparser record)
POV for _bridged_intr_md_ -> PHV 0 |= 0x10000
>## Sampling not detected, deparsing at least 1 POV byte
>## Adding POV containers to metadata bridge: [0]
>## Set POV skip state's shift amount to 32
># Begin scraping deparser POV allocation from raw PHV allocation
PHV layout: [82, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None]
>## Scraping individual POV records
POV 0 -> packet_in_hdr
POV 1 -> packet_out_hdr
POV 2 -> ethernet
POV 3 -> ipv4
POV 4 -> tcp
POV 5 -> udp
>## Setting up array bits
># End scraping deparser POV allocation from raw PHV allocation
># Begin parser POV rewrite
>## Filling in POV init state
>## Rewriting parser POV extractions
POV for packet_in_hdr -> PHV 82 |= 0x1
POV for ethernet -> PHV 82 |= 0x4
POV for ipv4 -> PHV 82 |= 0x8
POV for tcp -> PHV 82 |= 0x10
POV for udp -> PHV 82 |= 0x20
POV for packet_out_hdr -> PHV 82 |= 0x2
Linear Chain parse_pkt_in -> parse_ethernet
Try merge parse_pkt_in <- parse_ethernet
Multiple paths to state S2 : parse_ethernet <- 3
Linear Chain <POV initialization> -> start
Try merge <POV initialization> <- <Ingress intrinsic metadata>
merge output at offset 0
Merge s2 constant extraction v=1 phv=0
merge_offset = 16, complete_merge = True
Before Merge ------
S1: State : <POV initialization>
shift: 0B
match_reservations: []
outputs[addr, width]: ()
match_extractions: []
next state <Ingress intrinsic metadata> val 0 mask [False]
parent state <Shim start state>
S2: State : <Ingress intrinsic metadata>
shift: 8B
match_reservations: []
outputs[addr, width]: ([128, 16], [0, 32])
branch on = None, offset = 0b, dst = <Ingress intrinsic metadata>
branch promise on = ingress_port, offset = 7b, dst = default_parser
match_extractions: []
next state <Phase 0> val 0 mask [True]
parent state <POV initialization>
Full merge done <POV initialization> <- <Ingress intrinsic metadata>
Try merge <POV initialization>_<Ingress intrinsic metadata> <- <Phase 0>
merge_offset = 0, complete_merge = True
Before Merge ------
S1: State : <POV initialization>_<Ingress intrinsic metadata>
shift: 8B
match_reservations: []
outputs[addr, width]: ([128, 16], [0, 32])
branch on = None, offset = 0b, dst = <POV initialization>_<Ingress intrinsic metadata>
branch promise on = ingress_port, offset = 7b, dst = default_parser
match_extractions: []
next state <Phase 0> val 0 mask [True]
parent state <Shim start state>
S2: State : <Phase 0>
shift: 8B
match_reservations: []
outputs[addr, width]: ()
branch on = None, offset = 0b, dst = <Phase 0>
match_extractions: []
next state start val 0 mask [False]
parent state <POV initialization>_<Ingress intrinsic metadata>
Full merge done <POV initialization>_<Ingress intrinsic metadata> <- <Phase 0>
Try merge <POV initialization>_<Ingress intrinsic metadata>_<Phase 0> <- start
Multiple paths to state S2 : start <- 2
Remove state <Ingress intrinsic metadata>
Remove state <Phase 0>
assign ids to 10 states, dir = 0
------
State : <Shim start state>
shift: 0B
match_reservations: []
outputs[addr, width]: ()
match_extractions: []
next state <POV initialization>_<Ingress intrinsic metadata>_<Phase 0> val 0 mask [False]
------
State : parse_pkt_in
shift: 2B
match_reservations: []
outputs[addr, width]: ([67, 8], [129, 16])
match_extractions: []
next state parse_ethernet val 0 mask [False]
parent state start
------
State : parse_ethernet
shift: 14B
match_reservations: []
outputs[addr, width]: ([67, 8], [65, 8], [1, 32], [131, 16], [66, 8], [2, 32], [132, 16])
branch on = etherType, offset = 96b, dst = parse_ethernet
match_extractions: [match_window(hw_id=0, width=16)]
match key = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
next state parse_ipv4 val 2048 mask [True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True]
parent state parse_pkt_in
parent state parse_pkt_out
parent state default_parser
------
State : parse_ipv4
shift: 20B
match_reservations: []
outputs[addr, width]: ([67, 8], [288, 8], [289, 8], [320, 16], [321, 16], [322, 16], [256, 32], [257, 32], [258, 32])
branch on = fragOffset, offset = 51b, dst = parse_ipv4
branch on = protocol, offset = 72b, dst = parse_ipv4
match_extractions: [match_window(hw_id=2, width=8), match_window(hw_id=0, width=16)]
match key = [0, 1, 2, 3, 4, 5, 6, 7]
match key = [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, None, None, None]
next state parse_tcp val 6 mask [True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True]
next state parse_udp val 17 mask [True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True]
parent state parse_ethernet
------
State : parse_tcp
shift: 20B
match_reservations: []
outputs[addr, width]: ([67, 8], [290, 8], [291, 8], [323, 16], [324, 16], [325, 16], [259, 32], [260, 32], [261, 32])
match_extractions: []
parent state parse_ipv4
------
State : parse_udp
shift: 8B
match_reservations: []
outputs[addr, width]: ([67, 8], [290, 8], [291, 8], [323, 16], [259, 32])
match_extractions: []
parent state parse_ipv4
------
State : default_parser
shift: 0B
match_reservations: [match_window(hw_id=0, width=16)]
outputs[addr, width]: ()
branch on = ingress_port, offset = 7b, dst = default_parser
match_extractions: [match_window(hw_id=0, width=16)]
match key = [0, 1, 2, 3, 4, 5, 6, 7, 8, None, None, None, None, None, None, None]
next state parse_pkt_out val 320 mask [True, True, True, True, True, True, True, True, True]
next state parse_ethernet val 0 mask [False]
parent state start
------
State : parse_pkt_out
shift: 2B
match_reservations: []
outputs[addr, width]: ([67, 8], [129, 16])
match_extractions: []
next state parse_ethernet val 0 mask [False]
parent state default_parser
------
State : <POV initialization>_<Ingress intrinsic metadata>_<Phase 0>
shift: 16B
match_reservations: []
outputs[addr, width]: ([128, 16], [0, 32])
branch on = None, offset = 0b, dst = <POV initialization>_<Ingress intrinsic metadata>_<Phase 0>
branch on = None, offset = 64b, dst = <POV initialization>_<Ingress intrinsic metadata>_<Phase 0>
branch promise on = ingress_port, offset = 7b, dst = default_parser
match_extractions: [match_window(hw_id=2, width=8), match_window(hw_id=0, width=16)]
match key = [0, 1, 2, 3, 4, 5, 6, 7]
match key = [None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, 8]
next state start val 0 mask [False]
parent state <Shim start state>
------
State : start
shift: 0B
match_reservations: [match_window(hw_id=0, width=16)]
outputs[addr, width]: ([67, 8],)
branch on = None, offset = 96b, dst = start
match_extractions: [match_window(hw_id=2, width=8)]
match key = [0, 1, 2, 3, 4, 5, 6, 7]
next state parse_pkt_in val 0 mask [True, True, True, True, True, True, True, True]
next state default_parser val 0 mask [False]
parent state <POV initialization>_<Ingress intrinsic metadata>_<Phase 0>
Linear Chain parse_pkt_in -> parse_ethernet
Try merge parse_pkt_in <- parse_ethernet
Multiple paths to state S2 : parse_ethernet <- 3
Linear Chain <POV initialization> -> start
Try merge <POV initialization> <- <Egress intrinsic metadata>
merge output at offset 0
merge output at offset 16
merge_offset = 24, complete_merge = True
Before Merge ------
S1: State : <POV initialization>
shift: 0B
match_reservations: []
outputs[addr, width]: ()
match_extractions: []
next state <Egress intrinsic metadata> val 0 mask [False]
parent state <Shim start state>
S2: State : <Egress intrinsic metadata>
shift: 3B
match_reservations: []
outputs[addr, width]: ([146, 16], [81, 8])
branch on = None, offset = 24b, dst = <Egress intrinsic metadata>
match_extractions: []
next state <POV skip> val 0 mask [False]
parent state <POV initialization>
Full merge done <POV initialization> <- <Egress intrinsic metadata>
Try merge <POV initialization>_<Egress intrinsic metadata> <- <POV skip>
merge_offset = 0, complete_merge = True
Before Merge ------
S1: State : <POV initialization>_<Egress intrinsic metadata>
shift: 3B
match_reservations: []
outputs[addr, width]: ([146, 16], [81, 8])
branch on = None, offset = 24b, dst = <POV initialization>_<Egress intrinsic metadata>
match_extractions: []
next state <POV skip> val 0 mask [False]
parent state <Shim start state>
S2: State : <POV skip>
shift: 4B
match_reservations: []
outputs[addr, width]: ()
match_extractions: []
next state <Metadata bridge> val 0 mask [False]
parent state <POV initialization>_<Egress intrinsic metadata>
Full merge done <POV initialization>_<Egress intrinsic metadata> <- <POV skip>
Try merge <POV initialization>_<Egress intrinsic metadata>_<POV skip> <- <Metadata bridge>
merge output at offset 0
merge output at offset 8
merge_offset = 24, complete_merge = True
Before Merge ------
S1: State : <POV initialization>_<Egress intrinsic metadata>_<POV skip>
shift: 7B
match_reservations: []
outputs[addr, width]: ([146, 16], [81, 8])
branch on = None, offset = 24b, dst = <POV initialization>_<Egress intrinsic metadata>_<POV skip>
match_extractions: []
next state <Metadata bridge> val 0 mask [False]
parent state <Shim start state>
S2: State : <Metadata bridge>
shift: 3B
match_reservations: []
outputs[addr, width]: ([80, 8], [144, 16])
match_extractions: []
next state <_parse_bridged_ingress_intrinsic_metadata> val 0 mask [False]
parent state <POV initialization>_<Egress intrinsic metadata>_<POV skip>
Full merge done <POV initialization>_<Egress intrinsic metadata>_<POV skip> <- <Metadata bridge>
Try merge <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge> <- <_parse_bridged_ingress_intrinsic_metadata>
merge_offset = 0, complete_merge = True
Before Merge ------
S1: State : <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>
shift: 10B
match_reservations: []
outputs[addr, width]: ([146, 16], [81, 8], [80, 8], [144, 16])
branch on = None, offset = 24b, dst = <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>
match_extractions: []
next state <_parse_bridged_ingress_intrinsic_metadata> val 0 mask [False]
parent state <Shim start state>
S2: State : <_parse_bridged_ingress_intrinsic_metadata>
shift: 2B
match_reservations: []
outputs[addr, width]: ()
branch promise on = ingress_port, offset = 7b, dst = default_parser
match_extractions: []
next state start val 0 mask [False]
parent state <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>
Full merge done <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge> <- <_parse_bridged_ingress_intrinsic_metadata>
Try merge <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata> <- start
merge_offset = 0, complete_merge = True
Before Merge ------
S1: State : <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata>
shift: 12B
match_reservations: []
outputs[addr, width]: ([146, 16], [81, 8], [80, 8], [144, 16])
branch on = None, offset = 24b, dst = <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata>
branch promise on = ingress_port, offset = 87b, dst = default_parser
match_extractions: []
next state start val 0 mask [False]
parent state <Shim start state>
S2: State : start
shift: 0B
match_reservations: []
outputs[addr, width]: ()
branch on = None, offset = 96b, dst = start
match_extractions: []
next state parse_pkt_in val 0 mask [True, True, True, True, True, True, True, True]
next state default_parser val 0 mask [False]
parent state <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata>
Full merge done <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata> <- start
Remove state <Egress intrinsic metadata>
Remove state <POV skip>
Remove state <Metadata bridge>
Remove state <_parse_bridged_ingress_intrinsic_metadata>
Remove state start
assign ids to 9 states, dir = 1
------
State : <Shim start state>
shift: 0B
match_reservations: []
outputs[addr, width]: ()
match_extractions: []
next state <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata>_start val 0 mask [False]
------
State : parse_ethernet
shift: 14B
match_reservations: []
outputs[addr, width]: ([82, 8], [300, 8], [270, 32], [338, 16], [301, 8], [271, 32], [339, 16])
branch on = etherType, offset = 96b, dst = parse_ethernet
match_extractions: [match_window(hw_id=0, width=16)]
match key = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]
next state parse_ipv4 val 2048 mask [True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True]
parent state parse_pkt_in
parent state parse_pkt_out
parent state default_parser
------
State : parse_ipv4
shift: 20B
match_reservations: []
outputs[addr, width]: ([82, 8], [296, 8], [297, 8], [332, 16], [333, 16], [334, 16], [264, 32], [265, 32], [266, 32])
branch on = fragOffset, offset = 51b, dst = parse_ipv4
branch on = protocol, offset = 72b, dst = parse_ipv4
match_extractions: [match_window(hw_id=2, width=8), match_window(hw_id=0, width=16)]
match key = [0, 1, 2, 3, 4, 5, 6, 7]
match key = [8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, None, None, None]
next state parse_tcp val 6 mask [True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True]
next state parse_udp val 17 mask [True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True, True]
parent state parse_ethernet
------
State : parse_tcp
shift: 20B
match_reservations: []
outputs[addr, width]: ([82, 8], [298, 8], [299, 8], [335, 16], [336, 16], [337, 16], [267, 32], [268, 32], [269, 32])
match_extractions: []
parent state parse_ipv4
------
State : parse_udp
shift: 8B
match_reservations: []
outputs[addr, width]: ([82, 8], [298, 8], [299, 8], [336, 16], [267, 32])
match_extractions: []
parent state parse_ipv4
------
State : default_parser
shift: 0B
match_reservations: [match_window(hw_id=0, width=16)]
outputs[addr, width]: ()
branch on = ingress_port, offset = 87b, dst = default_parser
match_extractions: [match_window(hw_id=0, width=16)]
match key = [0, 1, 2, 3, 4, 5, 6, 7, 8, None, None, None, None, None, None, None]
next state parse_pkt_out val 320 mask [True, True, True, True, True, True, True, True, True]
next state parse_ethernet val 0 mask [False]
parent state <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata>_start
------
State : parse_pkt_out
shift: 2B
match_reservations: []
outputs[addr, width]: ([82, 8], [340, 16])
match_extractions: []
next state parse_ethernet val 0 mask [False]
parent state default_parser
------
State : <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata>_start
shift: 12B
match_reservations: []
outputs[addr, width]: ([146, 16], [81, 8], [80, 8], [144, 16])
branch on = None, offset = 24b, dst = <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata>_start
branch on = None, offset = 192b, dst = <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata>_start
branch promise on = ingress_port, offset = 87b, dst = default_parser
match_extractions: [match_window(hw_id=2, width=8), match_window(hw_id=0, width=16), match_window(hw_id=3, width=8)]
match key = [8, 9, 10, 11, 12, 13, 14, 15]
match key = [None, None, None, None, None, None, None, None, None, None, None, None, None, None, None, None]
match key = [0, 1, 2, 3, 4, 5, 6, 7]
next state parse_pkt_in val 0 mask [True, True, True, True, True, True, True, True]
next state default_parser val 0 mask [False]
parent state <Shim start state>
------
State : parse_pkt_in
shift: 2B
match_reservations: []
outputs[addr, width]: ([82, 8], [145, 16])
match_extractions: []
next state parse_ethernet val 0 mask [False]
parent state <POV initialization>_<Egress intrinsic metadata>_<POV skip>_<Metadata bridge>_<_parse_bridged_ingress_intrinsic_metadata>_start