	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.section	__TEXT,__literal4,4byte_literals
	.p2align	2                               ## -- Begin function atanl
LCPI0_0:
	.long	0xbfc00000                      ## float -1.5
LCPI0_1:
	.long	0x3fc00000                      ## float 1.5
LCPI0_2:
	.long	0x40000000                      ## float 2
	.section	__TEXT,__text,regular,pure_instructions
	.globl	_atanl
	.p2align	4, 0x90
_atanl:                                 ## @atanl
	.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	$96, %rsp
	.cfi_offset %rbx, -48
	.cfi_offset %r12, -40
	.cfi_offset %r14, -32
	.cfi_offset %r15, -24
	fldt	16(%rbp)
	fld	%st(0)
	fstpt	-80(%rbp)
	movq	-80(%rbp), %r14
	movl	%r14d, %eax
	andl	$32767, %eax                    ## imm = 0x7FFF
	movq	_ATAN_CONST@GOTPCREL(%rip), %rcx
	cmpl	(%rcx), %eax
	jge	LBB0_1
## %bb.7:
	movl	%eax, %edx
	movq	_MANH_SIZE@GOTPCREL(%rip), %rcx
	movb	(%rcx), %cl
	addb	$-9, %cl
	movl	%r14d, %esi
	sarl	%cl, %esi
	shll	$8, %edx
	movzbl	%sil, %ebx
	orl	%edx, %ebx
	movq	_BIAS@GOTPCREL(%rip), %rcx
	movl	(%rcx), %ecx
	shll	$8, %ecx
	leal	-320(%rcx), %r15d
	cmpl	%r15d, %ebx
	jge	LBB0_10
## %bb.8:
	movq	_ATAN_LINEAR@GOTPCREL(%rip), %rcx
	movq	$-1, %r12
	cmpl	(%rcx), %eax
	jge	LBB0_17
## %bb.9:
	movq	_huge@GOTPCREL(%rip), %rax
	fld	%st(0)
	faddl	(%rax)
	movq	_one@GOTPCREL(%rip), %rax
	fldl	(%rax)
	fxch	%st(1)
	fucompi	%st(1), %st
	fstp	%st(0)
	jbe	LBB0_17
	jmp	LBB0_20
LBB0_1:
	movq	_BIAS@GOTPCREL(%rip), %rcx
	movq	_LDBL_MAX_EXP@GOTPCREL(%rip), %rdx
	movl	(%rdx), %edx
	addl	(%rcx), %edx
	cmpl	%edx, %eax
	jne	LBB0_4
## %bb.2:
	movq	_LDBL_NBIT@GOTPCREL(%rip), %rax
	movl	(%rax), %eax
	notl	%eax
	andl	%r14d, %eax
	movq	%r14, %rcx
	shrq	$32, %rcx
	orl	%eax, %ecx
	je	LBB0_4
## %bb.3:
	fadd	%st, %st(0)
	jmp	LBB0_20
LBB0_4:
	fstp	%st(0)
	movq	_atanhi@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	fldt	48(%rax)
	testl	%r14d, %r14d
	jle	LBB0_6
## %bb.5:
	movq	_atanlo@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	fldt	48(%rax)
	faddp	%st, %st(1)
	jmp	LBB0_20
LBB0_10:
	fabs
	movl	%ecx, %eax
	orl	$48, %eax
	cmpl	%eax, %ebx
	jge	LBB0_14
## %bb.11:
	addl	$-160, %ecx
	movq	_one@GOTPCREL(%rip), %rax
	fldl	(%rax)
	cmpl	%ecx, %ebx
	jge	LBB0_13
## %bb.12:
	fld	%st(1)
	fadd	%st(2), %st
	fsubp	%st, %st(1)
	fxch	%st(1)
	fadds	LCPI0_2(%rip)
	fdivrp	%st, %st(1)
	xorl	%r12d, %r12d
	jmp	LBB0_17
LBB0_6:
	fchs
	movq	_atanlo@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	fldt	48(%rax)
	fsubrp	%st, %st(1)
	jmp	LBB0_20
LBB0_14:
	addl	$312, %ecx                      ## imm = 0x138
	cmpl	%ecx, %ebx
	jge	LBB0_16
## %bb.15:
	fld	%st(0)
	fadds	LCPI0_0(%rip)
	movq	_one@GOTPCREL(%rip), %rax
	fxch	%st(1)
	fmuls	LCPI0_1(%rip)
	faddl	(%rax)
	fdivrp	%st, %st(1)
	movl	$2, %r12d
	jmp	LBB0_17
