	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal4,4byte_literals
	.p2align	2                               ## -- Begin function main
LCPI0_0:
	.long	0x3f000000                      ## float 0.5
LCPI0_1:
	.long	0x3f800000                      ## float 1
	.section	__TEXT,__literal8,8byte_literals
	.p2align	3
LCPI0_2:
	.quad	0x3fc999999999999a              ## double 0.20000000000000001
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_main
	.p2align	4, 0x90
_main:                                  ## @main
	.cfi_startproc
## %bb.0:
	pushq	%rbp
	.cfi_def_cfa_offset 16
	.cfi_offset %rbp, -16
	movq	%rsp, %rbp
	.cfi_def_cfa_register %rbp
	pushq	%r15
	pushq	%r14
	pushq	%r13
	pushq	%r12
	pushq	%rbx
	subq	$24, %rsp
	.cfi_offset %rbx, -56
	.cfi_offset %r12, -48
	.cfi_offset %r13, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	_error_callback@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_glfwSetErrorCallback
	xorl	%eax, %eax
	callq	_glfwInit
	testl	%eax, %eax
	je	LBB0_3
## %bb.1:
	movq	_GLFW_RESIZABLE@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_GLFW_FALSE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_glfwWindowHint
	movq	_GLFW_CONTEXT_VERSION_MAJOR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	$3, %esi
	callq	_glfwWindowHint
	movq	_GLFW_CONTEXT_VERSION_MINOR@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movl	$2, %esi
	callq	_glfwWindowHint
	movq	_GLFW_OPENGL_PROFILE@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_GLFW_OPENGL_CORE_PROFILE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_glfwWindowHint
	movq	_GLFW_OPENGL_FORWARD_COMPAT@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_GLFW_TRUE@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_glfwWindowHint
	leaq	L_.str(%rip), %rdx
	movl	$800, %edi                      ## imm = 0x320
	movl	$600, %esi                      ## imm = 0x258
	xorl	%ecx, %ecx
	xorl	%r8d, %r8d
	callq	_glfwCreateWindow
	testq	%rax, %rax
	je	LBB0_2
## %bb.4:
	movq	%rax, %r12
	movq	_key_callback@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%r12, %rdi
	callq	_glfwSetKeyCallback
	movq	%r12, %rdi
	callq	_glfwMakeContextCurrent
	movq	_glfwGetProcAddress@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_gladLoadGL
	movq	_vertex_shader_text@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	movq	_fragment_shader_text@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	callq	_make_shader_program
	testl	%eax, %eax
	jne	LBB0_5
LBB0_2:
	xorl	%eax, %eax
	callq	_glfwTerminate
LBB0_3:
	movq	_EXIT_FAILURE@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_exit
