1 /* $NetBSD: fpu_arith_proto.h,v 1.1 1995/11/03 04:47:00 briggs Exp $ */
4 * Copyright (c) 1995 Ken Nakata
7 * Redistribution and use in source and binary forms, with or without
8 * modification, are permitted provided that the following conditions
10 * 1. Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 * 2. Redistributions in binary form must reproduce the above copyright
13 * notice, this list of conditions and the following disclaimer in the
14 * documentation and/or other materials provided with the distribution.
15 * 3. Neither the name of the author nor the names of its contributors
16 * may be used to endorse or promote products derived from this software
17 * without specific prior written permission.
19 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
20 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
21 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
22 * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
23 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
24 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
25 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
27 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
28 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31 * @(#)fpu_arith_proto.c 10/24/95
34 #ifndef _FPU_ARITH_PROTO_H_
35 #define _FPU_ARITH_PROTO_H_
38 * Arithmetic functions - called from fpu_emul_arith().
39 * Each of these may modify its inputs (f1,f2) and/or the temporary.
40 * Each returns a pointer to the result and/or sets exceptions.
44 struct fpn
* fpu_add(struct fpemu
*fe
);
47 struct fpn
* fpu_div(struct fpemu
*fe
);
50 struct fpn
* fpu_etox(struct fpemu
*fe
);
51 struct fpn
* fpu_etoxm1(struct fpemu
*fe
);
52 struct fpn
* fpu_tentox(struct fpemu
*fe
);
53 struct fpn
* fpu_twotox(struct fpemu
*fe
);
56 struct fpn
* fpu_getexp(struct fpemu
*fe
);
57 struct fpn
* fpu_getman(struct fpemu
*fe
);
60 struct fpn
* fpu_atanh(struct fpemu
*fe
);
61 struct fpn
* fpu_cosh(struct fpemu
*fe
);
62 struct fpn
* fpu_sinh(struct fpemu
*fe
);
63 struct fpn
* fpu_tanh(struct fpemu
*fe
);
66 struct fpn
* fpu_intrz(struct fpemu
*fe
);
67 struct fpn
* fpu_int(struct fpemu
*fe
);
70 struct fpn
* fpu_log10(struct fpemu
*fe
);
71 struct fpn
* fpu_log2(struct fpemu
*fe
);
72 struct fpn
* fpu_logn(struct fpemu
*fe
);
73 struct fpn
* fpu_lognp1(struct fpemu
*fe
);
76 struct fpn
* fpu_mul(struct fpemu
*fe
);
79 struct fpn
* fpu_rem(struct fpemu
*fe
);
80 struct fpn
* fpu_mod(struct fpemu
*fe
);
83 struct fpn
* fpu_sqrt(struct fpemu
*fe
);
86 struct fpn
* fpu_acos(struct fpemu
*fe
);
87 struct fpn
* fpu_asin(struct fpemu
*fe
);
88 struct fpn
* fpu_atan(struct fpemu
*fe
);
89 struct fpn
* fpu_cos(struct fpemu
*fe
);
90 struct fpn
* fpu_sin(struct fpemu
*fe
);
91 struct fpn
* fpu_tan(struct fpemu
*fe
);
92 struct fpn
* fpu_sincos(struct fpemu
*fe
, int regc
);
94 #endif /* _FPU_ARITH_PROTO_H_ */