LBB0_13:
	fld	%st(1)
	fsub	%st(1), %st
	fxch	%st(2)
	faddp	%st, %st(1)
	fdivrp	%st, %st(1)
	movl	$1, %r12d
	jmp	LBB0_17
LBB0_16:
	fld1
	fchs
	fdivp	%st, %st(1)
	movl	$3, %r12d
LBB0_17:
	fld	%st(0)
	fstpt	-44(%rbp)                       ## 10-byte Folded Spill
	fmul	%st, %st(0)
	fld	%st(0)
	fstpt	-104(%rbp)                      ## 10-byte Folded Spill
	fmul	%st, %st(0)
	fld	%st(0)
	fstpt	-56(%rbp)                       ## 10-byte Folded Spill
	fstpt	(%rsp)
	callq	_T_even
	fstpt	-92(%rbp)                       ## 10-byte Folded Spill
	fldt	-56(%rbp)                       ## 10-byte Folded Reload
	fstpt	(%rsp)
	callq	_T_odd
	fldt	-104(%rbp)                      ## 10-byte Folded Reload
	fldt	-92(%rbp)                       ## 10-byte Folded Reload
	fmulp	%st, %st(1)
	fldt	-56(%rbp)                       ## 10-byte Folded Reload
	fmulp	%st, %st(2)
	cmpl	%r15d, %ebx
	jge	LBB0_19
## %bb.18:
	faddp	%st, %st(1)
	fldt	-44(%rbp)                       ## 10-byte Folded Reload
	fmul	%st, %st(1)
	fsubp	%st, %st(1)
	jmp	LBB0_20
LBB0_19:
	movq	_atanhi@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	shlq	$4, %r12
	fldt	(%rax,%r12)
	fxch	%st(1)
	faddp	%st, %st(2)
	movq	_atanlo@GOTPCREL(%rip), %rax
	movq	(%rax), %rax
	fldt	(%rax,%r12)
	fldt	-44(%rbp)                       ## 10-byte Folded Reload
	fmul	%st, %st(3)
	fxch	%st(3)
	fsubp	%st, %st(1)
	fsubp	%st, %st(2)
	fsubp	%st, %st(1)
	testl	%r14d, %r14d
	sets	%al
	fld	%st(0)
	fchs
	testb	%al, %al
	fxch	%st(1)
	fcmovne	%st(1), %st
	fstp	%st(1)
LBB0_20:
	addq	$96, %rsp
	popq	%rbx
	popq	%r12
	popq	%r14
	popq	%r15
	popq	%rbp
	retq
	.cfi_endproc
                                        ## -- End function
	.comm	_ATAN_CONST,4,2                 ## @ATAN_CONST
	.comm	_BIAS,4,2                       ## @BIAS
	.comm	_LDBL_MAX_EXP,4,2               ## @LDBL_MAX_EXP
	.comm	_LDBL_NBIT,4,2                  ## @LDBL_NBIT
	.comm	_atanhi,8,3                     ## @atanhi
	.comm	_atanlo,8,3                     ## @atanlo
	.comm	_MANH_SIZE,4,2                  ## @MANH_SIZE
	.comm	_ATAN_LINEAR,4,2                ## @ATAN_LINEAR
	.comm	_huge,8,3                       ## @huge
	.comm	_one,8,3                        ## @one
.subsections_via_symbols

	.section	__TEXT,__text,regular,pure_instructions
	.build_version macos, 13, 0	sdk_version 13, 3
	.globl	_atanl                          ; -- Begin function atanl
	.p2align	2
_atanl:                                 ; @atanl
	.cfi_startproc
