	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function set_qp_rss
_set_qp_rss:                            ## @set_qp_rss
	.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
	pushq	%rax
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rcx, %rbx
	movq	(%rdx), %rax
	movq	8(%rax), %rcx
	movq	(%rcx), %rcx
	movl	(%rax), %eax
	shll	$24, %eax
	orl	(%rcx), %eax
	movl	%eax, (%rsi)
	movq	(%rbx), %rax
	movq	_MLX4_IB_RX_HASH_FUNC_TOEPLITZ@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_43
## %bb.1:
	movq	(%rdi), %rax
	movq	_MLX4_DEV_CAP_FLAG2_RSS_TOP@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	testl	%ecx, (%rax)
	je	LBB0_43
## %bb.2:
	movq	%rsi, %r15
	movq	%rdi, -48(%rbp)                 ## 8-byte Spill
	movl	8(%rsi), %edi
	movl	12(%rbx), %esi
	movq	_MLX4_EN_RSS_KEY_SIZE@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_memcpy
	movl	8(%rbx), %esi
	movq	_MLX4_IB_RX_HASH_SRC_IPV4@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movq	_MLX4_IB_RX_HASH_DST_IPV4@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ebx
	movl	%ebx, %edx
	orl	%eax, %edx
	movq	_MLX4_IB_RX_HASH_SRC_IPV6@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r13d
	movq	_MLX4_IB_RX_HASH_DST_IPV6@GOTPCREL(%rip), %rdi
	movl	(%rdi), %r8d
	movl	%r13d, %ecx
	orl	%r8d, %ecx
	orl	%edx, %ecx
	movq	_MLX4_IB_RX_HASH_SRC_PORT_TCP@GOTPCREL(%rip), %rdi
	movl	(%rdi), %r14d
	movq	_MLX4_IB_RX_HASH_DST_PORT_TCP@GOTPCREL(%rip), %rdi
	movl	(%rdi), %r9d
	movl	%r14d, %r10d
	orl	%r9d, %r10d
	movq	_MLX4_IB_RX_HASH_SRC_PORT_UDP@GOTPCREL(%rip), %rdi
	movl	(%rdi), %r11d
	orl	%r11d, %r10d
	orl	%ecx, %r10d
	movq	_MLX4_IB_RX_HASH_DST_PORT_UDP@GOTPCREL(%rip), %rcx
	movl	(%rcx), %r12d
	movq	_MLX4_IB_RX_HASH_INNER@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	movl	%r12d, %edi
	orl	%ecx, %edi
	orl	%r10d, %edi
	notl	%edi
	testl	%edi, %esi
	je	LBB0_4
## %bb.3:
	leaq	L_.str.1(%rip), %rdi
	xorl	%ebx, %ebx
	xorl	%eax, %eax
	callq	_pr_debug
	jmp	LBB0_41
LBB0_43:
	leaq	L_.str(%rip), %rdi
LBB0_40:
	xorl	%ebx, %ebx
	xorl	%eax, %eax
	callq	_pr_debug
LBB0_41:
	movq	_EOPNOTSUPP@GOTPCREL(%rip), %rax
	subl	(%rax), %ebx
LBB0_42:
	movl	%ebx, %eax
	addq	$8, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_4:
	testl	%esi, %eax
	je	LBB0_14
## %bb.5:
	andl	%esi, %ebx
	je	LBB0_14
## %bb.6:
	movq	_MLX4_RSS_IPV4@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	movl	%eax, 4(%r15)
	jmp	LBB0_7
LBB0_14:
	testl	%esi, %edx
	jne	LBB0_15
LBB0_7:
	testl	%esi, %r13d
	je	LBB0_16
## %bb.8:
	testl	%esi, %r8d
	je	LBB0_17
## %bb.9:
	movq	_MLX4_RSS_IPV6@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	orl	%eax, 4(%r15)
	jmp	LBB0_10
LBB0_16:
	testl	%esi, %r8d
	je	LBB0_10
LBB0_17:
	leaq	L_.str.3(%rip), %rdi
	jmp	LBB0_40
