1/* Copyright (C) 1996-2024 Free Software Foundation, Inc.
2 This file is part of the GNU C Library.
3
4 The GNU C Library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Lesser General Public
6 License as published by the Free Software Foundation; either
7 version 2.1 of the License, or (at your option) any later version.
8
9 The GNU C Library is distributed in the hope that it will be useful,
10 but WITHOUT ANY WARRANTY; without even the implied warranty of
11 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 Lesser General Public License for more details.
13
14 You should have received a copy of the GNU Lesser General Public
15 License along with the GNU C Library. If not, see
16 <https://www.gnu.org/licenses/>. */
17
18#define NO_MATH_REDIRECT
19#define scalbln __no_scalbln_decl
20#define scalblnf __no_scalblnf_decl
21#define scalblnl __no_scalblnl_decl
22#define __scalbln __no__scalbln_decl
23#define __scalblnf __no__scalblnf_decl
24#define __scalblnl __no__scalblnl_decl
25#include <math.h>
26#undef scalbln
27#undef scalblnf
28#undef scalblnl
29#undef __scalbln
30#undef __scalblnf
31#undef __scalblnl
32#include "mathimpl.h"
33
34#ifndef suffix
35#define suffix /*empty*/
36#endif
37#ifndef float_type
38#define float_type double
39#endif
40
41#define __CONCATX(a,b) __CONCAT(a,b)
42
43float_type
44__CONCATX(__scalbn,suffix) (float_type x, int exp)
45{
46 return __m81_u(__CONCATX(__scalbn,suffix))(x: x, n: exp);
47}
48strong_alias (__CONCATX(__scalbn,suffix), __CONCATX(__scalbln,suffix))
49
50#include <shlib-compat.h>
51#if SHLIB_COMPAT (libc, GLIBC_2_1, GLIBC_2_20)
52compat_symbol (libc, __CONCATX(__scalbn,suffix), __CONCATX(scalbln,suffix),
53 GLIBC_2_1);
54#endif
55

source code of glibc/sysdeps/m68k/m680x0/fpu/s_scalbn.c