	.file	"extr_longitudinal_mpc.c_init_with_simulation.c"
	.intel_syntax noprefix
	.text
	.p2align 4
	.globl	init_with_simulation
	.type	init_with_simulation, @function
init_with_simulation:
.LFB0:
	.cfi_startproc
	endbr64
	movapd	xmm4, xmm0
	addsd	xmm1, xmm1
	addsd	xmm1, QWORD PTR .LC4[rip]
	mov	edi, DWORD PTR N[rip]
	subsd	xmm4, xmm2
	movapd	xmm2, xmm4
	xorpd	xmm2, XMMWORD PTR .LC3[rip]
	mulsd	xmm2, xmm4
	pxor	xmm4, xmm4
	movapd	xmm6, xmm4
	divsd	xmm2, xmm1
	addsd	xmm3, xmm2
	minsd	xmm6, xmm3
	movapd	xmm3, xmm6
	test	edi, edi
	js	.L4
	movsx	rcx, DWORD PTR NX[rip]
	lea	esi, 1[rdi]
	movapd	xmm1, xmm4
	xor	edx, edx
	mov	rax, QWORD PTR acadoVariables[rip]
	movsd	xmm2, QWORD PTR .LC2[rip]
	sal	rcx, 3
	.p2align 4,,10
	.p2align 3
.L5:
	movapd	xmm5, xmm3
	movsd	QWORD PTR 8[rax], xmm0
	mulsd	xmm5, xmm2
	movsd	QWORD PTR [rax], xmm1
	movsd	QWORD PTR 16[rax], xmm3
	addsd	xmm0, xmm5
	comisd	xmm4, xmm0
	jb	.L7
	movapd	xmm3, xmm4
	movapd	xmm0, xmm4
.L7:
	movapd	xmm5, xmm0
	add	edx, 1
	add	rax, rcx
	mulsd	xmm5, xmm2
	addsd	xmm1, xmm5
	cmp	esi, edx
	je	.L4
	cmp	edx, 4
	jle	.L5
	mov	r8, QWORD PTR .LC1[rip]
	movq	xmm2, r8
	jmp	.L5
	.p2align 4,,10
	.p2align 3
.L4:
	mov	eax, DWORD PTR NU[rip]
	imul	eax, edi
	test	eax, eax
	jle	.L10
	mov	rdx, QWORD PTR acadoVariables[rip+8]
	lea	ecx, -1[rax]
	lea	rax, 8[rdx]
	lea	rcx, [rax+rcx*8]
	jmp	.L11
	.p2align 4,,10
	.p2align 3
.L22:
	add	rax, 8
.L11:
	mov	QWORD PTR [rdx], 0x000000000
	mov	rdx, rax
	cmp	rax, rcx
	jne	.L22
.L10:
	imul	edi, DWORD PTR NY[rip]
	test	edi, edi
	jle	.L12
	mov	rdx, QWORD PTR acadoVariables[rip+16]
	lea	ecx, -1[rdi]
	lea	rax, 8[rdx]
	lea	rcx, [rax+rcx*8]
	jmp	.L13
	.p2align 4,,10
	.p2align 3
.L23:
	add	rax, 8
.L13:
	mov	QWORD PTR [rdx], 0x000000000
	mov	rdx, rax
	cmp	rax, rcx
	jne	.L23
.L12:
	mov	eax, DWORD PTR NYN[rip]
	test	eax, eax
	jle	.L1
	mov	rdx, QWORD PTR acadoVariables[rip+24]
	lea	ecx, -1[rax]
	lea	rax, 8[rdx]
	lea	rcx, [rax+rcx*8]
	jmp	.L15
	.p2align 4,,10
	.p2align 3
.L24:
	add	rax, 8
.L15:
	mov	QWORD PTR [rdx], 0x000000000
	mov	rdx, rax
	cmp	rcx, rax
	jne	.L24
.L1:
	ret
	.cfi_endproc
.LFE0:
	.size	init_with_simulation, .-init_with_simulation
	.comm	acadoVariables,32,32
	.comm	NYN,4,4
	.comm	NY,4,4
	.comm	NX,4,4
	.comm	NU,4,4
	.comm	N,4,4
	.section	.rodata.cst8,"aM",@progbits,8
	.align 8
.LC1:
	.long	858993459
	.long	1071854387
	.align 8
.LC2:
	.long	2576980378
	.long	1070176665
	.section	.rodata.cst16,"aM",@progbits,16
	.align 16
.LC3:
	.long	0
	.long	-2147483648
	.long	0
	.long	0
	.section	.rodata.cst8
	.align 8
.LC4:
	.long	1202590843
	.long	1065646817
	.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_longitudinal_mpc.c_init_with_simulation.c"
	.text
	.global	__aeabi_dsub
	.global	__aeabi_dmul
	.global	__aeabi_dadd
	.global	__aeabi_ddiv
	.global	__aeabi_dcmpgt
	.global	__aeabi_dcmple
	.align	2
	.global	init_with_simulation
	.syntax unified
	.arm
	.fpu softvfp
	.type	init_with_simulation, %function
