libgcc2.h: Move prototypes above macros with the same name.
* libgcc2.h: Move prototypes above macros with the same name. Wrap some function prototypes in the conditional which indicates whether they are supported, i.e. "BITS_PER_UNIT == 8". From-SVN: r32594
This commit is contained in:
parent
64aa33dd9c
commit
d30d6e76fd
@ -1,3 +1,9 @@
|
||||
2000-03-16 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* libgcc2.h: Move prototypes above macros with the same name.
|
||||
Wrap some function prototypes in the conditional which indicates
|
||||
whether they are supported, i.e. "BITS_PER_UNIT == 8".
|
||||
|
||||
2000-03-16 Richard Henderson <rth@cygnus.com>
|
||||
|
||||
* calls.c: Revert last two changes.
|
||||
|
105
gcc/libgcc2.h
105
gcc/libgcc2.h
@ -181,6 +181,60 @@ typedef int word_type __attribute__ ((mode (__word__)));
|
||||
#define __NDW(a,b) __ ## a ## hi ## b
|
||||
#endif
|
||||
|
||||
extern DWtype __muldi3 (DWtype, DWtype);
|
||||
extern DWtype __divdi3 (DWtype, DWtype);
|
||||
extern UDWtype __udivdi3 (UDWtype, UDWtype);
|
||||
extern UDWtype __umoddi3 (UDWtype, UDWtype);
|
||||
extern DWtype __moddi3 (DWtype, DWtype);
|
||||
/* __udivmoddi4 is static inline when building other libgcc2 portions. */
|
||||
#if (!defined (L_udivdi3) && !defined (L_divdi3) && \
|
||||
!defined (L_umoddi3) && !defined (L_moddi3))
|
||||
extern UDWtype __udivmoddi4 (UDWtype, UDWtype, UDWtype *);
|
||||
#endif
|
||||
|
||||
/* __negdi2 is static inline when building other libgcc2 portions. */
|
||||
#if !defined(L_divdi3) && !defined(L_moddi3)
|
||||
extern DWtype __negdi2 (DWtype);
|
||||
#endif
|
||||
|
||||
extern DWtype __lshrdi3 (DWtype, word_type);
|
||||
extern DWtype __ashldi3 (DWtype, word_type);
|
||||
extern DWtype __ashrdi3 (DWtype, word_type);
|
||||
extern DWtype __ffsdi2 (DWtype);
|
||||
|
||||
/* __udiv_w_sdiv is static inline when building other libgcc2 portions. */
|
||||
#if (!defined(L_udivdi3) && !defined(L_divdi3) && \
|
||||
!defined(L_umoddi3) && !defined(L_moddi3))
|
||||
extern UWtype __udiv_w_sdiv (UWtype *, UWtype, UWtype, UWtype);
|
||||
#endif
|
||||
|
||||
extern word_type __cmpdi2 (DWtype, DWtype);
|
||||
extern word_type __ucmpdi2 (DWtype, DWtype);
|
||||
|
||||
#if BITS_PER_UNIT == 8
|
||||
extern DWtype __fixdfdi (DFtype);
|
||||
extern DWtype __fixsfdi (SFtype);
|
||||
extern DFtype __floatdidf (DWtype);
|
||||
extern SFtype __floatdisf (DWtype);
|
||||
extern UWtype __fixunsdfsi (DFtype);
|
||||
extern UWtype __fixunssfsi (SFtype);
|
||||
extern DWtype __fixunsdfdi (DFtype);
|
||||
extern DWtype __fixunssfdi (SFtype);
|
||||
|
||||
#if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 96
|
||||
extern DWtype __fixxfdi (XFtype);
|
||||
extern DWtype __fixunsxfdi (XFtype);
|
||||
extern XFtype __floatdixf (DWtype);
|
||||
extern UWtype __fixunsxfsi (XFtype);
|
||||
#endif
|
||||
|
||||
#if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128
|
||||
extern DWtype __fixunstfdi (TFtype);
|
||||
extern DWtype __fixtfdi (TFtype);
|
||||
extern TFtype __floatditf (DWtype);
|
||||
#endif
|
||||
#endif /* BITS_PER_UNIT == 8 */
|
||||
|
||||
#define __muldi3 __NDW(mul,3)
|
||||
#define __divdi3 __NDW(div,3)
|
||||
#define __udivdi3 __NDW(udiv,3)
|
||||
@ -238,55 +292,4 @@ typedef union
|
||||
|
||||
#endif /* udiv or mul */
|
||||
|
||||
extern DWtype __muldi3 (DWtype, DWtype);
|
||||
extern DWtype __divdi3 (DWtype, DWtype);
|
||||
extern UDWtype __udivdi3 (UDWtype, UDWtype);
|
||||
extern UDWtype __umoddi3 (UDWtype, UDWtype);
|
||||
extern DWtype __moddi3 (DWtype, DWtype);
|
||||
/* __udivmoddi4 is static inline when building other libgcc2 portions. */
|
||||
#if (!defined (L_udivdi3) && !defined (L_divdi3) && \
|
||||
!defined (L_umoddi3) && !defined (L_moddi3))
|
||||
extern UDWtype __udivmoddi4 (UDWtype, UDWtype, UDWtype *);
|
||||
#endif
|
||||
|
||||
/* __negdi2 is static inline when building other libgcc2 portions. */
|
||||
#if !defined(L_divdi3) && !defined(L_moddi3)
|
||||
extern DWtype __negdi2 (DWtype);
|
||||
#endif
|
||||
|
||||
extern DWtype __lshrdi3 (DWtype, word_type);
|
||||
extern DWtype __ashldi3 (DWtype, word_type);
|
||||
extern DWtype __ashrdi3 (DWtype, word_type);
|
||||
extern DWtype __ffsdi2 (DWtype);
|
||||
|
||||
/* __udiv_w_sdiv is static inline when building other libgcc2 portions. */
|
||||
#if (!defined(L_udivdi3) && !defined(L_divdi3) && \
|
||||
!defined(L_umoddi3) && !defined(L_moddi3))
|
||||
extern UWtype __udiv_w_sdiv (UWtype *, UWtype, UWtype, UWtype);
|
||||
#endif
|
||||
|
||||
extern word_type __cmpdi2 (DWtype, DWtype);
|
||||
extern word_type __ucmpdi2 (DWtype, DWtype);
|
||||
extern DFtype __floatdidf (DWtype);
|
||||
extern SFtype __floatdisf (DWtype);
|
||||
extern UWtype __fixunsdfsi (DFtype);
|
||||
extern UWtype __fixunssfsi (SFtype);
|
||||
extern DWtype __fixunsdfdi (DFtype);
|
||||
extern DWtype __fixdfdi (DFtype);
|
||||
extern DWtype __fixunssfdi (SFtype);
|
||||
extern DWtype __fixsfdi (SFtype);
|
||||
|
||||
#if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 96
|
||||
extern DWtype __fixxfdi (XFtype);
|
||||
extern DWtype __fixunsxfdi (XFtype);
|
||||
extern XFtype __floatdixf (DWtype);
|
||||
extern UWtype __fixunsxfsi (XFtype);
|
||||
#endif
|
||||
|
||||
#if LIBGCC2_LONG_DOUBLE_TYPE_SIZE == 128
|
||||
extern DWtype __fixunstfdi (TFtype);
|
||||
extern DWtype __fixtfdi (TFtype);
|
||||
extern TFtype __floatditf (DWtype);
|
||||
#endif
|
||||
|
||||
#endif /* __LIBGCC2_H__ */
|
||||
|
Loading…
Reference in New Issue
Block a user