[OpenBIOS] r245 - openbios-devel/libgcc
svn at openbios.org
svn at openbios.org
Wed Nov 5 16:52:59 CET 2008
Author: blueswirl
Date: 2008-11-05 16:52:59 +0100 (Wed, 05 Nov 2008)
New Revision: 245
Modified:
openbios-devel/libgcc/libgcc.h
Log:
TImode confuses GCC 4.x on Sparc32, so use them only on Sparc64
Modified: openbios-devel/libgcc/libgcc.h
===================================================================
--- openbios-devel/libgcc/libgcc.h 2008-11-02 19:25:05 UTC (rev 244)
+++ openbios-devel/libgcc/libgcc.h 2008-11-05 15:52:59 UTC (rev 245)
@@ -11,27 +11,33 @@
typedef unsigned int USItype __attribute__ ((mode (SI)));
typedef int DItype __attribute__ ((mode (DI)));
typedef unsigned int UDItype __attribute__ ((mode (DI)));
-typedef int TItype __attribute__ ((mode (TI)));
typedef int word_type __attribute__ ((mode (__word__)));
uint64_t __udivmoddi4(uint64_t num, uint64_t den, uint64_t *rem);
-__uint128_t __udivmodti4(__uint128_t num, __uint128_t den, __uint128_t *rem);
int64_t __divdi3(int64_t num, int64_t den);
uint64_t __udivdi3(uint64_t num, uint64_t den);
-__int128_t __divti3(__int128_t num, __int128_t den);
-__uint128_t __udivti3(__uint128_t num, __uint128_t den);
uint64_t __umoddi3(uint64_t num, uint64_t den);
-__uint128_t __umodti3(__uint128_t num, __uint128_t den);
DItype __ashldi3 (DItype u, word_type b);
DItype __lshrdi3 (DItype u, word_type b);
DItype __ashrdi3 (DItype u, word_type b);
-TItype __multi3 (TItype u, TItype v);
-
// Must be implemented outside:
void __divide_error(void);
+#ifdef __arch64__
+typedef int TItype __attribute__ ((mode (TI)));
+
+__uint128_t __udivmodti4(__uint128_t num, __uint128_t den, __uint128_t *rem);
+
+__int128_t __divti3(__int128_t num, __int128_t den);
+__uint128_t __udivti3(__uint128_t num, __uint128_t den);
+
+__uint128_t __umodti3(__uint128_t num, __uint128_t den);
+
+TItype __multi3 (TItype u, TItype v);
+#endif
+
#endif /* _LIBGCC_H */
More information about the OpenBIOS
mailing list