This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: libffi for ia64
- From: Jim Wilson <wilson at redhat dot com>
- To: CH Gowri Kumar <gkumar at csa dot iisc dot ernet dot in>
- Cc: green at redhat dot com, gcc-patches at gcc dot gnu dot org
- Date: 26 Nov 2002 17:28:15 -0500
- Subject: Re: libffi for ia64
- References: <Pine.SOL.3.96.1021122230702.4980A-100000@kohinoor.csa.iisc.ernet.in>
Thanks. I checked in a patch to fix this. I verified that the size and
alignment fields of ffi_type_pointer are now correct. Also, I did a gcc
bootstrap, and ran the libjava tests and the libffi ffitest. There were
no regressions, nor any improvement either. Curiously, it seems that nothing
currently in gcc or libffi actually depends on the pointer size info, but what
Portable .NET is doing is perfectly reasonable and should work.
2002-11-26 Jim Wilson <wilson@redhat.com>
* src/types.c (FFI_TYPE_POINTER): Has size 8 on IA64.
Index: types.c
===================================================================
RCS file: /cvs/gcc/gcc/libffi/src/types.c,v
retrieving revision 1.7
diff -p -r1.7 types.c
*** types.c 30 Sep 2002 11:59:42 -0000 1.7
--- types.c 26 Nov 2002 18:40:02 -0000
*************** FFI_INTEGRAL_TYPEDEF(uint32, 4, 4, FFI_T
*** 42,48 ****
FFI_INTEGRAL_TYPEDEF(sint32, 4, 4, FFI_TYPE_SINT32);
FFI_INTEGRAL_TYPEDEF(float, 4, 4, FFI_TYPE_FLOAT);
! #if defined ALPHA || defined SPARC64 || defined X86_64 || defined S390X
FFI_INTEGRAL_TYPEDEF(pointer, 8, 8, FFI_TYPE_POINTER);
--- 42,49 ----
FFI_INTEGRAL_TYPEDEF(sint32, 4, 4, FFI_TYPE_SINT32);
FFI_INTEGRAL_TYPEDEF(float, 4, 4, FFI_TYPE_FLOAT);
! #if defined ALPHA || defined SPARC64 || defined X86_64 || defined S390X \
! || defined IA64
FFI_INTEGRAL_TYPEDEF(pointer, 8, 8, FFI_TYPE_POINTER);