; %bb.0:
	stp	d11, d10, [sp, #-80]!           ; 16-byte Folded Spill
	.cfi_def_cfa_offset 80
	stp	d9, d8, [sp, #16]               ; 16-byte Folded Spill
	stp	x22, x21, [sp, #32]             ; 16-byte Folded Spill
	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
	.cfi_offset w21, -40
	.cfi_offset w22, -48
	.cfi_offset b8, -56
	.cfi_offset b9, -64
	.cfi_offset b10, -72
	.cfi_offset b11, -80
	fmov	d8, d0
	fmov	x19, d8
	and	w8, w19, #0x7fff
Lloh0:
	adrp	x9, _ATAN_CONST@GOTPAGE
Lloh1:
	ldr	x9, [x9, _ATAN_CONST@GOTPAGEOFF]
Lloh2:
	ldr	w9, [x9]
	cmp	w8, w9
	b.ge	LBB0_5
; %bb.1:
Lloh3:
	adrp	x9, _MANH_SIZE@GOTPAGE
Lloh4:
	ldr	x9, [x9, _MANH_SIZE@GOTPAGEOFF]
Lloh5:
	ldr	w9, [x9]
	sub	w9, w9, #9
	asr	w9, w19, w9
	and	w20, w9, #0xff
	bfi	w20, w8, #8, #15
Lloh6:
	adrp	x9, _BIAS@GOTPAGE
Lloh7:
	ldr	x9, [x9, _BIAS@GOTPAGEOFF]
Lloh8:
	ldr	w9, [x9]
	lsl	w9, w9, #8
	sub	w21, w9, #320
	cmp	w20, w21
	b.ge	LBB0_10
; %bb.2:
Lloh9:
	adrp	x9, _ATAN_LINEAR@GOTPAGE
Lloh10:
	ldr	x9, [x9, _ATAN_LINEAR@GOTPAGEOFF]
Lloh11:
	ldr	w9, [x9]
	cmp	w8, w9
	b.ge	LBB0_4
; %bb.3:
Lloh12:
	adrp	x8, _huge@GOTPAGE
Lloh13:
	ldr	x8, [x8, _huge@GOTPAGEOFF]
Lloh14:
	ldr	d0, [x8]
	fadd	d0, d0, d8
Lloh15:
	adrp	x8, _one@GOTPAGE
Lloh16:
	ldr	x8, [x8, _one@GOTPAGEOFF]
Lloh17:
	ldr	d1, [x8]
	fcmp	d0, d1
	b.gt	LBB0_22
LBB0_4:
	mov	x22, #-1
	b	LBB0_19
LBB0_5:
Lloh18:
	adrp	x9, _BIAS@GOTPAGE
Lloh19:
	ldr	x9, [x9, _BIAS@GOTPAGEOFF]
Lloh20:
	ldr	w9, [x9]
Lloh21:
	adrp	x10, _LDBL_MAX_EXP@GOTPAGE
Lloh22:
	ldr	x10, [x10, _LDBL_MAX_EXP@GOTPAGEOFF]
Lloh23:
	ldr	w10, [x10]
	add	w9, w10, w9
	cmp	w8, w9
	b.ne	LBB0_8
; %bb.6:
Lloh24:
	adrp	x8, _LDBL_NBIT@GOTPAGE
Lloh25:
	ldr	x8, [x8, _LDBL_NBIT@GOTPAGEOFF]
Lloh26:
	ldr	w8, [x8]
	bic	w8, w19, w8
	lsr	x9, x19, #32
	orr	w8, w8, w9
	cbz	w8, LBB0_8
; %bb.7:
	fadd	d8, d8, d8
	b	LBB0_22
LBB0_8:
Lloh27:
	adrp	x8, _atanhi@GOTPAGE
Lloh28:
	ldr	x8, [x8, _atanhi@GOTPAGEOFF]
Lloh29:
	ldr	x8, [x8]
	ldr	d0, [x8, #24]
	cmp	w19, #1
	b.lt	LBB0_13
; %bb.9:
Lloh30:
	adrp	x8, _atanlo@GOTPAGE
Lloh31:
	ldr	x8, [x8, _atanlo@GOTPAGEOFF]
Lloh32:
	ldr	x8, [x8]
	ldr	d1, [x8, #24]
	fadd	d8, d0, d1
	b	LBB0_22
LBB0_10:
	fabs	d0, d8
	orr	w8, w9, #0x30
	cmp	w20, w8
	b.ge	LBB0_14
; %bb.11:
	sub	w8, w9, #160
Lloh33:
	adrp	x9, _one@GOTPAGE
Lloh34:
	ldr	x9, [x9, _one@GOTPAGEOFF]
Lloh35:
	ldr	d1, [x9]
	cmp	w20, w8
	b.ge	LBB0_16
; %bb.12:
	mov	x22, #0
	fmov	d2, #2.00000000
	fnmsub	d1, d0, d2, d1
	fadd	d0, d0, d2
	b	LBB0_18
LBB0_13:
	fneg	d0, d0
Lloh36:
	adrp	x8, _atanlo@GOTPAGE
Lloh37:
	ldr	x8, [x8, _atanlo@GOTPAGEOFF]
Lloh38:
	ldr	x8, [x8]
	ldr	d1, [x8, #24]
	fsub	d8, d0, d1
	b	LBB0_22
LBB0_14:
	add	w8, w9, #312
	cmp	w20, w8
	b.ge	LBB0_17
; %bb.15:
	fmov	d1, #-1.50000000
Lloh39:
	adrp	x8, _one@GOTPAGE
Lloh40:
	ldr	x8, [x8, _one@GOTPAGEOFF]
	fadd	d1, d0, d1
Lloh41:
	ldr	d2, [x8]
	fmov	d3, #1.50000000
	fmadd	d0, d0, d3, d2
	fdiv	d8, d1, d0
	mov	w22, #2
	b	LBB0_19
LBB0_16:
	fsub	d2, d0, d1
	fadd	d0, d0, d1
	mov	w22, #1
	fdiv	d8, d2, d0
	b	LBB0_19
LBB0_17:
	fmov	d1, #-1.00000000
	mov	w22, #3
LBB0_18:
	fdiv	d8, d1, d0
LBB0_19:
	fmul	d10, d8, d8
	fmul	d9, d10, d10
	fmov	d0, d9
	bl	_T_even
	fmul	d10, d10, d0
	fmov	d0, d9
	bl	_T_odd
	fmul	d0, d9, d0
	cmp	w20, w21
	b.ge	LBB0_21
; %bb.20:
	fadd	d0, d10, d0
	fmsub	d0, d8, d0, d8
	b	LBB0_23
LBB0_21:
Lloh42:
	adrp	x8, _atanhi@GOTPAGE
Lloh43:
	ldr	x8, [x8, _atanhi@GOTPAGEOFF]
Lloh44:
	ldr	x8, [x8]
	lsl	x9, x22, #3
	ldr	d1, [x8, x9]
	fadd	d0, d10, d0
Lloh45:
	adrp	x8, _atanlo@GOTPAGE
Lloh46:
	ldr	x8, [x8, _atanlo@GOTPAGEOFF]
Lloh47:
	ldr	x8, [x8]
	ldr	d2, [x8, x9]
	fnmsub	d0, d8, d0, d2
	fsub	d0, d0, d8
	fsub	d0, d1, d0
	fneg	d1, d0
	cmp	w19, #0
	fcsel	d8, d1, d0, lt
LBB0_22:
	fmov	d0, d8
LBB0_23:
	ldp	x29, x30, [sp, #64]             ; 16-byte Folded Reload
	ldp	x20, x19, [sp, #48]             ; 16-byte Folded Reload
	ldp	x22, x21, [sp, #32]             ; 16-byte Folded Reload
	ldp	d9, d8, [sp, #16]               ; 16-byte Folded Reload
	ldp	d11, d10, [sp], #80             ; 16-byte Folded Reload
	ret
	.loh AdrpLdrGotLdr	Lloh0, Lloh1, Lloh2
	.loh AdrpLdrGotLdr	Lloh6, Lloh7, Lloh8
	.loh AdrpLdrGotLdr	Lloh3, Lloh4, Lloh5
	.loh AdrpLdrGotLdr	Lloh9, Lloh10, Lloh11
	.loh AdrpLdrGotLdr	Lloh15, Lloh16, Lloh17
	.loh AdrpLdrGotLdr	Lloh12, Lloh13, Lloh14
	.loh AdrpLdrGotLdr	Lloh21, Lloh22, Lloh23
	.loh AdrpLdrGotLdr	Lloh18, Lloh19, Lloh20
	.loh AdrpLdrGotLdr	Lloh24, Lloh25, Lloh26
	.loh AdrpLdrGotLdr	Lloh27, Lloh28, Lloh29
	.loh AdrpLdrGotLdr	Lloh30, Lloh31, Lloh32
	.loh AdrpLdrGotLdr	Lloh33, Lloh34, Lloh35
	.loh AdrpLdrGotLdr	Lloh36, Lloh37, Lloh38
	.loh AdrpLdrGotLdr	Lloh39, Lloh40, Lloh41
	.loh AdrpLdrGotLdr	Lloh45, Lloh46, Lloh47
	.loh AdrpLdrGotLdr	Lloh42, Lloh43, Lloh44
	.cfi_endproc
                                        ; -- End function
	.comm	_ATAN_CONST,4,2                 ; @ATAN_CONST
	.comm	_BIAS,4,2                       ; @BIAS
	.comm	_LDBL_MAX_EXP,4,2               ; @LDBL_MAX_EXP
	.comm	_LDBL_NBIT,4,2                  ; @LDBL_NBIT
	.comm	_atanhi,8,3                     ; @atanhi
	.comm	_atanlo,8,3                     ; @atanlo
	.comm	_MANH_SIZE,4,2                  ; @MANH_SIZE
	.comm	_ATAN_LINEAR,4,2                ; @ATAN_LINEAR
	.comm	_huge,8,3                       ; @huge
	.comm	_one,8,3                        ; @one
.subsections_via_symbols
