	.file	"extr_ixgbe_main.c_ixgbe_set_ivar.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.type	ixgbe_set_ivar, @function
ixgbe_set_ivar:
.LFB0:
	.cfi_startproc
	endbr64
	push	r14
	.cfi_def_cfa_offset 16
	.cfi_offset 14, -16
	push	r13
	.cfi_def_cfa_offset 24
	.cfi_offset 13, -24
	mov	r13, rdi
	push	r12
	.cfi_def_cfa_offset 32
	.cfi_offset 12, -32
	push	rbp
	.cfi_def_cfa_offset 40
	.cfi_offset 6, -40
	mov	ebp, edx
	push	rbx
	.cfi_def_cfa_offset 48
	.cfi_offset 3, -48
	mov	eax, DWORD PTR [rdi]
	cmp	eax, 132
	jle	.L12
	cmp	eax, 133
	jne	.L1
	mov	r14d, esi
	mov	ebx, DWORD PTR IXGBE_IVAR_ALLOC_VAL[rip]
	sal	r14d, 6
	or	ebx, ecx
	add	r14d, edx
	cmp	esi, -1
	cmove	r14d, edx
	and	ebp, 3
	sar	r14d, 2
	and	r14d, 31
	mov	edi, r14d
	call	IXGBE_IVAR@PLT
	mov	rdi, r13
	mov	esi, eax
	call	IXGBE_READ_REG@PLT
	lea	ecx, 0[0+rbp*8]
	mov	esi, 255
	mov	edi, r14d
	sal	esi, cl
	sal	ebx, cl
	mov	r12d, esi
	not	r12d
	and	r12d, eax
	or	r12d, ebx
.L9:
	call	IXGBE_IVAR@PLT
	pop	rbx
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	mov	edx, r12d
	pop	rbp
	.cfi_def_cfa_offset 32
	mov	rdi, r13
	pop	r12
	.cfi_def_cfa_offset 24
	mov	esi, eax
	pop	r13
	.cfi_def_cfa_offset 16
	pop	r14
	.cfi_def_cfa_offset 8
	jmp	IXGBE_WRITE_REG@PLT
	.p2align 4,,10
	.p2align 3
.L12:
	.cfi_restore_state
	cmp	eax, 127
	jg	.L13
.L1:
	pop	rbx
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	pop	rbp
	.cfi_def_cfa_offset 32
	pop	r12
	.cfi_def_cfa_offset 24
	pop	r13
	.cfi_def_cfa_offset 16
	pop	r14
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L13:
	.cfi_restore_state
	mov	ebx, DWORD PTR IXGBE_IVAR_ALLOC_VAL[rip]
	mov	eax, edx
	and	eax, 1
	or	ebx, ecx
	cmp	esi, -1
	je	.L14
	sar	ebp
	lea	r12d, [rsi+rax*2]
	mov	edi, ebp
	sal	r12d, 3
	call	IXGBE_IVAR@PLT
	mov	rdi, r13
	mov	esi, eax
	call	IXGBE_READ_REG@PLT
	mov	esi, 255
	mov	ecx, r12d
	mov	edi, ebp
	mov	r8d, eax
	mov	eax, esi
	sal	ebx, cl
	sal	eax, cl
	mov	ecx, ebx
	not	eax
	and	eax, r8d
	or	ecx, eax
	mov	r12d, ecx
	jmp	.L9
	.p2align 4,,10
	.p2align 3
.L14:
	mov	esi, DWORD PTR IXGBE_IVAR_MISC[rip]
	lea	ebp, 0[0+rax*8]
	call	IXGBE_READ_REG@PLT
	mov	esi, 255
	mov	ecx, ebp
	mov	rdi, r13
	mov	r8d, eax
	mov	eax, esi
	sal	ebx, cl
	mov	esi, DWORD PTR IXGBE_IVAR_MISC[rip]
	sal	eax, cl
	mov	edx, ebx
	pop	rbx
	.cfi_def_cfa_offset 40
	pop	rbp
	.cfi_def_cfa_offset 32
	not	eax
	pop	r12
	.cfi_def_cfa_offset 24
	pop	r13
	.cfi_def_cfa_offset 16
	and	eax, r8d
	pop	r14
	.cfi_def_cfa_offset 8
	or	edx, eax
	jmp	IXGBE_WRITE_REG@PLT
	.cfi_endproc