LBB0_5:
	movl	%eax, %r14d
	movl	%eax, %edi
	callq	_glUseProgram
	leaq	L_.str.1(%rip), %rsi
	movl	%r14d, %edi
	callq	_glGetUniformLocation
	movl	%eax, %ebx
	leaq	L_.str.2(%rip), %rsi
	movl	%r14d, %edi
	callq	_glGetUniformLocation
	movl	%eax, %r15d
	movq	_view_angle@GOTPCREL(%rip), %rax
	movss	(%rax), %xmm0                   ## xmm0 = mem[0],zero,zero,zero
	mulss	LCPI0_0(%rip), %xmm0
	callq	_tanf
	movss	LCPI0_1(%rip), %xmm1            ## xmm1 = mem[0],zero,zero,zero
	divss	%xmm0, %xmm1
	movq	_aspect_ratio@GOTPCREL(%rip), %rax
	movaps	%xmm1, %xmm0
	divss	(%rax), %xmm0
	movq	_projection_matrix@GOTPCREL(%rip), %rax
	movq	(%rax), %rcx
	movss	%xmm0, (%rcx)
	movss	%xmm1, 20(%rcx)
	movq	_z_far@GOTPCREL(%rip), %rax
	movss	(%rax), %xmm0                   ## xmm0 = mem[0],zero,zero,zero
	movq	_z_near@GOTPCREL(%rip), %rax
	movss	(%rax), %xmm1                   ## xmm1 = mem[0],zero,zero,zero
	movaps	%xmm0, %xmm2
	addss	%xmm1, %xmm2
	movaps	%xmm1, %xmm3
	subss	%xmm0, %xmm3
	divss	%xmm3, %xmm2
	movss	%xmm2, 40(%rcx)
	movl	$-1082130432, 44(%rcx)          ## imm = 0xBF800000
	mulss	%xmm1, %xmm0
	addss	%xmm0, %xmm0
	divss	%xmm3, %xmm0
	movss	%xmm0, 56(%rcx)
	movq	_GL_FALSE@GOTPCREL(%rip), %r13
	movl	(%r13), %edx
	movl	%ebx, %edi
	movl	$1, %esi
	callq	_glUniformMatrix4fv
	movq	_modelview_matrix@GOTPCREL(%rip), %rax
	movq	(%rax), %rcx
	movabsq	$-4566650018921971712, %rax     ## imm = 0xC0A00000C0A00000
	movq	%rax, 48(%rcx)
	movl	$-1046478848, 56(%rcx)          ## imm = 0xC1A00000
	movl	(%r13), %edx
	movl	%r15d, %edi
	movl	$1, %esi
	callq	_glUniformMatrix4fv
	xorl	%eax, %eax
	callq	_init_map
	movl	%r14d, %edi
	callq	_make_mesh
	leaq	-48(%rbp), %rsi
	leaq	-44(%rbp), %rdx
	movq	%r12, %rdi
	callq	_glfwGetFramebufferSize
	movl	-48(%rbp), %edx
	movl	-44(%rbp), %ecx
	xorl	%edi, %edi
	xorl	%esi, %esi
	callq	_glViewport
	xorps	%xmm0, %xmm0
	xorps	%xmm1, %xmm1
	xorps	%xmm2, %xmm2
	xorps	%xmm3, %xmm3
	callq	_glClearColor
	xorl	%eax, %eax
	callq	_glfwGetTime
	movsd	%xmm0, -64(%rbp)                ## 8-byte Spill
	movq	%r12, %rdi
	callq	_glfwWindowShouldClose
	testl	%eax, %eax
	jne	LBB0_12
## %bb.6:
	movq	_GL_LINES@GOTPCREL(%rip), %rbx
	movq	_MAP_NUM_LINES@GOTPCREL(%rip), %r15
	movq	_GL_UNSIGNED_INT@GOTPCREL(%rip), %r13
	xorl	%r14d, %r14d
	jmp	LBB0_7
	.p2align	4, 0x90
LBB0_8:                                 ##   in Loop: Header=BB0_7 Depth=1
	movsd	%xmm1, -56(%rbp)                ## 8-byte Spill
LBB0_11:                                ##   in Loop: Header=BB0_7 Depth=1
	movq	%r12, %rdi
	callq	_glfwWindowShouldClose
	movsd	-56(%rbp), %xmm0                ## 8-byte Reload
                                        ## xmm0 = mem[0],zero
	movsd	%xmm0, -64(%rbp)                ## 8-byte Spill
	testl	%eax, %eax
	jne	LBB0_12
LBB0_7:                                 ## =>This Inner Loop Header: Depth=1
	movq	_GL_COLOR_BUFFER_BIT@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_glClear
	movl	(%rbx), %edi
	movl	(%r15), %esi
	addl	%esi, %esi
	movl	(%r13), %edx
	xorl	%ecx, %ecx
	callq	_glDrawElements
	movq	%r12, %rdi
	callq	_glfwSwapBuffers
	xorl	%eax, %eax
	callq	_glfwPollEvents
	xorl	%eax, %eax
	callq	_glfwGetTime
	movaps	%xmm0, %xmm2
	movsd	-64(%rbp), %xmm1                ## 8-byte Reload
                                        ## xmm1 = mem[0],zero
	subsd	%xmm1, %xmm2
	ucomisd	LCPI0_2(%rip), %xmm2
	jbe	LBB0_8
