Re: [PATCH] Define FFI_SIZEOF_JAVA_RAW to 4 for x32

"H.J. Lu" <[email protected]>
Newsgroups gmane.comp.gcc.java.patches,gmane.comp.lib.ffi.general,gmane.comp.gcc.patches
Message-ID <[email protected]>
On Mon, Jul 16, 2012 at 01:14:08PM -0700, H.J. Lu wrote:
> Hi,
> 
> This patch defines FFI_SIZEOF_JAVA_RAW to 4 for x32, similar to MIPS n32.
> It fixed:
> 
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53982
> 
> 

Hi,

Here is the patch with updated ChangeLog entry.  X32 has the same issue
as MIPS n32, which was fixed by FFI_SIZEOF_JAVA_RAW:

http://gcc.gnu.org/ml/gcc-patches/2007-11/msg01612.html
http://gcc.gnu.org/ml/gcc-patches/2007-12/msg00005.html

The same fix is needed for x32.  OK for trunk?

Thanks.


H.J.
---
2012-07-16  H.J. Lu  <[email protected]>

	* src/x86/ffitarget.h: Check __ILP32__ instead of __LP64__ for
	x32.
	(FFI_SIZEOF_JAVA_RAW): Defined to 4 for x32.

diff --git a/src/x86/ffitarget.h b/src/x86/ffitarget.h
index f442654..46f294c 100644
--- a/src/x86/ffitarget.h
+++ b/src/x86/ffitarget.h
@@ -61,8 +61,9 @@ typedef unsigned long long     ffi_arg;
 typedef long long              ffi_sarg;
 #endif
 #else
-#if defined __x86_64__ && !defined __LP64__
+#if defined __x86_64__ && defined __ILP32__
 #define FFI_SIZEOF_ARG 8
+#define FFI_SIZEOF_JAVA_RAW  4
 typedef unsigned long long     ffi_arg;
 typedef long long              ffi_sarg;
 #else
-- 
1.7.10.4
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.