LBB0_10:
	testl	%esi, %r11d
	je	LBB0_24
## %bb.11:
	testl	%esi, %r12d
	je	LBB0_25
## %bb.12:
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movq	(%rax), %rax
	movq	_MLX4_DEV_CAP_FLAG_UDP_RSS@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	testl	%edx, 4(%rax)
	je	LBB0_13
## %bb.18:
	movl	4(%r15), %eax
	movq	_MLX4_RSS_IPV4@GOTPCREL(%rip), %rdx
	movl	(%rdx), %r8d
	testl	%eax, %r8d
	je	LBB0_20
## %bb.19:
	movq	_MLX4_RSS_UDP_IPV4@GOTPCREL(%rip), %rdx
	orl	(%rdx), %eax
	movl	%eax, 4(%r15)
LBB0_20:
	movq	_MLX4_RSS_IPV6@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	testl	%eax, %edx
	je	LBB0_22
## %bb.21:
	movq	_MLX4_RSS_UDP_IPV6@GOTPCREL(%rip), %rdi
	orl	(%rdi), %eax
	movl	%eax, 4(%r15)
LBB0_22:
	orl	%r8d, %edx
	testl	%edx, %eax
	jne	LBB0_26
## %bb.23:
	leaq	L_.str.5(%rip), %rdi
	jmp	LBB0_40
LBB0_15:
	leaq	L_.str.2(%rip), %rdi
	jmp	LBB0_40
LBB0_24:
	testl	%esi, %r12d
	je	LBB0_26
LBB0_25:
	leaq	L_.str.6(%rip), %rdi
	jmp	LBB0_40
LBB0_26:
	testl	%esi, %r14d
	je	LBB0_34
## %bb.27:
	testl	%esi, %r9d
	je	LBB0_35
## %bb.28:
	movl	4(%r15), %eax
	movq	_MLX4_RSS_IPV4@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edi
	testl	%eax, %edi
	je	LBB0_30
## %bb.29:
	movq	_MLX4_RSS_TCP_IPV4@GOTPCREL(%rip), %rdx
	orl	(%rdx), %eax
	movl	%eax, 4(%r15)
LBB0_30:
	movq	_MLX4_RSS_IPV6@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	testl	%eax, %edx
	je	LBB0_32
## %bb.31:
	movq	_MLX4_RSS_TCP_IPV6@GOTPCREL(%rip), %rbx
	orl	(%rbx), %eax
	movl	%eax, 4(%r15)
LBB0_32:
	orl	%edi, %edx
	testl	%edx, %eax
	jne	LBB0_36
## %bb.33:
	leaq	L_.str.7(%rip), %rdi
	jmp	LBB0_40
LBB0_13:
	leaq	L_.str.4(%rip), %rdi
	jmp	LBB0_40
LBB0_34:
	testl	%esi, %r9d
	je	LBB0_36
LBB0_35:
	leaq	L_.str.8(%rip), %rdi
	jmp	LBB0_40
LBB0_36:
	xorl	%ebx, %ebx
	testl	%esi, %ecx
	je	LBB0_42
## %bb.37:
	movq	-48(%rbp), %rax                 ## 8-byte Reload
	movq	(%rax), %rax
	movq	8(%rax), %rax
	movq	_MLX4_TUNNEL_OFFLOAD_MODE_VXLAN@GOTPCREL(%rip), %rcx
	cmpq	(%rcx), %rax
	jne	LBB0_39
## %bb.38:
	movq	_MLX4_RSS_BY_INNER_HEADERS_IPONLY@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	orl	%eax, 4(%r15)
	jmp	LBB0_42
