	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function __parse_cls_flower
___parse_cls_flower:                    ## @__parse_cls_flower
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$168, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%r9, -72(%rbp)                  ## 8-byte Spill
	movq	%r8, -168(%rbp)                 ## 8-byte Spill
	movq	%rcx, -144(%rbp)                ## 8-byte Spill
	movq	%rdx, %rbx
	movq	%rsi, %r13
	movq	%rdi, -120(%rbp)                ## 8-byte Spill
	movq	(%rdx), %rax
	movq	%rax, -136(%rbp)                ## 8-byte Spill
	movq	_fte_match_param@GOTPCREL(%rip), %r15
	movl	(%r15), %edi
	movq	(%rsi), %rsi
	movq	_outer_headers@GOTPCREL(%rip), %r14
	movl	(%r14), %edx
	callq	_MLX5_ADDR_OF
	movq	%rax, -80(%rbp)                 ## 8-byte Spill
	movl	(%r15), %edi
	movq	8(%r13), %rsi
	movl	(%r14), %edx
	callq	_MLX5_ADDR_OF
	movq	%rax, -88(%rbp)                 ## 8-byte Spill
	movl	(%r15), %edi
	movq	(%r13), %rsi
	movq	_misc_parameters@GOTPCREL(%rip), %r14
	movl	(%r14), %edx
	callq	_MLX5_ADDR_OF
	movq	%rax, -152(%rbp)                ## 8-byte Spill
	movl	(%r15), %edi
	movq	8(%r13), %rsi
	movl	(%r14), %edx
	callq	_MLX5_ADDR_OF
	movq	%rax, -160(%rbp)                ## 8-byte Spill
	movq	%rbx, -176(%rbp)                ## 8-byte Spill
	movq	%rbx, %rdi
	callq	_flow_cls_offload_flow_rule
	movq	%rax, -96(%rbp)                 ## 8-byte Spill
	movq	(%rax), %rax
	movq	%rax, -184(%rbp)                ## 8-byte Spill
	movl	(%rax), %eax
	movl	%eax, -128(%rbp)                ## 4-byte Spill
	movq	_FLOW_DISSECTOR_KEY_META@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %ebx
	movq	_FLOW_DISSECTOR_KEY_CONTROL@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r12d
	orl	%ebx, %r12d
	movq	_FLOW_DISSECTOR_KEY_BASIC@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r15d
	movq	_FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %ebx
	orl	%r15d, %ebx
	orl	%r12d, %ebx
	movq	_FLOW_DISSECTOR_KEY_VLAN@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r15d
	movq	_FLOW_DISSECTOR_KEY_CVLAN@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r14d
	orl	%r15d, %r14d
	movq	_FLOW_DISSECTOR_KEY_IPV4_ADDRS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r12d
	orl	%r14d, %r12d
	orl	%ebx, %r12d
	movq	_FLOW_DISSECTOR_KEY_IPV6_ADDRS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r14d
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %ebx
	orl	%r14d, %ebx
	movq	_FLOW_DISSECTOR_KEY_ENC_KEYID@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r14d
	orl	%ebx, %r14d
	movq	_FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r15d
	orl	%r14d, %r15d
	orl	%r12d, %r15d
	movq	_FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r14d
	movq	_FLOW_DISSECTOR_KEY_ENC_PORTS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %ebx
	orl	%r14d, %ebx
	movq	_FLOW_DISSECTOR_KEY_ENC_CONTROL@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r14d
	orl	%ebx, %r14d
	movq	_FLOW_DISSECTOR_KEY_TCP@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r12d
	orl	%r14d, %r12d
	movq	_FLOW_DISSECTOR_KEY_IP@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %ebx
	orl	%r12d, %ebx
	orl	%r15d, %ebx
	movq	_FLOW_DISSECTOR_KEY_ENC_IP@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	movl	%eax, %r14d
	movq	_FLOW_DISSECTOR_KEY_ENC_OPTS@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_BIT
	orl	%r14d, %eax
	orl	%ebx, %eax
	notl	%eax
	testl	%eax, -128(%rbp)                ## 4-byte Folded Reload
	je	LBB0_2
## %bb.1:
	leaq	L_.str(%rip), %rsi
	movq	-136(%rbp), %rdi                ## 8-byte Reload
	callq	_NL_SET_ERR_MSG_MOD
	movq	-120(%rbp), %rax                ## 8-byte Reload
	movl	(%rax), %edi
	movq	-184(%rbp), %rax                ## 8-byte Reload
	movl	(%rax), %edx
	leaq	L_.str.1(%rip), %rsi
	callq	_netdev_warn
LBB0_5:
	movq	_EOPNOTSUPP@GOTPCREL(%rip), %rax
LBB0_6:
	xorl	%ebx, %ebx
	subl	(%rax), %ebx
LBB0_83:
	movl	%ebx, %eax
	addq	$168, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_2:
	movq	-176(%rbp), %r12                ## 8-byte Reload
	movq	-80(%rbp), %r15                 ## 8-byte Reload
	movq	-72(%rbp), %rbx                 ## 8-byte Reload
	movq	-144(%rbp), %rdi                ## 8-byte Reload
	callq	_mlx5e_get_tc_tun
	testq	%rax, %rax
	je	LBB0_3
## %bb.4:
	movq	-120(%rbp), %rdi                ## 8-byte Reload
	movq	%r13, %rsi
	movq	%r12, %rdx
	movq	-144(%rbp), %rcx                ## 8-byte Reload
	movq	%rbx, %r8
	callq	_parse_tunnel_attr
	testq	%rax, %rax
	movq	-96(%rbp), %r14                 ## 8-byte Reload
	jne	LBB0_5
## %bb.7:
	movq	_MLX5_FLOW_CONTEXT_ACTION_DECAP@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movq	%r13, %rsi
	callq	_get_match_headers_criteria
	movq	%rax, %r15
	movl	(%rbx), %edi
	movq	%r13, %rsi
	callq	_get_match_headers_value
	movq	%rax, -88(%rbp)                 ## 8-byte Spill
	movq	-168(%rbp), %rax                ## 8-byte Reload
	movq	%rax, -72(%rbp)                 ## 8-byte Spill
	jmp	LBB0_8
LBB0_3:
	movq	-96(%rbp), %r14                 ## 8-byte Reload
LBB0_8:
	movq	_FLOW_DISSECTOR_KEY_BASIC@GOTPCREL(%rip), %rax
	movq	(%rax), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_key
	testq	%rax, %rax
	movq	%r15, -80(%rbp)                 ## 8-byte Spill
	movq	_FLOW_DISSECTOR_KEY_CONTROL@GOTPCREL(%rip), %r12
	movq	%r15, %r13
	movq	_FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPCREL(%rip), %r15
	movq	%r14, %rdi
	movq	_FLOW_DISSECTOR_KEY_CVLAN@GOTPCREL(%rip), %r14
	je	LBB0_12
## %bb.9:
	leaq	-64(%rbp), %rsi
	callq	_flow_rule_match_basic
	movq	%r13, %r15
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %r13
	movl	(%r13), %ebx
	movq	_ethertype@GOTPCREL(%rip), %r12
	movl	(%r12), %r14d
	movq	-64(%rbp), %rax
	movq	8(%rax), %rdi
	callq	_ntohs
	movl	%ebx, %edi
	movq	%r15, %rsi
	movl	%r14d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movl	(%r13), %r15d
	movq	-88(%rbp), %rbx                 ## 8-byte Reload
	movl	(%r12), %r14d
	movq	-56(%rbp), %rax
	movq	8(%rax), %rdi
	callq	_ntohs
	movl	%r15d, %edi
	movq	%rbx, %rsi
	movl	%r14d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movq	-64(%rbp), %rax
	cmpq	$0, 8(%rax)
	je	LBB0_11
## %bb.10:
	movq	_MLX5_MATCH_L2@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
LBB0_11:
	movq	-96(%rbp), %rdi                 ## 8-byte Reload
	movq	_FLOW_DISSECTOR_KEY_CONTROL@GOTPCREL(%rip), %r12
	movq	_FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPCREL(%rip), %r15
	movq	_FLOW_DISSECTOR_KEY_CVLAN@GOTPCREL(%rip), %r14
LBB0_12:
	movq	_FLOW_DISSECTOR_KEY_VLAN@GOTPCREL(%rip), %rax
	movq	(%rax), %rsi
	callq	_flow_rule_match_key
	testq	%rax, %rax
	movq	-144(%rbp), %rbx                ## 8-byte Reload
	jne	LBB0_14
## %bb.13:
	movq	%rbx, %rdi
	callq	_is_vlan_dev
	testq	%rax, %rax
	je	LBB0_24
LBB0_14:
	movq	%rbx, %rdi
	callq	_is_vlan_dev
	testq	%rax, %rax
	je	LBB0_16
## %bb.15:
	leaq	-208(%rbp), %rax
	movq	%rax, -112(%rbp)
	movq	%rbx, %rdi
	callq	_vlan_dev_vlan_id
	movq	-112(%rbp), %rcx
	movl	%eax, (%rcx)
	movq	%rbx, %rdi
	callq	_vlan_dev_vlan_proto
	movq	-112(%rbp), %rcx
	movq	%rax, 8(%rcx)
	movl	$0, 16(%rcx)
	leaq	-64(%rbp), %rdi
	movq	%rdi, -104(%rbp)
	movl	$255, %esi
	movl	$24, %edx
	callq	_memset
	movq	-104(%rbp), %rax
	movl	$0, 16(%rax)
	jmp	LBB0_17
LBB0_16:
	leaq	-112(%rbp), %rsi
	movq	-96(%rbp), %rdi                 ## 8-byte Reload
	callq	_flow_rule_match_vlan
	movq	-104(%rbp), %rax
LBB0_17:
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %r13
	cmpl	$0, (%rax)
	jne	LBB0_20
## %bb.18:
	cmpl	$0, 16(%rax)
	jne	LBB0_20
## %bb.19:
	cmpq	$0, 8(%rax)
	je	LBB0_26
LBB0_20:
	movq	-112(%rbp), %rax
	movq	8(%rax), %rbx
	movq	_ETH_P_8021AD@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_htons
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %r14
	movl	(%r14), %edi
	cmpq	%rax, %rbx
	jne	LBB0_21
## %bb.22:
	movq	_svlan_tag@GOTPCREL(%rip), %rbx
	jmp	LBB0_23
LBB0_21:
	movq	_cvlan_tag@GOTPCREL(%rip), %rbx
LBB0_23:
	movq	-88(%rbp), %r13                 ## 8-byte Reload
	movl	(%rbx), %edx
	movq	-80(%rbp), %r15                 ## 8-byte Reload
	movq	%r15, %rsi
	movl	$1, %ecx
	callq	_MLX5_SET
	movl	(%r14), %edi
	movl	(%rbx), %edx
	movq	%r13, %rsi
	movl	$1, %ecx
	callq	_MLX5_SET
	movl	(%r14), %edi
	movq	_first_vid@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edx
	movq	-104(%rbp), %rax
	movl	(%rax), %ecx
	movq	%r15, %rsi
	callq	_MLX5_SET
	movl	(%r14), %edi
	movl	(%rbx), %edx
	movq	-112(%rbp), %rax
	movl	(%rax), %ecx
	movq	%r13, %rsi
	callq	_MLX5_SET
	movl	(%r14), %edi
	movq	_first_prio@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edx
	movq	-104(%rbp), %rax
	movl	16(%rax), %ecx
	movq	%r15, %rsi
	callq	_MLX5_SET
	movl	(%r14), %edi
	movl	(%rbx), %edx
	movq	-112(%rbp), %rax
	movl	16(%rax), %ecx
	movq	%r13, %rsi
	callq	_MLX5_SET
	movq	_MLX5_MATCH_L2@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %r13
	movq	_FLOW_DISSECTOR_KEY_CONTROL@GOTPCREL(%rip), %r12
	movq	_FLOW_DISSECTOR_KEY_CVLAN@GOTPCREL(%rip), %r14
	movq	_FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPCREL(%rip), %r15