.LFE0:
	.size	ixgbe_set_ivar, .-ixgbe_set_ivar
	.comm	IXGBE_IVAR_MISC,4,4
	.comm	IXGBE_IVAR_ALLOC_VAL,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",@progbits
	.section	.note.gnu.property,"a"
	.align 8
	.long	 1f - 0f
	.long	 4f - 1f
	.long	 5
0:
	.string	 "GNU"
1:
	.align 8
	.long	 0xc0000002
	.long	 3f - 2f
2:
	.long	 0x3
3:
	.align 8
4:

	.arch armv5t
	.eabi_attribute 20, 1
	.eabi_attribute 21, 1
	.eabi_attribute 23, 3
	.eabi_attribute 24, 1
	.eabi_attribute 25, 1
	.eabi_attribute 26, 2
	.eabi_attribute 30, 2
	.eabi_attribute 34, 0
	.eabi_attribute 18, 4
	.file	"extr_ixgbe_main.c_ixgbe_set_ivar.c"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	ixgbe_set_ivar, %function
ixgbe_set_ivar:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	ldr	ip, [r0]
	push	{r4, r5, r6, r7, r8, lr}
	cmp	ip, #132
	mov	r6, r0
	mov	r7, r2
	ble	.L10
	cmp	ip, #133
	popne	{r4, r5, r6, r7, r8, pc}
	cmn	r1, #1
	moveq	r4, r7
	addne	r4, r7, r1, lsl #6
	ldr	r2, .L12
	asr	r4, r4, #2
	ldr	r5, [r2]
	and	r4, r4, #31
	mov	r0, r4
	orr	r5, r3, r5
	bl	IXGBE_IVAR
	mov	r1, r0
	mov	r0, r6
	bl	IXGBE_READ_REG
	mov	r3, #255
	and	r2, r7, #3
	lsl	r2, r2, #3
	bic	r3, r0, r3, lsl r2
	mov	r0, r4
	orr	r5, r3, r5, lsl r2
	bl	IXGBE_IVAR
	mov	r2, r5
	mov	r1, r0
	mov	r0, r6
	pop	{r4, r5, r6, r7, r8, lr}
	b	IXGBE_WRITE_REG
.L10:
	cmp	ip, #127
	pople	{r4, r5, r6, r7, r8, pc}
	ldr	r2, .L12
	cmn	r1, #1
	ldr	r4, [r2]
	and	r5, r7, #1
	orr	r4, r3, r4
	beq	.L11
	asr	r7, r7, #1
	add	r1, r1, r5, lsl #1
	mov	r0, r7
	lsl	r5, r1, #3
	bl	IXGBE_IVAR
	mov	r1, r0
	mov	r0, r6
	bl	IXGBE_READ_REG
	mov	r3, #255
	bic	r3, r0, r3, lsl r5
	mov	r0, r7
	orr	r4, r3, r4, lsl r5
	bl	IXGBE_IVAR
	mov	r2, r4
	mov	r1, r0
	mov	r0, r6
	pop	{r4, r5, r6, r7, r8, lr}
	b	IXGBE_WRITE_REG
.L11:
	ldr	r7, .L12+4
	lsl	r5, r5, #3
	ldr	r1, [r7]
	bl	IXGBE_READ_REG
	mov	r2, #255
	bic	r2, r0, r2, lsl r5
	ldr	r1, [r7]
	mov	r0, r6
	orr	r2, r2, r4, lsl r5
	pop	{r4, r5, r6, r7, r8, lr}
	b	IXGBE_WRITE_REG
.L13:
	.align	2
.L12:
	.word	IXGBE_IVAR_ALLOC_VAL
	.word	IXGBE_IVAR_MISC
	.size	ixgbe_set_ivar, .-ixgbe_set_ivar
	.comm	IXGBE_IVAR_MISC,4,4
	.comm	IXGBE_IVAR_ALLOC_VAL,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
