Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[linux-2.6/linux-mips/linux-dm7025.git] / arch / powerpc / math-emu / fctiwz.c
blob1514d59e146ea77bf103d37539da4c435bd4fcb8
1 #include <linux/types.h>
2 #include <linux/errno.h>
3 #include <asm/uaccess.h>
5 #include "soft-fp.h"
6 #include "double.h"
8 int
9 fctiwz(u32 *frD, void *frB)
11 FP_DECL_D(B);
12 u32 fpscr;
13 unsigned int r;
15 fpscr = __FPU_FPSCR;
16 __FPU_FPSCR &= ~(3);
17 __FPU_FPSCR |= FP_RND_ZERO;
19 __FP_UNPACK_D(B, frB);
20 FP_TO_INT_D(r, B, 32, 1);
21 frD[1] = r;
23 __FPU_FPSCR = fpscr;
25 #ifdef DEBUG
26 printk("%s: D %p, B %p: ", __func__, frD, frB);
27 dump_double(frD);
28 printk("\n");
29 #endif
31 return 0;