diff options
author | Ulrich Weigand <uweigand@de.ibm.com> | 2002-09-30 11:59:42 +0000 |
---|---|---|
committer | Ulrich Weigand <uweigand@gcc.gnu.org> | 2002-09-30 11:59:42 +0000 |
commit | c4f17c6f58d35c40b776b8cb0d9eb185f0a96538 (patch) | |
tree | 3f3009c6e05fa775a22de8c30178ef4f3c765709 /libffi/include | |
parent | b93a0fe6baa4f264b89d45434962c0bd52cfaa4b (diff) | |
download | gcc-c4f17c6f58d35c40b776b8cb0d9eb185f0a96538.tar.gz |
configure.in: Add s390x-*-linux-* target.
* configure.in: Add s390x-*-linux-* target.
* configure: Regenerate.
* include/ffi.h.in: Define S390X for s390x targets.
(FFI_CLOSURES): Define for s390/s390x.
(FFI_TRAMPOLINE_SIZE): Likewise.
(FFI_NATIVE_RAW_API): Likewise.
* src/prep_cif.c (ffi_prep_cif): Do not compute stack space for s390.
* src/types.c (FFI_TYPE_POINTER): Use 8-byte pointers on s390x.
* src/s390/ffi.c: Major rework of existing code. Add support for
s390x targets. Add closure support.
* src/s390/sysv.S: Likewise.
From-SVN: r57646
Diffstat (limited to 'libffi/include')
-rw-r--r-- | libffi/include/ffi.h.in | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/libffi/include/ffi.h.in b/libffi/include/ffi.h.in index 7cb1aa652fc..70a784226b1 100644 --- a/libffi/include/ffi.h.in +++ b/libffi/include/ffi.h.in @@ -164,6 +164,12 @@ extern "C" { #endif #endif +#ifdef S390 +#if defined (__s390x__) +#define S390X +#endif +#endif + #ifndef LIBFFI_ASM /* ---- Generic type definitions ----------------------------------------- */ @@ -435,6 +441,16 @@ struct ffi_ia64_trampoline_struct { #define FFI_TRAMPOLINE_SIZE 24 /* see struct below */ #define FFI_NATIVE_RAW_API 0 +#elif defined(S390) + +#define FFI_CLOSURES 1 +#ifdef S390X +#define FFI_TRAMPOLINE_SIZE 32 +#else +#define FFI_TRAMPOLINE_SIZE 16 +#endif +#define FFI_NATIVE_RAW_API 0 + #elif defined(SH) #define FFI_CLOSURES 1 |