init_with_simulation:
	@ args = 24, pretend = 0, frame = 24
	@ frame_needed = 0, uses_anonymous_args = 0
	push	{r4, r5, r6, r7, r8, r9, r10, fp, lr}
	sub	sp, sp, #28
	mov	r6, r2
	mov	r7, r3
	add	r3, sp, #64
	ldmia	r3, {r2-r3}
	mov	r4, r0
	mov	r5, r1
	bl	__aeabi_dsub
	mov	r2, r0
	mov	r3, r1
	mov	r0, r2
	add	r1, r3, #-2147483648
	bl	__aeabi_dmul
	mov	r2, r6
	mov	r3, r7
	mov	r8, r0
	mov	r9, r1
	mov	r0, r6
	mov	r1, r7
	bl	__aeabi_dadd
	ldr	r2, .L23
	ldr	r3, .L23+4
	bl	__aeabi_dadd
	mov	r2, r0
	mov	r3, r1
	mov	r0, r8
	mov	r1, r9
	bl	__aeabi_ddiv
	add	r3, sp, #72
	ldmia	r3, {r2-r3}
	bl	__aeabi_dadd
	mov	r6, r0
	mov	r7, r1
	mov	r2, #0
	mov	r3, #0
	stm	sp, {r6-r7}
	bl	__aeabi_dcmpgt
	cmp	r0, #0
	movne	r2, #0
	movne	r3, #0
	stmne	sp, {r2-r3}
.L2:
	ldr	r3, .L23+8
	ldr	r1, [r3]
	cmp	r1, #0
	str	r1, [sp, #20]
	blt	.L4
	ldr	r3, .L23+12
	mov	r7, #0
	ldr	r6, [r3]
	add	r3, r1, #1
	str	r3, [sp, #12]
	mov	r3, r6
	ldr	r2, .L23+16
	mov	r6, r7
	ldr	r2, [r2]
	mov	r10, #0
	lsl	r2, r2, #3
	mov	fp, #0
	mov	r7, r3
	ldr	r8, .L23+20
	ldr	r9, .L23+24
	str	r2, [sp, #16]
	b	.L5
.L9:
	cmp	r6, #4
	ldrgt	r8, .L23+28
	ldrgt	r9, .L23+32
.L5:
	ldmia	sp, {r0-r1}
	mov	r2, r0
	mov	r3, r1
	str	r4, [r7, #8]
	str	r5, [r7, #12]
	str	r2, [r7, #16]
	str	r3, [r7, #20]
	stm	r7, {r10-fp}
	mov	r2, r8
	mov	r3, r9
	bl	__aeabi_dmul
	mov	r2, r0
	mov	r3, r1
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dadd
	mov	r2, #0
	mov	r3, #0
	mov	r4, r0
	mov	r5, r1
	bl	__aeabi_dcmple
	cmp	r0, #0
	mov	r2, r8
	mov	r3, r9
	add	r6, r6, #1
	beq	.L7
	mov	r0, #0
	mov	r1, #0
	mov	r4, r0
	mov	r5, r1
	stm	sp, {r0-r1}
.L7:
	mov	r0, r4
	mov	r1, r5
	bl	__aeabi_dmul
	mov	r3, r1
	mov	r2, r0
	mov	r1, fp
	mov	r0, r10
	bl	__aeabi_dadd
	ldr	r3, [sp, #12]
	mov	r10, r0
	cmp	r6, r3
	ldr	r3, [sp, #16]
	mov	fp, r1
	add	r7, r7, r3
	bne	.L9
.L4:
	ldr	r3, .L23+36
	ldr	r2, [r3]
	ldr	r3, [sp, #20]
	mul	r3, r2, r3
	cmp	r3, #0
	mov	r2, r3
	ble	.L10
	mov	r0, #0
	mov	r1, #0
	ldr	r3, .L23+12
	ldr	r3, [r3, #4]
	add	r2, r3, r2, lsl #3
.L11:
	stm	r3!, {r0-r1}
	cmp	r3, r2
	bne	.L11
.L10:
	ldr	r3, .L23+40
	ldr	r2, [r3]
	ldr	r3, [sp, #20]
	mul	r3, r2, r3
	cmp	r3, #0
	mov	r2, r3
	ble	.L12
	mov	r0, #0
	mov	r1, #0
	ldr	r3, .L23+12
	ldr	r3, [r3, #8]
	add	r2, r3, r2, lsl #3
.L13:
	stm	r3!, {r0-r1}
	cmp	r2, r3
	bne	.L13
.L12:
	ldr	r3, .L23+44
	ldr	r2, [r3]
	cmp	r2, #0
	ble	.L1
	mov	r0, #0
	mov	r1, #0
	ldr	r3, .L23+12
	ldr	r3, [r3, #12]
	add	r2, r3, r2, lsl #3
.L15:
	stm	r3!, {r0-r1}
	cmp	r2, r3
	bne	.L15
.L1:
	add	sp, sp, #28
	@ sp needed
	pop	{r4, r5, r6, r7, r8, r9, r10, fp, pc}
.L24:
	.align	2
.L23:
	.word	1202590843
	.word	1065646817
	.word	N
	.word	acadoVariables
	.word	NX
	.word	-1717986918
	.word	1070176665
	.word	858993459
	.word	1071854387
	.word	NU
	.word	NY
	.word	NYN
	.size	init_with_simulation, .-init_with_simulation
	.comm	acadoVariables,16,4
	.comm	NYN,4,4
	.comm	NY,4,4
	.comm	NX,4,4
	.comm	NU,4,4
	.comm	N,4,4
	.ident	"GCC: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0"
	.section	.note.GNU-stack,"",%progbits
