38 lines
1.2 KiB
Plaintext
38 lines
1.2 KiB
Plaintext
Index: libffi/ChangeLog
|
|
===================================================================
|
|
--- libffi.orig/ChangeLog
|
|
+++ libffi/ChangeLog
|
|
@@ -35,6 +35,10 @@
|
|
* testsuite/libffi.call/struct1_win32.c: New test.
|
|
* testsuite/libffi.call/struct2_win32.c: New test.
|
|
|
|
+2012-01-23 Uros Bizjak <ubizjak@gmail.com>
|
|
+
|
|
+ * src/alpha/ffi.c (ffi_prep_closure_loc): Check for bad ABI.
|
|
+
|
|
2012-01-23 Anthony Green <green@moxielogic.com>
|
|
Chris Young <cdyoung@ntlworld.com>
|
|
|
|
Index: libffi/src/alpha/ffi.c
|
|
===================================================================
|
|
--- libffi.orig/src/alpha/ffi.c
|
|
+++ libffi/src/alpha/ffi.c
|
|
@@ -1,5 +1,6 @@
|
|
/* -----------------------------------------------------------------------
|
|
- ffi.c - Copyright (c) 1998, 2001, 2007, 2008 Red Hat, Inc.
|
|
+ ffi.c - Copyright (c) 2012 Anthony Green
|
|
+ Copyright (c) 1998, 2001, 2007, 2008 Red Hat, Inc.
|
|
|
|
Alpha Foreign Function Interface
|
|
|
|
@@ -178,6 +179,9 @@ ffi_prep_closure_loc (ffi_closure* closu
|
|
{
|
|
unsigned int *tramp;
|
|
|
|
+ if (cif->abi != FFI_OSF)
|
|
+ return FFI_BAD_ABI;
|
|
+
|
|
tramp = (unsigned int *) &closure->tramp[0];
|
|
tramp[0] = 0x47fb0401; /* mov $27,$1 */
|
|
tramp[1] = 0xa77b0010; /* ldq $27,16($27) */
|