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
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
);