2.3.90-1
[kopensolaris-gnu/glibc.git] / sysdeps / ia64 / libgcc-compat.c
1 /* pre-.hidden libgcc compatibility
2    Copyright (C) 2002 Free Software Foundation, Inc.
3    This file is part of the GNU C Library.
4
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.
9
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.
14
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.  */
19
20
21 #include <stdint.h>
22 #include <shlib-compat.h>
23
24 #if SHLIB_COMPAT(libc, GLIBC_2_2, GLIBC_2_2_6)
25
26 typedef int int128_t __attribute__((__mode__(TI)));
27
28 extern long double __divtf3 (long double, long double) attribute_hidden;
29 long double INTUSE (__divtf3) (long double x, long double y)
30 {
31   return __divtf3 (x, y);
32 }
33 symbol_version (INTUSE (__divtf3), __divtf3, GLIBC_2.2);
34
35 extern double __divdf3 (double, double) attribute_hidden;
36 double INTUSE (__divdf3) (double x, double y)
37 {
38   return __divdf3 (x, y);
39 }
40 symbol_version (INTUSE (__divdf3), __divdf3, GLIBC_2.2);
41
42 extern float __divsf3 (float, float) attribute_hidden;
43 float INTUSE (__divsf3) (float x, float y)
44 {
45   return __divsf3 (x, y);
46 }
47 symbol_version (INTUSE (__divsf3), __divsf3, GLIBC_2.2);
48
49 extern int64_t __divdi3 (int64_t, int64_t) attribute_hidden;
50 int64_t INTUSE (__divdi3) (int64_t x, int64_t y)
51 {
52   return __divdi3 (x, y);
53 }
54 symbol_version (INTUSE (__divdi3), __divdi3, GLIBC_2.2);
55
56 extern int64_t __moddi3 (int64_t, int64_t) attribute_hidden;
57 int64_t INTUSE (__moddi3) (int64_t x, int64_t y)
58 {
59   return __moddi3 (x, y);
60 }
61 symbol_version (INTUSE (__moddi3), __moddi3, GLIBC_2.2);
62
63 extern uint64_t __udivdi3 (uint64_t, uint64_t) attribute_hidden;
64 uint64_t INTUSE (__udivdi3) (uint64_t x, uint64_t y)
65 {
66   return __udivdi3 (x, y);
67 }
68 symbol_version (INTUSE (__udivdi3), __udivdi3, GLIBC_2.2);
69
70 extern uint64_t __umoddi3 (uint64_t, uint64_t) attribute_hidden;
71 uint64_t INTUSE (__umoddi3) (uint64_t x, uint64_t y)
72 {
73   return __umoddi3 (x, y);
74 }
75 symbol_version (INTUSE (__umoddi3), __umoddi3, GLIBC_2.2);
76
77 extern int128_t __multi3 (int128_t, int128_t) attribute_hidden;
78 int128_t INTUSE (__multi3) (int128_t x, int128_t y)
79 {
80   return __multi3 (x, y);
81 }
82 symbol_version (INTUSE (__multi3), __multi3, GLIBC_2.2);
83
84 #endif