xref: /netbsd-src/lib/libm/arch/i387/s_finitef.S (revision 89f1761863ff71451a088f089bf8f5d749f5c223)
1/*
2 * Written by J.T. Conklin <jtc@NetBSD.org>.
3 * Public domain.
4 */
5
6#include <machine/asm.h>
7
8RCSID("$NetBSD: s_finitef.S,v 1.7 2024/05/08 01:04:03 riastradh Exp $")
9
10WEAK_ALIAS(finitef, _finitef)
11
12ENTRY(_finitef)
13#ifdef __i386__
14	movl	4(%esp),%eax
15	andl	$0x7f800000, %eax
16	cmpl	$0x7f800000, %eax
17	setne	%al
18	andl	$0x000000ff, %eax
19#else
20	xorl	%eax,%eax
21	movl	$0x7ff00000,%esi
22	movss	%xmm0,-4(%rsp)
23	andl	-4(%rsp),%esi
24	cmpl	$0x7ff00000,%esi
25	setne	%al
26#endif
27	ret
28END(_finitef)
29