## %bb.9:                               ##   in Loop: Header=BB0_7 Depth=1
	movq	_MAX_ITER@GOTPCREL(%rip), %rax
	cmpl	(%rax), %r14d
	movsd	%xmm0, -56(%rbp)                ## 8-byte Spill
	jge	LBB0_11
## %bb.10:                              ##   in Loop: Header=BB0_7 Depth=1
	movq	_NUM_ITER_AT_A_TIME@GOTPCREL(%rip), %rax
	movq	(%rax), %rdi
	callq	_update_map
	xorl	%eax, %eax
	callq	_update_mesh
	movq	_NUM_ITER_AT_A_TIME@GOTPCREL(%rip), %rax
	addl	(%rax), %r14d
	jmp	LBB0_11
LBB0_12:
	xorl	%eax, %eax
	callq	_glfwTerminate
	movq	_EXIT_SUCCESS@GOTPCREL(%rip), %rax
	movl	(%rax), %edi
	callq	_exit
	.cfi_endproc
                                        ## -- End function
	.comm	_error_callback,4,2             ## @error_callback
	.comm	_EXIT_FAILURE,4,2               ## @EXIT_FAILURE
	.comm	_GLFW_RESIZABLE,4,2             ## @GLFW_RESIZABLE
	.comm	_GLFW_FALSE,4,2                 ## @GLFW_FALSE
	.comm	_GLFW_CONTEXT_VERSION_MAJOR,4,2 ## @GLFW_CONTEXT_VERSION_MAJOR
	.comm	_GLFW_CONTEXT_VERSION_MINOR,4,2 ## @GLFW_CONTEXT_VERSION_MINOR
	.comm	_GLFW_OPENGL_PROFILE,4,2        ## @GLFW_OPENGL_PROFILE
	.comm	_GLFW_OPENGL_CORE_PROFILE,4,2   ## @GLFW_OPENGL_CORE_PROFILE
	.comm	_GLFW_OPENGL_FORWARD_COMPAT,4,2 ## @GLFW_OPENGL_FORWARD_COMPAT
	.comm	_GLFW_TRUE,4,2                  ## @GLFW_TRUE
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"GLFW OpenGL3 Heightmap demo"

	.comm	_key_callback,4,2               ## @key_callback
	.comm	_glfwGetProcAddress,4,2         ## @glfwGetProcAddress
	.comm	_vertex_shader_text,4,2         ## @vertex_shader_text
	.comm	_fragment_shader_text,4,2       ## @fragment_shader_text
L_.str.1:                               ## @.str.1
	.asciz	"project"

L_.str.2:                               ## @.str.2
	.asciz	"modelview"

	.comm	_view_angle,4,2                 ## @view_angle
	.comm	_aspect_ratio,4,2               ## @aspect_ratio
	.comm	_projection_matrix,8,3          ## @projection_matrix
	.comm	_z_far,4,2                      ## @z_far
	.comm	_z_near,4,2                     ## @z_near
	.comm	_GL_FALSE,4,2                   ## @GL_FALSE
	.comm	_modelview_matrix,8,3           ## @modelview_matrix
	.comm	_GL_COLOR_BUFFER_BIT,4,2        ## @GL_COLOR_BUFFER_BIT
	.comm	_GL_LINES,4,2                   ## @GL_LINES
	.comm	_MAP_NUM_LINES,4,2              ## @MAP_NUM_LINES
	.comm	_GL_UNSIGNED_INT,4,2            ## @GL_UNSIGNED_INT
	.comm	_MAX_ITER,4,2                   ## @MAX_ITER
	.comm	_NUM_ITER_AT_A_TIME,8,3         ## @NUM_ITER_AT_A_TIME
	.comm	_EXIT_SUCCESS,4,2               ## @EXIT_SUCCESS
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_main                           ; -- Begin function main
	.p2align	2
