	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal16,16byte_literals
	.p2align	4                               ## -- Begin function __ieee754_rem_pio2
LCPI0_0:
	.quad	0x8000000000000000              ## double -0
	.quad	0x8000000000000000              ## double -0
LCPI0_1:
	.quad	0x7fffffffffffffff              ## double NaN
	.quad	0x7fffffffffffffff              ## double NaN
	.section	__TEXT,__text,regular,pure_instructions
	.p2align	4, 0x90
___ieee754_rem_pio2:                    ## @__ieee754_rem_pio2
	.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	%r12
	pushq	%rbx
	subq	$80, %rsp
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	movq	%rdi, %r14
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movq	%rax, -40(%rbp)
	movapd	%xmm0, -80(%rbp)                ## 16-byte Spill
	callq	___HI
	movl	%eax, %ebx
	andl	$2147483647, %ebx               ## imm = 0x7FFFFFFF
	cmpl	$1072243195, %ebx               ## imm = 0x3FE921FB
	ja	LBB0_2
## %bb.1:
	movapd	-80(%rbp), %xmm0                ## 16-byte Reload
	movsd	%xmm0, (%r14)
	movq	$0, 8(%r14)
	xorl	%r12d, %r12d
	jmp	LBB0_29
LBB0_2:
	movl	%eax, %r15d
	movapd	-80(%rbp), %xmm2                ## 16-byte Reload
	cmpl	$1073928571, %ebx               ## imm = 0x4002D97B
	ja	LBB0_12
## %bb.3:
	movq	_pio2_1@GOTPCREL(%rip), %rax
	movsd	(%rax), %xmm0                   ## xmm0 = mem[0],zero
	testl	%r15d, %r15d
	jle	LBB0_8
## %bb.4:
	subsd	%xmm0, %xmm2
	cmpl	$1073291771, %ebx               ## imm = 0x3FF921FB
	jne	LBB0_5
## %bb.7:
	movq	_pio2_2@GOTPCREL(%rip), %rax
	subsd	(%rax), %xmm2
	movq	_pio2_2t@GOTPCREL(%rip), %rax
	jmp	LBB0_6
LBB0_12:
	cmpl	$1094263291, %ebx               ## imm = 0x413921FB
	ja	LBB0_22
## %bb.13:
	andpd	LCPI0_1(%rip), %xmm2
	movq	_invpio2@GOTPCREL(%rip), %rax
	movq	_half@GOTPCREL(%rip), %rcx
	xorps	%xmm0, %xmm0
	cvtsi2sdq	(%rcx), %xmm0
	movsd	(%rax), %xmm1                   ## xmm1 = mem[0],zero
	mulsd	%xmm2, %xmm1
	addsd	%xmm0, %xmm1
	cvttsd2si	%xmm1, %r12d
	cvttpd2dq	%xmm1, %xmm0
	cvtdq2pd	%xmm0, %xmm1
	movq	_pio2_1@GOTPCREL(%rip), %rax
	movsd	(%rax), %xmm0                   ## xmm0 = mem[0],zero
	mulsd	%xmm1, %xmm0
	subsd	%xmm0, %xmm2
	movq	_pio2_1t@GOTPCREL(%rip), %rax
	movsd	(%rax), %xmm3                   ## xmm3 = mem[0],zero
	mulsd	%xmm1, %xmm3
	cmpl	$31, %r12d
	jg	LBB0_15
## %bb.14:
	movq	_npio2_hw@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	movslq	%r12d, %rcx
	cmpl	-4(%rax,%rcx,4), %ebx
	jne	LBB0_19
LBB0_15:
	movapd	%xmm1, -112(%rbp)               ## 16-byte Spill
	shrl	$20, %ebx
	movapd	%xmm2, %xmm0
	movsd	%xmm3, -88(%rbp)                ## 8-byte Spill
	subsd	%xmm3, %xmm0
	movsd	%xmm0, (%r14)
	movapd	%xmm2, -80(%rbp)                ## 16-byte Spill
	callq	___HI
	shrl	$20, %eax
	andl	$2047, %eax                     ## imm = 0x7FF
	movl	%ebx, %ecx
	subl	%eax, %ecx
	cmpl	$17, %ecx
	jl	LBB0_16
