glibc/sysdeps/m68k/m680x0/fpu/s_scalbn.c
Adhemerval Zanella 4bad2e014e m68k: Remove mathinline.h
This is similar to x86 (da75c1b180) and powerpc (32ea729996)
mathinline.h removal.  The required macros to build the fpu routines
are moved to mathimpl.h, while the inline optimization macros for
atan, tanh, rint, log1p, significand, trunc, floor, ceil, isinf,
finite, scalbn, isnan, scalbln, nearbyint, lrint, and sincos are removed.

The gcc bug https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94204 was
created to track builtin support.

Checked with a build against m68k-linux-gnu, resulting binaries
are similar with and without the patch.
2020-03-19 11:45:44 -03:00

55 lines
1.6 KiB
C

/* Copyright (C) 1996-2020 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with the GNU C Library. If not, see
<https://www.gnu.org/licenses/>. */
#define NO_MATH_REDIRECT
#define scalbln __no_scalbln_decl
#define scalblnf __no_scalblnf_decl
#define scalblnl __no_scalblnl_decl
#define __scalbln __no__scalbln_decl
#define __scalblnf __no__scalblnf_decl
#define __scalblnl __no__scalblnl_decl
#include <math.h>
#undef scalbln
#undef scalblnf
#undef scalblnl
#undef __scalbln
#undef __scalblnf
#undef __scalblnl
#include "mathimpl.h"
#ifndef suffix
#define suffix /*empty*/
#endif
#ifndef float_type
#define float_type double
#endif
#define __CONCATX(a,b) __CONCAT(a,b)
float_type
__CONCATX(__scalbn,suffix) (float_type x, int exp)
{
return __m81_u(__CONCATX(__scalbn,suffix))(x, exp);
}
strong_alias (__CONCATX(__scalbn,suffix), __CONCATX(__scalbln,suffix))
#include <shlib-compat.h>
#if SHLIB_COMPAT (libc, GLIBC_2_1, GLIBC_2_20)
compat_symbol (libc, __CONCATX(__scalbn,suffix), __CONCATX(scalbln,suffix),
GLIBC_2_1);
#endif