	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function hns_roce_v2_write_srqc
_hns_roce_v2_write_srqc:                ## @hns_roce_v2_write_srqc
	.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	$40, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%r9, %rbx
	movl	%r8d, -60(%rbp)                 ## 4-byte Spill
	movl	%ecx, -48(%rbp)                 ## 4-byte Spill
	movl	%edx, -52(%rbp)                 ## 4-byte Spill
	movq	%rsi, %r13
	movq	%rdi, %r14
	movl	40(%rbp), %eax
	movl	%eax, -56(%rbp)                 ## 4-byte Spill
	movq	24(%rbp), %rax
	movq	%rax, -72(%rbp)                 ## 8-byte Spill
	movl	32(%rbp), %eax
	movl	%eax, -44(%rbp)                 ## 4-byte Spill
	xorl	%r12d, %r12d
	movq	%r9, %rdi
	xorl	%esi, %esi
	movl	$88, %edx
	callq	_memset
	movl	80(%rbx), %edi
	movq	_SRQC_BYTE_4_SRQ_ST_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_4_SRQ_ST_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	$1, %ecx
	callq	_roce_set_field
	movl	80(%rbx), %edi
	movq	_SRQC_BYTE_4_SRQ_WQE_HOP_NUM_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_4_SRQ_WQE_HOP_NUM_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	%r14, -80(%rbp)                 ## 8-byte Spill
	movq	(%r14), %rcx
	movq	_HNS_ROCE_HOP_NUM_0@GOTPCREL(%rip), %rax
	cmpq	(%rax), %rcx
	cmovel	%r12d, %ecx
                                        ## kill: def $ecx killed $ecx killed $rcx
	callq	_roce_set_field
	movl	80(%rbx), %r14d
	movq	_SRQC_BYTE_4_SRQ_SHIFT_M@GOTPCREL(%rip), %rax
	movl	(%rax), %r12d
	movq	_SRQC_BYTE_4_SRQ_SHIFT_S@GOTPCREL(%rip), %rax
	movl	(%rax), %r15d
	movl	16(%r13), %edi
	callq	_ilog2
	movl	%r14d, %edi
	movl	%r12d, %esi
	movl	%r15d, %edx
	movl	%eax, %ecx
	callq	_roce_set_field
	movl	80(%rbx), %edi
	movq	_SRQC_BYTE_4_SRQN_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_4_SRQN_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	(%r13), %ecx
	callq	_roce_set_field
	movl	76(%rbx), %edi
	movq	_SRQC_BYTE_8_SRQ_LIMIT_WL_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_8_SRQ_LIMIT_WL_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	xorl	%ecx, %ecx
	callq	_roce_set_field
	movl	72(%rbx), %edi
	movq	_SRQC_BYTE_12_SRQ_XRCD_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_12_SRQ_XRCD_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	-48(%rbp), %ecx                 ## 4-byte Reload
	callq	_roce_set_field
	movl	-44(%rbp), %edi                 ## 4-byte Reload
	sarl	$3, %edi
	callq	_cpu_to_le32
	movq	%rax, 64(%rbx)
	movl	60(%rbx), %edi
	movq	_SRQC_BYTE_24_SRQ_WQE_BT_BA_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_24_SRQ_WQE_BT_BA_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_roce_set_field
	movl	56(%rbx), %edi
	movq	_SRQC_BYTE_28_PD_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_28_PD_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	-52(%rbp), %ecx                 ## 4-byte Reload
	callq	_roce_set_field
	movl	56(%rbx), %r15d
	movq	_SRQC_BYTE_28_RQWS_M@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	movq	_SRQC_BYTE_28_RQWS_S@GOTPCREL(%rip), %rax
	movl	(%rax), %r12d
	movq	8(%r13), %rdi
	movl	$0, %ecx
	testq	%rdi, %rdi
	jle	LBB0_2
## %bb.1:
	decq	%rdi
	callq	_fls
	movl	%eax, %ecx