## %bb.17:
	movq	_pio2_2@GOTPCREL(%rip), %rax
	movsd	(%rax), %xmm0                   ## xmm0 = mem[0],zero
	movapd	-112(%rbp), %xmm2               ## 16-byte Reload
	mulsd	%xmm2, %xmm0
	movapd	-80(%rbp), %xmm4                ## 16-byte Reload
	movapd	%xmm4, %xmm3
	subsd	%xmm0, %xmm3
	movq	_pio2_2t@GOTPCREL(%rip), %rax
	subsd	%xmm3, %xmm4
	subsd	%xmm0, %xmm4
	movsd	(%rax), %xmm1                   ## xmm1 = mem[0],zero
	mulsd	%xmm2, %xmm1
	subsd	%xmm4, %xmm1
	movapd	%xmm3, -80(%rbp)                ## 16-byte Spill
	movapd	%xmm3, %xmm0
	movsd	%xmm1, -88(%rbp)                ## 8-byte Spill
	subsd	%xmm1, %xmm0
	movsd	%xmm0, (%r14)
	callq	___HI
	shrl	$20, %eax
	andl	$2047, %eax                     ## imm = 0x7FF
	subl	%eax, %ebx
	cmpl	$50, %ebx
	jl	LBB0_16
## %bb.18:
	movq	_pio2_3@GOTPCREL(%rip), %rax
	movsd	(%rax), %xmm0                   ## xmm0 = mem[0],zero
	movapd	-112(%rbp), %xmm3               ## 16-byte Reload
	mulsd	%xmm3, %xmm0
	movapd	-80(%rbp), %xmm1                ## 16-byte Reload
	movapd	%xmm1, %xmm2
	subsd	%xmm0, %xmm2
	movq	_pio2_3t@GOTPCREL(%rip), %rax
	subsd	%xmm2, %xmm1
	subsd	%xmm0, %xmm1
	mulsd	(%rax), %xmm3
	subsd	%xmm1, %xmm3
LBB0_19:
	movapd	%xmm2, %xmm0
	subsd	%xmm3, %xmm0
	movsd	%xmm0, (%r14)
	jmp	LBB0_20
LBB0_22:
	cmpl	$2146435072, %ebx               ## imm = 0x7FF00000
	jb	LBB0_24
## %bb.23:
	subsd	%xmm2, %xmm2
	movsd	%xmm2, 8(%r14)
	movsd	%xmm2, (%r14)
	xorl	%r12d, %r12d
	jmp	LBB0_29
LBB0_8:
	addsd	%xmm2, %xmm0
	cmpl	$1073291771, %ebx               ## imm = 0x3FF921FB
	jne	LBB0_9
## %bb.11:
	movq	_pio2_2@GOTPCREL(%rip), %rax
	addsd	(%rax), %xmm0
	movq	_pio2_2t@GOTPCREL(%rip), %rax
	jmp	LBB0_10
LBB0_5:
	movq	_pio2_1t@GOTPCREL(%rip), %rax
LBB0_6:
	movapd	%xmm2, %xmm0
	subsd	(%rax), %xmm0
	movsd	%xmm0, (%r14)
	subsd	%xmm0, %xmm2
	subsd	(%rax), %xmm2
	movsd	%xmm2, 8(%r14)
	movl	$1, %r12d
	jmp	LBB0_29
LBB0_16:
	movapd	-80(%rbp), %xmm2                ## 16-byte Reload
	movsd	-88(%rbp), %xmm3                ## 8-byte Reload
                                        ## xmm3 = mem[0],zero
