1 2000-12-09 Richard Henderson <rth@redhat.com>
3 * src/alpha/ffi.c (ffi_call): Simplify struct return test.
4 (ffi_closure_osf_inner): Index rather than increment avalue
5 and arg_types. Give ffi_closure_osf the raw return value type.
6 * src/alpha/osf.S (ffi_closure_osf): Handle return value type
9 2000-12-07 Richard Henderson <rth@redhat.com>
11 * src/raw_api.c (ffi_translate_args): Fix typo.
12 (ffi_prep_closure): Likewise.
14 * include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and
16 * src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal
17 cif->bytes for new ffi_call_osf implementation.
18 (ffi_prep_args): Absorb into ...
19 (ffi_call): ... here. Do all stack allocation here and
20 avoid a callback function.
21 (ffi_prep_closure, ffi_closure_osf_inner): New.
22 * src/alpha/osf.S (ffi_call_osf): Reimplement with no callback.
23 (ffi_closure_osf): New.
25 2000-09-10 Alexandre Oliva <aoliva@redhat.com>
27 * config.guess, config.sub, install-sh: Removed.
28 * ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise.
29 * Makefile.in: Rebuilt.
31 * acinclude.m4: Include libtool macros from the top level.
32 * aclocal.m4, configure: Rebuilt.
34 2000-08-22 Alexandre Oliva <aoliva@redhat.com>
36 * configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set.
39 2000-05-11 Scott Bambrough <scottb@netwinder.org>
41 * libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to
42 memory correctly. Use conditional instructions, not branches where
45 2000-05-04 Tom Tromey <tromey@cygnus.com>
48 * configure.in: Match `arm*-*-linux-*'.
49 From Chris Dornan <cdornan@arm.com>.
51 2000-04-28 Jakub Jelinek <jakub@redhat.com>
53 * Makefile.am (SUBDIRS): Define.
54 (AM_MAKEFLAGS): Likewise.
55 (Multilib support.): Add section.
56 * Makefile.in: Rebuilt.
57 * ltconfig (extra_compiler_flags, extra_compiler_flags_value):
58 New variables. Set for gcc using -print-multi-lib. Export them
60 (sparc64-*-linux-gnu*): Use libsuff 64 for search paths.
61 * ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options
63 (extra_compiler_flags_value, extra_compiler_flags): Check these
64 for extra compiler options which need to be passed down in
67 2000-04-16 Anthony Green <green@redhat.com>
70 * configure.in: Change i*86-pc-linux* to i*86-*-linux*.
72 2000-04-14 Jakub Jelinek <jakub@redhat.com>
74 * include/ffi.h.in (SPARC64): Define for 64bit SPARC builds.
75 Set SPARC FFI_DEFAULT_ABI based on SPARC64 define.
76 * src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args.
77 Replace all void * sizeofs with sizeof(int).
78 Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is
79 different than DOUBLE.
80 Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere).
81 (ffi_prep_args_v9): New function.
82 (ffi_prep_cif_machdep): Handle V9 ABI and long long on V8.
83 (ffi_V9_return_struct): New function.
84 (ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from
85 32bit code (not yet cross-arch calls).
86 * src/sparc/v8.S: Add struct return delay nop.
88 * src/sparc/v9.S: New file.
89 * src/prep_cif.c (ffi_prep_cif): Return structure pointer
90 is used on sparc64 only for structures larger than 32 bytes.
91 Pass by reference for structures is done for structure arguments
93 * src/ffitest.c (main): Use 64bit rint on sparc64.
94 Run long long tests on sparc.
95 * src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and
97 (FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits
99 * configure.in (sparc-*-linux*): New supported target.
100 (sparc64-*-linux*): Likewise.
101 * configure: Rebuilt.
102 * Makefile.am: Add v9.S to SPARC files.
103 * Makefile.in: Likewise.
104 (LINK): Surround $(CCLD) into double quotes, so that multilib
105 compiles work correctly.
107 2000-04-04 Alexandre Petit-Bianco <apbianco@cygnus.com>
109 * configure: Rebuilt.
110 * configure.in: (i*86-*-solaris*): New libffi target. Patch
111 proposed by Bryce McKinlay.
113 2000-03-20 Tom Tromey <tromey@cygnus.com>
115 * Makefile.in: Hand edit for java_raw_api.lo.
117 2000-03-08 Bryce McKinlay <bryce@albatross.co.nz>
119 * config.guess, config.sub: Update from the gcc tree.
120 Fix for PR libgcj/168.
122 2000-03-03 Tom Tromey <tromey@cygnus.com>
124 * Makefile.in: Fixed ia64 by hand.
126 * configure: Rebuilt.
127 * configure.in (--enable-multilib): New option.
128 (libffi_basedir): New subst.
129 (AC_OUTPUT): Added multilib code.
131 2000-03-02 Tom Tromey <tromey@cygnus.com>
133 * Makefile.in: Rebuilt.
134 * Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as
137 2000-02-25 Hans Boehm <boehm@acm.org>
139 * src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
141 * src/raw_api.c (ffi_translate_args): Fixed typo in argument
143 (ffi_prep_raw_closure): Use ffi_translate_args, not
144 ffi_closure_translate.
145 * src/java_raw_api.c: New file.
146 * src/ffitest.c (closure_test_fn): New function.
147 (main): Define `rint' as long long on IA64. Added new test when
148 FFI_CLOSURES is defined.
149 * include/ffi.h.in (ALIGN): Use size_t, not unsigned.
150 (ffi_abi): Recognize IA64.
151 (ffi_raw): Added `flt' field.
152 Added "Java raw API" code.
153 * configure.in: Recognize ia64.
154 * Makefile.am (TARGET_SRC_IA64): New macro.
155 (libffi_la_common_SOURCES): Added java_raw_api.c.
156 (libffi_la_SOURCES): Define in IA64 case.
158 2000-01-04 Tom Tromey <tromey@cygnus.com>
160 * Makefile.in: Rebuilt with newer automake.
162 1999-12-31 Tom Tromey <tromey@cygnus.com>
164 * Makefile.am (INCLUDES): Added -I$(top_srcdir)/src.
166 1999-09-01 Tom Tromey <tromey@cygnus.com>
168 * include/ffi.h.in: Removed PACKAGE and VERSION defines and
170 * fficonfig.h.in: Rebuilt.
171 * configure: Rebuilt.
172 * configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
173 Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
174 * acconfig.h: Don't #undef PACKAGE or VERSION.
176 1999-08-09 Anthony Green <green@cygnus.com>
178 * include/ffi.h.in: Try to work around messy header problem
179 with PACKAGE and VERSION.
181 * configure: Rebuilt.
182 * configure.in: Change version to 2.00-beta.
184 * fficonfig.h.in: Rebuilt.
185 * acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
187 * src/x86/ffi.c (ffi_raw_call): Rename.
189 1999-08-02 Kresten Krab Thorup <krab@dominiq.is.s.u-tokyo.ac.jp>
191 * src/x86/ffi.c (ffi_closure_SYSV): New function.
192 (ffi_prep_incoming_args_SYSV): Ditto.
193 (ffi_prep_closure): Ditto.
194 (ffi_closure_raw_SYSV): Ditto.
195 (ffi_prep_raw_closure): More ditto.
196 (ffi_call_raw): Final ditto.
198 * include/ffi.h.in: Add definitions for closure and raw API.
200 * src/x86/ffi.c (ffi_prep_cif_machdep): Added case for
203 * Makefile.am (libffi_la_common_SOURCES): Added raw_api.c
205 * src/raw_api.c: New file.
207 * include/ffi.h.in (ffi_raw): New type.
208 (UINT_ARG, SINT_ARG): New defines.
209 (ffi_closure, ffi_raw_closure): New types.
210 (ffi_prep_closure, ffi_prep_raw_closure): New declarations.
212 * configure.in: Add check for endianness and sizeof void*.
214 * src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument,
217 * configure: Rebuilt.
219 Thu Jul 8 14:28:42 1999 Anthony Green <green@cygnus.com>
221 * configure.in: Add x86 and powerpc BeOS configurations.
222 From Makoto Kato <m_kato@ga2.so-net.ne.jp>.
224 1999-05-09 Anthony Green <green@cygnus.com>
226 * configure.in: Add warning about this being beta code.
227 Remove src/Makefile.am from the picture.
228 * configure: Rebuilt.
230 * Makefile.am: Move logic from src/Makefile.am. Add changes
231 to support libffi as a target library.
232 * Makefile.in: Rebuilt.
234 * aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
235 Upgraded to new autoconf, automake, libtool.
239 * LICENSE: Update copyright date.
241 * src/Makefile.am, src/Makefile.in: Removed.
243 1998-11-29 Anthony Green <green@cygnus.com>
245 * include/ChangeLog: Removed.
246 * src/ChangeLog: Removed.
247 * src/mips/ChangeLog: Removed.
248 * src/sparc/ChangeLog: Remboved.
249 * src/x86/ChangeLog: Removed.
251 * ChangeLog.v1: Created.