Import 2.3.4pre3
[davej-history.git] / arch / sparc / math-emu / fdmulq.c
blob96772d4ef236455354957cf58108f4f721be31c6
1 /* $Id: fdmulq.c,v 1.9 1999/05/28 13:41:56 jj Exp $
2 * arch/sparc/math-emu/fdmulq.c
4 * Copyright (C) 1997, 1999 Jakub Jelinek (jj@ultra.linux.cz)
5 * Copyright (C) 1998 Peter Maydell (pmaydell@chiark.greenend.org.uk)
7 */
9 #include "sfp-util.h"
10 #include "soft-fp.h"
11 #include "quad.h"
12 #include "double.h"
14 int FDMULQ(void *rd, void *rs2, void *rs1)
16 FP_DECL_EX;
17 FP_DECL_D(IN); FP_DECL_Q(A); FP_DECL_Q(B); FP_DECL_Q(R);
19 FP_UNPACK_DP(IN, rs1);
20 FP_CONV(Q,D,4,2,A,IN);
21 FP_UNPACK_DP(IN, rs2);
22 FP_CONV(Q,D,4,2,B,IN);
23 FP_MUL_Q(R, A, B);
24 FP_PACK_QP(rd, R);
25 FP_HANDLE_EXCEPTIONS;