LBB0_26:
	movq	(%r14), %rsi
	movq	-96(%rbp), %r14                 ## 8-byte Reload
	movq	%r14, %rdi
	callq	_flow_rule_match_key
	testq	%rax, %rax
	je	LBB0_34
## %bb.27:
	leaq	-64(%rbp), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_cvlan
	movq	-56(%rbp), %rax
	cmpl	$0, (%rax)
	jne	LBB0_30
## %bb.28:
	cmpl	$0, 16(%rax)
	jne	LBB0_30
## %bb.29:
	cmpq	$0, 8(%rax)
	je	LBB0_34
LBB0_30:
	movq	-64(%rbp), %rax
	movq	8(%rax), %rbx
	movq	_ETH_P_8021AD@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_htons
	movq	_fte_match_set_misc@GOTPCREL(%rip), %r14
	movl	(%r14), %edi
	cmpq	%rax, %rbx
	jne	LBB0_31
## %bb.32:
	movq	_outer_second_svlan_tag@GOTPCREL(%rip), %rbx
	jmp	LBB0_33
LBB0_31:
	movq	_outer_second_cvlan_tag@GOTPCREL(%rip), %rbx
LBB0_33:
	movq	-160(%rbp), %r13                ## 8-byte Reload
	movq	-152(%rbp), %r15                ## 8-byte Reload
	movl	(%rbx), %edx
	movq	%r15, %rsi
	movl	$1, %ecx
	callq	_MLX5_SET
	movl	(%r14), %edi
	movl	(%rbx), %edx
	movq	%r13, %rsi
	movl	$1, %ecx
	callq	_MLX5_SET
	movl	(%r14), %edi
	movq	_outer_second_vid@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edx
	movq	-56(%rbp), %rax
	movl	(%rax), %ecx
	movq	%r15, %rsi
	callq	_MLX5_SET
	movl	(%r14), %edi
	movl	(%rbx), %edx
	movq	-64(%rbp), %rax
	movl	(%rax), %ecx
	movq	%r13, %rsi
	callq	_MLX5_SET
	movl	(%r14), %edi
	movq	_outer_second_prio@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edx
	movq	-56(%rbp), %rax
	movl	16(%rax), %ecx
	movq	%r15, %rsi
	callq	_MLX5_SET
	movl	(%r14), %edi
	movl	(%rbx), %edx
	movq	-64(%rbp), %rax
	movl	16(%rax), %ecx
	movq	%r13, %rsi
	callq	_MLX5_SET
	movq	_MLX5_MATCH_L2@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %r13
	movq	_FLOW_DISSECTOR_KEY_CONTROL@GOTPCREL(%rip), %r12
	movq	_FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPCREL(%rip), %r15
	movq	-96(%rbp), %r14                 ## 8-byte Reload
LBB0_34:
	movq	(%r15), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_key
	testq	%rax, %rax
	je	LBB0_39
## %bb.35:
	leaq	-64(%rbp), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_eth_addrs
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %r14
	movl	(%r14), %edi
	movq	_dmac_47_16@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edx
	movq	-80(%rbp), %r15                 ## 8-byte Reload
	movq	%r15, %rsi
	callq	_MLX5_ADDR_OF
	movq	-64(%rbp), %rcx
	movl	(%rcx), %esi
	movq	%rax, %rdi
	callq	_ether_addr_copy
	movl	(%r14), %edi
	movl	(%rbx), %edx
	movq	-88(%rbp), %rbx                 ## 8-byte Reload
	movq	%rbx, %rsi
	callq	_MLX5_ADDR_OF
	movq	-56(%rbp), %rcx
	movl	4(%rcx), %esi
	movq	%rax, %rdi
	callq	_ether_addr_copy
	movl	(%r14), %edi
	movq	_smac_47_16@GOTPCREL(%rip), %r13
	movl	(%r13), %edx
	movq	%r15, %rsi
	callq	_MLX5_ADDR_OF
	movq	-64(%rbp), %rcx
	movl	4(%rcx), %esi
	movq	%rax, %rdi
	callq	_ether_addr_copy
	movl	(%r14), %edi
	movl	(%r13), %edx
	movq	%rbx, %rsi
	callq	_MLX5_ADDR_OF
	movq	-56(%rbp), %rcx
	movl	(%rcx), %esi
	movq	%rax, %rdi
	callq	_ether_addr_copy
	movq	-64(%rbp), %rax
	movl	4(%rax), %edi
	callq	_is_zero_ether_addr
	testl	%eax, %eax
	je	LBB0_37
## %bb.36:
	movq	-64(%rbp), %rax
	movl	(%rax), %edi
	callq	_is_zero_ether_addr
	testl	%eax, %eax
	jne	LBB0_38
LBB0_37:
	movq	_MLX5_MATCH_L2@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
LBB0_38:
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %r13
	movq	_FLOW_DISSECTOR_KEY_CONTROL@GOTPCREL(%rip), %r12
	movq	-96(%rbp), %r14                 ## 8-byte Reload
LBB0_39:
	movq	(%r12), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_key
	testq	%rax, %rax
	je	LBB0_40
## %bb.41:
	leaq	-64(%rbp), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_control
	movq	-56(%rbp), %rax
	movl	(%rax), %eax
	movq	_FLOW_DIS_FIRST_FRAG@GOTPCREL(%rip), %rcx
	testl	%eax, (%rcx)
	jne	LBB0_5
## %bb.42:
	movq	-64(%rbp), %rcx
	movq	(%rcx), %r15
	movq	_FLOW_DIS_IS_FRAGMENT@GOTPCREL(%rip), %r14
	testl	%eax, (%r14)
	je	LBB0_47
## %bb.43:
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %rbx
	movl	(%rbx), %edi
	movq	_frag@GOTPCREL(%rip), %r12
	movl	(%r12), %edx
	movq	-80(%rbp), %rsi                 ## 8-byte Reload
	movl	$1, %ecx
	callq	_MLX5_SET
	movl	(%rbx), %edi
	movl	(%r12), %edx
	movq	-64(%rbp), %rax
	movl	(%r14), %ecx
	andl	8(%rax), %ecx
	movq	-88(%rbp), %rsi                 ## 8-byte Reload
	callq	_MLX5_SET
	movq	-64(%rbp), %rax
	movl	(%r14), %ecx
	andl	8(%rax), %ecx
	jne	LBB0_44
## %bb.45:
	movq	_MLX5_MATCH_L2@GOTPCREL(%rip), %rax
	jmp	LBB0_46
LBB0_40:
	xorl	%r15d, %r15d
	movq	_FLOW_DISSECTOR_KEY_BASIC@GOTPCREL(%rip), %rax
	jmp	LBB0_48
LBB0_24:
	movq	-72(%rbp), %rax                 ## 8-byte Reload
	movq	(%rax), %rax
	movq	_MLX5_MATCH_NONE@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %r13
	je	LBB0_26
## %bb.25:
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_cvlan_tag@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	-80(%rbp), %rsi                 ## 8-byte Reload
	movl	$1, %ecx
	callq	_MLX5_SET
	movq	_MLX5_MATCH_L2@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
	jmp	LBB0_26
LBB0_44:
	movq	_MLX5_MATCH_L3@GOTPCREL(%rip), %rax
LBB0_46:
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %r13
LBB0_47:
	movq	_FLOW_DISSECTOR_KEY_BASIC@GOTPCREL(%rip), %rax
	movq	-96(%rbp), %r14                 ## 8-byte Reload
LBB0_48:
	movq	(%rax), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_key
	testq	%rax, %rax
	je	LBB0_49
## %bb.50:
	leaq	-64(%rbp), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_basic
	movq	-64(%rbp), %rax
	movq	-56(%rbp), %rcx
	movq	(%rcx), %rcx
	movq	%rcx, -128(%rbp)                ## 8-byte Spill
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %r12
	movl	(%r12), %edi
	movq	_ip_protocol@GOTPCREL(%rip), %r14
	movl	(%r14), %edx
	movl	(%rax), %ecx
	movq	-80(%rbp), %rsi                 ## 8-byte Reload
	callq	_MLX5_SET
	movl	(%r12), %edi
	movl	(%r14), %edx
	movq	-56(%rbp), %rax
	movl	(%rax), %ecx
	movq	-88(%rbp), %rsi                 ## 8-byte Reload
	callq	_MLX5_SET
	movq	-64(%rbp), %rax
	cmpl	$0, (%rax)
	je	LBB0_52
## %bb.51:
	movq	_MLX5_MATCH_L3@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
LBB0_52:
	movq	-96(%rbp), %r14                 ## 8-byte Reload
	jmp	LBB0_53
LBB0_49:
	xorl	%eax, %eax
	movq	%rax, -128(%rbp)                ## 8-byte Spill
LBB0_53:
	movq	_FLOW_DISSECTOR_KEY_IP@GOTPCREL(%rip), %rax
	movq	_FLOW_DISSECTOR_KEY_IPV6_ADDRS@GOTPCREL(%rip), %rcx
	movq	_FLOW_DISSECTOR_KEY_IPV4_ADDRS@GOTPCREL(%rip), %rdx
	cmpq	(%rdx), %r15
	jne	LBB0_58
## %bb.54:
	leaq	-64(%rbp), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_ipv4_addrs
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %r12
	movl	(%r12), %edi
	movq	_src_ipv4_src_ipv6@GOTPCREL(%rip), %rbx
	movl	4(%rbx), %edx
	movq	-80(%rbp), %r14                 ## 8-byte Reload
	movq	%r14, %rsi
	callq	_MLX5_ADDR_OF
	movq	-64(%rbp), %rsi
	addq	$8, %rsi
	movq	%rax, %rdi
	movl	$8, %edx
	callq	_memcpy
	movl	(%r12), %edi
	movl	4(%rbx), %edx
	movq	-88(%rbp), %rbx                 ## 8-byte Reload
	movq	%rbx, %rsi
	callq	_MLX5_ADDR_OF
	movq	-56(%rbp), %rsi
	addq	$8, %rsi
	movq	%rax, %rdi
	movl	$8, %edx
	callq	_memcpy
	movl	(%r12), %edi
	movq	_dst_ipv4_dst_ipv6@GOTPCREL(%rip), %r13
	movl	4(%r13), %edx
	movq	%r14, %rsi
	callq	_MLX5_ADDR_OF
	movq	-64(%rbp), %rsi
	movq	%rax, %rdi
	movl	$8, %edx
	callq	_memcpy
	movl	(%r12), %edi
	movl	4(%r13), %edx
	movq	%rbx, %rsi
	callq	_MLX5_ADDR_OF
	movq	-56(%rbp), %rsi
	movq	%rax, %rdi
	movl	$8, %edx
	callq	_memcpy
	movq	-64(%rbp), %rax
	cmpq	$0, 8(%rax)
	jne	LBB0_56
## %bb.55:
	cmpq	$0, (%rax)
	je	LBB0_57