LBB0_39:
	leaq	L_.str.9(%rip), %rdi
	jmp	LBB0_40
	.cfi_endproc
                                        ## -- End function
	.comm	_MLX4_IB_RX_HASH_FUNC_TOEPLITZ,8,3 ## @MLX4_IB_RX_HASH_FUNC_TOEPLITZ
	.comm	_MLX4_DEV_CAP_FLAG2_RSS_TOP,4,2 ## @MLX4_DEV_CAP_FLAG2_RSS_TOP
	.comm	_MLX4_EN_RSS_KEY_SIZE,4,2       ## @MLX4_EN_RSS_KEY_SIZE
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"RX Hash function is not supported\n"

	.comm	_EOPNOTSUPP,4,2                 ## @EOPNOTSUPP
	.comm	_MLX4_IB_RX_HASH_SRC_IPV4,4,2   ## @MLX4_IB_RX_HASH_SRC_IPV4
	.comm	_MLX4_IB_RX_HASH_DST_IPV4,4,2   ## @MLX4_IB_RX_HASH_DST_IPV4
	.comm	_MLX4_IB_RX_HASH_SRC_IPV6,4,2   ## @MLX4_IB_RX_HASH_SRC_IPV6
	.comm	_MLX4_IB_RX_HASH_DST_IPV6,4,2   ## @MLX4_IB_RX_HASH_DST_IPV6
	.comm	_MLX4_IB_RX_HASH_SRC_PORT_TCP,4,2 ## @MLX4_IB_RX_HASH_SRC_PORT_TCP
	.comm	_MLX4_IB_RX_HASH_DST_PORT_TCP,4,2 ## @MLX4_IB_RX_HASH_DST_PORT_TCP
	.comm	_MLX4_IB_RX_HASH_SRC_PORT_UDP,4,2 ## @MLX4_IB_RX_HASH_SRC_PORT_UDP
	.comm	_MLX4_IB_RX_HASH_DST_PORT_UDP,4,2 ## @MLX4_IB_RX_HASH_DST_PORT_UDP
	.comm	_MLX4_IB_RX_HASH_INNER,4,2      ## @MLX4_IB_RX_HASH_INNER
L_.str.1:                               ## @.str.1
	.asciz	"RX Hash fields_mask has unsupported mask (0x%llx)\n"

	.comm	_MLX4_RSS_IPV4,4,2              ## @MLX4_RSS_IPV4
L_.str.2:                               ## @.str.2
	.asciz	"RX Hash fields_mask is not supported - both IPv4 SRC and DST must be set\n"

	.comm	_MLX4_RSS_IPV6,4,2              ## @MLX4_RSS_IPV6
L_.str.3:                               ## @.str.3
	.asciz	"RX Hash fields_mask is not supported - both IPv6 SRC and DST must be set\n"

	.comm	_MLX4_DEV_CAP_FLAG_UDP_RSS,4,2  ## @MLX4_DEV_CAP_FLAG_UDP_RSS
L_.str.4:                               ## @.str.4
	.asciz	"RX Hash fields_mask for UDP is not supported\n"

	.comm	_MLX4_RSS_UDP_IPV4,4,2          ## @MLX4_RSS_UDP_IPV4
	.comm	_MLX4_RSS_UDP_IPV6,4,2          ## @MLX4_RSS_UDP_IPV6
L_.str.5:                               ## @.str.5
	.asciz	"RX Hash fields_mask is not supported - UDP must be set with IPv4 or IPv6\n"

L_.str.6:                               ## @.str.6
	.asciz	"RX Hash fields_mask is not supported - both UDP SRC and DST must be set\n"

	.comm	_MLX4_RSS_TCP_IPV4,4,2          ## @MLX4_RSS_TCP_IPV4
	.comm	_MLX4_RSS_TCP_IPV6,4,2          ## @MLX4_RSS_TCP_IPV6
L_.str.7:                               ## @.str.7
	.asciz	"RX Hash fields_mask is not supported - TCP must be set with IPv4 or IPv6\n"

L_.str.8:                               ## @.str.8
	.asciz	"RX Hash fields_mask is not supported - both TCP SRC and DST must be set\n"

	.comm	_MLX4_TUNNEL_OFFLOAD_MODE_VXLAN,8,3 ## @MLX4_TUNNEL_OFFLOAD_MODE_VXLAN
	.comm	_MLX4_RSS_BY_INNER_HEADERS_IPONLY,4,2 ## @MLX4_RSS_BY_INNER_HEADERS_IPONLY