LBB0_20:
	movsd	(%r14), %xmm0                   ## xmm0 = mem[0],zero
	subsd	%xmm0, %xmm2
	subsd	%xmm3, %xmm2
	movsd	%xmm2, 8(%r14)
	testl	%r15d, %r15d
	jns	LBB0_29
## %bb.21:
	unpcklpd	%xmm2, %xmm0                    ## xmm0 = xmm0[0],xmm2[0]
	jmp	LBB0_28
LBB0_24:
	movapd	%xmm2, %xmm0
	callq	___LO
	shrl	$20, %ebx
	movq	$0, -64(%rbp)
	movq	_zero@GOTPCREL(%rip), %rax
	movsd	(%rax), %xmm0                   ## xmm0 = mem[0],zero
	movl	$2, %ecx
	.p2align	4, 0x90
LBB0_25:                                ## =>This Inner Loop Header: Depth=1
	movsd	-64(%rbp,%rcx,8), %xmm1         ## xmm1 = mem[0],zero
	decq	%rcx
	ucomisd	%xmm0, %xmm1
	jne	LBB0_26
	jnp	LBB0_25
LBB0_26:
	addl	$-1046, %ebx                    ## imm = 0xFBEA
	addl	$2, %ecx
	leaq	-64(%rbp), %rdi
	movq	%r14, %rsi
	movl	%ebx, %edx
                                        ## kill: def $ecx killed $ecx killed $rcx
	movl	$2, %r8d
	callq	___kernel_rem_pio2
	movl	%eax, %r12d
	testl	%r15d, %r15d
	jns	LBB0_29
## %bb.27:
	movupd	(%r14), %xmm0
LBB0_28:
	xorpd	LCPI0_0(%rip), %xmm0
	movupd	%xmm0, (%r14)
	negl	%r12d
	jmp	LBB0_29
LBB0_9:
	movq	_pio2_1t@GOTPCREL(%rip), %rax
LBB0_10:
	movsd	(%rax), %xmm1                   ## xmm1 = mem[0],zero
	addsd	%xmm0, %xmm1
	movsd	%xmm1, (%r14)
	subsd	%xmm1, %xmm0
	addsd	(%rax), %xmm0
	movsd	%xmm0, 8(%r14)
	movl	$-1, %r12d
LBB0_29:
	movq	___stack_chk_guard@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	cmpq	-40(%rbp), %rax
	jne	LBB0_31
## %bb.30:
	movl	%r12d, %eax
	addq	$80, %rsp
	popq	%rbx
	popq	%r12
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
LBB0_31:
	callq	___stack_chk_fail
	.cfi_endproc
                                        ## -- End function
	.comm	_pio2_1,8,3                     ## @pio2_1
	.comm	_pio2_1t,8,3                    ## @pio2_1t
	.comm	_pio2_2,8,3                     ## @pio2_2
	.comm	_pio2_2t,8,3                    ## @pio2_2t
	.comm	_invpio2,8,3                    ## @invpio2
	.comm	_half,8,3                       ## @half
	.comm	_npio2_hw,8,3                   ## @npio2_hw
	.comm	_pio2_3,8,3                     ## @pio2_3
	.comm	_pio2_3t,8,3                    ## @pio2_3t
	.comm	_two24,8,3                      ## @two24
	.comm	_zero,8,3                       ## @zero
	.no_dead_strip	___ieee754_rem_pio2
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.p2align	2                               ; -- Begin function __ieee754_rem_pio2
___ieee754_rem_pio2:                    ; @__ieee754_rem_pio2
	.cfi_startproc
