	.file	"extr_buffer.c_git_buf_splice.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.globl	git_buf_splice
	.type	git_buf_splice, @function
git_buf_splice:
.LFB0:
	.cfi_startproc
	endbr64
	push	r15
	.cfi_def_cfa_offset 16
	.cfi_offset 15, -16
	mov	r15, rcx
	push	r14
	.cfi_def_cfa_offset 24
	.cfi_offset 14, -24
	push	r13
	.cfi_def_cfa_offset 32
	.cfi_offset 13, -32
	mov	r13, r8
	push	r12
	.cfi_def_cfa_offset 40
	.cfi_offset 12, -40
	mov	r12, rsi
	push	rbp
	.cfi_def_cfa_offset 48
	.cfi_offset 6, -48
	mov	rbp, rdx
	push	rbx
	.cfi_def_cfa_offset 56
	.cfi_offset 3, -56
	mov	rbx, rdi
	xor	edi, edi
	sub	rsp, 40
	.cfi_def_cfa_offset 96
	mov	rax, QWORD PTR fs:40
	mov	QWORD PTR 24[rsp], rax
	xor	eax, eax
	test	rbx, rbx
	je	.L2
	mov	rax, QWORD PTR [rbx]
	cmp	rax, rsi
	jnb	.L9
.L2:
	call	assert@PLT
	mov	rsi, QWORD PTR [rbx]
	lea	rdi, 8[rsp]
	mov	edx, r13d
	mov	r14, QWORD PTR 8[rbx]
	sub	rsi, rbp
	call	GIT_ERROR_CHECK_ALLOC_ADD@PLT
	mov	rsi, QWORD PTR 8[rsp]
	mov	edx, 1
	add	r14, r12
	lea	rdi, 16[rsp]
	add	r12, rbp
	call	GIT_ERROR_CHECK_ALLOC_ADD@PLT
	mov	rsi, QWORD PTR 16[rsp]
	mov	rdi, rbx
	call	ENSURE_SIZE@PLT
	mov	rdx, QWORD PTR [rbx]
	lea	rsi, [r14+rbp]
	lea	rdi, [r14+r13]
	sub	rdx, r12
	call	memmove@PLT
	mov	rdx, r13
	mov	rsi, r15
	mov	rdi, r14
	call	memcpy@PLT
	mov	rax, QWORD PTR 8[rsp]
	mov	rdx, QWORD PTR 8[rbx]
	mov	QWORD PTR [rbx], rax
	mov	BYTE PTR [rdx+rax], 0
	mov	rax, QWORD PTR 24[rsp]
	xor	rax, QWORD PTR fs:40
	jne	.L10
	add	rsp, 40
	.cfi_remember_state
	.cfi_def_cfa_offset 56
	xor	eax, eax
	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
.L9:
	.cfi_restore_state
	sub	rax, rsi
	xor	edi, edi
	cmp	rax, rdx
	setnb	dil
	jmp	.L2
.L10:
	call	__stack_chk_fail@PLT
	.cfi_endproc
.LFE0:
	.size	git_buf_splice, .-git_buf_splice
	.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_buffer.c_git_buf_splice.c"
	.text
	.section	.rodata.cst4,"aM",%progbits,4
	.align	2
.LC0:
	.word	__stack_chk_guard
	.text
	.align	2
	.global	git_buf_splice
	.syntax unified
	.arm
	.fpu softvfp
	.type	git_buf_splice, %function
git_buf_splice:
	@ args = 4, pretend = 0, frame = 16
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, lr}
	mov	r9, r3
	ldr	r3, .L10
	sub	sp, sp, #20
	subs	r4, r0, #0
	mov	r5, r1
	mov	r6, r2
	ldr	r3, [r3]
	str	r3, [sp, #12]
	mov	r3,#0
	ldr	r8, [sp, #48]
	beq	.L5
	ldr	r0, [r4]
	cmp	r0, r1
	bcs	.L8
.L5:
	mov	r0, #0
.L2:
	bl	assert
	ldm	r4, {r1, r7}
	mov	r2, r8
	sub	r1, r1, r6
	add	r0, sp, #4
	bl	GIT_ERROR_CHECK_ALLOC_ADD
	mov	r2, #1
	ldr	r1, [sp, #4]
	add	r0, sp, #8
	bl	GIT_ERROR_CHECK_ALLOC_ADD
	ldr	r1, [sp, #8]
	mov	r0, r4
	bl	ENSURE_SIZE
	ldr	r2, [r4]
	add	r7, r7, r5
	add	r5, r5, r6
	add	r1, r7, r6
	sub	r2, r2, r5
	add	r0, r7, r8
	bl	memmove
	mov	r2, r8
	mov	r1, r9
	mov	r0, r7
	bl	memcpy
	mov	r0, #0
	ldr	r3, [sp, #4]
	ldr	r2, [r4, #4]
	str	r3, [r4]
	strb	r0, [r2, r3]
	ldr	r3, .L10
	ldr	r2, [r3]
	ldr	r3, [sp, #12]
	eors	r2, r3, r2
	mov	r3, #0
	bne	.L9
	add	sp, sp, #20
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, pc}
.L8:
	sub	r0, r0, r1
	cmp	r0, r2
	movcc	r0, #0
	movcs	r0, #1
	b	.L2
.L9:
	bl	__stack_chk_fail
.L11:
	.align	2
.L10:
	.word	.LC0
	.size	git_buf_splice, .-git_buf_splice
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
