	.file	"extr_mmu.c_InsertPageEntry.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.globl	InsertPageEntry
	.type	InsertPageEntry, @function
InsertPageEntry:
.LFB0:
	.cfi_startproc
	endbr64
	push	r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	mov	r15d, ecx
	push	r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	mov	r14d, edx
	push	r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	mov	r13d, edi
	push	r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	push	rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	mov	ebp, esi
	push	rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	sub	rsp, 8
	.cfi_def_cfa_offset 64
	test	ecx, ecx
	je	.L15
.L2:
	mov	edi, r13d
	mov	ebx, r15d
	xor	r15w, r15w
	shr	edi, 28
	sal	ebx, 10
	call	GetSR@PLT
	mov	edi, r13d
	and	ebx, 523264
	and	edi, 268435455
	mov	r12d, eax
	and	eax, 524287
	or	ebx, 1023
	shr	edi, 12
	and	r12d, 268435455
	xor	edi, eax
	and	edi, ebx
	sal	edi, 6
	lea	ebx, [rdi+r15]
	xor	r15d, r15d
.L4:
	mov	edi, ebx
	call	GetPhys@PLT
	cmp	r14d, r15d
	je	.L3
	test	eax, eax
	jns	.L3
	add	r15d, 1
	add	ebx, 8
	cmp	r15d, 8
	jne	.L4
	mov	eax, DWORD PTR FALSE[rip]
	add	rsp, 8
	.cfi_remember_state
	.cfi_def_cfa_offset 56
	pop	rbx
	.cfi_def_cfa_offset 48
	pop	rbp
	.cfi_def_cfa_offset 40
	pop	r12
	.cfi_def_cfa_offset 32
	pop	r13
	.cfi_def_cfa_offset 24
	pop	r14
	.cfi_def_cfa_offset 16
	pop	r15
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L3:
	.cfi_restore_state
	mov	esi, r13d
	sal	r12d, 7
	mov	edi, ebx
	sar	esi, 22
	and	esi, 63
	or	esi, r12d
	or	esi, -2147483648
	call	SetPhys@PLT
	mov	esi, ebp
	lea	edi, 4[rbx]
	and	esi, -4096
	call	SetPhys@PLT
	mov	eax, DWORD PTR TRUE[rip]
	add	rsp, 8
	.cfi_remember_state
	.cfi_def_cfa_offset 56
	pop	rbx
	.cfi_def_cfa_offset 48
	pop	rbp
	.cfi_def_cfa_offset 40
	pop	r12
	.cfi_def_cfa_offset 32
	pop	r13
	.cfi_def_cfa_offset 24
	pop	r14
	.cfi_def_cfa_offset 16
	pop	r15
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L15:
	.cfi_restore_state
	xor	eax, eax
	call	GetSDR1@PLT
	mov	r15d, eax
	jmp	.L2
	.cfi_endproc
.LFE0:
	.size	InsertPageEntry, .-InsertPageEntry
	.comm	TRUE,4,4
	.comm	FALSE,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_mmu.c_InsertPageEntry.c"
	.text
	.align	2
	.global	InsertPageEntry
	.syntax unified
	.arm
	.fpu softvfp
	.type	InsertPageEntry, %function
InsertPageEntry:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, lr}
	subs	r4, r3, #0
	mov	r5, r0
	mov	r6, r1
	mov	r8, r2
	beq	.L11
.L2:
	lsr	r0, r5, #28
	bl	GetSR
	ldr	r2, .L12
	mov	r9, #0
	and	r2, r2, r4, lsl #10
	mvn	ip, r2, lsr #10
	mvn	ip, ip, lsl #10
	bic	r2, r0, #-16777216
	bic	r2, r2, #16252928
	bic	r3, r5, #-268435456
	eor	r2, r2, r3, lsr #12
	lsr	r4, r4, #16
	and	r2, r2, ip
	lsl	r4, r4, #16
	bic	r7, r0, #-268435456
	add	r4, r4, r2, lsl #6
.L4:
	mov	r0, r4
	bl	GetPhys
	lsr	r0, r0, #31
	cmp	r8, r9
	moveq	r0, #0
	andne	r0, r0, #1
	cmp	r0, #0
	add	r9, r9, #1
	beq	.L3
	cmp	r9, #8
	add	r4, r4, #8
	bne	.L4
	ldr	r3, .L12+4
	ldr	r0, [r3]
	pop	{r4, r5, r6, r7, r8, r9, r10, pc}
.L3:
	asr	r5, r5, #22
	and	r5, r5, #63
	orr	r5, r5, r7, lsl #7
	orr	r1, r5, #-2147483648
	mov	r0, r4
	bl	SetPhys
	bic	r1, r6, #4080
	bic	r1, r1, #15
	add	r0, r4, #4
	bl	SetPhys
	ldr	r3, .L12+8
	ldr	r0, [r3]
	pop	{r4, r5, r6, r7, r8, r9, r10, pc}
.L11:
	bl	GetSDR1
	mov	r4, r0
	b	.L2
.L13:
	.align	2
.L12:
	.word	523264
	.word	FALSE
	.word	TRUE
	.size	InsertPageEntry, .-InsertPageEntry
	.comm	TRUE,4,4
	.comm	FALSE,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
