1

m68k: math-emu: Add missing prototypes

When building with W=1:

    arch/m68k/math-emu/fp_arith.c:301:16: warning: no previous prototype for ‘fp_fsglmul’ [-Wmissing-prototypes]
      301 | struct fp_ext *fp_fsglmul(struct fp_ext *dest, struct fp_ext *src)
	  |                ^~~~~~~~~~
    arch/m68k/math-emu/fp_arith.c:357:16: warning: no previous prototype for ‘fp_fsgldiv’ [-Wmissing-prototypes]
      357 | struct fp_ext *fp_fsgldiv(struct fp_ext *dest, struct fp_ext *src)
	  |                ^~~~~~~~~~
      CC      arch/m68k/math-emu/fp_log.o
    ...

Fix this by adding the missing prototypes to header files.

Reported-by: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20230810141947.1236730-17-arnd@kernel.org/
Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Link: https://lore.kernel.org/r/96c039640d76973ea762d79018de0bc75bbdc1dc.1692283195.git.geert@linux-m68k.org
This commit is contained in:
Geert Uytterhoeven 2023-08-17 16:44:53 +02:00
parent 648c37ec02
commit 1fee121f8f
4 changed files with 66 additions and 0 deletions

View File

@ -26,6 +26,8 @@ struct fp_ext *fp_fcmp(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_ftst(struct fp_ext *dest, struct fp_ext *src); struct fp_ext *fp_ftst(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fmul(struct fp_ext *dest, struct fp_ext *src); struct fp_ext *fp_fmul(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fdiv(struct fp_ext *dest, struct fp_ext *src); struct fp_ext *fp_fdiv(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsglmul(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsgldiv(struct fp_ext *dest, struct fp_ext *src);
/* ones that do rounding and integer conversions */ /* ones that do rounding and integer conversions */
struct fp_ext *fp_fmod(struct fp_ext *dest, struct fp_ext *src); struct fp_ext *fp_fmod(struct fp_ext *dest, struct fp_ext *src);

View File

@ -17,6 +17,7 @@
#include "fp_arith.h" #include "fp_arith.h"
#include "fp_emu.h" #include "fp_emu.h"
#include "fp_log.h"
static const struct fp_ext fp_one = { static const struct fp_ext fp_one = {
.exp = 0x3fff, .exp = 0x3fff,

View File

@ -0,0 +1,44 @@
/*
fp_log.h: floating-point math routines for the Linux-m68k
floating point emulator.
Copyright (c) 1998-1999 David Huggins-Daines / Roman Zippel.
I hereby give permission, free of charge, to copy, modify, and
redistribute this software, in source or binary form, provided that
the above copyright notice and the following disclaimer are included
in all such copies.
THIS SOFTWARE IS PROVIDED "AS IS", WITH ABSOLUTELY NO WARRANTY, REAL
OR IMPLIED.
*/
#ifndef _FP_LOG_H
#define _FP_LOG_H
#include "fp_emu.h"
/* floating point logarithmic instructions:
the arguments to these are in the "internal" extended format, that
is, an "exploded" version of the 96-bit extended fp format used by
the 68881.
they return a status code, which should end up in %d0, if all goes
well. */
struct fp_ext *fp_fsqrt(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fetoxm1(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fetox(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_ftwotox(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_ftentox(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_flogn(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_flognp1(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_flog10(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_flog2(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fgetexp(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fgetman(struct fp_ext *dest, struct fp_ext *src);
#endif /* _FP_LOG_H */

View File

@ -29,4 +29,23 @@
they return a status code, which should end up in %d0, if all goes they return a status code, which should end up in %d0, if all goes
well. */ well. */
struct fp_ext *fp_fsin(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fcos(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_ftan(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fasin(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_facos(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fatan(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsinh(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fcosh(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_ftanh(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fatanh(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsincos0(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsincos1(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsincos2(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsincos3(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsincos4(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsincos5(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsincos6(struct fp_ext *dest, struct fp_ext *src);
struct fp_ext *fp_fsincos7(struct fp_ext *dest, struct fp_ext *src);
#endif /* _FP_TRIG_H */ #endif /* _FP_TRIG_H */