	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function i915_ironlake_get_mem_freq
_i915_ironlake_get_mem_freq:            ## @i915_ironlake_get_mem_freq
	.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	%rbx
	pushq	%rax
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %r14
	leaq	16(%rdi), %rbx
	movq	_DDRMPLL1@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	callq	_intel_uncore_read16
	movl	%eax, %r15d
	movq	_CSIPLL0@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	movq	%rbx, %rdi
	callq	_intel_uncore_read16
	movl	%eax, %ebx
	movzbl	%r15b, %esi
	leal	-12(%rsi), %eax
	roll	$30, %eax
	cmpl	$4, %eax
	jae	LBB0_1
## %bb.2:
	cltq
	leaq	L_switch.table.i915_ironlake_get_mem_freq(%rip), %rcx
	movl	(%rcx,%rax,4), %eax
	jmp	LBB0_3
LBB0_1:
	leaq	L_.str(%rip), %rdi
                                        ## kill: def $esi killed $esi killed $rsi
	callq	_DRM_DEBUG_DRIVER
	xorl	%eax, %eax
LBB0_3:
	movl	%eax, (%r14)
	movl	%eax, 8(%r14)
	andl	$1023, %ebx                     ## imm = 0x3FF
	leal	-12(%rbx), %edi
	cmpl	$12, %edi
	ja	LBB0_7
## %bb.4:
	movl	$5333, %eax                     ## imm = 0x14D5
	movl	$3733, %r8d                     ## imm = 0xE95
	xorl	%ecx, %ecx
	movl	$3200, %esi                     ## imm = 0xC80
	leaq	LJTI0_0(%rip), %rdx
	movslq	(%rdx,%rdi,4), %rdi
	addq	%rdx, %rdi
	jmpq	*%rdi
LBB0_8:
	movl	$4266, %r8d                     ## imm = 0x10AA
	jmp	LBB0_9
LBB0_7:
	leaq	L_.str.1(%rip), %rdi
	movl	%ebx, %esi
	callq	_DRM_DEBUG_DRIVER
	xorl	%eax, %eax
	jmp	LBB0_11
LBB0_10:
	movl	$5866, %eax                     ## imm = 0x16EA
	jmp	LBB0_11
LBB0_6:
	movl	$6400, %eax                     ## imm = 0x1900
LBB0_11:
	movl	$2, %ecx
	movl	%eax, %esi
	jmp	LBB0_12
LBB0_5:
	movl	$4800, %r8d                     ## imm = 0x12C0
LBB0_9:
	movl	$1, %ecx
	movl	%r8d, %esi
LBB0_12:
	movl	%esi, 4(%r14)
	movl	%ecx, 12(%r14)
	addq	$8, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
	.p2align	2, 0x90
	.data_region jt32
.set L0_0_set_12, LBB0_12-LJTI0_0
.set L0_0_set_7, LBB0_7-LJTI0_0
.set L0_0_set_9, LBB0_9-LJTI0_0
.set L0_0_set_8, LBB0_8-LJTI0_0
.set L0_0_set_5, LBB0_5-LJTI0_0
.set L0_0_set_11, LBB0_11-LJTI0_0
.set L0_0_set_10, LBB0_10-LJTI0_0
.set L0_0_set_6, LBB0_6-LJTI0_0
LJTI0_0:
	.long	L0_0_set_12
	.long	L0_0_set_7
	.long	L0_0_set_9
	.long	L0_0_set_7
	.long	L0_0_set_8
	.long	L0_0_set_7
	.long	L0_0_set_5
	.long	L0_0_set_7
	.long	L0_0_set_11
	.long	L0_0_set_7
	.long	L0_0_set_10
	.long	L0_0_set_7
	.long	L0_0_set_6
	.end_data_region
                                        ## -- End function
	.comm	_DDRMPLL1,4,2                   ## @DDRMPLL1
	.comm	_CSIPLL0,4,2                    ## @CSIPLL0
	.section	__TEXT,__cstring,cstring_literals
L_.str:                                 ## @.str
	.asciz	"unknown memory frequency 0x%02x\n"

L_.str.1:                               ## @.str.1
	.asciz	"unknown fsb frequency 0x%04x\n"

	.no_dead_strip	_i915_ironlake_get_mem_freq
	.section	__TEXT,__literal16,16byte_literals
	.p2align	2                               ## @switch.table.i915_ironlake_get_mem_freq
L_switch.table.i915_ironlake_get_mem_freq:
	.long	800                             ## 0x320
	.long	1066                            ## 0x42a
	.long	1333                            ## 0x535
	.long	1600                            ## 0x640

.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function i915_ironlake_get_mem_freq
_i915_ironlake_get_mem_freq:            ; @i915_ironlake_get_mem_freq
	.cfi_startproc