L_.str.9:                               ## @.str.9
	.asciz	"RSS Hash for inner headers isn't supported\n"

	.no_dead_strip	_set_qp_rss
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function set_qp_rss
_set_qp_rss:                            ; @set_qp_rss
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #64
	.cfi_def_cfa_offset 64
	stp	x22, x21, [sp, #16]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #32]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #48]             ; 16-byte Folded Spill
	add	x29, sp, #48
	.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
	ldr	x8, [x2]
	ldr	x9, [x8, #8]
	ldr	x9, [x9]
	ldr	w9, [x9]
	ldr	w8, [x8]
	orr	w8, w9, w8, lsl #24
	str	w8, [x1]
	ldr	x8, [x3]
Lloh0:
	adrp	x9, _MLX4_IB_RX_HASH_FUNC_TOEPLITZ@GOTPAGE
Lloh1:
	ldr	x9, [x9, _MLX4_IB_RX_HASH_FUNC_TOEPLITZ@GOTPAGEOFF]
Lloh2:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_4
; %bb.1:
	mov	x20, x0
	ldr	x8, [x0]
	ldr	w8, [x8]
Lloh3:
	adrp	x9, _MLX4_DEV_CAP_FLAG2_RSS_TOP@GOTPAGE
Lloh4:
	ldr	x9, [x9, _MLX4_DEV_CAP_FLAG2_RSS_TOP@GOTPAGEOFF]
Lloh5:
	ldr	w9, [x9]
	tst	w9, w8
	b.eq	LBB0_4
; %bb.2:
	mov	x21, x3
	mov	x19, x1
	ldr	w0, [x1, #8]
	ldr	w1, [x3, #12]
Lloh6:
	adrp	x8, _MLX4_EN_RSS_KEY_SIZE@GOTPAGE
Lloh7:
	ldr	x8, [x8, _MLX4_EN_RSS_KEY_SIZE@GOTPAGEOFF]
Lloh8:
	ldr	w2, [x8]
	bl	_memcpy
	ldr	w8, [x21, #8]
Lloh9:
	adrp	x9, _MLX4_IB_RX_HASH_SRC_IPV4@GOTPAGE
Lloh10:
	ldr	x9, [x9, _MLX4_IB_RX_HASH_SRC_IPV4@GOTPAGEOFF]
Lloh11:
	ldr	w16, [x9]
Lloh12:
	adrp	x9, _MLX4_IB_RX_HASH_DST_IPV4@GOTPAGE
Lloh13:
	ldr	x9, [x9, _MLX4_IB_RX_HASH_DST_IPV4@GOTPAGEOFF]
Lloh14:
	ldr	w17, [x9]
	orr	w9, w17, w16
Lloh15:
	adrp	x10, _MLX4_IB_RX_HASH_SRC_IPV6@GOTPAGE
Lloh16:
	ldr	x10, [x10, _MLX4_IB_RX_HASH_SRC_IPV6@GOTPAGEOFF]
Lloh17:
	ldr	w14, [x10]
Lloh18:
	adrp	x10, _MLX4_IB_RX_HASH_DST_IPV6@GOTPAGE
Lloh19:
	ldr	x10, [x10, _MLX4_IB_RX_HASH_DST_IPV6@GOTPAGEOFF]
	orr	w9, w9, w14
Lloh20:
	ldr	w15, [x10]
	orr	w9, w9, w15
Lloh21:
	adrp	x10, _MLX4_IB_RX_HASH_SRC_PORT_TCP@GOTPAGE
Lloh22:
	ldr	x10, [x10, _MLX4_IB_RX_HASH_SRC_PORT_TCP@GOTPAGEOFF]
Lloh23:
	ldr	w10, [x10]
	orr	w9, w9, w10
Lloh24:
	adrp	x11, _MLX4_IB_RX_HASH_DST_PORT_TCP@GOTPAGE
Lloh25:
	ldr	x11, [x11, _MLX4_IB_RX_HASH_DST_PORT_TCP@GOTPAGEOFF]
Lloh26:
	ldr	w11, [x11]
Lloh27:
	adrp	x12, _MLX4_IB_RX_HASH_SRC_PORT_UDP@GOTPAGE
Lloh28:
	ldr	x12, [x12, _MLX4_IB_RX_HASH_SRC_PORT_UDP@GOTPAGEOFF]
	orr	w9, w9, w11
Lloh29:
	ldr	w12, [x12]
	orr	w9, w9, w12
Lloh30:
	adrp	x13, _MLX4_IB_RX_HASH_DST_PORT_UDP@GOTPAGE
Lloh31:
	ldr	x13, [x13, _MLX4_IB_RX_HASH_DST_PORT_UDP@GOTPAGEOFF]
Lloh32:
	ldr	w13, [x13]
	orr	w0, w9, w13
Lloh33:
	adrp	x9, _MLX4_IB_RX_HASH_INNER@GOTPAGE
Lloh34:
	ldr	x9, [x9, _MLX4_IB_RX_HASH_INNER@GOTPAGEOFF]
Lloh35:
	ldr	w9, [x9]
	orr	w0, w0, w9
	bics	wzr, w8, w0
	b.eq	LBB0_7
; %bb.3:
	str	x8, [sp]
Lloh36:
	adrp	x0, l_.str.1@PAGE
Lloh37:
	add	x0, x0, l_.str.1@PAGEOFF
	b	LBB0_5
LBB0_4:
Lloh38:
	adrp	x0, l_.str@PAGE
Lloh39:
	add	x0, x0, l_.str@PAGEOFF
LBB0_5:
	bl	_pr_debug
Lloh40:
	adrp	x8, _EOPNOTSUPP@GOTPAGE
Lloh41:
	ldr	x8, [x8, _EOPNOTSUPP@GOTPAGEOFF]
Lloh42:
	ldr	w8, [x8]
	neg	w0, w8
LBB0_6:
	ldp	x29, x30, [sp, #48]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #32]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #16]             ; 16-byte Folded Reload
	add	sp, sp, #64
	ret
LBB0_7:
	and	w17, w17, w8
	ands	w16, w16, w8
	b.eq	LBB0_10
; %bb.8:
	cbz	w17, LBB0_10
; %bb.9:
Lloh43:
	adrp	x16, _MLX4_RSS_IPV4@GOTPAGE
Lloh44:
	ldr	x16, [x16, _MLX4_RSS_IPV4@GOTPAGEOFF]
Lloh45:
	ldr	w16, [x16]
	str	w16, [x19, #4]
	b	LBB0_11
LBB0_10:
	orr	w16, w16, w17
	cbnz	w16, LBB0_25
LBB0_11:
	and	w15, w15, w8
	tst	w14, w8
	b.eq	LBB0_14
; %bb.12:
	cbz	w15, LBB0_15
; %bb.13:
Lloh46:
	adrp	x14, _MLX4_RSS_IPV6@GOTPAGE
Lloh47:
	ldr	x14, [x14, _MLX4_RSS_IPV6@GOTPAGEOFF]
Lloh48:
	ldr	w14, [x14]
	ldr	w15, [x19, #4]
	orr	w14, w15, w14
	str	w14, [x19, #4]
	b	LBB0_16
LBB0_14:
	cbz	w15, LBB0_16
LBB0_15:
Lloh49:
	adrp	x0, l_.str.3@PAGE
Lloh50:
	add	x0, x0, l_.str.3@PAGEOFF
	b	LBB0_5
LBB0_16:
	and	w13, w13, w8
	tst	w12, w8
	b.eq	LBB0_26
; %bb.17:
	cbz	w13, LBB0_27
; %bb.18:
	ldr	x12, [x20]
	ldr	w12, [x12, #4]
Lloh51:
	adrp	x13, _MLX4_DEV_CAP_FLAG_UDP_RSS@GOTPAGE
Lloh52:
	ldr	x13, [x13, _MLX4_DEV_CAP_FLAG_UDP_RSS@GOTPAGEOFF]
Lloh53:
	ldr	w13, [x13]
	tst	w13, w12
	b.eq	LBB0_36
; %bb.19:
	ldr	w12, [x19, #4]
Lloh54:
	adrp	x13, _MLX4_RSS_IPV4@GOTPAGE
Lloh55:
	ldr	x13, [x13, _MLX4_RSS_IPV4@GOTPAGEOFF]
Lloh56:
	ldr	w13, [x13]
	tst	w13, w12
	b.eq	LBB0_21
; %bb.20:
Lloh57:
	adrp	x14, _MLX4_RSS_UDP_IPV4@GOTPAGE
Lloh58:
	ldr	x14, [x14, _MLX4_RSS_UDP_IPV4@GOTPAGEOFF]
Lloh59:
	ldr	w14, [x14]
	orr	w12, w14, w12
	str	w12, [x19, #4]
LBB0_21:
Lloh60:
	adrp	x14, _MLX4_RSS_IPV6@GOTPAGE
Lloh61:
	ldr	x14, [x14, _MLX4_RSS_IPV6@GOTPAGEOFF]
Lloh62:
	ldr	w14, [x14]
	tst	w14, w12
	b.eq	LBB0_23
; %bb.22:
Lloh63:
	adrp	x15, _MLX4_RSS_UDP_IPV6@GOTPAGE
Lloh64:
	ldr	x15, [x15, _MLX4_RSS_UDP_IPV6@GOTPAGEOFF]
Lloh65:
	ldr	w15, [x15]
	orr	w12, w15, w12
	str	w12, [x19, #4]
LBB0_23:
	orr	w13, w14, w13
	tst	w12, w13
	b.ne	LBB0_28
; %bb.24:
Lloh66:
	adrp	x0, l_.str.5@PAGE
Lloh67:
	add	x0, x0, l_.str.5@PAGEOFF
	b	LBB0_5
LBB0_25:
Lloh68:
	adrp	x0, l_.str.2@PAGE
Lloh69:
	add	x0, x0, l_.str.2@PAGEOFF
	b	LBB0_5
LBB0_26:
	cbz	w13, LBB0_28
LBB0_27:
Lloh70:
	adrp	x0, l_.str.6@PAGE
Lloh71:
	add	x0, x0, l_.str.6@PAGEOFF
	b	LBB0_5
LBB0_28:
	and	w11, w11, w8
	tst	w10, w8
	b.eq	LBB0_37
; %bb.29:
	cbz	w11, LBB0_38
; %bb.30:
	ldr	w10, [x19, #4]
Lloh72:
	adrp	x11, _MLX4_RSS_IPV4@GOTPAGE
Lloh73:
	ldr	x11, [x11, _MLX4_RSS_IPV4@GOTPAGEOFF]
Lloh74:
	ldr	w11, [x11]
	tst	w11, w10
	b.eq	LBB0_32
; %bb.31:
Lloh75:
	adrp	x12, _MLX4_RSS_TCP_IPV4@GOTPAGE
Lloh76:
	ldr	x12, [x12, _MLX4_RSS_TCP_IPV4@GOTPAGEOFF]
Lloh77:
	ldr	w12, [x12]
	orr	w10, w12, w10
	str	w10, [x19, #4]
LBB0_32:
Lloh78:
	adrp	x12, _MLX4_RSS_IPV6@GOTPAGE
Lloh79:
	ldr	x12, [x12, _MLX4_RSS_IPV6@GOTPAGEOFF]
Lloh80:
	ldr	w12, [x12]
	tst	w12, w10
	b.eq	LBB0_34
; %bb.33:
Lloh81:
	adrp	x13, _MLX4_RSS_TCP_IPV6@GOTPAGE
Lloh82:
	ldr	x13, [x13, _MLX4_RSS_TCP_IPV6@GOTPAGEOFF]
Lloh83:
	ldr	w13, [x13]
	orr	w10, w13, w10
	str	w10, [x19, #4]
LBB0_34:
	orr	w11, w12, w11
	tst	w10, w11
	b.ne	LBB0_39
; %bb.35:
Lloh84:
	adrp	x0, l_.str.7@PAGE
Lloh85:
	add	x0, x0, l_.str.7@PAGEOFF
	b	LBB0_5
LBB0_36:
Lloh86:
	adrp	x0, l_.str.4@PAGE
Lloh87:
	add	x0, x0, l_.str.4@PAGEOFF
	b	LBB0_5
LBB0_37:
	cbz	w11, LBB0_39
LBB0_38:
Lloh88:
	adrp	x0, l_.str.8@PAGE
Lloh89:
	add	x0, x0, l_.str.8@PAGEOFF
	b	LBB0_5
LBB0_39:
	tst	w9, w8
	b.eq	LBB0_42
; %bb.40:
	ldr	x8, [x20]
	ldr	x8, [x8, #8]
Lloh90:
	adrp	x9, _MLX4_TUNNEL_OFFLOAD_MODE_VXLAN@GOTPAGE
Lloh91:
	ldr	x9, [x9, _MLX4_TUNNEL_OFFLOAD_MODE_VXLAN@GOTPAGEOFF]
Lloh92:
	ldr	x9, [x9]
	cmp	x8, x9
	b.ne	LBB0_43
; %bb.41:
	mov	w0, #0
Lloh93:
	adrp	x8, _MLX4_RSS_BY_INNER_HEADERS_IPONLY@GOTPAGE
Lloh94:
	ldr	x8, [x8, _MLX4_RSS_BY_INNER_HEADERS_IPONLY@GOTPAGEOFF]
Lloh95:
	ldr	w8, [x8]
	ldr	w9, [x19, #4]
	orr	w8, w9, w8
	str	w8, [x19, #4]
	b	LBB0_6
LBB0_42:
	mov	w0, #0
	b	LBB0_6
LBB0_43:
Lloh96:
	adrp	x0, l_.str.9@PAGE
Lloh97:
	add	x0, x0, l_.str.9@PAGEOFF
	b	LBB0_5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.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 AdrpAdd	Lloh36, Lloh37
	.loh AdrpAdd	Lloh38, Lloh39
	.loh AdrpLdrGotLdr	Lloh40, Lloh41, Lloh42
	.loh AdrpLdrGotLdr	Lloh43, Lloh44, Lloh45
	.loh AdrpLdrGotLdr	Lloh46, Lloh47, Lloh48
	.loh AdrpAdd	Lloh49, Lloh50
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpLdrGotLdr	Lloh54, Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh63, Lloh64, Lloh65
	.loh AdrpAdd	Lloh66, Lloh67
	.loh AdrpAdd	Lloh68, Lloh69
	.loh AdrpAdd	Lloh70, Lloh71
	.loh AdrpLdrGotLdr	Lloh72, Lloh73, Lloh74
	.loh AdrpLdrGotLdr	Lloh75, Lloh76, Lloh77
	.loh AdrpLdrGotLdr	Lloh78, Lloh79, Lloh80
	.loh AdrpLdrGotLdr	Lloh81, Lloh82, Lloh83
	.loh AdrpAdd	Lloh84, Lloh85
	.loh AdrpAdd	Lloh86, Lloh87
	.loh AdrpAdd	Lloh88, Lloh89
	.loh AdrpLdrGotLdr	Lloh90, Lloh91, Lloh92
	.loh AdrpLdrGotLdr	Lloh93, Lloh94, Lloh95
	.loh AdrpAdd	Lloh96, Lloh97
	.cfi_endproc
                                        ; -- End function
	.comm	_MLX4_IB_RX_HASH_FUNC_TOEPLITZ,8,3 ; @MLX4_IB_RX_HASH_FUNC_TOEPLITZ
	.comm	_MLX4_DEV_CAP_FLAG2_RSS_TOP,4,2 ; @MLX4_DEV_CAP_FLAG2_RSS_TOP
	.comm	_MLX4_EN_RSS_KEY_SIZE,4,2       ; @MLX4_EN_RSS_KEY_SIZE
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"RX Hash function is not supported\n"

	.comm	_EOPNOTSUPP,4,2                 ; @EOPNOTSUPP
	.comm	_MLX4_IB_RX_HASH_SRC_IPV4,4,2   ; @MLX4_IB_RX_HASH_SRC_IPV4
	.comm	_MLX4_IB_RX_HASH_DST_IPV4,4,2   ; @MLX4_IB_RX_HASH_DST_IPV4
	.comm	_MLX4_IB_RX_HASH_SRC_IPV6,4,2   ; @MLX4_IB_RX_HASH_SRC_IPV6
	.comm	_MLX4_IB_RX_HASH_DST_IPV6,4,2   ; @MLX4_IB_RX_HASH_DST_IPV6
	.comm	_MLX4_IB_RX_HASH_SRC_PORT_TCP,4,2 ; @MLX4_IB_RX_HASH_SRC_PORT_TCP
	.comm	_MLX4_IB_RX_HASH_DST_PORT_TCP,4,2 ; @MLX4_IB_RX_HASH_DST_PORT_TCP
	.comm	_MLX4_IB_RX_HASH_SRC_PORT_UDP,4,2 ; @MLX4_IB_RX_HASH_SRC_PORT_UDP
	.comm	_MLX4_IB_RX_HASH_DST_PORT_UDP,4,2 ; @MLX4_IB_RX_HASH_DST_PORT_UDP
	.comm	_MLX4_IB_RX_HASH_INNER,4,2      ; @MLX4_IB_RX_HASH_INNER
l_.str.1:                               ; @.str.1
	.asciz	"RX Hash fields_mask has unsupported mask (0x%llx)\n"

	.comm	_MLX4_RSS_IPV4,4,2              ; @MLX4_RSS_IPV4
l_.str.2:                               ; @.str.2
	.asciz	"RX Hash fields_mask is not supported - both IPv4 SRC and DST must be set\n"

	.comm	_MLX4_RSS_IPV6,4,2              ; @MLX4_RSS_IPV6
l_.str.3:                               ; @.str.3
	.asciz	"RX Hash fields_mask is not supported - both IPv6 SRC and DST must be set\n"

	.comm	_MLX4_DEV_CAP_FLAG_UDP_RSS,4,2  ; @MLX4_DEV_CAP_FLAG_UDP_RSS
l_.str.4:                               ; @.str.4
	.asciz	"RX Hash fields_mask for UDP is not supported\n"

	.comm	_MLX4_RSS_UDP_IPV4,4,2          ; @MLX4_RSS_UDP_IPV4
	.comm	_MLX4_RSS_UDP_IPV6,4,2          ; @MLX4_RSS_UDP_IPV6
l_.str.5:                               ; @.str.5
	.asciz	"RX Hash fields_mask is not supported - UDP must be set with IPv4 or IPv6\n"

l_.str.6:                               ; @.str.6
	.asciz	"RX Hash fields_mask is not supported - both UDP SRC and DST must be set\n"

	.comm	_MLX4_RSS_TCP_IPV4,4,2          ; @MLX4_RSS_TCP_IPV4
	.comm	_MLX4_RSS_TCP_IPV6,4,2          ; @MLX4_RSS_TCP_IPV6
l_.str.7:                               ; @.str.7
	.asciz	"RX Hash fields_mask is not supported - TCP must be set with IPv4 or IPv6\n"

l_.str.8:                               ; @.str.8
	.asciz	"RX Hash fields_mask is not supported - both TCP SRC and DST must be set\n"

	.comm	_MLX4_TUNNEL_OFFLOAD_MODE_VXLAN,8,3 ; @MLX4_TUNNEL_OFFLOAD_MODE_VXLAN
	.comm	_MLX4_RSS_BY_INNER_HEADERS_IPONLY,4,2 ; @MLX4_RSS_BY_INNER_HEADERS_IPONLY
l_.str.9:                               ; @.str.9
	.asciz	"RSS Hash for inner headers isn't supported\n"

	.no_dead_strip	_set_qp_rss
.subsections_via_symbols
