	.file	"extr_vsrc_sierpinski.c_fill_sierpinski.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.type	fill_sierpinski, @function
fill_sierpinski:
.LFB0:
	.cfi_startproc
	endbr64
	add	edx, DWORD PTR 4[rdi]
	add	esi, DWORD PTR [rdi]
	je	.L22
	push	r13
	.cfi_def_cfa_offset 16
	.cfi_offset 13, -16
	mov	r13d, edx
	push	r12
	.cfi_def_cfa_offset 24
	.cfi_offset 12, -24
	push	rbp
	.cfi_def_cfa_offset 32
	.cfi_offset 6, -32
	push	rbx
	.cfi_def_cfa_offset 40
	.cfi_offset 3, -40
	mov	ebx, esi
	sub	rsp, 8
	.cfi_def_cfa_offset 48
	jmp	.L26
	.p2align 4,,10
	.p2align 3
.L7:
	imul	r12, r12, 1431655766
	sar	r13d, 31
	sar	ebx, 31
	imul	rbp, rbp, 1431655766
	shr	r12, 32
	mov	eax, r12d
	shr	rbp, 32
	sub	eax, r13d
	mov	r13d, eax
	mov	eax, ebp
	sub	eax, ebx
	mov	ebx, eax
	je	.L2
.L26:
	test	r13d, r13d
	je	.L2
	movsx	rbp, ebx
	mov	edx, ebx
	mov	edi, ebx
	movsx	r12, r13d
	imul	rax, rbp, 1431655766
	sar	edx, 31
	shr	rax, 32
	sub	eax, edx
	lea	eax, [rax+rax*2]
	sub	edi, eax
	call	FFABS@PLT
	cmp	eax, 1
	jne	.L7
	imul	rax, r12, 1431655766
	mov	edx, r13d
	mov	edi, r13d
	sar	edx, 31
	shr	rax, 32
	sub	eax, edx
	lea	eax, [rax+rax*2]
	sub	edi, eax
	call	FFABS@PLT
	cmp	eax, 1
	jne	.L7
	add	rsp, 8
	.cfi_remember_state
	.cfi_def_cfa_offset 40
	pop	rbx
	.cfi_def_cfa_offset 32
	pop	rbp
	.cfi_def_cfa_offset 24
	pop	r12
	.cfi_def_cfa_offset 16
	pop	r13
	.cfi_def_cfa_offset 8
	ret
	.p2align 4,,10
	.p2align 3
.L2:
	.cfi_restore_state
	add	rsp, 8
	.cfi_def_cfa_offset 40
	xor	eax, eax
	pop	rbx
	.cfi_def_cfa_offset 32
	pop	rbp
	.cfi_def_cfa_offset 24
	pop	r12
	.cfi_def_cfa_offset 16
	pop	r13
	.cfi_def_cfa_offset 8
	ret
.L22:
	.cfi_restore 3
	.cfi_restore 6
	.cfi_restore 12
	.cfi_restore 13
	xor	eax, eax
	ret
	.cfi_endproc
.LFE0:
	.size	fill_sierpinski, .-fill_sierpinski
	.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_vsrc_sierpinski.c_fill_sierpinski.c"
	.text
	.align	2
	.syntax unified
	.arm
	.fpu softvfp
	.type	fill_sierpinski, %function
fill_sierpinski:
	@ args = 0, pretend = 0, frame = 0
	@ frame_needed = 0, uses_anonymous_args = 0
	ldr	r3, [r0]
	push	{r4, r5, r6, r7, r8, lr}
	adds	r4, r1, r3
	ldr	r1, [r0, #4]
	moveq	r3, #0
	movne	r3, #1
	adds	r7, r2, r1
	moveq	r3, #0
	cmp	r3, #0
	beq	.L2
	ldr	r6, .L18
	b	.L4
.L17:
	asr	ip, r7, #31
.L6:
	smull	r3, r4, r6, r4
	smull	r1, r2, r6, r7
	subs	r4, r4, r5
	moveq	r3, #0
	movne	r3, #1
	subs	r7, r2, ip
	moveq	r3, #0
	cmp	r3, #0
	beq	.L2
.L4:
	smull	r3, r0, r6, r4
	sub	r0, r0, r4, asr #31
	add	r0, r0, r0, lsl #1
	sub	r0, r4, r0
	bl	FFABS
	cmp	r0, #1
	asr	r5, r4, #31
	bne	.L17
	smull	r3, r0, r6, r7
	sub	r0, r0, r7, asr #31
	add	r0, r0, r0, lsl #1
	sub	r0, r7, r0
	bl	FFABS
	cmp	r0, #1
	asr	ip, r7, #31
	bne	.L6
	pop	{r4, r5, r6, r7, r8, pc}
.L2:
	mov	r0, #0
	pop	{r4, r5, r6, r7, r8, pc}
.L19:
	.align	2
.L18:
	.word	1431655766
	.size	fill_sierpinski, .-fill_sierpinski
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
