forked from KolibriOS/kolibrios
1f4d74f500
git-svn-id: svn://kolibrios.org@8622 a494cfbc-eb01-0410-851d-a64ba20cac60
36 lines
411 B
ArmAsm
36 lines
411 B
ArmAsm
/* Copyright (C) 1995 DJ Delorie, see COPYING.DJ for details */
|
|
#include "libc/asm.h"
|
|
|
|
.data
|
|
.align 2
|
|
nan:
|
|
.long 0xffffffff
|
|
.byte 0xff
|
|
.byte 0xff
|
|
.byte 0xff
|
|
.byte 0x7f
|
|
|
|
.text
|
|
MK_C_SYM(atan2)
|
|
fldl 4(%esp)
|
|
fldl 12(%esp)
|
|
ftst
|
|
fnstsw %ax
|
|
sahf
|
|
jne doit
|
|
fxch %st(1)
|
|
ftst
|
|
fnstsw %ax
|
|
sahf
|
|
je isanan
|
|
fxch %st(1)
|
|
doit:
|
|
fpatan
|
|
ret
|
|
isanan:
|
|
movl $1,C_SYM(errno)
|
|
fstp %st(0)
|
|
fstp %st(0)
|
|
fldl nan
|
|
ret
|