LBB0_2:
	movl	%r15d, %edi
	movl	%r14d, %esi
	movl	%r12d, %edx
	callq	_roce_set_field
	movl	-56(%rbp), %edi                 ## 4-byte Reload
	sarl	$3, %edi
	callq	_cpu_to_le32
	movq	%rax, 48(%rbx)
	movl	40(%rbx), %edi
	movq	_SRQC_BYTE_36_SRQ_IDX_BT_BA_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_36_SRQ_IDX_BT_BA_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	callq	_roce_set_field
	movq	-72(%rbp), %r12                 ## 8-byte Reload
	movl	(%r12), %edi
	movq	_PAGE_ADDR_SHIFT@GOTPCREL(%rip), %r14
	movb	(%r14), %cl
	sarl	%cl, %edi
	callq	_cpu_to_le32
	movq	%rax, 32(%rbx)
	movl	24(%rbx), %edi
	movq	_SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	(%r12), %eax
	movb	(%r14), %cl
	sarl	%cl, %eax
	movl	%eax, %ecx
	callq	_roce_set_field
	movl	24(%rbx), %edi
	movq	_SRQC_BYTE_44_SRQ_IDX_HOP_NUM_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_44_SRQ_IDX_HOP_NUM_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	-80(%rbp), %r15                 ## 8-byte Reload
	movq	8(%r15), %rcx
	movq	_HNS_ROCE_HOP_NUM_0@GOTPCREL(%rip), %rax
	cmpq	(%rax), %rcx
	movl	$0, %eax
	cmovel	%eax, %ecx
                                        ## kill: def $ecx killed $ecx killed $rcx
	callq	_roce_set_field
	movl	24(%rbx), %edi
	movq	_SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	16(%r15), %ecx
	callq	_roce_set_field
	movl	24(%rbx), %edi
	movq	_SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	20(%r15), %ecx
	callq	_roce_set_field
	movl	4(%r12), %edi
	movb	(%r14), %cl
	sarl	%cl, %edi
	callq	_cpu_to_le32
	movq	%rax, 16(%rbx)
	movl	8(%rbx), %edi
	movq	_SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	4(%r12), %eax
	movb	(%r14), %cl
	sarl	%cl, %eax
	movl	%eax, %ecx
	callq	_roce_set_field
	movl	4(%rbx), %edi
	movq	_SRQC_BYTE_56_SRQ_XRC_CQN_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_56_SRQ_XRC_CQN_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	-60(%rbp), %ecx                 ## 4-byte Reload
	callq	_roce_set_field
	movl	4(%rbx), %edi
	movq	_SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movq	_PG_SHIFT_OFFSET@GOTPCREL(%rip), %r14
	movl	(%r14), %ecx
	addl	24(%r15), %ecx
	callq	_roce_set_field
	movl	4(%rbx), %edi
	movq	_SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_M@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	_SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_S@GOTPCREL(%rip), %rax
	movl	(%rax), %edx
	movl	(%r14), %ecx
	addl	28(%r15), %ecx
	callq	_roce_set_field
	movl	(%rbx), %edi
	movq	_SRQC_BYTE_60_SRQ_RECORD_EN_S@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	xorl	%edx, %edx
	addq	$40, %rsp
	popq	%rbx
	popq	%r12
	popq	%r13
	popq	%r14
	popq	%r15
	popq	%rbp
	jmp	_roce_set_bit                   ## TAILCALL
	.cfi_endproc
                                        ## -- End function
	.comm	_SRQC_BYTE_4_SRQ_ST_M,4,2       ## @SRQC_BYTE_4_SRQ_ST_M
	.comm	_SRQC_BYTE_4_SRQ_ST_S,4,2       ## @SRQC_BYTE_4_SRQ_ST_S
	.comm	_SRQC_BYTE_4_SRQ_WQE_HOP_NUM_M,4,2 ## @SRQC_BYTE_4_SRQ_WQE_HOP_NUM_M
	.comm	_SRQC_BYTE_4_SRQ_WQE_HOP_NUM_S,4,2 ## @SRQC_BYTE_4_SRQ_WQE_HOP_NUM_S
	.comm	_HNS_ROCE_HOP_NUM_0,8,3         ## @HNS_ROCE_HOP_NUM_0
	.comm	_SRQC_BYTE_4_SRQ_SHIFT_M,4,2    ## @SRQC_BYTE_4_SRQ_SHIFT_M
	.comm	_SRQC_BYTE_4_SRQ_SHIFT_S,4,2    ## @SRQC_BYTE_4_SRQ_SHIFT_S
	.comm	_SRQC_BYTE_4_SRQN_M,4,2         ## @SRQC_BYTE_4_SRQN_M
	.comm	_SRQC_BYTE_4_SRQN_S,4,2         ## @SRQC_BYTE_4_SRQN_S
	.comm	_SRQC_BYTE_8_SRQ_LIMIT_WL_M,4,2 ## @SRQC_BYTE_8_SRQ_LIMIT_WL_M
	.comm	_SRQC_BYTE_8_SRQ_LIMIT_WL_S,4,2 ## @SRQC_BYTE_8_SRQ_LIMIT_WL_S
	.comm	_SRQC_BYTE_12_SRQ_XRCD_M,4,2    ## @SRQC_BYTE_12_SRQ_XRCD_M
	.comm	_SRQC_BYTE_12_SRQ_XRCD_S,4,2    ## @SRQC_BYTE_12_SRQ_XRCD_S
	.comm	_SRQC_BYTE_24_SRQ_WQE_BT_BA_M,4,2 ## @SRQC_BYTE_24_SRQ_WQE_BT_BA_M
	.comm	_SRQC_BYTE_24_SRQ_WQE_BT_BA_S,4,2 ## @SRQC_BYTE_24_SRQ_WQE_BT_BA_S
	.comm	_SRQC_BYTE_28_PD_M,4,2          ## @SRQC_BYTE_28_PD_M
	.comm	_SRQC_BYTE_28_PD_S,4,2          ## @SRQC_BYTE_28_PD_S
	.comm	_SRQC_BYTE_28_RQWS_M,4,2        ## @SRQC_BYTE_28_RQWS_M
	.comm	_SRQC_BYTE_28_RQWS_S,4,2        ## @SRQC_BYTE_28_RQWS_S
	.comm	_SRQC_BYTE_36_SRQ_IDX_BT_BA_M,4,2 ## @SRQC_BYTE_36_SRQ_IDX_BT_BA_M
	.comm	_SRQC_BYTE_36_SRQ_IDX_BT_BA_S,4,2 ## @SRQC_BYTE_36_SRQ_IDX_BT_BA_S
	.comm	_PAGE_ADDR_SHIFT,4,2            ## @PAGE_ADDR_SHIFT
	.comm	_SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_M,4,2 ## @SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_M
	.comm	_SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_S,4,2 ## @SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_S
	.comm	_SRQC_BYTE_44_SRQ_IDX_HOP_NUM_M,4,2 ## @SRQC_BYTE_44_SRQ_IDX_HOP_NUM_M
	.comm	_SRQC_BYTE_44_SRQ_IDX_HOP_NUM_S,4,2 ## @SRQC_BYTE_44_SRQ_IDX_HOP_NUM_S
	.comm	_SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_M,4,2 ## @SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_M
	.comm	_SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_S,4,2 ## @SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_S
	.comm	_SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_M,4,2 ## @SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_M
	.comm	_SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_S,4,2 ## @SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_S
	.comm	_SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_M,4,2 ## @SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_M
	.comm	_SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_S,4,2 ## @SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_S
	.comm	_SRQC_BYTE_56_SRQ_XRC_CQN_M,4,2 ## @SRQC_BYTE_56_SRQ_XRC_CQN_M
	.comm	_SRQC_BYTE_56_SRQ_XRC_CQN_S,4,2 ## @SRQC_BYTE_56_SRQ_XRC_CQN_S
	.comm	_SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_M,4,2 ## @SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_M
	.comm	_SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_S,4,2 ## @SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_S
	.comm	_PG_SHIFT_OFFSET,4,2            ## @PG_SHIFT_OFFSET
	.comm	_SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_M,4,2 ## @SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_M
	.comm	_SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_S,4,2 ## @SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_S
	.comm	_SRQC_BYTE_60_SRQ_RECORD_EN_S,4,2 ## @SRQC_BYTE_60_SRQ_RECORD_EN_S
	.no_dead_strip	_hns_roce_v2_write_srqc
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function hns_roce_v2_write_srqc
_hns_roce_v2_write_srqc:                ; @hns_roce_v2_write_srqc
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #112
	.cfi_def_cfa_offset 112
	stp	x28, x27, [sp, #16]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #32]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #48]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #64]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #80]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #96]             ; 16-byte Folded Spill
	add	x29, sp, #96
	.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
	mov	x22, x7
	mov	x19, x5
	str	w4, [sp, #12]                   ; 4-byte Folded Spill
	mov	x25, x3
	mov	x24, x2
	mov	x23, x1
	mov	x20, x0
	ldr	w8, [x29, #20]
	str	w8, [sp, #8]                    ; 4-byte Folded Spill
	ldr	w21, [x29, #16]
	mov	x0, x5
	mov	w1, #0
	mov	w2, #88
	bl	_memset
	ldr	w0, [x19, #80]
Lloh0:
	adrp	x8, _SRQC_BYTE_4_SRQ_ST_M@GOTPAGE
Lloh1:
	ldr	x8, [x8, _SRQC_BYTE_4_SRQ_ST_M@GOTPAGEOFF]
Lloh2:
	ldr	w1, [x8]
Lloh3:
	adrp	x8, _SRQC_BYTE_4_SRQ_ST_S@GOTPAGE
Lloh4:
	ldr	x8, [x8, _SRQC_BYTE_4_SRQ_ST_S@GOTPAGEOFF]
Lloh5:
	ldr	w2, [x8]
	mov	w3, #1
	bl	_roce_set_field
	ldr	w0, [x19, #80]
Lloh6:
	adrp	x8, _SRQC_BYTE_4_SRQ_WQE_HOP_NUM_M@GOTPAGE
Lloh7:
	ldr	x8, [x8, _SRQC_BYTE_4_SRQ_WQE_HOP_NUM_M@GOTPAGEOFF]
Lloh8:
	ldr	w1, [x8]
Lloh9:
	adrp	x8, _SRQC_BYTE_4_SRQ_WQE_HOP_NUM_S@GOTPAGE
Lloh10:
	ldr	x8, [x8, _SRQC_BYTE_4_SRQ_WQE_HOP_NUM_S@GOTPAGEOFF]
Lloh11:
	ldr	w2, [x8]
	ldr	x8, [x20]
Lloh12:
	adrp	x9, _HNS_ROCE_HOP_NUM_0@GOTPAGE
Lloh13:
	ldr	x9, [x9, _HNS_ROCE_HOP_NUM_0@GOTPAGEOFF]
Lloh14:
	ldr	x9, [x9]
	cmp	x8, x9
	csel	w3, wzr, w8, eq
	bl	_roce_set_field
Lloh15:
	adrp	x8, _SRQC_BYTE_4_SRQ_SHIFT_M@GOTPAGE
Lloh16:
	ldr	x8, [x8, _SRQC_BYTE_4_SRQ_SHIFT_M@GOTPAGEOFF]
	ldr	w26, [x19, #80]
Lloh17:
	ldr	w27, [x8]
Lloh18:
	adrp	x8, _SRQC_BYTE_4_SRQ_SHIFT_S@GOTPAGE
Lloh19:
	ldr	x8, [x8, _SRQC_BYTE_4_SRQ_SHIFT_S@GOTPAGEOFF]
Lloh20:
	ldr	w28, [x8]
	ldr	w0, [x23, #16]
	bl	_ilog2
	mov	x3, x0
	mov	x0, x26
	mov	x1, x27
	mov	x2, x28
	bl	_roce_set_field
Lloh21:
	adrp	x8, _SRQC_BYTE_4_SRQN_M@GOTPAGE
Lloh22:
	ldr	x8, [x8, _SRQC_BYTE_4_SRQN_M@GOTPAGEOFF]
	ldr	w0, [x19, #80]
Lloh23:
	ldr	w1, [x8]
Lloh24:
	adrp	x8, _SRQC_BYTE_4_SRQN_S@GOTPAGE
Lloh25:
	ldr	x8, [x8, _SRQC_BYTE_4_SRQN_S@GOTPAGEOFF]
Lloh26:
	ldr	w2, [x8]
	ldr	w3, [x23]
	bl	_roce_set_field
	ldr	w0, [x19, #76]
Lloh27:
	adrp	x8, _SRQC_BYTE_8_SRQ_LIMIT_WL_M@GOTPAGE
Lloh28:
	ldr	x8, [x8, _SRQC_BYTE_8_SRQ_LIMIT_WL_M@GOTPAGEOFF]
Lloh29:
	ldr	w1, [x8]
Lloh30:
	adrp	x8, _SRQC_BYTE_8_SRQ_LIMIT_WL_S@GOTPAGE
Lloh31:
	ldr	x8, [x8, _SRQC_BYTE_8_SRQ_LIMIT_WL_S@GOTPAGEOFF]
Lloh32:
	ldr	w2, [x8]
	mov	w3, #0
	bl	_roce_set_field
	ldr	w0, [x19, #72]
Lloh33:
	adrp	x8, _SRQC_BYTE_12_SRQ_XRCD_M@GOTPAGE
Lloh34:
	ldr	x8, [x8, _SRQC_BYTE_12_SRQ_XRCD_M@GOTPAGEOFF]
Lloh35:
	ldr	w1, [x8]
Lloh36:
	adrp	x8, _SRQC_BYTE_12_SRQ_XRCD_S@GOTPAGE
Lloh37:
	ldr	x8, [x8, _SRQC_BYTE_12_SRQ_XRCD_S@GOTPAGEOFF]
Lloh38:
	ldr	w2, [x8]
	mov	x3, x25
	bl	_roce_set_field
	asr	w0, w21, #3
	bl	_cpu_to_le32
	str	x0, [x19, #64]
	ldr	w0, [x19, #60]
Lloh39:
	adrp	x8, _SRQC_BYTE_24_SRQ_WQE_BT_BA_M@GOTPAGE
Lloh40:
	ldr	x8, [x8, _SRQC_BYTE_24_SRQ_WQE_BT_BA_M@GOTPAGEOFF]
Lloh41:
	ldr	w1, [x8]
Lloh42:
	adrp	x8, _SRQC_BYTE_24_SRQ_WQE_BT_BA_S@GOTPAGE
Lloh43:
	ldr	x8, [x8, _SRQC_BYTE_24_SRQ_WQE_BT_BA_S@GOTPAGEOFF]
Lloh44:
	ldr	w2, [x8]
	bl	_roce_set_field
	ldr	w0, [x19, #56]
Lloh45:
	adrp	x8, _SRQC_BYTE_28_PD_M@GOTPAGE
Lloh46:
	ldr	x8, [x8, _SRQC_BYTE_28_PD_M@GOTPAGEOFF]
Lloh47:
	ldr	w1, [x8]
Lloh48:
	adrp	x8, _SRQC_BYTE_28_PD_S@GOTPAGE
Lloh49:
	ldr	x8, [x8, _SRQC_BYTE_28_PD_S@GOTPAGEOFF]
Lloh50:
	ldr	w2, [x8]
	mov	x3, x24
	bl	_roce_set_field
	ldr	w24, [x19, #56]
Lloh51:
	adrp	x8, _SRQC_BYTE_28_RQWS_M@GOTPAGE
Lloh52:
	ldr	x8, [x8, _SRQC_BYTE_28_RQWS_M@GOTPAGEOFF]
Lloh53:
	ldr	w25, [x8]
Lloh54:
	adrp	x8, _SRQC_BYTE_28_RQWS_S@GOTPAGE
Lloh55:
	ldr	x8, [x8, _SRQC_BYTE_28_RQWS_S@GOTPAGEOFF]
Lloh56:
	ldr	w26, [x8]
	ldr	x8, [x23, #8]
	subs	x0, x8, #1
	b.lt	LBB0_2
; %bb.1:
	bl	_fls
	mov	x3, x0
	b	LBB0_3
LBB0_2:
	mov	w3, #0
LBB0_3:
	mov	x0, x24
	mov	x1, x25
	mov	x2, x26
	bl	_roce_set_field
	ldr	w8, [sp, #8]                    ; 4-byte Folded Reload
	asr	w0, w8, #3
	bl	_cpu_to_le32
	str	x0, [x19, #48]
	ldr	w0, [x19, #40]
Lloh57:
	adrp	x8, _SRQC_BYTE_36_SRQ_IDX_BT_BA_M@GOTPAGE
Lloh58:
	ldr	x8, [x8, _SRQC_BYTE_36_SRQ_IDX_BT_BA_M@GOTPAGEOFF]
Lloh59:
	ldr	w1, [x8]
Lloh60:
	adrp	x8, _SRQC_BYTE_36_SRQ_IDX_BT_BA_S@GOTPAGE
Lloh61:
	ldr	x8, [x8, _SRQC_BYTE_36_SRQ_IDX_BT_BA_S@GOTPAGEOFF]
Lloh62:
	ldr	w2, [x8]
	bl	_roce_set_field
	ldr	w8, [x22]
Lloh63:
	adrp	x21, _PAGE_ADDR_SHIFT@GOTPAGE
Lloh64:
	ldr	x21, [x21, _PAGE_ADDR_SHIFT@GOTPAGEOFF]
	ldr	w9, [x21]
	asr	w0, w8, w9
	bl	_cpu_to_le32
	str	x0, [x19, #32]
	ldr	w0, [x19, #24]
Lloh65:
	adrp	x8, _SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_M@GOTPAGE
Lloh66:
	ldr	x8, [x8, _SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_M@GOTPAGEOFF]
Lloh67:
	ldr	w1, [x8]
Lloh68:
	adrp	x8, _SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_S@GOTPAGE
Lloh69:
	ldr	x8, [x8, _SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_S@GOTPAGEOFF]
Lloh70:
	ldr	w2, [x8]
	ldr	w8, [x22]
	ldr	w9, [x21]
	asr	w3, w8, w9
	bl	_roce_set_field
	ldr	w0, [x19, #24]
Lloh71:
	adrp	x8, _SRQC_BYTE_44_SRQ_IDX_HOP_NUM_M@GOTPAGE
Lloh72:
	ldr	x8, [x8, _SRQC_BYTE_44_SRQ_IDX_HOP_NUM_M@GOTPAGEOFF]
Lloh73:
	adrp	x9, _SRQC_BYTE_44_SRQ_IDX_HOP_NUM_S@GOTPAGE
Lloh74:
	ldr	x9, [x9, _SRQC_BYTE_44_SRQ_IDX_HOP_NUM_S@GOTPAGEOFF]
Lloh75:
	ldr	w1, [x8]
Lloh76:
	ldr	w2, [x9]
	ldr	x8, [x20, #8]
Lloh77:
	adrp	x9, _HNS_ROCE_HOP_NUM_0@GOTPAGE
Lloh78:
	ldr	x9, [x9, _HNS_ROCE_HOP_NUM_0@GOTPAGEOFF]
Lloh79:
	ldr	x9, [x9]
	cmp	x8, x9
	csel	w3, wzr, w8, eq
	bl	_roce_set_field
Lloh80:
	adrp	x8, _SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_M@GOTPAGE
Lloh81:
	ldr	x8, [x8, _SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_M@GOTPAGEOFF]
	ldr	w0, [x19, #24]
Lloh82:
	ldr	w1, [x8]
Lloh83:
	adrp	x8, _SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_S@GOTPAGE
Lloh84:
	ldr	x8, [x8, _SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_S@GOTPAGEOFF]
Lloh85:
	ldr	w2, [x8]
	ldr	w3, [x20, #16]
	bl	_roce_set_field
Lloh86:
	adrp	x8, _SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_M@GOTPAGE
Lloh87:
	ldr	x8, [x8, _SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_M@GOTPAGEOFF]
	ldr	w0, [x19, #24]
Lloh88:
	ldr	w1, [x8]
Lloh89:
	adrp	x8, _SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_S@GOTPAGE
Lloh90:
	ldr	x8, [x8, _SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_S@GOTPAGEOFF]
Lloh91:
	ldr	w2, [x8]
	ldr	w3, [x20, #20]
	bl	_roce_set_field
	ldr	w8, [x22, #4]
	ldr	w9, [x21]
	asr	w0, w8, w9
	bl	_cpu_to_le32
	str	x0, [x19, #16]
	ldr	w0, [x19, #8]
Lloh92:
	adrp	x8, _SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_M@GOTPAGE
Lloh93:
	ldr	x8, [x8, _SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_M@GOTPAGEOFF]
Lloh94:
	ldr	w1, [x8]
Lloh95:
	adrp	x8, _SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_S@GOTPAGE
Lloh96:
	ldr	x8, [x8, _SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_S@GOTPAGEOFF]
Lloh97:
	ldr	w2, [x8]
	ldr	w8, [x22, #4]
	ldr	w9, [x21]
	asr	w3, w8, w9
	bl	_roce_set_field
	ldr	w0, [x19, #4]
Lloh98:
	adrp	x8, _SRQC_BYTE_56_SRQ_XRC_CQN_M@GOTPAGE
Lloh99:
	ldr	x8, [x8, _SRQC_BYTE_56_SRQ_XRC_CQN_M@GOTPAGEOFF]
Lloh100:
	ldr	w1, [x8]
Lloh101:
	adrp	x8, _SRQC_BYTE_56_SRQ_XRC_CQN_S@GOTPAGE
Lloh102:
	ldr	x8, [x8, _SRQC_BYTE_56_SRQ_XRC_CQN_S@GOTPAGEOFF]
Lloh103:
	ldr	w2, [x8]
	ldr	w3, [sp, #12]                   ; 4-byte Folded Reload
	bl	_roce_set_field
	ldr	w0, [x19, #4]
Lloh104:
	adrp	x8, _SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_M@GOTPAGE
Lloh105:
	ldr	x8, [x8, _SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_M@GOTPAGEOFF]
Lloh106:
	ldr	w1, [x8]
Lloh107:
	adrp	x8, _SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_S@GOTPAGE
Lloh108:
	ldr	x8, [x8, _SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_S@GOTPAGEOFF]
Lloh109:
	ldr	w2, [x8]
	ldr	w8, [x20, #24]
Lloh110:
	adrp	x21, _PG_SHIFT_OFFSET@GOTPAGE
Lloh111:
	ldr	x21, [x21, _PG_SHIFT_OFFSET@GOTPAGEOFF]
	ldr	w9, [x21]
	add	w3, w9, w8
	bl	_roce_set_field
	ldr	w0, [x19, #4]
Lloh112:
	adrp	x8, _SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_M@GOTPAGE
Lloh113:
	ldr	x8, [x8, _SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_M@GOTPAGEOFF]
Lloh114:
	ldr	w1, [x8]
Lloh115:
	adrp	x8, _SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_S@GOTPAGE
Lloh116:
	ldr	x8, [x8, _SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_S@GOTPAGEOFF]
Lloh117:
	ldr	w2, [x8]
	ldr	w8, [x20, #28]
	ldr	w9, [x21]
	add	w3, w9, w8
	bl	_roce_set_field
	ldr	w0, [x19]
Lloh118:
	adrp	x8, _SRQC_BYTE_60_SRQ_RECORD_EN_S@GOTPAGE
Lloh119:
	ldr	x8, [x8, _SRQC_BYTE_60_SRQ_RECORD_EN_S@GOTPAGEOFF]
Lloh120:
	ldr	w1, [x8]
	mov	w2, #0
	ldp	x29, x30, [sp, #96]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #80]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #64]             ; 16-byte Folded Reload
	ldp	x24, x23, [sp, #48]             ; 16-byte Folded Reload
	ldp	x26, x25, [sp, #32]             ; 16-byte Folded Reload
	ldp	x28, x27, [sp, #16]             ; 16-byte Folded Reload
	add	sp, sp, #112
	b	_roce_set_bit
	.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 AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh118, Lloh119, Lloh120
	.loh AdrpLdrGotLdr	Lloh115, Lloh116, Lloh117
	.loh AdrpLdrGotLdr	Lloh112, Lloh113, Lloh114
	.loh AdrpLdrGot	Lloh110, Lloh111
	.loh AdrpLdrGotLdr	Lloh107, Lloh108, Lloh109
	.loh AdrpLdrGotLdr	Lloh104, Lloh105, Lloh106
	.loh AdrpLdrGotLdr	Lloh101, Lloh102, Lloh103
	.loh AdrpLdrGotLdr	Lloh98, Lloh99, Lloh100
	.loh AdrpLdrGotLdr	Lloh95, Lloh96, Lloh97
	.loh AdrpLdrGotLdr	Lloh92, Lloh93, Lloh94
	.loh AdrpLdrGotLdr	Lloh89, Lloh90, Lloh91
	.loh AdrpLdrGotLdr	Lloh86, Lloh87, Lloh88
	.loh AdrpLdrGotLdr	Lloh83, Lloh84, Lloh85
	.loh AdrpLdrGotLdr	Lloh80, Lloh81, Lloh82
	.loh AdrpLdrGotLdr	Lloh77, Lloh78, Lloh79
	.loh AdrpLdrGotLdr	Lloh73, Lloh74, Lloh76
	.loh AdrpLdrGotLdr	Lloh71, Lloh72, Lloh75
	.loh AdrpLdrGotLdr	Lloh68, Lloh69, Lloh70
	.loh AdrpLdrGotLdr	Lloh65, Lloh66, Lloh67
	.loh AdrpLdrGot	Lloh63, Lloh64
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.cfi_endproc
                                        ; -- End function
	.comm	_SRQC_BYTE_4_SRQ_ST_M,4,2       ; @SRQC_BYTE_4_SRQ_ST_M
	.comm	_SRQC_BYTE_4_SRQ_ST_S,4,2       ; @SRQC_BYTE_4_SRQ_ST_S
	.comm	_SRQC_BYTE_4_SRQ_WQE_HOP_NUM_M,4,2 ; @SRQC_BYTE_4_SRQ_WQE_HOP_NUM_M
	.comm	_SRQC_BYTE_4_SRQ_WQE_HOP_NUM_S,4,2 ; @SRQC_BYTE_4_SRQ_WQE_HOP_NUM_S
	.comm	_HNS_ROCE_HOP_NUM_0,8,3         ; @HNS_ROCE_HOP_NUM_0
	.comm	_SRQC_BYTE_4_SRQ_SHIFT_M,4,2    ; @SRQC_BYTE_4_SRQ_SHIFT_M
	.comm	_SRQC_BYTE_4_SRQ_SHIFT_S,4,2    ; @SRQC_BYTE_4_SRQ_SHIFT_S
	.comm	_SRQC_BYTE_4_SRQN_M,4,2         ; @SRQC_BYTE_4_SRQN_M
	.comm	_SRQC_BYTE_4_SRQN_S,4,2         ; @SRQC_BYTE_4_SRQN_S
	.comm	_SRQC_BYTE_8_SRQ_LIMIT_WL_M,4,2 ; @SRQC_BYTE_8_SRQ_LIMIT_WL_M
	.comm	_SRQC_BYTE_8_SRQ_LIMIT_WL_S,4,2 ; @SRQC_BYTE_8_SRQ_LIMIT_WL_S
	.comm	_SRQC_BYTE_12_SRQ_XRCD_M,4,2    ; @SRQC_BYTE_12_SRQ_XRCD_M
	.comm	_SRQC_BYTE_12_SRQ_XRCD_S,4,2    ; @SRQC_BYTE_12_SRQ_XRCD_S
	.comm	_SRQC_BYTE_24_SRQ_WQE_BT_BA_M,4,2 ; @SRQC_BYTE_24_SRQ_WQE_BT_BA_M
	.comm	_SRQC_BYTE_24_SRQ_WQE_BT_BA_S,4,2 ; @SRQC_BYTE_24_SRQ_WQE_BT_BA_S
	.comm	_SRQC_BYTE_28_PD_M,4,2          ; @SRQC_BYTE_28_PD_M
	.comm	_SRQC_BYTE_28_PD_S,4,2          ; @SRQC_BYTE_28_PD_S
	.comm	_SRQC_BYTE_28_RQWS_M,4,2        ; @SRQC_BYTE_28_RQWS_M
	.comm	_SRQC_BYTE_28_RQWS_S,4,2        ; @SRQC_BYTE_28_RQWS_S
	.comm	_SRQC_BYTE_36_SRQ_IDX_BT_BA_M,4,2 ; @SRQC_BYTE_36_SRQ_IDX_BT_BA_M
	.comm	_SRQC_BYTE_36_SRQ_IDX_BT_BA_S,4,2 ; @SRQC_BYTE_36_SRQ_IDX_BT_BA_S
	.comm	_PAGE_ADDR_SHIFT,4,2            ; @PAGE_ADDR_SHIFT
	.comm	_SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_M,4,2 ; @SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_M
	.comm	_SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_S,4,2 ; @SRQC_BYTE_44_SRQ_IDX_CUR_BLK_ADDR_S
	.comm	_SRQC_BYTE_44_SRQ_IDX_HOP_NUM_M,4,2 ; @SRQC_BYTE_44_SRQ_IDX_HOP_NUM_M
	.comm	_SRQC_BYTE_44_SRQ_IDX_HOP_NUM_S,4,2 ; @SRQC_BYTE_44_SRQ_IDX_HOP_NUM_S
	.comm	_SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_M,4,2 ; @SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_M
	.comm	_SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_S,4,2 ; @SRQC_BYTE_44_SRQ_IDX_BA_PG_SZ_S
	.comm	_SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_M,4,2 ; @SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_M
	.comm	_SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_S,4,2 ; @SRQC_BYTE_44_SRQ_IDX_BUF_PG_SZ_S
	.comm	_SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_M,4,2 ; @SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_M
	.comm	_SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_S,4,2 ; @SRQC_BYTE_52_SRQ_IDX_NXT_BLK_ADDR_S
	.comm	_SRQC_BYTE_56_SRQ_XRC_CQN_M,4,2 ; @SRQC_BYTE_56_SRQ_XRC_CQN_M
	.comm	_SRQC_BYTE_56_SRQ_XRC_CQN_S,4,2 ; @SRQC_BYTE_56_SRQ_XRC_CQN_S
	.comm	_SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_M,4,2 ; @SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_M
	.comm	_SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_S,4,2 ; @SRQC_BYTE_56_SRQ_WQE_BA_PG_SZ_S
	.comm	_PG_SHIFT_OFFSET,4,2            ; @PG_SHIFT_OFFSET
	.comm	_SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_M,4,2 ; @SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_M
	.comm	_SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_S,4,2 ; @SRQC_BYTE_56_SRQ_WQE_BUF_PG_SZ_S
	.comm	_SRQC_BYTE_60_SRQ_RECORD_EN_S,4,2 ; @SRQC_BYTE_60_SRQ_RECORD_EN_S
	.no_dead_strip	_hns_roce_v2_write_srqc
.subsections_via_symbols