; %bb.0:
	sub	sp, sp, #112
	.cfi_def_cfa_offset 112
	stp	d11, d10, [sp, #32]             ; 16-byte Folded Spill
	stp	d9, d8, [sp, #48]               ; 16-byte Folded Spill
	stp	x22, x21, [sp, #64]             ; 16-byte Folded Spill
	stp	x20, x19, [sp, #80]             ; 16-byte Folded Spill
	stp	x29, x30, [sp, #96]             ; 16-byte Folded Spill
	add	x29, sp, #96
	.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 b8, -56
	.cfi_offset b9, -64
	.cfi_offset b10, -72
	.cfi_offset b11, -80
	mov	x19, x0
	fmov	d8, d0
Lloh0:
	adrp	x8, ___stack_chk_guard@GOTPAGE
Lloh1:
	ldr	x8, [x8, ___stack_chk_guard@GOTPAGEOFF]
Lloh2:
	ldr	x8, [x8]
	str	x8, [sp, #24]
	bl	___HI
	and	w8, w0, #0x7fffffff
	mov	w9, #8699
	movk	w9, #16361, lsl #16
	cmp	w8, w9
	b.hi	LBB0_2
; %bb.1:
	mov	w21, #0
	str	d8, [x19]
	str	xzr, [x19, #8]
	b	LBB0_29
LBB0_2:
	mov	x20, x0
	mov	w9, #55675
	movk	w9, #16386, lsl #16
	cmp	w8, w9
	b.hi	LBB0_6
; %bb.3:
	mov	w9, #8699
	movk	w9, #16377, lsl #16
Lloh3:
	adrp	x10, _pio2_1@GOTPAGE
Lloh4:
	ldr	x10, [x10, _pio2_1@GOTPAGEOFF]
Lloh5:
	ldr	d0, [x10]
	cmp	w20, #1
	b.lt	LBB0_15
; %bb.4:
	fsub	d0, d8, d0
	cmp	w8, w9
	b.ne	LBB0_17
; %bb.5:
Lloh6:
	adrp	x8, _pio2_2@GOTPAGE
Lloh7:
	ldr	x8, [x8, _pio2_2@GOTPAGEOFF]
Lloh8:
	ldr	d1, [x8]
	fsub	d0, d0, d1
Lloh9:
	adrp	x8, _pio2_2t@GOTPAGE
Lloh10:
	ldr	x8, [x8, _pio2_2t@GOTPAGEOFF]
	b	LBB0_18
LBB0_6:
	mov	w9, #8699
	movk	w9, #16697, lsl #16
	cmp	w8, w9
	b.hi	LBB0_13
; %bb.7:
	fabs	d0, d8
Lloh11:
	adrp	x9, _invpio2@GOTPAGE
Lloh12:
	ldr	x9, [x9, _invpio2@GOTPAGEOFF]
Lloh13:
	adrp	x10, _half@GOTPAGE
Lloh14:
	ldr	x10, [x10, _half@GOTPAGEOFF]
Lloh15:
	ldr	d1, [x9]
Lloh16:
	ldr	d2, [x10]
	scvtf	d2, d2
	fmadd	d1, d0, d1, d2
	fcvtzs	w21, d1
	scvtf	d10, w21
Lloh17:
	adrp	x9, _pio2_1@GOTPAGE
Lloh18:
	ldr	x9, [x9, _pio2_1@GOTPAGEOFF]
Lloh19:
	ldr	d1, [x9]
	fmsub	d9, d10, d1, d0
Lloh20:
	adrp	x9, _pio2_1t@GOTPAGE
Lloh21:
	ldr	x9, [x9, _pio2_1t@GOTPAGEOFF]
Lloh22:
	ldr	d0, [x9]
	fmul	d8, d0, d10
	cmp	w21, #31
	b.gt	LBB0_9
; %bb.8:
Lloh23:
	adrp	x9, _npio2_hw@GOTPAGE
Lloh24:
	ldr	x9, [x9, _npio2_hw@GOTPAGEOFF]
Lloh25:
	ldr	x9, [x9]
	sub	w10, w21, #1
	ldr	w9, [x9, w10, sxtw #2]
	cmp	w8, w9
	b.ne	LBB0_12
LBB0_9:
	lsr	w22, w8, #20
	fsub	d0, d9, d8
	str	d0, [x19]
	bl	___HI
	ubfx	w8, w0, #20, #11
	sub	w8, w22, w8
	cmp	w8, #17
	b.lt	LBB0_26
; %bb.10:
Lloh26:
	adrp	x8, _pio2_2@GOTPAGE
Lloh27:
	ldr	x8, [x8, _pio2_2@GOTPAGEOFF]
Lloh28:
	ldr	d0, [x8]
	fmul	d0, d0, d10
	fsub	d11, d9, d0
Lloh29:
	adrp	x8, _pio2_2t@GOTPAGE
Lloh30:
	ldr	x8, [x8, _pio2_2t@GOTPAGEOFF]
Lloh31:
	ldr	d1, [x8]
	fsub	d2, d9, d11
	fsub	d0, d2, d0
	fnmsub	d8, d10, d1, d0
	fsub	d0, d11, d8
	str	d0, [x19]
	bl	___HI
	ubfx	w8, w0, #20, #11
	sub	w8, w22, w8
	cmp	w8, #50
	b.lt	LBB0_25
; %bb.11:
Lloh32:
	adrp	x8, _pio2_3@GOTPAGE
Lloh33:
	ldr	x8, [x8, _pio2_3@GOTPAGEOFF]
Lloh34:
	ldr	d0, [x8]
	fmul	d0, d0, d10
Lloh35:
	adrp	x8, _pio2_3t@GOTPAGE
Lloh36:
	ldr	x8, [x8, _pio2_3t@GOTPAGEOFF]
	fsub	d9, d11, d0
Lloh37:
	ldr	d1, [x8]
	fsub	d2, d11, d9
	fsub	d0, d2, d0
	fnmsub	d8, d10, d1, d0
LBB0_12:
	fsub	d0, d9, d8
	str	d0, [x19]
	b	LBB0_26
LBB0_13:
	lsr	w21, w8, #20
	cmp	w21, #2047
	b.lo	LBB0_19
; %bb.14:
	mov	w21, #0
	fsub	d0, d8, d8
	stp	d0, d0, [x19]
	b	LBB0_29
LBB0_15:
	fadd	d0, d0, d8
	cmp	w8, w9
	b.ne	LBB0_23
; %bb.16:
Lloh38:
	adrp	x8, _pio2_2@GOTPAGE
Lloh39:
	ldr	x8, [x8, _pio2_2@GOTPAGEOFF]
Lloh40:
	ldr	d1, [x8]
	fadd	d0, d0, d1
Lloh41:
	adrp	x8, _pio2_2t@GOTPAGE
Lloh42:
	ldr	x8, [x8, _pio2_2t@GOTPAGEOFF]
	b	LBB0_24
LBB0_17:
Lloh43:
	adrp	x8, _pio2_1t@GOTPAGE
Lloh44:
	ldr	x8, [x8, _pio2_1t@GOTPAGEOFF]
LBB0_18:
	ldr	d1, [x8]
	fsub	d1, d0, d1
	str	d1, [x19]
	fsub	d0, d0, d1
	ldr	d1, [x8]
	fsub	d0, d0, d1
	str	d0, [x19, #8]
	mov	w21, #1
	b	LBB0_29
LBB0_19:
	fmov	d0, d8
	bl	___LO
	str	xzr, [sp]
Lloh45:
	adrp	x8, _zero@GOTPAGE
Lloh46:
	ldr	x8, [x8, _zero@GOTPAGEOFF]
Lloh47:
	ldr	d0, [x8]
	mov	w8, #2
	mov	x9, sp
LBB0_20:                                ; =>This Inner Loop Header: Depth=1
	ldr	d1, [x9, x8, lsl #3]
	sub	x8, x8, #1
	fcmp	d1, d0
	b.eq	LBB0_20
; %bb.21:
	sub	w2, w21, #1046
	add	w3, w8, #2
	mov	x0, sp
	mov	x1, x19
	mov	w4, #2
	bl	___kernel_rem_pio2
	mov	x21, x0
	tbz	w20, #31, LBB0_29
; %bb.22:
	ldr	q0, [x19]
	fneg.2d	v0, v0
	str	q0, [x19]
	b	LBB0_28
LBB0_23:
Lloh48:
	adrp	x8, _pio2_1t@GOTPAGE
Lloh49:
	ldr	x8, [x8, _pio2_1t@GOTPAGEOFF]
LBB0_24:
	ldr	d1, [x8]
	fadd	d1, d0, d1
	str	d1, [x19]
	fsub	d0, d0, d1
	ldr	d1, [x8]
	fadd	d0, d0, d1
	str	d0, [x19, #8]
	mov	w21, #-1
	b	LBB0_29
LBB0_25:
	fmov	d9, d11
LBB0_26:
	ldr	d0, [x19]
	fsub	d1, d9, d0
	fsub	d1, d1, d8
	str	d1, [x19, #8]
	tbz	w20, #31, LBB0_29
; %bb.27:
	fneg	d0, d0
	str	d0, [x19]
	fneg	d0, d1
	str	d0, [x19, #8]
LBB0_28:
	neg	w21, w21
LBB0_29:
	ldr	x8, [sp, #24]
Lloh50:
	adrp	x9, ___stack_chk_guard@GOTPAGE
Lloh51:
	ldr	x9, [x9, ___stack_chk_guard@GOTPAGEOFF]
Lloh52:
	ldr	x9, [x9]
	cmp	x9, x8
	b.ne	LBB0_31
; %bb.30:
	mov	x0, x21
	ldp	x29, x30, [sp, #96]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #80]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #64]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #48]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp, #32]             ; 16-byte Folded Reload
	add	sp, sp, #112
	ret
LBB0_31:
	bl	___stack_chk_fail
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGot	Lloh9, Lloh10
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh20, Lloh21, Lloh22
	.loh AdrpLdrGotLdr	Lloh17, Lloh18, Lloh19
	.loh AdrpLdrGotLdr	Lloh13, Lloh14, Lloh16
	.loh AdrpLdrGotLdr	Lloh11, Lloh12, Lloh15
	.loh AdrpLdrGotLdr	Lloh23, Lloh24, Lloh25
	.loh AdrpLdrGotLdr	Lloh29, Lloh30, Lloh31
	.loh AdrpLdrGotLdr	Lloh26, Lloh27, Lloh28
	.loh AdrpLdrGotLdr	Lloh35, Lloh36, Lloh37
	.loh AdrpLdrGotLdr	Lloh32, Lloh33, Lloh34
	.loh AdrpLdrGot	Lloh41, Lloh42
	.loh AdrpLdrGotLdr	Lloh38, Lloh39, Lloh40
	.loh AdrpLdrGot	Lloh43, Lloh44
	.loh AdrpLdrGotLdr	Lloh45, Lloh46, Lloh47
	.loh AdrpLdrGot	Lloh48, Lloh49
	.loh AdrpLdrGotLdr	Lloh50, Lloh51, Lloh52
	.cfi_endproc
                                        ; -- End function
	.comm	_pio2_1,8,3                     ; @pio2_1
	.comm	_pio2_1t,8,3                    ; @pio2_1t
	.comm	_pio2_2,8,3                     ; @pio2_2
	.comm	_pio2_2t,8,3                    ; @pio2_2t
	.comm	_invpio2,8,3                    ; @invpio2
	.comm	_half,8,3                       ; @half
	.comm	_npio2_hw,8,3                   ; @npio2_hw
	.comm	_pio2_3,8,3                     ; @pio2_3
	.comm	_pio2_3t,8,3                    ; @pio2_3t
	.comm	_two24,8,3                      ; @two24
	.comm	_zero,8,3                       ; @zero
	.no_dead_strip	___ieee754_rem_pio2
.subsections_via_symbols
