diff options
Diffstat (limited to 'lib/msun/i387/s_floor.S')
-rw-r--r-- | lib/msun/i387/s_floor.S | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/msun/i387/s_floor.S b/lib/msun/i387/s_floor.S index 129b01e..7abc424 100644 --- a/lib/msun/i387/s_floor.S +++ b/lib/msun/i387/s_floor.S @@ -35,24 +35,24 @@ #include <machine/asmacros.h> -RCSID("$Id: s_floor.S,v 1.1.1.1 1994/08/19 09:40:01 jkh Exp $") +RCSID("$Id: s_floor.S,v 1.2 1994/08/19 11:14:25 jkh Exp $") ENTRY(floor) pushl %ebp movl %esp,%ebp subl $8,%esp - fstcw -12(%ebp) /* store fpu control word */ - movw -12(%ebp),%dx + fstcw -4(%ebp) /* store fpu control word */ + movw -4(%ebp),%dx orw $0x0400,%dx /* round towards -oo */ andw $0xf7ff,%dx - movw %dx,-16(%ebp) - fldcw -16(%ebp) /* load modfied control word */ + movw %dx,-8(%ebp) + fldcw -8(%ebp) /* load modfied control word */ fldl 8(%ebp); /* round */ frndint - fldcw -12(%ebp) /* restore original control word */ + fldcw -4(%ebp) /* restore original control word */ leave ret |