As the current libc includes a libm implementation, with the new libc this is needed. Unneeded (for the moment) archs have been removed.
		
			
				
	
	
		
			33 lines
		
	
	
		
			425 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
			
		
		
	
	
			33 lines
		
	
	
		
			425 B
		
	
	
	
		
			ArmAsm
		
	
	
	
	
	
/*
 | 
						|
 * Written by J.T. Conklin <jtc@NetBSD.org>.
 | 
						|
 * Public domain.
 | 
						|
 */
 | 
						|
 | 
						|
#include <machine/asm.h>
 | 
						|
 | 
						|
RCSID("$NetBSD: s_ilogb.S,v 1.7 2003/07/26 19:25:02 salo Exp $")
 | 
						|
 | 
						|
ENTRY(ilogb)
 | 
						|
#ifdef __i386__
 | 
						|
	pushl	%ebp
 | 
						|
	movl	%esp,%ebp
 | 
						|
	subl	$4,%esp
 | 
						|
 | 
						|
	fldl	8(%ebp)
 | 
						|
	fxtract
 | 
						|
	fstp	%st
 | 
						|
 | 
						|
	fistpl	-4(%ebp)
 | 
						|
	movl	-4(%ebp),%eax
 | 
						|
 | 
						|
	leave
 | 
						|
#else
 | 
						|
	movsd	%xmm0,-8(%rsp)
 | 
						|
	fldl	-8(%rsp)
 | 
						|
	fxtract
 | 
						|
	fstp	%st
 | 
						|
	fistpl	-8(%rsp)
 | 
						|
	movl	-8(%rsp),%eax
 | 
						|
#endif
 | 
						|
	ret
 |