xref: /csrg-svn/lib/libc/vax/gen/frexp.s (revision 42637)
121425Sdist/*
221425Sdist * Copyright (c) 1980 Regents of the University of California.
334480Sbostic * All rights reserved.
434480Sbostic *
5*42637Sbostic * %sccs.include.redist.c%
621425Sdist */
717000Sralph
834819Sbostic#if defined(LIBC_SCCS) && !defined(lint)
9*42637Sbostic	.asciz "@(#)frexp.s	5.6 (Berkeley) 06/01/90"
1034819Sbostic#endif /* LIBC_SCCS and not lint */
1121425Sdist
1217000Sralph/* C library -- frexp(value, eptr) */
1317000Sralph
1417000Sralph#include "DEFS.h"
1517000Sralph
1617329SsamENTRY(frexp, 0)
1717000Sralph	movd	4(ap),r0		# (r0,r1) := value
1817000Sralph	extzv	$7,$8,r0,*12(ap)	# Fetch exponent
1917000Sralph	jeql	1f			# If exponent zero, we're done
2017000Sralph	subl2	$128,*12(ap)		# Bias the exponent appropriately
2117000Sralph	insv	$128,$7,$8,r0		# Force result exponent to biased 0
2217000Sralph1:
2317000Sralph	ret
24