* Copyright (c) 1985 The Regents of the University of California.
* This code is derived from software contributed to Berkeley by
* %sccs.include.redist.c%
* @(#)Ksfnorm.s 7.1 (Berkeley) %G%
#include "../tahoe/SYS.h"
ENTRY(Ksfnorm, R6|R5|R4|R3|R2)
movl r0,r4 /* copy to temporary. */
clrl r3 /* r3 - pos of m.s.b */
/* compute the shift (r4). */
jlss shiftr /* if less then zero we shift right. */
shll r4,r0,r0 /* else we shift left. */
subl2 r4,r2 /* uodate exponent. */
jleq underflow /* if less then 0 (biased) it is underflow. */
jmp combine /* go to combine exponent and fraction. */
shrl r4,r0,r0 /* shift right. */
addl2 r4,r2 /* update exponent */
jgeq overflow /* check for overflow. */
andl2 $CLEARHID,r0 /* clear the hidden bit. */
shal $EXPSHIFT,r2,r2 /* shift the exponent to its proper place. */