	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	4, 0x90                         ## -- Begin function bi_checkcpu
_bi_checkcpu:                           ## @bi_checkcpu
	.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
	subq	$40, %rsp
	.cfi_offset %rbx, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -32(%rbp)
	xorl	%r14d, %r14d
	xorl	%eax, %eax
	callq	_read_eflags
	movl	%eax, %ebx
	movq	_PSL_ID@GOTPCREL(%rip), %r15
	movl	(%r15), %edi
	xorl	%eax, %edi
	callq	_write_eflags
	xorl	%eax, %eax
	callq	_read_eflags
	xorl	%ebx, %eax
	testl	%eax, (%r15)
	je	LBB0_6
## %bb.1:
	leaq	-64(%rbp), %rsi
	xorl	%edi, %edi
	callq	_do_cpuid
	movl	-60(%rbp), %eax
	movq	-56(%rbp), %rcx
	rolq	$32, %rcx
	movl	%eax, -44(%rbp)
	movq	%rcx, -40(%rbp)
	movq	_INTEL_VENDOR_ID@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	leaq	-44(%rbp), %rdi
	movl	$12, %edx
	callq	_strncmp
	testq	%rax, %rax
	je	LBB0_4
## %bb.2:
	movq	_AMD_VENDOR_ID@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	leaq	-44(%rbp), %rdi
	movl	$12, %edx
	callq	_strncmp
	testq	%rax, %rax
	je	LBB0_4
## %bb.3:
	movq	_CENTAUR_VENDOR_ID@GOTPCREL(%rip), %rax
	movl	(%rax), %esi
	leaq	-44(%rbp), %rdi
	movl	$12, %edx
	callq	_strncmp
	xorl	%r14d, %r14d
	testq	%rax, %rax
	jne	LBB0_6
LBB0_4:
	leaq	-64(%rbp), %rsi
	movl	$-2147483648, %edi              ## imm = 0x80000000
	callq	_do_cpuid
	cmpl	$-2147483647, -64(%rbp)         ## imm = 0x80000001
	movl	$0, %r14d
	jb	LBB0_6
## %bb.5:
	leaq	-64(%rbp), %rsi
	movl	$-2147483647, %edi              ## imm = 0x80000001
	callq	_do_cpuid
	movq	_AMDID_LM@GOTPCREL(%rip), %rax
	movl	(%rax), %r14d
	andl	-52(%rbp), %r14d
LBB0_6:
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-32(%rbp), %rax
	jne	LBB0_8
## %bb.7:
	movl	%r14d, %eax
	addq	$40, %rsp
	popq	%rbx
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_8:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.comm	_PSL_ID,4,2                     ## @PSL_ID
	.comm	_INTEL_VENDOR_ID,4,2            ## @INTEL_VENDOR_ID
	.comm	_AMD_VENDOR_ID,4,2              ## @AMD_VENDOR_ID
	.comm	_CENTAUR_VENDOR_ID,4,2          ## @CENTAUR_VENDOR_ID
	.comm	_AMDID_LM,4,2                   ## @AMDID_LM
	.no_dead_strip	_bi_checkcpu
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function bi_checkcpu
_bi_checkcpu:                           ; @bi_checkcpu
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #80
	.cfi_def_cfa_offset 80
	stp	x20, x19, [sp, #48]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #64]             ; 16-byte Folded Spill
	add	x29, sp, #64
	.cfi_def_cfa w29, 16
	.cfi_offset w30, -8
	.cfi_offset w29, -16
	.cfi_offset w19, -24
	.cfi_offset w20, -32
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	stur	x8, [x29, #-24]
	bl	_read_eflags
	mov	x19, x0
Lloh3:
	adrp	x20, _PSL_ID@GOTPAGE
Lloh4:
	ldr	x20, [x20, _PSL_ID@GOTPAGEOFF]
	ldr	w8, [x20]
	eor	w0, w8, w0
	bl	_write_eflags
	bl	_read_eflags
	eor	w8, w0, w19
	ldr	w9, [x20]
	tst	w8, w9
	b.eq	LBB0_6
; %bb.1:
	add	x1, sp, #12
	mov	w0, #0
	bl	_do_cpuid
	ldr	w8, [sp, #16]
	str	w8, [sp, #28]
	ldur	d0, [sp, #20]
	rev64.2s	v0, v0
	stur	d0, [sp, #32]
Lloh5:
	adrp	x8, _INTEL_VENDOR_ID@GOTPAGE
Lloh6:
	ldr	x8, [x8, _INTEL_VENDOR_ID@GOTPAGEOFF]
Lloh7:
	ldr	w1, [x8]
	add	x0, sp, #28
	mov	w2, #12
	bl	_strncmp
	cbz	x0, LBB0_4
; %bb.2:
Lloh8:
	adrp	x8, _AMD_VENDOR_ID@GOTPAGE
Lloh9:
	ldr	x8, [x8, _AMD_VENDOR_ID@GOTPAGEOFF]
Lloh10:
	ldr	w1, [x8]
	add	x0, sp, #28
	mov	w2, #12
	bl	_strncmp
	cbz	x0, LBB0_4
; %bb.3:
Lloh11:
	adrp	x8, _CENTAUR_VENDOR_ID@GOTPAGE
Lloh12:
	ldr	x8, [x8, _CENTAUR_VENDOR_ID@GOTPAGEOFF]
Lloh13:
	ldr	w1, [x8]
	add	x0, sp, #28
	mov	w2, #12
	bl	_strncmp
	cbnz	x0, LBB0_6
LBB0_4:
	add	x1, sp, #12
	mov	w0, #-2147483648
	bl	_do_cpuid
	ldr	w8, [sp, #12]
	mov	w9, #-2147483647
	cmp	w8, w9
	b.lo	LBB0_6
; %bb.5:
	add	x1, sp, #12
	mov	w0, #-2147483647
	bl	_do_cpuid
	ldr	w8, [sp, #24]
Lloh14:
	adrp	x9, _AMDID_LM@GOTPAGE
Lloh15:
	ldr	x9, [x9, _AMDID_LM@GOTPAGEOFF]
Lloh16:
	ldr	w9, [x9]
	and	w0, w9, w8
	b	LBB0_7
LBB0_6:
	mov	w0, #0
LBB0_7:
	ldur	x8, [x29, #-24]
Lloh17:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh18:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh19:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_9
; %bb.8:
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	add	sp, sp, #80
	ret
LBB0_9:
	bl	___stack_chk_fail
	.loh AdrpLdrGot	Lloh3, Lloh4
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh5, Lloh6, Lloh7
	.loh AdrpLdrGotLdr	Lloh8, Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh13
	.loh AdrpLdrGotLdr	Lloh14, Lloh15, Lloh16
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.cfi_endproc
                                        ; -- End function
	.comm	_PSL_ID,4,2                     ; @PSL_ID
	.comm	_INTEL_VENDOR_ID,4,2            ; @INTEL_VENDOR_ID
	.comm	_AMD_VENDOR_ID,4,2              ; @AMD_VENDOR_ID
	.comm	_CENTAUR_VENDOR_ID,4,2          ; @CENTAUR_VENDOR_ID
	.comm	_AMDID_LM,4,2                   ; @AMDID_LM
	.no_dead_strip	_bi_checkcpu
.subsections_via_symbols
