Patch for IA64 32-bit function descriptors

Benjamin Kosnik
Fri Jun 14 10:47:00 GMT 2002

> I've re-written the patch and tested it for basic sanity on
> ia64-linux.

Thanks Richard. This part still troubles me. I'm not sure why
target-specific padding is being added to this struct. Isn't there a
better way of doing this than hacking up common code for IA64 and HPUX


002-06-04 Jessica Han <>

	* libsupc++/  Handle the 8 byte vtable entries in 
	IA64 32-bit mode.

---	Tue Apr  2 12:38:38 2002
+++	Tue Jun  4 13:02:47 2002
@@ -95,7 +95,13 @@ using namespace abi;
 // have to keep alignments consistent manually.
 struct vtable_prefix {
   ptrdiff_t whole_object;           // offset to most derived object
+#if !defined(_LP64) && defined (__ia64__)
+  ptrdiff_t padding1;           // padding to the offset IA64 32-bit
   const __class_type_info *whole_type;  // pointer to most derived
+#if !defined(_LP64) && defined (__ia64__)
+  ptrdiff_t padding2;           // padding to the pointer IA64 32-bit
   const void *origin;               // what a class's vptr points to

More information about the Gcc-patches mailing list