diff options
author | green <green@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-30 15:43:03 +0000 |
---|---|---|
committer | green <green@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-08-30 15:43:03 +0000 |
commit | 2e818f508e564c53e9269ba6e3048c80f71be5a0 (patch) | |
tree | a36cbe1ac1d0a30e257ceffcce0d0b8b21e90faa /libffi/include | |
parent | 092b1d6f29c36a1496c539d276bc9d0e1ce66082 (diff) | |
download | gcc-2e818f508e564c53e9269ba6e3048c80f71be5a0.tar.gz |
2004-08-30 Anthony Green <green@redhat.com>
* Makefile.am: Add frv support.
* Makefile.in, testsuite/Makefile.in: Rebuilt.
* configure.ac: Read configure.host.
* configure, aclocal.m4: Rebuilt.
* configure.host: New file. frv-elf needs libgloss.
* include/ffi.h.in: Force ffi_closure to have a nice big (8)
alignment. This is needed to frv and should harm the others.
* include/ffi_common.h (ALIGN_DOWN): New macro.
* src/frv/ffi.c, src/frv/ffitarget.h, src/frv/eabi.S: New files.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@86779 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libffi/include')
-rw-r--r-- | libffi/include/ffi.h.in | 2 | ||||
-rw-r--r-- | libffi/include/ffi_common.h | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/libffi/include/ffi.h.in b/libffi/include/ffi.h.in index 9f61d48aae6..42600458689 100644 --- a/libffi/include/ffi.h.in +++ b/libffi/include/ffi.h.in @@ -218,7 +218,7 @@ typedef struct { ffi_cif *cif; void (*fun)(ffi_cif*,void*,void**,void*); void *user_data; -} ffi_closure; +} ffi_closure __attribute__((aligned (8))); ffi_status ffi_prep_closure (ffi_closure*, diff --git a/libffi/include/ffi_common.h b/libffi/include/ffi_common.h index 1b948d54ae2..da15ab8ec61 100644 --- a/libffi/include/ffi_common.h +++ b/libffi/include/ffi_common.h @@ -60,6 +60,7 @@ void ffi_type_test(/*@temp@*/ /*@out@*/ ffi_type *a, /*@temp@*/ char *file, int #endif #define ALIGN(v, a) (((((size_t) (v))-1) | ((a)-1))+1) +#define ALIGN_DOWN(v, a) (((size_t) (v)) & -a) /* Perform machine dependent cif processing */ ffi_status ffi_prep_cif_machdep(ffi_cif *cif); |