This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

PATH: C++ Internal error 73


Hello,

Michael Hayes sent a bug report:
   http://gcc.gnu.org/ml/gcc-bugs/2000-01/msg00748.html
This problem is introduced by the libgcc2.c patch. Some time ago this
file was changed so that targets where QImode contains 32 bits (c4x)
could compile this code. Before this patch we had a define in t-c4x
'-DDF=HF -DDI=HI -DSF=QF -DSI=QI' that did this conversion in an ugly way.
After libgcc2.c was changed Michael removed this line from t-c4x. He
did not notice that tinfo.h also needed this define.
So to complete the change we also have to update tinfo.h to do the
same as libgcc2.c.

	Herman

2000-01-28 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>

	* tinfo.h: Make USItype dependend on UNITS_PER_WORD.


--- tinfo.h.org	Sun Jan 23 10:23:24 2000
+++ tinfo.h	Tue Jan 18 22:00:18 2000
@@ -167,10 +167,18 @@ public:
 
 // type_info for a general class.
 
+#if UNITS_PER_WORD > 2
+#define Wmode   SI
+#elif UNITS_PER_WORD > 1
+#define Wmode   HI
+#else
+#define Wmode   QI
+#endif
+
 #ifdef __GXX_ABI_VERSION
-typedef int USItype __attribute__ ((mode (SI)));
+typedef int USItype __attribute__ ((mode (Wmode)));
 #else
-typedef unsigned int USItype	__attribute__ ((mode (SI)));
+typedef unsigned int USItype	__attribute__ ((mode (Wmode)));
 #endif
 
 struct __class_type_info : public __user_type_info {


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]