_main:                                  ; @main
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #128
	.cfi_def_cfa_offset 128
	stp	d9, d8, [sp, #16]               ; 16-byte Folded Spill
	stp	x28, x27, [sp, #32]             ; 16-byte Folded Spill
	stp	x26, x25, [sp, #48]             ; 16-byte Folded Spill
	stp	x24, x23, [sp, #64]             ; 16-byte Folded Spill
	stp	x22, x21, [sp, #80]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #96]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #112]            ; 16-byte Folded Spill
	add	x29, sp, #112
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset w23, -56
	.cfi_offset w24, -64
	.cfi_offset w25, -72
	.cfi_offset w26, -80
	.cfi_offset w27, -88
	.cfi_offset w28, -96
	.cfi_offset b8, -104
	.cfi_offset b9, -112
Lloh0:
	adrp	x8, _error_callback@GOTPAGE
Lloh1:
	ldr	x8, [x8, _error_callback@GOTPAGEOFF]
Lloh2:
	ldr	w0, [x8]
	bl	_glfwSetErrorCallback
	bl	_glfwInit
	cbz	w0, LBB0_4
; %bb.1:
Lloh3:
	adrp	x8, _GLFW_RESIZABLE@GOTPAGE
Lloh4:
	ldr	x8, [x8, _GLFW_RESIZABLE@GOTPAGEOFF]
Lloh5:
	ldr	w0, [x8]
Lloh6:
	adrp	x8, _GLFW_FALSE@GOTPAGE
Lloh7:
	ldr	x8, [x8, _GLFW_FALSE@GOTPAGEOFF]
Lloh8:
	ldr	w1, [x8]
	bl	_glfwWindowHint
Lloh9:
	adrp	x8, _GLFW_CONTEXT_VERSION_MAJOR@GOTPAGE
Lloh10:
	ldr	x8, [x8, _GLFW_CONTEXT_VERSION_MAJOR@GOTPAGEOFF]
Lloh11:
	ldr	w0, [x8]
	mov	w1, #3
	bl	_glfwWindowHint
Lloh12:
	adrp	x8, _GLFW_CONTEXT_VERSION_MINOR@GOTPAGE
Lloh13:
	ldr	x8, [x8, _GLFW_CONTEXT_VERSION_MINOR@GOTPAGEOFF]
Lloh14:
	ldr	w0, [x8]
	mov	w1, #2
	bl	_glfwWindowHint
Lloh15:
	adrp	x8, _GLFW_OPENGL_PROFILE@GOTPAGE
Lloh16:
	ldr	x8, [x8, _GLFW_OPENGL_PROFILE@GOTPAGEOFF]
Lloh17:
	ldr	w0, [x8]
Lloh18:
	adrp	x8, _GLFW_OPENGL_CORE_PROFILE@GOTPAGE
Lloh19:
	ldr	x8, [x8, _GLFW_OPENGL_CORE_PROFILE@GOTPAGEOFF]
Lloh20:
	ldr	w1, [x8]
	bl	_glfwWindowHint
Lloh21:
	adrp	x8, _GLFW_OPENGL_FORWARD_COMPAT@GOTPAGE
Lloh22:
	ldr	x8, [x8, _GLFW_OPENGL_FORWARD_COMPAT@GOTPAGEOFF]
Lloh23:
	ldr	w0, [x8]
Lloh24:
	adrp	x8, _GLFW_TRUE@GOTPAGE
Lloh25:
	ldr	x8, [x8, _GLFW_TRUE@GOTPAGEOFF]
Lloh26:
	ldr	w1, [x8]
	bl	_glfwWindowHint
Lloh27:
	adrp	x2, l_.str@PAGE
Lloh28:
	add	x2, x2, l_.str@PAGEOFF
	mov	w0, #800
	mov	w1, #600
	mov	x3, #0
	mov	x4, #0
	bl	_glfwCreateWindow
	cbz	x0, LBB0_3
; %bb.2:
	mov	x19, x0
Lloh29:
	adrp	x8, _key_callback@GOTPAGE
Lloh30:
	ldr	x8, [x8, _key_callback@GOTPAGEOFF]
Lloh31:
	ldr	w1, [x8]
	bl	_glfwSetKeyCallback
	mov	x0, x19
	bl	_glfwMakeContextCurrent
Lloh32:
	adrp	x8, _glfwGetProcAddress@GOTPAGE
Lloh33:
	ldr	x8, [x8, _glfwGetProcAddress@GOTPAGEOFF]
Lloh34:
	ldr	w0, [x8]
	bl	_gladLoadGL
Lloh35:
	adrp	x8, _vertex_shader_text@GOTPAGE
Lloh36:
	ldr	x8, [x8, _vertex_shader_text@GOTPAGEOFF]
Lloh37:
	ldr	w0, [x8]
Lloh38:
	adrp	x8, _fragment_shader_text@GOTPAGE
Lloh39:
	ldr	x8, [x8, _fragment_shader_text@GOTPAGEOFF]
Lloh40:
	ldr	w1, [x8]
	bl	_make_shader_program
	cbnz	w0, LBB0_5
LBB0_3:
	bl	_glfwTerminate
LBB0_4:
Lloh41:
	adrp	x8, _EXIT_FAILURE@GOTPAGE
Lloh42:
	ldr	x8, [x8, _EXIT_FAILURE@GOTPAGEOFF]
Lloh43:
	ldr	w0, [x8]
	bl	_exit
LBB0_5:
	mov	x20, x0
	bl	_glUseProgram
Lloh44:
	adrp	x1, l_.str.1@PAGE
Lloh45:
	add	x1, x1, l_.str.1@PAGEOFF
	mov	x0, x20
	bl	_glGetUniformLocation
	mov	x21, x0
Lloh46:
	adrp	x1, l_.str.2@PAGE
Lloh47:
	add	x1, x1, l_.str.2@PAGEOFF
	mov	x0, x20
	bl	_glGetUniformLocation
	mov	x22, x0
Lloh48:
	adrp	x8, _view_angle@GOTPAGE
Lloh49:
	ldr	x8, [x8, _view_angle@GOTPAGEOFF]
Lloh50:
	ldr	s0, [x8]
	fmov	s1, #0.50000000
	fmul	s0, s0, s1
	bl	_tanf
	fmov	s1, #1.00000000
	fdiv	s0, s1, s0
Lloh51:
	adrp	x8, _aspect_ratio@GOTPAGE
Lloh52:
	ldr	x8, [x8, _aspect_ratio@GOTPAGEOFF]
Lloh53:
	ldr	s1, [x8]
	fdiv	s1, s0, s1
Lloh54:
	adrp	x8, _projection_matrix@GOTPAGE
Lloh55:
	ldr	x8, [x8, _projection_matrix@GOTPAGEOFF]
Lloh56:
	ldr	x3, [x8]
	str	s1, [x3]
Lloh57:
	adrp	x8, _z_far@GOTPAGE
Lloh58:
	ldr	x8, [x8, _z_far@GOTPAGEOFF]
	str	s0, [x3, #20]
Lloh59:
	ldr	s0, [x8]
Lloh60:
	adrp	x8, _z_near@GOTPAGE
Lloh61:
	ldr	x8, [x8, _z_near@GOTPAGEOFF]
Lloh62:
	ldr	s1, [x8]
	fadd	s2, s0, s1
	fsub	s3, s1, s0
	fdiv	s2, s2, s3
	str	s2, [x3, #40]
	mov	w8, #-1082130432
	str	w8, [x3, #44]
	fmul	s0, s0, s1
	fadd	s0, s0, s0
	fdiv	s0, s0, s3
	str	s0, [x3, #56]
Lloh63:
	adrp	x23, _GL_FALSE@GOTPAGE
Lloh64:
	ldr	x23, [x23, _GL_FALSE@GOTPAGEOFF]
	ldr	w2, [x23]
	mov	x0, x21
	mov	w1, #1
	bl	_glUniformMatrix4fv
Lloh65:
	adrp	x8, _modelview_matrix@GOTPAGE
Lloh66:
	ldr	x8, [x8, _modelview_matrix@GOTPAGEOFF]
Lloh67:
	ldr	x3, [x8]
	fmov.2s	v0, #-5.00000000
	str	d0, [x3, #48]
	mov	w8, #-1046478848
	str	w8, [x3, #56]
	ldr	w2, [x23]
	mov	x0, x22
	mov	w1, #1
	bl	_glUniformMatrix4fv
	bl	_init_map
	mov	x0, x20
	bl	_make_mesh
	add	x1, sp, #12
	add	x2, sp, #8
	mov	x0, x19
	bl	_glfwGetFramebufferSize
	ldp	w3, w2, [sp, #8]
	mov	w0, #0
	mov	w1, #0
	bl	_glViewport
	movi	d0, #0000000000000000
	movi	d1, #0000000000000000
	movi	d2, #0000000000000000
	movi	d3, #0000000000000000
	bl	_glClearColor
	bl	_glfwGetTime
	fmov	d8, d0
	mov	x0, x19
	bl	_glfwWindowShouldClose
	cbnz	w0, LBB0_12
; %bb.6:
	mov	w20, #0
Lloh68:
	adrp	x21, _GL_COLOR_BUFFER_BIT@GOTPAGE
Lloh69:
	ldr	x21, [x21, _GL_COLOR_BUFFER_BIT@GOTPAGEOFF]
Lloh70:
	adrp	x22, _GL_LINES@GOTPAGE
Lloh71:
	ldr	x22, [x22, _GL_LINES@GOTPAGEOFF]
Lloh72:
	adrp	x23, _MAP_NUM_LINES@GOTPAGE
Lloh73:
	ldr	x23, [x23, _MAP_NUM_LINES@GOTPAGEOFF]
Lloh74:
	adrp	x24, _GL_UNSIGNED_INT@GOTPAGE
Lloh75:
	ldr	x24, [x24, _GL_UNSIGNED_INT@GOTPAGEOFF]
	mov	x25, #-7378697629483820647
	movk	x25, #39322
	movk	x25, #16329, lsl #48
Lloh76:
	adrp	x26, _MAX_ITER@GOTPAGE
Lloh77:
	ldr	x26, [x26, _MAX_ITER@GOTPAGEOFF]
Lloh78:
	adrp	x27, _NUM_ITER_AT_A_TIME@GOTPAGE
Lloh79:
	ldr	x27, [x27, _NUM_ITER_AT_A_TIME@GOTPAGEOFF]
	b	LBB0_9
LBB0_7:                                 ;   in Loop: Header=BB0_9 Depth=1
	fmov	d9, d8
LBB0_8:                                 ;   in Loop: Header=BB0_9 Depth=1
	mov	x0, x19
	bl	_glfwWindowShouldClose
	fmov	d8, d9
	cbnz	w0, LBB0_12
LBB0_9:                                 ; =>This Inner Loop Header: Depth=1
	ldr	w0, [x21]
	bl	_glClear
	ldr	w0, [x22]
	ldr	w8, [x23]
	lsl	w1, w8, #1
	ldr	w2, [x24]
	mov	w3, #0
	bl	_glDrawElements
	mov	x0, x19
	bl	_glfwSwapBuffers
	bl	_glfwPollEvents
	bl	_glfwGetTime
	fmov	d9, d0
	fsub	d0, d0, d8
	fmov	d1, x25
	fcmp	d0, d1
	b.le	LBB0_7
; %bb.10:                               ;   in Loop: Header=BB0_9 Depth=1
	ldr	w8, [x26]
	cmp	w20, w8
	b.ge	LBB0_8
; %bb.11:                               ;   in Loop: Header=BB0_9 Depth=1
	ldr	x0, [x27]
	bl	_update_map
	bl	_update_mesh
	ldr	w8, [x27]
	add	w20, w20, w8
	b	LBB0_8
LBB0_12:
	bl	_glfwTerminate
Lloh80:
	adrp	x8, _EXIT_SUCCESS@GOTPAGE
Lloh81:
	ldr	x8, [x8, _EXIT_SUCCESS@GOTPAGEOFF]
Lloh82:
	ldr	w0, [x8]
	bl	_exit
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh41, Lloh42, Lloh43
	.loh AdrpLdrGotLdr	Lloh65, Lloh66, Lloh67
	.loh AdrpLdrGot	Lloh63, Lloh64
	.loh AdrpLdrGotLdr	Lloh60, Lloh61, Lloh62
	.loh AdrpLdrGotLdr	Lloh57, Lloh58, Lloh59
	.loh AdrpLdrGotLdr	Lloh54, Lloh55, Lloh56
	.loh AdrpLdrGotLdr	Lloh51, Lloh52, Lloh53
	.loh AdrpLdrGotLdr	Lloh48, Lloh49, Lloh50
	.loh AdrpAdd	Lloh46, Lloh47
	.loh AdrpAdd	Lloh44, Lloh45
	.loh AdrpLdrGot	Lloh78, Lloh79
	.loh AdrpLdrGot	Lloh76, Lloh77
	.loh AdrpLdrGot	Lloh74, Lloh75
	.loh AdrpLdrGot	Lloh72, Lloh73
	.loh AdrpLdrGot	Lloh70, Lloh71
	.loh AdrpLdrGot	Lloh68, Lloh69
	.loh AdrpLdrGotLdr	Lloh80, Lloh81, Lloh82
	.cfi_endproc
                                        ; -- End function
	.comm	_error_callback,4,2             ; @error_callback
	.comm	_EXIT_FAILURE,4,2               ; @EXIT_FAILURE
	.comm	_GLFW_RESIZABLE,4,2             ; @GLFW_RESIZABLE
	.comm	_GLFW_FALSE,4,2                 ; @GLFW_FALSE
	.comm	_GLFW_CONTEXT_VERSION_MAJOR,4,2 ; @GLFW_CONTEXT_VERSION_MAJOR
	.comm	_GLFW_CONTEXT_VERSION_MINOR,4,2 ; @GLFW_CONTEXT_VERSION_MINOR
	.comm	_GLFW_OPENGL_PROFILE,4,2        ; @GLFW_OPENGL_PROFILE
	.comm	_GLFW_OPENGL_CORE_PROFILE,4,2   ; @GLFW_OPENGL_CORE_PROFILE
	.comm	_GLFW_OPENGL_FORWARD_COMPAT,4,2 ; @GLFW_OPENGL_FORWARD_COMPAT
	.comm	_GLFW_TRUE,4,2                  ; @GLFW_TRUE
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"GLFW OpenGL3 Heightmap demo"

	.comm	_key_callback,4,2               ; @key_callback
	.comm	_glfwGetProcAddress,4,2         ; @glfwGetProcAddress
	.comm	_vertex_shader_text,4,2         ; @vertex_shader_text
	.comm	_fragment_shader_text,4,2       ; @fragment_shader_text
l_.str.1:                               ; @.str.1
	.asciz	"project"

l_.str.2:                               ; @.str.2
	.asciz	"modelview"

	.comm	_view_angle,4,2                 ; @view_angle
	.comm	_aspect_ratio,4,2               ; @aspect_ratio
	.comm	_projection_matrix,8,3          ; @projection_matrix
	.comm	_z_far,4,2                      ; @z_far
	.comm	_z_near,4,2                     ; @z_near
	.comm	_GL_FALSE,4,2                   ; @GL_FALSE
	.comm	_modelview_matrix,8,3           ; @modelview_matrix
	.comm	_GL_COLOR_BUFFER_BIT,4,2        ; @GL_COLOR_BUFFER_BIT
	.comm	_GL_LINES,4,2                   ; @GL_LINES
	.comm	_MAP_NUM_LINES,4,2              ; @MAP_NUM_LINES
	.comm	_GL_UNSIGNED_INT,4,2            ; @GL_UNSIGNED_INT
	.comm	_MAX_ITER,4,2                   ; @MAX_ITER
	.comm	_NUM_ITER_AT_A_TIME,8,3         ; @NUM_ITER_AT_A_TIME
	.comm	_EXIT_SUCCESS,4,2               ; @EXIT_SUCCESS
.subsections_via_symbols