LBB0_56:
	movq	_MLX5_MATCH_L3@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
LBB0_57:
	movq	-96(%rbp), %r14                 ## 8-byte Reload
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %r13
	movq	_FLOW_DISSECTOR_KEY_IP@GOTPCREL(%rip), %rax
	movq	_FLOW_DISSECTOR_KEY_IPV6_ADDRS@GOTPCREL(%rip), %rcx
LBB0_58:
	cmpq	(%rcx), %r15
	jne	LBB0_63
## %bb.59:
	leaq	-64(%rbp), %rsi
	movq	%r14, %r12
	movq	%r14, %rdi
	callq	_flow_rule_match_ipv6_addrs
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %r15
	movl	(%r15), %edi
	movq	_src_ipv4_src_ipv6@GOTPCREL(%rip), %r14
	movl	(%r14), %edx
	movq	-80(%rbp), %r13                 ## 8-byte Reload
	movq	%r13, %rsi
	callq	_MLX5_ADDR_OF
	movq	-64(%rbp), %rsi
	addq	$8, %rsi
	movq	%rax, %rdi
	movl	$8, %edx
	callq	_memcpy
	movl	(%r15), %edi
	movl	(%r14), %edx
	movq	-88(%rbp), %rbx                 ## 8-byte Reload
	movq	%rbx, %rsi
	callq	_MLX5_ADDR_OF
	movq	-56(%rbp), %rsi
	addq	$8, %rsi
	movq	%rax, %rdi
	movl	$8, %edx
	callq	_memcpy
	movl	(%r15), %edi
	movq	_dst_ipv4_dst_ipv6@GOTPCREL(%rip), %r14
	movl	(%r14), %edx
	movq	%r13, %rsi
	callq	_MLX5_ADDR_OF
	movq	-64(%rbp), %rsi
	movq	%rax, %rdi
	movl	$8, %edx
	callq	_memcpy
	movl	(%r15), %edi
	movl	(%r14), %edx
	movq	%rbx, %rsi
	callq	_MLX5_ADDR_OF
	movq	-56(%rbp), %rsi
	movq	%rax, %rdi
	movl	$8, %edx
	callq	_memcpy
	movq	-64(%rbp), %rdi
	addq	$8, %rdi
	callq	_ipv6_addr_type
	movq	_IPV6_ADDR_ANY@GOTPCREL(%rip), %rbx
	cmpq	(%rbx), %rax
	jne	LBB0_61
## %bb.60:
	movq	-64(%rbp), %rdi
	callq	_ipv6_addr_type
	cmpq	(%rbx), %rax
	je	LBB0_62
LBB0_61:
	movq	_MLX5_MATCH_L3@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
LBB0_62:
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %r13
	movq	_FLOW_DISSECTOR_KEY_IP@GOTPCREL(%rip), %rax
	movq	%r12, %r14
LBB0_63:
	movq	(%rax), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_key
	testq	%rax, %rax
	je	LBB0_71
## %bb.64:
	leaq	-64(%rbp), %rsi
	movq	%r14, %r12
	movq	%r14, %rdi
	callq	_flow_rule_match_ip
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %r15
	movl	(%r15), %edi
	movq	_ip_ecn@GOTPCREL(%rip), %r14
	movl	(%r14), %edx
	movq	-64(%rbp), %rax
	movl	(%rax), %ecx
	andl	$3, %ecx
	movq	-80(%rbp), %r13                 ## 8-byte Reload
	movq	%r13, %rsi
	callq	_MLX5_SET
	movl	(%r15), %edi
	movl	(%r14), %edx
	movq	-56(%rbp), %rax
	movl	(%rax), %ecx
	andl	$3, %ecx
	movq	-88(%rbp), %rbx                 ## 8-byte Reload
	movq	%rbx, %rsi
	callq	_MLX5_SET
	movl	(%r15), %edi
	movq	_ip_dscp@GOTPCREL(%rip), %r14
	movl	(%r14), %edx
	movq	-64(%rbp), %rax
	movl	(%rax), %ecx
	sarl	$2, %ecx
	movq	%r13, %rsi
	callq	_MLX5_SET
	movl	(%r15), %edi
	movl	(%r14), %edx
	movq	-56(%rbp), %rax
	movl	(%rax), %ecx
	sarl	$2, %ecx
	movq	%rbx, %rsi
	callq	_MLX5_SET
	movl	(%r15), %edi
	movq	_ttl_hoplimit@GOTPCREL(%rip), %r14
	movl	(%r14), %edx
	movq	-64(%rbp), %rax
	movl	4(%rax), %ecx
	movq	%r13, %rsi
	callq	_MLX5_SET
	movl	(%r15), %edi
	movl	(%r14), %edx
	movq	-56(%rbp), %rax
	movl	4(%rax), %ecx
	movq	%rbx, %rsi
	callq	_MLX5_SET
	movq	-64(%rbp), %rax
	cmpl	$0, 4(%rax)
	je	LBB0_67
## %bb.65:
	movq	-120(%rbp), %rax                ## 8-byte Reload
	movl	4(%rax), %edi
	movq	_ft_field_support@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_MLX5_CAP_ESW_FLOWTABLE_FDB
	testl	%eax, %eax
	movq	-136(%rbp), %rdi                ## 8-byte Reload
	je	LBB0_84
## %bb.66:
	movq	-64(%rbp), %rax
LBB0_67:
	cmpl	$0, (%rax)
	jne	LBB0_69
## %bb.68:
	cmpl	$0, 4(%rax)
	je	LBB0_70
LBB0_69:
	movq	_MLX5_MATCH_L3@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
LBB0_70:
	movq	_FLOW_DISSECTOR_KEY_PORTS@GOTPCREL(%rip), %r13
	movq	%r12, %r14
LBB0_71:
	movq	(%r13), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_key
	testq	%rax, %rax
	movq	_FLOW_DISSECTOR_KEY_TCP@GOTPCREL(%rip), %rax
	movq	-88(%rbp), %r13                 ## 8-byte Reload
	je	LBB0_80
## %bb.72:
	leaq	-64(%rbp), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_ports
	movq	-128(%rbp), %rax                ## 8-byte Reload
	cmpq	$128, %rax
	je	LBB0_75
## %bb.73:
	cmpq	$129, %rax
	jne	LBB0_85
## %bb.74:
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %r15
	movl	(%r15), %ebx
	movq	_tcp_sport@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	movq	-64(%rbp), %rax
	movq	8(%rax), %rdi
	callq	_ntohs
	movl	%ebx, %edi
	movq	-80(%rbp), %r12                 ## 8-byte Reload
	movq	%r12, %rsi
	movl	%r14d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movl	(%r15), %ebx
	movq	_tcp_sport@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	movq	-56(%rbp), %rax
	movq	8(%rax), %rdi
	callq	_ntohs
	movl	%ebx, %edi
	movq	%r13, %rsi
	movl	%r14d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movl	(%r15), %ebx
	movq	_tcp_dport@GOTPCREL(%rip), %r15
	jmp	LBB0_76
LBB0_75:
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %r15
	movl	(%r15), %ebx
	movq	_udp_sport@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	movq	-64(%rbp), %rax
	movq	8(%rax), %rdi
	callq	_ntohs
	movl	%ebx, %edi
	movq	-80(%rbp), %r12                 ## 8-byte Reload
	movq	%r12, %rsi
	movl	%r14d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movl	(%r15), %ebx
	movq	_udp_sport@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	movq	-56(%rbp), %rax
	movq	8(%rax), %rdi
	callq	_ntohs
	movl	%ebx, %edi
	movq	%r13, %rsi
	movl	%r14d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movl	(%r15), %ebx
	movq	_udp_dport@GOTPCREL(%rip), %r15
LBB0_76:
	movl	(%r15), %r14d
	movq	-64(%rbp), %rax
	movq	(%rax), %rdi
	callq	_ntohs
	movl	%ebx, %edi
	movq	%r12, %rsi
	movl	%r14d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %rax
	movl	(%rax), %ebx
	movl	(%r15), %r14d
	movq	-56(%rbp), %rax
	movq	(%rax), %rdi
	callq	_ntohs
	movl	%ebx, %edi
	movq	%r13, %rsi
	movl	%r14d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movq	-64(%rbp), %rax
	cmpq	$0, 8(%rax)
	jne	LBB0_78
## %bb.77:
	cmpq	$0, (%rax)
	je	LBB0_79
LBB0_78:
	movq	_MLX5_MATCH_L4@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
LBB0_79:
	movq	-96(%rbp), %r14                 ## 8-byte Reload
	movq	_FLOW_DISSECTOR_KEY_TCP@GOTPCREL(%rip), %rax
LBB0_80:
	movq	(%rax), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_key
	xorl	%ebx, %ebx
	testq	%rax, %rax
	je	LBB0_83
## %bb.81:
	leaq	-64(%rbp), %rsi
	movq	%r14, %rdi
	callq	_flow_rule_match_tcp
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	movq	_tcp_flags@GOTPCREL(%rip), %r12
	movl	(%r12), %r15d
	movq	-64(%rbp), %rax
	movq	(%rax), %rdi
	callq	_ntohs
	movl	%r14d, %edi
	movq	-80(%rbp), %rsi                 ## 8-byte Reload
	movl	%r15d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movq	_fte_match_set_lyr_2_4@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	movl	(%r12), %r15d
	movq	-56(%rbp), %rax
	movq	(%rax), %rdi
	callq	_ntohs
	movl	%r14d, %edi
	movq	%r13, %rsi
	movl	%r15d, %edx
	movl	%eax, %ecx
	callq	_MLX5_SET
	movq	-64(%rbp), %rax
	cmpq	$0, (%rax)
	je	LBB0_83
## %bb.82:
	movq	_MLX5_MATCH_L4@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	-72(%rbp), %rcx                 ## 8-byte Reload
	movq	%rax, (%rcx)
	jmp	LBB0_83
LBB0_85:
	leaq	L_.str.3(%rip), %rsi
	movq	-136(%rbp), %rdi                ## 8-byte Reload
	callq	_NL_SET_ERR_MSG_MOD
	movq	-120(%rbp), %rax                ## 8-byte Reload
	movl	(%rax), %edi
	leaq	L_.str.4(%rip), %rsi
	callq	_netdev_err
	movq	_EINVAL@GOTPCREL(%rip), %rax
	jmp	LBB0_6
