Blame sysdeps/ieee754/ldbl-opt/math_ldbl_opt.h

Packit 6c4009
/* -mlong-double-64 compatibility mode macros.  */
Packit 6c4009
Packit 6c4009
#include <nldbl-abi.h>
Packit 6c4009
#ifndef LONG_DOUBLE_COMPAT_VERSION
Packit 6c4009
# error "nldbl-abi.h must define LONG_DOUBLE_COMPAT_VERSION"
Packit 6c4009
#endif
Packit 6c4009
Packit 6c4009
#include <shlib-compat.h>
Packit 6c4009
#define LONG_DOUBLE_COMPAT(lib, introduced) \
Packit 6c4009
  SHLIB_COMPAT(lib, introduced, LONG_DOUBLE_COMPAT_VERSION)
Packit 6c4009
#define long_double_symbol(lib, local, symbol) \
Packit 6c4009
  long_double_symbol_1 (lib, local, symbol, LONG_DOUBLE_COMPAT_VERSION)
Packit 6c4009
#ifdef SHARED
Packit 6c4009
# define ldbl_hidden_def(local, name) libc_hidden_ver (local, name)
Packit 6c4009
# define ldbl_strong_alias(name, aliasname) \
Packit 6c4009
  strong_alias (name, __GL_##name##_##aliasname) \
Packit 6c4009
  long_double_symbol (libc, __GL_##name##_##aliasname, aliasname);
Packit 6c4009
# define ldbl_weak_alias(name, aliasname) \
Packit 6c4009
  weak_alias (name, __GL_##name##_##aliasname) \
Packit 6c4009
  long_double_symbol (libc, __GL_##name##_##aliasname, aliasname);
Packit 6c4009
# define long_double_symbol_1(lib, local, symbol, version) \
Packit 6c4009
  versioned_symbol (lib, local, symbol, version)
Packit 6c4009
#else
Packit 6c4009
# define ldbl_hidden_def(local, name) libc_hidden_def (name)
Packit 6c4009
# define ldbl_strong_alias(name, aliasname) strong_alias (name, aliasname)
Packit 6c4009
# define ldbl_weak_alias(name, aliasname) weak_alias (name, aliasname)
Packit 6c4009
# ifndef __ASSEMBLER__
Packit 6c4009
/* Note that weak_alias cannot be used - it is defined to nothing
Packit 6c4009
   in most of the C files.  */
Packit 6c4009
#  define long_double_symbol_1(lib, local, symbol, version) \
Packit 6c4009
  _weak_alias (local, symbol)
Packit 6c4009
# else
Packit 6c4009
#  define long_double_symbol_1(lib, local, symbol, version) \
Packit 6c4009
  weak_alias (local, symbol)
Packit 6c4009
# endif
Packit 6c4009
#endif
Packit 6c4009
Packit 6c4009
#ifndef __ASSEMBLER__
Packit 6c4009
/* Set temporarily to non-zero if long double should be considered
Packit 6c4009
   the same as double.  */
Packit 6c4009
extern __thread int __no_long_double attribute_tls_model_ie attribute_hidden;
Packit 6c4009
# define __ldbl_is_dbl __builtin_expect (__no_long_double, 0)
Packit 6c4009
#endif