]> git.ipfire.org Git - thirdparty/glibc.git/blame - sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h
Use PRINTF_LDBL_IS_DBL instead of __ldbl_is_dbl.
[thirdparty/glibc.git] / sysdeps / ieee754 / ldbl-opt / math_ldbl_opt.h
CommitLineData
c6251f03
RM
1/* -mlong-double-64 compatibility mode macros. */
2
52412049
RM
3#include <nldbl-abi.h>
4#ifndef LONG_DOUBLE_COMPAT_VERSION
5# error "nldbl-abi.h must define LONG_DOUBLE_COMPAT_VERSION"
c6251f03
RM
6#endif
7
c6251f03
RM
8#include <shlib-compat.h>
9#define LONG_DOUBLE_COMPAT(lib, introduced) \
52412049 10 SHLIB_COMPAT(lib, introduced, LONG_DOUBLE_COMPAT_VERSION)
c6251f03 11#define long_double_symbol(lib, local, symbol) \
52412049 12 long_double_symbol_1 (lib, local, symbol, LONG_DOUBLE_COMPAT_VERSION)
3f2e46a4 13#ifdef SHARED
c6251f03
RM
14# define ldbl_hidden_def(local, name) libc_hidden_ver (local, name)
15# define ldbl_strong_alias(name, aliasname) \
16 strong_alias (name, __GL_##name##_##aliasname) \
17 long_double_symbol (libc, __GL_##name##_##aliasname, aliasname);
18# define ldbl_weak_alias(name, aliasname) \
19 weak_alias (name, __GL_##name##_##aliasname) \
20 long_double_symbol (libc, __GL_##name##_##aliasname, aliasname);
21# define long_double_symbol_1(lib, local, symbol, version) \
22 versioned_symbol (lib, local, symbol, version)
349718d4
ZW
23# define ldbl_compat_symbol(lib, local, symbol, version) \
24 compat_symbol (lib, local, symbol, LONG_DOUBLE_COMPAT_VERSION)
a0da5fe1 25#else
c6251f03
RM
26# define ldbl_hidden_def(local, name) libc_hidden_def (name)
27# define ldbl_strong_alias(name, aliasname) strong_alias (name, aliasname)
28# define ldbl_weak_alias(name, aliasname) weak_alias (name, aliasname)
349718d4
ZW
29/* Same as compat_symbol, ldbl_compat_symbol is not to be used outside
30 '#if SHLIB_COMPAT' statement and should fail if it is. */
31# define ldbl_compat_symbol(lib, local, symbol, version) \
32 _Static_assert (0, "ldbl_compat_symbol should be used inside SHLIB_COMPAT");
4b668646 33# ifndef __ASSEMBLER__
c6251f03 34/* Note that weak_alias cannot be used - it is defined to nothing
4b668646
RM
35 in most of the C files. */
36# define long_double_symbol_1(lib, local, symbol, version) \
37 _weak_alias (local, symbol)
38# else
39# define long_double_symbol_1(lib, local, symbol, version) \
04a8a3c1 40 weak_alias (local, symbol)
4b668646 41# endif
c6251f03 42#endif