LBB0_84:
	leaq	L_.str.2(%rip), %rsi
	callq	_NL_SET_ERR_MSG_MOD
	jmp	LBB0_5
	.cfi_endproc
                                        ## -- End function
	.comm	_fte_match_param,4,2            ## @fte_match_param
	.comm	_outer_headers,4,2              ## @outer_headers
	.comm	_misc_parameters,4,2            ## @misc_parameters
	.comm	_FLOW_DISSECTOR_KEY_META,8,3    ## @FLOW_DISSECTOR_KEY_META
	.comm	_FLOW_DISSECTOR_KEY_CONTROL,8,3 ## @FLOW_DISSECTOR_KEY_CONTROL
	.comm	_FLOW_DISSECTOR_KEY_BASIC,8,3   ## @FLOW_DISSECTOR_KEY_BASIC
	.comm	_FLOW_DISSECTOR_KEY_ETH_ADDRS,8,3 ## @FLOW_DISSECTOR_KEY_ETH_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_VLAN,8,3    ## @FLOW_DISSECTOR_KEY_VLAN
	.comm	_FLOW_DISSECTOR_KEY_CVLAN,8,3   ## @FLOW_DISSECTOR_KEY_CVLAN
	.comm	_FLOW_DISSECTOR_KEY_IPV4_ADDRS,8,3 ## @FLOW_DISSECTOR_KEY_IPV4_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_IPV6_ADDRS,8,3 ## @FLOW_DISSECTOR_KEY_IPV6_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_PORTS,8,3   ## @FLOW_DISSECTOR_KEY_PORTS
	.comm	_FLOW_DISSECTOR_KEY_ENC_KEYID,8,3 ## @FLOW_DISSECTOR_KEY_ENC_KEYID
	.comm	_FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS,8,3 ## @FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS,8,3 ## @FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_ENC_PORTS,8,3 ## @FLOW_DISSECTOR_KEY_ENC_PORTS
	.comm	_FLOW_DISSECTOR_KEY_ENC_CONTROL,8,3 ## @FLOW_DISSECTOR_KEY_ENC_CONTROL
	.comm	_FLOW_DISSECTOR_KEY_TCP,8,3     ## @FLOW_DISSECTOR_KEY_TCP
	.comm	_FLOW_DISSECTOR_KEY_IP,8,3      ## @FLOW_DISSECTOR_KEY_IP
	.comm	_FLOW_DISSECTOR_KEY_ENC_IP,8,3  ## @FLOW_DISSECTOR_KEY_ENC_IP
	.comm	_FLOW_DISSECTOR_KEY_ENC_OPTS,8,3 ## @FLOW_DISSECTOR_KEY_ENC_OPTS
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"Unsupported key"

L_.str.1:                               ## @.str.1
	.asciz	"Unsupported key used: 0x%x\n"

	.comm	_EOPNOTSUPP,4,2                 ## @EOPNOTSUPP
	.comm	_MLX5_FLOW_CONTEXT_ACTION_DECAP,4,2 ## @MLX5_FLOW_CONTEXT_ACTION_DECAP
	.comm	_fte_match_set_lyr_2_4,4,2      ## @fte_match_set_lyr_2_4
	.comm	_ethertype,4,2                  ## @ethertype
	.comm	_MLX5_MATCH_L2,8,3              ## @MLX5_MATCH_L2
	.comm	_ETH_P_8021AD,4,2               ## @ETH_P_8021AD
	.comm	_svlan_tag,4,2                  ## @svlan_tag
	.comm	_cvlan_tag,4,2                  ## @cvlan_tag
	.comm	_first_vid,4,2                  ## @first_vid
	.comm	_first_prio,4,2                 ## @first_prio
	.comm	_MLX5_MATCH_NONE,8,3            ## @MLX5_MATCH_NONE
	.comm	_fte_match_set_misc,4,2         ## @fte_match_set_misc
	.comm	_outer_second_svlan_tag,4,2     ## @outer_second_svlan_tag
	.comm	_outer_second_cvlan_tag,4,2     ## @outer_second_cvlan_tag
	.comm	_outer_second_vid,4,2           ## @outer_second_vid
	.comm	_outer_second_prio,4,2          ## @outer_second_prio
	.comm	_dmac_47_16,4,2                 ## @dmac_47_16
	.comm	_smac_47_16,4,2                 ## @smac_47_16
	.comm	_FLOW_DIS_FIRST_FRAG,4,2        ## @FLOW_DIS_FIRST_FRAG
	.comm	_FLOW_DIS_IS_FRAGMENT,4,2       ## @FLOW_DIS_IS_FRAGMENT
	.comm	_frag,4,2                       ## @frag
	.comm	_MLX5_MATCH_L3,8,3              ## @MLX5_MATCH_L3
	.comm	_ip_protocol,4,2                ## @ip_protocol
	.comm	_src_ipv4_src_ipv6,8,2          ## @src_ipv4_src_ipv6
	.comm	_dst_ipv4_dst_ipv6,8,2          ## @dst_ipv4_dst_ipv6
	.comm	_IPV6_ADDR_ANY,8,3              ## @IPV6_ADDR_ANY
	.comm	_ip_ecn,4,2                     ## @ip_ecn
	.comm	_ip_dscp,4,2                    ## @ip_dscp
	.comm	_ttl_hoplimit,4,2               ## @ttl_hoplimit
	.comm	_ft_field_support,4,2           ## @ft_field_support
L_.str.2:                               ## @.str.2
	.asciz	"Matching on TTL is not supported"

	.comm	_tcp_sport,4,2                  ## @tcp_sport
	.comm	_tcp_dport,4,2                  ## @tcp_dport
	.comm	_udp_sport,4,2                  ## @udp_sport
	.comm	_udp_dport,4,2                  ## @udp_dport
L_.str.3:                               ## @.str.3
	.asciz	"Only UDP and TCP transports are supported for L4 matching"

L_.str.4:                               ## @.str.4
	.asciz	"Only UDP and TCP transport are supported\n"

	.comm	_EINVAL,4,2                     ## @EINVAL
	.comm	_MLX5_MATCH_L4,8,3              ## @MLX5_MATCH_L4
	.comm	_tcp_flags,4,2                  ## @tcp_flags
	.no_dead_strip	___parse_cls_flower
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function __parse_cls_flower
___parse_cls_flower:                    ; @__parse_cls_flower
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #240
	.cfi_def_cfa_offset 240
	stp	x28, x27, [sp, #144]            ; 16-byte Folded Spill
	stp	x26, x25, [sp, #160]            ; 16-byte Folded Spill
	stp	x24, x23, [sp, #176]            ; 16-byte Folded Spill
	stp	x22, x21, [sp, #192]            ; 16-byte Folded Spill
	stp	x20, x19, [sp, #208]            ; 16-byte Folded Spill
	stp	x29, x30, [sp, #224]            ; 16-byte Folded Spill
	add	x29, sp, #224
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	stp	x4, x5, [sp, #64]               ; 16-byte Folded Spill
	mov	x22, x3
	mov	x23, x2
	mov	x24, x1
	mov	x27, x0
Lloh0:
	adrp	x19, _fte_match_param@GOTPAGE
Lloh1:
	ldr	x19, [x19, _fte_match_param@GOTPAGEOFF]
	ldr	x21, [x2]
	ldr	w0, [x19]
	ldr	x1, [x1]
Lloh2:
	adrp	x20, _outer_headers@GOTPAGE
Lloh3:
	ldr	x20, [x20, _outer_headers@GOTPAGEOFF]
	ldr	w2, [x20]
	bl	_MLX5_ADDR_OF
	str	x0, [sp, #56]                   ; 8-byte Folded Spill
	ldr	w0, [x19]
	ldr	x1, [x24, #8]
	ldr	w2, [x20]
	bl	_MLX5_ADDR_OF
	str	x0, [sp, #48]                   ; 8-byte Folded Spill
	ldr	w0, [x19]
	ldr	x1, [x24]
Lloh4:
	adrp	x20, _misc_parameters@GOTPAGE
Lloh5:
	ldr	x20, [x20, _misc_parameters@GOTPAGEOFF]
	ldr	w2, [x20]
	bl	_MLX5_ADDR_OF
	str	x0, [sp, #40]                   ; 8-byte Folded Spill
	ldr	w0, [x19]
	ldr	x1, [x24, #8]
	ldr	w2, [x20]
	bl	_MLX5_ADDR_OF
	mov	x28, x0
	mov	x0, x23
	bl	_flow_cls_offload_flow_rule
	mov	x20, x0
	ldr	x25, [x0]
	ldr	w26, [x25]
Lloh6:
	adrp	x8, _FLOW_DISSECTOR_KEY_META@GOTPAGE
Lloh7:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_META@GOTPAGEOFF]
Lloh8:
	ldr	x0, [x8]
	bl	_BIT
	mov	x19, x0
Lloh9:
	adrp	x8, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGE
Lloh10:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGEOFF]
Lloh11:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w0, w19
Lloh12:
	adrp	x8, _FLOW_DISSECTOR_KEY_BASIC@GOTPAGE
Lloh13:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_BASIC@GOTPAGEOFF]
Lloh14:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh15:
	adrp	x8, _FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPAGE
Lloh16:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPAGEOFF]
Lloh17:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh18:
	adrp	x8, _FLOW_DISSECTOR_KEY_VLAN@GOTPAGE
Lloh19:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_VLAN@GOTPAGEOFF]
Lloh20:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh21:
	adrp	x8, _FLOW_DISSECTOR_KEY_CVLAN@GOTPAGE
Lloh22:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_CVLAN@GOTPAGEOFF]
Lloh23:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh24:
	adrp	x8, _FLOW_DISSECTOR_KEY_IPV4_ADDRS@GOTPAGE
Lloh25:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_IPV4_ADDRS@GOTPAGEOFF]
Lloh26:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh27:
	adrp	x8, _FLOW_DISSECTOR_KEY_IPV6_ADDRS@GOTPAGE
Lloh28:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_IPV6_ADDRS@GOTPAGEOFF]
Lloh29:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh30:
	adrp	x8, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGE
Lloh31:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGEOFF]
Lloh32:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh33:
	adrp	x8, _FLOW_DISSECTOR_KEY_ENC_KEYID@GOTPAGE
Lloh34:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_ENC_KEYID@GOTPAGEOFF]
Lloh35:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh36:
	adrp	x8, _FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS@GOTPAGE
Lloh37:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS@GOTPAGEOFF]
Lloh38:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh39:
	adrp	x8, _FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS@GOTPAGE
Lloh40:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS@GOTPAGEOFF]
Lloh41:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh42:
	adrp	x8, _FLOW_DISSECTOR_KEY_ENC_PORTS@GOTPAGE
Lloh43:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_ENC_PORTS@GOTPAGEOFF]
Lloh44:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh45:
	adrp	x8, _FLOW_DISSECTOR_KEY_ENC_CONTROL@GOTPAGE
Lloh46:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_ENC_CONTROL@GOTPAGEOFF]
Lloh47:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh48:
	adrp	x8, _FLOW_DISSECTOR_KEY_TCP@GOTPAGE
Lloh49:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_TCP@GOTPAGEOFF]
Lloh50:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh51:
	adrp	x8, _FLOW_DISSECTOR_KEY_IP@GOTPAGE
Lloh52:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_IP@GOTPAGEOFF]
Lloh53:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh54:
	adrp	x8, _FLOW_DISSECTOR_KEY_ENC_IP@GOTPAGE
Lloh55:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_ENC_IP@GOTPAGEOFF]
Lloh56:
	ldr	x0, [x8]
	bl	_BIT
	orr	w19, w19, w0
Lloh57:
	adrp	x8, _FLOW_DISSECTOR_KEY_ENC_OPTS@GOTPAGE
Lloh58:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_ENC_OPTS@GOTPAGEOFF]
Lloh59:
	ldr	x0, [x8]
	bl	_BIT
	orr	w8, w19, w0
	bics	wzr, w26, w8
	b.eq	LBB0_5
; %bb.1:
Lloh60:
	adrp	x1, l_.str@PAGE
Lloh61:
	add	x1, x1, l_.str@PAGEOFF
	mov	x0, x21
	bl	_NL_SET_ERR_MSG_MOD
	ldr	w0, [x27]
	ldr	w2, [x25]
Lloh62:
	adrp	x1, l_.str.1@PAGE
Lloh63:
	add	x1, x1, l_.str.1@PAGEOFF
	bl	_netdev_warn
LBB0_2:
Lloh64:
	adrp	x8, _EOPNOTSUPP@GOTPAGE
