2.5-18.1
[glibc.git] / sysdeps / ia64 / libgcc-compat.c
blob0be489757f7f065da6c48b929d5fb8768066ecb7
1 /* pre-.hidden libgcc compatibility
2 Copyright (C) 2002 Free Software Foundation, Inc.
3 This file is part of the GNU C Library.
5 The GNU C Library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Lesser General Public
7 License as published by the Free Software Foundation; either
8 version 2.1 of the License, or (at your option) any later version.
10 The GNU C Library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Lesser General Public License for more details.
15 You should have received a copy of the GNU Lesser General Public
16 License along with the GNU C Library; if not, write to the Free
17 Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
18 02111-1307 USA. */
21 #include <stdint.h>
22 #include <shlib-compat.h>
24 #if SHLIB_COMPAT(libc, GLIBC_2_2, GLIBC_2_2_6)
26 typedef int int128_t __attribute__((__mode__(TI)));
28 extern long double __divtf3 (long double, long double) attribute_hidden;
29 long double INTUSE (__divtf3) (long double x, long double y)
31 return __divtf3 (x, y);
33 symbol_version (INTUSE (__divtf3), __divtf3, GLIBC_2.2);
35 extern double __divdf3 (double, double) attribute_hidden;
36 double INTUSE (__divdf3) (double x, double y)
38 return __divdf3 (x, y);
40 symbol_version (INTUSE (__divdf3), __divdf3, GLIBC_2.2);
42 extern float __divsf3 (float, float) attribute_hidden;
43 float INTUSE (__divsf3) (float x, float y)
45 return __divsf3 (x, y);
47 symbol_version (INTUSE (__divsf3), __divsf3, GLIBC_2.2);
49 extern int64_t __divdi3 (int64_t, int64_t) attribute_hidden;
50 int64_t INTUSE (__divdi3) (int64_t x, int64_t y)
52 return __divdi3 (x, y);
54 symbol_version (INTUSE (__divdi3), __divdi3, GLIBC_2.2);
56 extern int64_t __moddi3 (int64_t, int64_t) attribute_hidden;
57 int64_t INTUSE (__moddi3) (int64_t x, int64_t y)
59 return __moddi3 (x, y);
61 symbol_version (INTUSE (__moddi3), __moddi3, GLIBC_2.2);
63 extern uint64_t __udivdi3 (uint64_t, uint64_t) attribute_hidden;
64 uint64_t INTUSE (__udivdi3) (uint64_t x, uint64_t y)
66 return __udivdi3 (x, y);
68 symbol_version (INTUSE (__udivdi3), __udivdi3, GLIBC_2.2);
70 extern uint64_t __umoddi3 (uint64_t, uint64_t) attribute_hidden;
71 uint64_t INTUSE (__umoddi3) (uint64_t x, uint64_t y)
73 return __umoddi3 (x, y);
75 symbol_version (INTUSE (__umoddi3), __umoddi3, GLIBC_2.2);
77 extern int128_t __multi3 (int128_t, int128_t) attribute_hidden;
78 int128_t INTUSE (__multi3) (int128_t x, int128_t y)
80 return __multi3 (x, y);
82 symbol_version (INTUSE (__multi3), __multi3, GLIBC_2.2);
84 #endif