11da177e4SLinus Torvalds /* 21da177e4SLinus Torvalds 31da177e4SLinus Torvalds fp_arith.h: floating-point math routines for the Linux-m68k 41da177e4SLinus Torvalds floating point emulator. 51da177e4SLinus Torvalds 61da177e4SLinus Torvalds Copyright (c) 1998 David Huggins-Daines. 71da177e4SLinus Torvalds 81da177e4SLinus Torvalds Somewhat based on the AlphaLinux floating point emulator, by David 91da177e4SLinus Torvalds Mosberger-Tang. 101da177e4SLinus Torvalds 111da177e4SLinus Torvalds You may copy, modify, and redistribute this file under the terms of 121da177e4SLinus Torvalds the GNU General Public License, version 2, or any later version, at 131da177e4SLinus Torvalds your convenience. 141da177e4SLinus Torvalds 151da177e4SLinus Torvalds */ 161da177e4SLinus Torvalds 171da177e4SLinus Torvalds #ifndef FP_ARITH_H 181da177e4SLinus Torvalds #define FP_ARITH_H 191da177e4SLinus Torvalds 201da177e4SLinus Torvalds /* easy ones */ 211da177e4SLinus Torvalds struct fp_ext * 221da177e4SLinus Torvalds fp_fabs(struct fp_ext *dest, struct fp_ext *src); 231da177e4SLinus Torvalds struct fp_ext * 241da177e4SLinus Torvalds fp_fneg(struct fp_ext *dest, struct fp_ext *src); 251da177e4SLinus Torvalds 261da177e4SLinus Torvalds /* straightforward arithmetic */ 271da177e4SLinus Torvalds struct fp_ext * 281da177e4SLinus Torvalds fp_fadd(struct fp_ext *dest, struct fp_ext *src); 291da177e4SLinus Torvalds struct fp_ext * 301da177e4SLinus Torvalds fp_fsub(struct fp_ext *dest, struct fp_ext *src); 311da177e4SLinus Torvalds struct fp_ext * 321da177e4SLinus Torvalds fp_fcmp(struct fp_ext *dest, struct fp_ext *src); 331da177e4SLinus Torvalds struct fp_ext * 341da177e4SLinus Torvalds fp_ftst(struct fp_ext *dest, struct fp_ext *src); 351da177e4SLinus Torvalds struct fp_ext * 361da177e4SLinus Torvalds fp_fmul(struct fp_ext *dest, struct fp_ext *src); 371da177e4SLinus Torvalds struct fp_ext * 381da177e4SLinus Torvalds fp_fdiv(struct fp_ext *dest, struct fp_ext *src); 391da177e4SLinus Torvalds 401da177e4SLinus Torvalds /* ones that do rounding and integer conversions */ 411da177e4SLinus Torvalds struct fp_ext * 421da177e4SLinus Torvalds fp_fmod(struct fp_ext *dest, struct fp_ext *src); 431da177e4SLinus Torvalds struct fp_ext * 441da177e4SLinus Torvalds fp_frem(struct fp_ext *dest, struct fp_ext *src); 451da177e4SLinus Torvalds struct fp_ext * 461da177e4SLinus Torvalds fp_fint(struct fp_ext *dest, struct fp_ext *src); 471da177e4SLinus Torvalds struct fp_ext * 481da177e4SLinus Torvalds fp_fintrz(struct fp_ext *dest, struct fp_ext *src); 491da177e4SLinus Torvalds struct fp_ext * 501da177e4SLinus Torvalds fp_fscale(struct fp_ext *dest, struct fp_ext *src); 511da177e4SLinus Torvalds 521da177e4SLinus Torvalds #endif /* FP_ARITH__H */ 53