; %bb.0:
	stp	x22, x21, [sp, #-48]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 48
	stp	x20, x19, [sp, #16]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #32]             ; 16-byte Folded Spill
	add	x29, sp, #32
	.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
	mov	x19, x0
	add	x20, x0, #16
Lloh0:
	adrp	x8, _DDRMPLL1@GOTPAGE
Lloh1:
	ldr	x8, [x8, _DDRMPLL1@GOTPAGEOFF]
Lloh2:
	ldr	w1, [x8]
	mov	x0, x20
	bl	_intel_uncore_read16
	mov	x21, x0
Lloh3:
	adrp	x8, _CSIPLL0@GOTPAGE
Lloh4:
	ldr	x8, [x8, _CSIPLL0@GOTPAGEOFF]
Lloh5:
	ldr	w1, [x8]
	mov	x0, x20
	bl	_intel_uncore_read16
	mov	x20, x0
	and	w1, w21, #0xff
	sub	w8, w1, #12
	ror	w8, w8, #2
	cmp	w8, #4
	b.hs	LBB0_2
; %bb.1:
Lloh6:
	adrp	x9, l_switch.table.i915_ironlake_get_mem_freq@PAGE
Lloh7:
	add	x9, x9, l_switch.table.i915_ironlake_get_mem_freq@PAGEOFF
	ldr	w8, [x9, w8, sxtw #2]
	b	LBB0_3
LBB0_2:
Lloh8:
	adrp	x0, l_.str@PAGE
Lloh9:
	add	x0, x0, l_.str@PAGEOFF
	bl	_DRM_DEBUG_DRIVER
	mov	w8, #0
LBB0_3:
	str	w8, [x19]
	str	w8, [x19, #8]
	and	w1, w20, #0x3ff
	sub	w12, w1, #12
	cmp	w12, #12
	b.hi	LBB0_6
; %bb.4:
	mov	w9, #0
	mov	w8, #5333
	mov	w10, #3733
	mov	w11, #3200
Lloh10:
	adrp	x13, lJTI0_0@PAGE
Lloh11:
	add	x13, x13, lJTI0_0@PAGEOFF
	adr	x14, LBB0_5
	ldrb	w15, [x13, x12]
	add	x14, x14, x15, lsl #2
	br	x14
LBB0_5:
	mov	w10, #4266
	b	LBB0_11
LBB0_6:
Lloh12:
	adrp	x0, l_.str.1@PAGE
Lloh13:
	add	x0, x0, l_.str.1@PAGEOFF
	bl	_DRM_DEBUG_DRIVER
	mov	w8, #0
	b	LBB0_9
LBB0_7:
	mov	w8, #5866
	b	LBB0_9
LBB0_8:
	mov	w8, #6400
LBB0_9:
	mov	w9, #2
	mov	x11, x8
	b	LBB0_12
LBB0_10:
	mov	w10, #4800
LBB0_11:
	mov	w9, #1
	mov	x11, x10
LBB0_12:
	str	w11, [x19, #4]
	str	w9, [x19, #12]
	ldp	x29, x30, [sp, #32]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #16]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp], #48             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpAdd	Lloh6, Lloh7
	.loh AdrpAdd	Lloh8, Lloh9
	.loh AdrpAdd	Lloh10, Lloh11
	.loh AdrpAdd	Lloh12, Lloh13
	.cfi_endproc
	.section	__TEXT,__const
lJTI0_0:
	.byte	(LBB0_12-LBB0_5)>>2
	.byte	(LBB0_6-LBB0_5)>>2
	.byte	(LBB0_11-LBB0_5)>>2
	.byte	(LBB0_6-LBB0_5)>>2
	.byte	(LBB0_5-LBB0_5)>>2
	.byte	(LBB0_6-LBB0_5)>>2
	.byte	(LBB0_10-LBB0_5)>>2
	.byte	(LBB0_6-LBB0_5)>>2
	.byte	(LBB0_9-LBB0_5)>>2
	.byte	(LBB0_6-LBB0_5)>>2
	.byte	(LBB0_7-LBB0_5)>>2
	.byte	(LBB0_6-LBB0_5)>>2
	.byte	(LBB0_8-LBB0_5)>>2
                                        ; -- End function
	.comm	_DDRMPLL1,4,2                   ; @DDRMPLL1
	.comm	_CSIPLL0,4,2                    ; @CSIPLL0
	.section	__TEXT,__cstring,cstring_literals
l_.str:                                 ; @.str
	.asciz	"unknown memory frequency 0x%02x\n"

l_.str.1:                               ; @.str.1
	.asciz	"unknown fsb frequency 0x%04x\n"

	.no_dead_strip	_i915_ironlake_get_mem_freq
	.section	__TEXT,__literal16,16byte_literals
	.p2align	2                               ; @switch.table.i915_ironlake_get_mem_freq
l_switch.table.i915_ironlake_get_mem_freq:
	.long	800                             ; 0x320
	.long	1066                            ; 0x42a
	.long	1333                            ; 0x535
	.long	1600                            ; 0x640

.subsections_via_symbols
