1 2001-03-23 Kevin B Hendricks <khendricks@ivey.uwo.ca>
3 * src/powerpc/ppc_closure.S: New file.
4 * src/powerpc/ffi.c (ffi_prep_args): Fixed ABI compatibility bug
5 involving long long and register pairs.
6 (ffi_prep_closure): New function.
7 (flush_icache): Likewise.
8 (ffi_closure_helper_SYSV): Likewise.
9 * include/ffi.h.in (FFI_CLOSURES): Define on PPC.
10 (FFI_TRAMPOLINE_SIZE): Likewise.
11 (FFI_NATIVE_RAW_API): Likewise.
12 * Makefile.in: Rebuilt.
13 * Makefile.am (EXTRA_DIST): Added src/powerpc/ppc_closure.S.
14 (TARGET_SRC_POWERPC): Likewise.
16 2001-03-19 Tom Tromey <tromey@redhat.com>
18 * Makefile.in: Rebuilt.
19 * Makefile.am (ffitest_LDFLAGS): New macro.
21 2001-03-02 Nick Clifton <nickc@redhat.com>
23 * include/ffi.h.in: Remove RCS ident string.
24 * include/ffi_mips.h: Remove RCS ident string.
25 * src/debug.c: Remove RCS ident string.
26 * src/ffitest.c: Remove RCS ident string.
27 * src/prep_cif.c: Remove RCS ident string.
28 * src/types.c: Remove RCS ident string.
29 * src/alpha/ffi.c: Remove RCS ident string.
30 * src/alpha/osf.S: Remove RCS ident string.
31 * src/arm/ffi.c: Remove RCS ident string.
32 * src/arm/sysv.S: Remove RCS ident string.
33 * src/mips/ffi.c: Remove RCS ident string.
34 * src/mips/n32.S: Remove RCS ident string.
35 * src/mips/o32.S: Remove RCS ident string.
36 * src/sparc/ffi.c: Remove RCS ident string.
37 * src/sparc/v8.S: Remove RCS ident string.
38 * src/sparc/v9.S: Remove RCS ident string.
39 * src/x86/ffi.c: Remove RCS ident string.
40 * src/x86/sysv.S: Remove RCS ident string.
42 2001-02-08 Joseph S. Myers <jsm28@cam.ac.uk>
44 * include/ffi.h.in: Change sourceware.cygnus.com references to
47 2000-12-09 Richard Henderson <rth@redhat.com>
49 * src/alpha/ffi.c (ffi_call): Simplify struct return test.
50 (ffi_closure_osf_inner): Index rather than increment avalue
51 and arg_types. Give ffi_closure_osf the raw return value type.
52 * src/alpha/osf.S (ffi_closure_osf): Handle return value type
55 2000-12-07 Richard Henderson <rth@redhat.com>
57 * src/raw_api.c (ffi_translate_args): Fix typo.
58 (ffi_prep_closure): Likewise.
60 * include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and
62 * src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal
63 cif->bytes for new ffi_call_osf implementation.
64 (ffi_prep_args): Absorb into ...
65 (ffi_call): ... here. Do all stack allocation here and
66 avoid a callback function.
67 (ffi_prep_closure, ffi_closure_osf_inner): New.
68 * src/alpha/osf.S (ffi_call_osf): Reimplement with no callback.
69 (ffi_closure_osf): New.
71 2000-09-10 Alexandre Oliva <aoliva@redhat.com>
73 * config.guess, config.sub, install-sh: Removed.
74 * ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise.
75 * Makefile.in: Rebuilt.
77 * acinclude.m4: Include libtool macros from the top level.
78 * aclocal.m4, configure: Rebuilt.
80 2000-08-22 Alexandre Oliva <aoliva@redhat.com>
82 * configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set.
85 2000-05-11 Scott Bambrough <scottb@netwinder.org>
87 * libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to
88 memory correctly. Use conditional instructions, not branches where
91 2000-05-04 Tom Tromey <tromey@cygnus.com>
94 * configure.in: Match `arm*-*-linux-*'.
95 From Chris Dornan <cdornan@arm.com>.
97 2000-04-28 Jakub Jelinek <jakub@redhat.com>
99 * Makefile.am (SUBDIRS): Define.
100 (AM_MAKEFLAGS): Likewise.
101 (Multilib support.): Add section.
102 * Makefile.in: Rebuilt.
103 * ltconfig (extra_compiler_flags, extra_compiler_flags_value):
104 New variables. Set for gcc using -print-multi-lib. Export them
106 (sparc64-*-linux-gnu*): Use libsuff 64 for search paths.
107 * ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options
109 (extra_compiler_flags_value, extra_compiler_flags): Check these
110 for extra compiler options which need to be passed down in
113 2000-04-16 Anthony Green <green@redhat.com>
115 * configure: Rebuilt.
116 * configure.in: Change i*86-pc-linux* to i*86-*-linux*.
118 2000-04-14 Jakub Jelinek <jakub@redhat.com>
120 * include/ffi.h.in (SPARC64): Define for 64bit SPARC builds.
121 Set SPARC FFI_DEFAULT_ABI based on SPARC64 define.
122 * src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args.
123 Replace all void * sizeofs with sizeof(int).
124 Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is
125 different than DOUBLE.
126 Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere).
127 (ffi_prep_args_v9): New function.
128 (ffi_prep_cif_machdep): Handle V9 ABI and long long on V8.
129 (ffi_V9_return_struct): New function.
130 (ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from
131 32bit code (not yet cross-arch calls).
132 * src/sparc/v8.S: Add struct return delay nop.
134 * src/sparc/v9.S: New file.
135 * src/prep_cif.c (ffi_prep_cif): Return structure pointer
136 is used on sparc64 only for structures larger than 32 bytes.
137 Pass by reference for structures is done for structure arguments
138 larger than 16 bytes.
139 * src/ffitest.c (main): Use 64bit rint on sparc64.
140 Run long long tests on sparc.
141 * src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and
143 (FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits
145 * configure.in (sparc-*-linux*): New supported target.
146 (sparc64-*-linux*): Likewise.
147 * configure: Rebuilt.
148 * Makefile.am: Add v9.S to SPARC files.
149 * Makefile.in: Likewise.
150 (LINK): Surround $(CCLD) into double quotes, so that multilib
151 compiles work correctly.
153 2000-04-04 Alexandre Petit-Bianco <apbianco@cygnus.com>
155 * configure: Rebuilt.
156 * configure.in: (i*86-*-solaris*): New libffi target. Patch
157 proposed by Bryce McKinlay.
159 2000-03-20 Tom Tromey <tromey@cygnus.com>
161 * Makefile.in: Hand edit for java_raw_api.lo.
163 2000-03-08 Bryce McKinlay <bryce@albatross.co.nz>
165 * config.guess, config.sub: Update from the gcc tree.
166 Fix for PR libgcj/168.
168 2000-03-03 Tom Tromey <tromey@cygnus.com>
170 * Makefile.in: Fixed ia64 by hand.
172 * configure: Rebuilt.
173 * configure.in (--enable-multilib): New option.
174 (libffi_basedir): New subst.
175 (AC_OUTPUT): Added multilib code.
177 2000-03-02 Tom Tromey <tromey@cygnus.com>
179 * Makefile.in: Rebuilt.
180 * Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as
183 2000-02-25 Hans Boehm <boehm@acm.org>
185 * src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
187 * src/raw_api.c (ffi_translate_args): Fixed typo in argument
189 (ffi_prep_raw_closure): Use ffi_translate_args, not
190 ffi_closure_translate.
191 * src/java_raw_api.c: New file.
192 * src/ffitest.c (closure_test_fn): New function.
193 (main): Define `rint' as long long on IA64. Added new test when
194 FFI_CLOSURES is defined.
195 * include/ffi.h.in (ALIGN): Use size_t, not unsigned.
196 (ffi_abi): Recognize IA64.
197 (ffi_raw): Added `flt' field.
198 Added "Java raw API" code.
199 * configure.in: Recognize ia64.
200 * Makefile.am (TARGET_SRC_IA64): New macro.
201 (libffi_la_common_SOURCES): Added java_raw_api.c.
202 (libffi_la_SOURCES): Define in IA64 case.
204 2000-01-04 Tom Tromey <tromey@cygnus.com>
206 * Makefile.in: Rebuilt with newer automake.
208 1999-12-31 Tom Tromey <tromey@cygnus.com>
210 * Makefile.am (INCLUDES): Added -I$(top_srcdir)/src.
212 1999-09-01 Tom Tromey <tromey@cygnus.com>
214 * include/ffi.h.in: Removed PACKAGE and VERSION defines and
216 * fficonfig.h.in: Rebuilt.
217 * configure: Rebuilt.
218 * configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
219 Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
220 * acconfig.h: Don't #undef PACKAGE or VERSION.
222 1999-08-09 Anthony Green <green@cygnus.com>
224 * include/ffi.h.in: Try to work around messy header problem
225 with PACKAGE and VERSION.
227 * configure: Rebuilt.
228 * configure.in: Change version to 2.00-beta.
230 * fficonfig.h.in: Rebuilt.
231 * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
233 * src/x86/ffi.c (ffi_raw_call): Rename.
235 1999-08-02 Kresten Krab Thorup <krab@dominiq.is.s.u-tokyo.ac.jp>
237 * src/x86/ffi.c (ffi_closure_SYSV): New function.
238 (ffi_prep_incoming_args_SYSV): Ditto.
239 (ffi_prep_closure): Ditto.
240 (ffi_closure_raw_SYSV): Ditto.
241 (ffi_prep_raw_closure): More ditto.
242 (ffi_call_raw): Final ditto.
244 * include/ffi.h.in: Add definitions for closure and raw API.
246 * src/x86/ffi.c (ffi_prep_cif_machdep): Added case for
249 * Makefile.am (libffi_la_common_SOURCES): Added raw_api.c
251 * src/raw_api.c: New file.
253 * include/ffi.h.in (ffi_raw): New type.
254 (UINT_ARG, SINT_ARG): New defines.
255 (ffi_closure, ffi_raw_closure): New types.
256 (ffi_prep_closure, ffi_prep_raw_closure): New declarations.
258 * configure.in: Add check for endianness and sizeof void*.
260 * src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument,
263 * configure: Rebuilt.
265 Thu Jul 8 14:28:42 1999 Anthony Green <green@cygnus.com>
267 * configure.in: Add x86 and powerpc BeOS configurations.
268 From Makoto Kato <m_kato@ga2.so-net.ne.jp>.
270 1999-05-09 Anthony Green <green@cygnus.com>
272 * configure.in: Add warning about this being beta code.
273 Remove src/Makefile.am from the picture.
274 * configure: Rebuilt.
276 * Makefile.am: Move logic from src/Makefile.am. Add changes
277 to support libffi as a target library.
278 * Makefile.in: Rebuilt.
280 * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
281 Upgraded to new autoconf, automake, libtool.
285 * LICENSE: Update copyright date.
287 * src/Makefile.am, src/Makefile.in: Removed.
289 1998-11-29 Anthony Green <green@cygnus.com>
291 * include/ChangeLog: Removed.
292 * src/ChangeLog: Removed.
293 * src/mips/ChangeLog: Removed.
294 * src/sparc/ChangeLog: Remboved.
295 * src/x86/ChangeLog: Removed.
297 * ChangeLog.v1: Created.