diff options
Diffstat (limited to 'Modules/_ctypes/libffi/src/s390')
-rw-r--r-- | Modules/_ctypes/libffi/src/s390/ffi.c | 3 | ||||
-rw-r--r-- | Modules/_ctypes/libffi/src/s390/ffitarget.h | 13 |
2 files changed, 12 insertions, 4 deletions
diff --git a/Modules/_ctypes/libffi/src/s390/ffi.c b/Modules/_ctypes/libffi/src/s390/ffi.c index ca2675b..8adb5bc 100644 --- a/Modules/_ctypes/libffi/src/s390/ffi.c +++ b/Modules/_ctypes/libffi/src/s390/ffi.c @@ -750,7 +750,8 @@ ffi_prep_closure_loc (ffi_closure *closure, void *user_data, void *codeloc) { - FFI_ASSERT (cif->abi == FFI_SYSV); + if (cif->abi != FFI_SYSV) + return FFI_BAD_ABI; #ifndef __s390x__ *(short *)&closure->tramp [0] = 0x0d10; /* basr %r1,0 */ diff --git a/Modules/_ctypes/libffi/src/s390/ffitarget.h b/Modules/_ctypes/libffi/src/s390/ffitarget.h index 78f3c65..97fa5c4 100644 --- a/Modules/_ctypes/libffi/src/s390/ffitarget.h +++ b/Modules/_ctypes/libffi/src/s390/ffitarget.h @@ -1,5 +1,6 @@ /* -----------------------------------------------------------------*-C-*- - ffitarget.h - Copyright (c) 1996-2003 Red Hat, Inc. + ffitarget.h - Copyright (c) 2012 Anthony Green + Copyright (c) 1996-2003 Red Hat, Inc. Target configuration macros for S390. Permission is hereby granted, free of charge, to any person obtaining @@ -27,9 +28,15 @@ #ifndef LIBFFI_TARGET_H #define LIBFFI_TARGET_H +#ifndef LIBFFI_H +#error "Please do not include ffitarget.h directly into your source. Use ffi.h instead." +#endif + #if defined (__s390x__) +#ifndef S390X #define S390X #endif +#endif /* ---- System specific configurations ----------------------------------- */ @@ -40,8 +47,8 @@ typedef signed long ffi_sarg; typedef enum ffi_abi { FFI_FIRST_ABI = 0, FFI_SYSV, - FFI_DEFAULT_ABI = FFI_SYSV, - FFI_LAST_ABI = FFI_DEFAULT_ABI + 1 + FFI_LAST_ABI, + FFI_DEFAULT_ABI = FFI_SYSV } ffi_abi; #endif |