Lloh65:
	ldr	x8, [x8, _EOPNOTSUPP@GOTPAGEOFF]
LBB0_3:
	ldr	w8, [x8]
	neg	w0, w8
LBB0_4:
	ldp	x29, x30, [sp, #224]            ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #208]            ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #192]            ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #176]            ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #160]            ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #144]            ; 16-byte Folded Reload
	add	sp, sp, #240
	ret
LBB0_5:
	stp	x28, x21, [sp, #8]              ; 16-byte Folded Spill
	stp	x27, x20, [sp, #24]             ; 16-byte Folded Spill
	ldr	x21, [sp, #48]                  ; 8-byte Folded Reload
	ldp	x27, x25, [sp, #56]             ; 16-byte Folded Reload
	ldr	x19, [sp, #72]                  ; 8-byte Folded Reload
	mov	x0, x22
	bl	_mlx5e_get_tc_tun
	cbz	x0, LBB0_8
; %bb.6:
	ldr	x0, [sp, #24]                   ; 8-byte Folded Reload
	mov	x1, x24
	mov	x2, x23
	mov	x3, x22
	mov	x4, x19
	bl	_parse_tunnel_attr
Lloh66:
	adrp	x20, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGE
Lloh67:
	ldr	x20, [x20, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGEOFF]
	cbnz	x0, LBB0_2
; %bb.7:
Lloh68:
	adrp	x19, _MLX5_FLOW_CONTEXT_ACTION_DECAP@GOTPAGE
Lloh69:
	ldr	x19, [x19, _MLX5_FLOW_CONTEXT_ACTION_DECAP@GOTPAGEOFF]
	ldr	w0, [x19]
	mov	x1, x24
	bl	_get_match_headers_criteria
	mov	x27, x0
	ldr	w0, [x19]
	mov	x1, x24
	bl	_get_match_headers_value
	mov	x21, x0
	str	x25, [sp, #72]                  ; 8-byte Folded Spill
	b	LBB0_9
LBB0_8:
Lloh70:
	adrp	x20, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGE
Lloh71:
	ldr	x20, [x20, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGEOFF]
LBB0_9:
Lloh72:
	adrp	x8, _FLOW_DISSECTOR_KEY_BASIC@GOTPAGE
Lloh73:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_BASIC@GOTPAGEOFF]
Lloh74:
	ldr	x1, [x8]
	ldr	x23, [sp, #32]                  ; 8-byte Folded Reload
	mov	x0, x23
	bl	_flow_rule_match_key
Lloh75:
	adrp	x24, _fte_match_set_lyr_2_4@GOTPAGE
Lloh76:
	ldr	x24, [x24, _fte_match_set_lyr_2_4@GOTPAGEOFF]
Lloh77:
	adrp	x28, _MLX5_MATCH_L2@GOTPAGE
Lloh78:
	ldr	x28, [x28, _MLX5_MATCH_L2@GOTPAGEOFF]
Lloh79:
	adrp	x26, _FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPAGE
Lloh80:
	ldr	x26, [x26, _FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPAGEOFF]
Lloh81:
	adrp	x8, _FLOW_DISSECTOR_KEY_VLAN@GOTPAGE
Lloh82:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_VLAN@GOTPAGEOFF]
	cbz	x0, LBB0_13
; %bb.10:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_basic
	ldr	w19, [x24]
Lloh83:
	adrp	x25, _ethertype@GOTPAGE
Lloh84:
	ldr	x25, [x25, _ethertype@GOTPAGEOFF]
	ldr	w23, [x25]
	ldur	x8, [x29, #-104]
	ldr	x0, [x8, #8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x27
	mov	x2, x23
	bl	_MLX5_SET
	ldr	w19, [x24]
	ldr	w23, [x25]
	ldur	x8, [x29, #-96]
	ldr	x0, [x8, #8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x21
	mov	x2, x23
	bl	_MLX5_SET
	ldur	x8, [x29, #-104]
	ldr	x8, [x8, #8]
	cbz	x8, LBB0_12
; %bb.11:
	ldr	x8, [x28]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
LBB0_12:
	ldr	x23, [sp, #32]                  ; 8-byte Folded Reload
Lloh85:
	adrp	x8, _FLOW_DISSECTOR_KEY_VLAN@GOTPAGE
Lloh86:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_VLAN@GOTPAGEOFF]
LBB0_13:
	ldr	x1, [x8]
	mov	x0, x23
	bl	_flow_rule_match_key
Lloh87:
	adrp	x19, _ETH_P_8021AD@GOTPAGE
Lloh88:
	ldr	x19, [x19, _ETH_P_8021AD@GOTPAGEOFF]
	cbnz	x0, LBB0_15
; %bb.14:
	mov	x0, x22
	bl	_is_vlan_dev
	cbz	x0, LBB0_63
LBB0_15:
	mov	x0, x22
	bl	_is_vlan_dev
	cbz	x0, LBB0_17
; %bb.16:
	add	x8, sp, #96
	str	x8, [sp, #80]
	mov	x0, x22
	bl	_vlan_dev_vlan_id
	ldr	x8, [sp, #80]
	str	w0, [x8]
	mov	x0, x22
	bl	_vlan_dev_vlan_proto
	ldr	x8, [sp, #80]
	str	x0, [x8, #8]
	str	wzr, [x8, #16]
	sub	x8, x29, #104
	str	x8, [sp, #88]
	sub	x0, x29, #104
	mov	w1, #255
	mov	w2, #24
	bl	_memset
	ldr	x8, [sp, #88]
	str	wzr, [x8, #16]
	b	LBB0_18
LBB0_17:
	add	x1, sp, #80
	mov	x0, x23
	bl	_flow_rule_match_vlan
	ldr	x8, [sp, #88]
LBB0_18:
	mov	x25, x27
	ldr	w9, [x8]
Lloh89:
	adrp	x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGE
Lloh90:
	ldr	x22, [x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGEOFF]
	cbnz	w9, LBB0_21
; %bb.19:
	ldr	w9, [x8, #16]
	cbnz	w9, LBB0_21
; %bb.20:
	ldr	x8, [x8, #8]
	cbz	x8, LBB0_23
LBB0_21:
	ldr	x8, [sp, #80]
	ldr	x20, [x8, #8]
	ldr	w0, [x19]
	bl	_htons
Lloh91:
	adrp	x9, _cvlan_tag@GOTPAGE
Lloh92:
	ldr	x9, [x9, _cvlan_tag@GOTPAGEOFF]
	ldr	w8, [x24]
Lloh93:
	adrp	x10, _svlan_tag@GOTPAGE
Lloh94:
	ldr	x10, [x10, _svlan_tag@GOTPAGEOFF]
	cmp	x20, x0
	csel	x20, x10, x9, eq
	ldr	w2, [x20]
	mov	x0, x8
	mov	x1, x25
	mov	w3, #1
	bl	_MLX5_SET
	ldr	w0, [x24]
	ldr	w2, [x20]
	mov	x1, x21
	mov	w3, #1
	bl	_MLX5_SET
	ldr	w0, [x24]
Lloh95:
	adrp	x20, _first_vid@GOTPAGE
Lloh96:
	ldr	x20, [x20, _first_vid@GOTPAGEOFF]
	ldr	w2, [x20]
	ldr	x8, [sp, #88]
	ldr	w3, [x8]
	mov	x1, x25
	bl	_MLX5_SET
	ldr	w0, [x24]
	ldr	w2, [x20]
	ldr	x8, [sp, #80]
	ldr	w3, [x8]
	mov	x1, x21
	bl	_MLX5_SET
	ldr	w0, [x24]
Lloh97:
	adrp	x20, _first_prio@GOTPAGE
Lloh98:
	ldr	x20, [x20, _first_prio@GOTPAGEOFF]
	ldr	w2, [x20]
	ldr	x8, [sp, #88]
	ldr	w3, [x8, #16]
	mov	x1, x25
	bl	_MLX5_SET
	ldr	w0, [x24]
	ldr	w2, [x20]
Lloh99:
	adrp	x20, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGE
Lloh100:
	ldr	x20, [x20, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGEOFF]
	ldr	x8, [sp, #80]
	ldr	w3, [x8, #16]
	mov	x1, x21
LBB0_22:
	bl	_MLX5_SET
	ldr	x8, [x28]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
LBB0_23:
Lloh101:
	adrp	x8, _FLOW_DISSECTOR_KEY_CVLAN@GOTPAGE
Lloh102:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_CVLAN@GOTPAGEOFF]
Lloh103:
	ldr	x1, [x8]
	mov	x0, x23
	bl	_flow_rule_match_key
	cbz	x0, LBB0_28
; %bb.24:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_cvlan
	ldur	x8, [x29, #-96]
	ldr	w9, [x8]
	cbnz	w9, LBB0_27
; %bb.25:
	ldr	w9, [x8, #16]
	cbnz	w9, LBB0_27
; %bb.26:
	ldr	x8, [x8, #8]
	cbz	x8, LBB0_28
LBB0_27:
	ldur	x8, [x29, #-104]
	ldr	x20, [x8, #8]
	ldr	w0, [x19]
	bl	_htons
Lloh104:
	adrp	x19, _fte_match_set_misc@GOTPAGE
Lloh105:
	ldr	x19, [x19, _fte_match_set_misc@GOTPAGEOFF]
Lloh106:
	adrp	x9, _outer_second_cvlan_tag@GOTPAGE
Lloh107:
	ldr	x9, [x9, _outer_second_cvlan_tag@GOTPAGEOFF]
	ldr	w8, [x19]
Lloh108:
	adrp	x10, _outer_second_svlan_tag@GOTPAGE
Lloh109:
	ldr	x10, [x10, _outer_second_svlan_tag@GOTPAGEOFF]
	cmp	x20, x0
	csel	x20, x10, x9, eq
	ldr	w2, [x20]
	mov	x0, x8
	mov	x27, x22
	ldr	x22, [sp, #40]                  ; 8-byte Folded Reload
	mov	x1, x22
	mov	w3, #1
	bl	_MLX5_SET
	ldr	w0, [x19]
	ldr	w2, [x20]
	mov	x24, x28
	ldr	x28, [sp, #8]                   ; 8-byte Folded Reload
	mov	x1, x28
	mov	w3, #1
	bl	_MLX5_SET
	ldr	w0, [x19]
Lloh110:
	adrp	x20, _outer_second_vid@GOTPAGE
Lloh111:
	ldr	x20, [x20, _outer_second_vid@GOTPAGEOFF]
	ldr	w2, [x20]
	ldur	x8, [x29, #-96]
	ldr	w3, [x8]
	mov	x1, x22
	bl	_MLX5_SET
	ldr	w0, [x19]
	ldr	w2, [x20]
	ldur	x8, [x29, #-104]
	ldr	w3, [x8]
	mov	x1, x28
	bl	_MLX5_SET
	ldr	w0, [x19]
Lloh112:
	adrp	x20, _outer_second_prio@GOTPAGE
Lloh113:
	ldr	x20, [x20, _outer_second_prio@GOTPAGEOFF]
	ldr	w2, [x20]
	ldur	x8, [x29, #-96]
	ldr	w3, [x8, #16]
	mov	x1, x22
	mov	x22, x27
	ldr	x27, [sp, #72]                  ; 8-byte Folded Reload
	bl	_MLX5_SET
	ldr	w0, [x19]
	ldr	w2, [x20]
Lloh114:
	adrp	x20, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGE
Lloh115:
	ldr	x20, [x20, _FLOW_DISSECTOR_KEY_CONTROL@GOTPAGEOFF]
	ldur	x8, [x29, #-104]
	ldr	w3, [x8, #16]
	mov	x1, x28
	mov	x28, x24
Lloh116:
	adrp	x24, _fte_match_set_lyr_2_4@GOTPAGE
Lloh117:
	ldr	x24, [x24, _fte_match_set_lyr_2_4@GOTPAGEOFF]
Lloh118:
	adrp	x26, _FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPAGE
Lloh119:
	ldr	x26, [x26, _FLOW_DISSECTOR_KEY_ETH_ADDRS@GOTPAGEOFF]
	bl	_MLX5_SET
	ldr	x8, [x28]
	str	x8, [x27]
LBB0_28:
	ldr	x1, [x26]
	mov	x0, x23
	bl	_flow_rule_match_key
	cbz	x0, LBB0_32
; %bb.29:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_eth_addrs
	ldr	w0, [x24]
Lloh120:
	adrp	x19, _dmac_47_16@GOTPAGE
Lloh121:
	ldr	x19, [x19, _dmac_47_16@GOTPAGEOFF]
	ldr	w2, [x19]
	mov	x1, x25
	bl	_MLX5_ADDR_OF
	ldur	x8, [x29, #-104]
	ldr	w1, [x8]
	bl	_ether_addr_copy
	ldr	w0, [x24]
	ldr	w2, [x19]
	mov	x1, x21
	bl	_MLX5_ADDR_OF
	ldur	x8, [x29, #-96]
	ldr	w1, [x8, #4]
	bl	_ether_addr_copy
	ldr	w0, [x24]
Lloh122:
	adrp	x19, _smac_47_16@GOTPAGE
Lloh123:
	ldr	x19, [x19, _smac_47_16@GOTPAGEOFF]
	ldr	w2, [x19]
	mov	x1, x25
	bl	_MLX5_ADDR_OF
	ldur	x8, [x29, #-104]
	ldr	w1, [x8, #4]
	bl	_ether_addr_copy
	ldr	w0, [x24]
	ldr	w2, [x19]
	mov	x1, x21
	bl	_MLX5_ADDR_OF
	ldur	x8, [x29, #-96]
	ldr	w1, [x8]
	bl	_ether_addr_copy
	ldur	x8, [x29, #-104]
	ldr	w0, [x8, #4]
	bl	_is_zero_ether_addr
	cbz	w0, LBB0_31
; %bb.30:
	ldur	x8, [x29, #-104]
	ldr	w0, [x8]
	bl	_is_zero_ether_addr
	cbnz	w0, LBB0_32
LBB0_31:
	ldr	x8, [x28]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
LBB0_32:
	ldr	x1, [x20]
	mov	x0, x23
	bl	_flow_rule_match_key
	cbz	x0, LBB0_36
; %bb.33:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_control
	ldur	x8, [x29, #-96]
	ldr	w8, [x8]
Lloh124:
	adrp	x9, _FLOW_DIS_FIRST_FRAG@GOTPAGE
Lloh125:
	ldr	x9, [x9, _FLOW_DIS_FIRST_FRAG@GOTPAGEOFF]
Lloh126:
	ldr	w9, [x9]
	tst	w9, w8
	b.ne	LBB0_2
; %bb.34:
	ldur	x9, [x29, #-104]
	ldr	x20, [x9]
Lloh127:
	adrp	x19, _FLOW_DIS_IS_FRAGMENT@GOTPAGE
Lloh128:
	ldr	x19, [x19, _FLOW_DIS_IS_FRAGMENT@GOTPAGEOFF]
	ldr	w9, [x19]
	tst	w9, w8
	b.eq	LBB0_37
; %bb.35:
	ldr	w0, [x24]
	mov	x22, x21
Lloh129:
	adrp	x21, _frag@GOTPAGE
Lloh130:
	ldr	x21, [x21, _frag@GOTPAGEOFF]
	ldr	w2, [x21]
	mov	x1, x25
	mov	w3, #1
	bl	_MLX5_SET
	ldr	w0, [x24]
	ldr	w2, [x21]
	mov	x21, x22
Lloh131:
	adrp	x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGE
Lloh132:
	ldr	x22, [x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGEOFF]
	ldur	x8, [x29, #-104]
	ldr	w8, [x8, #8]
	ldr	w9, [x19]
	and	w3, w9, w8
	mov	x1, x21
	bl	_MLX5_SET
	ldur	x8, [x29, #-104]
	ldr	w8, [x8, #8]
	ldr	w9, [x19]
Lloh133:
	adrp	x10, _MLX5_MATCH_L3@GOTPAGE
Lloh134:
	ldr	x10, [x10, _MLX5_MATCH_L3@GOTPAGEOFF]
	tst	w9, w8
	csel	x8, x28, x10, eq
	ldr	x8, [x8]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
	b	LBB0_37
LBB0_36:
	mov	x20, #0
LBB0_37:
	ldr	x28, [sp, #16]                  ; 8-byte Folded Reload
Lloh135:
	adrp	x8, _FLOW_DISSECTOR_KEY_BASIC@GOTPAGE
Lloh136:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_BASIC@GOTPAGEOFF]
Lloh137:
	ldr	x1, [x8]
	mov	x0, x23
	bl	_flow_rule_match_key
	cbz	x0, LBB0_41
; %bb.38:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_basic
	ldp	x9, x8, [x29, #-104]
	ldr	x19, [x8]
	ldr	w0, [x24]
	mov	x22, x21
Lloh138:
	adrp	x21, _ip_protocol@GOTPAGE
Lloh139:
	ldr	x21, [x21, _ip_protocol@GOTPAGEOFF]
	ldr	w2, [x21]
	ldr	w3, [x9]
	mov	x1, x25
	bl	_MLX5_SET
	ldr	w0, [x24]
	ldr	w2, [x21]
	mov	x21, x22
	ldur	x8, [x29, #-96]
	ldr	w3, [x8]
	mov	x1, x22
	bl	_MLX5_SET
	ldur	x8, [x29, #-104]
	ldr	w8, [x8]
	cbz	w8, LBB0_40
; %bb.39:
Lloh140:
	adrp	x8, _MLX5_MATCH_L3@GOTPAGE
Lloh141:
	ldr	x8, [x8, _MLX5_MATCH_L3@GOTPAGEOFF]
Lloh142:
	ldr	x8, [x8]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
LBB0_40:
Lloh143:
	adrp	x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGE
Lloh144:
	ldr	x22, [x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGEOFF]
	b	LBB0_42
LBB0_41:
	mov	x19, #0
LBB0_42:
Lloh145:
	adrp	x9, _FLOW_DISSECTOR_KEY_IP@GOTPAGE
Lloh146:
	ldr	x9, [x9, _FLOW_DISSECTOR_KEY_IP@GOTPAGEOFF]
Lloh147:
	adrp	x10, _FLOW_DISSECTOR_KEY_IPV6_ADDRS@GOTPAGE
Lloh148:
	ldr	x10, [x10, _FLOW_DISSECTOR_KEY_IPV6_ADDRS@GOTPAGEOFF]
Lloh149:
	adrp	x8, _FLOW_DISSECTOR_KEY_IPV4_ADDRS@GOTPAGE
Lloh150:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_IPV4_ADDRS@GOTPAGEOFF]
Lloh151:
	ldr	x8, [x8]
	cmp	x20, x8
	b.ne	LBB0_47
; %bb.43:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_ipv4_addrs
	ldr	w0, [x24]
	mov	x22, x21
Lloh152:
	adrp	x21, _src_ipv4_src_ipv6@GOTPAGE
Lloh153:
	ldr	x21, [x21, _src_ipv4_src_ipv6@GOTPAGEOFF]
	ldr	w2, [x21, #4]
	mov	x1, x25
	bl	_MLX5_ADDR_OF
	ldur	x8, [x29, #-104]
	add	x1, x8, #8
	mov	w2, #8
	bl	_memcpy
	ldr	w0, [x24]
	ldr	w2, [x21, #4]
	mov	x1, x22
	bl	_MLX5_ADDR_OF
	ldur	x8, [x29, #-96]
	add	x1, x8, #8
	mov	w2, #8
	bl	_memcpy
	ldr	w0, [x24]
Lloh154:
	adrp	x21, _dst_ipv4_dst_ipv6@GOTPAGE
Lloh155:
	ldr	x21, [x21, _dst_ipv4_dst_ipv6@GOTPAGEOFF]
	ldr	w2, [x21, #4]
	mov	x1, x25
	bl	_MLX5_ADDR_OF
	ldur	x1, [x29, #-104]
	mov	w2, #8
	bl	_memcpy
	ldr	w0, [x24]
	ldr	w2, [x21, #4]
	mov	x21, x22
	mov	x1, x22
	bl	_MLX5_ADDR_OF
	ldur	x1, [x29, #-96]
	mov	w2, #8
	bl	_memcpy
	ldur	x8, [x29, #-104]
	ldr	x9, [x8, #8]
	cbnz	x9, LBB0_45
; %bb.44:
	ldr	x8, [x8]
	cbz	x8, LBB0_46
LBB0_45:
Lloh156:
	adrp	x8, _MLX5_MATCH_L3@GOTPAGE
Lloh157:
	ldr	x8, [x8, _MLX5_MATCH_L3@GOTPAGEOFF]
Lloh158:
	ldr	x8, [x8]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
LBB0_46:
Lloh159:
	adrp	x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGE
Lloh160:
	ldr	x22, [x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGEOFF]
Lloh161:
	adrp	x9, _FLOW_DISSECTOR_KEY_IP@GOTPAGE
Lloh162:
	ldr	x9, [x9, _FLOW_DISSECTOR_KEY_IP@GOTPAGEOFF]
Lloh163:
	adrp	x10, _FLOW_DISSECTOR_KEY_IPV6_ADDRS@GOTPAGE
Lloh164:
	ldr	x10, [x10, _FLOW_DISSECTOR_KEY_IPV6_ADDRS@GOTPAGEOFF]
LBB0_47:
	ldr	x8, [x10]
	cmp	x20, x8
	b.ne	LBB0_52
; %bb.48:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_ipv6_addrs
	ldr	w0, [x24]
Lloh165:
	adrp	x20, _src_ipv4_src_ipv6@GOTPAGE
Lloh166:
	ldr	x20, [x20, _src_ipv4_src_ipv6@GOTPAGEOFF]
	ldr	w2, [x20]
	mov	x1, x25
	bl	_MLX5_ADDR_OF
	ldur	x8, [x29, #-104]
	add	x1, x8, #8
	mov	w2, #8
	bl	_memcpy
	ldr	w0, [x24]
	ldr	w2, [x20]
	mov	x1, x21
	bl	_MLX5_ADDR_OF
	ldur	x8, [x29, #-96]
	add	x1, x8, #8
	mov	w2, #8
	bl	_memcpy
	ldr	w0, [x24]
Lloh167:
	adrp	x20, _dst_ipv4_dst_ipv6@GOTPAGE
Lloh168:
	ldr	x20, [x20, _dst_ipv4_dst_ipv6@GOTPAGEOFF]
	ldr	w2, [x20]
	mov	x1, x25
	bl	_MLX5_ADDR_OF
	ldur	x1, [x29, #-104]
	mov	w2, #8
	bl	_memcpy
	ldr	w0, [x24]
	ldr	w2, [x20]
	mov	x1, x21
	bl	_MLX5_ADDR_OF
	ldur	x1, [x29, #-96]
	mov	w2, #8
	bl	_memcpy
	ldur	x8, [x29, #-104]
	add	x0, x8, #8
	bl	_ipv6_addr_type
Lloh169:
	adrp	x20, _IPV6_ADDR_ANY@GOTPAGE
Lloh170:
	ldr	x20, [x20, _IPV6_ADDR_ANY@GOTPAGEOFF]
	ldr	x8, [x20]
	cmp	x0, x8
	b.ne	LBB0_50
; %bb.49:
	ldur	x0, [x29, #-104]
	bl	_ipv6_addr_type
	ldr	x8, [x20]
	cmp	x0, x8
	b.eq	LBB0_51
LBB0_50:
Lloh171:
	adrp	x8, _MLX5_MATCH_L3@GOTPAGE
Lloh172:
	ldr	x8, [x8, _MLX5_MATCH_L3@GOTPAGEOFF]
Lloh173:
	ldr	x8, [x8]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
LBB0_51:
Lloh174:
	adrp	x9, _FLOW_DISSECTOR_KEY_IP@GOTPAGE
Lloh175:
	ldr	x9, [x9, _FLOW_DISSECTOR_KEY_IP@GOTPAGEOFF]
LBB0_52:
	ldr	x1, [x9]
	mov	x0, x23
	bl	_flow_rule_match_key
	cbz	x0, LBB0_59
; %bb.53:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_ip
	ldr	w0, [x24]
Lloh176:
	adrp	x20, _ip_ecn@GOTPAGE
Lloh177:
	ldr	x20, [x20, _ip_ecn@GOTPAGEOFF]
	ldr	w2, [x20]
	ldur	x8, [x29, #-104]
	ldr	w8, [x8]
	and	w3, w8, #0x3
	mov	x1, x25
	bl	_MLX5_SET
	ldr	w0, [x24]
	ldr	w2, [x20]
	ldur	x8, [x29, #-96]
	ldr	w8, [x8]
	and	w3, w8, #0x3
	mov	x1, x21
	bl	_MLX5_SET
	ldr	w0, [x24]
Lloh178:
	adrp	x20, _ip_dscp@GOTPAGE
Lloh179:
	ldr	x20, [x20, _ip_dscp@GOTPAGEOFF]
	ldr	w2, [x20]
	ldur	x8, [x29, #-104]
	ldr	w8, [x8]
	asr	w3, w8, #2
	mov	x1, x25
	bl	_MLX5_SET
	ldr	w0, [x24]
	ldr	w2, [x20]
	ldur	x8, [x29, #-96]
	ldr	w8, [x8]
	asr	w3, w8, #2
	mov	x1, x21
	bl	_MLX5_SET
	ldr	w0, [x24]
Lloh180:
	adrp	x20, _ttl_hoplimit@GOTPAGE
Lloh181:
	ldr	x20, [x20, _ttl_hoplimit@GOTPAGEOFF]
	ldr	w2, [x20]
	ldur	x8, [x29, #-104]
	ldr	w3, [x8, #4]
	mov	x1, x25
	bl	_MLX5_SET
	ldr	w0, [x24]
	ldr	w2, [x20]
	ldur	x8, [x29, #-96]
	ldr	w3, [x8, #4]
	mov	x1, x21
	bl	_MLX5_SET
	ldur	x8, [x29, #-104]
	ldr	w9, [x8, #4]
	cbz	w9, LBB0_56
; %bb.54:
	ldr	x8, [sp, #24]                   ; 8-byte Folded Reload
	ldr	w0, [x8, #4]
Lloh182:
	adrp	x8, _ft_field_support@GOTPAGE
Lloh183:
	ldr	x8, [x8, _ft_field_support@GOTPAGEOFF]
Lloh184:
	ldr	w1, [x8]
	bl	_MLX5_CAP_ESW_FLOWTABLE_FDB
	cbz	w0, LBB0_75
; %bb.55:
	ldur	x8, [x29, #-104]
LBB0_56:
	ldr	w9, [x8]
	cbnz	w9, LBB0_58
; %bb.57:
	ldr	w8, [x8, #4]
	cbz	w8, LBB0_59
LBB0_58:
Lloh185:
	adrp	x8, _MLX5_MATCH_L3@GOTPAGE
Lloh186:
	ldr	x8, [x8, _MLX5_MATCH_L3@GOTPAGEOFF]
Lloh187:
	ldr	x8, [x8]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
LBB0_59:
	ldr	x1, [x22]
	mov	x0, x23
	bl	_flow_rule_match_key
Lloh188:
	adrp	x8, _FLOW_DISSECTOR_KEY_TCP@GOTPAGE
Lloh189:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_TCP@GOTPAGEOFF]
	cbz	x0, LBB0_70
; %bb.60:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_ports
	cmp	x19, #128
	b.eq	LBB0_65
; %bb.61:
	cmp	x19, #129
	b.ne	LBB0_74
; %bb.62:
	ldr	w19, [x24]
Lloh190:
	adrp	x20, _tcp_sport@GOTPAGE
Lloh191:
	ldr	x20, [x20, _tcp_sport@GOTPAGEOFF]
	ldr	w23, [x20]
	ldur	x8, [x29, #-104]
	ldr	x0, [x8, #8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x25
	mov	x2, x23
	bl	_MLX5_SET
	ldr	w19, [x24]
	ldr	w23, [x20]
	ldur	x8, [x29, #-96]
	ldr	x0, [x8, #8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x21
	mov	x2, x23
	bl	_MLX5_SET
	ldr	w19, [x24]
Lloh192:
	adrp	x20, _tcp_dport@GOTPAGE
Lloh193:
	ldr	x20, [x20, _tcp_dport@GOTPAGEOFF]
	b	LBB0_66
LBB0_63:
	ldr	x8, [sp, #72]                   ; 8-byte Folded Reload
	ldr	x8, [x8]
Lloh194:
	adrp	x9, _MLX5_MATCH_NONE@GOTPAGE
Lloh195:
	ldr	x9, [x9, _MLX5_MATCH_NONE@GOTPAGEOFF]
Lloh196:
	ldr	x9, [x9]
	cmp	x8, x9
	mov	x25, x27
Lloh197:
	adrp	x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGE
Lloh198:
	ldr	x22, [x22, _FLOW_DISSECTOR_KEY_PORTS@GOTPAGEOFF]
	b.eq	LBB0_23
; %bb.64:
	ldr	w0, [x24]
Lloh199:
	adrp	x8, _cvlan_tag@GOTPAGE
Lloh200:
	ldr	x8, [x8, _cvlan_tag@GOTPAGEOFF]
Lloh201:
	ldr	w2, [x8]
	mov	x1, x25
	mov	w3, #1
	b	LBB0_22
LBB0_65:
	ldr	w19, [x24]
Lloh202:
	adrp	x20, _udp_sport@GOTPAGE
Lloh203:
	ldr	x20, [x20, _udp_sport@GOTPAGEOFF]
	ldr	w23, [x20]
	ldur	x8, [x29, #-104]
	ldr	x0, [x8, #8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x25
	mov	x2, x23
	bl	_MLX5_SET
	ldr	w19, [x24]
	ldr	w23, [x20]
	ldur	x8, [x29, #-96]
	ldr	x0, [x8, #8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x21
	mov	x2, x23
	bl	_MLX5_SET
	ldr	w19, [x24]
Lloh204:
	adrp	x20, _udp_dport@GOTPAGE
Lloh205:
	ldr	x20, [x20, _udp_dport@GOTPAGEOFF]
LBB0_66:
	ldr	w23, [x20]
	ldur	x8, [x29, #-104]
	ldr	x0, [x8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x25
	mov	x2, x23
	bl	_MLX5_SET
	ldr	w19, [x24]
	ldr	w23, [x20]
	ldur	x8, [x29, #-96]
	ldr	x0, [x8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x21
	mov	x2, x23
	bl	_MLX5_SET
	ldur	x8, [x29, #-104]
	ldr	x9, [x8, #8]
	cbnz	x9, LBB0_68
; %bb.67:
	ldr	x8, [x8]
	cbz	x8, LBB0_69
LBB0_68:
Lloh206:
	adrp	x8, _MLX5_MATCH_L4@GOTPAGE
Lloh207:
	ldr	x8, [x8, _MLX5_MATCH_L4@GOTPAGEOFF]
Lloh208:
	ldr	x8, [x8]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
LBB0_69:
	ldr	x23, [sp, #32]                  ; 8-byte Folded Reload
Lloh209:
	adrp	x8, _FLOW_DISSECTOR_KEY_TCP@GOTPAGE
Lloh210:
	ldr	x8, [x8, _FLOW_DISSECTOR_KEY_TCP@GOTPAGEOFF]
LBB0_70:
	ldr	x1, [x8]
	mov	x0, x23
	bl	_flow_rule_match_key
	cbz	x0, LBB0_4
; %bb.71:
	sub	x1, x29, #104
	mov	x0, x23
	bl	_flow_rule_match_tcp
	ldr	w19, [x24]
Lloh211:
	adrp	x20, _tcp_flags@GOTPAGE
Lloh212:
	ldr	x20, [x20, _tcp_flags@GOTPAGEOFF]
	ldr	w22, [x20]
	ldur	x8, [x29, #-104]
	ldr	x0, [x8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x25
	mov	x2, x22
	bl	_MLX5_SET
	ldr	w19, [x24]
	ldr	w20, [x20]
	ldur	x8, [x29, #-96]
	ldr	x0, [x8]
	bl	_ntohs
	mov	x3, x0
	mov	x0, x19
	mov	x1, x21
	mov	x2, x20
	bl	_MLX5_SET
	ldur	x8, [x29, #-104]
	ldr	x8, [x8]
	cbz	x8, LBB0_73
; %bb.72:
Lloh213:
	adrp	x8, _MLX5_MATCH_L4@GOTPAGE
Lloh214:
	ldr	x8, [x8, _MLX5_MATCH_L4@GOTPAGEOFF]
Lloh215:
	ldr	x8, [x8]
	ldr	x9, [sp, #72]                   ; 8-byte Folded Reload
	str	x8, [x9]
LBB0_73:
	mov	w0, #0
	b	LBB0_4
LBB0_74:
Lloh216:
	adrp	x1, l_.str.3@PAGE
Lloh217:
	add	x1, x1, l_.str.3@PAGEOFF
	mov	x0, x28
	bl	_NL_SET_ERR_MSG_MOD
	ldr	x8, [sp, #24]                   ; 8-byte Folded Reload
	ldr	w0, [x8]
Lloh218:
	adrp	x1, l_.str.4@PAGE
Lloh219:
	add	x1, x1, l_.str.4@PAGEOFF
	bl	_netdev_err
Lloh220:
	adrp	x8, _EINVAL@GOTPAGE
Lloh221:
	ldr	x8, [x8, _EINVAL@GOTPAGEOFF]
	b	LBB0_3
LBB0_75:
Lloh222:
	adrp	x1, l_.str.2@PAGE
Lloh223:
	add	x1, x1, l_.str.2@PAGEOFF
	mov	x0, x28
	bl	_NL_SET_ERR_MSG_MOD
	b	LBB0_2
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh54, Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpLdrGotLdr	Lloh48, Lloh49, Lloh50
	.loh AdrpLdrGotLdr	Lloh45, Lloh46, Lloh47
	.loh AdrpLdrGotLdr	Lloh42, Lloh43, Lloh44
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh41
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGot	Lloh4, Lloh5
	.loh AdrpLdrGot	Lloh2, Lloh3
	.loh AdrpLdrGot	Lloh0, Lloh1
	.loh AdrpAdd	Lloh62, Lloh63
	.loh AdrpAdd	Lloh60, Lloh61
	.loh AdrpLdrGot	Lloh64, Lloh65
	.loh AdrpLdrGot	Lloh66, Lloh67
	.loh AdrpLdrGot	Lloh68, Lloh69
	.loh AdrpLdrGot	Lloh70, Lloh71
	.loh AdrpLdrGot	Lloh81, Lloh82
	.loh AdrpLdrGot	Lloh79, Lloh80
	.loh AdrpLdrGot	Lloh77, Lloh78
	.loh AdrpLdrGot	Lloh75, Lloh76
	.loh AdrpLdrGotLdr	Lloh72, Lloh73, Lloh74
	.loh AdrpLdrGot	Lloh83, Lloh84
	.loh AdrpLdrGot	Lloh85, Lloh86
	.loh AdrpLdrGot	Lloh87, Lloh88
	.loh AdrpLdrGot	Lloh89, Lloh90
	.loh AdrpLdrGot	Lloh99, Lloh100
	.loh AdrpLdrGot	Lloh97, Lloh98
	.loh AdrpLdrGot	Lloh95, Lloh96
	.loh AdrpLdrGot	Lloh93, Lloh94
	.loh AdrpLdrGot	Lloh91, Lloh92
	.loh AdrpLdrGotLdr	Lloh101, Lloh102, Lloh103
	.loh AdrpLdrGot	Lloh118, Lloh119
	.loh AdrpLdrGot	Lloh116, Lloh117
	.loh AdrpLdrGot	Lloh114, Lloh115
	.loh AdrpLdrGot	Lloh112, Lloh113
	.loh AdrpLdrGot	Lloh110, Lloh111
	.loh AdrpLdrGot	Lloh108, Lloh109
	.loh AdrpLdrGot	Lloh106, Lloh107
	.loh AdrpLdrGot	Lloh104, Lloh105
	.loh AdrpLdrGot	Lloh122, Lloh123
	.loh AdrpLdrGot	Lloh120, Lloh121
	.loh AdrpLdrGotLdr	Lloh124, Lloh125, Lloh126
	.loh AdrpLdrGot	Lloh127, Lloh128
	.loh AdrpLdrGot	Lloh133, Lloh134
	.loh AdrpLdrGot	Lloh131, Lloh132
	.loh AdrpLdrGot	Lloh129, Lloh130
	.loh AdrpLdrGotLdr	Lloh135, Lloh136, Lloh137
	.loh AdrpLdrGot	Lloh138, Lloh139
	.loh AdrpLdrGotLdr	Lloh140, Lloh141, Lloh142
	.loh AdrpLdrGot	Lloh143, Lloh144
	.loh AdrpLdrGotLdr	Lloh149, Lloh150, Lloh151
	.loh AdrpLdrGot	Lloh147, Lloh148
	.loh AdrpLdrGot	Lloh145, Lloh146
	.loh AdrpLdrGot	Lloh154, Lloh155
	.loh AdrpLdrGot	Lloh152, Lloh153
	.loh AdrpLdrGotLdr	Lloh156, Lloh157, Lloh158
	.loh AdrpLdrGot	Lloh163, Lloh164
	.loh AdrpLdrGot	Lloh161, Lloh162
	.loh AdrpLdrGot	Lloh159, Lloh160
	.loh AdrpLdrGot	Lloh169, Lloh170
	.loh AdrpLdrGot	Lloh167, Lloh168
	.loh AdrpLdrGot	Lloh165, Lloh166
	.loh AdrpLdrGotLdr	Lloh171, Lloh172, Lloh173
	.loh AdrpLdrGot	Lloh174, Lloh175
	.loh AdrpLdrGot	Lloh180, Lloh181
	.loh AdrpLdrGot	Lloh178, Lloh179
	.loh AdrpLdrGot	Lloh176, Lloh177
	.loh AdrpLdrGotLdr	Lloh182, Lloh183, Lloh184
	.loh AdrpLdrGotLdr	Lloh185, Lloh186, Lloh187
	.loh AdrpLdrGot	Lloh188, Lloh189
	.loh AdrpLdrGot	Lloh192, Lloh193
	.loh AdrpLdrGot	Lloh190, Lloh191
	.loh AdrpLdrGot	Lloh197, Lloh198
	.loh AdrpLdrGotLdr	Lloh194, Lloh195, Lloh196
	.loh AdrpLdrGotLdr	Lloh199, Lloh200, Lloh201
	.loh AdrpLdrGot	Lloh204, Lloh205
	.loh AdrpLdrGot	Lloh202, Lloh203
	.loh AdrpLdrGotLdr	Lloh206, Lloh207, Lloh208
	.loh AdrpLdrGot	Lloh209, Lloh210
	.loh AdrpLdrGot	Lloh211, Lloh212
	.loh AdrpLdrGotLdr	Lloh213, Lloh214, Lloh215
	.loh AdrpLdrGot	Lloh220, Lloh221
	.loh AdrpAdd	Lloh218, Lloh219
	.loh AdrpAdd	Lloh216, Lloh217
	.loh AdrpAdd	Lloh222, Lloh223
	.cfi_endproc
                                        ; -- End function
	.comm	_fte_match_param,4,2            ; @fte_match_param
	.comm	_outer_headers,4,2              ; @outer_headers
	.comm	_misc_parameters,4,2            ; @misc_parameters
	.comm	_FLOW_DISSECTOR_KEY_META,8,3    ; @FLOW_DISSECTOR_KEY_META
	.comm	_FLOW_DISSECTOR_KEY_CONTROL,8,3 ; @FLOW_DISSECTOR_KEY_CONTROL
	.comm	_FLOW_DISSECTOR_KEY_BASIC,8,3   ; @FLOW_DISSECTOR_KEY_BASIC
	.comm	_FLOW_DISSECTOR_KEY_ETH_ADDRS,8,3 ; @FLOW_DISSECTOR_KEY_ETH_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_VLAN,8,3    ; @FLOW_DISSECTOR_KEY_VLAN
	.comm	_FLOW_DISSECTOR_KEY_CVLAN,8,3   ; @FLOW_DISSECTOR_KEY_CVLAN
	.comm	_FLOW_DISSECTOR_KEY_IPV4_ADDRS,8,3 ; @FLOW_DISSECTOR_KEY_IPV4_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_IPV6_ADDRS,8,3 ; @FLOW_DISSECTOR_KEY_IPV6_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_PORTS,8,3   ; @FLOW_DISSECTOR_KEY_PORTS
	.comm	_FLOW_DISSECTOR_KEY_ENC_KEYID,8,3 ; @FLOW_DISSECTOR_KEY_ENC_KEYID
	.comm	_FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS,8,3 ; @FLOW_DISSECTOR_KEY_ENC_IPV4_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS,8,3 ; @FLOW_DISSECTOR_KEY_ENC_IPV6_ADDRS
	.comm	_FLOW_DISSECTOR_KEY_ENC_PORTS,8,3 ; @FLOW_DISSECTOR_KEY_ENC_PORTS
	.comm	_FLOW_DISSECTOR_KEY_ENC_CONTROL,8,3 ; @FLOW_DISSECTOR_KEY_ENC_CONTROL
	.comm	_FLOW_DISSECTOR_KEY_TCP,8,3     ; @FLOW_DISSECTOR_KEY_TCP
	.comm	_FLOW_DISSECTOR_KEY_IP,8,3      ; @FLOW_DISSECTOR_KEY_IP
	.comm	_FLOW_DISSECTOR_KEY_ENC_IP,8,3  ; @FLOW_DISSECTOR_KEY_ENC_IP
	.comm	_FLOW_DISSECTOR_KEY_ENC_OPTS,8,3 ; @FLOW_DISSECTOR_KEY_ENC_OPTS
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"Unsupported key"

l_.str.1:                               ; @.str.1
	.asciz	"Unsupported key used: 0x%x\n"

	.comm	_EOPNOTSUPP,4,2                 ; @EOPNOTSUPP
	.comm	_MLX5_FLOW_CONTEXT_ACTION_DECAP,4,2 ; @MLX5_FLOW_CONTEXT_ACTION_DECAP
	.comm	_fte_match_set_lyr_2_4,4,2      ; @fte_match_set_lyr_2_4
	.comm	_ethertype,4,2                  ; @ethertype
	.comm	_MLX5_MATCH_L2,8,3              ; @MLX5_MATCH_L2
	.comm	_ETH_P_8021AD,4,2               ; @ETH_P_8021AD
	.comm	_svlan_tag,4,2                  ; @svlan_tag
	.comm	_cvlan_tag,4,2                  ; @cvlan_tag
	.comm	_first_vid,4,2                  ; @first_vid
	.comm	_first_prio,4,2                 ; @first_prio
	.comm	_MLX5_MATCH_NONE,8,3            ; @MLX5_MATCH_NONE
	.comm	_fte_match_set_misc,4,2         ; @fte_match_set_misc
	.comm	_outer_second_svlan_tag,4,2     ; @outer_second_svlan_tag
	.comm	_outer_second_cvlan_tag,4,2     ; @outer_second_cvlan_tag
	.comm	_outer_second_vid,4,2           ; @outer_second_vid
	.comm	_outer_second_prio,4,2          ; @outer_second_prio
	.comm	_dmac_47_16,4,2                 ; @dmac_47_16
	.comm	_smac_47_16,4,2                 ; @smac_47_16
	.comm	_FLOW_DIS_FIRST_FRAG,4,2        ; @FLOW_DIS_FIRST_FRAG
	.comm	_FLOW_DIS_IS_FRAGMENT,4,2       ; @FLOW_DIS_IS_FRAGMENT
	.comm	_frag,4,2                       ; @frag
	.comm	_MLX5_MATCH_L3,8,3              ; @MLX5_MATCH_L3
	.comm	_ip_protocol,4,2                ; @ip_protocol
	.comm	_src_ipv4_src_ipv6,8,2          ; @src_ipv4_src_ipv6
	.comm	_dst_ipv4_dst_ipv6,8,2          ; @dst_ipv4_dst_ipv6
	.comm	_IPV6_ADDR_ANY,8,3              ; @IPV6_ADDR_ANY
	.comm	_ip_ecn,4,2                     ; @ip_ecn
	.comm	_ip_dscp,4,2                    ; @ip_dscp
	.comm	_ttl_hoplimit,4,2               ; @ttl_hoplimit
	.comm	_ft_field_support,4,2           ; @ft_field_support
l_.str.2:                               ; @.str.2
	.asciz	"Matching on TTL is not supported"

	.comm	_tcp_sport,4,2                  ; @tcp_sport
	.comm	_tcp_dport,4,2                  ; @tcp_dport
	.comm	_udp_sport,4,2                  ; @udp_sport
	.comm	_udp_dport,4,2                  ; @udp_dport
l_.str.3:                               ; @.str.3
	.asciz	"Only UDP and TCP transports are supported for L4 matching"

l_.str.4:                               ; @.str.4
	.asciz	"Only UDP and TCP transport are supported\n"

	.comm	_EINVAL,4,2                     ; @EINVAL
	.comm	_MLX5_MATCH_L4,8,3              ; @MLX5_MATCH_L4
	.comm	_tcp_flags,4,2                  ; @tcp_flags
	.no_dead_strip	___parse_cls_flower
.subsections_via_symbols
