xref: /aosp_15_r20/external/libffi/ChangeLog.old (revision 1fd5a2e1d639cd1ddf29dd0c484c123bbd850c21)
1*1fd5a2e1SPrashanth SwaminathanLibffi change logs used to be maintained in separate ChangeLog files.
2*1fd5a2e1SPrashanth SwaminathanThese days we generate them directly from the git commit messages.
3*1fd5a2e1SPrashanth SwaminathanThe old ChangeLog files are saved here in order to maintain the historical
4*1fd5a2e1SPrashanth Swaminathanrecord.
5*1fd5a2e1SPrashanth Swaminathan
6*1fd5a2e1SPrashanth Swaminathan=============================================================================
7*1fd5a2e1SPrashanth SwaminathanFrom the old ChangeLog.libffi-3.1 file...
8*1fd5a2e1SPrashanth Swaminathan
9*1fd5a2e1SPrashanth Swaminathan2014-03-16  Josh Triplett  <[email protected]>
10*1fd5a2e1SPrashanth Swaminathan
11*1fd5a2e1SPrashanth Swaminathan	* ChangeLog: Archive to ChangeLog.libffi-3.1 and delete.  Future
12*1fd5a2e1SPrashanth Swaminathan	changelogs will come from git, with autogenerated snapshots shipped in
13*1fd5a2e1SPrashanth Swaminathan	distributed tarballs.
14*1fd5a2e1SPrashanth Swaminathan
15*1fd5a2e1SPrashanth Swaminathan2014-03-16  Josh Triplett  <[email protected]>
16*1fd5a2e1SPrashanth Swaminathan
17*1fd5a2e1SPrashanth Swaminathan	Add support for stdcall, thiscall, and fastcall on non-Windows
18*1fd5a2e1SPrashanth Swaminathan	x86-32.
19*1fd5a2e1SPrashanth Swaminathan
20*1fd5a2e1SPrashanth Swaminathan	Linux supports the stdcall calling convention, either via
21*1fd5a2e1SPrashanth Swaminathan	functions explicitly declared with the stdcall attribute, or via
22*1fd5a2e1SPrashanth Swaminathan	code compiled with -mrtd which effectively makes stdcall the
23*1fd5a2e1SPrashanth Swaminathan	default.
24*1fd5a2e1SPrashanth Swaminathan
25*1fd5a2e1SPrashanth Swaminathan	This introduces FFI_STDCALL, FFI_THISCALL, and FFI_FASTCALL on
26*1fd5a2e1SPrashanth Swaminathan	non-Windows x86-32 platforms, as non-default calling conventions.
27*1fd5a2e1SPrashanth Swaminathan
28*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Compile in src/x86/win32.S on non-Windows x86-32.
29*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h: Add FFI_STDCALL, FFI_THISCALL, and
30*1fd5a2e1SPrashanth Swaminathan	FFI_FASTCALL on non-Windows x86-32.  Increase trampoline size to
31*1fd5a2e1SPrashanth Swaminathan	accomodate these calling conventions, and unify some ifdeffery.
32*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Add support for FFI_STDCALL, FFI_THISCALL, and
33*1fd5a2e1SPrashanth Swaminathan	FFI_FASTCALL on non-Windows x86-32 platforms; update ifdeffery.
34*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S: Support compiling on non-Windows x86-32
35*1fd5a2e1SPrashanth Swaminathan	platforms.  On those platforms, avoid redefining the SYSV symbols
36*1fd5a2e1SPrashanth Swaminathan	already provided by src/x86/sysv.S.
37*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_stdcall.c: Run on non-Windows.
38*1fd5a2e1SPrashanth Swaminathan	#define __stdcall if needed.
39*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_thiscall.c: Run on non-Windows.
40*1fd5a2e1SPrashanth Swaminathan	#define __fastcall if needed.
41*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/fastthis1_win32.c: Run on non-Windows.
42*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/fastthis2_win32.c: Ditto.
43*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/fastthis3_win32.c: Ditto.
44*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many2_win32.c: Ditto.
45*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many_win32.c: Ditto.
46*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/strlen2_win32.c: Ditto.
47*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/strlen_win32.c: Ditto.
48*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct1_win32.c: Ditto.
49*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct2_win32.c: Ditto.
50*1fd5a2e1SPrashanth Swaminathan
51*1fd5a2e1SPrashanth Swaminathan2014-03-16  Josh Triplett  <[email protected]>
52*1fd5a2e1SPrashanth Swaminathan
53*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c: Remove unnecessary ifdef for X86_WIN32.
54*1fd5a2e1SPrashanth Swaminathan	ffi_prep_cif_core had a special case for X86_WIN32, checking for
55*1fd5a2e1SPrashanth Swaminathan	FFI_THISCALL in addition to the FFI_FIRST_ABI-to-FFI_LAST_ABI
56*1fd5a2e1SPrashanth Swaminathan	range before returning FFI_BAD_ABI.  However, on X86_WIN32,
57*1fd5a2e1SPrashanth Swaminathan	FFI_THISCALL already falls in that range, making the special case
58*1fd5a2e1SPrashanth Swaminathan	unnecessary.  Remove it.
59*1fd5a2e1SPrashanth Swaminathan
60*1fd5a2e1SPrashanth Swaminathan2014-03-16  Josh Triplett  <[email protected]>
61*1fd5a2e1SPrashanth Swaminathan
62*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_stdcall.c,
63*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_thiscall.c: Remove fragile stack
64*1fd5a2e1SPrashanth Swaminathan	pointer checks.  These files included inline assembly to save the
65*1fd5a2e1SPrashanth Swaminathan	stack pointer before and after the call, and compare the values.
66*1fd5a2e1SPrashanth Swaminathan	However, compilers can and do leave the stack in different states
67*1fd5a2e1SPrashanth Swaminathan	for these two pieces of inline assembly, such as by saving a
68*1fd5a2e1SPrashanth Swaminathan	temporary value on the stack across the call; observed with gcc
69*1fd5a2e1SPrashanth Swaminathan	-Os, and verified as spurious through careful inspection of
70*1fd5a2e1SPrashanth Swaminathan	disassembly.
71*1fd5a2e1SPrashanth Swaminathan
72*1fd5a2e1SPrashanth Swaminathan2014-03-16  Josh Triplett  <[email protected]>
73*1fd5a2e1SPrashanth Swaminathan
74*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many.c: Avoid spurious failure due to
75*1fd5a2e1SPrashanth Swaminathan	excess floating-point precision.
76*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many_win32.c: Ditto.
77*1fd5a2e1SPrashanth Swaminathan
78*1fd5a2e1SPrashanth Swaminathan2014-03-16  Josh Triplett <[email protected]>
79*1fd5a2e1SPrashanth Swaminathan
80*1fd5a2e1SPrashanth Swaminathan	* libtool-ldflags: Re-add.
81*1fd5a2e1SPrashanth Swaminathan
82*1fd5a2e1SPrashanth Swaminathan2014-03-16  Josh Triplett <[email protected]>
83*1fd5a2e1SPrashanth Swaminathan
84*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, aclocal.m4, compile, config.guess, config.sub,
85*1fd5a2e1SPrashanth Swaminathan	configure, depcomp, include/Makefile.in, install-sh,
86*1fd5a2e1SPrashanth Swaminathan	libtool-ldflags, ltmain.sh, m4/libtool.m4, m4/ltoptions.m4,
87*1fd5a2e1SPrashanth Swaminathan	m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4,
88*1fd5a2e1SPrashanth Swaminathan	man/Makefile.in, mdate-sh, missing, testsuite/Makefile.in: Delete
89*1fd5a2e1SPrashanth Swaminathan	autogenerated files from version control.
90*1fd5a2e1SPrashanth Swaminathan	* .gitignore: Add autogenerated files.
91*1fd5a2e1SPrashanth Swaminathan	* autogen.sh: New script to generate the autogenerated files.
92*1fd5a2e1SPrashanth Swaminathan	* README: Document requirement to run autogen.sh when building
93*1fd5a2e1SPrashanth Swaminathan	directly from version control.
94*1fd5a2e1SPrashanth Swaminathan	* .travis.yml: Run autogen.sh
95*1fd5a2e1SPrashanth Swaminathan
96*1fd5a2e1SPrashanth Swaminathan2014-03-14  Anthony Green <[email protected]>
97*1fd5a2e1SPrashanth Swaminathan
98*1fd5a2e1SPrashanth Swaminathan	* configure, Makefile.in: Rebuilt.
99*1fd5a2e1SPrashanth Swaminathan
100*1fd5a2e1SPrashanth Swaminathan2014-03-10  Mike Hommey <[email protected]>
101*1fd5a2e1SPrashanth Swaminathan
102*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Allow building for mipsel with Android NDK r8.
103*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AM_MAKEFLAGS): Replace double quotes with single
104*1fd5a2e1SPrashanth Swaminathan	quotes.
105*1fd5a2e1SPrashanth Swaminathan
106*1fd5a2e1SPrashanth Swaminathan2014-03-10  Landry Breuil <[email protected]>
107*1fd5a2e1SPrashanth Swaminathan
108*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Ensure the linker supports @unwind sections in libffi.
109*1fd5a2e1SPrashanth Swaminathan
110*1fd5a2e1SPrashanth Swaminathan2014-03-01  Anthony Green  <[email protected]>
111*1fd5a2e1SPrashanth Swaminathan
112*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Replace old scripts with
113*1fd5a2e1SPrashanth Swaminathan	generate-darwin-source-and-headers.py.
114*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
115*1fd5a2e1SPrashanth Swaminathan
116*1fd5a2e1SPrashanth Swaminathan2014-02-28  Anthony Green  <[email protected]>
117*1fd5a2e1SPrashanth Swaminathan
118*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AM_CFLAGS): Reintroduce missing -DFFI_DEBUG for
119*1fd5a2e1SPrashanth Swaminathan	--enable-debug builds.
120*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
121*1fd5a2e1SPrashanth Swaminathan
122*1fd5a2e1SPrashanth Swaminathan2014-02-28  Makoto Kato  <[email protected]>
123*1fd5a2e1SPrashanth Swaminathan
124*1fd5a2e1SPrashanth Swaminathan	* src/closures.c: Fix build failure when using clang for Android.
125*1fd5a2e1SPrashanth Swaminathan
126*1fd5a2e1SPrashanth Swaminathan2014-02-28  Marcin Wojdyr  <[email protected]>
127*1fd5a2e1SPrashanth Swaminathan
128*1fd5a2e1SPrashanth Swaminathan	* libffi.pc.in (toolexeclibdir): use -L${toolexeclibdir} instead
129*1fd5a2e1SPrashanth Swaminathan	of -L${libdir}.
130*1fd5a2e1SPrashanth Swaminathan
131*1fd5a2e1SPrashanth Swaminathan2014-02-28  Paulo Pizarro  <[email protected]>
132*1fd5a2e1SPrashanth Swaminathan
133*1fd5a2e1SPrashanth Swaminathan	* src/bfin/sysv.S: Calling functions in shared libraries requires
134*1fd5a2e1SPrashanth Swaminathan	considering the GOT.
135*1fd5a2e1SPrashanth Swaminathan
136*1fd5a2e1SPrashanth Swaminathan2014-02-28  Josh Triplett  <[email protected]>
137*1fd5a2e1SPrashanth Swaminathan
138*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (classify_argument): Handle case where
139*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_LONGDOUBLE == FFI_TYPE_DOUBLE.
140*1fd5a2e1SPrashanth Swaminathan
141*1fd5a2e1SPrashanth Swaminathan2014-02-28  Anthony Green  <[email protected]>
142*1fd5a2e1SPrashanth Swaminathan
143*1fd5a2e1SPrashanth Swaminathan	* ltmain.sh: Generate with libtool-2.4.2.418.
144*1fd5a2e1SPrashanth Swaminathan	* m4/libtool.m4, m4/ltoptions.m4, m4/ltversion.m4: Ditto.
145*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
146*1fd5a2e1SPrashanth Swaminathan
147*1fd5a2e1SPrashanth Swaminathan2014-02-28  Dominik Vogt  <[email protected]>
148*1fd5a2e1SPrashanth Swaminathan
149*1fd5a2e1SPrashanth Swaminathan	* configure.ac (AC_ARG_ENABLE struct): Fix typo in help
150*1fd5a2e1SPrashanth Swaminathan	message.
151*1fd5a2e1SPrashanth Swaminathan	(AC_ARG_ENABLE raw_api): Ditto.
152*1fd5a2e1SPrashanth Swaminathan	* configure, fficonfig.h.in: Rebuilt.
153*1fd5a2e1SPrashanth Swaminathan
154*1fd5a2e1SPrashanth Swaminathan2014-02-28  Will Newton  <[email protected]>
155*1fd5a2e1SPrashanth Swaminathan
156*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Initialize IP register with FP.
157*1fd5a2e1SPrashanth Swaminathan
158*1fd5a2e1SPrashanth Swaminathan2014-02-28  Yufeng Zhang  <[email protected]>
159*1fd5a2e1SPrashanth Swaminathan
160*1fd5a2e1SPrashanth Swaminathan	* src/aarch64/sysv.S (ffi_closure_SYSV): Use x29 as the
161*1fd5a2e1SPrashanth Swaminathan	main CFA reg; update cfi_rel_offset.
162*1fd5a2e1SPrashanth Swaminathan
163*1fd5a2e1SPrashanth Swaminathan2014-02-15  Marcus Comstedt  <[email protected]>
164*1fd5a2e1SPrashanth Swaminathan
165*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_linux64.c, src/powerpc/linux64_closure.S: Remove
166*1fd5a2e1SPrashanth Swaminathan	assumption on contents of r11 in closure.
167*1fd5a2e1SPrashanth Swaminathan
168*1fd5a2e1SPrashanth Swaminathan2014-02-09  Heiher  <[email protected]>
169*1fd5a2e1SPrashanth Swaminathan
170*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S: Fix call floating point va function.
171*1fd5a2e1SPrashanth Swaminathan
172*1fd5a2e1SPrashanth Swaminathan2014-01-21  Zachary Waldowski  <[email protected]>
173*1fd5a2e1SPrashanth Swaminathan
174*1fd5a2e1SPrashanth Swaminathan	* src/aarch64/ffi.c: Fix missing semicolons on assertions under
175*1fd5a2e1SPrashanth Swaminathan	debug mode.
176*1fd5a2e1SPrashanth Swaminathan
177*1fd5a2e1SPrashanth Swaminathan2013-12-30  Zachary Waldowski  <[email protected]>
178*1fd5a2e1SPrashanth Swaminathan
179*1fd5a2e1SPrashanth Swaminathan	* .gitignore: Exclude darwin_* generated source and build_* trees.
180*1fd5a2e1SPrashanth Swaminathan	* src/aarch64/ffi.c, src/arm/ffi.c, src/x86/ffi.c: Inhibit Clang
181*1fd5a2e1SPrashanth Swaminathan	previous prototype warnings.
182*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c: Prevent NULL dereference, fix short type warning
183*1fd5a2e1SPrashanth Swaminathan	* src/dlmalloc.c: Fix warnings from set_segment_flags return type,
184*1fd5a2e1SPrashanth Swaminathan	and the native use of size_t for malloc on platforms
185*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Use unified syntax. Clang clean-ups for
186*1fd5a2e1SPrashanth Swaminathan	ARM_FUNC_START.
187*1fd5a2e1SPrashanth Swaminathan	* generate-osx-source-and-headers.py: Remove.
188*1fd5a2e1SPrashanth Swaminathan	* build-ios.sh: Remove.
189*1fd5a2e1SPrashanth Swaminathan	* libffi.xcodeproj/project.pbxproj: Rebuild targets. Include
190*1fd5a2e1SPrashanth Swaminathan	x86_64+aarch64 pieces in library.  Export headers properly.
191*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c: More Clang warning clean-ups.
192*1fd5a2e1SPrashanth Swaminathan	* src/closures.c (open_temp_exec_file_dir): Use size_t.
193*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif_core): Cast ALIGN result.
194*1fd5a2e1SPrashanth Swaminathan	* src/aarch64/sysv.S: Use CNAME for global symbols.  Only use
195*1fd5a2e1SPrashanth Swaminathan	.size for ELF targets.
196*1fd5a2e1SPrashanth Swaminathan	* src/aarch64/ffi.c: Clean up for double == long double.  Clean up
197*1fd5a2e1SPrashanth Swaminathan	from Clang warnings.  Use Clang cache invalidation builtin.  Use
198*1fd5a2e1SPrashanth Swaminathan	size_t in place of unsigned in many places.  Accommodate for
199*1fd5a2e1SPrashanth Swaminathan	differences in Apple AArch64 ABI.
200*1fd5a2e1SPrashanth Swaminathan
201*1fd5a2e1SPrashanth Swaminathan2013-12-02  Daniel Rodríguez Troitiño  <[email protected]>
202*1fd5a2e1SPrashanth Swaminathan
203*1fd5a2e1SPrashanth Swaminathan	* generate-darwin-source-and-headers.py: Clean up, modernize,
204*1fd5a2e1SPrashanth Swaminathan	merged version of previous scripts.
205*1fd5a2e1SPrashanth Swaminathan
206*1fd5a2e1SPrashanth Swaminathan2013-11-21  Anthony Green  <[email protected]>
207*1fd5a2e1SPrashanth Swaminathan
208*1fd5a2e1SPrashanth Swaminathan	* configure, Makefile.in, include/Makefile.in, include/ffi.h.in,
209*1fd5a2e1SPrashanth Swaminathan	man/Makefile.in, testsuite/Makefile.in, fficonfig.h.in: Rebuilt.
210*1fd5a2e1SPrashanth Swaminathan
211*1fd5a2e1SPrashanth Swaminathan2013-11-21  Alan Modra  <[email protected]>
212*1fd5a2e1SPrashanth Swaminathan
213*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add new src/powerpc files.
214*1fd5a2e1SPrashanth Swaminathan	(nodist_libffi_la_SOURCES <POWERPC, POWERPC_FREEBSD>): Likewise.
215*1fd5a2e1SPrashanth Swaminathan	* configure.ac (HAVE_LONG_DOUBLE_VARIANT): Define for powerpc.
216*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (ffi_prep_types): Declare.
217*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif_core): Call ffi_prep_types.
218*1fd5a2e1SPrashanth Swaminathan	* src/types.c (FFI_NONCONST_TYPEDEF): Define and use for
219*1fd5a2e1SPrashanth Swaminathan	HAVE_LONG_DOUBLE_VARIANT.
220*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_powerpc.h: New file.
221*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Split into..
222*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_sysv.c: ..new file, and..
223*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_linux64.c: ..new file, rewriting parts.
224*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h (enum ffi_abi): Rewrite powerpc ABI
225*1fd5a2e1SPrashanth Swaminathan	selection as bits controlling features.
226*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S: For consistency, use POWERPC64 rather
227*1fd5a2e1SPrashanth Swaminathan	than __powerpc64__.
228*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S: Likewise.
229*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Likewise.  Move .note.FNU-stack
230*1fd5a2e1SPrashanth Swaminathan	inside guard.
231*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Likewise.
232*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
233*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Regenerate.
234*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
235*1fd5a2e1SPrashanth Swaminathan
236*1fd5a2e1SPrashanth Swaminathan2013-11-20  Alan Modra  <[email protected]>
237*1fd5a2e1SPrashanth Swaminathan
238*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_cif_machdep_core): Use
239*1fd5a2e1SPrashanth Swaminathan	NUM_FPR_ARG_REGISTERS64 and NUM_GPR_ARG_REGISTERS64 not their
240*1fd5a2e1SPrashanth Swaminathan	32-bit versions for 64-bit code.
241*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S: Don't use the return value area
242*1fd5a2e1SPrashanth Swaminathan	as a parameter save area on ELFv2.
243*1fd5a2e1SPrashanth Swaminathan
244*1fd5a2e1SPrashanth Swaminathan2013-11-18  Iain Sandoe  <[email protected]>
245*1fd5a2e1SPrashanth Swaminathan
246*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S (EH): Correct use of pcrel FDE encoding.
247*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S (EH): Likewise. Modernise picbase
248*1fd5a2e1SPrashanth Swaminathan	labels.
249*1fd5a2e1SPrashanth Swaminathan
250*1fd5a2e1SPrashanth Swaminathan2013-11-18  Anthony Green  <[email protected]>
251*1fd5a2e1SPrashanth Swaminathan
252*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_call): Hoist declaration of temp to top of
253*1fd5a2e1SPrashanth Swaminathan	function.
254*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_closure_inner): Moderize function declaration
255*1fd5a2e1SPrashanth Swaminathan	to appease compiler.
256*1fd5a2e1SPrashanth Swaminathan	Thanks for Gregory P. Smith <[email protected]>.
257*1fd5a2e1SPrashanth Swaminathan
258*1fd5a2e1SPrashanth Swaminathan2013-11-18  Anthony Green  <[email protected]>
259*1fd5a2e1SPrashanth Swaminathan
260*1fd5a2e1SPrashanth Swaminathan	* README (tested): Mention PowerPC ELFv2.
261*1fd5a2e1SPrashanth Swaminathan
262*1fd5a2e1SPrashanth Swaminathan2013-11-16  Alan Modra  <[email protected]>
263*1fd5a2e1SPrashanth Swaminathan
264*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Move errant #endif to where it belongs.
265*1fd5a2e1SPrashanth Swaminathan	Don't bl .Luint128.
266*1fd5a2e1SPrashanth Swaminathan
267*1fd5a2e1SPrashanth Swaminathan2013-11-16  Alan Modra  <[email protected]>
268*1fd5a2e1SPrashanth Swaminathan
269*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_cif_machdep_core): Use #if _CALL_ELF
270*1fd5a2e1SPrashanth Swaminathan	test to select parameter save sizing for ELFv2 vs. ELFv1.
271*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h (FFI_V2_TYPE_FLOAT_HOMOG,
272*1fd5a2e1SPrashanth Swaminathan	FFI_V2_TYPE_DOUBLE_HOMOG, FFI_V2_TYPE_SMALL_STRUCT): Define.
273*1fd5a2e1SPrashanth Swaminathan	(FFI_TRAMPOLINE_SIZE): Define variant for ELFv2.
274*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (FLAG_ARG_NEEDS_PSAVE): Define.
275*1fd5a2e1SPrashanth Swaminathan	(discover_homogeneous_aggregate): New function.
276*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args64): Adjust start of param save area for ELFv2.
277*1fd5a2e1SPrashanth Swaminathan	Handle homogenous floating point struct parms.
278*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep_core): Adjust space calculation for ELFv2.
279*1fd5a2e1SPrashanth Swaminathan	Handle ELFv2 return values.  Set FLAG_ARG_NEEDS_PSAVE.  Handle
280*1fd5a2e1SPrashanth Swaminathan	homogenous floating point structs.
281*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Increase size of smst_buffer for ELFv2.  Handle ELFv2.
282*1fd5a2e1SPrashanth Swaminathan	(flush_icache): Compile for ELFv2.
283*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Set up ELFv2 trampoline.
284*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_LINUX64): Don't return all structs directly
285*1fd5a2e1SPrashanth Swaminathan	to caller.  Handle homogenous floating point structs.  Handle
286*1fd5a2e1SPrashanth Swaminathan	ELFv2 struct return values.
287*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S (ffi_call_LINUX64): Set up r2 for
288*1fd5a2e1SPrashanth Swaminathan	ELFv2.  Adjust toc save location.  Call function pointer using
289*1fd5a2e1SPrashanth Swaminathan	r12.  Handle FLAG_RETURNS_SMST.  Don't predict branches.
290*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Set up r2
291*1fd5a2e1SPrashanth Swaminathan	for ELFv2.  Define ELFv2 versions of STACKFRAME, PARMSAVE, and
292*1fd5a2e1SPrashanth Swaminathan	RETVAL.  Handle possibly missing parameter save area.  Handle
293*1fd5a2e1SPrashanth Swaminathan	ELFv2 return values.
294*1fd5a2e1SPrashanth Swaminathan	(.note.GNU-stack): Move inside outer #ifdef.
295*1fd5a2e1SPrashanth Swaminathan
296*1fd5a2e1SPrashanth Swaminathan2013-11-16  Alan Modra  <[email protected]>
297*1fd5a2e1SPrashanth Swaminathan
298*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_cif_machdep): Revert 2013-02-08
299*1fd5a2e1SPrashanth Swaminathan	change.  Do not consume an int arg when returning a small struct
300*1fd5a2e1SPrashanth Swaminathan	for FFI_SYSV ABI.
301*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Only use bounce buffer when FLAG_RETURNS_SMST.
302*1fd5a2e1SPrashanth Swaminathan	Properly copy bounce buffer to destination.
303*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Revert 2013-02-08 change.
304*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Remove stray '+'.
305*1fd5a2e1SPrashanth Swaminathan
306*1fd5a2e1SPrashanth Swaminathan2013-11-16  Alan Modra  <[email protected]>
307*1fd5a2e1SPrashanth Swaminathan
308*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args64): Align struct parameters
309*1fd5a2e1SPrashanth Swaminathan	according to __STRUCT_PARM_ALIGN__.
310*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep_core): Likewise.
311*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_LINUX64): Likewise.
312*1fd5a2e1SPrashanth Swaminathan
313*1fd5a2e1SPrashanth Swaminathan2013-11-16  Alan Modra  <[email protected]>
314*1fd5a2e1SPrashanth Swaminathan
315*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S (ffi_call_LINUX64): Tweak restore of r28.
316*1fd5a2e1SPrashanth Swaminathan	(.note.GNU-stack): Move inside outer #ifdef.
317*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S (STACKFRAME, PARMSAVE,
318*1fd5a2e1SPrashanth Swaminathan	RETVAL): Define and use throughout.
319*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_LINUX64): Save fprs before buying stack.
320*1fd5a2e1SPrashanth Swaminathan	(.note.GNU-stack): Move inside outer #ifdef.
321*1fd5a2e1SPrashanth Swaminathan
322*1fd5a2e1SPrashanth Swaminathan2013-11-16  Alan Modra  <[email protected]>
323*1fd5a2e1SPrashanth Swaminathan
324*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h (FFI_TARGET_SPECIFIC_VARIADIC): Define.
325*1fd5a2e1SPrashanth Swaminathan	(FFI_EXTRA_CIF_FIELDS): Define.
326*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args64): Save fprs as per the
327*1fd5a2e1SPrashanth Swaminathan	ABI, not to both fpr and param save area.
328*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep_core): Renamed from ffi_prep_cif_machdep.
329*1fd5a2e1SPrashanth Swaminathan	Keep initial flags.  Formatting.  Remove dead FFI_LINUX_SOFT_FLOAT
330*1fd5a2e1SPrashanth Swaminathan	code.
331*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep, ffi_prep_cif_machdep_var): New functions.
332*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_LINUX64): Pass floating point as per ABI,
333*1fd5a2e1SPrashanth Swaminathan	not to both fpr and parameter save areas.
334*1fd5a2e1SPrashanth Swaminathan
335*1fd5a2e1SPrashanth Swaminathan	* libffi/testsuite/libffi.call/cls_double_va.c (main): Correct
336*1fd5a2e1SPrashanth Swaminathan	function cast and don't call ffi_prep_cif.
337*1fd5a2e1SPrashanth Swaminathan	* libffi/testsuite/libffi.call/cls_longdouble_va.c (main): Likewise.
338*1fd5a2e1SPrashanth Swaminathan
339*1fd5a2e1SPrashanth Swaminathan2013-11-15  Andrew Haley  <[email protected]>
340*1fd5a2e1SPrashanth Swaminathan
341*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi (Closure Example): Fix the sample code.
342*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.info, doc/stamp-vti, doc/version.texi: Rebuilt.
343*1fd5a2e1SPrashanth Swaminathan
344*1fd5a2e1SPrashanth Swaminathan2013-11-15  Andrew Haley  <[email protected]>
345*1fd5a2e1SPrashanth Swaminathan
346*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/va_struct1.c (main): Fix broken test.
347*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint_va.c (cls_ret_T_fn): Likewise
348*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_struct_va1.c (test_fn): Likewise.
349*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/va_1.c (main): Likewise.
350*1fd5a2e1SPrashanth Swaminathan
351*1fd5a2e1SPrashanth Swaminathan2013-11-14  David Schneider  <[email protected]>
352*1fd5a2e1SPrashanth Swaminathan
353*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c: Fix register allocation for mixed float and
354*1fd5a2e1SPrashanth Swaminathan	doubles.
355*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_many_mixed_float_double.c: Testcase
356*1fd5a2e1SPrashanth Swaminathan	for many mixed float and double arguments.
357*1fd5a2e1SPrashanth Swaminathan
358*1fd5a2e1SPrashanth Swaminathan2013-11-13  Alan Modra  <[email protected]>
359*1fd5a2e1SPrashanth Swaminathan
360*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi (Simple Example): Correct example code.
361*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.info, doc/stamp-vti, doc/version.texi: Rebuilt.
362*1fd5a2e1SPrashanth Swaminathan
363*1fd5a2e1SPrashanth Swaminathan2013-11-13  Anthony Green  <[email protected]>
364*1fd5a2e1SPrashanth Swaminathan
365*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h: Respect HAVE_ALLOCA_H for GNU compiler
366*1fd5a2e1SPrashanth Swaminathan	based build. (Thanks to tmr111116 on github)
367*1fd5a2e1SPrashanth Swaminathan
368*1fd5a2e1SPrashanth Swaminathan2013-11-09  Anthony Green  <[email protected]>
369*1fd5a2e1SPrashanth Swaminathan
370*1fd5a2e1SPrashanth Swaminathan	* m4/libtool.m4: Refresh.
371*1fd5a2e1SPrashanth Swaminathan	* configure, Makefile.in: Rebuilt.
372*1fd5a2e1SPrashanth Swaminathan	* README: Add more notes about next release.
373*1fd5a2e1SPrashanth Swaminathan
374*1fd5a2e1SPrashanth Swaminathan2013-11-09  Shigeharu TAKENO  <[email protected]>
375*1fd5a2e1SPrashanth Swaminathan
376*1fd5a2e1SPrashanth Swaminathan	* m4/ax_gcc_archflag.m4 (ax_gcc_arch): Don't recognize
377*1fd5a2e1SPrashanth Swaminathan	UltraSPARC-IIi as ultrasparc3.
378*1fd5a2e1SPrashanth Swaminathan
379*1fd5a2e1SPrashanth Swaminathan2013-11-06  Mark Kettenis  <[email protected]>
380*1fd5a2e1SPrashanth Swaminathan
381*1fd5a2e1SPrashanth Swaminathan	* src/x86/freebsd.S (ffi_call_SYSV): Align the stack pointer to
382*1fd5a2e1SPrashanth Swaminathan        16-bytes.
383*1fd5a2e1SPrashanth Swaminathan
384*1fd5a2e1SPrashanth Swaminathan2013-11-06  Konstantin Belousov <[email protected]>
385*1fd5a2e1SPrashanth Swaminathan
386*1fd5a2e1SPrashanth Swaminathan	* src/x86/freebsd.S (ffi_closure_raw_SYSV): Mark the assembler
387*1fd5a2e1SPrashanth Swaminathan	source as not requiring executable stack.
388*1fd5a2e1SPrashanth Swaminathan
389*1fd5a2e1SPrashanth Swaminathan2013-11-02  Anthony Green  <[email protected]>
390*1fd5a2e1SPrashanth Swaminathan
391*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi (The Basics): Clarify return value buffer size
392*1fd5a2e1SPrashanth Swaminathan	requirements.  Also, NULL result buffer pointers are no longer
393*1fd5a2e1SPrashanth Swaminathan	supported.
394*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.info: Rebuilt.
395*1fd5a2e1SPrashanth Swaminathan
396*1fd5a2e1SPrashanth Swaminathan2013-11-02  Mischa Jonker  <[email protected]>
397*1fd5a2e1SPrashanth Swaminathan
398*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (nodist_libffi_la_SOURCES): Fix build error.
399*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
400*1fd5a2e1SPrashanth Swaminathan
401*1fd5a2e1SPrashanth Swaminathan2013-11-02  David Schneider  <[email protected]>
402*1fd5a2e1SPrashanth Swaminathan
403*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c: more robust argument handling for closures on arm hardfloat
404*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many_mixed.c: New file.
405*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_many_mixed_args.c: More tests.
406*1fd5a2e1SPrashanth Swaminathan
407*1fd5a2e1SPrashanth Swaminathan2013-11-02  Vitaly Budovski
408*1fd5a2e1SPrashanth Swaminathan
409*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): Don't align stack for win32.
410*1fd5a2e1SPrashanth Swaminathan
411*1fd5a2e1SPrashanth Swaminathan2013-10-23  Mark H Weaver  <[email protected]>
412*1fd5a2e1SPrashanth Swaminathan
413*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c: Fix handling of uint32_t arguments on the
414*1fd5a2e1SPrashanth Swaminathan	MIPS N32 ABI.
415*1fd5a2e1SPrashanth Swaminathan
416*1fd5a2e1SPrashanth Swaminathan2013-10-13  Sandra Loosemore  <[email protected]>
417*1fd5a2e1SPrashanth Swaminathan
418*1fd5a2e1SPrashanth Swaminathan	* README: Add Nios II to table of supported platforms.
419*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add nios2 files.
420*1fd5a2e1SPrashanth Swaminathan	(nodist_libffi_la_SOURCES): Likewise.
421*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
422*1fd5a2e1SPrashanth Swaminathan	* configure.ac (nios2*-linux*): New host.
423*1fd5a2e1SPrashanth Swaminathan	(NIOS2): Add AM_CONDITIONAL.
424*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerated.
425*1fd5a2e1SPrashanth Swaminathan	* src/nios2/ffi.c: New.
426*1fd5a2e1SPrashanth Swaminathan	* src/nios2/ffitarget.h: New.
427*1fd5a2e1SPrashanth Swaminathan	* src/nios2/sysv.S: New.
428*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (initialize_aggregate): Handle extra structure
429*1fd5a2e1SPrashanth Swaminathan	alignment via FFI_AGGREGATE_ALIGNMENT.
430*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_core): Conditionalize structure return for NIOS2.
431*1fd5a2e1SPrashanth Swaminathan
432*1fd5a2e1SPrashanth Swaminathan2013-10-10  Sandra Loosemore  <[email protected]>
433*1fd5a2e1SPrashanth Swaminathan
434*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_many_mixed_args.c (cls_ret_double_fn):
435*1fd5a2e1SPrashanth Swaminathan	Fix uninitialized variable.
436*1fd5a2e1SPrashanth Swaminathan
437*1fd5a2e1SPrashanth Swaminathan2013-10-11  Marcus Shawcroft  <[email protected]>
438*1fd5a2e1SPrashanth Swaminathan
439*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many.c (many): Replace * with +.
440*1fd5a2e1SPrashanth Swaminathan
441*1fd5a2e1SPrashanth Swaminathan2013-10-08  Ondřej Bílka  <[email protected]>
442*1fd5a2e1SPrashanth Swaminathan
443*1fd5a2e1SPrashanth Swaminathan	* src/aarch64/ffi.c, src/aarch64/sysv.S, src/arm/ffi.c,
444*1fd5a2e1SPrashanth Swaminathan	src/arm/gentramp.sh, src/bfin/sysv.S, src/closures.c,
445*1fd5a2e1SPrashanth Swaminathan	src/dlmalloc.c, src/ia64/ffi.c, src/microblaze/ffi.c,
446*1fd5a2e1SPrashanth Swaminathan	src/microblaze/sysv.S, src/powerpc/darwin_closure.S,
447*1fd5a2e1SPrashanth Swaminathan	src/powerpc/ffi.c, src/powerpc/ffi_darwin.c, src/sh/ffi.c,
448*1fd5a2e1SPrashanth Swaminathan	src/tile/tile.S, testsuite/libffi.call/nested_struct11.c: Fix
449*1fd5a2e1SPrashanth Swaminathan	spelling errors.
450*1fd5a2e1SPrashanth Swaminathan
451*1fd5a2e1SPrashanth Swaminathan2013-10-08  Anthony Green  <[email protected]>
452*1fd5a2e1SPrashanth Swaminathan
453*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, compile, config.guess, config.sub, depcomp,
454*1fd5a2e1SPrashanth Swaminathan	install-sh, mdate-sh, missing, texinfo.tex: Update from upstream.
455*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Update version to 3.0.14-rc0.
456*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, configure, Makefile.in, include/Makefile.in,
457*1fd5a2e1SPrashanth Swaminathan	man/Makefile.in, testsuite/Makefile.in: Rebuilt.
458*1fd5a2e1SPrashanth Swaminathan	* README: Mention M88K and VAX.
459*1fd5a2e1SPrashanth Swaminathan
460*1fd5a2e1SPrashanth Swaminathan2013-07-15  Miod Vallat  <[email protected]>
461*1fd5a2e1SPrashanth Swaminathan
462*1fd5a2e1SPrashanth Swaminathan	* Makefile.am,
463*1fd5a2e1SPrashanth Swaminathan	configure.ac,
464*1fd5a2e1SPrashanth Swaminathan	src/m88k/ffi.c,
465*1fd5a2e1SPrashanth Swaminathan	src/m88k/ffitarget.h,
466*1fd5a2e1SPrashanth Swaminathan	src/m88k/obsd.S,
467*1fd5a2e1SPrashanth Swaminathan	src/vax/elfbsd.S,
468*1fd5a2e1SPrashanth Swaminathan	src/vax/ffi.c,
469*1fd5a2e1SPrashanth Swaminathan	src/vax/ffitarget.h: Add m88k and vax support.
470*1fd5a2e1SPrashanth Swaminathan
471*1fd5a2e1SPrashanth Swaminathan2013-06-24 Alan Modra  <[email protected]>
472*1fd5a2e1SPrashanth Swaminathan
473*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Move var declaration
474*1fd5a2e1SPrashanth Swaminathan	before statements.
475*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args64): Support little-endian.
476*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV, ffi_closure_helper_LINUX64): Likewise.
477*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Likewise.
478*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Likewise.
479*1fd5a2e1SPrashanth Swaminathan
480*1fd5a2e1SPrashanth Swaminathan2013-06-12  Mischa Jonker  <[email protected]>
481*1fd5a2e1SPrashanth Swaminathan
482*1fd5a2e1SPrashanth Swaminathan	 * configure.ac: Add support for ARC.
483*1fd5a2e1SPrashanth Swaminathan	 * Makefile.am: Likewise.
484*1fd5a2e1SPrashanth Swaminathan	 * README: Add ARC details.
485*1fd5a2e1SPrashanth Swaminathan	 * src/arc/arcompact.S: New.
486*1fd5a2e1SPrashanth Swaminathan	 * src/arc/ffi.c: Likewise.
487*1fd5a2e1SPrashanth Swaminathan	 * src/arc/ffitarget.h: Likewise.
488*1fd5a2e1SPrashanth Swaminathan
489*1fd5a2e1SPrashanth Swaminathan2013-03-28  David Schneider  <[email protected]>
490*1fd5a2e1SPrashanth Swaminathan
491*1fd5a2e1SPrashanth Swaminathan	 * src/arm/ffi.c: Fix support for ARM hard-float calling convention.
492*1fd5a2e1SPrashanth Swaminathan	 * src/arm/sysv.S: call different methods for SYSV and VFP ABIs.
493*1fd5a2e1SPrashanth Swaminathan	 * testsuite/libffi.call/cls_many_mixed_args.c: testcase for a closure with
494*1fd5a2e1SPrashanth Swaminathan	 mixed arguments, many doubles.
495*1fd5a2e1SPrashanth Swaminathan	 * testsuite/libffi.call/many_double.c: testcase for calling a function using
496*1fd5a2e1SPrashanth Swaminathan	 more than 8 doubles.
497*1fd5a2e1SPrashanth Swaminathan	 * testcase/libffi.call/many.c: use absolute value to check result against an
498*1fd5a2e1SPrashanth Swaminathan	 epsilon
499*1fd5a2e1SPrashanth Swaminathan
500*1fd5a2e1SPrashanth Swaminathan2013-03-17  Anthony Green  <[email protected]>
501*1fd5a2e1SPrashanth Swaminathan
502*1fd5a2e1SPrashanth Swaminathan	* README: Update for 3.0.13.
503*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Ditto.
504*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
505*1fd5a2e1SPrashanth Swaminathan	* doc/*: Update version.
506*1fd5a2e1SPrashanth Swaminathan
507*1fd5a2e1SPrashanth Swaminathan2013-03-17  Dave Korn  <[email protected]>
508*1fd5a2e1SPrashanth Swaminathan
509*1fd5a2e1SPrashanth Swaminathan	* src/closures.c (is_emutramp_enabled
510*1fd5a2e1SPrashanth Swaminathan	[!FFI_MMAP_EXEC_EMUTRAMP_PAX]): Move default definition outside
511*1fd5a2e1SPrashanth Swaminathan	enclosing #if scope.
512*1fd5a2e1SPrashanth Swaminathan
513*1fd5a2e1SPrashanth Swaminathan2013-03-17  Anthony Green  <[email protected]>
514*1fd5a2e1SPrashanth Swaminathan
515*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Only modify toolexecdir in certain cases.
516*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
517*1fd5a2e1SPrashanth Swaminathan
518*1fd5a2e1SPrashanth Swaminathan2013-03-16  Gilles Talis  <[email protected]>
519*1fd5a2e1SPrashanth Swaminathan
520*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Don't use
521*1fd5a2e1SPrashanth Swaminathan	fparg_count,etc on __NO_FPRS__ targets.
522*1fd5a2e1SPrashanth Swaminathan
523*1fd5a2e1SPrashanth Swaminathan2013-03-16  Alan Hourihane  <[email protected]>
524*1fd5a2e1SPrashanth Swaminathan
525*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S (epilogue): Don't use extb instruction on
526*1fd5a2e1SPrashanth Swaminathan	m680000 machines.
527*1fd5a2e1SPrashanth Swaminathan
528*1fd5a2e1SPrashanth Swaminathan2013-03-16  Alex Gaynor <[email protected]>
529*1fd5a2e1SPrashanth Swaminathan
530*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): Always align stack.
531*1fd5a2e1SPrashanth Swaminathan
532*1fd5a2e1SPrashanth Swaminathan2013-03-13  Markos Chandras <[email protected]>
533*1fd5a2e1SPrashanth Swaminathan
534*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add support for Imagination Technologies Meta.
535*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Likewise.
536*1fd5a2e1SPrashanth Swaminathan	* README: Add Imagination Technologies Meta details.
537*1fd5a2e1SPrashanth Swaminathan	* src/metag/ffi.c: New.
538*1fd5a2e1SPrashanth Swaminathan	* src/metag/ffitarget.h: Likewise.
539*1fd5a2e1SPrashanth Swaminathan	* src/metag/sysv.S: Likewise.
540*1fd5a2e1SPrashanth Swaminathan
541*1fd5a2e1SPrashanth Swaminathan2013-02-24  Andreas Schwab  <[email protected]>
542*1fd5a2e1SPrashanth Swaminathan
543*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi (Structures): Fix missing category argument of
544*1fd5a2e1SPrashanth Swaminathan	@deftp.
545*1fd5a2e1SPrashanth Swaminathan
546*1fd5a2e1SPrashanth Swaminathan2013-02-11  Anthony Green <[email protected]>
547*1fd5a2e1SPrashanth Swaminathan
548*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Update release number to 3.0.12.
549*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
550*1fd5a2e1SPrashanth Swaminathan	* README: Update release info.
551*1fd5a2e1SPrashanth Swaminathan
552*1fd5a2e1SPrashanth Swaminathan2013-02-10  Anthony Green <[email protected]>
553*1fd5a2e1SPrashanth Swaminathan
554*1fd5a2e1SPrashanth Swaminathan	* README: Add Moxie.
555*1fd5a2e1SPrashanth Swaminathan	* src/moxie/ffi.c: Created.
556*1fd5a2e1SPrashanth Swaminathan	* src/moxie/eabi.S: Created.
557*1fd5a2e1SPrashanth Swaminathan	* src/moxie/ffitarget.h: Created.
558*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (nodist_libffi_la_SOURCES): Add Moxie.
559*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
560*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add Moxie.
561*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
562*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/huge_struct.c: Disable format string
563*1fd5a2e1SPrashanth Swaminathan	warnings for moxie*-*-elf tests.
564*1fd5a2e1SPrashanth Swaminathan
565*1fd5a2e1SPrashanth Swaminathan2013-02-10  Anthony Green <[email protected]>
566*1fd5a2e1SPrashanth Swaminathan
567*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (LTLDFLAGS): Fix reference.
568*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
569*1fd5a2e1SPrashanth Swaminathan
570*1fd5a2e1SPrashanth Swaminathan2013-02-10  Anthony Green <[email protected]>
571*1fd5a2e1SPrashanth Swaminathan
572*1fd5a2e1SPrashanth Swaminathan	* README: Update supported platforms.  Update test results link.
573*1fd5a2e1SPrashanth Swaminathan
574*1fd5a2e1SPrashanth Swaminathan2013-02-09  Anthony Green <[email protected]>
575*1fd5a2e1SPrashanth Swaminathan
576*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/negint.c: Remove forced -O2.
577*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many2.c (foo): Remove GCCism.
578*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Add default PRIuPTR definition.
579*1fd5a2e1SPrashanth Swaminathan
580*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S (ffi_closure_v8): Import ancient ulonglong
581*1fd5a2e1SPrashanth Swaminathan	closure return type fix developed by Martin v. Löwis for cpython
582*1fd5a2e1SPrashanth Swaminathan	fork.
583*1fd5a2e1SPrashanth Swaminathan
584*1fd5a2e1SPrashanth Swaminathan2013-02-08  Andreas Tobler  <[email protected]>
585*1fd5a2e1SPrashanth Swaminathan
586*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_cif_machdep): Fix small struct
587*1fd5a2e1SPrashanth Swaminathan	support.
588*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Ditto.
589*1fd5a2e1SPrashanth Swaminathan
590*1fd5a2e1SPrashanth Swaminathan2013-02-08  Anthony Green <[email protected]>
591*1fd5a2e1SPrashanth Swaminathan
592*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble.c: Remove xfail for
593*1fd5a2e1SPrashanth Swaminathan	arm*-*-*.
594*1fd5a2e1SPrashanth Swaminathan
595*1fd5a2e1SPrashanth Swaminathan2013-02-08  Anthony Green <[email protected]>
596*1fd5a2e1SPrashanth Swaminathan
597*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_prep_closure_loc): Fix cache flushing for GCC.
598*1fd5a2e1SPrashanth Swaminathan
599*1fd5a2e1SPrashanth Swaminathan2013-02-08  Matthias Klose  <[email protected]>
600*1fd5a2e1SPrashanth Swaminathan
601*1fd5a2e1SPrashanth Swaminathan	* man/ffi_prep_cif.3: Clean up for debian linter.
602*1fd5a2e1SPrashanth Swaminathan
603*1fd5a2e1SPrashanth Swaminathan2013-02-08  Peter Bergner  <[email protected]>
604*1fd5a2e1SPrashanth Swaminathan
605*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Account for FP args pushed
606*1fd5a2e1SPrashanth Swaminathan	on the stack.
607*1fd5a2e1SPrashanth Swaminathan
608*1fd5a2e1SPrashanth Swaminathan2013-02-08  Anthony Green <[email protected]>
609*1fd5a2e1SPrashanth Swaminathan
610*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add missing files.
611*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.am (EXTRA_DIST): Ditto.
612*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
613*1fd5a2e1SPrashanth Swaminathan
614*1fd5a2e1SPrashanth Swaminathan2013-02-08  Anthony Green <[email protected]>
615*1fd5a2e1SPrashanth Swaminathan
616*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Move sparc asm config checks to within functions
617*1fd5a2e1SPrashanth Swaminathan	for compatibility with sun tools.
618*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
619*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_prep_closure_loc): Flush cache on v9
620*1fd5a2e1SPrashanth Swaminathan	systems.
621*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S (ffi_flush_icache): Implement a sparc v9 cache
622*1fd5a2e1SPrashanth Swaminathan	flusher.
623*1fd5a2e1SPrashanth Swaminathan
624*1fd5a2e1SPrashanth Swaminathan2013-02-08  Nathan Rossi <[email protected]>
625*1fd5a2e1SPrashanth Swaminathan
626*1fd5a2e1SPrashanth Swaminathan	* src/microblaze/ffi.c (ffi_closure_call_SYSV): Fix handling of
627*1fd5a2e1SPrashanth Swaminathan	small big-endian structures.
628*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Ditto.
629*1fd5a2e1SPrashanth Swaminathan
630*1fd5a2e1SPrashanth Swaminathan2013-02-07  Anthony Green <[email protected]>
631*1fd5a2e1SPrashanth Swaminathan
632*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S (ffi_call_v8): Fix typo from last patch
633*1fd5a2e1SPrashanth Swaminathan	(effectively hiding ffi_call_v8).
634*1fd5a2e1SPrashanth Swaminathan
635*1fd5a2e1SPrashanth Swaminathan2013-02-07  Anthony Green <[email protected]>
636*1fd5a2e1SPrashanth Swaminathan
637*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Update bug reporting address.
638*1fd5a2e1SPrashanth Swaminathan	* configure.in: Rebuild.
639*1fd5a2e1SPrashanth Swaminathan
640*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S (ffi_flush_icache): Out-of-line cache flusher for
641*1fd5a2e1SPrashanth Swaminathan	Sun compiler.
642*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_call): Remove warning.
643*1fd5a2e1SPrashanth Swaminathan	Call ffi_flush_icache for non-GCC builds.
644*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Use ffi_flush_icache.
645*1fd5a2e1SPrashanth Swaminathan
646*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add libtool-ldflags.
647*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
648*1fd5a2e1SPrashanth Swaminathan	* libtool-ldflags: New file.
649*1fd5a2e1SPrashanth Swaminathan
650*1fd5a2e1SPrashanth Swaminathan2013-02-07  Daniel Schepler <[email protected]>
651*1fd5a2e1SPrashanth Swaminathan
652*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Correctly identify x32 systems as 64-bit.
653*1fd5a2e1SPrashanth Swaminathan	* m4/libtool.m4: Remove libtool expr error.
654*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, configure: Rebuilt.
655*1fd5a2e1SPrashanth Swaminathan
656*1fd5a2e1SPrashanth Swaminathan2013-02-07  Anthony Green <[email protected]>
657*1fd5a2e1SPrashanth Swaminathan
658*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Fix GCC usage test.
659*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
660*1fd5a2e1SPrashanth Swaminathan	* README: Mention LLVM/GCC x86_64 issue.
661*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Rebuilt.
662*1fd5a2e1SPrashanth Swaminathan
663*1fd5a2e1SPrashanth Swaminathan2013-02-07  Anthony Green <[email protected]>
664*1fd5a2e1SPrashanth Swaminathan
665*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double_va.c (main): Replace // style
666*1fd5a2e1SPrashanth Swaminathan	comments with /* */ for xlc compiler.
667*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_large.c (main): Ditto.
668*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_large2.c (main): Ditto.
669*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct1.c (main): Ditto.
670*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/huge_struct.c (main): Ditto.
671*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float_va.c (main): Ditto.
672*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_struct_va1.c (main): Ditto.
673*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_pointer_stack.c (main): Ditto.
674*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_pointer.c (main): Ditto.
675*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble_va.c (main): Ditto.
676*1fd5a2e1SPrashanth Swaminathan
677*1fd5a2e1SPrashanth Swaminathan2013-02-06  Anthony Green <[email protected]>
678*1fd5a2e1SPrashanth Swaminathan
679*1fd5a2e1SPrashanth Swaminathan	* man/ffi_prep_cif.3: Clean up for debian lintian checker.
680*1fd5a2e1SPrashanth Swaminathan
681*1fd5a2e1SPrashanth Swaminathan2013-02-06  Anthony Green <[email protected]>
682*1fd5a2e1SPrashanth Swaminathan
683*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (pkgconfigdir): Add missing pkgconfig install bits.
684*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuild.
685*1fd5a2e1SPrashanth Swaminathan
686*1fd5a2e1SPrashanth Swaminathan2013-02-02  Mark H Weaver <[email protected]>
687*1fd5a2e1SPrashanth Swaminathan
688*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (ffi_call): Sign-extend integer arguments passed
689*1fd5a2e1SPrashanth Swaminathan	via general purpose registers.
690*1fd5a2e1SPrashanth Swaminathan
691*1fd5a2e1SPrashanth Swaminathan2013-01-21  Nathan Rossi <[email protected]>
692*1fd5a2e1SPrashanth Swaminathan
693*1fd5a2e1SPrashanth Swaminathan	* README: Add MicroBlaze details.
694*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add MicroBlaze support.
695*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Likewise.
696*1fd5a2e1SPrashanth Swaminathan	* src/microblaze/ffi.c: New.
697*1fd5a2e1SPrashanth Swaminathan	* src/microblaze/ffitarget.h: Likewise.
698*1fd5a2e1SPrashanth Swaminathan	* src/microblaze/sysv.S: Likewise.
699*1fd5a2e1SPrashanth Swaminathan
700*1fd5a2e1SPrashanth Swaminathan2013-01-21  Nathan Rossi <[email protected]>
701*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_uc.c: Fixed issue.
702*1fd5a2e1SPrashanth Swaminathan
703*1fd5a2e1SPrashanth Swaminathan2013-01-21  Chris Zankel   <[email protected]>
704*1fd5a2e1SPrashanth Swaminathan
705*1fd5a2e1SPrashanth Swaminathan	* README: Add Xtensa support.
706*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Likewise.
707*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Likewise.
708*1fd5a2e1SPrashanth Swaminathan	* Makefile.in Regenerate.
709*1fd5a2e1SPrashanth Swaminathan	* configure: Likewise.
710*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c: Handle Xtensa.
711*1fd5a2e1SPrashanth Swaminathan	* src/xtensa: New directory.
712*1fd5a2e1SPrashanth Swaminathan	* src/xtensa/ffi.c: New file.
713*1fd5a2e1SPrashanth Swaminathan	* src/xtensa/ffitarget.h: Ditto.
714*1fd5a2e1SPrashanth Swaminathan	* src/xtensa/sysv.S: Ditto.
715*1fd5a2e1SPrashanth Swaminathan
716*1fd5a2e1SPrashanth Swaminathan2013-01-11  Anthony Green  <[email protected]>
717*1fd5a2e1SPrashanth Swaminathan
718*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Replace // style
719*1fd5a2e1SPrashanth Swaminathan	comments with /* */ for xlc compiler.
720*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix.S (ffi_call_AIX): Ditto.
721*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h (allocate_mmap): Delete
722*1fd5a2e1SPrashanth Swaminathan	deprecated inline function.
723*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/ffitestcxx.h: Ditto.
724*1fd5a2e1SPrashanth Swaminathan	* README: Add update for AIX support.
725*1fd5a2e1SPrashanth Swaminathan
726*1fd5a2e1SPrashanth Swaminathan2013-01-11  Anthony Green  <[email protected]>
727*1fd5a2e1SPrashanth Swaminathan
728*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Robustify pc relative reloc check.
729*1fd5a2e1SPrashanth Swaminathan	* m4/ax_cc_maxopt.m4: Don't -malign-double.  This is an ABI
730*1fd5a2e1SPrashanth Swaminathan	changing option for 32-bit x86.
731*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, configure: Rebuilt.
732*1fd5a2e1SPrashanth Swaminathan	* README: Update supported target list.
733*1fd5a2e1SPrashanth Swaminathan
734*1fd5a2e1SPrashanth Swaminathan2013-01-10  Anthony Green  <[email protected]>
735*1fd5a2e1SPrashanth Swaminathan
736*1fd5a2e1SPrashanth Swaminathan	* README (tested): Add Compiler column to table.
737*1fd5a2e1SPrashanth Swaminathan
738*1fd5a2e1SPrashanth Swaminathan2013-01-10  Anthony Green  <[email protected]>
739*1fd5a2e1SPrashanth Swaminathan
740*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (struct register_args): Make sse array and array
741*1fd5a2e1SPrashanth Swaminathan	of unions for sunpro compiler compatibility.
742*1fd5a2e1SPrashanth Swaminathan
743*1fd5a2e1SPrashanth Swaminathan2013-01-10  Anthony Green  <[email protected]>
744*1fd5a2e1SPrashanth Swaminathan
745*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Test target platform size_t size.  Handle both 32
746*1fd5a2e1SPrashanth Swaminathan	and 64-bit builds for x86_64-* and i?86-* targets (allowing for
747*1fd5a2e1SPrashanth Swaminathan	CFLAG option to change default settings).
748*1fd5a2e1SPrashanth Swaminathan	* configure, aclocal.m4: Rebuilt.
749*1fd5a2e1SPrashanth Swaminathan
750*1fd5a2e1SPrashanth Swaminathan2013-01-10  Anthony Green  <[email protected]>
751*1fd5a2e1SPrashanth Swaminathan
752*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/special.exp: Only run exception
753*1fd5a2e1SPrashanth Swaminathan	handling tests when using GNU compiler.
754*1fd5a2e1SPrashanth Swaminathan
755*1fd5a2e1SPrashanth Swaminathan	* m4/ax_compiler_vendor.m4: New file.
756*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Test for compiler vendor and don't use
757*1fd5a2e1SPrashanth Swaminathan	AX_CFLAGS_WARN_ALL with the sun compiler.
758*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, configure: Rebuilt.
759*1fd5a2e1SPrashanth Swaminathan
760*1fd5a2e1SPrashanth Swaminathan2013-01-10  Anthony Green  <[email protected]>
761*1fd5a2e1SPrashanth Swaminathan
762*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h: Don't use GCCisms to define types when
763*1fd5a2e1SPrashanth Swaminathan	building with the SUNPRO compiler.
764*1fd5a2e1SPrashanth Swaminathan
765*1fd5a2e1SPrashanth Swaminathan2013-01-10  Anthony Green  <[email protected]>
766*1fd5a2e1SPrashanth Swaminathan
767*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Put local.exp in the right place.
768*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
769*1fd5a2e1SPrashanth Swaminathan
770*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Update comment about regparm function attributes.
771*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (ffi_closure_SYSV): The SUNPRO compiler requires
772*1fd5a2e1SPrashanth Swaminathan	that all function arguments be passed on the stack (no regparm
773*1fd5a2e1SPrashanth Swaminathan	support).
774*1fd5a2e1SPrashanth Swaminathan
775*1fd5a2e1SPrashanth Swaminathan2013-01-08  Anthony Green  <[email protected]>
776*1fd5a2e1SPrashanth Swaminathan
777*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Generate local.exp.  This sets CC_FOR_TARGET
778*1fd5a2e1SPrashanth Swaminathan	when we are using the vendor compiler.
779*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.am (EXTRA_DEJAGNU_SITE_CONFIG): Point to
780*1fd5a2e1SPrashanth Swaminathan	../local.exp.
781*1fd5a2e1SPrashanth Swaminathan	* configure, testsuite/Makefile.in: Rebuilt.
782*1fd5a2e1SPrashanth Swaminathan
783*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/call.exp: Run tests with different
784*1fd5a2e1SPrashanth Swaminathan	options, depending on whether or not we are using gcc or the
785*1fd5a2e1SPrashanth Swaminathan	vendor compiler.
786*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi.exp (libffi-init): Set using_gcc based on
787*1fd5a2e1SPrashanth Swaminathan	whether or not we are building/testing with gcc.
788*1fd5a2e1SPrashanth Swaminathan
789*1fd5a2e1SPrashanth Swaminathan2013-01-08  Anthony Green  <[email protected]>
790*1fd5a2e1SPrashanth Swaminathan
791*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Switch x86 solaris target to X86 by default.
792*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
793*1fd5a2e1SPrashanth Swaminathan
794*1fd5a2e1SPrashanth Swaminathan2013-01-08  Anthony Green  <[email protected]>
795*1fd5a2e1SPrashanth Swaminathan
796*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Fix test for read-only eh_frame.
797*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
798*1fd5a2e1SPrashanth Swaminathan
799*1fd5a2e1SPrashanth Swaminathan2013-01-08  Anthony Green  <[email protected]>
800*1fd5a2e1SPrashanth Swaminathan
801*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S, src/x86/unix64.S: Only emit DWARF unwind info
802*1fd5a2e1SPrashanth Swaminathan	when building with the GNU toolchain.
803*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h (CHECK): Fix for Solaris vendor
804*1fd5a2e1SPrashanth Swaminathan	compiler.
805*1fd5a2e1SPrashanth Swaminathan
806*1fd5a2e1SPrashanth Swaminathan2013-01-07  Thorsten Glaser <[email protected]>
807*1fd5a2e1SPrashanth Swaminathan
808*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uchar_va.c,
809*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_ushort_va.c,
810*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/va_1.c: Testsuite fixes.
811*1fd5a2e1SPrashanth Swaminathan
812*1fd5a2e1SPrashanth Swaminathan2013-01-07  Thorsten Glaser <[email protected]>
813*1fd5a2e1SPrashanth Swaminathan
814*1fd5a2e1SPrashanth Swaminathan	* src/m68k/ffi.c (CIF_FLAGS_SINT8, CIF_FLAGS_SINT16): Define.
815*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Fix 8-bit and 16-bit signed calls.
816*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S (ffi_call_SYSV, ffi_closure_SYSV): Ditto.
817*1fd5a2e1SPrashanth Swaminathan
818*1fd5a2e1SPrashanth Swaminathan2013-01-04  Anthony Green  <[email protected]>
819*1fd5a2e1SPrashanth Swaminathan
820*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AM_CFLAGS): Don't automatically add -fexceptions
821*1fd5a2e1SPrashanth Swaminathan	and -Wall.  This is set in the configure script after testing for
822*1fd5a2e1SPrashanth Swaminathan	GCC.
823*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
824*1fd5a2e1SPrashanth Swaminathan
825*1fd5a2e1SPrashanth Swaminathan2013-01-02  rofl0r <https://github.com/rofl0r>
826*1fd5a2e1SPrashanth Swaminathan
827*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_cif_machdep): Fix build error on ppc
828*1fd5a2e1SPrashanth Swaminathan	when long double == double.
829*1fd5a2e1SPrashanth Swaminathan
830*1fd5a2e1SPrashanth Swaminathan2013-01-02  Reini Urban  <[email protected]>
831*1fd5a2e1SPrashanth Swaminathan
832*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (libffi_la_LDFLAGS): Add -no-undefined to LDFLAGS
833*1fd5a2e1SPrashanth Swaminathan	(required for shared libs on cygwin/mingw).
834*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
835*1fd5a2e1SPrashanth Swaminathan
836*1fd5a2e1SPrashanth Swaminathan2012-10-31  Alan Modra  <[email protected]>
837*1fd5a2e1SPrashanth Swaminathan
838*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S: Add new ABI support.
839*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S: Likewise.
840*1fd5a2e1SPrashanth Swaminathan
841*1fd5a2e1SPrashanth Swaminathan2012-10-30  Magnus Granberg  <[email protected]>
842*1fd5a2e1SPrashanth Swaminathan	    Pavel Labushev  <[email protected]>
843*1fd5a2e1SPrashanth Swaminathan
844*1fd5a2e1SPrashanth Swaminathan	* configure.ac: New options pax_emutramp
845*1fd5a2e1SPrashanth Swaminathan	* configure, fficonfig.h.in: Regenerated
846*1fd5a2e1SPrashanth Swaminathan	* src/closures.c: New function emutramp_enabled_check() and
847*1fd5a2e1SPrashanth Swaminathan	checks.
848*1fd5a2e1SPrashanth Swaminathan
849*1fd5a2e1SPrashanth Swaminathan2012-10-30  Frederick Cheung  <[email protected]>
850*1fd5a2e1SPrashanth Swaminathan
851*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Enable FFI_MAP_EXEC_WRIT for Darwin 12 (mountain
852*1fd5a2e1SPrashanth Swaminathan	lion) and future version.
853*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuild.
854*1fd5a2e1SPrashanth Swaminathan
855*1fd5a2e1SPrashanth Swaminathan2012-10-30  James Greenhalgh  <james.greenhalgh at arm.com>
856*1fd5a2e1SPrashanth Swaminathan            Marcus Shawcroft  <marcus.shawcroft at arm.com>
857*1fd5a2e1SPrashanth Swaminathan
858*1fd5a2e1SPrashanth Swaminathan        * README: Add details of aarch64 port.
859*1fd5a2e1SPrashanth Swaminathan        * src/aarch64/ffi.c: New.
860*1fd5a2e1SPrashanth Swaminathan        * src/aarch64/ffitarget.h: Likewise.
861*1fd5a2e1SPrashanth Swaminathan        * src/aarch64/sysv.S: Likewise.
862*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Support aarch64.
863*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Support aarch64.
864*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, configure: Rebuilt.
865*1fd5a2e1SPrashanth Swaminathan
866*1fd5a2e1SPrashanth Swaminathan2012-10-30  James Greenhalgh  <james.greenhalgh at arm.com>
867*1fd5a2e1SPrashanth Swaminathan            Marcus Shawcroft  <marcus.shawcroft at arm.com>
868*1fd5a2e1SPrashanth Swaminathan
869*1fd5a2e1SPrashanth Swaminathan        * testsuite/lib/libffi.exp: Add support for aarch64.
870*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/cls_struct_va1.c: New.
871*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/cls_uchar_va.c: Likewise.
872*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/cls_uint_va.c: Likewise.
873*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/cls_ulong_va.c: Likewise.
874*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/cls_ushort_va.c: Likewise.
875*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/nested_struct11.c: Likewise.
876*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/uninitialized.c: Likewise.
877*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/va_1.c: Likewise.
878*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/va_struct1.c: Likewise.
879*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/va_struct2.c: Likewise.
880*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/va_struct3.c: Likewise.
881*1fd5a2e1SPrashanth Swaminathan
882*1fd5a2e1SPrashanth Swaminathan2012-10-12  Walter Lee  <[email protected]>
883*1fd5a2e1SPrashanth Swaminathan
884*1fd5a2e1SPrashanth Swaminathan        * Makefile.am: Add TILE-Gx/TILEPro support.
885*1fd5a2e1SPrashanth Swaminathan        * configure.ac: Likewise.
886*1fd5a2e1SPrashanth Swaminathan        * Makefile.in: Regenerate.
887*1fd5a2e1SPrashanth Swaminathan        * configure: Likewise.
888*1fd5a2e1SPrashanth Swaminathan        * src/prep_cif.c (ffi_prep_cif_core): Handle TILE-Gx/TILEPro.
889*1fd5a2e1SPrashanth Swaminathan        * src/tile: New directory.
890*1fd5a2e1SPrashanth Swaminathan        * src/tile/ffi.c: New file.
891*1fd5a2e1SPrashanth Swaminathan        * src/tile/ffitarget.h: Ditto.
892*1fd5a2e1SPrashanth Swaminathan        * src/tile/tile.S: Ditto.
893*1fd5a2e1SPrashanth Swaminathan
894*1fd5a2e1SPrashanth Swaminathan2012-10-12  Matthias Klose  <[email protected]>
895*1fd5a2e1SPrashanth Swaminathan
896*1fd5a2e1SPrashanth Swaminathan	* generate-osx-source-and-headers.py: Normalize whitespace.
897*1fd5a2e1SPrashanth Swaminathan
898*1fd5a2e1SPrashanth Swaminathan2012-09-14  David Edelsohn  <[email protected]>
899*1fd5a2e1SPrashanth Swaminathan
900*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerated.
901*1fd5a2e1SPrashanth Swaminathan
902*1fd5a2e1SPrashanth Swaminathan2012-08-26  Andrew Pinski  <[email protected]>
903*1fd5a2e1SPrashanth Swaminathan
904*1fd5a2e1SPrashanth Swaminathan	PR libffi/53014
905*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (ffi_prep_closure_loc): Allow n32 with soft-float and n64 with
906*1fd5a2e1SPrashanth Swaminathan	soft-float.
907*1fd5a2e1SPrashanth Swaminathan
908*1fd5a2e1SPrashanth Swaminathan2012-08-08  Uros Bizjak  <[email protected]>
909*1fd5a2e1SPrashanth Swaminathan
910*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
911*1fd5a2e1SPrashanth Swaminathan	just return FFI_BAD_ABI when things are wrong.
912*1fd5a2e1SPrashanth Swaminathan
913*1fd5a2e1SPrashanth Swaminathan2012-07-18  H.J. Lu  <[email protected]>
914*1fd5a2e1SPrashanth Swaminathan
915*1fd5a2e1SPrashanth Swaminathan	PR libffi/53982
916*1fd5a2e1SPrashanth Swaminathan	PR libffi/53973
917*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h: Check __ILP32__ instead of __LP64__ for x32.
918*1fd5a2e1SPrashanth Swaminathan	(FFI_SIZEOF_JAVA_RAW): Defined to 4 for x32.
919*1fd5a2e1SPrashanth Swaminathan
920*1fd5a2e1SPrashanth Swaminathan2012-05-16  H.J. Lu  <[email protected]>
921*1fd5a2e1SPrashanth Swaminathan
922*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerated.
923*1fd5a2e1SPrashanth Swaminathan
924*1fd5a2e1SPrashanth Swaminathan2012-05-05  Nicolas Lelong
925*1fd5a2e1SPrashanth Swaminathan
926*1fd5a2e1SPrashanth Swaminathan	* libffi.xcodeproj/project.pbxproj: Fixes.
927*1fd5a2e1SPrashanth Swaminathan	* README: Update for iOS builds.
928*1fd5a2e1SPrashanth Swaminathan
929*1fd5a2e1SPrashanth Swaminathan2012-04-23  Alexandre Keunecke I. de Mendonca <[email protected]>
930*1fd5a2e1SPrashanth Swaminathan
931*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add Blackfin/sysv support
932*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add Blackfin/sysv support
933*1fd5a2e1SPrashanth Swaminathan	* src/bfin/ffi.c:  Add Blackfin/sysv support
934*1fd5a2e1SPrashanth Swaminathan	* src/bfin/ffitarget.h: Add Blackfin/sysv support
935*1fd5a2e1SPrashanth Swaminathan
936*1fd5a2e1SPrashanth Swaminathan2012-04-11  Anthony Green  <[email protected]>
937*1fd5a2e1SPrashanth Swaminathan
938*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add new script.
939*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
940*1fd5a2e1SPrashanth Swaminathan
941*1fd5a2e1SPrashanth Swaminathan2012-04-11  Zachary Waldowski  <[email protected]>
942*1fd5a2e1SPrashanth Swaminathan
943*1fd5a2e1SPrashanth Swaminathan	* generate-ios-source-and-headers.py,
944*1fd5a2e1SPrashanth Swaminathan	libffi.xcodeproj/project.pbxproj: Support a Mac static library via
945*1fd5a2e1SPrashanth Swaminathan	Xcode. Set iOS compatibility to 4.0.  Move iOS trampoline
946*1fd5a2e1SPrashanth Swaminathan	generation into an Xcode "run script" phase.  Include both as
947*1fd5a2e1SPrashanth Swaminathan	Xcode build scripts. Don't always regenerate config files.
948*1fd5a2e1SPrashanth Swaminathan
949*1fd5a2e1SPrashanth Swaminathan2012-04-10  Anthony Green  <[email protected]>
950*1fd5a2e1SPrashanth Swaminathan
951*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Add missing semicolon.
952*1fd5a2e1SPrashanth Swaminathan
953*1fd5a2e1SPrashanth Swaminathan2012-04-06  Anthony Green  <[email protected]>
954*1fd5a2e1SPrashanth Swaminathan
955*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add new iOS/xcode files.
956*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
957*1fd5a2e1SPrashanth Swaminathan
958*1fd5a2e1SPrashanth Swaminathan2012-04-06  Mike Lewis  <[email protected]>
959*1fd5a2e1SPrashanth Swaminathan
960*1fd5a2e1SPrashanth Swaminathan	* generate-ios-source-and-headers.py: New file.
961*1fd5a2e1SPrashanth Swaminathan	* libffi.xcodeproj/project.pbxproj: New file.
962*1fd5a2e1SPrashanth Swaminathan	* README: Update instructions on building iOS binary.
963*1fd5a2e1SPrashanth Swaminathan	* build-ios.sh: Delete.
964*1fd5a2e1SPrashanth Swaminathan
965*1fd5a2e1SPrashanth Swaminathan2012-04-06  Anthony Green  <[email protected]>
966*1fd5a2e1SPrashanth Swaminathan
967*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (UINT128): Define differently for Intel and GNU
968*1fd5a2e1SPrashanth Swaminathan	compilers, then use it.
969*1fd5a2e1SPrashanth Swaminathan
970*1fd5a2e1SPrashanth Swaminathan2012-04-06  H.J. Lu  <[email protected]>
971*1fd5a2e1SPrashanth Swaminathan
972*1fd5a2e1SPrashanth Swaminathan	* m4/libtool.m4 (_LT_ENABLE_LOCK): Support x32.
973*1fd5a2e1SPrashanth Swaminathan
974*1fd5a2e1SPrashanth Swaminathan2012-04-06  Anthony Green  <[email protected]>
975*1fd5a2e1SPrashanth Swaminathan
976*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.am (EXTRA_DIST): Add missing test cases.
977*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Rebuilt.
978*1fd5a2e1SPrashanth Swaminathan
979*1fd5a2e1SPrashanth Swaminathan2012-04-05  Zachary Waldowski  <[email protected]>
980*1fd5a2e1SPrashanth Swaminathan
981*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add missing trampoline table fields.
982*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Fix ENTRY definition, and wrap symbol references
983*1fd5a2e1SPrashanth Swaminathan	in CNAME.
984*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Wrap Windows specific code in ifdefs.
985*1fd5a2e1SPrashanth Swaminathan
986*1fd5a2e1SPrashanth Swaminathan2012-04-02  Peter Bergner  <[email protected]>
987*1fd5a2e1SPrashanth Swaminathan
988*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Declare double_tmp.
989*1fd5a2e1SPrashanth Swaminathan	Silence casting pointer to integer of different size warning.
990*1fd5a2e1SPrashanth Swaminathan	Delete goto to previously deleted label.
991*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Silence possibly undefined warning.
992*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Declare variable type.
993*1fd5a2e1SPrashanth Swaminathan
994*1fd5a2e1SPrashanth Swaminathan2012-04-02  Peter Rosin  <[email protected]>
995*1fd5a2e1SPrashanth Swaminathan
996*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (ffi_call_win32): Sign/zero extend the return
997*1fd5a2e1SPrashanth Swaminathan	value in the Intel version as is already done for the AT&T version.
998*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_SYSV): Likewise.
999*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_raw_SYSV): Likewise.
1000*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_STDCALL): Likewise.
1001*1fd5a2e1SPrashanth Swaminathan
1002*1fd5a2e1SPrashanth Swaminathan2012-03-29  Peter Rosin  <[email protected]>
1003*1fd5a2e1SPrashanth Swaminathan
1004*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (ffi_closure_raw_THISCALL): Unify the frame
1005*1fd5a2e1SPrashanth Swaminathan	generation, fix the ENDP label and remove the surplus third arg
1006*1fd5a2e1SPrashanth Swaminathan	from the 'lea' insn.
1007*1fd5a2e1SPrashanth Swaminathan
1008*1fd5a2e1SPrashanth Swaminathan2012-03-29  Peter Rosin  <[email protected]>
1009*1fd5a2e1SPrashanth Swaminathan
1010*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (ffi_closure_raw_SYSV): Make the 'stubraw' label
1011*1fd5a2e1SPrashanth Swaminathan	visible outside the PROC, so that ffi_closure_raw_THISCALL can see
1012*1fd5a2e1SPrashanth Swaminathan	it.  Also instruct the assembler to add a frame to the function.
1013*1fd5a2e1SPrashanth Swaminathan
1014*1fd5a2e1SPrashanth Swaminathan2012-03-23  Peter Rosin  <[email protected]>
1015*1fd5a2e1SPrashanth Swaminathan
1016*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AM_CPPFLAGS): Add -DFFI_BUILDING.
1017*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
1018*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in [MSVC]: Add __declspec(dllimport) decorations
1019*1fd5a2e1SPrashanth Swaminathan	to all data exports, when compiling libffi clients using MSVC.
1020*1fd5a2e1SPrashanth Swaminathan
1021*1fd5a2e1SPrashanth Swaminathan2012-03-29  Peter Rosin  <[email protected]>
1022*1fd5a2e1SPrashanth Swaminathan
1023*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h (ffi_abi): Add new ABI FFI_MS_CDECL and
1024*1fd5a2e1SPrashanth Swaminathan	make it the default for MSVC.
1025*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_MS_STRUCT): New structure return convention.
1026*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): Tweak the structure
1027*1fd5a2e1SPrashanth Swaminathan	return convention for FFI_MS_CDECL to be FFI_TYPE_MS_STRUCT
1028*1fd5a2e1SPrashanth Swaminathan	instead of an ordinary FFI_TYPE_STRUCT.
1029*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Treat FFI_TYPE_MS_STRUCT as FFI_TYPE_STRUCT.
1030*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Likewise.
1031*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_incoming_args_SYSV): Likewise.
1032*1fd5a2e1SPrashanth Swaminathan	(ffi_raw_call): Likewise.
1033*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Treat FFI_MS_CDECL as FFI_SYSV.
1034*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (ffi_closure_SYSV): For FFI_TYPE_MS_STRUCT,
1035*1fd5a2e1SPrashanth Swaminathan	return a pointer to the result structure in eax and don't pop
1036*1fd5a2e1SPrashanth Swaminathan	that pointer from the stack, the caller takes care of it.
1037*1fd5a2e1SPrashanth Swaminathan	(ffi_call_win32): Treat FFI_TYPE_MS_STRUCT as FFI_TYPE_STRUCT.
1038*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_raw_SYSV): Likewise.
1039*1fd5a2e1SPrashanth Swaminathan
1040*1fd5a2e1SPrashanth Swaminathan2012-03-22  Peter Rosin  <[email protected]>
1041*1fd5a2e1SPrashanth Swaminathan
1042*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_stdcall.c [MSVC]: Add inline
1043*1fd5a2e1SPrashanth Swaminathan	assembly version with Intel syntax.
1044*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_thiscall.c [MSVC]: Likewise.
1045*1fd5a2e1SPrashanth Swaminathan
1046*1fd5a2e1SPrashanth Swaminathan2012-03-23  Peter Rosin  <[email protected]>
1047*1fd5a2e1SPrashanth Swaminathan
1048*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Provide abstration of
1049*1fd5a2e1SPrashanth Swaminathan	__attribute__((fastcall)) in the form of a __FASTCALL__
1050*1fd5a2e1SPrashanth Swaminathan	define.  Define it to __fastcall for MSVC.
1051*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/fastthis1_win32.c: Use the above.
1052*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/fastthis2_win32.c: Likewise.
1053*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/fastthis3_win32.c: Likewise.
1054*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/strlen2_win32.c: Likewise.
1055*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct1_win32.c: Likewise.
1056*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct2_win32.c: Likewise.
1057*1fd5a2e1SPrashanth Swaminathan
1058*1fd5a2e1SPrashanth Swaminathan2012-03-22  Peter Rosin  <[email protected]>
1059*1fd5a2e1SPrashanth Swaminathan
1060*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S [MSVC] (ffi_closure_THISCALL): Remove the manual
1061*1fd5a2e1SPrashanth Swaminathan	frame on function entry, MASM adds one automatically.
1062*1fd5a2e1SPrashanth Swaminathan
1063*1fd5a2e1SPrashanth Swaminathan2012-03-22  Peter Rosin  <[email protected]>
1064*1fd5a2e1SPrashanth Swaminathan
1065*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h [MSVC]: Add kludge for missing
1066*1fd5a2e1SPrashanth Swaminathan	bits in the MSVC headers.
1067*1fd5a2e1SPrashanth Swaminathan
1068*1fd5a2e1SPrashanth Swaminathan2012-03-22  Peter Rosin  <[email protected]>
1069*1fd5a2e1SPrashanth Swaminathan
1070*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_12byte.c: Adjust to the C89 style
1071*1fd5a2e1SPrashanth Swaminathan	with no declarations after statements.
1072*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_16byte.c: Likewise.
1073*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_18byte.c: Likewise.
1074*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_19byte.c: Likewise.
1075*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_1_1byte.c: Likewise.
1076*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte.c: Likewise.
1077*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte1.c: Likewise.
1078*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_24byte.c: Likewise.
1079*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_2byte.c: Likewise.
1080*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3_1byte.c: Likewise.
1081*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte1.c: Likewise.
1082*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte2.c: Likewise.
1083*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4_1byte.c: Likewise.
1084*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4byte.c: Likewise.
1085*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5_1_byte.c: Likewise.
1086*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5byte.c: Likewise.
1087*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_64byte.c: Likewise.
1088*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6_1_byte.c: Likewise.
1089*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6byte.c: Likewise.
1090*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7_1_byte.c: Likewise.
1091*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7byte.c: Likewise.
1092*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_8byte.c: Likewise.
1093*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte1.c: Likewise.
1094*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte2.c: Likewise.
1095*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_double.c: Likewise.
1096*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_float.c: Likewise.
1097*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble.c: Likewise.
1098*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble_split.c: Likewise.
1099*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble_split2.c: Likewise.
1100*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_pointer.c: Likewise.
1101*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint16.c: Likewise.
1102*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint32.c: Likewise.
1103*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint64.c: Likewise.
1104*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint16.c: Likewise.
1105*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint32.c: Likewise.
1106*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint64.c: Likewise.
1107*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_dbls_struct.c: Likewise.
1108*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_pointer_stack.c: Likewise.
1109*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_typedef.c: Likewise.
1110*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/huge_struct.c: Likewise.
1111*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct.c: Likewise.
1112*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct1.c: Likewise.
1113*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct10.c: Likewise.
1114*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct2.c: Likewise.
1115*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct3.c: Likewise.
1116*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct4.c: Likewise.
1117*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct5.c: Likewise.
1118*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct6.c: Likewise.
1119*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct7.c: Likewise.
1120*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct8.c: Likewise.
1121*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct9.c: Likewise.
1122*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_large.c: Likewise.
1123*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_large2.c: Likewise.
1124*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_medium.c: Likewise.
1125*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_medium2.c: Likewise.
1126*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct1.c: Likewise.
1127*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct1_win32.c: Likewise.
1128*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct2.c: Likewise.
1129*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct2_win32.c: Likewise.
1130*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct3.c: Likewise.
1131*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct4.c: Likewise.
1132*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct5.c: Likewise.
1133*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct6.c: Likewise.
1134*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct7.c: Likewise.
1135*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct8.c: Likewise.
1136*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct9.c: Likewise.
1137*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/testclosure.c: Likewise.
1138*1fd5a2e1SPrashanth Swaminathan
1139*1fd5a2e1SPrashanth Swaminathan2012-03-21  Peter Rosin	 <[email protected]>
1140*1fd5a2e1SPrashanth Swaminathan
1141*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float_va.c (float_va_fn): Use %f when
1142*1fd5a2e1SPrashanth Swaminathan	printing doubles (%lf is for long doubles).
1143*1fd5a2e1SPrashanth Swaminathan	(main): Likewise.
1144*1fd5a2e1SPrashanth Swaminathan
1145*1fd5a2e1SPrashanth Swaminathan2012-03-21  Peter Rosin  <[email protected]>
1146*1fd5a2e1SPrashanth Swaminathan
1147*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/target-libpath.exp [*-*-cygwin*, *-*-mingw*]
1148*1fd5a2e1SPrashanth Swaminathan	(set_ld_library_path_env_vars): Add the library search dir to PATH
1149*1fd5a2e1SPrashanth Swaminathan	(and save PATH for later).
1150*1fd5a2e1SPrashanth Swaminathan	(restore_ld_library_path_env_vars): Restore PATH.
1151*1fd5a2e1SPrashanth Swaminathan
1152*1fd5a2e1SPrashanth Swaminathan2012-03-21  Peter Rosin  <[email protected]>
1153*1fd5a2e1SPrashanth Swaminathan
1154*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/target-libpath.exp [*-*-cygwin*, *-*-mingw*]
1155*1fd5a2e1SPrashanth Swaminathan	(set_ld_library_path_env_vars): Add the library search dir to PATH
1156*1fd5a2e1SPrashanth Swaminathan	(and save PATH for later).
1157*1fd5a2e1SPrashanth Swaminathan	(restore_ld_library_path_env_vars): Restore PATH.
1158*1fd5a2e1SPrashanth Swaminathan
1159*1fd5a2e1SPrashanth Swaminathan2012-03-20  Peter Rosin  <[email protected]>
1160*1fd5a2e1SPrashanth Swaminathan
1161*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/strlen2_win32.c (main): Remove bug.
1162*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S [MSVC] (ffi_closure_SYSV): Make the 'stub' label
1163*1fd5a2e1SPrashanth Swaminathan	visible outside the PROC, so that ffi_closure_THISCALL can see it.
1164*1fd5a2e1SPrashanth Swaminathan
1165*1fd5a2e1SPrashanth Swaminathan2012-03-20  Peter Rosin  <[email protected]>
1166*1fd5a2e1SPrashanth Swaminathan
1167*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/strlen2_win32.c (main): Remove bug.
1168*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S [MSVC] (ffi_closure_SYSV): Make the 'stub' label
1169*1fd5a2e1SPrashanth Swaminathan	visible outside the PROC, so that ffi_closure_THISCALL can see it.
1170*1fd5a2e1SPrashanth Swaminathan
1171*1fd5a2e1SPrashanth Swaminathan2012-03-19  Alan Hourihane  <[email protected]>
1172*1fd5a2e1SPrashanth Swaminathan
1173*1fd5a2e1SPrashanth Swaminathan	* src/m68k/ffi.c: Add MINT support.
1174*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S: Ditto.
1175*1fd5a2e1SPrashanth Swaminathan
1176*1fd5a2e1SPrashanth Swaminathan2012-03-06  Chung-Lin Tang  <[email protected]>
1177*1fd5a2e1SPrashanth Swaminathan
1178*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_call): Add __ARM_EABI__ guard around call to
1179*1fd5a2e1SPrashanth Swaminathan	ffi_call_VFP().
1180*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Add __ARM_EABI__ guard around use of
1181*1fd5a2e1SPrashanth Swaminathan	ffi_closure_VFP.
1182*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Add __ARM_EABI__ guard around VFP code.
1183*1fd5a2e1SPrashanth Swaminathan
1184*1fd5a2e1SPrashanth Swaminathan2012-03-19  chennam  <[email protected]>
1185*1fd5a2e1SPrashanth Swaminathan
1186*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_closure_loc): Fix AIX closure
1187*1fd5a2e1SPrashanth Swaminathan	support.
1188*1fd5a2e1SPrashanth Swaminathan
1189*1fd5a2e1SPrashanth Swaminathan2012-03-13  Kaz Kojima  <[email protected]>
1190*1fd5a2e1SPrashanth Swaminathan
1191*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
1192*1fd5a2e1SPrashanth Swaminathan	just return FFI_BAD_ABI when things are wrong.
1193*1fd5a2e1SPrashanth Swaminathan	* src/sh64/ffi.c (ffi_prep_closure_loc): Ditto.
1194*1fd5a2e1SPrashanth Swaminathan
1195*1fd5a2e1SPrashanth Swaminathan2012-03-09  David Edelsohn  <[email protected]>
1196*1fd5a2e1SPrashanth Swaminathan
1197*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S (ffi_closure_ASM): Adjust for Darwin64
1198*1fd5a2e1SPrashanth Swaminathan	change to return value of ffi_closure_helper_DARWIN and load type
1199*1fd5a2e1SPrashanth Swaminathan	from return type.
1200*1fd5a2e1SPrashanth Swaminathan
1201*1fd5a2e1SPrashanth Swaminathan2012-03-03  H.J. Lu  <[email protected]>
1202*1fd5a2e1SPrashanth Swaminathan
1203*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (ffi_call): Cast the return value to unsigned
1204*1fd5a2e1SPrashanth Swaminathan	long.
1205*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Cast to 64bit address in trampoline.
1206*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_unix64_inner): Cast return pointer to unsigned long
1207*1fd5a2e1SPrashanth Swaminathan	first.
1208*1fd5a2e1SPrashanth Swaminathan
1209*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h (FFI_SIZEOF_ARG): Defined to 8 for x32.
1210*1fd5a2e1SPrashanth Swaminathan	(ffi_arg): Set to unsigned long long for x32.
1211*1fd5a2e1SPrashanth Swaminathan	(ffi_sarg): Set to long long for x32.
1212*1fd5a2e1SPrashanth Swaminathan
1213*1fd5a2e1SPrashanth Swaminathan2012-03-03  H.J. Lu  <[email protected]>
1214*1fd5a2e1SPrashanth Swaminathan
1215*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif_core): Properly check bad ABI.
1216*1fd5a2e1SPrashanth Swaminathan
1217*1fd5a2e1SPrashanth Swaminathan2012-03-03  Andoni Morales Alastruey  <[email protected]>
1218*1fd5a2e1SPrashanth Swaminathan
1219*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add -no-undefined for both 32- and 64-bit x86
1220*1fd5a2e1SPrashanth Swaminathan	windows-like hosts.
1221*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1222*1fd5a2e1SPrashanth Swaminathan
1223*1fd5a2e1SPrashanth Swaminathan2012-02-27  Mikael Pettersson  <[email protected]>
1224*1fd5a2e1SPrashanth Swaminathan
1225*1fd5a2e1SPrashanth Swaminathan	PR libffi/52223
1226*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (FLAGS_TO_PASS): Define.
1227*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
1228*1fd5a2e1SPrashanth Swaminathan
1229*1fd5a2e1SPrashanth Swaminathan2012-02-23  Anthony Green  <[email protected]>
1230*1fd5a2e1SPrashanth Swaminathan
1231*1fd5a2e1SPrashanth Swaminathan	* src/*/ffitarget.h: Ensure that users never include ffitarget.h
1232*1fd5a2e1SPrashanth Swaminathan	directly.
1233*1fd5a2e1SPrashanth Swaminathan
1234*1fd5a2e1SPrashanth Swaminathan2012-02-23  Kai Tietz  <[email protected]>
1235*1fd5a2e1SPrashanth Swaminathan
1236*1fd5a2e1SPrashanth Swaminathan	PR libffi/52221
1237*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_closure_raw_THISCALL): New
1238*1fd5a2e1SPrashanth Swaminathan	prototype.
1239*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_raw_closure_loc): Use ffi_closure_raw_THISCALL for
1240*1fd5a2e1SPrashanth Swaminathan	thiscall-convention.
1241*1fd5a2e1SPrashanth Swaminathan	(ffi_raw_call): Use ffi_prep_args_raw.
1242*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (ffi_closure_raw_THISCALL): Add
1243*1fd5a2e1SPrashanth Swaminathan	implementation for stub.
1244*1fd5a2e1SPrashanth Swaminathan
1245*1fd5a2e1SPrashanth Swaminathan2012-02-10  Kai Tietz  <[email protected]>
1246*1fd5a2e1SPrashanth Swaminathan
1247*1fd5a2e1SPrashanth Swaminathan	* configure.ac (AM_LTLDFLAGS): Add -no-undefine for x64
1248*1fd5a2e1SPrashanth Swaminathan	windows target.
1249*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerated.
1250*1fd5a2e1SPrashanth Swaminathan
1251*1fd5a2e1SPrashanth Swaminathan2012-02-08  Kai Tietz  <[email protected]>
1252*1fd5a2e1SPrashanth Swaminathan
1253*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif): Allow for X86_WIN32
1254*1fd5a2e1SPrashanth Swaminathan	also FFI_THISCALL.
1255*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_closure_THISCALL): Add prototype.
1256*1fd5a2e1SPrashanth Swaminathan	(FFI_INIT_TRAMPOLINE_THISCALL): New trampoline code.
1257*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Add FFI_THISCALL support.
1258*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h (FFI_TRAMPOLINE_SIZE): Adjust size.
1259*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (ffi_closure_THISCALL): New closure code
1260*1fd5a2e1SPrashanth Swaminathan	for thiscall-calling convention.
1261*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_thiscall.c: New test.
1262*1fd5a2e1SPrashanth Swaminathan
1263*1fd5a2e1SPrashanth Swaminathan2012-01-28  Kai Tietz  <[email protected]>
1264*1fd5a2e1SPrashanth Swaminathan
1265*1fd5a2e1SPrashanth Swaminathan	* src/libffi/src/x86/ffi.c (ffi_call_win32): Add new
1266*1fd5a2e1SPrashanth Swaminathan	argument to prototype for specify calling-convention.
1267*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Add support for stdcall/thiscall convention.
1268*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Likewise.
1269*1fd5a2e1SPrashanth Swaminathan	(ffi_raw_call): Likewise.
1270*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h (ffi_abi): Add FFI_THISCALL and
1271*1fd5a2e1SPrashanth Swaminathan	FFI_FASTCALL.
1272*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (_ffi_call_win32): Add support for
1273*1fd5a2e1SPrashanth Swaminathan	fastcall/thiscall calling-convention calls.
1274*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/fastthis1_win32.c: New test.
1275*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/fastthis2_win32.c: New test.
1276*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/fastthis3_win32.c: New test.
1277*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/strlen2_win32.c: New test.
1278*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many2_win32.c: New test.
1279*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct1_win32.c: New test.
1280*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct2_win32.c: New test.
1281*1fd5a2e1SPrashanth Swaminathan
1282*1fd5a2e1SPrashanth Swaminathan2012-01-23  Uros Bizjak  <[email protected]>
1283*1fd5a2e1SPrashanth Swaminathan
1284*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c (ffi_prep_closure_loc): Check for bad ABI.
1285*1fd5a2e1SPrashanth Swaminathan
1286*1fd5a2e1SPrashanth Swaminathan2012-01-23  Anthony Green  <[email protected]>
1287*1fd5a2e1SPrashanth Swaminathan	    Chris Young  <[email protected]>
1288*1fd5a2e1SPrashanth Swaminathan
1289*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add Amiga support.
1290*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1291*1fd5a2e1SPrashanth Swaminathan
1292*1fd5a2e1SPrashanth Swaminathan2012-01-23  Dmitry Nadezhin  <[email protected]>
1293*1fd5a2e1SPrashanth Swaminathan
1294*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h (LIKELY, UNLIKELY): Fix definitions.
1295*1fd5a2e1SPrashanth Swaminathan
1296*1fd5a2e1SPrashanth Swaminathan2012-01-23  Andreas Schwab  <[email protected]>
1297*1fd5a2e1SPrashanth Swaminathan
1298*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S (ffi_call_SYSV): Properly test for plain
1299*1fd5a2e1SPrashanth Swaminathan	mc68000.  Test for __HAVE_68881__ in addition to __MC68881__.
1300*1fd5a2e1SPrashanth Swaminathan
1301*1fd5a2e1SPrashanth Swaminathan2012-01-19  Jakub Jelinek  <[email protected]>
1302*1fd5a2e1SPrashanth Swaminathan
1303*1fd5a2e1SPrashanth Swaminathan	PR rtl-optimization/48496
1304*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c (ffi_call): Fix up aliasing violations.
1305*1fd5a2e1SPrashanth Swaminathan
1306*1fd5a2e1SPrashanth Swaminathan2012-01-09  Rainer Orth  <[email protected]>
1307*1fd5a2e1SPrashanth Swaminathan
1308*1fd5a2e1SPrashanth Swaminathan	* configure.ac (i?86-*-*): Set TARGET to X86_64.
1309*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1310*1fd5a2e1SPrashanth Swaminathan
1311*1fd5a2e1SPrashanth Swaminathan2011-12-07  Andrew Pinski  <[email protected]>
1312*1fd5a2e1SPrashanth Swaminathan
1313*1fd5a2e1SPrashanth Swaminathan	PR libffi/50051
1314*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S: Add ".set mips4".
1315*1fd5a2e1SPrashanth Swaminathan
1316*1fd5a2e1SPrashanth Swaminathan2011-11-21  Andreas Tobler  <[email protected]>
1317*1fd5a2e1SPrashanth Swaminathan
1318*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1319*1fd5a2e1SPrashanth Swaminathan
1320*1fd5a2e1SPrashanth Swaminathan2011-11-12  David Gilbert <[email protected]>
1321*1fd5a2e1SPrashanth Swaminathan
1322*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi, include/ffi.h.in, include/ffi_common.h,
1323*1fd5a2e1SPrashanth Swaminathan	man/Makefile.am, man/ffi.3, man/ffi_prep_cif.3,
1324*1fd5a2e1SPrashanth Swaminathan	man/ffi_prep_cif_var.3, src/arm/ffi.c, src/arm/ffitarget.h,
1325*1fd5a2e1SPrashanth Swaminathan	src/cris/ffi.c, src/prep_cif.c,
1326*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_double_va.c,
1327*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble_va.c,
1328*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/float_va.c: Many changes to support variadic
1329*1fd5a2e1SPrashanth Swaminathan	function calls.
1330*1fd5a2e1SPrashanth Swaminathan
1331*1fd5a2e1SPrashanth Swaminathan2011-11-12  Kyle Moffett <[email protected]>
1332*1fd5a2e1SPrashanth Swaminathan
1333*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c, src/powerpc/ffitarget.h,
1334*1fd5a2e1SPrashanth Swaminathan	src/powerpc/ppc_closure.S, src/powerpc/sysv.S: Many changes for
1335*1fd5a2e1SPrashanth Swaminathan	softfloat powerpc variants.
1336*1fd5a2e1SPrashanth Swaminathan
1337*1fd5a2e1SPrashanth Swaminathan2011-11-12  Petr Salinger <[email protected]>
1338*1fd5a2e1SPrashanth Swaminathan
1339*1fd5a2e1SPrashanth Swaminathan	* configure.ac (FFI_EXEC_TRAMPOLINE_TABLE): Fix kfreebsd support.
1340*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1341*1fd5a2e1SPrashanth Swaminathan
1342*1fd5a2e1SPrashanth Swaminathan2011-11-12  Timothy Wall  <[email protected]>
1343*1fd5a2e1SPrashanth Swaminathan
1344*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_prep_args, ffi_prep_incoming_args_SYSV): Max
1345*1fd5a2e1SPrashanth Swaminathan	alignment of 4 for wince on ARM.
1346*1fd5a2e1SPrashanth Swaminathan
1347*1fd5a2e1SPrashanth Swaminathan2011-11-12  Kyle Moffett <[email protected]>
1348*1fd5a2e1SPrashanth Swaminathan	    Anthony Green <[email protected]>
1349*1fd5a2e1SPrashanth Swaminathan
1350*1fd5a2e1SPrashanth Swaminathan	* src/ppc/sysv.S, src/ppc/ffi.c: Remove use of ppc string
1351*1fd5a2e1SPrashanth Swaminathan	instructions (not available on some cores, like the PPC440).
1352*1fd5a2e1SPrashanth Swaminathan
1353*1fd5a2e1SPrashanth Swaminathan2011-11-12  Kimura Wataru  <[email protected]>
1354*1fd5a2e1SPrashanth Swaminathan
1355*1fd5a2e1SPrashanth Swaminathan	* m4/ax_enable_builddir: Change from string comparison to numeric
1356*1fd5a2e1SPrashanth Swaminathan	comparison for wc output.
1357*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Enable FFI_MMAP_EXEC_WRIT for darwin11 aka Mac OS
1358*1fd5a2e1SPrashanth Swaminathan	X 10.7.
1359*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1360*1fd5a2e1SPrashanth Swaminathan
1361*1fd5a2e1SPrashanth Swaminathan2011-11-12  Anthony Green  <[email protected]>
1362*1fd5a2e1SPrashanth Swaminathan
1363*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AM_CCASFLAGS): Add -g option to build assembly
1364*1fd5a2e1SPrashanth Swaminathan	files with debug info.
1365*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
1366*1fd5a2e1SPrashanth Swaminathan
1367*1fd5a2e1SPrashanth Swaminathan2011-11-12  Jasper Lievisse Adriaanse <[email protected]>
1368*1fd5a2e1SPrashanth Swaminathan
1369*1fd5a2e1SPrashanth Swaminathan	* README: Update list of supported OpenBSD systems.
1370*1fd5a2e1SPrashanth Swaminathan
1371*1fd5a2e1SPrashanth Swaminathan2011-11-12  Anthony Green  <[email protected]>
1372*1fd5a2e1SPrashanth Swaminathan
1373*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Update.
1374*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (nodist_libffi_la_SOURCES): Add src/debug.c if
1375*1fd5a2e1SPrashanth Swaminathan	FFI_DEBUG.
1376*1fd5a2e1SPrashanth Swaminathan	(libffi_la_SOURCES): Remove src/debug.c
1377*1fd5a2e1SPrashanth Swaminathan	(EXTRA_DIST): Add src/debug.c
1378*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
1379*1fd5a2e1SPrashanth Swaminathan	* README: Update for 3.0.11.
1380*1fd5a2e1SPrashanth Swaminathan
1381*1fd5a2e1SPrashanth Swaminathan2011-11-10  Richard Henderson  <[email protected]>
1382*1fd5a2e1SPrashanth Swaminathan
1383*1fd5a2e1SPrashanth Swaminathan	* configure.ac (GCC_AS_CFI_PSEUDO_OP): Use it instead of inline check.
1384*1fd5a2e1SPrashanth Swaminathan	* configure, aclocal.m4: Rebuild.
1385*1fd5a2e1SPrashanth Swaminathan
1386*1fd5a2e1SPrashanth Swaminathan2011-09-04  Iain Sandoe  <[email protected]>
1387*1fd5a2e1SPrashanth Swaminathan
1388*1fd5a2e1SPrashanth Swaminathan	PR libffi/49594
1389*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S (stubs): Make the stub binding
1390*1fd5a2e1SPrashanth Swaminathan	helper reference track the architecture pointer size.
1391*1fd5a2e1SPrashanth Swaminathan
1392*1fd5a2e1SPrashanth Swaminathan2011-08-25  Andrew Haley  <[email protected]>
1393*1fd5a2e1SPrashanth Swaminathan
1394*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Remove hard-coded assembly
1395*1fd5a2e1SPrashanth Swaminathan	instructions.
1396*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S (ffi_arm_trampoline): Put them here instead.
1397*1fd5a2e1SPrashanth Swaminathan
1398*1fd5a2e1SPrashanth Swaminathan2011-07-11  Andrew Haley  <[email protected]>
1399*1fd5a2e1SPrashanth Swaminathan
1400*1fd5a2e1SPrashanth Swaminathan        * src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Clear icache.
1401*1fd5a2e1SPrashanth Swaminathan
1402*1fd5a2e1SPrashanth Swaminathan2011-06-29  Rainer Orth  <[email protected]>
1403*1fd5a2e1SPrashanth Swaminathan
1404*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double_va.c: Move PR number to comment.
1405*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble_va.c: Likewise.
1406*1fd5a2e1SPrashanth Swaminathan
1407*1fd5a2e1SPrashanth Swaminathan2011-06-29  Rainer Orth  <[email protected]>
1408*1fd5a2e1SPrashanth Swaminathan
1409*1fd5a2e1SPrashanth Swaminathan	PR libffi/46660
1410*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double_va.c: xfail dg-output on
1411*1fd5a2e1SPrashanth Swaminathan	mips-sgi-irix6*.
1412*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble_va.c: Likewise.
1413*1fd5a2e1SPrashanth Swaminathan
1414*1fd5a2e1SPrashanth Swaminathan2011-06-14  Rainer Orth  <[email protected]>
1415*1fd5a2e1SPrashanth Swaminathan
1416*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/huge_struct.c (test_large_fn): Use PRIu8,
1417*1fd5a2e1SPrashanth Swaminathan	PRId8 instead of %hhu, %hhd.
1418*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h [__alpha__ && __osf__] (PRId8,
1419*1fd5a2e1SPrashanth Swaminathan	PRIu8): Define.
1420*1fd5a2e1SPrashanth Swaminathan	[__sgi__] (PRId8, PRIu8): Define.
1421*1fd5a2e1SPrashanth Swaminathan
1422*1fd5a2e1SPrashanth Swaminathan2011-04-29  Rainer Orth  <[email protected]>
1423*1fd5a2e1SPrashanth Swaminathan
1424*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S (UA_SI, FDE_ENCODING, FDE_ENCODE, FDE_ARANGE):
1425*1fd5a2e1SPrashanth Swaminathan	Define.
1426*1fd5a2e1SPrashanth Swaminathan	Use them to handle ELF vs. ECOFF differences.
1427*1fd5a2e1SPrashanth Swaminathan	[__osf__] (_GLOBAL__F_ffi_call_osf): Define.
1428*1fd5a2e1SPrashanth Swaminathan
1429*1fd5a2e1SPrashanth Swaminathan2011-03-30  Timothy Wall  <[email protected]>
1430*1fd5a2e1SPrashanth Swaminathan
1431*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: Fix unknown FDE encoding.
1432*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: ditto.
1433*1fd5a2e1SPrashanth Swaminathan
1434*1fd5a2e1SPrashanth Swaminathan2011-02-25  Anthony Green  <[email protected]>
1435*1fd5a2e1SPrashanth Swaminathan
1436*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_closure_loc): Allow for more
1437*1fd5a2e1SPrashanth Swaminathan	32-bit ABIs.
1438*1fd5a2e1SPrashanth Swaminathan
1439*1fd5a2e1SPrashanth Swaminathan2011-02-15  Anthony Green  <[email protected]>
1440*1fd5a2e1SPrashanth Swaminathan
1441*1fd5a2e1SPrashanth Swaminathan	* m4/ax_cc_maxopt.m4: Don't -malign-double or use -ffast-math.
1442*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1443*1fd5a2e1SPrashanth Swaminathan
1444*1fd5a2e1SPrashanth Swaminathan2011-02-13  Ralf Wildenhues  <[email protected]>
1445*1fd5a2e1SPrashanth Swaminathan
1446*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1447*1fd5a2e1SPrashanth Swaminathan
1448*1fd5a2e1SPrashanth Swaminathan2011-02-13  Anthony Green  <[email protected]>
1449*1fd5a2e1SPrashanth Swaminathan
1450*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h (UNLIKELY, LIKELY): Define.
1451*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (UNLIKELY, LIKELY): Remove definition.
1452*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (UNLIKELY, LIKELY): Remove definition.
1453*1fd5a2e1SPrashanth Swaminathan
1454*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (initialize_aggregate): Convert assertion into
1455*1fd5a2e1SPrashanth Swaminathan	FFI_BAD_TYPEDEF return.  Initialize arg size and alignment to 0.
1456*1fd5a2e1SPrashanth Swaminathan
1457*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
1458*1fd5a2e1SPrashanth Swaminathan	just return FFI_BAD_ABI when things are wrong.
1459*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_prep_closure_loc): Ditto.
1460*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_closure_loc): Ditto.
1461*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (ffi_prep_closure_loc): Ditto.
1462*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c (ffi_prep_closure_loc): Ditto.
1463*1fd5a2e1SPrashanth Swaminathan	* src/avr32/ffi.c (ffi_prep_closure_loc): Ditto.
1464*1fd5a2e1SPrashanth Swaminathan
1465*1fd5a2e1SPrashanth Swaminathan2011-02-11  Anthony Green  <[email protected]>
1466*1fd5a2e1SPrashanth Swaminathan
1467*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_prep_closure_loc): Don't ASSERT ABI test,
1468*1fd5a2e1SPrashanth Swaminathan	just return FFI_BAD_ABI when things are wrong.
1469*1fd5a2e1SPrashanth Swaminathan
1470*1fd5a2e1SPrashanth Swaminathan2012-02-11  Eric Botcazou  <[email protected]>
1471*1fd5a2e1SPrashanth Swaminathan
1472*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S (STACKFRAME): Bump to 176.
1473*1fd5a2e1SPrashanth Swaminathan
1474*1fd5a2e1SPrashanth Swaminathan2011-02-09  Stuart Shelton  <[email protected]>
1475*1fd5a2e1SPrashanth Swaminathan
1476*1fd5a2e1SPrashanth Swaminathan	http://bugs.gentoo.org/show_bug.cgi?id=286911
1477*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h: Clean up error messages.
1478*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api.c (ffi_java_translate_args): Cast raw arg to
1479*1fd5a2e1SPrashanth Swaminathan	ffi_raw*.
1480*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add pragma for SGI compiler.
1481*1fd5a2e1SPrashanth Swaminathan
1482*1fd5a2e1SPrashanth Swaminathan2011-02-09  Anthony Green  <[email protected]>
1483*1fd5a2e1SPrashanth Swaminathan
1484*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add powerpc64-*-darwin* support.
1485*1fd5a2e1SPrashanth Swaminathan
1486*1fd5a2e1SPrashanth Swaminathan2011-02-09  Anthony Green <[email protected]>
1487*1fd5a2e1SPrashanth Swaminathan
1488*1fd5a2e1SPrashanth Swaminathan	* README: Mention Interix.
1489*1fd5a2e1SPrashanth Swaminathan
1490*1fd5a2e1SPrashanth Swaminathan2011-02-09  Jonathan Callen  <[email protected]>
1491*1fd5a2e1SPrashanth Swaminathan
1492*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add Interix to win32/cygwin/mingw case.
1493*1fd5a2e1SPrashanth Swaminathan	* configure: Ditto.
1494*1fd5a2e1SPrashanth Swaminathan	* src/closures.c: Treat Interix like Cygwin, instead of as a
1495*1fd5a2e1SPrashanth Swaminathan	generic win32.
1496*1fd5a2e1SPrashanth Swaminathan
1497*1fd5a2e1SPrashanth Swaminathan2011-02-09  Anthony Green <[email protected]>
1498*1fd5a2e1SPrashanth Swaminathan
1499*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_typedef.c: Remove xfail.
1500*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_abi.c: Remove xfail.
1501*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (UNLIKELY, LIKELY): Define.
1502*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Check for bad ABI.
1503*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (UNLIKELY, LIKELY): Define.
1504*1fd5a2e1SPrashanth Swaminathan	(initialize_aggregate): Check for bad types.
1505*1fd5a2e1SPrashanth Swaminathan
1506*1fd5a2e1SPrashanth Swaminathan2011-02-09  Landon Fuller <[email protected]>
1507*1fd5a2e1SPrashanth Swaminathan
1508*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add build-ios.sh, src/arm/gentramp.sh,
1509*1fd5a2e1SPrashanth Swaminathan	src/arm/trampoline.S.
1510*1fd5a2e1SPrashanth Swaminathan	(nodist_libffi_la_SOURCES): Add src/arc/trampoline.S.
1511*1fd5a2e1SPrashanth Swaminathan	* configure.ac (FFI_EXEC_TRAMPOLINE_TABLE): Define.
1512*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_trampoline_table)
1513*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_trampoline_table_page, ffi_trampoline_table_entry)
1514*1fd5a2e1SPrashanth Swaminathan	(FFI_TRAMPOLINE_CODELOC_CONFIG, FFI_TRAMPOLINE_CONFIG_PAGE_OFFSET)
1515*1fd5a2e1SPrashanth Swaminathan	(FFI_TRAMPOLINE_COUNT, ffi_trampoline_lock, ffi_trampoline_tables)
1516*1fd5a2e1SPrashanth Swaminathan	(ffi_trampoline_table_alloc, ffi_closure_alloc, ffi_closure_free):
1517*1fd5a2e1SPrashanth Swaminathan	Define for FFI_EXEC_TRAMPOLINE_TABLE case (iOS).
1518*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Handl FFI_EXEC_TRAMPOLINE_TABLE case
1519*1fd5a2e1SPrashanth Swaminathan	separately.
1520*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Handle Apple iOS host.
1521*1fd5a2e1SPrashanth Swaminathan	* src/closures.c: Handle FFI_EXEC_TRAMPOLINE_TABLE case.
1522*1fd5a2e1SPrashanth Swaminathan	* build-ios.sh: New file.
1523*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in, configure, Makefile.in: Rebuilt.
1524*1fd5a2e1SPrashanth Swaminathan	* README: Mention ARM iOS.
1525*1fd5a2e1SPrashanth Swaminathan
1526*1fd5a2e1SPrashanth Swaminathan2011-02-08  Oren Held  <[email protected]>
1527*1fd5a2e1SPrashanth Swaminathan
1528*1fd5a2e1SPrashanth Swaminathan	* src/dlmalloc.c (_STRUCT_MALLINFO): Define in order to avoid
1529*1fd5a2e1SPrashanth Swaminathan	redefinition of mallinfo on HP-UX.
1530*1fd5a2e1SPrashanth Swaminathan
1531*1fd5a2e1SPrashanth Swaminathan2011-02-08  Ginn Chen  <[email protected]>
1532*1fd5a2e1SPrashanth Swaminathan
1533*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_call): Make compatible with Solaris Studio
1534*1fd5a2e1SPrashanth Swaminathan	aggregate return ABI.  Flush cache.
1535*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Flush cache.
1536*1fd5a2e1SPrashanth Swaminathan
1537*1fd5a2e1SPrashanth Swaminathan2011-02-11  Anthony Green  <[email protected]>
1538*1fd5a2e1SPrashanth Swaminathan
1539*1fd5a2e1SPrashanth Swaminathan	From Tom Honermann <[email protected]>:
1540*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix.S (ffi_call_AIX): Support for xlc toolchain on
1541*1fd5a2e1SPrashanth Swaminathan	AIX.  Declare .ffi_prep_args.  Insert nops after branch
1542*1fd5a2e1SPrashanth Swaminathan	instructions so that the AIX linker can insert TOC reload
1543*1fd5a2e1SPrashanth Swaminathan	instructions.
1544*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S: Declare .ffi_closure_helper_DARWIN.
1545*1fd5a2e1SPrashanth Swaminathan
1546*1fd5a2e1SPrashanth Swaminathan2011-02-08  Ed  <[email protected]>
1547*1fd5a2e1SPrashanth Swaminathan
1548*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/asm.h: Fix grammar nit in comment.
1549*1fd5a2e1SPrashanth Swaminathan
1550*1fd5a2e1SPrashanth Swaminathan2011-02-08  Uli Link  <[email protected]>
1551*1fd5a2e1SPrashanth Swaminathan
1552*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (FFI_64_BIT_MAX): Define and use.
1553*1fd5a2e1SPrashanth Swaminathan
1554*1fd5a2e1SPrashanth Swaminathan2011-02-09  Rainer Orth  <[email protected]>
1555*1fd5a2e1SPrashanth Swaminathan
1556*1fd5a2e1SPrashanth Swaminathan	PR libffi/46661
1557*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_pointer.c (main): Cast void * to
1558*1fd5a2e1SPrashanth Swaminathan	uintptr_t first.
1559*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_pointer_stack.c (main): Likewise.
1560*1fd5a2e1SPrashanth Swaminathan
1561*1fd5a2e1SPrashanth Swaminathan2011-02-08  Rafael Avila de Espindola  <[email protected]>
1562*1fd5a2e1SPrashanth Swaminathan
1563*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Fix x86 test for pc related relocs.
1564*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1565*1fd5a2e1SPrashanth Swaminathan
1566*1fd5a2e1SPrashanth Swaminathan2011-02-07  Joel Sherrill <[email protected]>
1567*1fd5a2e1SPrashanth Swaminathan
1568*1fd5a2e1SPrashanth Swaminathan	* libffi/src/m68k/ffi.c: Add RTEMS support for cache flushing.
1569*1fd5a2e1SPrashanth Swaminathan	Handle case when CPU variant does not have long double support.
1570*1fd5a2e1SPrashanth Swaminathan	* libffi/src/m68k/sysv.S: Add support for mc68000, Coldfire,
1571*1fd5a2e1SPrashanth Swaminathan	and cores with soft floating point.
1572*1fd5a2e1SPrashanth Swaminathan
1573*1fd5a2e1SPrashanth Swaminathan2011-02-07  Joel Sherrill <[email protected]>
1574*1fd5a2e1SPrashanth Swaminathan
1575*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add mips*-*-rtems* support.
1576*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1577*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h: Ensure needed constants are available
1578*1fd5a2e1SPrashanth Swaminathan	for targets which do not have sgidefs.h.
1579*1fd5a2e1SPrashanth Swaminathan
1580*1fd5a2e1SPrashanth Swaminathan2011-01-26  Dave Korn  <[email protected]>
1581*1fd5a2e1SPrashanth Swaminathan
1582*1fd5a2e1SPrashanth Swaminathan	PR target/40125
1583*1fd5a2e1SPrashanth Swaminathan	* configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs.
1584*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1585*1fd5a2e1SPrashanth Swaminathan
1586*1fd5a2e1SPrashanth Swaminathan2010-12-18  Iain Sandoe  <[email protected]>
1587*1fd5a2e1SPrashanth Swaminathan
1588*1fd5a2e1SPrashanth Swaminathan	PR libffi/29152
1589*1fd5a2e1SPrashanth Swaminathan	PR libffi/42378
1590*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: Provide Darwin64 implementation,
1591*1fd5a2e1SPrashanth Swaminathan	update comments.
1592*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h (POWERPC_DARWIN64): New,
1593*1fd5a2e1SPrashanth Swaminathan	(FFI_TRAMPOLINE_SIZE): Update for Darwin64.
1594*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: Provide Darwin64 implementation,
1595*1fd5a2e1SPrashanth Swaminathan	update comments.
1596*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c: Likewise.
1597*1fd5a2e1SPrashanth Swaminathan
1598*1fd5a2e1SPrashanth Swaminathan2010-12-06  Rainer Orth  <[email protected]>
1599*1fd5a2e1SPrashanth Swaminathan
1600*1fd5a2e1SPrashanth Swaminathan	* configure.ac (libffi_cv_as_ascii_pseudo_op): Use double
1601*1fd5a2e1SPrashanth Swaminathan	backslashes.
1602*1fd5a2e1SPrashanth Swaminathan	(libffi_cv_as_string_pseudo_op): Likewise.
1603*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1604*1fd5a2e1SPrashanth Swaminathan
1605*1fd5a2e1SPrashanth Swaminathan2010-12-03  Chung-Lin Tang  <[email protected]>
1606*1fd5a2e1SPrashanth Swaminathan
1607*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
1608*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_VFP): Same.
1609*1fd5a2e1SPrashanth Swaminathan	(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
1610*1fd5a2e1SPrashanth Swaminathan	directive.
1611*1fd5a2e1SPrashanth Swaminathan
1612*1fd5a2e1SPrashanth Swaminathan2010-12-01  Rainer Orth  <[email protected]>
1613*1fd5a2e1SPrashanth Swaminathan
1614*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define.
1615*1fd5a2e1SPrashanth Swaminathan	(PRIuPTR): Define.
1616*1fd5a2e1SPrashanth Swaminathan
1617*1fd5a2e1SPrashanth Swaminathan2010-11-29  Richard Henderson  <[email protected]>
1618*1fd5a2e1SPrashanth Swaminathan	    Rainer Orth  <[email protected]>
1619*1fd5a2e1SPrashanth Swaminathan
1620*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
1621*1fd5a2e1SPrashanth Swaminathan	(.eh_frame): Use FDE_ENCODING.
1622*1fd5a2e1SPrashanth Swaminathan	(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.
1623*1fd5a2e1SPrashanth Swaminathan
1624*1fd5a2e1SPrashanth Swaminathan2010-11-22  Jacek Caban <[email protected]>
1625*1fd5a2e1SPrashanth Swaminathan
1626*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Check for symbol underscores on mingw-w64.
1627*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1628*1fd5a2e1SPrashanth Swaminathan	* src/x86/win64.S: Correctly access extern symbols in respect to
1629*1fd5a2e1SPrashanth Swaminathan	underscores.
1630*1fd5a2e1SPrashanth Swaminathan
1631*1fd5a2e1SPrashanth Swaminathan2010-11-15  Rainer Orth  <[email protected]>
1632*1fd5a2e1SPrashanth Swaminathan
1633*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Rename ...
1634*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi.exp: ... to this.
1635*1fd5a2e1SPrashanth Swaminathan	* libffi/testsuite/libffi.call/call.exp: Don't load libffi-dg.exp.
1636*1fd5a2e1SPrashanth Swaminathan	* libffi/testsuite/libffi.special/special.exp: Likewise.
1637*1fd5a2e1SPrashanth Swaminathan
1638*1fd5a2e1SPrashanth Swaminathan2010-10-28  Chung-Lin Tang  <[email protected]>
1639*1fd5a2e1SPrashanth Swaminathan
1640*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_prep_args): Add VFP register argument handling
1641*1fd5a2e1SPrashanth Swaminathan	code, new parameter, and return value. Update comments.
1642*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Add case for VFP struct return values. Add
1643*1fd5a2e1SPrashanth Swaminathan	call to layout_vfp_args().
1644*1fd5a2e1SPrashanth Swaminathan	(ffi_call_SYSV): Update declaration.
1645*1fd5a2e1SPrashanth Swaminathan	(ffi_call_VFP): New declaration.
1646*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Add VFP struct return conditions. Call ffi_call_VFP()
1647*1fd5a2e1SPrashanth Swaminathan	when ABI is FFI_VFP.
1648*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_VFP): New declaration.
1649*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_SYSV_inner): Add new vfp_args parameter, update call to
1650*1fd5a2e1SPrashanth Swaminathan	ffi_prep_incoming_args_SYSV().
1651*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_incoming_args_SYSV): Update parameters. Add VFP argument
1652*1fd5a2e1SPrashanth Swaminathan	case handling.
1653*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Pass ffi_closure_VFP to trampoline
1654*1fd5a2e1SPrashanth Swaminathan	construction under VFP hard-float.
1655*1fd5a2e1SPrashanth Swaminathan	(rec_vfp_type_p): New function.
1656*1fd5a2e1SPrashanth Swaminathan	(vfp_type_p): Same.
1657*1fd5a2e1SPrashanth Swaminathan	(place_vfp_arg): Same.
1658*1fd5a2e1SPrashanth Swaminathan	(layout_vfp_args): Same.
1659*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffitarget.h (ffi_abi): Add FFI_VFP. Define FFI_DEFAULT_ABI
1660*1fd5a2e1SPrashanth Swaminathan	based on __ARM_PCS_VFP.
1661*1fd5a2e1SPrashanth Swaminathan	(FFI_EXTRA_CIF_FIELDS): Define for adding VFP hard-float specific
1662*1fd5a2e1SPrashanth Swaminathan	fields.
1663*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_STRUCT_VFP_FLOAT): Define internally used type code.
1664*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_STRUCT_VFP_DOUBLE): Same.
1665*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S (ffi_call_SYSV): Change call of ffi_prep_args() to
1666*1fd5a2e1SPrashanth Swaminathan	direct call. Move function pointer load upwards.
1667*1fd5a2e1SPrashanth Swaminathan	(ffi_call_VFP): New function.
1668*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_VFP): Same.
1669*1fd5a2e1SPrashanth Swaminathan
1670*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (check-flags): New function.
1671*1fd5a2e1SPrashanth Swaminathan	(dg-skip-if): New function.
1672*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double_va.c: Skip if target is arm*-*-*
1673*1fd5a2e1SPrashanth Swaminathan	and compiler options include -mfloat-abi=hard.
1674*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble_va.c: Same.
1675*1fd5a2e1SPrashanth Swaminathan
1676*1fd5a2e1SPrashanth Swaminathan2010-10-01  Jakub Jelinek  <[email protected]>
1677*1fd5a2e1SPrashanth Swaminathan
1678*1fd5a2e1SPrashanth Swaminathan	PR libffi/45677
1679*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (ffi_prep_cif_machdep): Ensure cif->bytes is
1680*1fd5a2e1SPrashanth Swaminathan	a multiple of 8.
1681*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many2.c: New test.
1682*1fd5a2e1SPrashanth Swaminathan
1683*1fd5a2e1SPrashanth Swaminathan2010-08-20  Mark Wielaard  <[email protected]>
1684*1fd5a2e1SPrashanth Swaminathan
1685*1fd5a2e1SPrashanth Swaminathan	* src/closures.c (open_temp_exec_file_mnt): Check if getmntent_r
1686*1fd5a2e1SPrashanth Swaminathan	returns NULL.
1687*1fd5a2e1SPrashanth Swaminathan
1688*1fd5a2e1SPrashanth Swaminathan2010-08-09  Andreas Tobler  <[email protected]>
1689*1fd5a2e1SPrashanth Swaminathan
1690*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add target powerpc64-*-freebsd*.
1691*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1692*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble_split.c: Pass
1693*1fd5a2e1SPrashanth Swaminathan	-mlong-double-128 only to linux targets.
1694*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble_split2.c: Likewise.
1695*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble.c: Likewise.
1696*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/huge_struct.c: Likewise.
1697*1fd5a2e1SPrashanth Swaminathan
1698*1fd5a2e1SPrashanth Swaminathan2010-08-05  Dan Witte  <[email protected]>
1699*1fd5a2e1SPrashanth Swaminathan
1700*1fd5a2e1SPrashanth Swaminathan        * Makefile.am: Pass FFI_DEBUG define to msvcc.sh for linking to the
1701*1fd5a2e1SPrashanth Swaminathan        debug CRT when --enable-debug is given.
1702*1fd5a2e1SPrashanth Swaminathan        * configure.ac: Define it.
1703*1fd5a2e1SPrashanth Swaminathan        * msvcc.sh: Translate -g and -DFFI_DEBUG appropriately.
1704*1fd5a2e1SPrashanth Swaminathan
1705*1fd5a2e1SPrashanth Swaminathan2010-08-04  Dan Witte  <[email protected]>
1706*1fd5a2e1SPrashanth Swaminathan
1707*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h: Add X86_ANY define for all x86/x86_64
1708*1fd5a2e1SPrashanth Swaminathan	platforms.
1709*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Remove redundant ifdef checks.
1710*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c: Push stack space computation into src/x86/ffi.c
1711*1fd5a2e1SPrashanth Swaminathan	for X86_ANY so return value space doesn't get added twice.
1712*1fd5a2e1SPrashanth Swaminathan
1713*1fd5a2e1SPrashanth Swaminathan2010-08-03  Neil Rashbrooke <[email protected]>
1714*1fd5a2e1SPrashanth Swaminathan
1715*1fd5a2e1SPrashanth Swaminathan	* msvcc.sh: Don't pass -safeseh to ml64 because behavior is buggy.
1716*1fd5a2e1SPrashanth Swaminathan
1717*1fd5a2e1SPrashanth Swaminathan2010-07-22  Dan Witte  <[email protected]>
1718*1fd5a2e1SPrashanth Swaminathan
1719*1fd5a2e1SPrashanth Swaminathan	* src/*/ffitarget.h: Make FFI_LAST_ABI one past the last valid ABI.
1720*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c: Fix ABI assertion.
1721*1fd5a2e1SPrashanth Swaminathan        * src/cris/ffi.c: Ditto.
1722*1fd5a2e1SPrashanth Swaminathan
1723*1fd5a2e1SPrashanth Swaminathan2010-07-10  Evan Phoenix  <[email protected]>
1724*1fd5a2e1SPrashanth Swaminathan
1725*1fd5a2e1SPrashanth Swaminathan	* src/closures.c (selinux_enabled_check): Fix strncmp usage bug.
1726*1fd5a2e1SPrashanth Swaminathan
1727*1fd5a2e1SPrashanth Swaminathan2010-07-07  Dan Horák <[email protected]>
1728*1fd5a2e1SPrashanth Swaminathan
1729*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Protect #define with #ifndef.
1730*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h: Ditto.
1731*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffitarget.h: Ditto.
1732*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffitarget.h: Ditto.
1733*1fd5a2e1SPrashanth Swaminathan
1734*1fd5a2e1SPrashanth Swaminathan2010-07-07   Neil Roberts <[email protected]>
1735*1fd5a2e1SPrashanth Swaminathan
1736*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (ffi_call_SYSV): Align the stack pointer to
1737*1fd5a2e1SPrashanth Swaminathan	16-bytes.
1738*1fd5a2e1SPrashanth Swaminathan
1739*1fd5a2e1SPrashanth Swaminathan2010-07-02  Jakub Jelinek  <[email protected]>
1740*1fd5a2e1SPrashanth Swaminathan
1741*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AM_MAKEFLAGS): Pass also mandir to submakes.
1742*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
1743*1fd5a2e1SPrashanth Swaminathan
1744*1fd5a2e1SPrashanth Swaminathan2010-05-19  Rainer Orth  <[email protected]>
1745*1fd5a2e1SPrashanth Swaminathan
1746*1fd5a2e1SPrashanth Swaminathan	* configure.ac (libffi_cv_as_x86_pcrel): Check for illegal in as
1747*1fd5a2e1SPrashanth Swaminathan	output, too.
1748*1fd5a2e1SPrashanth Swaminathan	(libffi_cv_as_ascii_pseudo_op): Check for .ascii.
1749*1fd5a2e1SPrashanth Swaminathan	(libffi_cv_as_string_pseudo_op): Check for .string.
1750*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1751*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Regenerate.
1752*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (.eh_frame): Use .ascii, .string or error.
1753*1fd5a2e1SPrashanth Swaminathan
1754*1fd5a2e1SPrashanth Swaminathan2010-05-11  Dan Witte  <[email protected]>
1755*1fd5a2e1SPrashanth Swaminathan
1756*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.tex: Document previous change.
1757*1fd5a2e1SPrashanth Swaminathan
1758*1fd5a2e1SPrashanth Swaminathan2010-05-11  Makoto Kato <[email protected]>
1759*1fd5a2e1SPrashanth Swaminathan
1760*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_call): Don't copy structs passed by value.
1761*1fd5a2e1SPrashanth Swaminathan
1762*1fd5a2e1SPrashanth Swaminathan2010-05-05  Michael Kohler <[email protected]>
1763*1fd5a2e1SPrashanth Swaminathan
1764*1fd5a2e1SPrashanth Swaminathan	* src/dlmalloc.c (dlfree): Fix spelling.
1765*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c (ffi_prep_cif_machdep): Ditto.
1766*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Ditto.
1767*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1768*1fd5a2e1SPrashanth Swaminathan
1769*1fd5a2e1SPrashanth Swaminathan2010-04-13  Dan Witte  <[email protected]>
1770*1fd5a2e1SPrashanth Swaminathan
1771*1fd5a2e1SPrashanth Swaminathan	* msvcc.sh: Build with -W3 instead of -Wall.
1772*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c: Remove build warnings.
1773*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Ditto.
1774*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h: Ditto.
1775*1fd5a2e1SPrashanth Swaminathan
1776*1fd5a2e1SPrashanth Swaminathan2010-04-12  Dan Witte  <[email protected]>
1777*1fd5a2e1SPrashanth Swaminathan	    Walter Meinl <[email protected]>
1778*1fd5a2e1SPrashanth Swaminathan
1779*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add OS/2 support.
1780*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1781*1fd5a2e1SPrashanth Swaminathan	* src/closures.c: Ditto.
1782*1fd5a2e1SPrashanth Swaminathan	* src/dlmalloc.c: Ditto.
1783*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S: Ditto.
1784*1fd5a2e1SPrashanth Swaminathan
1785*1fd5a2e1SPrashanth Swaminathan2010-04-07  Jakub Jelinek  <[email protected]>
1786*1fd5a2e1SPrashanth Swaminathan
1787*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_abi.c: Remove unused args variable.
1788*1fd5a2e1SPrashanth Swaminathan
1789*1fd5a2e1SPrashanth Swaminathan2010-04-02  Ralf Wildenhues  <[email protected]>
1790*1fd5a2e1SPrashanth Swaminathan
1791*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
1792*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerate.
1793*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
1794*1fd5a2e1SPrashanth Swaminathan	* man/Makefile.in: Regenerate.
1795*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerate.
1796*1fd5a2e1SPrashanth Swaminathan
1797*1fd5a2e1SPrashanth Swaminathan2010-03-30  Dan Witte  <[email protected]>
1798*1fd5a2e1SPrashanth Swaminathan
1799*1fd5a2e1SPrashanth Swaminathan	* msvcc.sh: Disable build warnings.
1800*1fd5a2e1SPrashanth Swaminathan	* README (tested): Clarify windows build procedure.
1801*1fd5a2e1SPrashanth Swaminathan
1802*1fd5a2e1SPrashanth Swaminathan2010-03-15  Rainer Orth  <[email protected]>
1803*1fd5a2e1SPrashanth Swaminathan
1804*1fd5a2e1SPrashanth Swaminathan	* configure.ac (libffi_cv_as_x86_64_unwind_section_type): New test.
1805*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1806*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Regenerate.
1807*1fd5a2e1SPrashanth Swaminathan	* libffi/src/x86/unix64.S (.eh_frame)
1808*1fd5a2e1SPrashanth Swaminathan	[HAVE_AS_X86_64_UNWIND_SECTION_TYPE]: Use @unwind section type.
1809*1fd5a2e1SPrashanth Swaminathan
1810*1fd5a2e1SPrashanth Swaminathan2010-03-14  Matthias Klose  <[email protected]>
1811*1fd5a2e1SPrashanth Swaminathan
1812*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c: Fix typo in comment.
1813*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Use /* ... */ comment style.
1814*1fd5a2e1SPrashanth Swaminathan
1815*1fd5a2e1SPrashanth Swaminathan2010-02-24  Rainer Orth  <[email protected]>
1816*1fd5a2e1SPrashanth Swaminathan
1817*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi (The Closure API): Fix typo.
1818*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.info: Remove.
1819*1fd5a2e1SPrashanth Swaminathan
1820*1fd5a2e1SPrashanth Swaminathan2010-02-15  Matthias Klose  <[email protected]>
1821*1fd5a2e1SPrashanth Swaminathan
1822*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S (__ARM_ARCH__): Define for processor
1823*1fd5a2e1SPrashanth Swaminathan	__ARM_ARCH_7EM__.
1824*1fd5a2e1SPrashanth Swaminathan
1825*1fd5a2e1SPrashanth Swaminathan2010-01-15  Anthony Green  <[email protected]>
1826*1fd5a2e1SPrashanth Swaminathan
1827*1fd5a2e1SPrashanth Swaminathan	* README: Add notes on building with Microsoft Visual C++.
1828*1fd5a2e1SPrashanth Swaminathan
1829*1fd5a2e1SPrashanth Swaminathan2010-01-15  Daniel Witte  <[email protected]>
1830*1fd5a2e1SPrashanth Swaminathan
1831*1fd5a2e1SPrashanth Swaminathan	* msvcc.sh: New file.
1832*1fd5a2e1SPrashanth Swaminathan
1833*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S: Port assembly routines to MSVC and #ifdef.
1834*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Tweak function declaration and remove excess
1835*1fd5a2e1SPrashanth Swaminathan	parens.
1836*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add __declspec(align(8)) to typedef struct
1837*1fd5a2e1SPrashanth Swaminathan	ffi_closure.
1838*1fd5a2e1SPrashanth Swaminathan
1839*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Merge ffi_call_SYSV and ffi_call_STDCALL into new
1840*1fd5a2e1SPrashanth Swaminathan	function ffi_call_win32 on X86_WIN32.
1841*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (ffi_call_SYSV): Rename to ffi_call_win32.
1842*1fd5a2e1SPrashanth Swaminathan	(ffi_call_STDCALL): Remove.
1843*1fd5a2e1SPrashanth Swaminathan
1844*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif): Move stack space allocation code
1845*1fd5a2e1SPrashanth Swaminathan	to ffi_prep_cif_machdep for x86.
1846*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): To here.
1847*1fd5a2e1SPrashanth Swaminathan
1848*1fd5a2e1SPrashanth Swaminathan2010-01-15  Oliver Kiddle  <[email protected]>
1849*1fd5a2e1SPrashanth Swaminathan
1850*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h (ffi_abi): Check for __i386 and __amd64 for
1851*1fd5a2e1SPrashanth Swaminathan	Sun Studio compiler compatibility.
1852*1fd5a2e1SPrashanth Swaminathan
1853*1fd5a2e1SPrashanth Swaminathan2010-01-12  Conrad Irwin <[email protected]>
1854*1fd5a2e1SPrashanth Swaminathan
1855*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi: Add closure example.
1856*1fd5a2e1SPrashanth Swaminathan
1857*1fd5a2e1SPrashanth Swaminathan2010-01-07  Rainer Orth  <[email protected]>
1858*1fd5a2e1SPrashanth Swaminathan
1859*1fd5a2e1SPrashanth Swaminathan	PR libffi/40701
1860*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h [__alpha__ && __osf__] (PRIdLL,
1861*1fd5a2e1SPrashanth Swaminathan	PRIuLL, PRId64, PRIu64, PRIuPTR): Define.
1862*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint64.c: Add -Wno-format on
1863*1fd5a2e1SPrashanth Swaminathan	alpha*-dec-osf*.
1864*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint64.c: Likewise.
1865*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ulonglong.c: Likewise.
1866*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_ll1.c: Likewise.
1867*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_medium2.c: Likewise.
1868*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/ffitestcxx.h (allocate_mmap): Cast
1869*1fd5a2e1SPrashanth Swaminathan	MAP_FAILED to char *.
1870*1fd5a2e1SPrashanth Swaminathan
1871*1fd5a2e1SPrashanth Swaminathan2010-01-06  Rainer Orth  <[email protected]>
1872*1fd5a2e1SPrashanth Swaminathan
1873*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S: Use .abicalls and .eh_frame with __GNUC__.
1874*1fd5a2e1SPrashanth Swaminathan
1875*1fd5a2e1SPrashanth Swaminathan2009-12-31  Anthony Green  <[email protected]>
1876*1fd5a2e1SPrashanth Swaminathan
1877*1fd5a2e1SPrashanth Swaminathan	* README: Update for libffi 3.0.9.
1878*1fd5a2e1SPrashanth Swaminathan
1879*1fd5a2e1SPrashanth Swaminathan2009-12-27  Matthias Klose  <[email protected]>
1880*1fd5a2e1SPrashanth Swaminathan
1881*1fd5a2e1SPrashanth Swaminathan	* configure.ac (HAVE_LONG_DOUBLE): Define for mips when
1882*1fd5a2e1SPrashanth Swaminathan	appropriate.
1883*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1884*1fd5a2e1SPrashanth Swaminathan
1885*1fd5a2e1SPrashanth Swaminathan2009-12-26  Anthony Green  <[email protected]>
1886*1fd5a2e1SPrashanth Swaminathan
1887*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble_va.c: Mark as xfail for
1888*1fd5a2e1SPrashanth Swaminathan	avr32*-*-*.
1889*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double_va.c: Ditto.
1890*1fd5a2e1SPrashanth Swaminathan
1891*1fd5a2e1SPrashanth Swaminathan2009-12-26  Andreas Tobler  <[email protected]>
1892*1fd5a2e1SPrashanth Swaminathan
1893*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Conditionally include stdint.h
1894*1fd5a2e1SPrashanth Swaminathan	and inttypes.h.
1895*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc: Ditto.
1896*1fd5a2e1SPrashanth Swaminathan
1897*1fd5a2e1SPrashanth Swaminathan2009-12-26  Andreas Tobler  <[email protected]>
1898*1fd5a2e1SPrashanth Swaminathan
1899*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add amd64-*-openbsd*.
1900*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1901*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi_target_compile): Link
1902*1fd5a2e1SPrashanth Swaminathan	openbsd programs with -lpthread.
1903*1fd5a2e1SPrashanth Swaminathan
1904*1fd5a2e1SPrashanth Swaminathan2009-12-26  Anthony Green  <[email protected]>
1905*1fd5a2e1SPrashanth Swaminathan
1906*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double_va.c,
1907*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble.c,
1908*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble_va.c,
1909*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_pointer.c,
1910*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_pointer_stack.c: Remove xfail for
1911*1fd5a2e1SPrashanth Swaminathan	mips*-*-* and arm*-*-*.
1912*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble_split.c,
1913*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_longdouble_split2.c,
1914*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/stret_medium2.c,
1915*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/stret_medium.c,
1916*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/stret_large.c,
1917*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/stret_large2.c: Remove xfail for arm*-*-*.
1918*1fd5a2e1SPrashanth Swaminathan
1919*1fd5a2e1SPrashanth Swaminathan2009-12-31  Kay Tietz  <[email protected]>
1920*1fd5a2e1SPrashanth Swaminathan
1921*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h,
1922*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRuLL): Fix
1923*1fd5a2e1SPrashanth Swaminathan	definitions.
1924*1fd5a2e1SPrashanth Swaminathan
1925*1fd5a2e1SPrashanth Swaminathan2009-12-31  Carlo Bramini  <[email protected]>
1926*1fd5a2e1SPrashanth Swaminathan
1927*1fd5a2e1SPrashanth Swaminathan	* configure.ac (AM_LTLDFLAGS): Define for windows hosts.
1928*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (libffi_la_LDFLAGS): Add AM_LTLDFLAGS.
1929*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
1930*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
1931*1fd5a2e1SPrashanth Swaminathan
1932*1fd5a2e1SPrashanth Swaminathan2009-12-31  Anthony Green  <[email protected]>
1933*1fd5a2e1SPrashanth Swaminathan	    Blake Chaffin.
1934*1fd5a2e1SPrashanth Swaminathan
1935*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/huge_struct.c: New test case from Blake
1936*1fd5a2e1SPrashanth Swaminathan	Chaffin @ Apple.
1937*1fd5a2e1SPrashanth Swaminathan
1938*1fd5a2e1SPrashanth Swaminathan2009-12-28  David Edelsohn  <[email protected]>
1939*1fd5a2e1SPrashanth Swaminathan
1940*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Copy abi and nargs to
1941*1fd5a2e1SPrashanth Swaminathan	local variables.
1942*1fd5a2e1SPrashanth Swaminathan	(aix_adjust_aggregate_sizes): New function.
1943*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Call it.
1944*1fd5a2e1SPrashanth Swaminathan
1945*1fd5a2e1SPrashanth Swaminathan2009-12-26  Andreas Tobler  <[email protected]>
1946*1fd5a2e1SPrashanth Swaminathan
1947*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Define FFI_MMAP_EXEC_WRIT for the given targets.
1948*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1949*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Likewise.
1950*1fd5a2e1SPrashanth Swaminathan	* src/closures.c: Remove the FFI_MMAP_EXEC_WRIT definition for
1951*1fd5a2e1SPrashanth Swaminathan	Solaris/x86.
1952*1fd5a2e1SPrashanth Swaminathan
1953*1fd5a2e1SPrashanth Swaminathan2009-12-26  Andreas Schwab  <[email protected]>
1954*1fd5a2e1SPrashanth Swaminathan
1955*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Advance intarg_count
1956*1fd5a2e1SPrashanth Swaminathan	when a float arguments is passed in memory.
1957*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Mark general registers as used up when
1958*1fd5a2e1SPrashanth Swaminathan	a 64bit or soft-float long double argument is passed in memory.
1959*1fd5a2e1SPrashanth Swaminathan
1960*1fd5a2e1SPrashanth Swaminathan2009-12-25  Matthias Klose  <[email protected]>
1961*1fd5a2e1SPrashanth Swaminathan
1962*1fd5a2e1SPrashanth Swaminathan	* man/ffi_call.3: Fix #include in examples.
1963*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi: Add dircategory.
1964*1fd5a2e1SPrashanth Swaminathan
1965*1fd5a2e1SPrashanth Swaminathan2009-12-25  Frank Everdij <[email protected]>
1966*1fd5a2e1SPrashanth Swaminathan
1967*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Placed '__GNUC__' ifdef around
1968*1fd5a2e1SPrashanth Swaminathan	'__attribute__((aligned(8)))' in ffi_closure, fixes compile for
1969*1fd5a2e1SPrashanth Swaminathan	IRIX MIPSPro c99.
1970*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h: Added '__sgi' define to non
1971*1fd5a2e1SPrashanth Swaminathan	'__attribute__((__mode__()))' integer typedefs.
1972*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (ffi_call, ffi_closure_mips_inner_O32,
1973*1fd5a2e1SPrashanth Swaminathan	ffi_closure_mips_inner_N32): Added 'defined(_MIPSEB)' to BE check.
1974*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_mips_inner_O32, ffi_closure_mips_inner_N32): Added
1975*1fd5a2e1SPrashanth Swaminathan	FFI_LONGDOUBLE support and alignment(N32 only).
1976*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h: Corrected '#include <sgidefs.h>' for IRIX and
1977*1fd5a2e1SPrashanth Swaminathan	fixed non '__attribute__((__mode__()))' integer typedefs.
1978*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S: Put '#ifdef linux' around '.abicalls' and '.eh_frame'
1979*1fd5a2e1SPrashanth Swaminathan	since they are Linux/GNU Assembler specific.
1980*1fd5a2e1SPrashanth Swaminathan
1981*1fd5a2e1SPrashanth Swaminathan2009-12-25  Bradley Smith  <[email protected]>
1982*1fd5a2e1SPrashanth Swaminathan
1983*1fd5a2e1SPrashanth Swaminathan	* configure.ac, Makefile.am, src/avr32/ffi.c,
1984*1fd5a2e1SPrashanth Swaminathan	src/avr32/ffitarget.h,
1985*1fd5a2e1SPrashanth Swaminathan	src/avr32/sysv.S: Add AVR32 port.
1986*1fd5a2e1SPrashanth Swaminathan	* configure, Makefile.in: Rebuilt.
1987*1fd5a2e1SPrashanth Swaminathan
1988*1fd5a2e1SPrashanth Swaminathan2009-12-21  Andreas Tobler  <[email protected]>
1989*1fd5a2e1SPrashanth Swaminathan
1990*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Make i?86 build on FreeBSD and OpenBSD.
1991*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
1992*1fd5a2e1SPrashanth Swaminathan
1993*1fd5a2e1SPrashanth Swaminathan2009-12-15  John David Anglin  <[email protected]>
1994*1fd5a2e1SPrashanth Swaminathan
1995*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Define PRIuPTR on PA HP-UX.
1996*1fd5a2e1SPrashanth Swaminathan
1997*1fd5a2e1SPrashanth Swaminathan2009-12-13  John David Anglin  <[email protected]>
1998*1fd5a2e1SPrashanth Swaminathan
1999*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.c (ffi_closure_inner_pa32): Handle FFI_TYPE_LONGDOUBLE
2000*1fd5a2e1SPrashanth Swaminathan	type on HP-UX.
2001*1fd5a2e1SPrashanth Swaminathan
2002*1fd5a2e1SPrashanth Swaminathan2012-02-13  Kai Tietz  <[email protected]>
2003*1fd5a2e1SPrashanth Swaminathan
2004*1fd5a2e1SPrashanth Swaminathan	PR libffi/52221
2005*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_raw_closure_loc): Add thiscall
2006*1fd5a2e1SPrashanth Swaminathan	support for X86_WIN32.
2007*1fd5a2e1SPrashanth Swaminathan	(FFI_INIT_TRAMPOLINE_THISCALL): Fix displacement.
2008*1fd5a2e1SPrashanth Swaminathan
2009*1fd5a2e1SPrashanth Swaminathan2009-12-11  Eric Botcazou  <[email protected]>
2010*1fd5a2e1SPrashanth Swaminathan
2011*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_closure_sparc_inner_v9): Properly align 'long
2012*1fd5a2e1SPrashanth Swaminathan	double' arguments.
2013*1fd5a2e1SPrashanth Swaminathan
2014*1fd5a2e1SPrashanth Swaminathan2009-12-11  Eric Botcazou  <[email protected]>
2015*1fd5a2e1SPrashanth Swaminathan
2016*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Define PRIuPTR on Solaris < 10.
2017*1fd5a2e1SPrashanth Swaminathan
2018*1fd5a2e1SPrashanth Swaminathan2009-12-10  Rainer Orth  <[email protected]>
2019*1fd5a2e1SPrashanth Swaminathan
2020*1fd5a2e1SPrashanth Swaminathan	PR libffi/40700
2021*1fd5a2e1SPrashanth Swaminathan	* src/closures.c [X86_64 && __sun__ && __svr4__]
2022*1fd5a2e1SPrashanth Swaminathan	(FFI_MMAP_EXEC_WRIT): Define.
2023*1fd5a2e1SPrashanth Swaminathan
2024*1fd5a2e1SPrashanth Swaminathan2009-12-08  David Daney  <[email protected]>
2025*1fd5a2e1SPrashanth Swaminathan
2026*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_medium.c: Remove xfail for mips*-*-*
2027*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble_split2.c: Same.
2028*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_large.c: Same.
2029*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble_split.c: Same.
2030*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_large2.c: Same.
2031*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_medium2.c: Same.
2032*1fd5a2e1SPrashanth Swaminathan
2033*1fd5a2e1SPrashanth Swaminathan2009-12-07  David Edelsohn  <[email protected]>
2034*1fd5a2e1SPrashanth Swaminathan
2035*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S (libffi_closure_ASM): Fix tablejump
2036*1fd5a2e1SPrashanth Swaminathan	typo.
2037*1fd5a2e1SPrashanth Swaminathan
2038*1fd5a2e1SPrashanth Swaminathan2009-12-05  David Edelsohn  <[email protected]>
2039*1fd5a2e1SPrashanth Swaminathan
2040*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix.S: Update AIX32 code to be consistent with AIX64
2041*1fd5a2e1SPrashanth Swaminathan	code.
2042*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S: Same.
2043*1fd5a2e1SPrashanth Swaminathan
2044*1fd5a2e1SPrashanth Swaminathan2009-12-05  Ralf Wildenhues  <[email protected]>
2045*1fd5a2e1SPrashanth Swaminathan
2046*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
2047*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2048*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
2049*1fd5a2e1SPrashanth Swaminathan	* man/Makefile.in: Regenerate.
2050*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerate.
2051*1fd5a2e1SPrashanth Swaminathan
2052*1fd5a2e1SPrashanth Swaminathan2009-12-04  David Edelsohn  <[email protected]>
2053*1fd5a2e1SPrashanth Swaminathan
2054*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S: Reorganize 64-bit code to match
2055*1fd5a2e1SPrashanth Swaminathan	linux64_closure.S.
2056*1fd5a2e1SPrashanth Swaminathan
2057*1fd5a2e1SPrashanth Swaminathan2009-12-04  Uros Bizjak  <[email protected]>
2058*1fd5a2e1SPrashanth Swaminathan
2059*1fd5a2e1SPrashanth Swaminathan	PR libffi/41908
2060*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (classify_argument): Update from
2061*1fd5a2e1SPrashanth Swaminathan	gcc/config/i386/i386.c.
2062*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_unix64_inner): Do not use the address of two consecutive
2063*1fd5a2e1SPrashanth Swaminathan	SSE registers directly.
2064*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_dbls_struct.c (main): Remove xfail
2065*1fd5a2e1SPrashanth Swaminathan	for x86_64 linux targets.
2066*1fd5a2e1SPrashanth Swaminathan
2067*1fd5a2e1SPrashanth Swaminathan2009-12-04  David Edelsohn  <[email protected]>
2068*1fd5a2e1SPrashanth Swaminathan
2069*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_closure_helper_DARWIN): Increment
2070*1fd5a2e1SPrashanth Swaminathan	pfr for long double split between fpr13 and stack.
2071*1fd5a2e1SPrashanth Swaminathan
2072*1fd5a2e1SPrashanth Swaminathan2009-12-03  David Edelsohn  <[email protected]>
2073*1fd5a2e1SPrashanth Swaminathan
2074*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Increment next_arg and
2075*1fd5a2e1SPrashanth Swaminathan	fparg_count twice for long double.
2076*1fd5a2e1SPrashanth Swaminathan
2077*1fd5a2e1SPrashanth Swaminathan2009-12-03  David Edelsohn  <[email protected]>
2078*1fd5a2e1SPrashanth Swaminathan
2079*1fd5a2e1SPrashanth Swaminathan	PR libffi/42243
2080*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Remove extra parentheses.
2081*1fd5a2e1SPrashanth Swaminathan
2082*1fd5a2e1SPrashanth Swaminathan2009-12-03  Uros Bizjak  <[email protected]>
2083*1fd5a2e1SPrashanth Swaminathan
2084*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble_va.c (main): Fix format string.
2085*1fd5a2e1SPrashanth Swaminathan	Remove xfails for x86 linux targets.
2086*1fd5a2e1SPrashanth Swaminathan
2087*1fd5a2e1SPrashanth Swaminathan2009-12-02  David Edelsohn  <[email protected]>
2088*1fd5a2e1SPrashanth Swaminathan
2089*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Fix typo in INT64
2090*1fd5a2e1SPrashanth Swaminathan	case.
2091*1fd5a2e1SPrashanth Swaminathan
2092*1fd5a2e1SPrashanth Swaminathan2009-12-01  David Edelsohn  <[email protected]>
2093*1fd5a2e1SPrashanth Swaminathan
2094*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix.S (ffi_call_AIX): Convert to more standard
2095*1fd5a2e1SPrashanth Swaminathan	register usage.  Call ffi_prep_args directly.  Add long double
2096*1fd5a2e1SPrashanth Swaminathan	return value support.
2097*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Double arg increment
2098*1fd5a2e1SPrashanth Swaminathan	applies to FFI_TYPE_DOUBLE.  Correct fpr_base increment typo.
2099*1fd5a2e1SPrashanth Swaminathan	Separate FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases.
2100*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Only 16 byte stack alignment in 64 bit
2101*1fd5a2e1SPrashanth Swaminathan	mode.
2102*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_DARWIN): Remove nf and ng counters.  Move temp
2103*1fd5a2e1SPrashanth Swaminathan	into case.
2104*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S: Maintain 16 byte stack alignment.
2105*1fd5a2e1SPrashanth Swaminathan	Allocate result area between params and FPRs.
2106*1fd5a2e1SPrashanth Swaminathan
2107*1fd5a2e1SPrashanth Swaminathan2009-11-30  David Edelsohn  <[email protected]>
2108*1fd5a2e1SPrashanth Swaminathan
2109*1fd5a2e1SPrashanth Swaminathan	PR target/35484
2110*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h (POWERPC64): Define for PPC64 Linux and
2111*1fd5a2e1SPrashanth Swaminathan	AIX64.
2112*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix.S: Implement AIX64 version.
2113*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S: Implement AIX64 version.
2114*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_ASM): Use extsb, lha and displament addresses.
2115*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Implement AIX64
2116*1fd5a2e1SPrashanth Swaminathan	support.
2117*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Same.
2118*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Same.
2119*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_DARWIN): Same.
2120*1fd5a2e1SPrashanth Swaminathan
2121*1fd5a2e1SPrashanth Swaminathan2009-11-02  Andreas Tobler  <[email protected]>
2122*1fd5a2e1SPrashanth Swaminathan
2123*1fd5a2e1SPrashanth Swaminathan	PR libffi/41908
2124*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/testclosure.c: New test.
2125*1fd5a2e1SPrashanth Swaminathan
2126*1fd5a2e1SPrashanth Swaminathan2009-09-28  Kai Tietz  <[email protected]>
2127*1fd5a2e1SPrashanth Swaminathan
2128*1fd5a2e1SPrashanth Swaminathan	* src/x86/win64.S (_ffi_call_win64 stack): Remove for gnu
2129*1fd5a2e1SPrashanth Swaminathan	assembly version use of ___chkstk.
2130*1fd5a2e1SPrashanth Swaminathan
2131*1fd5a2e1SPrashanth Swaminathan2009-09-23  Matthias Klose  <[email protected]>
2132*1fd5a2e1SPrashanth Swaminathan
2133*1fd5a2e1SPrashanth Swaminathan	PR libffi/40242, PR libffi/41443
2134*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S (__ARM_ARCH__): Define for processors
2135*1fd5a2e1SPrashanth Swaminathan	__ARM_ARCH_6T2__, __ARM_ARCH_6M__, __ARM_ARCH_7__,
2136*1fd5a2e1SPrashanth Swaminathan	__ARM_ARCH_7A__, __ARM_ARCH_7R__, __ARM_ARCH_7M__.
2137*1fd5a2e1SPrashanth Swaminathan	Change the conditionals to __SOFTFP__ || __ARM_EABI__
2138*1fd5a2e1SPrashanth Swaminathan	for -mfloat-abi=softfp to work.
2139*1fd5a2e1SPrashanth Swaminathan
2140*1fd5a2e1SPrashanth Swaminathan2009-09-17  Loren J. Rittle  <[email protected]>
2141*1fd5a2e1SPrashanth Swaminathan
2142*1fd5a2e1SPrashanth Swaminathan	PR testsuite/32843 (strikes again)
2143*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): Add X86_FREEBSD to
2144*1fd5a2e1SPrashanth Swaminathan	enable proper extension on char and short.
2145*1fd5a2e1SPrashanth Swaminathan
2146*1fd5a2e1SPrashanth Swaminathan2009-09-15  David Daney  <[email protected]>
2147*1fd5a2e1SPrashanth Swaminathan
2148*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api.c (ffi_java_raw_to_rvalue): Remove special
2149*1fd5a2e1SPrashanth Swaminathan	handling for FFI_TYPE_POINTER.
2150*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h (FFI_TYPE_STRUCT_D_SOFT,
2151*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_STRUCT_F_SOFT, FFI_TYPE_STRUCT_DD_SOFT,
2152*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_STRUCT_FF_SOFT, FFI_TYPE_STRUCT_FD_SOFT,
2153*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_STRUCT_DF_SOFT, FFI_TYPE_STRUCT_SOFT): New defines.
2154*1fd5a2e1SPrashanth Swaminathan	(FFI_N32_SOFT_FLOAT, FFI_N64_SOFT_FLOAT): New ffi_abi enumerations.
2155*1fd5a2e1SPrashanth Swaminathan	(enum ffi_abi): Set FFI_DEFAULT_ABI for soft-float.
2156*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S (ffi_call_N32): Add handling for soft-float
2157*1fd5a2e1SPrashanth Swaminathan	structure and pointer returns.
2158*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_N32): Add handling for pointer returns.
2159*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (ffi_prep_args, calc_n32_struct_flags,
2160*1fd5a2e1SPrashanth Swaminathan	calc_n32_return_struct_flags): Handle soft-float.
2161*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep):  Handle soft-float, fix pointer handling.
2162*1fd5a2e1SPrashanth Swaminathan	(ffi_call_N32): Declare proper argument types.
2163*1fd5a2e1SPrashanth Swaminathan	(ffi_call, copy_struct_N32, ffi_closure_mips_inner_N32): Handle
2164*1fd5a2e1SPrashanth Swaminathan	soft-float.
2165*1fd5a2e1SPrashanth Swaminathan
2166*1fd5a2e1SPrashanth Swaminathan2009-08-24  Ralf Wildenhues  <[email protected]>
2167*1fd5a2e1SPrashanth Swaminathan
2168*1fd5a2e1SPrashanth Swaminathan	* configure.ac (AC_PREREQ): Bump to 2.64.
2169*1fd5a2e1SPrashanth Swaminathan
2170*1fd5a2e1SPrashanth Swaminathan2009-08-22  Ralf Wildenhues  <[email protected]>
2171*1fd5a2e1SPrashanth Swaminathan
2172*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (install-html, install-pdf): Remove.
2173*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
2174*1fd5a2e1SPrashanth Swaminathan
2175*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
2176*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerate.
2177*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2178*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Regenerate.
2179*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
2180*1fd5a2e1SPrashanth Swaminathan	* man/Makefile.in: Regenerate.
2181*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerate.
2182*1fd5a2e1SPrashanth Swaminathan
2183*1fd5a2e1SPrashanth Swaminathan2011-08-22  Jasper Lievisse Adriaanse <[email protected]>
2184*1fd5a2e1SPrashanth Swaminathan
2185*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add OpenBSD/hppa and OpenBSD/powerpc support.
2186*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
2187*1fd5a2e1SPrashanth Swaminathan
2188*1fd5a2e1SPrashanth Swaminathan2009-07-30  Ralf Wildenhues  <[email protected]>
2189*1fd5a2e1SPrashanth Swaminathan
2190*1fd5a2e1SPrashanth Swaminathan	* configure.ac (_AC_ARG_VAR_PRECIOUS): Use m4_rename_force.
2191*1fd5a2e1SPrashanth Swaminathan
2192*1fd5a2e1SPrashanth Swaminathan2009-07-24  Dave Korn  <[email protected]>
2193*1fd5a2e1SPrashanth Swaminathan
2194*1fd5a2e1SPrashanth Swaminathan	PR libffi/40807
2195*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): Also use sign/zero-extending
2196*1fd5a2e1SPrashanth Swaminathan	return types for X86_WIN32.
2197*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (_ffi_call_SYSV): Handle omitted return types.
2198*1fd5a2e1SPrashanth Swaminathan	(_ffi_call_STDCALL, _ffi_closure_SYSV, _ffi_closure_raw_SYSV,
2199*1fd5a2e1SPrashanth Swaminathan	_ffi_closure_STDCALL): Likewise.
2200*1fd5a2e1SPrashanth Swaminathan
2201*1fd5a2e1SPrashanth Swaminathan	* src/closures.c (is_selinux_enabled): Define to const 0 for Cygwin.
2202*1fd5a2e1SPrashanth Swaminathan	(dlmmap, dlmunmap): Also use these functions on Cygwin.
2203*1fd5a2e1SPrashanth Swaminathan
2204*1fd5a2e1SPrashanth Swaminathan2009-07-11  Richard Sandiford  <[email protected]>
2205*1fd5a2e1SPrashanth Swaminathan
2206*1fd5a2e1SPrashanth Swaminathan	PR testsuite/40699
2207*1fd5a2e1SPrashanth Swaminathan	PR testsuite/40707
2208*1fd5a2e1SPrashanth Swaminathan	PR testsuite/40709
2209*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Revert 2009-07-02, 2009-07-01 and
2210*1fd5a2e1SPrashanth Swaminathan	2009-06-30 commits.
2211*1fd5a2e1SPrashanth Swaminathan
2212*1fd5a2e1SPrashanth Swaminathan2009-07-01  Richard Sandiford  <[email protected]>
2213*1fd5a2e1SPrashanth Swaminathan
2214*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi-init): Set ld_library_path
2215*1fd5a2e1SPrashanth Swaminathan	to "" before adding paths.  (This reinstates an assignment that
2216*1fd5a2e1SPrashanth Swaminathan	was removed by my 2009-06-30 commit, but changes the initial
2217*1fd5a2e1SPrashanth Swaminathan	value from "." to "".)
2218*1fd5a2e1SPrashanth Swaminathan
2219*1fd5a2e1SPrashanth Swaminathan2009-07-01  H.J. Lu  <[email protected]>
2220*1fd5a2e1SPrashanth Swaminathan
2221*1fd5a2e1SPrashanth Swaminathan	PR testsuite/40601
2222*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi-init): Properly set
2223*1fd5a2e1SPrashanth Swaminathan	gccdir.  Adjust ld_library_path for gcc only if gccdir isn't
2224*1fd5a2e1SPrashanth Swaminathan	empty.
2225*1fd5a2e1SPrashanth Swaminathan
2226*1fd5a2e1SPrashanth Swaminathan2009-06-30  Richard Sandiford  <[email protected]>
2227*1fd5a2e1SPrashanth Swaminathan
2228*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi-init): Don't add "."
2229*1fd5a2e1SPrashanth Swaminathan	to ld_library_path.  Use add_path.  Add just find_libgcc_s
2230*1fd5a2e1SPrashanth Swaminathan	to ld_library_path, not every libgcc multilib directory.
2231*1fd5a2e1SPrashanth Swaminathan
2232*1fd5a2e1SPrashanth Swaminathan2009-06-16  Wim Lewis  <[email protected]>
2233*1fd5a2e1SPrashanth Swaminathan
2234*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Avoid clobbering cr3 and cr4, which are
2235*1fd5a2e1SPrashanth Swaminathan	supposed to be callee-saved.
2236*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S (small_struct_return_value): Fix overrun of
2237*1fd5a2e1SPrashanth Swaminathan	return buffer for odd-size structs.
2238*1fd5a2e1SPrashanth Swaminathan
2239*1fd5a2e1SPrashanth Swaminathan2009-06-16  Andreas Tobler  <[email protected]>
2240*1fd5a2e1SPrashanth Swaminathan
2241*1fd5a2e1SPrashanth Swaminathan	PR libffi/40444
2242*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi_target_compile): Add
2243*1fd5a2e1SPrashanth Swaminathan	allow_stack_execute for Darwin.
2244*1fd5a2e1SPrashanth Swaminathan
2245*1fd5a2e1SPrashanth Swaminathan2009-06-16  Andrew Haley  <[email protected]>
2246*1fd5a2e1SPrashanth Swaminathan
2247*1fd5a2e1SPrashanth Swaminathan	* configure.ac (TARGETDIR): Add missing blank lines.
2248*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2249*1fd5a2e1SPrashanth Swaminathan
2250*1fd5a2e1SPrashanth Swaminathan2009-06-16  Andrew Haley  <[email protected]>
2251*1fd5a2e1SPrashanth Swaminathan
2252*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint64.c,
2253*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint64.c,
2254*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble_va.c,
2255*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_ulonglong.c,
2256*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/return_ll1.c,
2257*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/stret_medium2.c: Fix printf format
2258*1fd5a2e1SPrashanth Swaminathan	specifiers.
2259*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h,
2260*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRIuLL): Define.
2261*1fd5a2e1SPrashanth Swaminathan
2262*1fd5a2e1SPrashanth Swaminathan2009-06-15  Andrew Haley  <[email protected]>
2263*1fd5a2e1SPrashanth Swaminathan
2264*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_typedef.c: xfail everywhere.
2265*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_abi.c: Likewise.
2266*1fd5a2e1SPrashanth Swaminathan
2267*1fd5a2e1SPrashanth Swaminathan2009-06-12  Andrew Haley  <[email protected]>
2268*1fd5a2e1SPrashanth Swaminathan
2269*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Remove info_TEXINFOS.
2270*1fd5a2e1SPrashanth Swaminathan
2271*1fd5a2e1SPrashanth Swaminathan2009-06-12  Andrew Haley  <[email protected]>
2272*1fd5a2e1SPrashanth Swaminathan
2273*1fd5a2e1SPrashanth Swaminathan	* ChangeLog.libffi: testsuite/libffi.call/cls_align_sint64.c,
2274*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint64.c,
2275*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_ulonglong.c,
2276*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/return_ll1.c,
2277*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/stret_medium2.c: Fix printf format
2278*1fd5a2e1SPrashanth Swaminathan	specifiers.
2279*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/unwindtest.cc: include stdint.h.
2280*1fd5a2e1SPrashanth Swaminathan
2281*1fd5a2e1SPrashanth Swaminathan2009-06-11  Timothy Wall  <[email protected]>
2282*1fd5a2e1SPrashanth Swaminathan
2283*1fd5a2e1SPrashanth Swaminathan	* Makefile.am,
2284*1fd5a2e1SPrashanth Swaminathan	configure.ac,
2285*1fd5a2e1SPrashanth Swaminathan	include/ffi.h.in,
2286*1fd5a2e1SPrashanth Swaminathan	include/ffi_common.h,
2287*1fd5a2e1SPrashanth Swaminathan	src/closures.c,
2288*1fd5a2e1SPrashanth Swaminathan	src/dlmalloc.c,
2289*1fd5a2e1SPrashanth Swaminathan	src/x86/ffi.c,
2290*1fd5a2e1SPrashanth Swaminathan	src/x86/ffitarget.h,
2291*1fd5a2e1SPrashanth Swaminathan	src/x86/win64.S (new),
2292*1fd5a2e1SPrashanth Swaminathan	README: Added win64 support (mingw or MSVC)
2293*1fd5a2e1SPrashanth Swaminathan	* Makefile.in,
2294*1fd5a2e1SPrashanth Swaminathan	include/Makefile.in,
2295*1fd5a2e1SPrashanth Swaminathan	man/Makefile.in,
2296*1fd5a2e1SPrashanth Swaminathan	testsuite/Makefile.in,
2297*1fd5a2e1SPrashanth Swaminathan	configure,
2298*1fd5a2e1SPrashanth Swaminathan	aclocal.m4: Regenerated
2299*1fd5a2e1SPrashanth Swaminathan	* ltcf-c.sh: properly escape cygwin/w32 path
2300*1fd5a2e1SPrashanth Swaminathan	* man/ffi_call.3: Clarify size requirements for return value.
2301*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c: Fix filename in comment.
2302*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S: Remove unused extern.
2303*1fd5a2e1SPrashanth Swaminathan
2304*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c,
2305*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn1.c,
2306*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn2.c,
2307*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn3.c,
2308*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn4.c,
2309*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn5.c,
2310*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn6.c,
2311*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_stdcall.c,
2312*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_12byte.c,
2313*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_16byte.c,
2314*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_18byte.c,
2315*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_19byte.c,
2316*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_1_1byte.c,
2317*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_20byte.c,
2318*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_20byte1.c,
2319*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_24byte.c,
2320*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_2byte.c,
2321*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3_1byte.c,
2322*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3byte1.c,
2323*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_3byte2.c,
2324*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_4_1byte.c,
2325*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_4byte.c,
2326*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_5_1_byte.c,
2327*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_5byte.c,
2328*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_64byte.c,
2329*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_6_1_byte.c,
2330*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_6byte.c,
2331*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_7_1_byte.c,
2332*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_7byte.c,
2333*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_8byte.c,
2334*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_9byte1.c,
2335*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_9byte2.c,
2336*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_double.c,
2337*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_float.c,
2338*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_longdouble.c,
2339*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_longdouble_split.c,
2340*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_longdouble_split2.c,
2341*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_pointer.c,
2342*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_sint16.c,
2343*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_sint32.c,
2344*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_sint64.c,
2345*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_uint16.c,
2346*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_uint32.c,
2347*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_uint64.c,
2348*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_dbls_struct.c,
2349*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_double.c,
2350*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_double_va.c,
2351*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_float.c,
2352*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_longdouble.c,
2353*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_longdouble_va.c,
2354*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_schar.c,
2355*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_sshort.c,
2356*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_sshortchar.c,
2357*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_uchar.c,
2358*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_ushort.c,
2359*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_ushortchar.c,
2360*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_pointer.c,
2361*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_pointer_stack.c,
2362*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_schar.c,
2363*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_sint.c,
2364*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_sshort.c,
2365*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_uchar.c,
2366*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_uint.c,
2367*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_ulonglong.c,
2368*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_ushort.c,
2369*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/err_bad_abi.c,
2370*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/err_bad_typedef.c,
2371*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/float2.c,
2372*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/huge_struct.c,
2373*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct.c,
2374*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct1.c,
2375*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct10.c,
2376*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct2.c,
2377*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct3.c,
2378*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct4.c,
2379*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct5.c,
2380*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct6.c,
2381*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct7.c,
2382*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct8.c,
2383*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct9.c,
2384*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/problem1.c,
2385*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/return_ldl.c,
2386*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/return_ll1.c,
2387*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/stret_large.c,
2388*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/stret_large2.c,
2389*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/stret_medium.c,
2390*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/stret_medium2.c,
2391*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/unwindtest.cc: use ffi_closure_alloc instead
2392*1fd5a2e1SPrashanth Swaminathan	of checking for MMAP.  Use intptr_t instead of long casts.
2393*1fd5a2e1SPrashanth Swaminathan
2394*1fd5a2e1SPrashanth Swaminathan2009-06-11  Kaz Kojima  <[email protected]>
2395*1fd5a2e1SPrashanth Swaminathan
2396*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble_va.c: Add xfail sh*-*-linux-*.
2397*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_abi.c: Add xfail sh*-*-*.
2398*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_typedef.c: Likewise.
2399*1fd5a2e1SPrashanth Swaminathan
2400*1fd5a2e1SPrashanth Swaminathan2009-06-09  Andrew Haley  <[email protected]>
2401*1fd5a2e1SPrashanth Swaminathan
2402*1fd5a2e1SPrashanth Swaminathan	* src/x86/freebsd.S: Add missing file.
2403*1fd5a2e1SPrashanth Swaminathan
2404*1fd5a2e1SPrashanth Swaminathan2009-06-08  Andrew Haley  <[email protected]>
2405*1fd5a2e1SPrashanth Swaminathan
2406*1fd5a2e1SPrashanth Swaminathan	Import from libffi 3.0.8:
2407*1fd5a2e1SPrashanth Swaminathan
2408*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi: New file.
2409*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.info: Likewise.
2410*1fd5a2e1SPrashanth Swaminathan	* doc/stamp-vti: Likewise.
2411*1fd5a2e1SPrashanth Swaminathan	* man/Makefile.am: New file.
2412*1fd5a2e1SPrashanth Swaminathan	* man/ffi_call.3: New file.
2413*1fd5a2e1SPrashanth Swaminathan
2414*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add src/x86/darwin64.S,
2415*1fd5a2e1SPrashanth Swaminathan	src/dlmalloc.c.
2416*1fd5a2e1SPrashanth Swaminathan	(nodist_libffi_la_SOURCES): Add X86_FREEBSD.
2417*1fd5a2e1SPrashanth Swaminathan
2418*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 3.0.8.
2419*1fd5a2e1SPrashanth Swaminathan	parisc*-*-linux*: Add.
2420*1fd5a2e1SPrashanth Swaminathan	i386-*-freebsd* | i386-*-openbsd*: Add.
2421*1fd5a2e1SPrashanth Swaminathan	powerpc-*-beos*: Add.
2422*1fd5a2e1SPrashanth Swaminathan	AM_CONDITIONAL X86_FREEBSD: Add.
2423*1fd5a2e1SPrashanth Swaminathan	AC_CONFIG_FILES: Add man/Makefile.
2424*1fd5a2e1SPrashanth Swaminathan
2425*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (FFI_FN): Change void (*)() to void (*)(void).
2426*1fd5a2e1SPrashanth Swaminathan
2427*1fd5a2e1SPrashanth Swaminathan2009-06-08  Andrew Haley  <[email protected]>
2428*1fd5a2e1SPrashanth Swaminathan
2429*1fd5a2e1SPrashanth Swaminathan	* README: Import from libffi 3.0.8.
2430*1fd5a2e1SPrashanth Swaminathan
2431*1fd5a2e1SPrashanth Swaminathan2009-06-08  Andrew Haley  <[email protected]>
2432*1fd5a2e1SPrashanth Swaminathan
2433*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_abi.c: Add xfails.
2434*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble_va.c: Add xfails.
2435*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_dbls_struct.c: Add xfail x86_64-*-linux-*.
2436*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/err_bad_typedef.c: Add xfails.
2437*1fd5a2e1SPrashanth Swaminathan
2438*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_medium2.c: Add __UNUSED__ to args.
2439*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_medium.c: Likewise.
2440*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_large2.c: Likewise.
2441*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/stret_large.c:  Likewise.
2442*1fd5a2e1SPrashanth Swaminathan
2443*1fd5a2e1SPrashanth Swaminathan2008-12-26  Timothy Wall  <[email protected]>
2444*1fd5a2e1SPrashanth Swaminathan
2445*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble.c,
2446*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble_va.c,
2447*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_longdouble.c,
2448*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_longdouble_split.c,
2449*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_longdouble_split2.c: mark expected
2450*1fd5a2e1SPrashanth Swaminathan	failures on x86_64 cygwin/mingw.
2451*1fd5a2e1SPrashanth Swaminathan
2452*1fd5a2e1SPrashanth Swaminathan2008-12-22  Timothy Wall  <[email protected]>
2453*1fd5a2e1SPrashanth Swaminathan
2454*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c,
2455*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn1.c,
2456*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn2.c,
2457*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn3.c,
2458*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn4.c,
2459*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn5.c,
2460*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn6.c,
2461*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_loc_fn0.c,
2462*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_stdcall.c,
2463*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_pointer.c,
2464*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_pointer.c,
2465*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_pointer_stack.c: use portable cast from
2466*1fd5a2e1SPrashanth Swaminathan	pointer to integer (intptr_t).
2467*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble.c: disable for win64.
2468*1fd5a2e1SPrashanth Swaminathan
2469*1fd5a2e1SPrashanth Swaminathan2008-07-24  Anthony Green  <[email protected]>
2470*1fd5a2e1SPrashanth Swaminathan
2471*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_dbls_struct.c,
2472*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_double_va.c,
2473*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble.c,
2474*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble_va.c,
2475*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_pointer.c,
2476*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_pointer_stack.c,
2477*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/err_bad_abi.c: Clean up failures from
2478*1fd5a2e1SPrashanth Swaminathan	compiler warnings.
2479*1fd5a2e1SPrashanth Swaminathan
2480*1fd5a2e1SPrashanth Swaminathan2008-03-04  Anthony Green  <[email protected]>
2481*1fd5a2e1SPrashanth Swaminathan	    Blake Chaffin
2482*1fd5a2e1SPrashanth Swaminathan	    [email protected]
2483*1fd5a2e1SPrashanth Swaminathan
2484*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble_split2.c
2485*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/cls_align_longdouble_split.c
2486*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/cls_dbls_struct.c
2487*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/cls_double_va.c
2488*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/cls_longdouble.c
2489*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/cls_longdouble_va.c
2490*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/cls_pointer.c
2491*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/cls_pointer_stack.c
2492*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/err_bad_abi.c
2493*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/err_bad_typedef.c
2494*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/stret_large2.c
2495*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/stret_large.c
2496*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/stret_medium2.c
2497*1fd5a2e1SPrashanth Swaminathan	  testsuite/libffi.call/stret_medium.c: New tests from Apple.
2498*1fd5a2e1SPrashanth Swaminathan
2499*1fd5a2e1SPrashanth Swaminathan2009-06-05  Andrew Haley  <[email protected]>
2500*1fd5a2e1SPrashanth Swaminathan
2501*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h, src/x86/ffi.c: Merge stdcall changes from
2502*1fd5a2e1SPrashanth Swaminathan	libffi.
2503*1fd5a2e1SPrashanth Swaminathan
2504*1fd5a2e1SPrashanth Swaminathan2009-06-04  Andrew Haley  <[email protected]>
2505*1fd5a2e1SPrashanth Swaminathan
2506*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h, src/x86/win32.S, src/x86/ffi.c: Back out
2507*1fd5a2e1SPrashanth Swaminathan	stdcall changes.
2508*1fd5a2e1SPrashanth Swaminathan
2509*1fd5a2e1SPrashanth Swaminathan2008-02-26  Anthony Green  <[email protected]>
2510*1fd5a2e1SPrashanth Swaminathan	    Thomas Heller  <[email protected]>
2511*1fd5a2e1SPrashanth Swaminathan
2512*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_closure_SYSV_inner): Change C++ comment to C
2513*1fd5a2e1SPrashanth Swaminathan	comment.
2514*1fd5a2e1SPrashanth Swaminathan
2515*1fd5a2e1SPrashanth Swaminathan2008-02-03  Timothy Wall  <[email protected]>
2516*1fd5a2e1SPrashanth Swaminathan
2517*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (FFI_INIT_TRAMPOLINE_STDCALL): Calculate jump return
2518*1fd5a2e1SPrashanth Swaminathan	  offset based on code pointer, not data pointer.
2519*1fd5a2e1SPrashanth Swaminathan
2520*1fd5a2e1SPrashanth Swaminathan2008-01-31  Timothy Wall <[email protected]>
2521*1fd5a2e1SPrashanth Swaminathan
2522*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_stdcall.c: Add test for stdcall
2523*1fd5a2e1SPrashanth Swaminathan	closures.
2524*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h: Increase size of trampoline for stdcall
2525*1fd5a2e1SPrashanth Swaminathan	closures.
2526*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S: Add assembly for stdcall closure.
2527*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Initialize stdcall closure trampoline.
2528*1fd5a2e1SPrashanth Swaminathan
2529*1fd5a2e1SPrashanth Swaminathan2009-06-04  Andrew Haley  <[email protected]>
2530*1fd5a2e1SPrashanth Swaminathan
2531*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Change void (*)() to void (*)(void).
2532*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Likewise.
2533*1fd5a2e1SPrashanth Swaminathan
2534*1fd5a2e1SPrashanth Swaminathan2009-06-04  Andrew Haley  <[email protected]>
2535*1fd5a2e1SPrashanth Swaminathan
2536*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Insert licence header.
2537*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S: Likewise.
2538*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S: Likewise.
2539*1fd5a2e1SPrashanth Swaminathan
2540*1fd5a2e1SPrashanth Swaminathan	* src/sh64/ffi.c: Change void (*)() to void (*)(void).
2541*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Likewise.
2542*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c: Likewise.
2543*1fd5a2e1SPrashanth Swaminathan	* src/m32r/ffi.c: Likewise.
2544*1fd5a2e1SPrashanth Swaminathan	* src/sh64/ffi.c: Likewise.
2545*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c: Likewise.
2546*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c: Likewise.
2547*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S: Likewise.
2548*1fd5a2e1SPrashanth Swaminathan	* src/frv/ffi.c: Likewise.
2549*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffi.c: Likewise.
2550*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.c: Likewise.
2551*1fd5a2e1SPrashanth Swaminathan	* src/pa/hpux32.S: Likewise.
2552*1fd5a2e1SPrashanth Swaminathan	* src/ia64/unix.S: Likewise.
2553*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c: Likewise.
2554*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c: Likewise.
2555*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c: Likewise.
2556*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c: Likewise.
2557*1fd5a2e1SPrashanth Swaminathan
2558*1fd5a2e1SPrashanth Swaminathan2008-02-15  David Daney  <[email protected]>
2559*1fd5a2e1SPrashanth Swaminathan
2560*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (USE__BUILTIN___CLEAR_CACHE):
2561*1fd5a2e1SPrashanth Swaminathan	Define (conditionally), and use it to include cachectl.h.
2562*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Fix cache flushing.
2563*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h (_ABIN32, _ABI64, _ABIO32): Define.
2564*1fd5a2e1SPrashanth Swaminathan
2565*1fd5a2e1SPrashanth Swaminathan2009-06-04  Andrew Haley  <[email protected]>
2566*1fd5a2e1SPrashanth Swaminathan
2567*1fd5a2e1SPrashanth Swaminathan	include/ffi.h.in,
2568*1fd5a2e1SPrashanth Swaminathan	src/arm/ffitarget.h,
2569*1fd5a2e1SPrashanth Swaminathan	src/arm/ffi.c,
2570*1fd5a2e1SPrashanth Swaminathan	src/arm/sysv.S,
2571*1fd5a2e1SPrashanth Swaminathan	src/powerpc/ffitarget.h,
2572*1fd5a2e1SPrashanth Swaminathan	src/closures.c,
2573*1fd5a2e1SPrashanth Swaminathan	src/sh64/ffitarget.h,
2574*1fd5a2e1SPrashanth Swaminathan	src/sh64/ffi.c,
2575*1fd5a2e1SPrashanth Swaminathan	src/sh64/sysv.S,
2576*1fd5a2e1SPrashanth Swaminathan	src/types.c,
2577*1fd5a2e1SPrashanth Swaminathan	src/x86/ffi64.c,
2578*1fd5a2e1SPrashanth Swaminathan	src/x86/ffitarget.h,
2579*1fd5a2e1SPrashanth Swaminathan	src/x86/win32.S,
2580*1fd5a2e1SPrashanth Swaminathan	src/x86/darwin.S,
2581*1fd5a2e1SPrashanth Swaminathan	src/x86/ffi.c,
2582*1fd5a2e1SPrashanth Swaminathan	src/x86/sysv.S,
2583*1fd5a2e1SPrashanth Swaminathan	src/x86/unix64.S,
2584*1fd5a2e1SPrashanth Swaminathan	src/alpha/ffitarget.h,
2585*1fd5a2e1SPrashanth Swaminathan	src/alpha/ffi.c,
2586*1fd5a2e1SPrashanth Swaminathan	src/alpha/osf.S,
2587*1fd5a2e1SPrashanth Swaminathan	src/m68k/ffitarget.h,
2588*1fd5a2e1SPrashanth Swaminathan	src/frv/ffitarget.h,
2589*1fd5a2e1SPrashanth Swaminathan	src/frv/ffi.c,
2590*1fd5a2e1SPrashanth Swaminathan	src/s390/ffitarget.h,
2591*1fd5a2e1SPrashanth Swaminathan	src/s390/sysv.S,
2592*1fd5a2e1SPrashanth Swaminathan	src/cris/ffitarget.h,
2593*1fd5a2e1SPrashanth Swaminathan	src/pa/linux.S,
2594*1fd5a2e1SPrashanth Swaminathan	src/pa/ffitarget.h,
2595*1fd5a2e1SPrashanth Swaminathan	src/pa/ffi.c,
2596*1fd5a2e1SPrashanth Swaminathan	src/raw_api.c,
2597*1fd5a2e1SPrashanth Swaminathan	src/ia64/ffitarget.h,
2598*1fd5a2e1SPrashanth Swaminathan	src/ia64/unix.S,
2599*1fd5a2e1SPrashanth Swaminathan	src/ia64/ffi.c,
2600*1fd5a2e1SPrashanth Swaminathan	src/ia64/ia64_flags.h,
2601*1fd5a2e1SPrashanth Swaminathan	src/java_raw_api.c,
2602*1fd5a2e1SPrashanth Swaminathan	src/debug.c,
2603*1fd5a2e1SPrashanth Swaminathan	src/sparc/v9.S,
2604*1fd5a2e1SPrashanth Swaminathan	src/sparc/ffitarget.h,
2605*1fd5a2e1SPrashanth Swaminathan	src/sparc/ffi.c,
2606*1fd5a2e1SPrashanth Swaminathan	src/sparc/v8.S,
2607*1fd5a2e1SPrashanth Swaminathan	src/mips/ffitarget.h,
2608*1fd5a2e1SPrashanth Swaminathan	src/mips/n32.S,
2609*1fd5a2e1SPrashanth Swaminathan	src/mips/o32.S,
2610*1fd5a2e1SPrashanth Swaminathan	src/mips/ffi.c,
2611*1fd5a2e1SPrashanth Swaminathan	src/prep_cif.c,
2612*1fd5a2e1SPrashanth Swaminathan	src/sh/ffitarget.h,
2613*1fd5a2e1SPrashanth Swaminathan	src/sh/ffi.c,
2614*1fd5a2e1SPrashanth Swaminathan	src/sh/sysv.S: Update license text.
2615*1fd5a2e1SPrashanth Swaminathan
2616*1fd5a2e1SPrashanth Swaminathan2009-05-22  Dave Korn  <[email protected]>
2617*1fd5a2e1SPrashanth Swaminathan
2618*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (_ffi_closure_STDCALL):  New function.
2619*1fd5a2e1SPrashanth Swaminathan	(.eh_frame):  Add FDE for it.
2620*1fd5a2e1SPrashanth Swaminathan
2621*1fd5a2e1SPrashanth Swaminathan2009-05-22  Dave Korn  <[email protected]>
2622*1fd5a2e1SPrashanth Swaminathan
2623*1fd5a2e1SPrashanth Swaminathan	* configure.ac:  Also check if assembler supports pc-relative
2624*1fd5a2e1SPrashanth Swaminathan	relocs on X86_WIN32 targets.
2625*1fd5a2e1SPrashanth Swaminathan	* configure:  Regenerate.
2626*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (ffi_prep_args):  Declare extern, not global.
2627*1fd5a2e1SPrashanth Swaminathan	(_ffi_call_SYSV):  Add missing function type symbol .def and
2628*1fd5a2e1SPrashanth Swaminathan	add EH markup labels.
2629*1fd5a2e1SPrashanth Swaminathan	(_ffi_call_STDCALL):  Likewise.
2630*1fd5a2e1SPrashanth Swaminathan	(_ffi_closure_SYSV):  Likewise.
2631*1fd5a2e1SPrashanth Swaminathan	(_ffi_closure_raw_SYSV):  Likewise.
2632*1fd5a2e1SPrashanth Swaminathan	(.eh_frame):  Add hand-crafted EH data.
2633*1fd5a2e1SPrashanth Swaminathan
2634*1fd5a2e1SPrashanth Swaminathan2009-04-09  Jakub Jelinek  <[email protected]>
2635*1fd5a2e1SPrashanth Swaminathan
2636*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Change copyright header to refer to
2637*1fd5a2e1SPrashanth Swaminathan	version 3 of the GNU General Public License and to point readers
2638*1fd5a2e1SPrashanth Swaminathan	at the COPYING3 file and the FSF's license web page.
2639*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/call.exp: Likewise.
2640*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/special.exp: Likewise.
2641*1fd5a2e1SPrashanth Swaminathan
2642*1fd5a2e1SPrashanth Swaminathan2009-03-01  Ralf Wildenhues  <[email protected]>
2643*1fd5a2e1SPrashanth Swaminathan
2644*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2645*1fd5a2e1SPrashanth Swaminathan
2646*1fd5a2e1SPrashanth Swaminathan2008-12-18  Rainer Orth  <[email protected]>
2647*1fd5a2e1SPrashanth Swaminathan
2648*1fd5a2e1SPrashanth Swaminathan	PR libffi/26048
2649*1fd5a2e1SPrashanth Swaminathan	* configure.ac (HAVE_AS_X86_PCREL): New test.
2650*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2651*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Regenerate.
2652*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S [!FFI_NO_RAW_API]: Precalculate
2653*1fd5a2e1SPrashanth Swaminathan	RAW_CLOSURE_CIF_OFFSET, RAW_CLOSURE_FUN_OFFSET,
2654*1fd5a2e1SPrashanth Swaminathan	RAW_CLOSURE_USER_DATA_OFFSET for the Solaris 10/x86 assembler.
2655*1fd5a2e1SPrashanth Swaminathan	(.eh_frame): Only use SYMBOL-. iff HAVE_AS_X86_PCREL.
2656*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S (.Lstore_table): Move to .text section.
2657*1fd5a2e1SPrashanth Swaminathan	(.Lload_table): Likewise.
2658*1fd5a2e1SPrashanth Swaminathan	(.eh_frame): Only use SYMBOL-. iff HAVE_AS_X86_PCREL.
2659*1fd5a2e1SPrashanth Swaminathan
2660*1fd5a2e1SPrashanth Swaminathan2008-12-18  Ralf Wildenhues  <[email protected]>
2661*1fd5a2e1SPrashanth Swaminathan
2662*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2663*1fd5a2e1SPrashanth Swaminathan
2664*1fd5a2e1SPrashanth Swaminathan2008-11-21  Eric Botcazou  <[email protected]>
2665*1fd5a2e1SPrashanth Swaminathan
2666*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_prep_cif_machdep): Add support for
2667*1fd5a2e1SPrashanth Swaminathan	signed/unsigned int8/16 return values.
2668*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S (ffi_call_v8): Likewise.
2669*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_v8): Likewise.
2670*1fd5a2e1SPrashanth Swaminathan
2671*1fd5a2e1SPrashanth Swaminathan2008-09-26  Peter O'Gorman  <[email protected]>
2672*1fd5a2e1SPrashanth Swaminathan	    Steve Ellcey  <[email protected]>
2673*1fd5a2e1SPrashanth Swaminathan
2674*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate for new libtool.
2675*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Ditto.
2676*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Ditto.
2677*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Ditto.
2678*1fd5a2e1SPrashanth Swaminathan
2679*1fd5a2e1SPrashanth Swaminathan2008-08-25  Andreas Tobler  <[email protected]>
2680*1fd5a2e1SPrashanth Swaminathan
2681*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h (ffi_abi): Add FFI_LINUX and
2682*1fd5a2e1SPrashanth Swaminathan	FFI_LINUX_SOFT_FLOAT to the POWERPC_FREEBSD enum.
2683*1fd5a2e1SPrashanth Swaminathan	Add note about flag bits used for FFI_SYSV_TYPE_SMALL_STRUCT.
2684*1fd5a2e1SPrashanth Swaminathan	Adjust copyright notice.
2685*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Add two new flags to indicate if we have one
2686*1fd5a2e1SPrashanth Swaminathan	register or two register to use for FFI_SYSV structs.
2687*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Pass the right register flag introduced above.
2688*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Fix the return type for
2689*1fd5a2e1SPrashanth Swaminathan	FFI_SYSV_TYPE_SMALL_STRUCT. Comment.
2690*1fd5a2e1SPrashanth Swaminathan	Adjust copyright notice.
2691*1fd5a2e1SPrashanth Swaminathan
2692*1fd5a2e1SPrashanth Swaminathan2008-07-16  Kaz Kojima  <[email protected]>
2693*1fd5a2e1SPrashanth Swaminathan
2694*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c (ffi_prep_closure_loc): Turn INSN into an unsigned
2695*1fd5a2e1SPrashanth Swaminathan	int.
2696*1fd5a2e1SPrashanth Swaminathan
2697*1fd5a2e1SPrashanth Swaminathan2008-06-17  Ralf Wildenhues  <[email protected]>
2698*1fd5a2e1SPrashanth Swaminathan
2699*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2700*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
2701*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerate.
2702*1fd5a2e1SPrashanth Swaminathan
2703*1fd5a2e1SPrashanth Swaminathan2008-06-07  Joseph Myers  <[email protected]>
2704*1fd5a2e1SPrashanth Swaminathan
2705*1fd5a2e1SPrashanth Swaminathan	* configure.ac (parisc*-*-linux*, powerpc-*-sysv*,
2706*1fd5a2e1SPrashanth Swaminathan	powerpc-*-beos*): Remove.
2707*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2708*1fd5a2e1SPrashanth Swaminathan
2709*1fd5a2e1SPrashanth Swaminathan2008-05-09  Julian Brown  <[email protected]>
2710*1fd5a2e1SPrashanth Swaminathan
2711*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (LTLDFLAGS): New.
2712*1fd5a2e1SPrashanth Swaminathan	(libffi_la_LDFLAGS): Use above.
2713*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
2714*1fd5a2e1SPrashanth Swaminathan
2715*1fd5a2e1SPrashanth Swaminathan2008-04-18  Paolo Bonzini  <[email protected]>
2716*1fd5a2e1SPrashanth Swaminathan
2717*1fd5a2e1SPrashanth Swaminathan	PR bootstrap/35457
2718*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerate.
2719*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2720*1fd5a2e1SPrashanth Swaminathan
2721*1fd5a2e1SPrashanth Swaminathan2008-03-26  Kaz Kojima  <[email protected]>
2722*1fd5a2e1SPrashanth Swaminathan
2723*1fd5a2e1SPrashanth Swaminathan	* src/sh/sysv.S: Add .note.GNU-stack on Linux.
2724*1fd5a2e1SPrashanth Swaminathan	* src/sh64/sysv.S: Likewise.
2725*1fd5a2e1SPrashanth Swaminathan
2726*1fd5a2e1SPrashanth Swaminathan2008-03-26  Daniel Jacobowitz  <[email protected]>
2727*1fd5a2e1SPrashanth Swaminathan
2728*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Fix ARM comment marker.
2729*1fd5a2e1SPrashanth Swaminathan
2730*1fd5a2e1SPrashanth Swaminathan2008-03-26  Jakub Jelinek  <[email protected]>
2731*1fd5a2e1SPrashanth Swaminathan
2732*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S: Add .note.GNU-stack on Linux.
2733*1fd5a2e1SPrashanth Swaminathan	* src/s390/sysv.S: Likewise.
2734*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Likewise.
2735*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Likewise.
2736*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S: Likewise.
2737*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S: Likewise.
2738*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: Likewise.
2739*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S: Likewise.
2740*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S: Likewise.
2741*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Likewise.
2742*1fd5a2e1SPrashanth Swaminathan
2743*1fd5a2e1SPrashanth Swaminathan2008-03-16  Ralf Wildenhues  <[email protected]>
2744*1fd5a2e1SPrashanth Swaminathan
2745*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerate.
2746*1fd5a2e1SPrashanth Swaminathan	* configure: Likewise.
2747*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Likewise.
2748*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Likewise.
2749*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Likewise.
2750*1fd5a2e1SPrashanth Swaminathan
2751*1fd5a2e1SPrashanth Swaminathan2008-02-12  Bjoern Koenig  <[email protected]>
2752*1fd5a2e1SPrashanth Swaminathan	    Andreas Tobler  <[email protected]>
2753*1fd5a2e1SPrashanth Swaminathan
2754*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add amd64-*-freebsd* target.
2755*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2756*1fd5a2e1SPrashanth Swaminathan
2757*1fd5a2e1SPrashanth Swaminathan2008-01-30  H.J. Lu  <[email protected]>
2758*1fd5a2e1SPrashanth Swaminathan
2759*1fd5a2e1SPrashanth Swaminathan	PR libffi/34612
2760*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (ffi_closure_SYSV): Pop 4 byte from stack when
2761*1fd5a2e1SPrashanth Swaminathan	returning struct.
2762*1fd5a2e1SPrashanth Swaminathan
2763*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/call.exp: Add "-O2 -fomit-frame-pointer"
2764*1fd5a2e1SPrashanth Swaminathan	tests.
2765*1fd5a2e1SPrashanth Swaminathan
2766*1fd5a2e1SPrashanth Swaminathan2008-01-24  David Edelsohn  <[email protected]>
2767*1fd5a2e1SPrashanth Swaminathan
2768*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
2769*1fd5a2e1SPrashanth Swaminathan
2770*1fd5a2e1SPrashanth Swaminathan2008-01-06  Andreas Tobler  <[email protected]>
2771*1fd5a2e1SPrashanth Swaminathan
2772*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): Fix thinko.
2773*1fd5a2e1SPrashanth Swaminathan
2774*1fd5a2e1SPrashanth Swaminathan2008-01-05  Andreas Tobler  <[email protected]>
2775*1fd5a2e1SPrashanth Swaminathan
2776*1fd5a2e1SPrashanth Swaminathan	PR testsuite/32843
2777*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): Add code for
2778*1fd5a2e1SPrashanth Swaminathan	signed/unsigned int8/16 for X86_DARWIN.
2779*1fd5a2e1SPrashanth Swaminathan	Updated copyright info.
2780*1fd5a2e1SPrashanth Swaminathan	Handle one and two byte structs with special cif->flags.
2781*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h: Add special types for one and two byte structs.
2782*1fd5a2e1SPrashanth Swaminathan	Updated copyright info.
2783*1fd5a2e1SPrashanth Swaminathan	* src/x86/darwin.S (ffi_call_SYSV): Rewrite to use a jump table like
2784*1fd5a2e1SPrashanth Swaminathan	sysv.S
2785*1fd5a2e1SPrashanth Swaminathan	Remove code to pop args from the stack after call.
2786*1fd5a2e1SPrashanth Swaminathan	Special-case signed/unsigned for int8/16, one and two byte structs.
2787*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_raw_SYSV): Handle FFI_TYPE_UINT8,
2788*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_SINT8, FFI_TYPE_UINT16, FFI_TYPE_SINT16, FFI_TYPE_UINT32,
2789*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_SINT32.
2790*1fd5a2e1SPrashanth Swaminathan	Updated copyright info.
2791*1fd5a2e1SPrashanth Swaminathan
2792*1fd5a2e1SPrashanth Swaminathan2007-12-08  David Daney  <[email protected]>
2793*1fd5a2e1SPrashanth Swaminathan
2794*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S (ffi_call_N32):  Replace dadd with ADDU, dsub with
2795*1fd5a2e1SPrashanth Swaminathan	SUBU, add with ADDU and use smaller code sequences.
2796*1fd5a2e1SPrashanth Swaminathan
2797*1fd5a2e1SPrashanth Swaminathan2007-12-07  David Daney  <[email protected]>
2798*1fd5a2e1SPrashanth Swaminathan
2799*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (ffi_prep_cif_machdep): Handle long double return
2800*1fd5a2e1SPrashanth Swaminathan	type.
2801*1fd5a2e1SPrashanth Swaminathan
2802*1fd5a2e1SPrashanth Swaminathan2007-12-06  David Daney  <[email protected]>
2803*1fd5a2e1SPrashanth Swaminathan
2804*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (FFI_SIZEOF_JAVA_RAW): Define if not	already
2805*1fd5a2e1SPrashanth Swaminathan	defined.
2806*1fd5a2e1SPrashanth Swaminathan	(ffi_java_raw): New typedef.
2807*1fd5a2e1SPrashanth Swaminathan	(ffi_java_raw_call, ffi_java_ptrarray_to_raw,
2808*1fd5a2e1SPrashanth Swaminathan	ffi_java_raw_to_ptrarray): Change parameter types from ffi_raw to
2809*1fd5a2e1SPrashanth Swaminathan	ffi_java_raw.
2810*1fd5a2e1SPrashanth Swaminathan	(ffi_java_raw_closure) : Same.
2811*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_java_raw_closure, ffi_prep_java_raw_closure_loc): Change
2812*1fd5a2e1SPrashanth Swaminathan	parameter types.
2813*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api.c (ffi_java_raw_size):  Replace FFI_SIZEOF_ARG with
2814*1fd5a2e1SPrashanth Swaminathan	FFI_SIZEOF_JAVA_RAW.
2815*1fd5a2e1SPrashanth Swaminathan	(ffi_java_raw_to_ptrarray): Change type of raw to ffi_java_raw.
2816*1fd5a2e1SPrashanth Swaminathan	Replace FFI_SIZEOF_ARG with FFI_SIZEOF_JAVA_RAW. Use
2817*1fd5a2e1SPrashanth Swaminathan	sizeof(ffi_java_raw) for alignment calculations.
2818*1fd5a2e1SPrashanth Swaminathan	(ffi_java_ptrarray_to_raw): Same.
2819*1fd5a2e1SPrashanth Swaminathan	(ffi_java_rvalue_to_raw): Add special handling for FFI_TYPE_POINTER
2820*1fd5a2e1SPrashanth Swaminathan	if FFI_SIZEOF_JAVA_RAW == 4.
2821*1fd5a2e1SPrashanth Swaminathan	(ffi_java_raw_to_rvalue): Same.
2822*1fd5a2e1SPrashanth Swaminathan	(ffi_java_raw_call): Change type of raw to ffi_java_raw.
2823*1fd5a2e1SPrashanth Swaminathan	(ffi_java_translate_args): Same.
2824*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_java_raw_closure_loc, ffi_prep_java_raw_closure): Change
2825*1fd5a2e1SPrashanth Swaminathan	parameter types.
2826*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h (FFI_SIZEOF_JAVA_RAW): Define for N32 ABI.
2827*1fd5a2e1SPrashanth Swaminathan
2828*1fd5a2e1SPrashanth Swaminathan2007-12-06  David Daney  <[email protected]>
2829*1fd5a2e1SPrashanth Swaminathan
2830*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S (ffi_closure_N32): Use 64-bit add instruction on
2831*1fd5a2e1SPrashanth Swaminathan	pointer values.
2832*1fd5a2e1SPrashanth Swaminathan
2833*1fd5a2e1SPrashanth Swaminathan2007-12-01  Andreas Tobler  <[email protected]>
2834*1fd5a2e1SPrashanth Swaminathan
2835*1fd5a2e1SPrashanth Swaminathan	PR libffi/31937
2836*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h: Introduce new ABI FFI_LINUX_SOFT_FLOAT.
2837*1fd5a2e1SPrashanth Swaminathan	Add local FFI_TYPE_UINT128 to handle soft-float long-double-128.
2838*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Distinguish between __NO_FPRS__ and not and
2839*1fd5a2e1SPrashanth Swaminathan	set the NUM_FPR_ARG_REGISTERS according to.
2840*1fd5a2e1SPrashanth Swaminathan	Add support for potential soft-float support under hard-float
2841*1fd5a2e1SPrashanth Swaminathan	architecture.
2842*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args_SYSV): Set NUM_FPR_ARG_REGISTERS to 0 in case of
2843*1fd5a2e1SPrashanth Swaminathan	FFI_LINUX_SOFT_FLOAT, handle float, doubles and long-doubles according
2844*1fd5a2e1SPrashanth Swaminathan	to the FFI_LINUX_SOFT_FLOAT ABI.
2845*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Likewise.
2846*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Likewise.
2847*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Make sure not to store float/double
2848*1fd5a2e1SPrashanth Swaminathan	on archs where __NO_FPRS__ is true.
2849*1fd5a2e1SPrashanth Swaminathan	Add FFI_TYPE_UINT128 support.
2850*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Add support for soft-float long-double-128.
2851*1fd5a2e1SPrashanth Swaminathan	Adjust copyright notice.
2852*1fd5a2e1SPrashanth Swaminathan
2853*1fd5a2e1SPrashanth Swaminathan2007-11-25  Andreas Tobler  <[email protected]>
2854*1fd5a2e1SPrashanth Swaminathan
2855*1fd5a2e1SPrashanth Swaminathan	* src/closures.c: Move defintion of MAYBE_UNUSED from here to ...
2856*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h: ... here.
2857*1fd5a2e1SPrashanth Swaminathan	Update copyright.
2858*1fd5a2e1SPrashanth Swaminathan
2859*1fd5a2e1SPrashanth Swaminathan2007-11-17  Andreas Tobler  <[email protected]>
2860*1fd5a2e1SPrashanth Swaminathan
2861*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Load correct cr to compare if we have long double.
2862*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S: Likewise.
2863*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Add a comment to show which part goes into cr6.
2864*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_ldl.c: New test.
2865*1fd5a2e1SPrashanth Swaminathan
2866*1fd5a2e1SPrashanth Swaminathan2007-09-04    <[email protected]>
2867*1fd5a2e1SPrashanth Swaminathan
2868*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S (UNWIND): New.
2869*1fd5a2e1SPrashanth Swaminathan	(Whole file): Conditionally compile unwinder directives.
2870*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Add unwinder directives.
2871*1fd5a2e1SPrashanth Swaminathan
2872*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_prep_args): Align structs by at least 4 bytes.
2873*1fd5a2e1SPrashanth Swaminathan	Only treat r0 as a struct address if we're actually returning a
2874*1fd5a2e1SPrashanth Swaminathan	struct by address.
2875*1fd5a2e1SPrashanth Swaminathan	Only copy the bytes that are actually within a struct.
2876*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): A Composite Type not larger than 4 bytes
2877*1fd5a2e1SPrashanth Swaminathan	is returned in r0, not passed by address.
2878*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Allocate a word-sized temporary for the case where
2879*1fd5a2e1SPrashanth Swaminathan	a composite is returned in r0.
2880*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_incoming_args_SYSV): Align as necessary.
2881*1fd5a2e1SPrashanth Swaminathan
2882*1fd5a2e1SPrashanth Swaminathan2007-08-05  Steven Newbury  <[email protected]>
2883*1fd5a2e1SPrashanth Swaminathan
2884*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (FFI_INIT_TRAMPOLINE): Use __clear_cache instead of
2885*1fd5a2e1SPrashanth Swaminathan	directly using the sys_cacheflush syscall.
2886*1fd5a2e1SPrashanth Swaminathan
2887*1fd5a2e1SPrashanth Swaminathan2007-07-27  Andrew Haley  <[email protected]>
2888*1fd5a2e1SPrashanth Swaminathan
2889*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S (ffi_closure_SYSV): Add soft-float.
2890*1fd5a2e1SPrashanth Swaminathan
2891*1fd5a2e1SPrashanth Swaminathan2007-09-03  Maciej W. Rozycki  <[email protected]>
2892*1fd5a2e1SPrashanth Swaminathan
2893*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Unify MIPS_IRIX and MIPS_LINUX into MIPS.
2894*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Likewise.
2895*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
2896*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Likewise.
2897*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Likewise.
2898*1fd5a2e1SPrashanth Swaminathan	* configure: Likewise.
2899*1fd5a2e1SPrashanth Swaminathan
2900*1fd5a2e1SPrashanth Swaminathan2007-08-24  David Daney  <[email protected]>
2901*1fd5a2e1SPrashanth Swaminathan
2902*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_sl.c: New test.
2903*1fd5a2e1SPrashanth Swaminathan
2904*1fd5a2e1SPrashanth Swaminathan2007-08-10  David Daney  <[email protected]>
2905*1fd5a2e1SPrashanth Swaminathan
2906*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_ushort.c,
2907*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint16.c,
2908*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct1.c,
2909*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct3.c,
2910*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_7_1_byte.c,
2911*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct5.c,
2912*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_double.c,
2913*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct7.c,
2914*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_sint.c,
2915*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct9.c,
2916*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_20byte1.c,
2917*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_sshortchar.c,
2918*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_sint64.c,
2919*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3byte2.c,
2920*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_schar.c,
2921*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_uchar.c,
2922*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_19byte.c,
2923*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_9byte1.c,
2924*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_float.c,
2925*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn1.c,
2926*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/problem1.c,
2927*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn3.c,
2928*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_sshort.c,
2929*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn5.c,
2930*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_double.c,
2931*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct.c,
2932*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_2byte.c,
2933*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct10.c,
2934*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_4byte.c,
2935*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_6byte.c,
2936*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_8byte.c,
2937*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_sshort.c,
2938*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_sint16.c,
2939*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint32.c,
2940*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_20byte.c,
2941*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_float.c,
2942*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct2.c,
2943*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_5_1_byte.c,
2944*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct4.c,
2945*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_24byte.c,
2946*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct6.c,
2947*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_64byte.c,
2948*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct8.c,
2949*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_uint.c,
2950*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_ushortchar.c,
2951*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_schar.c,
2952*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_uchar.c,
2953*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint64.c,
2954*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_ulonglong.c,
2955*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_longdouble.c,
2956*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_1_1byte.c,
2957*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_12byte.c,
2958*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3_1byte.c,
2959*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3byte1.c,
2960*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_4_1byte.c,
2961*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_6_1_byte.c,
2962*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_16byte.c,
2963*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_18byte.c,
2964*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn0.c,
2965*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_9byte2.c,
2966*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn2.c,
2967*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn4.c,
2968*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_ushort.c,
2969*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn6.c,
2970*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_5byte.c,
2971*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_pointer.c,
2972*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_7byte.c,
2973*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_sint32.c,
2974*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/unwindtest_ffi_call.cc,
2975*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/unwindtest.cc: Remove xfail for mips64*-*-*.
2976*1fd5a2e1SPrashanth Swaminathan
2977*1fd5a2e1SPrashanth Swaminathan2007-08-10  David Daney  <[email protected]>
2978*1fd5a2e1SPrashanth Swaminathan
2979*1fd5a2e1SPrashanth Swaminathan	PR libffi/28313
2980*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Don't treat mips64 as a special case.
2981*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (nodist_libffi_la_SOURCES): Add n32.S.
2982*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate
2983*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Ditto.
2984*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Ditto.
2985*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h (REG_L, REG_S, SUBU, ADDU, SRL, LI): Indent.
2986*1fd5a2e1SPrashanth Swaminathan	(LA, EH_FRAME_ALIGN, FDE_ADDR_BYTES): New preprocessor macros.
2987*1fd5a2e1SPrashanth Swaminathan	(FFI_DEFAULT_ABI): Set for n64 case.
2988*1fd5a2e1SPrashanth Swaminathan	(FFI_CLOSURES, FFI_TRAMPOLINE_SIZE): Define for n32 and n64 cases.
2989*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S (ffi_call_N32): Add debug macros and labels for FDE.
2990*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_N32): New function.
2991*1fd5a2e1SPrashanth Swaminathan	(.eh_frame): New section
2992*1fd5a2e1SPrashanth Swaminathan	* src/mips/o32.S: Clean up comments.
2993*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_O32): Pass ffi_closure parameter in $12.
2994*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c: Use FFI_MIPS_N32 instead of
2995*1fd5a2e1SPrashanth Swaminathan	_MIPS_SIM == _ABIN32 throughout.
2996*1fd5a2e1SPrashanth Swaminathan	(FFI_MIPS_STOP_HERE): New, use in place of
2997*1fd5a2e1SPrashanth Swaminathan	ffi_stop_here.
2998*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Use unsigned long to hold pointer values.  Rewrite
2999*1fd5a2e1SPrashanth Swaminathan	to support n32/n64 ABIs.
3000*1fd5a2e1SPrashanth Swaminathan	(calc_n32_struct_flags): Rewrite.
3001*1fd5a2e1SPrashanth Swaminathan	(calc_n32_return_struct_flags): Remove unused variable.  Reverse
3002*1fd5a2e1SPrashanth Swaminathan	position of flag bits.
3003*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Rewrite n32 portion.
3004*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Enable for n64.  Add special handling for small structure
3005*1fd5a2e1SPrashanth Swaminathan	return values.
3006*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Add n32 and n64 support.
3007*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_mips_inner_O32): Add cast to silence warning.
3008*1fd5a2e1SPrashanth Swaminathan	(copy_struct_N32, ffi_closure_mips_inner_N32): New functions.
3009*1fd5a2e1SPrashanth Swaminathan
3010*1fd5a2e1SPrashanth Swaminathan2007-08-08  David Daney  <[email protected]>
3011*1fd5a2e1SPrashanth Swaminathan
3012*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h (ffi_type_mylong): Remove definition.
3013*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint16.c (main): Use correct type
3014*1fd5a2e1SPrashanth Swaminathan	specifiers.
3015*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct1.c (main): Ditto.
3016*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sint.c (main): Ditto.
3017*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct9.c (main): Ditto.
3018*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte1.c (main): Ditto.
3019*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte1.c (main): Ditto.
3020*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn1.c (main): Ditto.
3021*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn3.c (main): Ditto.
3022*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_dbl2.c (main): Ditto.
3023*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sshort.c (main): Ditto.
3024*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_fl3.c (main): Ditto.
3025*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn5.c (main): Ditto.
3026*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct.c (main): Ditto.
3027*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct10.c (main): Ditto.
3028*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_ll1.c (main): Ditto.
3029*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_8byte.c (main): Ditto.
3030*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint32.c (main): Ditto.
3031*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint16.c (main): Ditto.
3032*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte.c (main): Ditto.
3033*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct2.c (main): Ditto.
3034*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_24byte.c (main): Ditto.
3035*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct6.c (main): Ditto.
3036*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint.c (main): Ditto.
3037*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_12byte.c (main): Ditto.
3038*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_16byte.c (main): Ditto.
3039*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c (main): Ditto.
3040*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte2.c (main): Ditto.
3041*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn2.c (main): Ditto.
3042*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_dbl1.c (main): Ditto.
3043*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn4.c (main): Ditto.
3044*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn6.c (main): Ditto.
3045*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint32.c (main): Ditto.
3046*1fd5a2e1SPrashanth Swaminathan
3047*1fd5a2e1SPrashanth Swaminathan2007-08-07  Andrew Haley  <[email protected]>
3048*1fd5a2e1SPrashanth Swaminathan
3049*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (ffi_closure_raw_SYSV): Fix typo in previous
3050*1fd5a2e1SPrashanth Swaminathan	checkin.
3051*1fd5a2e1SPrashanth Swaminathan
3052*1fd5a2e1SPrashanth Swaminathan2007-08-06  Andrew Haley  <[email protected]>
3053*1fd5a2e1SPrashanth Swaminathan
3054*1fd5a2e1SPrashanth Swaminathan	PR testsuite/32843
3055*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (ffi_closure_raw_SYSV): Handle FFI_TYPE_UINT8,
3056*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_SINT8, FFI_TYPE_UINT16, FFI_TYPE_SINT16, FFI_TYPE_UINT32,
3057*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_SINT32.
3058*1fd5a2e1SPrashanth Swaminathan
3059*1fd5a2e1SPrashanth Swaminathan2007-08-02  David Daney  <[email protected]>
3060*1fd5a2e1SPrashanth Swaminathan
3061*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_ul.c (main): Define return type as
3062*1fd5a2e1SPrashanth Swaminathan	ffi_arg.  Use proper printf conversion specifier.
3063*1fd5a2e1SPrashanth Swaminathan
3064*1fd5a2e1SPrashanth Swaminathan2007-07-30  Andrew Haley  <[email protected]>
3065*1fd5a2e1SPrashanth Swaminathan
3066*1fd5a2e1SPrashanth Swaminathan	PR testsuite/32843
3067*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): in x86 case, add code for
3068*1fd5a2e1SPrashanth Swaminathan	signed/unsigned int8/16.
3069*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (ffi_call_SYSV): Rewrite to:
3070*1fd5a2e1SPrashanth Swaminathan	Use a jump table.
3071*1fd5a2e1SPrashanth Swaminathan	Remove code to pop args from the stack after call.
3072*1fd5a2e1SPrashanth Swaminathan	Special-case signed/unsigned int8/16.
3073*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_sc.c (main): Revert.
3074*1fd5a2e1SPrashanth Swaminathan
3075*1fd5a2e1SPrashanth Swaminathan2007-07-26  Richard Guenther  <[email protected]>
3076*1fd5a2e1SPrashanth Swaminathan
3077*1fd5a2e1SPrashanth Swaminathan	PR testsuite/32843
3078*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_sc.c (main): Verify call
3079*1fd5a2e1SPrashanth Swaminathan	result as signed char, not ffi_arg.
3080*1fd5a2e1SPrashanth Swaminathan
3081*1fd5a2e1SPrashanth Swaminathan2007-07-16  Rainer Orth  <[email protected]>
3082*1fd5a2e1SPrashanth Swaminathan
3083*1fd5a2e1SPrashanth Swaminathan	* configure.ac (i?86-*-solaris2.1[0-9]): Set TARGET to X86_64.
3084*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3085*1fd5a2e1SPrashanth Swaminathan
3086*1fd5a2e1SPrashanth Swaminathan2007-07-11  David Daney  <[email protected]>
3087*1fd5a2e1SPrashanth Swaminathan
3088*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c: Don't include sys/cachectl.h.
3089*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Use __builtin___clear_cache() instead of
3090*1fd5a2e1SPrashanth Swaminathan	cacheflush().
3091*1fd5a2e1SPrashanth Swaminathan
3092*1fd5a2e1SPrashanth Swaminathan2007-05-18  Aurelien Jarno  <[email protected]>
3093*1fd5a2e1SPrashanth Swaminathan
3094*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_prep_closure_loc): Renamed and ajusted
3095*1fd5a2e1SPrashanth Swaminathan	from (ffi_prep_closure): ... this.
3096*1fd5a2e1SPrashanth Swaminathan	(FFI_INIT_TRAMPOLINE): Adjust.
3097*1fd5a2e1SPrashanth Swaminathan
3098*1fd5a2e1SPrashanth Swaminathan2005-12-31  Phil Blundell  <[email protected]>
3099*1fd5a2e1SPrashanth Swaminathan
3100*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_prep_incoming_args_SYSV,
3101*1fd5a2e1SPrashanth Swaminathan	ffi_closure_SYSV_inner, ffi_prep_closure): New, add closure support.
3102*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S(ffi_closure_SYSV): Likewise.
3103*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffitarget.h (FFI_TRAMPOLINE_SIZE): Likewise.
3104*1fd5a2e1SPrashanth Swaminathan	(FFI_CLOSURES): Enable closure support.
3105*1fd5a2e1SPrashanth Swaminathan
3106*1fd5a2e1SPrashanth Swaminathan2007-07-03  Andrew Haley  <[email protected]>
3107*1fd5a2e1SPrashanth Swaminathan
3108*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_ushort.c,
3109*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint16.c,
3110*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct1.c,
3111*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct3.c,
3112*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_7_1_byte.c,
3113*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_double.c,
3114*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct5.c,
3115*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct7.c,
3116*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_sint.c,
3117*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct9.c,
3118*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_20byte1.c,
3119*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_sshortchar.c,
3120*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_sint64.c,
3121*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3byte2.c,
3122*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_schar.c,
3123*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_uchar.c,
3124*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_19byte.c,
3125*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_9byte1.c,
3126*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_float.c,
3127*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn1.c,
3128*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/problem1.c,
3129*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn3.c,
3130*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_sshort.c,
3131*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn5.c,
3132*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_double.c,
3133*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_2byte.c,
3134*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct.c,
3135*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct10.c,
3136*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_4byte.c,
3137*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_6byte.c,
3138*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_8byte.c,
3139*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_sshort.c,
3140*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint32.c,
3141*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_sint16.c,
3142*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_float.c,
3143*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_20byte.c,
3144*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_5_1_byte.c,
3145*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct2.c,
3146*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_24byte.c,
3147*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct4.c,
3148*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct6.c,
3149*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_64byte.c,
3150*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/nested_struct8.c,
3151*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_uint.c,
3152*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_multi_ushortchar.c,
3153*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_schar.c,
3154*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_uchar.c,
3155*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint64.c,
3156*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_ulonglong.c,
3157*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_longdouble.c,
3158*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_1_1byte.c,
3159*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_12byte.c,
3160*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3_1byte.c,
3161*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3byte1.c,
3162*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_4_1byte.c,
3163*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_6_1_byte.c,
3164*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_16byte.c,
3165*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_18byte.c,
3166*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn0.c,
3167*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_9byte2.c,
3168*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn2.c,
3169*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn4.c,
3170*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_ushort.c,
3171*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_fn6.c,
3172*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_5byte.c,
3173*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_pointer.c,
3174*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_7byte.c,
3175*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_sint32.c,
3176*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/unwindtest_ffi_call.cc,
3177*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/unwindtest.cc: Enable for ARM.
3178*1fd5a2e1SPrashanth Swaminathan
3179*1fd5a2e1SPrashanth Swaminathan2007-07-05  H.J. Lu  <[email protected]>
3180*1fd5a2e1SPrashanth Swaminathan
3181*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerated.
3182*1fd5a2e1SPrashanth Swaminathan
3183*1fd5a2e1SPrashanth Swaminathan2007-06-02  Paolo Bonzini  <[email protected]>
3184*1fd5a2e1SPrashanth Swaminathan
3185*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3186*1fd5a2e1SPrashanth Swaminathan
3187*1fd5a2e1SPrashanth Swaminathan2007-05-23  Steve Ellcey  <[email protected]>
3188*1fd5a2e1SPrashanth Swaminathan
3189*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
3190*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3191*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerate.
3192*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
3193*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerate.
3194*1fd5a2e1SPrashanth Swaminathan
3195*1fd5a2e1SPrashanth Swaminathan2007-05-10  Roman Zippel <[email protected]>
3196*1fd5a2e1SPrashanth Swaminathan
3197*1fd5a2e1SPrashanth Swaminathan	* src/m68k/ffi.c (ffi_prep_incoming_args_SYSV,
3198*1fd5a2e1SPrashanth Swaminathan	ffi_closure_SYSV_inner,ffi_prep_closure): New, add closure support.
3199*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S(ffi_closure_SYSV,ffi_closure_struct_SYSV): Likewise.
3200*1fd5a2e1SPrashanth Swaminathan	* src/m68k/ffitarget.h (FFI_TRAMPOLINE_SIZE): Likewise.
3201*1fd5a2e1SPrashanth Swaminathan	(FFI_CLOSURES): Enable closure support.
3202*1fd5a2e1SPrashanth Swaminathan
3203*1fd5a2e1SPrashanth Swaminathan2007-05-10  Roman Zippel <[email protected]>
3204*1fd5a2e1SPrashanth Swaminathan
3205*1fd5a2e1SPrashanth Swaminathan	* configure.ac (HAVE_AS_CFI_PSEUDO_OP): New test.
3206*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3207*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Regenerate.
3208*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S (CFI_STARTPROC,CFI_ENDPROC,
3209*1fd5a2e1SPrashanth Swaminathan	CFI_OFFSET,CFI_DEF_CFA): New macros.
3210*1fd5a2e1SPrashanth Swaminathan	(ffi_call_SYSV): Add callframe annotation.
3211*1fd5a2e1SPrashanth Swaminathan
3212*1fd5a2e1SPrashanth Swaminathan2007-05-10  Roman Zippel <[email protected]>
3213*1fd5a2e1SPrashanth Swaminathan
3214*1fd5a2e1SPrashanth Swaminathan	* src/m68k/ffi.c (ffi_prep_args,ffi_prep_cif_machdep): Fix
3215*1fd5a2e1SPrashanth Swaminathan	numerous test suite failures.
3216*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S (ffi_call_SYSV): Likewise.
3217*1fd5a2e1SPrashanth Swaminathan
3218*1fd5a2e1SPrashanth Swaminathan2007-04-11  Paolo Bonzini  <[email protected]>
3219*1fd5a2e1SPrashanth Swaminathan
3220*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Bring up to date.
3221*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
3222*1fd5a2e1SPrashanth Swaminathan	* src/frv/eabi.S: Remove RCS keyword.
3223*1fd5a2e1SPrashanth Swaminathan
3224*1fd5a2e1SPrashanth Swaminathan2007-04-06  Richard Henderson  <[email protected]>
3225*1fd5a2e1SPrashanth Swaminathan
3226*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Tidy target case.
3227*1fd5a2e1SPrashanth Swaminathan	(HAVE_LONG_DOUBLE): Allow the target to override.
3228*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3229*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Don't define ffi_type_foo if
3230*1fd5a2e1SPrashanth Swaminathan	LIBFFI_HIDE_BASIC_TYPES is defined.
3231*1fd5a2e1SPrashanth Swaminathan	(ffi_type_longdouble): If not HAVE_LONG_DOUBLE, define
3232*1fd5a2e1SPrashanth Swaminathan	to ffi_type_double.
3233*1fd5a2e1SPrashanth Swaminathan	* types.c (LIBFFI_HIDE_BASIC_TYPES): Define.
3234*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPEDEF, ffi_type_void): Mark the data const.
3235*1fd5a2e1SPrashanth Swaminathan	(ffi_type_longdouble): Special case for Alpha.  Don't define
3236*1fd5a2e1SPrashanth Swaminathan	if long double == double.
3237*1fd5a2e1SPrashanth Swaminathan
3238*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c (FFI_TYPE_LONGDOUBLE): Assert unique value.
3239*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Handle it as the 128-bit type.
3240*1fd5a2e1SPrashanth Swaminathan	(ffi_call, ffi_closure_osf_inner): Likewise.
3241*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_osf_inner): Likewise.  Mark hidden.
3242*1fd5a2e1SPrashanth Swaminathan	(ffi_call_osf, ffi_closure_osf): Mark hidden.
3243*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffitarget.h (FFI_LAST_ABI): Tidy definition.
3244*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S (ffi_call_osf, ffi_closure_osf): Mark hidden.
3245*1fd5a2e1SPrashanth Swaminathan	(load_table): Handle 128-bit long double.
3246*1fd5a2e1SPrashanth Swaminathan
3247*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float4.c: Add -mieee for alpha.
3248*1fd5a2e1SPrashanth Swaminathan
3249*1fd5a2e1SPrashanth Swaminathan2007-04-06  Tom Tromey  <[email protected]>
3250*1fd5a2e1SPrashanth Swaminathan
3251*1fd5a2e1SPrashanth Swaminathan	PR libffi/31491:
3252*1fd5a2e1SPrashanth Swaminathan	* README: Fixed bug in example.
3253*1fd5a2e1SPrashanth Swaminathan
3254*1fd5a2e1SPrashanth Swaminathan2007-04-03  Jakub Jelinek  <[email protected]>
3255*1fd5a2e1SPrashanth Swaminathan
3256*1fd5a2e1SPrashanth Swaminathan	* src/closures.c: Include sys/statfs.h.
3257*1fd5a2e1SPrashanth Swaminathan	(_GNU_SOURCE): Define on Linux.
3258*1fd5a2e1SPrashanth Swaminathan	(FFI_MMAP_EXEC_SELINUX): Define.
3259*1fd5a2e1SPrashanth Swaminathan	(selinux_enabled): New variable.
3260*1fd5a2e1SPrashanth Swaminathan	(selinux_enabled_check): New function.
3261*1fd5a2e1SPrashanth Swaminathan	(is_selinux_enabled): Define.
3262*1fd5a2e1SPrashanth Swaminathan	(dlmmap): Use it.
3263*1fd5a2e1SPrashanth Swaminathan
3264*1fd5a2e1SPrashanth Swaminathan2007-03-24  Uros Bizjak  <[email protected]>
3265*1fd5a2e1SPrashanth Swaminathan
3266*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_fl2.c (return_fl): Mark as static.
3267*1fd5a2e1SPrashanth Swaminathan	Use 'volatile float sum' to create sum of floats to avoid false
3268*1fd5a2e1SPrashanth Swaminathan	negative due to excess precision on ix86 targets.
3269*1fd5a2e1SPrashanth Swaminathan	(main): Ditto.
3270*1fd5a2e1SPrashanth Swaminathan
3271*1fd5a2e1SPrashanth Swaminathan2007-03-08  Alexandre Oliva  <[email protected]>
3272*1fd5a2e1SPrashanth Swaminathan
3273*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (flush_icache): Fix left-over from previous
3274*1fd5a2e1SPrashanth Swaminathan	patch.
3275*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Remove unneeded casts.  Add needed ones.
3276*1fd5a2e1SPrashanth Swaminathan
3277*1fd5a2e1SPrashanth Swaminathan2007-03-07  Alexandre Oliva  <[email protected]>
3278*1fd5a2e1SPrashanth Swaminathan
3279*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (ffi_closure_alloc, ffi_closure_free): New.
3280*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): New.
3281*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_raw_closure_loc): New.
3282*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_java_raw_closure_loc): New.
3283*1fd5a2e1SPrashanth Swaminathan	* src/closures.c: New file.
3284*1fd5a2e1SPrashanth Swaminathan	* src/dlmalloc.c [FFI_MMAP_EXEC_WRIT] (struct malloc_segment):
3285*1fd5a2e1SPrashanth Swaminathan	Replace sflags with exec_offset.
3286*1fd5a2e1SPrashanth Swaminathan	[FFI_MMAP_EXEC_WRIT] (mmap_exec_offset, add_segment_exec_offset,
3287*1fd5a2e1SPrashanth Swaminathan	sub_segment_exec_offset): New macros.
3288*1fd5a2e1SPrashanth Swaminathan	(get_segment_flags, set_segment_flags, check_segment_merge): New
3289*1fd5a2e1SPrashanth Swaminathan	macros.
3290*1fd5a2e1SPrashanth Swaminathan	(is_mmapped_segment, is_extern_segment): Use get_segment_flags.
3291*1fd5a2e1SPrashanth Swaminathan	(add_segment, sys_alloc, create_mspace, create_mspace_with_base,
3292*1fd5a2e1SPrashanth Swaminathan	destroy_mspace): Use new macros.
3293*1fd5a2e1SPrashanth Swaminathan	(sys_alloc): Silence warning.
3294*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (libffi_la_SOURCES): Add src/closures.c.
3295*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
3296*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif [FFI_CLOSURES] (ffi_prep_closure): Implement in
3297*1fd5a2e1SPrashanth Swaminathan	terms of ffi_prep_closure_loc.
3298*1fd5a2e1SPrashanth Swaminathan	* src/raw_api.c (ffi_prep_raw_closure_loc): Renamed and adjusted
3299*1fd5a2e1SPrashanth Swaminathan	from...
3300*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_raw_closure): ... this.  Re-implement in terms of the
3301*1fd5a2e1SPrashanth Swaminathan	renamed version.
3302*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api (ffi_prep_java_raw_closure_loc): Renamed and
3303*1fd5a2e1SPrashanth Swaminathan	adjusted from...
3304*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_java_raw_closure): ... this.  Re-implement in terms of
3305*1fd5a2e1SPrashanth Swaminathan	the renamed version.
3306*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c (ffi_prep_closure_loc): Renamed from
3307*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): ... this.
3308*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.c: Likewise.
3309*1fd5a2e1SPrashanth Swaminathan	* src/cris/ffi.c: Likewise.  Adjust.
3310*1fd5a2e1SPrashanth Swaminathan	* src/frv/ffi.c: Likewise.
3311*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c: Likewise.
3312*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c: Likewise.
3313*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c: Likewise.
3314*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffi.c: Likewise.
3315*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c: Likewise.
3316*1fd5a2e1SPrashanth Swaminathan	* src/sh64/ffi.c: Likewise.
3317*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c: Likewise.
3318*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c: Likewise.
3319*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Likewise.
3320*1fd5a2e1SPrashanth Swaminathan	(FFI_INIT_TRAMPOLINE): Adjust.
3321*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_raw_closure_loc): Renamed and adjusted from...
3322*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_raw_closure): ... this.
3323*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_closure_loc): Renamed from
3324*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): ... this.
3325*1fd5a2e1SPrashanth Swaminathan	(flush_icache): Adjust.
3326*1fd5a2e1SPrashanth Swaminathan
3327*1fd5a2e1SPrashanth Swaminathan2007-03-07  Alexandre Oliva  <[email protected]>
3328*1fd5a2e1SPrashanth Swaminathan
3329*1fd5a2e1SPrashanth Swaminathan	* src/dlmalloc.c: New file, imported version 2.8.3 of Doug
3330*1fd5a2e1SPrashanth Swaminathan	Lea's malloc.
3331*1fd5a2e1SPrashanth Swaminathan
3332*1fd5a2e1SPrashanth Swaminathan2007-03-01  Brooks Moses  <[email protected]>
3333*1fd5a2e1SPrashanth Swaminathan
3334*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add dummy install-pdf target.
3335*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate
3336*1fd5a2e1SPrashanth Swaminathan
3337*1fd5a2e1SPrashanth Swaminathan2007-02-13  Andreas Krebbel  <[email protected]>
3338*1fd5a2e1SPrashanth Swaminathan
3339*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffi.c (ffi_prep_args, ffi_prep_cif_machdep,
3340*1fd5a2e1SPrashanth Swaminathan	ffi_closure_helper_SYSV): Add long double handling.
3341*1fd5a2e1SPrashanth Swaminathan
3342*1fd5a2e1SPrashanth Swaminathan2007-02-02  Jakub Jelinek  <[email protected]>
3343*1fd5a2e1SPrashanth Swaminathan
3344*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S (ffi_call_LINUX64): Move restore of r2
3345*1fd5a2e1SPrashanth Swaminathan	immediately after bctrl instruction.
3346*1fd5a2e1SPrashanth Swaminathan
3347*1fd5a2e1SPrashanth Swaminathan2007-01-18  Alexandre Oliva  <[email protected]>
3348*1fd5a2e1SPrashanth Swaminathan
3349*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (all-recursive, install-recursive,
3350*1fd5a2e1SPrashanth Swaminathan	mostlyclean-recursive, clean-recursive, distclean-recursive,
3351*1fd5a2e1SPrashanth Swaminathan	maintainer-clean-recursive): Add missing targets.
3352*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
3353*1fd5a2e1SPrashanth Swaminathan
3354*1fd5a2e1SPrashanth Swaminathan2006-12-14  Andreas Tobler  <[email protected]>
3355*1fd5a2e1SPrashanth Swaminathan
3356*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add TARGET for x86_64-*-darwin*.
3357*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (nodist_libffi_la_SOURCES): Add rules for 64-bit sources
3358*1fd5a2e1SPrashanth Swaminathan	for X86_DARWIN.
3359*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h: Set trampoline size for x86_64-*-darwin*.
3360*1fd5a2e1SPrashanth Swaminathan	* src/x86/darwin64.S: New file for x86_64-*-darwin* support.
3361*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3362*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
3363*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
3364*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerate.
3365*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest_ffi_call.cc: New test case for
3366*1fd5a2e1SPrashanth Swaminathan	ffi_call only.
3367*1fd5a2e1SPrashanth Swaminathan
3368*1fd5a2e1SPrashanth Swaminathan2006-12-13  Andreas Tobler <[email protected]>
3369*1fd5a2e1SPrashanth Swaminathan
3370*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerate with aclocal -I .. as written in the
3371*1fd5a2e1SPrashanth Swaminathan	Makefile.am.
3372*1fd5a2e1SPrashanth Swaminathan
3373*1fd5a2e1SPrashanth Swaminathan2006-10-31  Geoffrey Keating  <[email protected]>
3374*1fd5a2e1SPrashanth Swaminathan
3375*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (darwin_adjust_aggregate_sizes): New.
3376*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Call darwin_adjust_aggregate_sizes for
3377*1fd5a2e1SPrashanth Swaminathan	Darwin.
3378*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct4.c: Remove Darwin XFAIL.
3379*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct6.c: Remove Darwin XFAIL.
3380*1fd5a2e1SPrashanth Swaminathan
3381*1fd5a2e1SPrashanth Swaminathan2006-10-10  Paolo Bonzini  <[email protected]>
3382*1fd5a2e1SPrashanth Swaminathan	    Sandro Tolaini  <[email protected]>
3383*1fd5a2e1SPrashanth Swaminathan
3384*1fd5a2e1SPrashanth Swaminathan	* configure.ac [i*86-*-darwin*]: Set X86_DARWIN symbol and
3385*1fd5a2e1SPrashanth Swaminathan	conditional.
3386*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerated.
3387*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (nodist_libffi_la_SOURCES) [X86_DARWIN]: New case.
3388*1fd5a2e1SPrashanth Swaminathan	(EXTRA_DIST): Add src/x86/darwin.S.
3389*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
3390*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerated.
3391*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerated.
3392*1fd5a2e1SPrashanth Swaminathan
3393*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep) [X86_DARWIN]: Treat like
3394*1fd5a2e1SPrashanth Swaminathan	X86_WIN32, and additionally align stack to 16 bytes.
3395*1fd5a2e1SPrashanth Swaminathan	* src/x86/darwin.S: New, based on sysv.S.
3396*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif) [X86_DARWIN]: Align > 8-byte structs.
3397*1fd5a2e1SPrashanth Swaminathan
3398*1fd5a2e1SPrashanth Swaminathan2006-09-12  David Daney  <[email protected]>
3399*1fd5a2e1SPrashanth Swaminathan
3400*1fd5a2e1SPrashanth Swaminathan	PR libffi/23935
3401*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.am: Install both ffi.h and ffitarget.h in
3402*1fd5a2e1SPrashanth Swaminathan	$(libdir)/gcc/$(target_alias)/$(gcc_version)/include.
3403*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerated for automake 1.9.6.
3404*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
3405*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerated.
3406*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerated.
3407*1fd5a2e1SPrashanth Swaminathan
3408*1fd5a2e1SPrashanth Swaminathan2006-08-17  Andreas Tobler  <[email protected]>
3409*1fd5a2e1SPrashanth Swaminathan
3410*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h (struct): Revert accidental commit.
3411*1fd5a2e1SPrashanth Swaminathan
3412*1fd5a2e1SPrashanth Swaminathan2006-08-15  Andreas Tobler  <[email protected]>
3413*1fd5a2e1SPrashanth Swaminathan
3414*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h: Remove lint directives.
3415*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Likewise.
3416*1fd5a2e1SPrashanth Swaminathan
3417*1fd5a2e1SPrashanth Swaminathan2006-07-25  Torsten Schoenfeld  <[email protected]>
3418*1fd5a2e1SPrashanth Swaminathan
3419*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (ffi_type_ulong, ffi_type_slong): Define correctly
3420*1fd5a2e1SPrashanth Swaminathan	for 32-bit architectures.
3421*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_ul.c: New test case.
3422*1fd5a2e1SPrashanth Swaminathan
3423*1fd5a2e1SPrashanth Swaminathan2006-07-19  David Daney  <[email protected]>
3424*1fd5a2e1SPrashanth Swaminathan
3425*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn6.c: Remove xfail for mips,
3426*1fd5a2e1SPrashanth Swaminathan	xfail remains for mips64.
3427*1fd5a2e1SPrashanth Swaminathan
3428*1fd5a2e1SPrashanth Swaminathan2006-05-23  Carlos O'Donell  <[email protected]>
3429*1fd5a2e1SPrashanth Swaminathan
3430*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add install-html target. Add install-html to .PHONY
3431*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
3432*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerate.
3433*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
3434*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerate.
3435*1fd5a2e1SPrashanth Swaminathan
3436*1fd5a2e1SPrashanth Swaminathan2006-05-18  John David Anglin  <[email protected]>
3437*1fd5a2e1SPrashanth Swaminathan
3438*1fd5a2e1SPrashanth Swaminathan	* pa/ffi.c (ffi_prep_args_pa32): Load floating point arguments from
3439*1fd5a2e1SPrashanth Swaminathan	stack slot.
3440*1fd5a2e1SPrashanth Swaminathan
3441*1fd5a2e1SPrashanth Swaminathan2006-04-22  Andreas Tobler  <[email protected]>
3442*1fd5a2e1SPrashanth Swaminathan
3443*1fd5a2e1SPrashanth Swaminathan	* README: Remove notice about 'Crazy Comments'.
3444*1fd5a2e1SPrashanth Swaminathan	* src/debug.c: Remove lint directives. Cleanup white spaces.
3445*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api.c: Likewise.
3446*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c: Likewise.
3447*1fd5a2e1SPrashanth Swaminathan	* src/raw_api.c: Likewise.
3448*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c: Delete. No longer needed, all test cases migrated
3449*1fd5a2e1SPrashanth Swaminathan	to the testsuite.
3450*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c: Remove lint directives.
3451*1fd5a2e1SPrashanth Swaminathan	* src/m32r/ffi.c: Likewise.
3452*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.c: Likewise.
3453*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Likewise.
3454*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c: Likewise.
3455*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c: Likewise.
3456*1fd5a2e1SPrashanth Swaminathan	* src/sh64/ffi.c: Likewise.
3457*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Likewise.
3458*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float2.c: Likewise.
3459*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/promotion.c: Likewise.
3460*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct1.c: Likewise.
3461*1fd5a2e1SPrashanth Swaminathan
3462*1fd5a2e1SPrashanth Swaminathan2006-04-13  Andreas Tobler  <[email protected]>
3463*1fd5a2e1SPrashanth Swaminathan
3464*1fd5a2e1SPrashanth Swaminathan	* src/pa/hpux32.S: Correct unwind offset calculation for
3465*1fd5a2e1SPrashanth Swaminathan	ffi_closure_pa32.
3466*1fd5a2e1SPrashanth Swaminathan	* src/pa/linux.S: Likewise.
3467*1fd5a2e1SPrashanth Swaminathan
3468*1fd5a2e1SPrashanth Swaminathan2006-04-12  James E Wilson  <[email protected]>
3469*1fd5a2e1SPrashanth Swaminathan
3470*1fd5a2e1SPrashanth Swaminathan	PR libgcj/26483
3471*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c (stf_spill, ldf_fill): Rewrite as macros.
3472*1fd5a2e1SPrashanth Swaminathan	(hfa_type_load): Call stf_spill.
3473*1fd5a2e1SPrashanth Swaminathan	(hfa_type_store): Call ldf_fill.
3474*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Adjust calls to above routines.  Add local temps for
3475*1fd5a2e1SPrashanth Swaminathan	macro result.
3476*1fd5a2e1SPrashanth Swaminathan
3477*1fd5a2e1SPrashanth Swaminathan2006-04-10  Matthias Klose  <[email protected]>
3478*1fd5a2e1SPrashanth Swaminathan
3479*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi-init): Recognize multilib
3480*1fd5a2e1SPrashanth Swaminathan	directory names containing underscores.
3481*1fd5a2e1SPrashanth Swaminathan
3482*1fd5a2e1SPrashanth Swaminathan2006-04-07  James E Wilson  <[email protected]>
3483*1fd5a2e1SPrashanth Swaminathan
3484*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float4.c: New testcase.
3485*1fd5a2e1SPrashanth Swaminathan
3486*1fd5a2e1SPrashanth Swaminathan2006-04-05  John David Anglin  <[email protected]>
3487*1fd5a2e1SPrashanth Swaminathan	    Andreas Tobler  <[email protected]>
3488*1fd5a2e1SPrashanth Swaminathan
3489*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add PA_HPUX port.
3490*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
3491*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Likewise.
3492*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Likewise.
3493*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add PA_HPUX rules.
3494*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3495*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffitarget.h: Rename linux target to PA_LINUX.
3496*1fd5a2e1SPrashanth Swaminathan	Add PA_HPUX and PA64_HPUX.
3497*1fd5a2e1SPrashanth Swaminathan	Rename FFI_LINUX ABI to FFI_PA32 ABI.
3498*1fd5a2e1SPrashanth Swaminathan	(FFI_TRAMPOLINE_SIZE): Define for 32-bit HP-UX targets.
3499*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT2): Define.
3500*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT4): Likewise.
3501*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT8): Likewise.
3502*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT3): Redefine.
3503*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT5): Likewise.
3504*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT6): Likewise.
3505*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT7): Likewise.
3506*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.c (ROUND_DOWN): Delete.
3507*1fd5a2e1SPrashanth Swaminathan	(fldw, fstw, fldd, fstd): Use '__asm__'.
3508*1fd5a2e1SPrashanth Swaminathan	(ffi_struct_type): Add support for FFI_TYPE_SMALL_STRUCT2,
3509*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_SMALL_STRUCT4 and FFI_TYPE_SMALL_STRUCT8.
3510*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args_LINUX): Rename to ffi_prep_args_pa32. Update comment.
3511*1fd5a2e1SPrashanth Swaminathan	Simplify incrementing of stack slot variable. Change type of local
3512*1fd5a2e1SPrashanth Swaminathan	'n' to unsigned int.
3513*1fd5a2e1SPrashanth Swaminathan	(ffi_size_stack_LINUX): Rename to ffi_size_stack_pa32. Handle long
3514*1fd5a2e1SPrashanth Swaminathan	double on PA_HPUX.
3515*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Likewise.
3516*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Likewise.
3517*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_inner_LINUX): Rename to ffi_closure_inner_pa32. Change
3518*1fd5a2e1SPrashanth Swaminathan	return type to ffi_status. Simplify incrementing of stack slot
3519*1fd5a2e1SPrashanth Swaminathan	variable. Only copy floating point argument registers when PA_LINUX
3520*1fd5a2e1SPrashanth Swaminathan	is true. Reformat debug statement.
3521*1fd5a2e1SPrashanth Swaminathan	Add support for FFI_TYPE_SMALL_STRUCT2, FFI_TYPE_SMALL_STRUCT4 and
3522*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_SMALL_STRUCT8.
3523*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_LINUX): Rename to ffi_closure_pa32. Add 'extern' to
3524*1fd5a2e1SPrashanth Swaminathan	declaration.
3525*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): Make linux trampoline conditional on PA_LINUX.
3526*1fd5a2e1SPrashanth Swaminathan	Add nops to cache flush.  Add trampoline for PA_HPUX.
3527*1fd5a2e1SPrashanth Swaminathan	* src/pa/hpux32.S: New file.
3528*1fd5a2e1SPrashanth Swaminathan	* src/pa/linux.S (ffi_call_LINUX): Rename to ffi_call_pa32. Rename
3529*1fd5a2e1SPrashanth Swaminathan	ffi_prep_args_LINUX to ffi_prep_args_pa32.
3530*1fd5a2e1SPrashanth Swaminathan	Localize labels. Add support for 2, 4 and 8-byte small structs. Handle
3531*1fd5a2e1SPrashanth Swaminathan	unaligned destinations in 3, 5, 6 and 7-byte small structs. Order
3532*1fd5a2e1SPrashanth Swaminathan	argument type checks so that common argument types appear first.
3533*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_LINUX): Rename to ffi_closure_pa32. Rename
3534*1fd5a2e1SPrashanth Swaminathan	ffi_closure_inner_LINUX to ffi_closure_inner_pa32.
3535*1fd5a2e1SPrashanth Swaminathan
3536*1fd5a2e1SPrashanth Swaminathan2006-03-24  Alan Modra  <[email protected]>
3537*1fd5a2e1SPrashanth Swaminathan
3538*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h (enum ffi_abi): Add FFI_LINUX.  Default
3539*1fd5a2e1SPrashanth Swaminathan	for 32-bit using IBM extended double format.  Fix FFI_LAST_ABI.
3540*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Handle linux variant of
3541*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_LONGDOUBLE.
3542*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args64): Assert using IBM extended double.
3543*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Don't munge FFI_TYPE_LONGDOUBLE type.
3544*1fd5a2e1SPrashanth Swaminathan	Handle FFI_LINUX FFI_TYPE_LONGDOUBLE return and args.
3545*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Handle FFI_LINUX.
3546*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Non FFI_LINUX long double return needs
3547*1fd5a2e1SPrashanth Swaminathan	gpr3 return pointer as for struct return.  Handle FFI_LINUX
3548*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_LONGDOUBLE return and args.  Don't increment "nf"
3549*1fd5a2e1SPrashanth Swaminathan	unnecessarily.
3550*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Load both f1 and f2
3551*1fd5a2e1SPrashanth Swaminathan	for FFI_TYPE_LONGDOUBLE.  Move epilogue insns into case table.
3552*1fd5a2e1SPrashanth Swaminathan	Don't use r6 as pointer to results, instead use sp offset.  Don't
3553*1fd5a2e1SPrashanth Swaminathan	make a special call to load lr with case table address, instead
3554*1fd5a2e1SPrashanth Swaminathan	use offset from previous call.
3555*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S (ffi_call_SYSV): Save long double return.
3556*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S (ffi_call_LINUX64): Simplify long double
3557*1fd5a2e1SPrashanth Swaminathan	return.
3558*1fd5a2e1SPrashanth Swaminathan
3559*1fd5a2e1SPrashanth Swaminathan2006-03-15  Kaz Kojima  <[email protected]>
3560*1fd5a2e1SPrashanth Swaminathan
3561*1fd5a2e1SPrashanth Swaminathan	* src/sh64/ffi.c (ffi_prep_cif_machdep): Handle float arguments
3562*1fd5a2e1SPrashanth Swaminathan	passed with FP registers correctly.
3563*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Likewise.
3564*1fd5a2e1SPrashanth Swaminathan	* src/sh64/sysv.S: Likewise.
3565*1fd5a2e1SPrashanth Swaminathan
3566*1fd5a2e1SPrashanth Swaminathan2006-03-01  Andreas Tobler  <[email protected]>
3567*1fd5a2e1SPrashanth Swaminathan
3568*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc (closure_test_fn): Mark cif,
3569*1fd5a2e1SPrashanth Swaminathan	args and userdata unused.
3570*1fd5a2e1SPrashanth Swaminathan	(closure_test_fn1): Mark cif and userdata unused.
3571*1fd5a2e1SPrashanth Swaminathan	(main): Remove unused res.
3572*1fd5a2e1SPrashanth Swaminathan
3573*1fd5a2e1SPrashanth Swaminathan2006-02-28  Andreas Tobler  <[email protected]>
3574*1fd5a2e1SPrashanth Swaminathan
3575*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/call.exp: Adjust FSF address. Add test runs for
3576*1fd5a2e1SPrashanth Swaminathan	-O2, -O3, -Os and the warning flags -W -Wall.
3577*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/special.exp: Likewise.
3578*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Add an __UNUSED__ macro to mark
3579*1fd5a2e1SPrashanth Swaminathan	unused parameter unused for gcc or else do nothing.
3580*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/ffitestcxx.h: Likewise.
3581*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_12byte.c (cls_struct_12byte_gn): Mark cif
3582*1fd5a2e1SPrashanth Swaminathan	and userdata unused.
3583*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_16byte.c (cls_struct_16byte_gn): Likewise.
3584*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_18byte.c (cls_struct_18byte_gn): Likewise.
3585*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_19byte.c (cls_struct_19byte_gn): Likewise.
3586*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_1_1byte.c (cls_struct_1_1byte_gn): Likewise.
3587*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte.c (cls_struct_20byte_gn): Likewise.
3588*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte1.c (cls_struct_20byte_gn): Likewise.
3589*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_24byte.c (cls_struct_24byte_gn): Likewise.
3590*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_2byte.c (cls_struct_2byte_gn): Likewise.
3591*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3_1byte.c (cls_struct_3_1byte_gn): Likewise.
3592*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte1.c (cls_struct_3byte_gn): Likewise.
3593*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte2.c (cls_struct_3byte_gn1): Likewise.
3594*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4_1byte.c (cls_struct_4_1byte_gn): Likewise.
3595*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4byte.c (cls_struct_4byte_gn): Likewise.
3596*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5_1_byte.c (cls_struct_5byte_gn): Likewise.
3597*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5byte.c (cls_struct_5byte_gn): Likewise.
3598*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_64byte.c (cls_struct_64byte_gn): Likewise.
3599*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6_1_byte.c (cls_struct_6byte_gn): Likewise.
3600*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6byte.c (cls_struct_6byte_gn): Likewise.
3601*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7_1_byte.c (cls_struct_7byte_gn): Likewise.
3602*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7byte.c (cls_struct_7byte_gn): Likewise.
3603*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_8byte.c (cls_struct_8byte_gn): Likewise.
3604*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte1.c (cls_struct_9byte_gn): Likewise.
3605*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte2.c (cls_struct_9byte_gn): Likewise.
3606*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_double.c (cls_struct_align_gn):
3607*1fd5a2e1SPrashanth Swaminathan	Likewise.
3608*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_float.c (cls_struct_align_gn):
3609*1fd5a2e1SPrashanth Swaminathan	Likewise.
3610*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble.c (cls_struct_align_gn):
3611*1fd5a2e1SPrashanth Swaminathan	Likewise.
3612*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_pointer.c (cls_struct_align_fn): Cast
3613*1fd5a2e1SPrashanth Swaminathan	void* to avoid compiler warning.
3614*1fd5a2e1SPrashanth Swaminathan	(main): Likewise.
3615*1fd5a2e1SPrashanth Swaminathan	(cls_struct_align_gn): Mark cif and userdata unused.
3616*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint16.c (cls_struct_align_gn):
3617*1fd5a2e1SPrashanth Swaminathan	Likewise.
3618*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint32.c (cls_struct_align_gn):
3619*1fd5a2e1SPrashanth Swaminathan	Likewise.
3620*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint64.c (cls_struct_align_gn):
3621*1fd5a2e1SPrashanth Swaminathan	Likewise.
3622*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint16.c (cls_struct_align_gn):
3623*1fd5a2e1SPrashanth Swaminathan	Likewise.
3624*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint32.c (cls_struct_align_gn):
3625*1fd5a2e1SPrashanth Swaminathan	Likewise.
3626*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double.c (cls_ret_double_fn): Likewise.
3627*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_float.c (cls_ret_float_fn): Likewise.
3628*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_schar.c (test_func_gn): Mark cif and
3629*1fd5a2e1SPrashanth Swaminathan	data unused.
3630*1fd5a2e1SPrashanth Swaminathan	(main): Cast res_call to silence gcc.
3631*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_sshort.c (test_func_gn): Mark cif and
3632*1fd5a2e1SPrashanth Swaminathan	data unused.
3633*1fd5a2e1SPrashanth Swaminathan	(main): Cast res_call to silence gcc.
3634*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_sshortchar.c (test_func_gn): Mark cif
3635*1fd5a2e1SPrashanth Swaminathan	and data unused.
3636*1fd5a2e1SPrashanth Swaminathan	(main): Cast res_call to silence gcc.
3637*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_uchar.c (test_func_gn): Mark cif and
3638*1fd5a2e1SPrashanth Swaminathan	data unused.
3639*1fd5a2e1SPrashanth Swaminathan	(main): Cast res_call to silence gcc.
3640*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_ushort.c (test_func_gn): Mark cif and
3641*1fd5a2e1SPrashanth Swaminathan	data unused.
3642*1fd5a2e1SPrashanth Swaminathan	(main): Cast res_call to silence gcc.
3643*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_ushortchar.c (test_func_gn): Mark cif
3644*1fd5a2e1SPrashanth Swaminathan	and data unused.
3645*1fd5a2e1SPrashanth Swaminathan	(main): Cast res_call to silence gcc.
3646*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_schar.c (cls_ret_schar_fn): Mark cif and
3647*1fd5a2e1SPrashanth Swaminathan	userdata unused.
3648*1fd5a2e1SPrashanth Swaminathan	(cls_ret_schar_fn): Cast printf parameter to silence gcc.
3649*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sint.c (cls_ret_sint_fn): Mark cif and
3650*1fd5a2e1SPrashanth Swaminathan	userdata unused.
3651*1fd5a2e1SPrashanth Swaminathan	(cls_ret_sint_fn): Cast printf parameter to silence gcc.
3652*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sshort.c (cls_ret_sshort_fn): Mark cif and
3653*1fd5a2e1SPrashanth Swaminathan	userdata unused.
3654*1fd5a2e1SPrashanth Swaminathan	(cls_ret_sshort_fn): Cast printf parameter to silence gcc.
3655*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uchar.c (cls_ret_uchar_fn):  Mark cif and
3656*1fd5a2e1SPrashanth Swaminathan	userdata unused.
3657*1fd5a2e1SPrashanth Swaminathan	(cls_ret_uchar_fn): Cast printf parameter to silence gcc.
3658*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint.c (cls_ret_uint_fn): Mark cif and
3659*1fd5a2e1SPrashanth Swaminathan	userdata unused.
3660*1fd5a2e1SPrashanth Swaminathan	(cls_ret_uint_fn): Cast printf parameter to silence gcc.
3661*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ulonglong.c (cls_ret_ulonglong_fn): Mark cif
3662*1fd5a2e1SPrashanth Swaminathan	and userdata unused.
3663*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ushort.c (cls_ret_ushort_fn): Mark cif and
3664*1fd5a2e1SPrashanth Swaminathan	userdata unused.
3665*1fd5a2e1SPrashanth Swaminathan	(cls_ret_ushort_fn): Cast printf parameter to silence gcc.
3666*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float.c (floating): Remove unused parameter e.
3667*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float1.c (main): Remove unused variable i.
3668*1fd5a2e1SPrashanth Swaminathan	Cleanup white spaces.
3669*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/negint.c (checking): Remove unused variable i.
3670*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct.c (cls_struct_combined_gn): Mark
3671*1fd5a2e1SPrashanth Swaminathan	cif and userdata unused.
3672*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct1.c (cls_struct_combined_gn):
3673*1fd5a2e1SPrashanth Swaminathan	Likewise.
3674*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct10.c (B_gn): Likewise.
3675*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct2.c (B_fn): Adjust printf
3676*1fd5a2e1SPrashanth Swaminathan	formatters to silence gcc.
3677*1fd5a2e1SPrashanth Swaminathan	(B_gn): Mark cif and userdata unused.
3678*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct3.c (B_gn): Mark cif and userdata
3679*1fd5a2e1SPrashanth Swaminathan	unused.
3680*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct4.c: Mention related PR.
3681*1fd5a2e1SPrashanth Swaminathan	(B_gn): Mark cif and userdata unused.
3682*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct5.c (B_gn): Mark cif and userdata
3683*1fd5a2e1SPrashanth Swaminathan	unused.
3684*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct6.c: Mention related PR.
3685*1fd5a2e1SPrashanth Swaminathan	(B_gn): Mark cif and userdata unused.
3686*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct7.c (B_gn): Mark cif and userdata
3687*1fd5a2e1SPrashanth Swaminathan	unused.
3688*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct8.c (B_gn): Likewise.
3689*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct9.c (B_gn): Likewise.
3690*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/problem1.c (stub): Likewise.
3691*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/pyobjc-tc.c (main): Cast the result to silence
3692*1fd5a2e1SPrashanth Swaminathan	gcc.
3693*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_fl2.c (return_fl): Add the note mentioned
3694*1fd5a2e1SPrashanth Swaminathan	in the last commit for this test case in the test case itself.
3695*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c (closure_test_fn0): Mark cif as
3696*1fd5a2e1SPrashanth Swaminathan	unused.
3697*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn1.c (closure_test_fn1): Likewise.
3698*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn2.c (closure_test_fn2): Likewise.
3699*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn3.c (closure_test_fn3): Likewise.
3700*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn4.c (closure_test_fn0): Likewise.
3701*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn5.c (closure_test_fn5): Likewise.
3702*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn6.c (closure_test_fn0): Likewise.
3703*1fd5a2e1SPrashanth Swaminathan
3704*1fd5a2e1SPrashanth Swaminathan2006-02-22  Kaz Kojima  <[email protected]>
3705*1fd5a2e1SPrashanth Swaminathan
3706*1fd5a2e1SPrashanth Swaminathan	* src/sh/sysv.S: Fix register numbers in the FDE for
3707*1fd5a2e1SPrashanth Swaminathan	ffi_closure_SYSV.
3708*1fd5a2e1SPrashanth Swaminathan
3709*1fd5a2e1SPrashanth Swaminathan2006-02-20  Andreas Tobler  <[email protected]>
3710*1fd5a2e1SPrashanth Swaminathan
3711*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_fl2.c (return_fl): Remove static
3712*1fd5a2e1SPrashanth Swaminathan	declaration to avoid a false negative on ix86. See PR323.
3713*1fd5a2e1SPrashanth Swaminathan
3714*1fd5a2e1SPrashanth Swaminathan2006-02-18  Kaz Kojima  <[email protected]>
3715*1fd5a2e1SPrashanth Swaminathan
3716*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c (ffi_closure_helper_SYSV): Remove unused variable
3717*1fd5a2e1SPrashanth Swaminathan	and cast integer to void * if needed.  Update the pointer to
3718*1fd5a2e1SPrashanth Swaminathan	the FP register saved area correctly.
3719*1fd5a2e1SPrashanth Swaminathan
3720*1fd5a2e1SPrashanth Swaminathan2006-02-17  Andreas Tobler  <[email protected]>
3721*1fd5a2e1SPrashanth Swaminathan
3722*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct6.c: XFAIL this test until PR25630
3723*1fd5a2e1SPrashanth Swaminathan	is fixed.
3724*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct4.c: Likewise.
3725*1fd5a2e1SPrashanth Swaminathan
3726*1fd5a2e1SPrashanth Swaminathan2006-02-16  Andreas Tobler  <[email protected]>
3727*1fd5a2e1SPrashanth Swaminathan
3728*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_dbl.c: New test case.
3729*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_dbl1.c: Likewise.
3730*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_dbl2.c: Likewise.
3731*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_fl.c: Likewise.
3732*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_fl1.c: Likewise.
3733*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_fl2.c: Likewise.
3734*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_fl3.c: Likewise.
3735*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn6.c: Likewise.
3736*1fd5a2e1SPrashanth Swaminathan
3737*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct2.c: Remove ffi_type_mylong
3738*1fd5a2e1SPrashanth Swaminathan	definition.
3739*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Add ffi_type_mylong definition
3740*1fd5a2e1SPrashanth Swaminathan	here to be used by other test cases too.
3741*1fd5a2e1SPrashanth Swaminathan
3742*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct10.c: New test case.
3743*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct9.c: Likewise.
3744*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct8.c: Likewise.
3745*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct7.c: Likewise.
3746*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct6.c: Likewise.
3747*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct5.c: Likewise.
3748*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct4.c: Likewise.
3749*1fd5a2e1SPrashanth Swaminathan
3750*1fd5a2e1SPrashanth Swaminathan2006-01-21  Andreas Tobler  <[email protected]>
3751*1fd5a2e1SPrashanth Swaminathan
3752*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Enable libffi for sparc64-*-freebsd*.
3753*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
3754*1fd5a2e1SPrashanth Swaminathan
3755*1fd5a2e1SPrashanth Swaminathan2006-01-18  Jakub Jelinek  <[email protected]>
3756*1fd5a2e1SPrashanth Swaminathan
3757*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S (smst_two_register): Don't call __ashldi3,
3758*1fd5a2e1SPrashanth Swaminathan	instead do the shifting inline.
3759*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Don't compute %r5
3760*1fd5a2e1SPrashanth Swaminathan	shift count unconditionally.  Simplify load sequences for 1, 2, 3, 4
3761*1fd5a2e1SPrashanth Swaminathan	and 8 byte structs, for the remaining struct sizes don't call
3762*1fd5a2e1SPrashanth Swaminathan	__lshrdi3, instead do the shifting inline.
3763*1fd5a2e1SPrashanth Swaminathan
3764*1fd5a2e1SPrashanth Swaminathan2005-12-07  Thiemo Seufer  <[email protected]>
3765*1fd5a2e1SPrashanth Swaminathan
3766*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h: Remove obsolete sgidefs.h include. Add
3767*1fd5a2e1SPrashanth Swaminathan	missing parentheses.
3768*1fd5a2e1SPrashanth Swaminathan	* src/mips/o32.S (ffi_call_O32): Code formatting. Define
3769*1fd5a2e1SPrashanth Swaminathan	and use A3_OFF, FP_OFF, RA_OFF. Micro-optimizations.
3770*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_O32): Likewise, but with newly defined A3_OFF2,
3771*1fd5a2e1SPrashanth Swaminathan	A2_OFF2, A1_OFF2, A0_OFF2, RA_OFF2, FP_OFF2, S0_OFF2, GP_OFF2,
3772*1fd5a2e1SPrashanth Swaminathan	V1_OFF2, V0_OFF2, FA_1_1_OFF2, FA_1_0_OFF2, FA_0_1_OFF2,
3773*1fd5a2e1SPrashanth Swaminathan	FA_0_0_OFF2.
3774*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (ffi_prep_args): Code formatting. Fix
3775*1fd5a2e1SPrashanth Swaminathan	endianness bugs.
3776*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): Improve trampoline instruction scheduling.
3777*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_mips_inner_O32): Fix endianness bugs.
3778*1fd5a2e1SPrashanth Swaminathan
3779*1fd5a2e1SPrashanth Swaminathan2005-12-03  Alan Modra  <[email protected]>
3780*1fd5a2e1SPrashanth Swaminathan
3781*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Formatting.
3782*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args_SYSV): Avoid possible aliasing problems by using unions.
3783*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args64): Likewise.
3784*1fd5a2e1SPrashanth Swaminathan
3785*1fd5a2e1SPrashanth Swaminathan2005-09-30  Geoffrey Keating  <[email protected]>
3786*1fd5a2e1SPrashanth Swaminathan
3787*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi_target_compile): For
3788*1fd5a2e1SPrashanth Swaminathan	darwin, use -shared-libgcc not -lgcc_s, and explain why.
3789*1fd5a2e1SPrashanth Swaminathan
3790*1fd5a2e1SPrashanth Swaminathan2005-09-26  Tom Tromey  <[email protected]>
3791*1fd5a2e1SPrashanth Swaminathan
3792*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float1.c (value_type): New typedef.
3793*1fd5a2e1SPrashanth Swaminathan	(CANARY): New define.
3794*1fd5a2e1SPrashanth Swaminathan	(main): Check for result buffer overflow.
3795*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S: Handle linux64 long double returns.
3796*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (FLAG_RETURNS_128BITS): New constant.
3797*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Handle linux64 long double returns.
3798*1fd5a2e1SPrashanth Swaminathan
3799*1fd5a2e1SPrashanth Swaminathan2005-08-25  Alan Modra  <[email protected]>
3800*1fd5a2e1SPrashanth Swaminathan
3801*1fd5a2e1SPrashanth Swaminathan	PR target/23404
3802*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Correct placement of stack
3803*1fd5a2e1SPrashanth Swaminathan	homed fp args.
3804*1fd5a2e1SPrashanth Swaminathan	(ffi_status ffi_prep_cif_machdep): Correct stack sizing for same.
3805*1fd5a2e1SPrashanth Swaminathan
3806*1fd5a2e1SPrashanth Swaminathan2005-08-11  Jakub Jelinek  <[email protected]>
3807*1fd5a2e1SPrashanth Swaminathan
3808*1fd5a2e1SPrashanth Swaminathan	* configure.ac (HAVE_HIDDEN_VISIBILITY_ATTRIBUTE): New test.
3809*1fd5a2e1SPrashanth Swaminathan	(AH_BOTTOM): Add FFI_HIDDEN definition.
3810*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
3811*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Rebuilt.
3812*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (hidden): Remove.
3813*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_LINUX64, ffi_prep_args64, ffi_call_LINUX64,
3814*1fd5a2e1SPrashanth Swaminathan	ffi_closure_helper_LINUX64): Use FFI_HIDDEN instead of hidden.
3815*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S (ffi_closure_LINUX64,
3816*1fd5a2e1SPrashanth Swaminathan	.ffi_closure_LINUX64): Use FFI_HIDDEN instead of .hidden.
3817*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_closure_SYSV, ffi_closure_raw_SYSV): Remove,
3818*1fd5a2e1SPrashanth Swaminathan	add FFI_HIDDEN to its prototype.
3819*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_SYSV_inner): New.
3820*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (ffi_closure_SYSV, ffi_closure_raw_SYSV): New.
3821*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (ffi_closure_SYSV, ffi_closure_raw_SYSV): New.
3822*1fd5a2e1SPrashanth Swaminathan
3823*1fd5a2e1SPrashanth Swaminathan2005-08-10  Alfred M. Szmidt  <[email protected]>
3824*1fd5a2e1SPrashanth Swaminathan
3825*1fd5a2e1SPrashanth Swaminathan	PR libffi/21819:
3826*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
3827*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Handle i*86-*-gnu*.
3828*1fd5a2e1SPrashanth Swaminathan
3829*1fd5a2e1SPrashanth Swaminathan2005-08-09  Jakub Jelinek  <[email protected]>
3830*1fd5a2e1SPrashanth Swaminathan
3831*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Use
3832*1fd5a2e1SPrashanth Swaminathan	DW_CFA_offset_extended_sf rather than
3833*1fd5a2e1SPrashanth Swaminathan	DW_CFA_GNU_negative_offset_extended.
3834*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S (ffi_call_SYSV): Likewise.
3835*1fd5a2e1SPrashanth Swaminathan
3836*1fd5a2e1SPrashanth Swaminathan2005-07-22  SUGIOKA Toshinobu  <[email protected]>
3837*1fd5a2e1SPrashanth Swaminathan
3838*1fd5a2e1SPrashanth Swaminathan	* src/sh/sysv.S (ffi_call_SYSV): Stop argument popping correctly
3839*1fd5a2e1SPrashanth Swaminathan	on sh3.
3840*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_SYSV): Change the stack layout for sh3 struct argument.
3841*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c (ffi_prep_args): Fix sh3 argument copy, when it is
3842*1fd5a2e1SPrashanth Swaminathan	partially on register.
3843*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Likewise.
3844*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Don't set too many cif->flags.
3845*1fd5a2e1SPrashanth Swaminathan
3846*1fd5a2e1SPrashanth Swaminathan2005-07-20  Kaz Kojima  <[email protected]>
3847*1fd5a2e1SPrashanth Swaminathan
3848*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c (ffi_call): Handle small structures correctly.
3849*1fd5a2e1SPrashanth Swaminathan	Remove empty line.
3850*1fd5a2e1SPrashanth Swaminathan	* src/sh64/ffi.c (simple_type): Remove.
3851*1fd5a2e1SPrashanth Swaminathan	(return_type): Handle small structures correctly.
3852*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Likewise.
3853*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Likewise.
3854*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Likewise.
3855*1fd5a2e1SPrashanth Swaminathan	* src/sh64/sysv.S (ffi_call_SYSV): Handle 1, 2 and 4-byte return.
3856*1fd5a2e1SPrashanth Swaminathan	Emit position independent code if PIC and remove wrong datalabel
3857*1fd5a2e1SPrashanth Swaminathan	prefixes from EH data.
3858*1fd5a2e1SPrashanth Swaminathan
3859*1fd5a2e1SPrashanth Swaminathan2005-07-19  Andreas Tobler  <[email protected]>
3860*1fd5a2e1SPrashanth Swaminathan
3861*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (nodist_libffi_la_SOURCES): Add POWERPC_FREEBSD.
3862*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
3863*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Likewise.
3864*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Likewise.
3865*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add POWERPC_FREEBSD rules.
3866*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3867*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h: Add POWERPC_FREEBSD rules.
3868*1fd5a2e1SPrashanth Swaminathan	(FFI_SYSV_TYPE_SMALL_STRUCT): Define.
3869*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Add flags to handle small structure returns
3870*1fd5a2e1SPrashanth Swaminathan	in ffi_call_SYSV.
3871*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Handle small structures for SYSV 4 ABI.
3872*1fd5a2e1SPrashanth Swaminathan	Aka FFI_SYSV.
3873*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Likewise.
3874*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Add return types for small structures.
3875*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Add bits to handle small structures for
3876*1fd5a2e1SPrashanth Swaminathan	final SYSV 4 ABI.
3877*1fd5a2e1SPrashanth Swaminathan
3878*1fd5a2e1SPrashanth Swaminathan2005-07-10  Andreas Tobler  <[email protected]>
3879*1fd5a2e1SPrashanth Swaminathan
3880*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5_1_byte.c: New test file.
3881*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6_1_byte.c: Likewise.
3882*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7_1_byte.c: Likewise.
3883*1fd5a2e1SPrashanth Swaminathan
3884*1fd5a2e1SPrashanth Swaminathan2005-07-05  Randolph Chung  <[email protected]>
3885*1fd5a2e1SPrashanth Swaminathan
3886*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.c (ffi_struct_type): Rename FFI_TYPE_SMALL_STRUCT1
3887*1fd5a2e1SPrashanth Swaminathan	as FFI_TYPE_SMALL_STRUCT3.  Break out handling for 5-7 byte
3888*1fd5a2e1SPrashanth Swaminathan	structures.  Kill compilation warnings.
3889*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_inner_LINUX): Print return values as hex in debug
3890*1fd5a2e1SPrashanth Swaminathan	message.  Rename FFI_TYPE_SMALL_STRUCT1 as FFI_TYPE_SMALL_STRUCT3.
3891*1fd5a2e1SPrashanth Swaminathan	Properly handle 5-7 byte structure returns.
3892*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffitarget.h (FFI_TYPE_SMALL_STRUCT1)
3893*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT2): Remove.
3894*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT3, FFI_TYPE_SMALL_STRUCT5)
3895*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_SMALL_STRUCT6, FFI_TYPE_SMALL_STRUCT7): Define.
3896*1fd5a2e1SPrashanth Swaminathan	* src/pa/linux.S: Mark source file as using PA1.1 assembly.
3897*1fd5a2e1SPrashanth Swaminathan	(checksmst1, checksmst2): Remove.
3898*1fd5a2e1SPrashanth Swaminathan	(checksmst3): Optimize handling of 3-byte struct returns.
3899*1fd5a2e1SPrashanth Swaminathan	(checksmst567): Properly handle 5-7 byte struct returns.
3900*1fd5a2e1SPrashanth Swaminathan
3901*1fd5a2e1SPrashanth Swaminathan2005-06-15  Rainer Orth  <[email protected]>
3902*1fd5a2e1SPrashanth Swaminathan
3903*1fd5a2e1SPrashanth Swaminathan	PR libgcj/21943
3904*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S: Enforce PIC code.
3905*1fd5a2e1SPrashanth Swaminathan	* src/mips/o32.S: Likewise.
3906*1fd5a2e1SPrashanth Swaminathan
3907*1fd5a2e1SPrashanth Swaminathan2005-06-15  Rainer Orth  <[email protected]>
3908*1fd5a2e1SPrashanth Swaminathan
3909*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Treat i*86-*-solaris2.10 and up as X86_64.
3910*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3911*1fd5a2e1SPrashanth Swaminathan
3912*1fd5a2e1SPrashanth Swaminathan2005-06-01  Alan Modra  <[email protected]>
3913*1fd5a2e1SPrashanth Swaminathan
3914*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S (ffi_closure_SYSV): Don't use JUMPTARGET
3915*1fd5a2e1SPrashanth Swaminathan	to call ffi_closure_helper_SYSV.  Append @local instead.
3916*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S (ffi_call_SYSV): Likewise for ffi_prep_args_SYSV.
3917*1fd5a2e1SPrashanth Swaminathan
3918*1fd5a2e1SPrashanth Swaminathan2005-05-17  Kelley Cook  <[email protected]>
3919*1fd5a2e1SPrashanth Swaminathan
3920*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Use AC_C_BIGENDIAN instead of AC_C_BIGENDIAN_CROSS.
3921*1fd5a2e1SPrashanth Swaminathan	Use AC_CHECK_SIZEOF instead of AC_COMPILE_CHECK_SIZEOF.
3922*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (ACLOCAL_AMFLAGS): Remove -I ../config.
3923*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, configure, fficonfig.h.in, Makefile.in,
3924*1fd5a2e1SPrashanth Swaminathan	include/Makefile.in, testsuite/Makefile.in: Regenerate.
3925*1fd5a2e1SPrashanth Swaminathan
3926*1fd5a2e1SPrashanth Swaminathan2005-05-09  Mike Stump  <[email protected]>
3927*1fd5a2e1SPrashanth Swaminathan
3928*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3929*1fd5a2e1SPrashanth Swaminathan
3930*1fd5a2e1SPrashanth Swaminathan2005-05-08  Richard Henderson  <[email protected]>
3931*1fd5a2e1SPrashanth Swaminathan
3932*1fd5a2e1SPrashanth Swaminathan	PR libffi/21285
3933*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S: Update unwind into to match code.
3934*1fd5a2e1SPrashanth Swaminathan
3935*1fd5a2e1SPrashanth Swaminathan2005-05-04  Andreas Degert <[email protected]>
3936*1fd5a2e1SPrashanth Swaminathan	    Richard Henderson  <[email protected]>
3937*1fd5a2e1SPrashanth Swaminathan
3938*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (ffi_prep_cif_machdep): Save sse-used flag in
3939*1fd5a2e1SPrashanth Swaminathan	bit 11 of flags.
3940*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Mask return type field.  Pass ssecount to ffi_call_unix64.
3941*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): Set carry bit if sse-used flag set.
3942*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S (ffi_call_unix64): Add ssecount argument.
3943*1fd5a2e1SPrashanth Swaminathan	Only load sse registers if ssecount non-zero.
3944*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_unix64): Only save sse registers if carry set on entry.
3945*1fd5a2e1SPrashanth Swaminathan
3946*1fd5a2e1SPrashanth Swaminathan2005-04-29  Ralf Corsepius  <[email protected]>
3947*1fd5a2e1SPrashanth Swaminathan
3948*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add i*86-*-rtems*, sparc*-*-rtems*,
3949*1fd5a2e1SPrashanth Swaminathan	powerpc-*rtems*, arm*-*-rtems*, sh-*-rtems*.
3950*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3951*1fd5a2e1SPrashanth Swaminathan
3952*1fd5a2e1SPrashanth Swaminathan2005-04-20  Hans-Peter Nilsson  <[email protected]>
3953*1fd5a2e1SPrashanth Swaminathan
3954*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi-dg-test-1): In regsub use,
3955*1fd5a2e1SPrashanth Swaminathan	have Tcl8.3-compatible intermediate variable.
3956*1fd5a2e1SPrashanth Swaminathan
3957*1fd5a2e1SPrashanth Swaminathan2005-04-18  Simon Posnjak <[email protected]>
3958*1fd5a2e1SPrashanth Swaminathan	    Hans-Peter Nilsson  <[email protected]>
3959*1fd5a2e1SPrashanth Swaminathan
3960*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add CRIS support.
3961*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Likewise.
3962*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, configure, testsuite/Makefile.in,
3963*1fd5a2e1SPrashanth Swaminathan	include/Makefile.in: Regenerate.
3964*1fd5a2e1SPrashanth Swaminathan	* src/cris: New directory.
3965*1fd5a2e1SPrashanth Swaminathan	* src/cris/ffi.c, src/cris/sysv.S, src/cris/ffitarget.h: New files.
3966*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif): Wrap in #ifndef __CRIS__.
3967*1fd5a2e1SPrashanth Swaminathan
3968*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi-dg-test-1): Replace \n with
3969*1fd5a2e1SPrashanth Swaminathan	\r?\n in output tests.
3970*1fd5a2e1SPrashanth Swaminathan
3971*1fd5a2e1SPrashanth Swaminathan2005-04-12  Mike Stump  <[email protected]>
3972*1fd5a2e1SPrashanth Swaminathan
3973*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
3974*1fd5a2e1SPrashanth Swaminathan
3975*1fd5a2e1SPrashanth Swaminathan2005-03-30  Hans Boehm  <[email protected]>
3976*1fd5a2e1SPrashanth Swaminathan
3977*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffitarget.h (ffi_arg): Use long long instead of DI.
3978*1fd5a2e1SPrashanth Swaminathan
3979*1fd5a2e1SPrashanth Swaminathan2005-03-30  Steve Ellcey  <[email protected]>
3980*1fd5a2e1SPrashanth Swaminathan
3981*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffitarget.h (ffi_arg) ADD DI attribute.
3982*1fd5a2e1SPrashanth Swaminathan	(ffi_sarg) Ditto.
3983*1fd5a2e1SPrashanth Swaminathan	* src/ia64/unix.S (ffi_closure_unix): Extend gp
3984*1fd5a2e1SPrashanth Swaminathan	to 64 bits in ILP32 mode.
3985*1fd5a2e1SPrashanth Swaminathan	Load 64 bits even for short data.
3986*1fd5a2e1SPrashanth Swaminathan
3987*1fd5a2e1SPrashanth Swaminathan2005-03-23  Mike Stump  <[email protected]>
3988*1fd5a2e1SPrashanth Swaminathan
3989*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: Update for -m64 multilib.
3990*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: Likewise.
3991*1fd5a2e1SPrashanth Swaminathan
3992*1fd5a2e1SPrashanth Swaminathan2005-03-21  Zack Weinberg  <[email protected]>
3993*1fd5a2e1SPrashanth Swaminathan
3994*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Do not invoke TL_AC_GCC_VERSION.
3995*1fd5a2e1SPrashanth Swaminathan	Do not set tool_include_dir.
3996*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, configure, Makefile.in, testsuite/Makefile.in:
3997*1fd5a2e1SPrashanth Swaminathan	Regenerate.
3998*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.am: Set gcc_version and toollibffidir.
3999*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
4000*1fd5a2e1SPrashanth Swaminathan
4001*1fd5a2e1SPrashanth Swaminathan2005-02-22  Andrew Haley  <[email protected]>
4002*1fd5a2e1SPrashanth Swaminathan
4003*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_cif_machdep): Bump alignment to
4004*1fd5a2e1SPrashanth Swaminathan	odd-numbered register pairs for 64-bit integer types.
4005*1fd5a2e1SPrashanth Swaminathan
4006*1fd5a2e1SPrashanth Swaminathan2005-02-23  Andreas Tobler  <[email protected]>
4007*1fd5a2e1SPrashanth Swaminathan
4008*1fd5a2e1SPrashanth Swaminathan	PR libffi/20104
4009*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_ll1.c: New test case.
4010*1fd5a2e1SPrashanth Swaminathan
4011*1fd5a2e1SPrashanth Swaminathan2005-02-11  Janis Johnson  <[email protected]>
4012*1fd5a2e1SPrashanth Swaminathan
4013*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble.c: Remove dg-options.
4014*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float.c: Ditto.
4015*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float2.c: Ditto.
4016*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float3.c: Ditto.
4017*1fd5a2e1SPrashanth Swaminathan
4018*1fd5a2e1SPrashanth Swaminathan2005-02-08  Andreas Tobler  <[email protected]>
4019*1fd5a2e1SPrashanth Swaminathan
4020*1fd5a2e1SPrashanth Swaminathan	* src/frv/ffitarget.h: Remove PPC stuff which does not belong to frv.
4021*1fd5a2e1SPrashanth Swaminathan
4022*1fd5a2e1SPrashanth Swaminathan2005-01-12  Eric Botcazou  <[email protected]>
4023*1fd5a2e1SPrashanth Swaminathan
4024*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/special.exp (cxx_options): Add
4025*1fd5a2e1SPrashanth Swaminathan	-shared-libgcc.
4026*1fd5a2e1SPrashanth Swaminathan
4027*1fd5a2e1SPrashanth Swaminathan2004-12-31  Richard Henderson  <[email protected]>
4028*1fd5a2e1SPrashanth Swaminathan
4029*1fd5a2e1SPrashanth Swaminathan	* src/types.c (FFI_AGGREGATE_TYPEDEF): Remove.
4030*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPEDEF): Rename from FFI_INTEGRAL_TYPEDEF.  Replace size and
4031*1fd5a2e1SPrashanth Swaminathan	offset parameters with a type parameter; deduce size and structure
4032*1fd5a2e1SPrashanth Swaminathan	alignment.  Update all users.
4033*1fd5a2e1SPrashanth Swaminathan
4034*1fd5a2e1SPrashanth Swaminathan2004-12-31  Richard Henderson  <[email protected]>
4035*1fd5a2e1SPrashanth Swaminathan
4036*1fd5a2e1SPrashanth Swaminathan	* src/types.c (FFI_TYPE_POINTER): Define with sizeof.
4037*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_LONGDOUBLE): Fix for ia64.
4038*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffitarget.h (struct ffi_ia64_trampoline_struct): Move
4039*1fd5a2e1SPrashanth Swaminathan	into ffi_prep_closure.
4040*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ia64_flags.h, src/ia64/ffi.c, src/ia64/unix.S: Rewrite
4041*1fd5a2e1SPrashanth Swaminathan	from scratch.
4042*1fd5a2e1SPrashanth Swaminathan
4043*1fd5a2e1SPrashanth Swaminathan2004-12-27  Richard Henderson  <[email protected]>
4044*1fd5a2e1SPrashanth Swaminathan
4045*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S: Fix typo in unwind info.
4046*1fd5a2e1SPrashanth Swaminathan
4047*1fd5a2e1SPrashanth Swaminathan2004-12-25  Richard Henderson  <[email protected]>
4048*1fd5a2e1SPrashanth Swaminathan
4049*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (struct register_args): Rename from stackLayout.
4050*1fd5a2e1SPrashanth Swaminathan	(enum x86_64_reg_class): Add X86_64_COMPLEX_X87_CLASS.
4051*1fd5a2e1SPrashanth Swaminathan	(merge_classes): Check for it.
4052*1fd5a2e1SPrashanth Swaminathan	(SSE_CLASS_P): New.
4053*1fd5a2e1SPrashanth Swaminathan	(classify_argument): Pass byte_offset by value; perform all updates
4054*1fd5a2e1SPrashanth Swaminathan	inside struct case.
4055*1fd5a2e1SPrashanth Swaminathan	(examine_argument): Add classes argument; handle
4056*1fd5a2e1SPrashanth Swaminathan	X86_64_COMPLEX_X87_CLASS.
4057*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Merge into ...
4058*1fd5a2e1SPrashanth Swaminathan	(ffi_call): ... here.  Share stack frame with ffi_call_unix64.
4059*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Setup cif->flags for proper structure return.
4060*1fd5a2e1SPrashanth Swaminathan	(ffi_fill_return_value): Remove.
4061*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): Remove dead assert.
4062*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_unix64_inner): Rename from ffi_closure_UNIX64_inner.
4063*1fd5a2e1SPrashanth Swaminathan	Rewrite to use struct register_args instead of va_list.  Create
4064*1fd5a2e1SPrashanth Swaminathan	flags for handling structure returns.
4065*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S: Remove dead strings.
4066*1fd5a2e1SPrashanth Swaminathan	(ffi_call_unix64): Rename from ffi_call_UNIX64.  Rewrite to share
4067*1fd5a2e1SPrashanth Swaminathan	stack frame with ffi_call.  Handle structure returns properly.
4068*1fd5a2e1SPrashanth Swaminathan	(float2sse, floatfloat2sse, double2sse): Remove.
4069*1fd5a2e1SPrashanth Swaminathan	(sse2float, sse2double, sse2floatfloat): Remove.
4070*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_unix64): Rename from ffi_closure_UNIX64.  Rewrite
4071*1fd5a2e1SPrashanth Swaminathan	to handle structure returns properly.
4072*1fd5a2e1SPrashanth Swaminathan
4073*1fd5a2e1SPrashanth Swaminathan2004-12-08  David Edelsohn  <[email protected]>
4074*1fd5a2e1SPrashanth Swaminathan
4075*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AM_MAKEFLAGS): Remove duplicate LIBCFLAGS and
4076*1fd5a2e1SPrashanth Swaminathan	PICFLAG.
4077*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
4078*1fd5a2e1SPrashanth Swaminathan
4079*1fd5a2e1SPrashanth Swaminathan2004-12-02  Richard Sandiford  <[email protected]>
4080*1fd5a2e1SPrashanth Swaminathan
4081*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Use TL_AC_GCC_VERSION to set gcc_version.
4082*1fd5a2e1SPrashanth Swaminathan	* configure, aclocal.m4, Makefile.in: Regenerate.
4083*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in, testsuite/Makefile.in: Regenerate.
4084*1fd5a2e1SPrashanth Swaminathan
4085*1fd5a2e1SPrashanth Swaminathan2004-11-29  Kelley Cook  <[email protected]>
4086*1fd5a2e1SPrashanth Swaminathan
4087*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate for libtool change.
4088*1fd5a2e1SPrashanth Swaminathan
4089*1fd5a2e1SPrashanth Swaminathan2004-11-25  Kelley Cook  <[email protected]>
4090*1fd5a2e1SPrashanth Swaminathan
4091*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate for libtool reversion.
4092*1fd5a2e1SPrashanth Swaminathan
4093*1fd5a2e1SPrashanth Swaminathan2004-11-24  Kelley Cook  <[email protected]>
4094*1fd5a2e1SPrashanth Swaminathan
4095*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate for libtool change.
4096*1fd5a2e1SPrashanth Swaminathan
4097*1fd5a2e1SPrashanth Swaminathan2004-11-23  John David Anglin  <[email protected]>
4098*1fd5a2e1SPrashanth Swaminathan
4099*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Use new procs in target-libpath.exp.
4100*1fd5a2e1SPrashanth Swaminathan
4101*1fd5a2e1SPrashanth Swaminathan2004-11-23  Richard Sandiford  <[email protected]>
4102*1fd5a2e1SPrashanth Swaminathan
4103*1fd5a2e1SPrashanth Swaminathan	* src/mips/o32.S (ffi_call_O32, ffi_closure_O32): Use jalr instead
4104*1fd5a2e1SPrashanth Swaminathan	of jal.  Use an absolute encoding for the frame information.
4105*1fd5a2e1SPrashanth Swaminathan
4106*1fd5a2e1SPrashanth Swaminathan2004-11-23  Kelley Cook  <[email protected]>
4107*1fd5a2e1SPrashanth Swaminathan
4108*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Remove no-dependencies.  Add ACLOCAL_AMFLAGS.
4109*1fd5a2e1SPrashanth Swaminathan	* acinclude.m4: Delete logic for sincludes.
4110*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, Makefile.in, configure: Regenerate.
4111*1fd5a2e1SPrashanth Swaminathan	* include/Makefile: Likewise.
4112*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile: Likewise.
4113*1fd5a2e1SPrashanth Swaminathan
4114*1fd5a2e1SPrashanth Swaminathan2004-11-22  Eric Botcazou  <[email protected]>
4115*1fd5a2e1SPrashanth Swaminathan
4116*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_prep_closure): Align doubles and 64-bit integers
4117*1fd5a2e1SPrashanth Swaminathan	on a 8-byte boundary.
4118*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S (ffi_closure_v8): Reserve frame space for arguments.
4119*1fd5a2e1SPrashanth Swaminathan
4120*1fd5a2e1SPrashanth Swaminathan2004-10-27  Richard Earnshaw  <[email protected]>
4121*1fd5a2e1SPrashanth Swaminathan
4122*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_prep_cif_machdep): Handle functions that return
4123*1fd5a2e1SPrashanth Swaminathan	long long values.  Round stack allocation to a multiple of 8 bytes
4124*1fd5a2e1SPrashanth Swaminathan	for ATPCS compatibility.
4125*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S (ffi_call_SYSV): Rework to avoid use of APCS register
4126*1fd5a2e1SPrashanth Swaminathan	names.  Handle returning long long types.  Add Thumb and interworking
4127*1fd5a2e1SPrashanth Swaminathan	support.  Improve soft-float code.
4128*1fd5a2e1SPrashanth Swaminathan
4129*1fd5a2e1SPrashanth Swaminathan2004-10-27  Richard Earnshaw  <[email protected]>
4130*1fd5a2e1SPrashanth Swaminathan
4131*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-db.exp (load_gcc_lib): New function.
4132*1fd5a2e1SPrashanth Swaminathan	(libffi_exit): New function.
4133*1fd5a2e1SPrashanth Swaminathan	(libffi_init): Build the testglue wrapper if needed.
4134*1fd5a2e1SPrashanth Swaminathan
4135*1fd5a2e1SPrashanth Swaminathan2004-10-25  Eric Botcazou  <[email protected]>
4136*1fd5a2e1SPrashanth Swaminathan
4137*1fd5a2e1SPrashanth Swaminathan	PR other/18138
4138*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Accept more than one multilib libgcc.
4139*1fd5a2e1SPrashanth Swaminathan
4140*1fd5a2e1SPrashanth Swaminathan2004-10-25  Kazuhiro Inaoka <[email protected]>
4141*1fd5a2e1SPrashanth Swaminathan
4142*1fd5a2e1SPrashanth Swaminathan	* src/m32r/libffitarget.h (FFI_CLOSURES): Set to 0.
4143*1fd5a2e1SPrashanth Swaminathan
4144*1fd5a2e1SPrashanth Swaminathan2004-10-20  Kaz Kojima  <[email protected]>
4145*1fd5a2e1SPrashanth Swaminathan
4146*1fd5a2e1SPrashanth Swaminathan	* src/sh/sysv.S (ffi_call_SYSV): Don't align for double data.
4147*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float3.c: New test case.
4148*1fd5a2e1SPrashanth Swaminathan
4149*1fd5a2e1SPrashanth Swaminathan2004-10-18  Kaz Kojima  <[email protected]>
4150*1fd5a2e1SPrashanth Swaminathan
4151*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c (ffi_prep_closure): Set T bit in trampoline for
4152*1fd5a2e1SPrashanth Swaminathan	the function returning a structure pointed with R2.
4153*1fd5a2e1SPrashanth Swaminathan	* src/sh/sysv.S (ffi_closure_SYSV): Use R2 as the pointer to
4154*1fd5a2e1SPrashanth Swaminathan	the structure return value if T bit set.  Emit position
4155*1fd5a2e1SPrashanth Swaminathan	independent code and EH data if PIC.
4156*1fd5a2e1SPrashanth Swaminathan
4157*1fd5a2e1SPrashanth Swaminathan2004-10-13  Kazuhiro Inaoka  <[email protected]>
4158*1fd5a2e1SPrashanth Swaminathan
4159*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add m32r support.
4160*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Likewise.
4161*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
4162*1fd5a2e1SPrashanth Swaminathan	* confiugre: Regenerate.
4163*1fd5a2e1SPrashanth Swaminathan	* src/types.c: Add m32r port to FFI_INTERNAL_TYPEDEF
4164*1fd5a2e1SPrashanth Swaminathan	(uint64, sint64, double, longdouble)
4165*1fd5a2e1SPrashanth Swaminathan	* src/m32r: New directory.
4166*1fd5a2e1SPrashanth Swaminathan	* src/m32r/ffi.c: New file.
4167*1fd5a2e1SPrashanth Swaminathan	* src/m32r/sysv.S: Likewise.
4168*1fd5a2e1SPrashanth Swaminathan	* src/m32r/ffitarget.h: Likewise.
4169*1fd5a2e1SPrashanth Swaminathan
4170*1fd5a2e1SPrashanth Swaminathan2004-10-02  Kaz Kojima  <[email protected]>
4171*1fd5a2e1SPrashanth Swaminathan
4172*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/negint.c: New test case.
4173*1fd5a2e1SPrashanth Swaminathan
4174*1fd5a2e1SPrashanth Swaminathan2004-09-14  H.J. Lu  <[email protected]>
4175*1fd5a2e1SPrashanth Swaminathan
4176*1fd5a2e1SPrashanth Swaminathan	PR libgcj/17465
4177*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Don't use global ld_library_path.
4178*1fd5a2e1SPrashanth Swaminathan	Set up LD_LIBRARY_PATH, SHLIB_PATH, LD_LIBRARYN32_PATH,
4179*1fd5a2e1SPrashanth Swaminathan	LD_LIBRARY64_PATH, LD_LIBRARY_PATH_32, LD_LIBRARY_PATH_64 and
4180*1fd5a2e1SPrashanth Swaminathan	DYLD_LIBRARY_PATH.
4181*1fd5a2e1SPrashanth Swaminathan
4182*1fd5a2e1SPrashanth Swaminathan2004-09-05  Andreas Tobler  <[email protected]>
4183*1fd5a2e1SPrashanth Swaminathan
4184*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many_win32.c: Remove whitespaces.
4185*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/promotion.c: Likewise.
4186*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_ll.c: Remove unused var. Cleanup
4187*1fd5a2e1SPrashanth Swaminathan	whitespaces.
4188*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_sc.c: Likewise.
4189*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_uc.c: Likewise.
4190*1fd5a2e1SPrashanth Swaminathan
4191*1fd5a2e1SPrashanth Swaminathan2004-09-05  Andreas Tobler  <[email protected]>
4192*1fd5a2e1SPrashanth Swaminathan
4193*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: Fix comments and identation.
4194*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: Likewise.
4195*1fd5a2e1SPrashanth Swaminathan
4196*1fd5a2e1SPrashanth Swaminathan2004-09-02  Andreas Tobler  <[email protected]>
4197*1fd5a2e1SPrashanth Swaminathan
4198*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c: Add flag for longdouble return values.
4199*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Handle longdouble arguments.
4200*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Set flags for longdouble. Calculate space for
4201*1fd5a2e1SPrashanth Swaminathan	longdouble.
4202*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_DARWIN): Add closure handling for longdouble.
4203*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S (_ffi_call_DARWIN): Add handling of longdouble
4204*1fd5a2e1SPrashanth Swaminathan	values.
4205*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S (_ffi_closure_ASM): Likewise.
4206*1fd5a2e1SPrashanth Swaminathan	* src/types.c: Defined longdouble size and alignment for darwin.
4207*1fd5a2e1SPrashanth Swaminathan
4208*1fd5a2e1SPrashanth Swaminathan2004-09-02  Andreas Tobler  <[email protected]>
4209*1fd5a2e1SPrashanth Swaminathan
4210*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix.S: Remove whitespaces.
4211*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S: Likewise.
4212*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/asm.h: Likewise.
4213*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Likewise.
4214*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h: Likewise.
4215*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S: Likewise.
4216*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S: Likewise.
4217*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Likewise.
4218*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Likewise.
4219*1fd5a2e1SPrashanth Swaminathan
4220*1fd5a2e1SPrashanth Swaminathan2004-08-30  Anthony Green  <[email protected]>
4221*1fd5a2e1SPrashanth Swaminathan
4222*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add frv support.
4223*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, testsuite/Makefile.in: Rebuilt.
4224*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Read configure.host.
4225*1fd5a2e1SPrashanth Swaminathan	* configure.in: Read configure.host.
4226*1fd5a2e1SPrashanth Swaminathan	* configure.host: New file.  frv-elf needs libgloss.
4227*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Force ffi_closure to have a nice big (8)
4228*1fd5a2e1SPrashanth Swaminathan	alignment.  This is needed to frv and shouldn't harm the others.
4229*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h (ALIGN_DOWN): New macro.
4230*1fd5a2e1SPrashanth Swaminathan	* src/frv/ffi.c, src/frv/ffitarget.h, src/frv/eabi.S: New files.
4231*1fd5a2e1SPrashanth Swaminathan
4232*1fd5a2e1SPrashanth Swaminathan2004-08-24  David Daney  <[email protected]>
4233*1fd5a2e1SPrashanth Swaminathan
4234*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c: Xfail mips64* instead of mips*.
4235*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn1.c: Likewise.
4236*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn2.c  Likewise.
4237*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn3.c: Likewise.
4238*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn4.c: Likewise.
4239*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn5.c: Likewise.
4240*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_18byte.c: Likewise.
4241*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_19byte.c: Likewise.
4242*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_1_1byte.c: Likewise.
4243*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte.c: Likewise.
4244*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte1.c: Likewise.
4245*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_24byte.c: Likewise.
4246*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_2byte.c: Likewise.
4247*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3_1byte.c: Likewise.
4248*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte1.c: Likewise.
4249*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte2.c: Likewise.
4250*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4_1byte.c: Likewise.
4251*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4byte.c: Likewise.
4252*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_64byte.c: Likewise.
4253*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6byte.c: Likewise.
4254*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7byte.c: Likewise.
4255*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_8byte.c: Likewise.
4256*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte1.c: Likewise.
4257*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte2.c: Likewise.
4258*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_double.c: Likewise.
4259*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_float.c: Likewise.
4260*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble.c: Likewise.
4261*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_pointer.c: Likewise.
4262*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint16.c: Likewise.
4263*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint32.c: Likewise.
4264*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint64.c: Likewise.
4265*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint16.c: Likewise.
4266*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint32.c: Likewise.
4267*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint64.c: Likewise.
4268*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double.c: Likewise.
4269*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_float.c: Likewise.
4270*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_schar.c: Likewise.
4271*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_sshort.c: Likewise.
4272*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_sshortchar.c: Likewise.
4273*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_uchar.c: Likewise.
4274*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_ushort.c: Likewise.
4275*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_ushortchar.c: Likewise.
4276*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_schar.c: Likewise.
4277*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sint.c: Likewise.
4278*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sshort.c: Likewise.
4279*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uchar.c: Likewise.
4280*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint.c: Likewise.
4281*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ulonglong.c: Likewise.
4282*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ushort.c: Likewise.
4283*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct.c: Likewise.
4284*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct1.c: Likewise.
4285*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct2.c: Likewise.
4286*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct3.c: Likewise.
4287*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/problem1.c: Likewise.
4288*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc: Likewise.
4289*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_12byte.c: Likewise and set return value
4290*1fd5a2e1SPrashanth Swaminathan	to zero.
4291*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_16byte.c: Likewise.
4292*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5byte.c: Likewise.
4293*1fd5a2e1SPrashanth Swaminathan
4294*1fd5a2e1SPrashanth Swaminathan2004-08-23  David Daney <[email protected]>
4295*1fd5a2e1SPrashanth Swaminathan
4296*1fd5a2e1SPrashanth Swaminathan	PR libgcj/13141
4297*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h (FFI_O32_SOFT_FLOAT): New ABI.
4298*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (ffi_prep_args): Fix alignment calculation.
4299*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Handle FFI_O32_SOFT_FLOAT floating point
4300*1fd5a2e1SPrashanth Swaminathan	parameters and return types.
4301*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Handle FFI_O32_SOFT_FLOAT ABI.
4302*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): Ditto.
4303*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_mips_inner_O32): Handle FFI_O32_SOFT_FLOAT ABI, fix
4304*1fd5a2e1SPrashanth Swaminathan	alignment calculations.
4305*1fd5a2e1SPrashanth Swaminathan	* src/mips/o32.S (ffi_closure_O32): Don't use floating point
4306*1fd5a2e1SPrashanth Swaminathan	instructions if FFI_O32_SOFT_FLOAT, make stack frame ABI compliant.
4307*1fd5a2e1SPrashanth Swaminathan
4308*1fd5a2e1SPrashanth Swaminathan2004-08-14  Casey Marshall <[email protected]>
4309*1fd5a2e1SPrashanth Swaminathan
4310*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (ffi_pref_cif_machdep): set `cif->flags' to
4311*1fd5a2e1SPrashanth Swaminathan	contain `FFI_TYPE_UINT64' as return type for any 64-bit
4312*1fd5a2e1SPrashanth Swaminathan	integer (O32 ABI only).
4313*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): new function.
4314*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_mips_inner_O32): new function.
4315*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h: Define `FFI_CLOSURES' and
4316*1fd5a2e1SPrashanth Swaminathan	`FFI_TRAMPOLINE_SIZE' appropriately if the ABI is o32.
4317*1fd5a2e1SPrashanth Swaminathan	* src/mips/o32.S (ffi_call_O32): add labels for .eh_frame. Return
4318*1fd5a2e1SPrashanth Swaminathan	64 bit integers correctly.
4319*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_O32): new function.
4320*1fd5a2e1SPrashanth Swaminathan	Added DWARF-2 unwind info for both functions.
4321*1fd5a2e1SPrashanth Swaminathan
4322*1fd5a2e1SPrashanth Swaminathan2004-08-10  Andrew Haley  <[email protected]>
4323*1fd5a2e1SPrashanth Swaminathan
4324*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (ffi_prep_args ): 8-align all stack arguments.
4325*1fd5a2e1SPrashanth Swaminathan
4326*1fd5a2e1SPrashanth Swaminathan2004-08-01  Robert Millan  <[email protected]>
4327*1fd5a2e1SPrashanth Swaminathan
4328*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Detect knetbsd-gnu and kfreebsd-gnu.
4329*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
4330*1fd5a2e1SPrashanth Swaminathan
4331*1fd5a2e1SPrashanth Swaminathan2004-07-30  Maciej W. Rozycki  <[email protected]>
4332*1fd5a2e1SPrashanth Swaminathan
4333*1fd5a2e1SPrashanth Swaminathan	* acinclude.m4 (AC_FUNC_MMAP_BLACKLIST): Check for <sys/mman.h>
4334*1fd5a2e1SPrashanth Swaminathan	and mmap() explicitly instead of relying on preset autoconf cache
4335*1fd5a2e1SPrashanth Swaminathan	variables.
4336*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerate.
4337*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
4338*1fd5a2e1SPrashanth Swaminathan
4339*1fd5a2e1SPrashanth Swaminathan2004-07-11  Ulrich Weigand  <[email protected]>
4340*1fd5a2e1SPrashanth Swaminathan
4341*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffi.c (ffi_prep_args): Fix C aliasing violation.
4342*1fd5a2e1SPrashanth Swaminathan	(ffi_check_float_struct): Remove unused prototype.
4343*1fd5a2e1SPrashanth Swaminathan
4344*1fd5a2e1SPrashanth Swaminathan2004-06-30  Geoffrey Keating  <[email protected]>
4345*1fd5a2e1SPrashanth Swaminathan
4346*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (flush_icache): ';' is a comment
4347*1fd5a2e1SPrashanth Swaminathan	character on Darwin, use '\n\t' instead.
4348*1fd5a2e1SPrashanth Swaminathan
4349*1fd5a2e1SPrashanth Swaminathan2004-06-26  Matthias Klose  <[email protected]>
4350*1fd5a2e1SPrashanth Swaminathan
4351*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Fix typo in revision/age.
4352*1fd5a2e1SPrashanth Swaminathan
4353*1fd5a2e1SPrashanth Swaminathan2004-06-17  Matthias Klose  <[email protected]>
4354*1fd5a2e1SPrashanth Swaminathan
4355*1fd5a2e1SPrashanth Swaminathan	* libtool-version: New.
4356*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (libffi_la_LDFLAGS): Use -version-info for soname.
4357*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
4358*1fd5a2e1SPrashanth Swaminathan
4359*1fd5a2e1SPrashanth Swaminathan2004-06-15  Paolo Bonzini  <[email protected]>
4360*1fd5a2e1SPrashanth Swaminathan
4361*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Remove useless multilib rules.
4362*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
4363*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Regenerate with automake 1.8.5.
4364*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Remove useless multilib configury.
4365*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
4366*1fd5a2e1SPrashanth Swaminathan
4367*1fd5a2e1SPrashanth Swaminathan2004-06-15  Paolo Bonzini  <[email protected]>
4368*1fd5a2e1SPrashanth Swaminathan
4369*1fd5a2e1SPrashanth Swaminathan	* .cvsignore: New file.
4370*1fd5a2e1SPrashanth Swaminathan
4371*1fd5a2e1SPrashanth Swaminathan2004-06-10  Jakub Jelinek  <[email protected]>
4372*1fd5a2e1SPrashanth Swaminathan
4373*1fd5a2e1SPrashanth Swaminathan	* src/ia64/unix.S (ffi_call_unix): Insert group barrier break
4374*1fd5a2e1SPrashanth Swaminathan	fp_done.
4375*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_UNIX): Fix f14/f15 adjustment if FLOAT_SZ is ever
4376*1fd5a2e1SPrashanth Swaminathan	changed from 8.
4377*1fd5a2e1SPrashanth Swaminathan
4378*1fd5a2e1SPrashanth Swaminathan2004-06-06  Sean McNeil  <[email protected]>
4379*1fd5a2e1SPrashanth Swaminathan
4380*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add x86_64-*-freebsd* support.
4381*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
4382*1fd5a2e1SPrashanth Swaminathan
4383*1fd5a2e1SPrashanth Swaminathan2004-04-26  Joe Buck <[email protected]>
4384*1fd5a2e1SPrashanth Swaminathan
4385*1fd5a2e1SPrashanth Swaminathan	Bug 15093
4386*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Test for existence of mmap and sys/mman.h before
4387*1fd5a2e1SPrashanth Swaminathan	checking blacklist.  Fix suggested by Jim Wilson.
4388*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
4389*1fd5a2e1SPrashanth Swaminathan
4390*1fd5a2e1SPrashanth Swaminathan2004-04-26  Matt Austern  <[email protected]>
4391*1fd5a2e1SPrashanth Swaminathan
4392*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: Go through a non-lazy pointer for initial
4393*1fd5a2e1SPrashanth Swaminathan	FDE location.
4394*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: Likewise.
4395*1fd5a2e1SPrashanth Swaminathan
4396*1fd5a2e1SPrashanth Swaminathan2004-04-24  Andreas Tobler  <[email protected]>
4397*1fd5a2e1SPrashanth Swaminathan
4398*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_schar.c (main): Fix initialization
4399*1fd5a2e1SPrashanth Swaminathan	error. Reported by Thomas Heller <[email protected]>.
4400*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_sshort.c (main): Likewise.
4401*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_ushort.c (main): Likewise.
4402*1fd5a2e1SPrashanth Swaminathan
4403*1fd5a2e1SPrashanth Swaminathan2004-03-20  Matthias Klose  <[email protected]>
4404*1fd5a2e1SPrashanth Swaminathan
4405*1fd5a2e1SPrashanth Swaminathan	* src/pa/linux.S: Fix typo.
4406*1fd5a2e1SPrashanth Swaminathan
4407*1fd5a2e1SPrashanth Swaminathan2004-03-19  Matthias Klose  <[email protected]>
4408*1fd5a2e1SPrashanth Swaminathan
4409*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Update.
4410*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
4411*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.h.in: Remove.
4412*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffitarget.h: New file.
4413*1fd5a2e1SPrashanth Swaminathan
4414*1fd5a2e1SPrashanth Swaminathan2004-02-10  Randolph Chung  <[email protected]>
4415*1fd5a2e1SPrashanth Swaminathan
4416*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add PA support.
4417*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
4418*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
4419*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add PA target.
4420*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
4421*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.c: New file.
4422*1fd5a2e1SPrashanth Swaminathan	* src/pa/ffi.h.in: Add PA support.
4423*1fd5a2e1SPrashanth Swaminathan	* src/pa/linux.S: New file.
4424*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c: Add PA support.
4425*1fd5a2e1SPrashanth Swaminathan
4426*1fd5a2e1SPrashanth Swaminathan2004-03-16  Hosaka Yuji  <[email protected]>
4427*1fd5a2e1SPrashanth Swaminathan
4428*1fd5a2e1SPrashanth Swaminathan	* src/types.c: Fix alignment size of X86_WIN32 case int64 and
4429*1fd5a2e1SPrashanth Swaminathan	double.
4430*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_args): Replace ecif->cif->rtype->type
4431*1fd5a2e1SPrashanth Swaminathan	with ecif->cif->flags.
4432*1fd5a2e1SPrashanth Swaminathan	(ffi_call, ffi_prep_incoming_args_SYSV): Replace cif->rtype->type
4433*1fd5a2e1SPrashanth Swaminathan	with cif->flags.
4434*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Add X86_WIN32 struct case.
4435*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_SYSV): Add 1 or 2-bytes struct case for X86_WIN32.
4436*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S (retstruct1b, retstruct2b, sc_retstruct1b,
4437*1fd5a2e1SPrashanth Swaminathan	sc_retstruct2b): Add for 1 or 2-bytes struct case.
4438*1fd5a2e1SPrashanth Swaminathan
4439*1fd5a2e1SPrashanth Swaminathan2004-03-15 Kelley Cook <[email protected]>
4440*1fd5a2e1SPrashanth Swaminathan
4441*1fd5a2e1SPrashanth Swaminathan	* configure.in: Rename file to ...
4442*1fd5a2e1SPrashanth Swaminathan	* configure.ac: ... this.
4443*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Regenerate.
4444*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
4445*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
4446*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Regenerate.
4447*1fd5a2e1SPrashanth Swaminathan
4448*1fd5a2e1SPrashanth Swaminathan2004-03-12  Matt Austern  <[email protected]>
4449*1fd5a2e1SPrashanth Swaminathan
4450*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: Fix EH information so it corresponds to
4451*1fd5a2e1SPrashanth Swaminathan	changes in EH format resulting from addition of linkonce support.
4452*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: Likewise.
4453*1fd5a2e1SPrashanth Swaminathan
4454*1fd5a2e1SPrashanth Swaminathan2004-03-11  Andreas Tobler  <[email protected]>
4455*1fd5a2e1SPrashanth Swaminathan	    Paolo Bonzini  <[email protected]>
4456*1fd5a2e1SPrashanth Swaminathan
4457*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AUTOMAKE_OPTIONS): Set them.
4458*1fd5a2e1SPrashanth Swaminathan	Remove VPATH. Remove rules for object files. Remove multilib support.
4459*1fd5a2e1SPrashanth Swaminathan	(AM_CCASFLAGS): Add.
4460*1fd5a2e1SPrashanth Swaminathan	* configure.in (AC_CONFIG_HEADERS): Relace AM_CONFIG_HEADER.
4461*1fd5a2e1SPrashanth Swaminathan	(AC_PREREQ): Bump version to 2.59.
4462*1fd5a2e1SPrashanth Swaminathan	(AC_INIT): Fill with version info and bug address.
4463*1fd5a2e1SPrashanth Swaminathan	(ORIGINAL_LD_FOR_MULTILIBS): Remove.
4464*1fd5a2e1SPrashanth Swaminathan	(AM_ENABLE_MULTILIB): Use this instead of AC_ARG_ENABLE.
4465*1fd5a2e1SPrashanth Swaminathan	De-precious CC so that the right flags are passed down to multilibs.
4466*1fd5a2e1SPrashanth Swaminathan	(AC_MSG_ERROR): Replace obsolete macro AC_ERROR.
4467*1fd5a2e1SPrashanth Swaminathan	(AC_CONFIG_FILES): Replace obsolete macro AC_LINK_FILES.
4468*1fd5a2e1SPrashanth Swaminathan	(AC_OUTPUT): Reorganize the output with AC_CONFIG_COMMANDS.
4469*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
4470*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Likewise.
4471*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, include/Makefile.in, testsuite/Makefile.in: Likewise.
4472*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Likewise.
4473*1fd5a2e1SPrashanth Swaminathan
4474*1fd5a2e1SPrashanth Swaminathan2004-03-11  Andreas Schwab  <[email protected]>
4475*1fd5a2e1SPrashanth Swaminathan
4476*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c (ffi_prep_incoming_args_UNIX): Get floating point
4477*1fd5a2e1SPrashanth Swaminathan	arguments from fp registers only for the first 8 parameter slots.
4478*1fd5a2e1SPrashanth Swaminathan	Don't convert a float parameter when passed in memory.
4479*1fd5a2e1SPrashanth Swaminathan
4480*1fd5a2e1SPrashanth Swaminathan2004-03-09  Hans-Peter Nilsson  <[email protected]>
4481*1fd5a2e1SPrashanth Swaminathan
4482*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate for config/accross.m4 correction.
4483*1fd5a2e1SPrashanth Swaminathan
4484*1fd5a2e1SPrashanth Swaminathan2004-02-25  Matt Kraai  <[email protected]>
4485*1fd5a2e1SPrashanth Swaminathan
4486*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args_SYSV): Change
4487*1fd5a2e1SPrashanth Swaminathan	ecif->cif->bytes to bytes.
4488*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Add braces around nested if statement.
4489*1fd5a2e1SPrashanth Swaminathan
4490*1fd5a2e1SPrashanth Swaminathan2004-02-09  Alan Modra  <[email protected]>
4491*1fd5a2e1SPrashanth Swaminathan
4492*1fd5a2e1SPrashanth Swaminathan	* src/types.c (pointer): POWERPC64 has 8 byte pointers.
4493*1fd5a2e1SPrashanth Swaminathan
4494*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args64): Correct long double handling.
4495*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_LINUX64): Fix typo.
4496*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble.c: Pass -mlong-double-128
4497*1fd5a2e1SPrashanth Swaminathan	for powerpc64-*-*.
4498*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float.c: Likewise.
4499*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float2.c: Likewise.
4500*1fd5a2e1SPrashanth Swaminathan
4501*1fd5a2e1SPrashanth Swaminathan2004-02-08  Alan Modra  <[email protected]>
4502*1fd5a2e1SPrashanth Swaminathan
4503*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_cif_machdep <FFI_LINUX64>): Correct
4504*1fd5a2e1SPrashanth Swaminathan	long double function return and long double arg handling.
4505*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_LINUX64): Formatting.  Delete unused "ng" var.
4506*1fd5a2e1SPrashanth Swaminathan	Use "end_pfr" instead of "nf".  Correct long double handling.
4507*1fd5a2e1SPrashanth Swaminathan	Localise "temp".
4508*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S (ffi_call_LINUX64): Save f2 long double
4509*1fd5a2e1SPrashanth Swaminathan	return value.
4510*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Allocate
4511*1fd5a2e1SPrashanth Swaminathan	space for long double return value.  Adjust stack frame and offsets.
4512*1fd5a2e1SPrashanth Swaminathan	Load f2 long double return.
4513*1fd5a2e1SPrashanth Swaminathan
4514*1fd5a2e1SPrashanth Swaminathan2004-02-07  Alan Modra  <[email protected]>
4515*1fd5a2e1SPrashanth Swaminathan
4516*1fd5a2e1SPrashanth Swaminathan	* src/types.c: Use 16 byte long double for POWERPC64.
4517*1fd5a2e1SPrashanth Swaminathan
4518*1fd5a2e1SPrashanth Swaminathan2004-01-25  Eric Botcazou  <[email protected]>
4519*1fd5a2e1SPrashanth Swaminathan
4520*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_prep_args_v9): Shift the parameter array
4521*1fd5a2e1SPrashanth Swaminathan	when the structure return address is passed in %o0.
4522*1fd5a2e1SPrashanth Swaminathan	(ffi_V9_return_struct): Rename into ffi_v9_layout_struct.
4523*1fd5a2e1SPrashanth Swaminathan	(ffi_v9_layout_struct): Align the field following a nested structure
4524*1fd5a2e1SPrashanth Swaminathan	on a word boundary.  Use memmove instead of memcpy.
4525*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Update call to ffi_V9_return_struct.
4526*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): Define 'ctx' only for V8.
4527*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_sparc_inner): Clone into ffi_closure_sparc_inner_v8
4528*1fd5a2e1SPrashanth Swaminathan	and ffi_closure_sparc_inner_v9.
4529*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_sparc_inner_v8): Return long doubles by reference.
4530*1fd5a2e1SPrashanth Swaminathan	Always skip the structure return address.  For structures and long
4531*1fd5a2e1SPrashanth Swaminathan	doubles, copy the argument directly.
4532*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_sparc_inner_v9): Skip the structure return address only
4533*1fd5a2e1SPrashanth Swaminathan	if required.  Shift the maximum floating-point slot accordingly.  For
4534*1fd5a2e1SPrashanth Swaminathan	big structures, copy the argument directly; otherwise, left-justify the
4535*1fd5a2e1SPrashanth Swaminathan	argument and call ffi_v9_layout_struct to lay out the structure on
4536*1fd5a2e1SPrashanth Swaminathan	the stack.
4537*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: Undef STACKFRAME before defining it.
4538*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_v8): Pass the structure return address.  Update call to
4539*1fd5a2e1SPrashanth Swaminathan	ffi_closure_sparc_inner_v8.  Short-circuit FFI_TYPE_INT handling.
4540*1fd5a2e1SPrashanth Swaminathan	Skip the 'unimp' insn when returning long doubles and structures.
4541*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S: Undef STACKFRAME before defining it.
4542*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_v9): Increase the frame size by 2 words.  Short-circuit
4543*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_INT handling.  Load structures both in integers and
4544*1fd5a2e1SPrashanth Swaminathan	floating-point registers on return.
4545*1fd5a2e1SPrashanth Swaminathan	* README: Update status of the SPARC port.
4546*1fd5a2e1SPrashanth Swaminathan
4547*1fd5a2e1SPrashanth Swaminathan2004-01-24  Andreas Tobler  <[email protected]>
4548*1fd5a2e1SPrashanth Swaminathan
4549*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/pyobjc-tc.c (main): Treat result value
4550*1fd5a2e1SPrashanth Swaminathan	as of type ffi_arg.
4551*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct3.c (main): Fix CHECK.
4552*1fd5a2e1SPrashanth Swaminathan
4553*1fd5a2e1SPrashanth Swaminathan2004-01-22  Ulrich Weigand  <[email protected]>
4554*1fd5a2e1SPrashanth Swaminathan
4555*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint.c (cls_ret_uint_fn): Treat result
4556*1fd5a2e1SPrashanth Swaminathan	value as of type ffi_arg, not unsigned int.
4557*1fd5a2e1SPrashanth Swaminathan
4558*1fd5a2e1SPrashanth Swaminathan2004-01-21  Michael Ritzert  <[email protected]>
4559*1fd5a2e1SPrashanth Swaminathan
4560*1fd5a2e1SPrashanth Swaminathan	* ffi64.c (ffi_prep_args): Cast the RHS of an assignment instead
4561*1fd5a2e1SPrashanth Swaminathan	of the LHS.
4562*1fd5a2e1SPrashanth Swaminathan
4563*1fd5a2e1SPrashanth Swaminathan2004-01-12  Andreas Tobler  <[email protected]>
4564*1fd5a2e1SPrashanth Swaminathan
4565*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Set LD_LIBRARY_PATH_32 for
4566*1fd5a2e1SPrashanth Swaminathan	Solaris.
4567*1fd5a2e1SPrashanth Swaminathan
4568*1fd5a2e1SPrashanth Swaminathan2004-01-08  Rainer Orth  <[email protected]>
4569*1fd5a2e1SPrashanth Swaminathan
4570*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h (allocate_mmap): Cast MAP_FAILED
4571*1fd5a2e1SPrashanth Swaminathan	to void *.
4572*1fd5a2e1SPrashanth Swaminathan
4573*1fd5a2e1SPrashanth Swaminathan2003-12-10  Richard Henderson  <[email protected]>
4574*1fd5a2e1SPrashanth Swaminathan
4575*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_pointer.c: Cast pointers to
4576*1fd5a2e1SPrashanth Swaminathan	size_t instead of int.
4577*1fd5a2e1SPrashanth Swaminathan
4578*1fd5a2e1SPrashanth Swaminathan2003-12-04  Hosaka Yuji  <[email protected]>
4579*1fd5a2e1SPrashanth Swaminathan
4580*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many_win32.c: Include <float.h>.
4581*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many_win32.c (main): Replace variable
4582*1fd5a2e1SPrashanth Swaminathan	int i with unsigned long ul.
4583*1fd5a2e1SPrashanth Swaminathan
4584*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint64.c: New test case.
4585*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint64.c: Likewise.
4586*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint32.c: Likewise.
4587*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint32.c: Likewise.
4588*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_uint16.c: Likewise.
4589*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint16.c: Likewise.
4590*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_float.c: Likewise.
4591*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_double.c: Likewise.
4592*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble.c: Likewise.
4593*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_pointer.c: Likewise.
4594*1fd5a2e1SPrashanth Swaminathan
4595*1fd5a2e1SPrashanth Swaminathan2003-12-02  Hosaka Yuji  <[email protected]>
4596*1fd5a2e1SPrashanth Swaminathan
4597*1fd5a2e1SPrashanth Swaminathan	PR other/13221
4598*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_args, ffi_prep_incoming_args_SYSV):
4599*1fd5a2e1SPrashanth Swaminathan	Align arguments to 32 bits.
4600*1fd5a2e1SPrashanth Swaminathan
4601*1fd5a2e1SPrashanth Swaminathan2003-12-01  Andreas Tobler  <[email protected]>
4602*1fd5a2e1SPrashanth Swaminathan
4603*1fd5a2e1SPrashanth Swaminathan	PR other/13221
4604*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_sshort.c: New test case.
4605*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_sshortchar.c: Likewise.
4606*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_uchar.c: Likewise.
4607*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_schar.c: Likewise.
4608*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_ushortchar.c: Likewise.
4609*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_multi_ushort.c: Likewise.
4610*1fd5a2e1SPrashanth Swaminathan
4611*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc: Cosmetics.
4612*1fd5a2e1SPrashanth Swaminathan
4613*1fd5a2e1SPrashanth Swaminathan2003-11-26  Kaveh R. Ghazi  <[email protected]>
4614*1fd5a2e1SPrashanth Swaminathan
4615*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Include <fcntl.h>.
4616*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/ffitestcxx.h: Likewise.
4617*1fd5a2e1SPrashanth Swaminathan
4618*1fd5a2e1SPrashanth Swaminathan2003-11-22  Andreas Tobler  <[email protected]>
4619*1fd5a2e1SPrashanth Swaminathan
4620*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
4621*1fd5a2e1SPrashanth Swaminathan	* configure: Likewise.
4622*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc: Convert the mmap to
4623*1fd5a2e1SPrashanth Swaminathan	the right type.
4624*1fd5a2e1SPrashanth Swaminathan
4625*1fd5a2e1SPrashanth Swaminathan2003-11-21  Andreas Jaeger  <[email protected]>
4626*1fd5a2e1SPrashanth Swaminathan	    Andreas Tobler  <[email protected]>
4627*1fd5a2e1SPrashanth Swaminathan
4628*1fd5a2e1SPrashanth Swaminathan	* acinclude.m4: Add AC_FUNC_MMAP_BLACKLIST.
4629*1fd5a2e1SPrashanth Swaminathan	* configure.in: Call AC_FUNC_MMAP_BLACKLIST.
4630*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
4631*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4: Likewise.
4632*1fd5a2e1SPrashanth Swaminathan	* configure: Likewise.
4633*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Likewise.
4634*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Add include dir.
4635*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Add MMAP definitions.
4636*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/ffitestcxx.h: Likewise.
4637*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c: Use MMAP functionality
4638*1fd5a2e1SPrashanth Swaminathan	for ffi_closure if available.
4639*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn1.c: Likewise.
4640*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn2.c: Likewise.
4641*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn3.c: Likewise.
4642*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn4.c: Likewise.
4643*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn5.c: Likewise.
4644*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_12byte.c: Likewise.
4645*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_16byte.c: Likewise.
4646*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_18byte.c: Likewise.
4647*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_19byte.c: Likewise.
4648*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_1_1byte.c: Likewise.
4649*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte.c: Likewise.
4650*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte1.c: Likewise.
4651*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_24byte.c: Likewise.
4652*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_2byte.c: Likewise.
4653*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3_1byte.c: Likewise.
4654*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte1.c: Likewise.
4655*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte2.c: Likewise.
4656*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4_1byte.c: Likewise.
4657*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4byte.c: Likewise.
4658*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5byte.c: Likewise.
4659*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_64byte.c: Likewise.
4660*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6byte.c: Likewise.
4661*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7byte.c: Likewise.
4662*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_8byte.c: Likewise.
4663*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte1.c: Likewise.
4664*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte2.c: Likewise.
4665*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double.c: Likewise.
4666*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_float.c: Likewise.
4667*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_schar.c: Likewise.
4668*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sint.c: Likewise.
4669*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sshort.c: Likewise.
4670*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uchar.c: Likewise.
4671*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint.c: Likewise.
4672*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ulonglong.c: Likewise.
4673*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ushort.c: Likewise.
4674*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct.c: Likewise.
4675*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct1.c: Likewise.
4676*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct2.c: Likewise.
4677*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct3.c: Likewise.
4678*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/problem1.c: Likewise.
4679*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc: Likewise.
4680*1fd5a2e1SPrashanth Swaminathan
4681*1fd5a2e1SPrashanth Swaminathan2003-11-20  Andreas Tobler  <[email protected]>
4682*1fd5a2e1SPrashanth Swaminathan
4683*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Make the -lgcc_s conditional.
4684*1fd5a2e1SPrashanth Swaminathan
4685*1fd5a2e1SPrashanth Swaminathan2003-11-19  Andreas Tobler  <[email protected]>
4686*1fd5a2e1SPrashanth Swaminathan
4687*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Add DYLD_LIBRARY_PATH for darwin.
4688*1fd5a2e1SPrashanth Swaminathan	Add -lgcc_s to additional flags.
4689*1fd5a2e1SPrashanth Swaminathan
4690*1fd5a2e1SPrashanth Swaminathan2003-11-12  Andreas Tobler  <[email protected]>
4691*1fd5a2e1SPrashanth Swaminathan
4692*1fd5a2e1SPrashanth Swaminathan	* configure.in, include/Makefile.am: PR libgcj/11147, install
4693*1fd5a2e1SPrashanth Swaminathan	the ffitarget.h header file in a gcc versioned and target
4694*1fd5a2e1SPrashanth Swaminathan	dependent place.
4695*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerated.
4696*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, include/Makefile.in: Likewise.
4697*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Likewise.
4698*1fd5a2e1SPrashanth Swaminathan
4699*1fd5a2e1SPrashanth Swaminathan2003-11-09  Andreas Tobler  <[email protected]>
4700*1fd5a2e1SPrashanth Swaminathan
4701*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c: Print result and check
4702*1fd5a2e1SPrashanth Swaminathan	with dg-output to make debugging easier.
4703*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn1.c: Likewise.
4704*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn2.c: Likewise.
4705*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn3.c: Likewise.
4706*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn4.c: Likewise.
4707*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn5.c: Likewise.
4708*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_12byte.c: Likewise.
4709*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_16byte.c: Likewise.
4710*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_18byte.c: Likewise.
4711*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_19byte.c: Likewise.
4712*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_1_1byte.c: Likewise.
4713*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte.c: Likewise.
4714*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte1.c: Likewise.
4715*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_24byte.c: Likewise.
4716*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_2byte.c: Likewise.
4717*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3_1byte.c: Likewise.
4718*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte1.c: Likewise.
4719*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte2.c: Likewise.
4720*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4_1byte.c: Likewise.
4721*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4byte.c: Likewise.
4722*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5byte.c: Likewise.
4723*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_64byte.c: Likewise.
4724*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6byte.c: Likewise.
4725*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7byte.c: Likewise.
4726*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_8byte.c: Likewise.
4727*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte1.c: Likewise.
4728*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte2.c: Likewise.
4729*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double.c: Likewise.
4730*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_float.c: Likewise.
4731*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_schar.c: Likewise.
4732*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sint.c: Likewise.
4733*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sshort.c: Likewise.
4734*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uchar.c: Likewise.
4735*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint.c: Likewise.
4736*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ulonglong.c: Likewise.
4737*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ushort.c: Likewise.
4738*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/problem1.c: Likewise.
4739*1fd5a2e1SPrashanth Swaminathan
4740*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc: Make ffi_closure
4741*1fd5a2e1SPrashanth Swaminathan	static.
4742*1fd5a2e1SPrashanth Swaminathan
4743*1fd5a2e1SPrashanth Swaminathan2003-11-08  Andreas Tobler  <[email protected]>
4744*1fd5a2e1SPrashanth Swaminathan
4745*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte2.c: New test case.
4746*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_9byte1.c: Likewise.
4747*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_64byte.c: Likewise.
4748*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte1.c: Likewise.
4749*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_19byte.c: Likewise.
4750*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_18byte.c: Likewise.
4751*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn4.c: Likewise.
4752*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn5.c: Likewise.
4753*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_schar.c: Likewise.
4754*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sint.c: Likewise.
4755*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_sshort.c: Likewise.
4756*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct2.c: Likewise.
4757*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct3.c: Likewise.
4758*1fd5a2e1SPrashanth Swaminathan
4759*1fd5a2e1SPrashanth Swaminathan2003-11-08  Andreas Tobler  <[email protected]>
4760*1fd5a2e1SPrashanth Swaminathan
4761*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double.c: Do a check on the result.
4762*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uchar.c: Likewise.
4763*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint.c: Likewise.
4764*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ulonglong.c: Likewise.
4765*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ushort.c: Likewise.
4766*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_sc.c: Cleanup whitespaces.
4767*1fd5a2e1SPrashanth Swaminathan
4768*1fd5a2e1SPrashanth Swaminathan2003-11-06  Andreas Tobler  <[email protected]>
4769*1fd5a2e1SPrashanth Swaminathan
4770*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif): Move the validity check after
4771*1fd5a2e1SPrashanth Swaminathan	the initialization.
4772*1fd5a2e1SPrashanth Swaminathan
4773*1fd5a2e1SPrashanth Swaminathan2003-10-23  Andreas Tobler  <[email protected]>
4774*1fd5a2e1SPrashanth Swaminathan
4775*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api.c (ffi_java_ptrarray_to_raw): Replace
4776*1fd5a2e1SPrashanth Swaminathan	FFI_ASSERT(FALSE) with FFI_ASSERT(0).
4777*1fd5a2e1SPrashanth Swaminathan
4778*1fd5a2e1SPrashanth Swaminathan2003-10-22  David Daney  <[email protected]>
4779*1fd5a2e1SPrashanth Swaminathan
4780*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h: Replace undefined UINT32 and friends with
4781*1fd5a2e1SPrashanth Swaminathan	__attribute__((__mode__(__SI__))) and friends.
4782*1fd5a2e1SPrashanth Swaminathan
4783*1fd5a2e1SPrashanth Swaminathan2003-10-22  Andreas Schwab  <[email protected]>
4784*1fd5a2e1SPrashanth Swaminathan
4785*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c: Replace FALSE/TRUE with false/true.
4786*1fd5a2e1SPrashanth Swaminathan
4787*1fd5a2e1SPrashanth Swaminathan2003-10-21  Andreas Tobler  <[email protected]>
4788*1fd5a2e1SPrashanth Swaminathan
4789*1fd5a2e1SPrashanth Swaminathan	* configure.in: AC_LINK_FILES(ffitarget.h).
4790*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
4791*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Likewise.
4792*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Likewise.
4793*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Likewise.
4794*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Likewise.
4795*1fd5a2e1SPrashanth Swaminathan
4796*1fd5a2e1SPrashanth Swaminathan2003-10-21  Paolo Bonzini  <[email protected]>
4797*1fd5a2e1SPrashanth Swaminathan	    Richard Henderson  <[email protected]>
4798*1fd5a2e1SPrashanth Swaminathan
4799*1fd5a2e1SPrashanth Swaminathan	Avoid that ffi.h includes fficonfig.h.
4800*1fd5a2e1SPrashanth Swaminathan
4801*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Include ffitarget.h files
4802*1fd5a2e1SPrashanth Swaminathan	(TARGET_SRC_MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX.
4803*1fd5a2e1SPrashanth Swaminathan	(TARGET_SRC_MIPS_SGI): Removed.
4804*1fd5a2e1SPrashanth Swaminathan	(MIPS_GCC): Renamed to TARGET_SRC_MIPS_IRIX.
4805*1fd5a2e1SPrashanth Swaminathan	(MIPS_SGI): Removed.
4806*1fd5a2e1SPrashanth Swaminathan	(CLEANFILES): Removed.
4807*1fd5a2e1SPrashanth Swaminathan	(mostlyclean-am, clean-am, mostlyclean-sub, clean-sub): New
4808*1fd5a2e1SPrashanth Swaminathan	targets.
4809*1fd5a2e1SPrashanth Swaminathan	* acconfig.h: Removed.
4810*1fd5a2e1SPrashanth Swaminathan	* configure.in: Compute sizeofs only for double and long double.
4811*1fd5a2e1SPrashanth Swaminathan	Use them to define and subst HAVE_LONG_DOUBLE.  Include comments
4812*1fd5a2e1SPrashanth Swaminathan	into AC_DEFINE instead of using acconfig.h.  Create
4813*1fd5a2e1SPrashanth Swaminathan	include/ffitarget.h instead of include/fficonfig.h.  Rename
4814*1fd5a2e1SPrashanth Swaminathan	MIPS_GCC to MIPS_IRIX, drop MIPS_SGI since we are in gcc's tree.
4815*1fd5a2e1SPrashanth Swaminathan	AC_DEFINE EH_FRAME_FLAGS.
4816*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.am (DISTCLEANFILES): New automake macro.
4817*1fd5a2e1SPrashanth Swaminathan	(hack_DATA): Add ffitarget.h.
4818*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Remove all system specific definitions.
4819*1fd5a2e1SPrashanth Swaminathan	Declare raw API even if it is not installed, why bother?
4820*1fd5a2e1SPrashanth Swaminathan	Use limits.h instead of SIZEOF_* to define ffi_type_*.  Do
4821*1fd5a2e1SPrashanth Swaminathan	not define EH_FRAME_FLAGS, it is in fficonfig.h now.  Include
4822*1fd5a2e1SPrashanth Swaminathan	ffitarget.h instead of fficonfig.h.  Remove ALIGN macro.
4823*1fd5a2e1SPrashanth Swaminathan	(UINT_ARG, INT_ARG): Removed, use ffi_arg and ffi_sarg instead.
4824*1fd5a2e1SPrashanth Swaminathan	* include/ffi_common.h (bool): Do not define.
4825*1fd5a2e1SPrashanth Swaminathan	(ffi_assert): Accept failed assertion.
4826*1fd5a2e1SPrashanth Swaminathan	(ffi_type_test): Return void and accept file/line.
4827*1fd5a2e1SPrashanth Swaminathan	(FFI_ASSERT): Pass stringized failed assertion.
4828*1fd5a2e1SPrashanth Swaminathan	(FFI_ASSERT_AT): New macro.
4829*1fd5a2e1SPrashanth Swaminathan	(FFI_ASSERT_VALID_TYPE): New macro.
4830*1fd5a2e1SPrashanth Swaminathan	(UINT8, SINT8, UINT16, SINT16, UINT32, SINT32,
4831*1fd5a2e1SPrashanth Swaminathan	UINT64, SINT64): Define here with gcc's __attribute__ macro
4832*1fd5a2e1SPrashanth Swaminathan	instead of in ffi.h
4833*1fd5a2e1SPrashanth Swaminathan	(FLOAT32, ALIGN): Define here instead of in ffi.h
4834*1fd5a2e1SPrashanth Swaminathan	* include/ffi-mips.h: Removed.  Its content moved to
4835*1fd5a2e1SPrashanth Swaminathan	src/mips/ffitarget.h after separating assembly and C sections.
4836*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c, src/alpha/ffi.c, src/java_raw_api.c
4837*1fd5a2e1SPrashanth Swaminathan	src/prep_cif.c, src/raw_api.c, src/ia64/ffi.c,
4838*1fd5a2e1SPrashanth Swaminathan	src/mips/ffi.c, src/mips/n32.S, src/mips/o32.S,
4839*1fd5a2e1SPrashanth Swaminathan	src/mips/ffitarget.h, src/sparc/ffi.c, src/x86/ffi64.c:
4840*1fd5a2e1SPrashanth Swaminathan	SIZEOF_ARG -> FFI_SIZEOF_ARG.
4841*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c: Include stdbool.h (provided by GCC 2.95+).
4842*1fd5a2e1SPrashanth Swaminathan	* src/debug.c (ffi_assert): Accept stringized failed assertion.
4843*1fd5a2e1SPrashanth Swaminathan	(ffi_type_test): Rewritten.
4844*1fd5a2e1SPrashanth Swaminathan	* src/prep-cif.c (initialize_aggregate, ffi_prep_cif): Call
4845*1fd5a2e1SPrashanth Swaminathan	FFI_ASSERT_VALID_TYPE.
4846*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffitarget.h, src/arm/ffitarget.h,
4847*1fd5a2e1SPrashanth Swaminathan	src/ia64/ffitarget.h, src/m68k/ffitarget.h,
4848*1fd5a2e1SPrashanth Swaminathan	src/mips/ffitarget.h, src/powerpc/ffitarget.h,
4849*1fd5a2e1SPrashanth Swaminathan	src/s390/ffitarget.h, src/sh/ffitarget.h,
4850*1fd5a2e1SPrashanth Swaminathan	src/sh64/ffitarget.h, src/sparc/ffitarget.h,
4851*1fd5a2e1SPrashanth Swaminathan	src/x86/ffitarget.h: New files.
4852*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S, src/arm/sysv.S, src/ia64/unix.S,
4853*1fd5a2e1SPrashanth Swaminathan	src/m68k/sysv.S, src/mips/n32.S, src/mips/o32.S,
4854*1fd5a2e1SPrashanth Swaminathan	src/powerpc/aix.S, src/powerpc/darwin.S,
4855*1fd5a2e1SPrashanth Swaminathan	src/powerpc/ffi_darwin.c, src/powerpc/linux64.S,
4856*1fd5a2e1SPrashanth Swaminathan	src/powerpc/linux64_closure.S, src/powerpc/ppc_closure.S,
4857*1fd5a2e1SPrashanth Swaminathan	src/powerpc/sysv.S, src/s390/sysv.S, src/sh/sysv.S,
4858*1fd5a2e1SPrashanth Swaminathan	src/sh64/sysv.S, src/sparc/v8.S, src/sparc/v9.S,
4859*1fd5a2e1SPrashanth Swaminathan	src/x86/sysv.S, src/x86/unix64.S, src/x86/win32.S:
4860*1fd5a2e1SPrashanth Swaminathan	include fficonfig.h
4861*1fd5a2e1SPrashanth Swaminathan
4862*1fd5a2e1SPrashanth Swaminathan2003-10-20  Rainer Orth  <[email protected]>
4863*1fd5a2e1SPrashanth Swaminathan
4864*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c: Use _ABIN32, _ABIO32 instead of external
4865*1fd5a2e1SPrashanth Swaminathan	_MIPS_SIM_NABI32, _MIPS_SIM_ABI32.
4866*1fd5a2e1SPrashanth Swaminathan
4867*1fd5a2e1SPrashanth Swaminathan2003-10-19  Andreas Tobler  <[email protected]>
4868*1fd5a2e1SPrashanth Swaminathan
4869*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Declare bytes again.
4870*1fd5a2e1SPrashanth Swaminathan	Used when FFI_DEBUG = 1.
4871*1fd5a2e1SPrashanth Swaminathan
4872*1fd5a2e1SPrashanth Swaminathan2003-10-14  Alan Modra  <[email protected]>
4873*1fd5a2e1SPrashanth Swaminathan
4874*1fd5a2e1SPrashanth Swaminathan	* src/types.c (double, longdouble): Default POWERPC64 to 8 byte size
4875*1fd5a2e1SPrashanth Swaminathan	and align.
4876*1fd5a2e1SPrashanth Swaminathan
4877*1fd5a2e1SPrashanth Swaminathan2003-10-06  Rainer Orth  <[email protected]>
4878*1fd5a2e1SPrashanth Swaminathan
4879*1fd5a2e1SPrashanth Swaminathan	* include/ffi_mips.h: Define FFI_MIPS_N32 for N32/N64 ABIs,
4880*1fd5a2e1SPrashanth Swaminathan	FFI_MIPS_O32 for O32 ABI.
4881*1fd5a2e1SPrashanth Swaminathan
4882*1fd5a2e1SPrashanth Swaminathan2003-10-01  Andreas Tobler  <[email protected]>
4883*1fd5a2e1SPrashanth Swaminathan
4884*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Set LD_LIBRARY_PATH_64 for
4885*1fd5a2e1SPrashanth Swaminathan	SPARC64. Cleanup whitespaces.
4886*1fd5a2e1SPrashanth Swaminathan
4887*1fd5a2e1SPrashanth Swaminathan2003-09-19  Andreas Tobler  <[email protected]>
4888*1fd5a2e1SPrashanth Swaminathan
4889*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c: Xfail mips, arm,
4890*1fd5a2e1SPrashanth Swaminathan	strongarm, xscale. Cleanup whitespaces.
4891*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn1.c: Likewise.
4892*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn2.c: Likewise.
4893*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn3.c: Likewise.
4894*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_12byte.c: Likewise.
4895*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_16byte.c: Likewise.
4896*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_1_1byte.c: Likewise.
4897*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte.c: Likewise.
4898*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_24byte.c: Likewise.
4899*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_2byte.c: Likewise.
4900*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3_1byte.c: Likewise.
4901*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte1.c: Likewise.
4902*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte2.c: Likewise.
4903*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4_1byte.c: Likewise.
4904*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4byte.c: Likewise.
4905*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5byte.c: Likewise.
4906*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6byte.c: Likewise.
4907*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7byte.c: Likewise.
4908*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_8byte.c: Likewise.
4909*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double.c: Likewise.
4910*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_float.c: Likewise.
4911*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uchar.c: Likewise.
4912*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint.c: Likewise.
4913*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ulonglong.c: Likewise.
4914*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ushort.c: Likewise.
4915*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct.c: Likewise.
4916*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct1.c: Likewise.
4917*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/problem1.c: Likewise.
4918*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc: Likewise.
4919*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/pyobjc-tc.c: Cleanup whitespaces.
4920*1fd5a2e1SPrashanth Swaminathan
4921*1fd5a2e1SPrashanth Swaminathan2003-09-18  David Edelsohn  <[email protected]>
4922*1fd5a2e1SPrashanth Swaminathan
4923*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix.S: Cleanup whitespaces.
4924*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S: Likewise.
4925*1fd5a2e1SPrashanth Swaminathan
4926*1fd5a2e1SPrashanth Swaminathan2003-09-18  Andreas Tobler  <[email protected]>
4927*1fd5a2e1SPrashanth Swaminathan
4928*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: Cleanup whitespaces, comment formatting.
4929*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: Likewise.
4930*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c: Likewise.
4931*1fd5a2e1SPrashanth Swaminathan
4932*1fd5a2e1SPrashanth Swaminathan2003-09-18  Andreas Tobler  <[email protected]>
4933*1fd5a2e1SPrashanth Swaminathan	    David Edelsohn  <[email protected]>
4934*1fd5a2e1SPrashanth Swaminathan
4935*1fd5a2e1SPrashanth Swaminathan	* src/types.c (double): Add AIX and Darwin to the right TYPEDEF.
4936*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S: Remove the pointer to the outgoing
4937*1fd5a2e1SPrashanth Swaminathan	parameter stack.
4938*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: Likewise.
4939*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Handle structures
4940*1fd5a2e1SPrashanth Swaminathan	according to the Darwin/AIX ABI.
4941*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Likewise.
4942*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_DARWIN): Likewise.
4943*1fd5a2e1SPrashanth Swaminathan	Remove the outgoing parameter stack logic. Simplify the evaluation
4944*1fd5a2e1SPrashanth Swaminathan	of the different CASE types.
4945*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_clousure): Avoid the casts on lvalues. Change the branch
4946*1fd5a2e1SPrashanth Swaminathan	statement in the trampoline code.
4947*1fd5a2e1SPrashanth Swaminathan
4948*1fd5a2e1SPrashanth Swaminathan2003-09-18  Kaz Kojima  <[email protected]>
4949*1fd5a2e1SPrashanth Swaminathan
4950*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c (ffi_prep_args): Take account into the alignement
4951*1fd5a2e1SPrashanth Swaminathan	for the register size.
4952*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Handle the structure return value
4953*1fd5a2e1SPrashanth Swaminathan	address correctly.
4954*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Return the appropriate type when
4955*1fd5a2e1SPrashanth Swaminathan	the registers are used for the structure return value.
4956*1fd5a2e1SPrashanth Swaminathan	* src/sh/sysv.S (ffi_closure_SYSV): Fix the stack layout for
4957*1fd5a2e1SPrashanth Swaminathan	the 64-bit return value.  Update copyright years.
4958*1fd5a2e1SPrashanth Swaminathan
4959*1fd5a2e1SPrashanth Swaminathan2003-09-17  Rainer Orth  <[email protected]>
4960*1fd5a2e1SPrashanth Swaminathan
4961*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp (libffi_target_compile): Search in
4962*1fd5a2e1SPrashanth Swaminathan	srcdir for ffi_mips.h.
4963*1fd5a2e1SPrashanth Swaminathan
4964*1fd5a2e1SPrashanth Swaminathan2003-09-12  Alan Modra  <[email protected]>
4965*1fd5a2e1SPrashanth Swaminathan
4966*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (initialize_aggregate): Include tail padding in
4967*1fd5a2e1SPrashanth Swaminathan	structure size.
4968*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Correct
4969*1fd5a2e1SPrashanth Swaminathan	placement of float result.
4970*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc (closure_test_fn1): Correct
4971*1fd5a2e1SPrashanth Swaminathan	cast of "resp" for big-endian 64 bit machines.
4972*1fd5a2e1SPrashanth Swaminathan
4973*1fd5a2e1SPrashanth Swaminathan2003-09-11  Alan Modra  <[email protected]>
4974*1fd5a2e1SPrashanth Swaminathan
4975*1fd5a2e1SPrashanth Swaminathan	* src/types.c (double, longdouble): Merge identical SH and ARM
4976*1fd5a2e1SPrashanth Swaminathan	typedefs, and add POWERPC64.
4977*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args64): Correct next_arg calc for
4978*1fd5a2e1SPrashanth Swaminathan	struct split over gpr and rest.
4979*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Correct intarg_count for structures.
4980*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S (ffi_call_LINUX64): Fix gpr offsets.
4981*1fd5a2e1SPrashanth Swaminathan
4982*1fd5a2e1SPrashanth Swaminathan2003-09-09  Andreas Tobler  <[email protected]>
4983*1fd5a2e1SPrashanth Swaminathan
4984*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_closure_helper_SYSV) Handle struct
4985*1fd5a2e1SPrashanth Swaminathan	passing correctly.
4986*1fd5a2e1SPrashanth Swaminathan
4987*1fd5a2e1SPrashanth Swaminathan2003-09-09  Alan Modra  <[email protected]>
4988*1fd5a2e1SPrashanth Swaminathan
4989*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
4990*1fd5a2e1SPrashanth Swaminathan
4991*1fd5a2e1SPrashanth Swaminathan2003-09-04  Andreas Tobler  <[email protected]>
4992*1fd5a2e1SPrashanth Swaminathan
4993*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Remove build rules for ffitest.
4994*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
4995*1fd5a2e1SPrashanth Swaminathan
4996*1fd5a2e1SPrashanth Swaminathan2003-09-04  Andreas Tobler  <[email protected]>
4997*1fd5a2e1SPrashanth Swaminathan
4998*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api.c: Include <stdlib.h> to fix compiler warning
4999*1fd5a2e1SPrashanth Swaminathan	about implicit declaration of abort().
5000*1fd5a2e1SPrashanth Swaminathan
5001*1fd5a2e1SPrashanth Swaminathan2003-09-04  Andreas Tobler  <[email protected]>
5002*1fd5a2e1SPrashanth Swaminathan
5003*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add dejagnu test framework. Fixes PR other/11411.
5004*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5005*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add dejagnu test framework.
5006*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5007*1fd5a2e1SPrashanth Swaminathan
5008*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.am: New file.
5009*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.in: Built
5010*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: New file.
5011*1fd5a2e1SPrashanth Swaminathan	* testsuite/config/default.exp: Likewise.
5012*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/call.exp: Likewise.
5013*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h: Likewise.
5014*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c: Likewise.
5015*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn1.c: Likewise.
5016*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn2.c: Likewise.
5017*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn3.c: Likewise.
5018*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_1_1byte.c: Likewise.
5019*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3_1byte.c: Likewise.
5020*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4_1byte.c: Likewise.
5021*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_2byte.c: Likewise.
5022*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte1.c: Likewise.
5023*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_3byte2.c: Likewise.
5024*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_4byte.c: Likewise.
5025*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_5byte.c: Likewise.
5026*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_6byte.c: Likewise.
5027*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_7byte.c: Likewise.
5028*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_8byte.c: Likewise.
5029*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_12byte.c: Likewise.
5030*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_16byte.c: Likewise.
5031*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_20byte.c: Likewise.
5032*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_24byte.c: Likewise.
5033*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_double.c: Likewise.
5034*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_float.c: Likewise.
5035*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uchar.c: Likewise.
5036*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_uint.c: Likewise.
5037*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ulonglong.c: Likewise.
5038*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_ushort.c: Likewise.
5039*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float.c: Likewise.
5040*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float1.c: Likewise.
5041*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float2.c: Likewise.
5042*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many.c: Likewise.
5043*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/many_win32.c: Likewise.
5044*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct.c: Likewise.
5045*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/nested_struct1.c: Likewise.
5046*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/pyobjc-tc.c: Likewise.
5047*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/problem1.c: Likewise.
5048*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/promotion.c: Likewise.
5049*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_ll.c: Likewise.
5050*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_sc.c: Likewise.
5051*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/return_uc.c: Likewise.
5052*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/strlen.c: Likewise.
5053*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/strlen_win32.c: Likewise.
5054*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct1.c: Likewise.
5055*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct2.c: Likewise.
5056*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct3.c: Likewise.
5057*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct4.c: Likewise.
5058*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct5.c: Likewise.
5059*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct6.c: Likewise.
5060*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct7.c: Likewise.
5061*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct8.c: Likewise.
5062*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/struct9.c: Likewise.
5063*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/special.exp: New file.
5064*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/ffitestcxx.h: Likewise.
5065*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.special/unwindtest.cc: Likewise.
5066*1fd5a2e1SPrashanth Swaminathan
5067*1fd5a2e1SPrashanth Swaminathan
5068*1fd5a2e1SPrashanth Swaminathan2003-08-13  Kaz Kojima  <[email protected]>
5069*1fd5a2e1SPrashanth Swaminathan
5070*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c (OFS_INT16): Set 0 for little endian case.  Update
5071*1fd5a2e1SPrashanth Swaminathan	copyright years.
5072*1fd5a2e1SPrashanth Swaminathan
5073*1fd5a2e1SPrashanth Swaminathan2003-08-02  Alan Modra  <[email protected]>
5074*1fd5a2e1SPrashanth Swaminathan
5075*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args64): Modify for changed gcc
5076*1fd5a2e1SPrashanth Swaminathan	structure passing.
5077*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_LINUX64): Likewise.
5078*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S: Remove code writing to parm save area.
5079*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S (ffi_closure_LINUX64): Use return
5080*1fd5a2e1SPrashanth Swaminathan	address in lr from ffi_closure_helper_LINUX64 call to calculate
5081*1fd5a2e1SPrashanth Swaminathan	table address.  Optimize function tail.
5082*1fd5a2e1SPrashanth Swaminathan
5083*1fd5a2e1SPrashanth Swaminathan2003-07-28  Andreas Tobler  <[email protected]>
5084*1fd5a2e1SPrashanth Swaminathan
5085*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c: Handle all floating point registers.
5086*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S: Likewise. Fixes second part of PR target/11410.
5087*1fd5a2e1SPrashanth Swaminathan
5088*1fd5a2e1SPrashanth Swaminathan2003-07-11  Gerald Pfeifer  <[email protected]>
5089*1fd5a2e1SPrashanth Swaminathan
5090*1fd5a2e1SPrashanth Swaminathan	* README: Note that libffi is not part of GCC.  Update the project
5091*1fd5a2e1SPrashanth Swaminathan	URL and status.
5092*1fd5a2e1SPrashanth Swaminathan
5093*1fd5a2e1SPrashanth Swaminathan2003-06-19  Franz Sirl  <[email protected]>
5094*1fd5a2e1SPrashanth Swaminathan
5095*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Include ffi.h.
5096*1fd5a2e1SPrashanth Swaminathan
5097*1fd5a2e1SPrashanth Swaminathan2003-06-13  Rainer Orth  <[email protected]>
5098*1fd5a2e1SPrashanth Swaminathan
5099*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S: Avoid gas-only .uleb128/.sleb128 directives.
5100*1fd5a2e1SPrashanth Swaminathan	Use C style comments.
5101*1fd5a2e1SPrashanth Swaminathan
5102*1fd5a2e1SPrashanth Swaminathan2003-06-13  Kaz Kojima  <[email protected]>
5103*1fd5a2e1SPrashanth Swaminathan
5104*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add SHmedia support.  Fix a typo of SH support.
5105*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
5106*1fd5a2e1SPrashanth Swaminathan	* configure.in (sh64-*-linux*, sh5*-*-linux*): Add target.
5107*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5108*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add SHmedia support.
5109*1fd5a2e1SPrashanth Swaminathan	* src/sh64/ffi.c: New file.
5110*1fd5a2e1SPrashanth Swaminathan	* src/sh64/sysv.S: New file.
5111*1fd5a2e1SPrashanth Swaminathan
5112*1fd5a2e1SPrashanth Swaminathan2003-05-16  Jakub Jelinek  <[email protected]>
5113*1fd5a2e1SPrashanth Swaminathan
5114*1fd5a2e1SPrashanth Swaminathan	* configure.in (HAVE_RO_EH_FRAME): Check whether .eh_frame section
5115*1fd5a2e1SPrashanth Swaminathan	should be read-only.
5116*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5117*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Rebuilt.
5118*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (EH_FRAME_FLAGS): Define.
5119*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S: Use EH_FRAME_FLAGS.
5120*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S: Likewise.
5121*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S: Likewise.  Include ffi.h.
5122*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Use EH_FRAME_FLAGS.  Use pcrel encoding
5123*1fd5a2e1SPrashanth Swaminathan	if -fpic/-fPIC/-mrelocatable.
5124*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/powerpc_closure.S: Likewise.
5125*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: If HAVE_RO_EH_FRAME is defined, don't include
5126*1fd5a2e1SPrashanth Swaminathan	#write in .eh_frame flags.
5127*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S: Likewise.
5128*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S: Use EH_FRAME_FLAGS.
5129*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S: Likewise.  Use pcrel encoding if -fpic/-fPIC.
5130*1fd5a2e1SPrashanth Swaminathan	* src/s390/sysv.S: Use EH_FRAME_FLAGS.  Include ffi.h.
5131*1fd5a2e1SPrashanth Swaminathan
5132*1fd5a2e1SPrashanth Swaminathan2003-05-07  Jeff Sturm  <[email protected]>
5133*1fd5a2e1SPrashanth Swaminathan
5134*1fd5a2e1SPrashanth Swaminathan	Fixes PR bootstrap/10656
5135*1fd5a2e1SPrashanth Swaminathan	* configure.in (HAVE_AS_REGISTER_PSEUDO_OP): Test assembler
5136*1fd5a2e1SPrashanth Swaminathan	support for .register pseudo-op.
5137*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: Use it.
5138*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Rebuilt.
5139*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5140*1fd5a2e1SPrashanth Swaminathan
5141*1fd5a2e1SPrashanth Swaminathan2003-04-18  Jakub Jelinek  <[email protected]>
5142*1fd5a2e1SPrashanth Swaminathan
5143*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (POWERPC64): Define if 64-bit.
5144*1fd5a2e1SPrashanth Swaminathan	(enum ffi_abi): Add FFI_LINUX64 on POWERPC.
5145*1fd5a2e1SPrashanth Swaminathan	Make it the default on POWERPC64.
5146*1fd5a2e1SPrashanth Swaminathan	(FFI_TRAMPOLINE_SIZE): Define to 24 on POWERPC64.
5147*1fd5a2e1SPrashanth Swaminathan	* configure.in: Change powerpc-*-linux* into powerpc*-*-linux*.
5148*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5149*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (hidden): Define.
5150*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args_SYSV): Renamed from
5151*1fd5a2e1SPrashanth Swaminathan	ffi_prep_args.  Cast pointers to unsigned long to shut up warnings.
5152*1fd5a2e1SPrashanth Swaminathan	(NUM_GPR_ARG_REGISTERS64, NUM_FPR_ARG_REGISTERS64,
5153*1fd5a2e1SPrashanth Swaminathan	ASM_NEEDS_REGISTERS64): New.
5154*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args64): New function.
5155*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Handle FFI_LINUX64 ABI.
5156*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Likewise.
5157*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): Likewise.
5158*1fd5a2e1SPrashanth Swaminathan	(flush_icache): Surround by #ifndef POWERPC64.
5159*1fd5a2e1SPrashanth Swaminathan	(ffi_dblfl): New union type.
5160*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Use it to avoid aliasing problems.
5161*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_LINUX64): New function.
5162*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Surround whole file by #ifndef
5163*1fd5a2e1SPrashanth Swaminathan	__powerpc64__.
5164*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Likewise.
5165*1fd5a2e1SPrashanth Swaminathan	(ffi_call_SYSV): Rename ffi_prep_args to ffi_prep_args_SYSV.
5166*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S: New file.
5167*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S: New file.
5168*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add src/powerpc/linux64.S and
5169*1fd5a2e1SPrashanth Swaminathan	src/powerpc/linux64_closure.S.
5170*1fd5a2e1SPrashanth Swaminathan	(TARGET_SRC_POWERPC): Likewise.
5171*1fd5a2e1SPrashanth Swaminathan
5172*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (closure_test_fn, closure_test_fn1, closure_test_fn2,
5173*1fd5a2e1SPrashanth Swaminathan	closure_test_fn3): Fix result printing on big-endian 64-bit
5174*1fd5a2e1SPrashanth Swaminathan	machines.
5175*1fd5a2e1SPrashanth Swaminathan	(main): Print tst2_arg instead of uninitialized tst2_result.
5176*1fd5a2e1SPrashanth Swaminathan
5177*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (main): Hide what closure pointer really points to
5178*1fd5a2e1SPrashanth Swaminathan	from the compiler.
5179*1fd5a2e1SPrashanth Swaminathan
5180*1fd5a2e1SPrashanth Swaminathan2003-04-16  Richard Earnshaw  <[email protected]>
5181*1fd5a2e1SPrashanth Swaminathan
5182*1fd5a2e1SPrashanth Swaminathan	* configure.in (arm-*-netbsdelf*): Add configuration.
5183*1fd5a2e1SPrashanth Swaminathan	(configure): Regenerated.
5184*1fd5a2e1SPrashanth Swaminathan
5185*1fd5a2e1SPrashanth Swaminathan2003-04-04  Loren J. Rittle  <[email protected]>
5186*1fd5a2e1SPrashanth Swaminathan
5187*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Regenerate.
5188*1fd5a2e1SPrashanth Swaminathan
5189*1fd5a2e1SPrashanth Swaminathan2003-03-21  Zdenek Dvorak  <[email protected]>
5190*1fd5a2e1SPrashanth Swaminathan
5191*1fd5a2e1SPrashanth Swaminathan	* libffi/include/ffi.h.in: Define X86 instead of X86_64 in 32
5192*1fd5a2e1SPrashanth Swaminathan	bit mode.
5193*1fd5a2e1SPrashanth Swaminathan	* libffi/src/x86/ffi.c (ffi_closure_SYSV, ffi_closure_raw_SYSV):
5194*1fd5a2e1SPrashanth Swaminathan	Receive closure pointer through parameter, read args using
5195*1fd5a2e1SPrashanth Swaminathan	__builtin_dwarf_cfa.
5196*1fd5a2e1SPrashanth Swaminathan	(FFI_INIT_TRAMPOLINE): Send closure reference through eax.
5197*1fd5a2e1SPrashanth Swaminathan
5198*1fd5a2e1SPrashanth Swaminathan2003-03-12  Andreas Schwab  <[email protected]>
5199*1fd5a2e1SPrashanth Swaminathan
5200*1fd5a2e1SPrashanth Swaminathan	* configure.in: Avoid trailing /. in toolexeclibdir.
5201*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5202*1fd5a2e1SPrashanth Swaminathan
5203*1fd5a2e1SPrashanth Swaminathan2003-03-03  Andreas Tobler <[email protected]>
5204*1fd5a2e1SPrashanth Swaminathan
5205*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: Recode to fit dynamic libraries.
5206*1fd5a2e1SPrashanth Swaminathan
5207*1fd5a2e1SPrashanth Swaminathan2003-02-06  Andreas Tobler <[email protected]>
5208*1fd5a2e1SPrashanth Swaminathan
5209*1fd5a2e1SPrashanth Swaminathan	* libffi/src/powerpc/darwin_closure.S:
5210*1fd5a2e1SPrashanth Swaminathan	Fix alignement bug, allocate 8 bytes for the result.
5211*1fd5a2e1SPrashanth Swaminathan	* libffi/src/powerpc/aix_closure.S:
5212*1fd5a2e1SPrashanth Swaminathan	Likewise.
5213*1fd5a2e1SPrashanth Swaminathan	* libffi/src/powerpc/ffi_darwin.c:
5214*1fd5a2e1SPrashanth Swaminathan	Update stackframe description for aix/darwin_closure.S.
5215*1fd5a2e1SPrashanth Swaminathan
5216*1fd5a2e1SPrashanth Swaminathan2003-02-06  Jakub Jelinek  <[email protected]>
5217*1fd5a2e1SPrashanth Swaminathan
5218*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffi.c (ffi_closure_helper_SYSV): Add hidden visibility
5219*1fd5a2e1SPrashanth Swaminathan	attribute.
5220*1fd5a2e1SPrashanth Swaminathan
5221*1fd5a2e1SPrashanth Swaminathan2003-01-31  Christian Cornelssen  <[email protected]>,
5222*1fd5a2e1SPrashanth Swaminathan	    Andreas Schwab  <[email protected]>
5223*1fd5a2e1SPrashanth Swaminathan
5224*1fd5a2e1SPrashanth Swaminathan	* configure.in: Adjust command to source config-ml.in to account
5225*1fd5a2e1SPrashanth Swaminathan	for changes to the libffi_basedir definition.
5226*1fd5a2e1SPrashanth Swaminathan	(libffi_basedir): Remove ${srcdir} from value and include trailing
5227*1fd5a2e1SPrashanth Swaminathan	slash if nonempty.
5228*1fd5a2e1SPrashanth Swaminathan
5229*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5230*1fd5a2e1SPrashanth Swaminathan
5231*1fd5a2e1SPrashanth Swaminathan2003-01-29  Franz Sirl  <[email protected]>
5232*1fd5a2e1SPrashanth Swaminathan
5233*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Recode to fit shared libs.
5234*1fd5a2e1SPrashanth Swaminathan
5235*1fd5a2e1SPrashanth Swaminathan2003-01-28  Andrew Haley  <[email protected]>
5236*1fd5a2e1SPrashanth Swaminathan
5237*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Enable FFI_CLOSURES for x86_64.
5238*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (ffi_prep_closure): New.
5239*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_UNIX64_inner): New.
5240*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S (ffi_closure_UNIX64): New.
5241*1fd5a2e1SPrashanth Swaminathan
5242*1fd5a2e1SPrashanth Swaminathan2003-01-27  Alexandre Oliva  <[email protected]>
5243*1fd5a2e1SPrashanth Swaminathan
5244*1fd5a2e1SPrashanth Swaminathan	* configure.in (toolexecdir, toolexeclibdir): Set and AC_SUBST.
5245*1fd5a2e1SPrashanth Swaminathan	Remove USE_LIBDIR conditional.
5246*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (toolexecdir, toolexeclibdir): Don't override.
5247*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, configure: Rebuilt.
5248*1fd5a2e1SPrashanth Swaminathan
5249*1fd5a2e1SPrashanth Swaminathan2003-01027  David Edelsohn  <[email protected]>
5250*1fd5a2e1SPrashanth Swaminathan
5251*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (TARGET_SRC_POWERPC_AIX): Fix typo.
5252*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
5253*1fd5a2e1SPrashanth Swaminathan
5254*1fd5a2e1SPrashanth Swaminathan2003-01-22  Andrew Haley  <[email protected]>
5255*1fd5a2e1SPrashanth Swaminathan
5256*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S (_ffi_call_AIX): Add Augmentation size to
5257*1fd5a2e1SPrashanth Swaminathan	unwind info.
5258*1fd5a2e1SPrashanth Swaminathan
5259*1fd5a2e1SPrashanth Swaminathan2003-01-21  Andreas Tobler  <[email protected]>
5260*1fd5a2e1SPrashanth Swaminathan
5261*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: Add unwind info.
5262*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: Likewise.
5263*1fd5a2e1SPrashanth Swaminathan
5264*1fd5a2e1SPrashanth Swaminathan2003-01-14  Andrew Haley  <[email protected]>
5265*1fd5a2e1SPrashanth Swaminathan
5266*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (ffi_prep_args): Check for void retval.
5267*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Likewise.
5268*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S: Add unwind info.
5269*1fd5a2e1SPrashanth Swaminathan
5270*1fd5a2e1SPrashanth Swaminathan2003-01-14  Andreas Jaeger  <[email protected]>
5271*1fd5a2e1SPrashanth Swaminathan
5272*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (main): Only use ffi_closures if those are
5273*1fd5a2e1SPrashanth Swaminathan	supported.
5274*1fd5a2e1SPrashanth Swaminathan
5275*1fd5a2e1SPrashanth Swaminathan2003-01-13 Andreas Tobler <[email protected]>
5276*1fd5a2e1SPrashanth Swaminathan
5277*1fd5a2e1SPrashanth Swaminathan	* libffi/src/ffitest.c
5278*1fd5a2e1SPrashanth Swaminathan	 add closure testcases
5279*1fd5a2e1SPrashanth Swaminathan
5280*1fd5a2e1SPrashanth Swaminathan2003-01-13 Kevin B. Hendricks <[email protected]>
5281*1fd5a2e1SPrashanth Swaminathan
5282*1fd5a2e1SPrashanth Swaminathan	* libffi/src/powerpc/ffi.c
5283*1fd5a2e1SPrashanth Swaminathan	 fix alignment bug for float (4 byte aligned iso 8 byte)
5284*1fd5a2e1SPrashanth Swaminathan
5285*1fd5a2e1SPrashanth Swaminathan2003-01-09  Geoffrey Keating  <[email protected]>
5286*1fd5a2e1SPrashanth Swaminathan
5287*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c: Remove RCS version string.
5288*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: Remove RCS version string.
5289*1fd5a2e1SPrashanth Swaminathan
5290*1fd5a2e1SPrashanth Swaminathan2003-01-03  Jeff Sturm  <[email protected]>
5291*1fd5a2e1SPrashanth Swaminathan
5292*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add closure defines for SPARC, SPARC64.
5293*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (main): Use static storage for closure.
5294*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_prep_closure, ffi_closure_sparc_inner): New.
5295*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S (ffi_closure_v8): New.
5296*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S (ffi_closure_v9): New.
5297*1fd5a2e1SPrashanth Swaminathan
5298*1fd5a2e1SPrashanth Swaminathan2002-11-10  Ranjit Mathew <[email protected]>
5299*1fd5a2e1SPrashanth Swaminathan
5300*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Added FFI_STDCALL ffi_type
5301*1fd5a2e1SPrashanth Swaminathan	  enumeration for X86_WIN32.
5302*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S: Added ffi_call_STDCALL function
5303*1fd5a2e1SPrashanth Swaminathan	  definition.
5304*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_call/ffi_raw_call): Added
5305*1fd5a2e1SPrashanth Swaminathan	  switch cases for recognising FFI_STDCALL and
5306*1fd5a2e1SPrashanth Swaminathan	  calling ffi_call_STDCALL if target is X86_WIN32.
5307*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (my_stdcall_strlen/stdcall_many):
5308*1fd5a2e1SPrashanth Swaminathan	  stdcall versions of the "my_strlen" and "many"
5309*1fd5a2e1SPrashanth Swaminathan	  test functions (for X86_WIN32).
5310*1fd5a2e1SPrashanth Swaminathan	  Added test cases to test stdcall invocation using
5311*1fd5a2e1SPrashanth Swaminathan	  these functions.
5312*1fd5a2e1SPrashanth Swaminathan
5313*1fd5a2e1SPrashanth Swaminathan2002-12-02  Kaz Kojima  <[email protected]>
5314*1fd5a2e1SPrashanth Swaminathan
5315*1fd5a2e1SPrashanth Swaminathan	* src/sh/sysv.S: Add DWARF2 unwind info.
5316*1fd5a2e1SPrashanth Swaminathan
5317*1fd5a2e1SPrashanth Swaminathan2002-11-27  Ulrich Weigand  <[email protected]>
5318*1fd5a2e1SPrashanth Swaminathan
5319*1fd5a2e1SPrashanth Swaminathan	* src/s390/sysv.S (.eh_frame section): Make section read-only.
5320*1fd5a2e1SPrashanth Swaminathan
5321*1fd5a2e1SPrashanth Swaminathan2002-11-26  Jim Wilson  <[email protected]>
5322*1fd5a2e1SPrashanth Swaminathan
5323*1fd5a2e1SPrashanth Swaminathan	* src/types.c (FFI_TYPE_POINTER): Has size 8 on IA64.
5324*1fd5a2e1SPrashanth Swaminathan
5325*1fd5a2e1SPrashanth Swaminathan2002-11-23  H.J. Lu <[email protected]>
5326*1fd5a2e1SPrashanth Swaminathan
5327*1fd5a2e1SPrashanth Swaminathan	* acinclude.m4: Add dummy AM_PROG_LIBTOOL.
5328*1fd5a2e1SPrashanth Swaminathan	Include ../config/accross.m4.
5329*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4; Rebuild.
5330*1fd5a2e1SPrashanth Swaminathan	* configure: Likewise.
5331*1fd5a2e1SPrashanth Swaminathan
5332*1fd5a2e1SPrashanth Swaminathan2002-11-15  Ulrich Weigand  <[email protected]>
5333*1fd5a2e1SPrashanth Swaminathan
5334*1fd5a2e1SPrashanth Swaminathan	* src/s390/sysv.S (.eh_frame section): Adapt to pcrel FDE encoding.
5335*1fd5a2e1SPrashanth Swaminathan
5336*1fd5a2e1SPrashanth Swaminathan2002-11-11  DJ Delorie  <[email protected]>
5337*1fd5a2e1SPrashanth Swaminathan
5338*1fd5a2e1SPrashanth Swaminathan	* configure.in: Look for common files in the right place.
5339*1fd5a2e1SPrashanth Swaminathan
5340*1fd5a2e1SPrashanth Swaminathan2002-10-08  Ulrich Weigand  <[email protected]>
5341*1fd5a2e1SPrashanth Swaminathan
5342*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api.c (ffi_java_raw_to_ptrarray): Interpret
5343*1fd5a2e1SPrashanth Swaminathan	raw data as _Jv_word values, not ffi_raw.
5344*1fd5a2e1SPrashanth Swaminathan	(ffi_java_ptrarray_to_raw): Likewise.
5345*1fd5a2e1SPrashanth Swaminathan	(ffi_java_rvalue_to_raw): New function.
5346*1fd5a2e1SPrashanth Swaminathan	(ffi_java_raw_call): Call it.
5347*1fd5a2e1SPrashanth Swaminathan	(ffi_java_raw_to_rvalue): New function.
5348*1fd5a2e1SPrashanth Swaminathan	(ffi_java_translate_args): Call it.
5349*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (closure_test_fn): Interpret return value
5350*1fd5a2e1SPrashanth Swaminathan	as ffi_arg, not int.
5351*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffi.c (ffi_prep_cif_machdep): Add missing
5352*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_POINTER case.
5353*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Likewise.  Also, assume return
5354*1fd5a2e1SPrashanth Swaminathan	values extended to word size.
5355*1fd5a2e1SPrashanth Swaminathan
5356*1fd5a2e1SPrashanth Swaminathan2002-10-02  Andreas Jaeger  <[email protected]>
5357*1fd5a2e1SPrashanth Swaminathan
5358*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c (ffi_prep_cif_machdep): Remove debug output.
5359*1fd5a2e1SPrashanth Swaminathan
5360*1fd5a2e1SPrashanth Swaminathan2002-10-01  Bo Thorsen  <[email protected]>
5361*1fd5a2e1SPrashanth Swaminathan
5362*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Fix i386 win32 compilation.
5363*1fd5a2e1SPrashanth Swaminathan
5364*1fd5a2e1SPrashanth Swaminathan2002-09-30  Ulrich Weigand  <[email protected]>
5365*1fd5a2e1SPrashanth Swaminathan
5366*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add s390x-*-linux-* target.
5367*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5368*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Define S390X for s390x targets.
5369*1fd5a2e1SPrashanth Swaminathan	(FFI_CLOSURES): Define for s390/s390x.
5370*1fd5a2e1SPrashanth Swaminathan	(FFI_TRAMPOLINE_SIZE): Likewise.
5371*1fd5a2e1SPrashanth Swaminathan	(FFI_NATIVE_RAW_API): Likewise.
5372*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif): Do not compute stack space for s390.
5373*1fd5a2e1SPrashanth Swaminathan	* src/types.c (FFI_TYPE_POINTER): Use 8-byte pointers on s390x.
5374*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffi.c: Major rework of existing code.  Add support for
5375*1fd5a2e1SPrashanth Swaminathan	s390x targets.  Add closure support.
5376*1fd5a2e1SPrashanth Swaminathan	* src/s390/sysv.S: Likewise.
5377*1fd5a2e1SPrashanth Swaminathan
5378*1fd5a2e1SPrashanth Swaminathan2002-09-29  Richard Earnshaw  <[email protected]>
5379*1fd5a2e1SPrashanth Swaminathan
5380*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Fix typo.
5381*1fd5a2e1SPrashanth Swaminathan
5382*1fd5a2e1SPrashanth Swaminathan2002-09-28  Richard Earnshaw  <[email protected]>
5383*1fd5a2e1SPrashanth Swaminathan
5384*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: If we don't have machine/asm.h and the pre-processor
5385*1fd5a2e1SPrashanth Swaminathan	has defined __USER_LABEL_PREFIX__, then use it in CNAME.
5386*1fd5a2e1SPrashanth Swaminathan	(ffi_call_SYSV): Handle soft-float.
5387*1fd5a2e1SPrashanth Swaminathan
5388*1fd5a2e1SPrashanth Swaminathan2002-09-27  Bo Thorsen  <[email protected]>
5389*1fd5a2e1SPrashanth Swaminathan
5390*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Fix multilib x86-64 support.
5391*1fd5a2e1SPrashanth Swaminathan
5392*1fd5a2e1SPrashanth Swaminathan2002-09-22  Kaveh R. Ghazi  <[email protected]>
5393*1fd5a2e1SPrashanth Swaminathan
5394*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (all-multi): Fix multilib parallel build.
5395*1fd5a2e1SPrashanth Swaminathan
5396*1fd5a2e1SPrashanth Swaminathan2002-07-19  Kaz Kojima  <[email protected]>
5397*1fd5a2e1SPrashanth Swaminathan
5398*1fd5a2e1SPrashanth Swaminathan	* configure.in (sh[34]*-*-linux*): Add brackets.
5399*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5400*1fd5a2e1SPrashanth Swaminathan
5401*1fd5a2e1SPrashanth Swaminathan2002-07-18  Kaz Kojima  <[email protected]>
5402*1fd5a2e1SPrashanth Swaminathan
5403*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add SH support.
5404*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
5405*1fd5a2e1SPrashanth Swaminathan	* configure.in (sh-*-linux*, sh[34]*-*-linux*): Add target.
5406*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5407*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add SH support.
5408*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c: New file.
5409*1fd5a2e1SPrashanth Swaminathan	* src/sh/sysv.S: New file.
5410*1fd5a2e1SPrashanth Swaminathan	* src/types.c: Add SH support.
5411*1fd5a2e1SPrashanth Swaminathan
5412*1fd5a2e1SPrashanth Swaminathan2002-07-16  Bo Thorsen  <[email protected]>
5413*1fd5a2e1SPrashanth Swaminathan
5414*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi64.c: New file that adds x86-64 support.
5415*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S: New file that handles argument setup for
5416*1fd5a2e1SPrashanth Swaminathan	x86-64.
5417*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S: Don't use this on x86-64.
5418*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Don't use this on x86-64.
5419*1fd5a2e1SPrashanth Swaminathan	Remove unused vars.
5420*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif): Don't do stack size calculation
5421*1fd5a2e1SPrashanth Swaminathan	for x86-64.
5422*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (struct6): New test that tests a special case in
5423*1fd5a2e1SPrashanth Swaminathan	the x86-64 ABI.
5424*1fd5a2e1SPrashanth Swaminathan	(struct7): Likewise.
5425*1fd5a2e1SPrashanth Swaminathan	(struct8): Likewise.
5426*1fd5a2e1SPrashanth Swaminathan	(struct9): Likewise.
5427*1fd5a2e1SPrashanth Swaminathan	(closure_test_fn): Silence warning about this when it's not used.
5428*1fd5a2e1SPrashanth Swaminathan	(main): Add the new tests.
5429*1fd5a2e1SPrashanth Swaminathan	(main): Fix a couple of wrong casts and silence some compiler warnings.
5430*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add x86-64 ABI definition.
5431*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Regenerate.
5432*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add x86-64 support.
5433*1fd5a2e1SPrashanth Swaminathan	* configure.in: Likewise.
5434*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
5435*1fd5a2e1SPrashanth Swaminathan	* configure: Likewise.
5436*1fd5a2e1SPrashanth Swaminathan
5437*1fd5a2e1SPrashanth Swaminathan2002-06-24  Bo Thorsen  <[email protected]>
5438*1fd5a2e1SPrashanth Swaminathan
5439*1fd5a2e1SPrashanth Swaminathan	* src/types.c: Merge settings for similar architectures.
5440*1fd5a2e1SPrashanth Swaminathan	Add x86-64 sizes and alignments.
5441*1fd5a2e1SPrashanth Swaminathan
5442*1fd5a2e1SPrashanth Swaminathan2002-06-23  Bo Thorsen  <[email protected]>
5443*1fd5a2e1SPrashanth Swaminathan
5444*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c (ffi_prep_args): Remove unused vars.
5445*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_prep_args_v8): Likewise.
5446*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (ffi_prep_args): Likewise.
5447*1fd5a2e1SPrashanth Swaminathan	* src/m68k/ffi.c (ffi_prep_args): Likewise.
5448*1fd5a2e1SPrashanth Swaminathan
5449*1fd5a2e1SPrashanth Swaminathan2002-07-18  H.J. Lu  ([email protected])
5450*1fd5a2e1SPrashanth Swaminathan
5451*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (TARGET_SRC_MIPS_LINUX): New.
5452*1fd5a2e1SPrashanth Swaminathan	(libffi_la_SOURCES): Support MIPS_LINUX.
5453*1fd5a2e1SPrashanth Swaminathan	(libffi_convenience_la_SOURCES): Likewise.
5454*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
5455*1fd5a2e1SPrashanth Swaminathan
5456*1fd5a2e1SPrashanth Swaminathan	* configure.in (mips64*-*): Skip.
5457*1fd5a2e1SPrashanth Swaminathan	(mips*-*-linux*): New.
5458*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerated.
5459*1fd5a2e1SPrashanth Swaminathan
5460*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c: Include <sgidefs.h>.
5461*1fd5a2e1SPrashanth Swaminathan
5462*1fd5a2e1SPrashanth Swaminathan2002-06-06  Ulrich Weigand  <[email protected]>
5463*1fd5a2e1SPrashanth Swaminathan
5464*1fd5a2e1SPrashanth Swaminathan	* src/s390/sysv.S: Save/restore %r6.  Add DWARF-2 unwind info.
5465*1fd5a2e1SPrashanth Swaminathan
5466*1fd5a2e1SPrashanth Swaminathan2002-05-27  Roger Sayle  <[email protected]>
5467*1fd5a2e1SPrashanth Swaminathan
5468*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_args): Remove reference to avn.
5469*1fd5a2e1SPrashanth Swaminathan
5470*1fd5a2e1SPrashanth Swaminathan2002-05-27  Bo Thorsen  <[email protected]>
5471*1fd5a2e1SPrashanth Swaminathan
5472*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_args): Remove unused variable and
5473*1fd5a2e1SPrashanth Swaminathan	fix formatting.
5474*1fd5a2e1SPrashanth Swaminathan
5475*1fd5a2e1SPrashanth Swaminathan2002-05-13  Andreas Tobler  <[email protected]>
5476*1fd5a2e1SPrashanth Swaminathan
5477*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_closure): Declare fd at
5478*1fd5a2e1SPrashanth Swaminathan	beginning of function (for older apple cc).
5479*1fd5a2e1SPrashanth Swaminathan
5480*1fd5a2e1SPrashanth Swaminathan2002-05-08  Alexandre Oliva  <[email protected]>
5481*1fd5a2e1SPrashanth Swaminathan
5482*1fd5a2e1SPrashanth Swaminathan	* configure.in (ORIGINAL_LD_FOR_MULTILIBS): Preserve LD at
5483*1fd5a2e1SPrashanth Swaminathan	script entry, and set LD to it when configuring multilibs.
5484*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5485*1fd5a2e1SPrashanth Swaminathan
5486*1fd5a2e1SPrashanth Swaminathan2002-05-05  Jason Thorpe  <[email protected]>
5487*1fd5a2e1SPrashanth Swaminathan
5488*1fd5a2e1SPrashanth Swaminathan	* configure.in (sparc64-*-netbsd*): Add target.
5489*1fd5a2e1SPrashanth Swaminathan	(sparc-*-netbsdelf*): Likewise.
5490*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5491*1fd5a2e1SPrashanth Swaminathan
5492*1fd5a2e1SPrashanth Swaminathan2002-04-28  David S. Miller  <[email protected]>
5493*1fd5a2e1SPrashanth Swaminathan
5494*1fd5a2e1SPrashanth Swaminathan	* configure.in, configure: Fix SPARC test in previous change.
5495*1fd5a2e1SPrashanth Swaminathan
5496*1fd5a2e1SPrashanth Swaminathan2002-04-29  Gerhard Tonn  <[email protected]>
5497*1fd5a2e1SPrashanth Swaminathan
5498*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add Linux for S/390 support.
5499*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
5500*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add Linux for S/390 support.
5501*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5502*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add Linux for S/390 support.
5503*1fd5a2e1SPrashanth Swaminathan	* src/s390/ffi.c: New file from libffi CVS tree.
5504*1fd5a2e1SPrashanth Swaminathan	* src/s390/sysv.S: New file from libffi CVS tree.
5505*1fd5a2e1SPrashanth Swaminathan
5506*1fd5a2e1SPrashanth Swaminathan2002-04-28  Jakub Jelinek  <[email protected]>
5507*1fd5a2e1SPrashanth Swaminathan
5508*1fd5a2e1SPrashanth Swaminathan	* configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working
5509*1fd5a2e1SPrashanth Swaminathan	%r_disp32().
5510*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: Use it.
5511*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S: Likewise.
5512*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Rebuilt.
5513*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5514*1fd5a2e1SPrashanth Swaminathan
5515*1fd5a2e1SPrashanth Swaminathan2002-04-08  Hans Boehm  <[email protected]>
5516*1fd5a2e1SPrashanth Swaminathan
5517*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api.c (ffi_java_raw_size): Handle FFI_TYPE_DOUBLE
5518*1fd5a2e1SPrashanth Swaminathan	correctly.
5519*1fd5a2e1SPrashanth Swaminathan	* src/ia64/unix.S: Add unwind information. Fix comments.
5520*1fd5a2e1SPrashanth Swaminathan	Save sp in a way that's compatible with unwind info.
5521*1fd5a2e1SPrashanth Swaminathan	(ffi_call_unix): Correctly restore sp in all cases.
5522*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c: Add, fix comments.
5523*1fd5a2e1SPrashanth Swaminathan
5524*1fd5a2e1SPrashanth Swaminathan2002-04-08  Jakub Jelinek  <[email protected]>
5525*1fd5a2e1SPrashanth Swaminathan
5526*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: Make .eh_frame dependent on target word size.
5527*1fd5a2e1SPrashanth Swaminathan
5528*1fd5a2e1SPrashanth Swaminathan2002-04-06  Jason Thorpe  <[email protected]>
5529*1fd5a2e1SPrashanth Swaminathan
5530*1fd5a2e1SPrashanth Swaminathan	* configure.in (alpha*-*-netbsd*): Add target.
5531*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5532*1fd5a2e1SPrashanth Swaminathan
5533*1fd5a2e1SPrashanth Swaminathan2002-04-04  Jeff Sturm  <[email protected]>
5534*1fd5a2e1SPrashanth Swaminathan
5535*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: Add unwind info.
5536*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S: Likewise.
5537*1fd5a2e1SPrashanth Swaminathan
5538*1fd5a2e1SPrashanth Swaminathan2002-03-30  Krister Walfridsson  <[email protected]>
5539*1fd5a2e1SPrashanth Swaminathan
5540*1fd5a2e1SPrashanth Swaminathan	* configure.in: Enable i*86-*-netbsdelf*.
5541*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5542*1fd5a2e1SPrashanth Swaminathan
5543*1fd5a2e1SPrashanth Swaminathan2002-03-29  David Billinghurst <[email protected]>
5544*1fd5a2e1SPrashanth Swaminathan
5545*1fd5a2e1SPrashanth Swaminathan	PR other/2620
5546*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.s: Delete
5547*1fd5a2e1SPrashanth Swaminathan	* src/mips/o32.s: Delete
5548*1fd5a2e1SPrashanth Swaminathan
5549*1fd5a2e1SPrashanth Swaminathan2002-03-21  Loren J. Rittle  <[email protected]>
5550*1fd5a2e1SPrashanth Swaminathan
5551*1fd5a2e1SPrashanth Swaminathan	* configure.in: Enable alpha*-*-freebsd*.
5552*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5553*1fd5a2e1SPrashanth Swaminathan
5554*1fd5a2e1SPrashanth Swaminathan2002-03-17  Bryce McKinlay  <[email protected]>
5555*1fd5a2e1SPrashanth Swaminathan
5556*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: libfficonvenience -> libffi_convenience.
5557*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5558*1fd5a2e1SPrashanth Swaminathan
5559*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Define ffitest_OBJECTS.
5560*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5561*1fd5a2e1SPrashanth Swaminathan
5562*1fd5a2e1SPrashanth Swaminathan2002-03-07  Andreas Tobler  <[email protected]>
5563*1fd5a2e1SPrashanth Swaminathan	    David Edelsohn  <[email protected]>
5564*1fd5a2e1SPrashanth Swaminathan
5565*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add Darwin and AIX closure files.
5566*1fd5a2e1SPrashanth Swaminathan	(TARGET_SRC_POWERPC_AIX): Add aix_closure.S.
5567*1fd5a2e1SPrashanth Swaminathan	(TARGET_SRC_POWERPC_DARWIN): Add darwin_closure.S.
5568*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
5569*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add AIX and Darwin closure definitions.
5570*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_closure): New function.
5571*1fd5a2e1SPrashanth Swaminathan	(flush_icache, flush_range): New functions.
5572*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_DARWIN): New function.
5573*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix_closure.S: New file.
5574*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin_closure.S: New file.
5575*1fd5a2e1SPrashanth Swaminathan
5576*1fd5a2e1SPrashanth Swaminathan2002-02-24  Jeff Sturm  <[email protected]>
5577*1fd5a2e1SPrashanth Swaminathan
5578*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add typedef for ffi_arg.
5579*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (main): Declare rint with ffi_arg.
5580*1fd5a2e1SPrashanth Swaminathan
5581*1fd5a2e1SPrashanth Swaminathan2002-02-21  Andreas Tobler  <[email protected]>
5582*1fd5a2e1SPrashanth Swaminathan
5583*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_prep_args): Skip appropriate
5584*1fd5a2e1SPrashanth Swaminathan	number of GPRs for floating-point arguments.
5585*1fd5a2e1SPrashanth Swaminathan
5586*1fd5a2e1SPrashanth Swaminathan2002-01-31  Anthony Green  <[email protected]>
5587*1fd5a2e1SPrashanth Swaminathan
5588*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5589*1fd5a2e1SPrashanth Swaminathan	* configure.in: Replace CHECK_SIZEOF and endian tests with
5590*1fd5a2e1SPrashanth Swaminathan	cross-compiler friendly macros.
5591*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4 (AC_COMPILE_CHECK_SIZEOF, AC_C_BIGENDIAN_CROSS): New
5592*1fd5a2e1SPrashanth Swaminathan	macros.
5593*1fd5a2e1SPrashanth Swaminathan
5594*1fd5a2e1SPrashanth Swaminathan2002-01-18  David Edelsohn  <[email protected]>
5595*1fd5a2e1SPrashanth Swaminathan
5596*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S (_ffi_call_AIX): New.
5597*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix.S (ffi_call_DARWIN): New.
5598*1fd5a2e1SPrashanth Swaminathan
5599*1fd5a2e1SPrashanth Swaminathan2002-01-17  David Edelsohn  <[email protected]>
5600*1fd5a2e1SPrashanth Swaminathan
5601*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add Darwin and AIX files.
5602*1fd5a2e1SPrashanth Swaminathan	(TARGET_SRC_POWERPC_AIX): New.
5603*1fd5a2e1SPrashanth Swaminathan	(POWERPC_AIX): New stanza.
5604*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerate.
5605*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add AIX case.
5606*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5607*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (ffi_abi): Add FFI_AIX.
5608*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c (ffi_status): Use "long" to scale frame
5609*1fd5a2e1SPrashanth Swaminathan	size.  Fix "long double" support.
5610*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Add FFI_AIX case.
5611*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/aix.S: New.
5612*1fd5a2e1SPrashanth Swaminathan
5613*1fd5a2e1SPrashanth Swaminathan2001-10-09  John Hornkvist  <[email protected]>
5614*1fd5a2e1SPrashanth Swaminathan
5615*1fd5a2e1SPrashanth Swaminathan	Implement Darwin PowerPC ABI.
5616*1fd5a2e1SPrashanth Swaminathan	* configure.in: Handle powerpc-*-darwin*.
5617*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Set source files for POWERPC_DARWIN.
5618*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5619*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5620*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Define FFI_DARWIN and FFI_DEFAULT_ABI for
5621*1fd5a2e1SPrashanth Swaminathan	POWERPC_DARWIN.
5622*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/darwin.S: New file.
5623*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi_darwin.c: New file.
5624*1fd5a2e1SPrashanth Swaminathan
5625*1fd5a2e1SPrashanth Swaminathan2001-10-07  Joseph S. Myers  <[email protected]>
5626*1fd5a2e1SPrashanth Swaminathan
5627*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Fix spelling error of "separate" as "seperate".
5628*1fd5a2e1SPrashanth Swaminathan
5629*1fd5a2e1SPrashanth Swaminathan2001-07-16  Rainer Orth  <[email protected]>
5630*1fd5a2e1SPrashanth Swaminathan
5631*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S: Avoid gas-only .balign directive.
5632*1fd5a2e1SPrashanth Swaminathan	Use C style comments.
5633*1fd5a2e1SPrashanth Swaminathan
5634*1fd5a2e1SPrashanth Swaminathan2001-07-16  Rainer Orth  <[email protected]>
5635*1fd5a2e1SPrashanth Swaminathan
5636*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c (ffi_prep_closure): Avoid gas-only mnemonic.
5637*1fd5a2e1SPrashanth Swaminathan	Fixes PR bootstrap/3563.
5638*1fd5a2e1SPrashanth Swaminathan
5639*1fd5a2e1SPrashanth Swaminathan2001-06-26  Rainer Orth  <[email protected]>
5640*1fd5a2e1SPrashanth Swaminathan
5641*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S (ffi_closure_osf): Use .rdata for ECOFF.
5642*1fd5a2e1SPrashanth Swaminathan
5643*1fd5a2e1SPrashanth Swaminathan2001-06-25  Rainer Orth  <[email protected]>
5644*1fd5a2e1SPrashanth Swaminathan
5645*1fd5a2e1SPrashanth Swaminathan	* configure.in: Recognize sparc*-sun-* host.
5646*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
5647*1fd5a2e1SPrashanth Swaminathan
5648*1fd5a2e1SPrashanth Swaminathan2001-06-06  Andrew Haley  <[email protected]>
5649*1fd5a2e1SPrashanth Swaminathan
5650*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S (__FRAME_BEGIN__): Conditionalize for ELF.
5651*1fd5a2e1SPrashanth Swaminathan
5652*1fd5a2e1SPrashanth Swaminathan2001-06-03  Andrew Haley  <[email protected]>
5653*1fd5a2e1SPrashanth Swaminathan
5654*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S: Add unwind info.
5655*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Add unwind info.
5656*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Likewise.
5657*1fd5a2e1SPrashanth Swaminathan
5658*1fd5a2e1SPrashanth Swaminathan2000-05-31  Jeff Sturm  <[email protected]>
5659*1fd5a2e1SPrashanth Swaminathan
5660*1fd5a2e1SPrashanth Swaminathan	* configure.in: Fix AC_ARG_ENABLE usage.
5661*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5662*1fd5a2e1SPrashanth Swaminathan
5663*1fd5a2e1SPrashanth Swaminathan2001-05-06  Bryce McKinlay  <[email protected]>
5664*1fd5a2e1SPrashanth Swaminathan
5665*1fd5a2e1SPrashanth Swaminathan	* configure.in: Remove warning about beta code.
5666*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5667*1fd5a2e1SPrashanth Swaminathan
5668*1fd5a2e1SPrashanth Swaminathan2001-04-25  Hans Boehm <[email protected]>
5669*1fd5a2e1SPrashanth Swaminathan
5670*1fd5a2e1SPrashanth Swaminathan	* src/ia64/unix.S: Restore stack pointer when returning from
5671*1fd5a2e1SPrashanth Swaminathan	ffi_closure_UNIX.
5672*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c: Fix typo in comment.
5673*1fd5a2e1SPrashanth Swaminathan
5674*1fd5a2e1SPrashanth Swaminathan2001-04-18  Jim Wilson  <[email protected]>
5675*1fd5a2e1SPrashanth Swaminathan
5676*1fd5a2e1SPrashanth Swaminathan	* src/ia64/unix.S: Delete unnecessary increment and decrement of loc2
5677*1fd5a2e1SPrashanth Swaminathan	to eliminate RAW DV.
5678*1fd5a2e1SPrashanth Swaminathan
5679*1fd5a2e1SPrashanth Swaminathan2001-04-12  Bryce McKinlay  <[email protected]>
5680*1fd5a2e1SPrashanth Swaminathan
5681*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Make a libtool convenience library.
5682*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5683*1fd5a2e1SPrashanth Swaminathan
5684*1fd5a2e1SPrashanth Swaminathan2001-03-29  Bryce McKinlay  <[email protected]>
5685*1fd5a2e1SPrashanth Swaminathan
5686*1fd5a2e1SPrashanth Swaminathan	* configure.in: Use different syntax for subdirectory creation.
5687*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5688*1fd5a2e1SPrashanth Swaminathan
5689*1fd5a2e1SPrashanth Swaminathan2001-03-27  Jon Beniston  <[email protected]>
5690*1fd5a2e1SPrashanth Swaminathan
5691*1fd5a2e1SPrashanth Swaminathan	* configure.in: Added X86_WIN32 target (Win32, CygWin, MingW).
5692*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5693*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Added X86_WIN32 target support.
5694*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5695*1fd5a2e1SPrashanth Swaminathan
5696*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Added X86_WIN32 target support.
5697*1fd5a2e1SPrashanth Swaminathan
5698*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c: Doesn't run structure tests for X86_WIN32 targets.
5699*1fd5a2e1SPrashanth Swaminathan	* src/types.c: Added X86_WIN32 target support.
5700*1fd5a2e1SPrashanth Swaminathan
5701*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S: New file. Based on sysv.S, but with EH
5702*1fd5a2e1SPrashanth Swaminathan	stuff removed and made to work with CygWin's gas.
5703*1fd5a2e1SPrashanth Swaminathan
5704*1fd5a2e1SPrashanth Swaminathan2001-03-26  Bryce McKinlay  <[email protected]>
5705*1fd5a2e1SPrashanth Swaminathan
5706*1fd5a2e1SPrashanth Swaminathan	* configure.in: Make target subdirectory in build dir.
5707*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Override suffix based rules to specify correct output
5708*1fd5a2e1SPrashanth Swaminathan	subdirectory.
5709*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5710*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5711*1fd5a2e1SPrashanth Swaminathan
5712*1fd5a2e1SPrashanth Swaminathan2001-03-23  Kevin B Hendricks  <[email protected]>
5713*1fd5a2e1SPrashanth Swaminathan
5714*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: New file.
5715*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c (ffi_prep_args): Fixed ABI compatibility bug
5716*1fd5a2e1SPrashanth Swaminathan	involving long long and register pairs.
5717*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): New function.
5718*1fd5a2e1SPrashanth Swaminathan	(flush_icache): Likewise.
5719*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Likewise.
5720*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (FFI_CLOSURES): Define on PPC.
5721*1fd5a2e1SPrashanth Swaminathan	(FFI_TRAMPOLINE_SIZE): Likewise.
5722*1fd5a2e1SPrashanth Swaminathan	(FFI_NATIVE_RAW_API): Likewise.
5723*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5724*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Added src/powerpc/ppc_closure.S.
5725*1fd5a2e1SPrashanth Swaminathan	(TARGET_SRC_POWERPC): Likewise.
5726*1fd5a2e1SPrashanth Swaminathan
5727*1fd5a2e1SPrashanth Swaminathan2001-03-19  Tom Tromey  <[email protected]>
5728*1fd5a2e1SPrashanth Swaminathan
5729*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5730*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (ffitest_LDFLAGS): New macro.
5731*1fd5a2e1SPrashanth Swaminathan
5732*1fd5a2e1SPrashanth Swaminathan2001-03-02  Nick Clifton  <[email protected]>
5733*1fd5a2e1SPrashanth Swaminathan
5734*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Remove RCS ident string.
5735*1fd5a2e1SPrashanth Swaminathan	* include/ffi_mips.h: Remove RCS ident string.
5736*1fd5a2e1SPrashanth Swaminathan	* src/debug.c: Remove RCS ident string.
5737*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c: Remove RCS ident string.
5738*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c: Remove RCS ident string.
5739*1fd5a2e1SPrashanth Swaminathan	* src/types.c: Remove RCS ident string.
5740*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c: Remove RCS ident string.
5741*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S: Remove RCS ident string.
5742*1fd5a2e1SPrashanth Swaminathan	* src/arm/ffi.c: Remove RCS ident string.
5743*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Remove RCS ident string.
5744*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c: Remove RCS ident string.
5745*1fd5a2e1SPrashanth Swaminathan	* src/mips/n32.S: Remove RCS ident string.
5746*1fd5a2e1SPrashanth Swaminathan	* src/mips/o32.S: Remove RCS ident string.
5747*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c: Remove RCS ident string.
5748*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: Remove RCS ident string.
5749*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S: Remove RCS ident string.
5750*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Remove RCS ident string.
5751*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S: Remove RCS ident string.
5752*1fd5a2e1SPrashanth Swaminathan
5753*1fd5a2e1SPrashanth Swaminathan2001-02-08  Joseph S. Myers  <[email protected]>
5754*1fd5a2e1SPrashanth Swaminathan
5755*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Change sourceware.cygnus.com references to
5756*1fd5a2e1SPrashanth Swaminathan	gcc.gnu.org.
5757*1fd5a2e1SPrashanth Swaminathan
5758*1fd5a2e1SPrashanth Swaminathan2000-12-09  Richard Henderson  <[email protected]>
5759*1fd5a2e1SPrashanth Swaminathan
5760*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c (ffi_call): Simplify struct return test.
5761*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_osf_inner): Index rather than increment avalue
5762*1fd5a2e1SPrashanth Swaminathan	and arg_types.  Give ffi_closure_osf the raw return value type.
5763*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S (ffi_closure_osf): Handle return value type
5764*1fd5a2e1SPrashanth Swaminathan	promotion.
5765*1fd5a2e1SPrashanth Swaminathan
5766*1fd5a2e1SPrashanth Swaminathan2000-12-07  Richard Henderson  <[email protected]>
5767*1fd5a2e1SPrashanth Swaminathan
5768*1fd5a2e1SPrashanth Swaminathan	* src/raw_api.c (ffi_translate_args): Fix typo.
5769*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): Likewise.
5770*1fd5a2e1SPrashanth Swaminathan
5771*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in [ALPHA]: Define FFI_CLOSURES and
5772*1fd5a2e1SPrashanth Swaminathan	FFI_TRAMPOLINE_SIZE.
5773*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c (ffi_prep_cif_machdep): Adjust minimal
5774*1fd5a2e1SPrashanth Swaminathan	cif->bytes for new ffi_call_osf implementation.
5775*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Absorb into ...
5776*1fd5a2e1SPrashanth Swaminathan	(ffi_call): ... here.  Do all stack allocation here and
5777*1fd5a2e1SPrashanth Swaminathan	avoid a callback function.
5778*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure, ffi_closure_osf_inner): New.
5779*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S (ffi_call_osf): Reimplement with no callback.
5780*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_osf): New.
5781*1fd5a2e1SPrashanth Swaminathan
5782*1fd5a2e1SPrashanth Swaminathan2000-09-10  Alexandre Oliva  <[email protected]>
5783*1fd5a2e1SPrashanth Swaminathan
5784*1fd5a2e1SPrashanth Swaminathan	* config.guess, config.sub, install-sh: Removed.
5785*1fd5a2e1SPrashanth Swaminathan	* ltconfig, ltmain.sh, missing, mkinstalldirs: Likewise.
5786*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5787*1fd5a2e1SPrashanth Swaminathan
5788*1fd5a2e1SPrashanth Swaminathan	* acinclude.m4: Include libtool macros from the top level.
5789*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, configure: Rebuilt.
5790*1fd5a2e1SPrashanth Swaminathan
5791*1fd5a2e1SPrashanth Swaminathan2000-08-22  Alexandre Oliva  <[email protected]>
5792*1fd5a2e1SPrashanth Swaminathan
5793*1fd5a2e1SPrashanth Swaminathan	* configure.in [i*86-*-freebsd*] (TARGET, TARGETDIR): Set.
5794*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5795*1fd5a2e1SPrashanth Swaminathan
5796*1fd5a2e1SPrashanth Swaminathan2000-05-11  Scott Bambrough  <[email protected]>
5797*1fd5a2e1SPrashanth Swaminathan
5798*1fd5a2e1SPrashanth Swaminathan	* libffi/src/arm/sysv.S (ffi_call_SYSV): Doubles are not saved to
5799*1fd5a2e1SPrashanth Swaminathan	memory correctly.  Use conditional instructions, not branches where
5800*1fd5a2e1SPrashanth Swaminathan	possible.
5801*1fd5a2e1SPrashanth Swaminathan
5802*1fd5a2e1SPrashanth Swaminathan2000-05-04  Tom Tromey  <[email protected]>
5803*1fd5a2e1SPrashanth Swaminathan
5804*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5805*1fd5a2e1SPrashanth Swaminathan	* configure.in: Match `arm*-*-linux-*'.
5806*1fd5a2e1SPrashanth Swaminathan	From Chris Dornan <[email protected]>.
5807*1fd5a2e1SPrashanth Swaminathan
5808*1fd5a2e1SPrashanth Swaminathan2000-04-28  Jakub Jelinek  <[email protected]>
5809*1fd5a2e1SPrashanth Swaminathan
5810*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (SUBDIRS): Define.
5811*1fd5a2e1SPrashanth Swaminathan	(AM_MAKEFLAGS): Likewise.
5812*1fd5a2e1SPrashanth Swaminathan	(Multilib support.): Add section.
5813*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5814*1fd5a2e1SPrashanth Swaminathan	* ltconfig (extra_compiler_flags, extra_compiler_flags_value):
5815*1fd5a2e1SPrashanth Swaminathan	New variables. Set for gcc using -print-multi-lib. Export them
5816*1fd5a2e1SPrashanth Swaminathan	to libtool.
5817*1fd5a2e1SPrashanth Swaminathan	(sparc64-*-linux-gnu*): Use libsuff 64 for search paths.
5818*1fd5a2e1SPrashanth Swaminathan	* ltmain.sh (B|b|V): Don't throw away gcc's -B, -b and -V options
5819*1fd5a2e1SPrashanth Swaminathan	for -shared links.
5820*1fd5a2e1SPrashanth Swaminathan	(extra_compiler_flags_value, extra_compiler_flags): Check these
5821*1fd5a2e1SPrashanth Swaminathan	for extra compiler options which need to be passed down in
5822*1fd5a2e1SPrashanth Swaminathan	compiler_flags.
5823*1fd5a2e1SPrashanth Swaminathan
5824*1fd5a2e1SPrashanth Swaminathan2000-04-16  Anthony Green  <[email protected]>
5825*1fd5a2e1SPrashanth Swaminathan
5826*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5827*1fd5a2e1SPrashanth Swaminathan	* configure.in: Change i*86-pc-linux* to i*86-*-linux*.
5828*1fd5a2e1SPrashanth Swaminathan
5829*1fd5a2e1SPrashanth Swaminathan2000-04-14  Jakub Jelinek  <[email protected]>
5830*1fd5a2e1SPrashanth Swaminathan
5831*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (SPARC64): Define for 64bit SPARC builds.
5832*1fd5a2e1SPrashanth Swaminathan	Set SPARC FFI_DEFAULT_ABI based on SPARC64 define.
5833*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ffi.c (ffi_prep_args_v8): Renamed from ffi_prep_args.
5834*1fd5a2e1SPrashanth Swaminathan	Replace all void * sizeofs with sizeof(int).
5835*1fd5a2e1SPrashanth Swaminathan	Only compare type with FFI_TYPE_LONGDOUBLE if LONGDOUBLE is
5836*1fd5a2e1SPrashanth Swaminathan	different than DOUBLE.
5837*1fd5a2e1SPrashanth Swaminathan	Remove FFI_TYPE_SINT32 and FFI_TYPE_UINT32 cases (handled elsewhere).
5838*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args_v9): New function.
5839*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Handle V9 ABI and long long on V8.
5840*1fd5a2e1SPrashanth Swaminathan	(ffi_V9_return_struct): New function.
5841*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Handle FFI_V9 ABI from 64bit code and FFI_V8 ABI from
5842*1fd5a2e1SPrashanth Swaminathan	32bit code (not yet cross-arch calls).
5843*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: Add struct return delay nop.
5844*1fd5a2e1SPrashanth Swaminathan	Handle long long.
5845*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S: New file.
5846*1fd5a2e1SPrashanth Swaminathan	* src/prep_cif.c (ffi_prep_cif): Return structure pointer
5847*1fd5a2e1SPrashanth Swaminathan	is used on sparc64 only for structures larger than 32 bytes.
5848*1fd5a2e1SPrashanth Swaminathan	Pass by reference for structures is done for structure arguments
5849*1fd5a2e1SPrashanth Swaminathan	larger than 16 bytes.
5850*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (main): Use 64bit rint on sparc64.
5851*1fd5a2e1SPrashanth Swaminathan	Run long long tests on sparc.
5852*1fd5a2e1SPrashanth Swaminathan	* src/types.c (FFI_TYPE_POINTER): Pointer is 64bit on alpha and
5853*1fd5a2e1SPrashanth Swaminathan	sparc64.
5854*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_LONGDOUBLE): long double is 128 bit aligned to 128 bits
5855*1fd5a2e1SPrashanth Swaminathan	on sparc64.
5856*1fd5a2e1SPrashanth Swaminathan	* configure.in (sparc-*-linux*): New supported target.
5857*1fd5a2e1SPrashanth Swaminathan	(sparc64-*-linux*): Likewise.
5858*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5859*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add v9.S to SPARC files.
5860*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Likewise.
5861*1fd5a2e1SPrashanth Swaminathan	(LINK): Surround $(CCLD) into double quotes, so that multilib
5862*1fd5a2e1SPrashanth Swaminathan	compiles work correctly.
5863*1fd5a2e1SPrashanth Swaminathan
5864*1fd5a2e1SPrashanth Swaminathan2000-04-04  Alexandre Petit-Bianco  <[email protected]>
5865*1fd5a2e1SPrashanth Swaminathan
5866*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5867*1fd5a2e1SPrashanth Swaminathan	* configure.in: (i*86-*-solaris*): New libffi target. Patch
5868*1fd5a2e1SPrashanth Swaminathan	proposed by Bryce McKinlay.
5869*1fd5a2e1SPrashanth Swaminathan
5870*1fd5a2e1SPrashanth Swaminathan2000-03-20  Tom Tromey  <[email protected]>
5871*1fd5a2e1SPrashanth Swaminathan
5872*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Hand edit for java_raw_api.lo.
5873*1fd5a2e1SPrashanth Swaminathan
5874*1fd5a2e1SPrashanth Swaminathan2000-03-08  Bryce McKinlay  <[email protected]>
5875*1fd5a2e1SPrashanth Swaminathan
5876*1fd5a2e1SPrashanth Swaminathan	* config.guess, config.sub: Update from the gcc tree.
5877*1fd5a2e1SPrashanth Swaminathan	Fix for PR libgcj/168.
5878*1fd5a2e1SPrashanth Swaminathan
5879*1fd5a2e1SPrashanth Swaminathan2000-03-03  Tom Tromey  <[email protected]>
5880*1fd5a2e1SPrashanth Swaminathan
5881*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Fixed ia64 by hand.
5882*1fd5a2e1SPrashanth Swaminathan
5883*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5884*1fd5a2e1SPrashanth Swaminathan	* configure.in (--enable-multilib): New option.
5885*1fd5a2e1SPrashanth Swaminathan	(libffi_basedir): New subst.
5886*1fd5a2e1SPrashanth Swaminathan	(AC_OUTPUT): Added multilib code.
5887*1fd5a2e1SPrashanth Swaminathan
5888*1fd5a2e1SPrashanth Swaminathan2000-03-02  Tom Tromey  <[email protected]>
5889*1fd5a2e1SPrashanth Swaminathan
5890*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5891*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (TARGET_SRC_IA64): Use `ia64', not `alpha', as
5892*1fd5a2e1SPrashanth Swaminathan	directory name.
5893*1fd5a2e1SPrashanth Swaminathan
5894*1fd5a2e1SPrashanth Swaminathan2000-02-25  Hans Boehm <[email protected]>
5895*1fd5a2e1SPrashanth Swaminathan
5896*1fd5a2e1SPrashanth Swaminathan	* src/ia64/ffi.c, src/ia64/ia64_flags.h, src/ia64/unix.S: New
5897*1fd5a2e1SPrashanth Swaminathan	files.
5898*1fd5a2e1SPrashanth Swaminathan	* src/raw_api.c (ffi_translate_args): Fixed typo in argument
5899*1fd5a2e1SPrashanth Swaminathan	list.
5900*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_raw_closure): Use ffi_translate_args, not
5901*1fd5a2e1SPrashanth Swaminathan	ffi_closure_translate.
5902*1fd5a2e1SPrashanth Swaminathan	* src/java_raw_api.c: New file.
5903*1fd5a2e1SPrashanth Swaminathan	* src/ffitest.c (closure_test_fn): New function.
5904*1fd5a2e1SPrashanth Swaminathan	(main): Define `rint' as long long on IA64.  Added new test when
5905*1fd5a2e1SPrashanth Swaminathan	FFI_CLOSURES is defined.
5906*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (ALIGN): Use size_t, not unsigned.
5907*1fd5a2e1SPrashanth Swaminathan	(ffi_abi): Recognize IA64.
5908*1fd5a2e1SPrashanth Swaminathan	(ffi_raw): Added `flt' field.
5909*1fd5a2e1SPrashanth Swaminathan	Added "Java raw API" code.
5910*1fd5a2e1SPrashanth Swaminathan	* configure.in: Recognize ia64.
5911*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (TARGET_SRC_IA64): New macro.
5912*1fd5a2e1SPrashanth Swaminathan	(libffi_la_common_SOURCES): Added java_raw_api.c.
5913*1fd5a2e1SPrashanth Swaminathan	(libffi_la_SOURCES): Define in IA64 case.
5914*1fd5a2e1SPrashanth Swaminathan
5915*1fd5a2e1SPrashanth Swaminathan2000-01-04  Tom Tromey  <[email protected]>
5916*1fd5a2e1SPrashanth Swaminathan
5917*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt with newer automake.
5918*1fd5a2e1SPrashanth Swaminathan
5919*1fd5a2e1SPrashanth Swaminathan1999-12-31  Tom Tromey  <[email protected]>
5920*1fd5a2e1SPrashanth Swaminathan
5921*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (INCLUDES): Added -I$(top_srcdir)/src.
5922*1fd5a2e1SPrashanth Swaminathan
5923*1fd5a2e1SPrashanth Swaminathan1999-09-01  Tom Tromey  <[email protected]>
5924*1fd5a2e1SPrashanth Swaminathan
5925*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Removed PACKAGE and VERSION defines and
5926*1fd5a2e1SPrashanth Swaminathan	undefs.
5927*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Rebuilt.
5928*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5929*1fd5a2e1SPrashanth Swaminathan	* configure.in: Pass 3rd argument to AM_INIT_AUTOMAKE.
5930*1fd5a2e1SPrashanth Swaminathan	Use AM_PROG_LIBTOOL (automake 1.4 compatibility).
5931*1fd5a2e1SPrashanth Swaminathan	* acconfig.h: Don't #undef PACKAGE or VERSION.
5932*1fd5a2e1SPrashanth Swaminathan
5933*1fd5a2e1SPrashanth Swaminathan1999-08-09  Anthony Green  <[email protected]>
5934*1fd5a2e1SPrashanth Swaminathan
5935*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Try to work around messy header problem
5936*1fd5a2e1SPrashanth Swaminathan	with PACKAGE and VERSION.
5937*1fd5a2e1SPrashanth Swaminathan
5938*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5939*1fd5a2e1SPrashanth Swaminathan	* configure.in: Change version to 2.00-beta.
5940*1fd5a2e1SPrashanth Swaminathan
5941*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Rebuilt.
5942*1fd5a2e1SPrashanth Swaminathan	* acconfig.h (FFI_NO_STRUCTS, FFI_NO_RAW_API): Define.
5943*1fd5a2e1SPrashanth Swaminathan
5944*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_raw_call): Rename.
5945*1fd5a2e1SPrashanth Swaminathan
5946*1fd5a2e1SPrashanth Swaminathan1999-08-02  Kresten Krab Thorup  <[email protected]>
5947*1fd5a2e1SPrashanth Swaminathan
5948*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_closure_SYSV): New function.
5949*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_incoming_args_SYSV): Ditto.
5950*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure): Ditto.
5951*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_raw_SYSV): Ditto.
5952*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_raw_closure): More ditto.
5953*1fd5a2e1SPrashanth Swaminathan	(ffi_call_raw): Final ditto.
5954*1fd5a2e1SPrashanth Swaminathan
5955*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Add definitions for closure and raw API.
5956*1fd5a2e1SPrashanth Swaminathan
5957*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_cif_machdep): Added case for
5958*1fd5a2e1SPrashanth Swaminathan	FFI_TYPE_UINT64.
5959*1fd5a2e1SPrashanth Swaminathan
5960*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (libffi_la_common_SOURCES): Added raw_api.c
5961*1fd5a2e1SPrashanth Swaminathan
5962*1fd5a2e1SPrashanth Swaminathan	* src/raw_api.c: New file.
5963*1fd5a2e1SPrashanth Swaminathan
5964*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (ffi_raw): New type.
5965*1fd5a2e1SPrashanth Swaminathan	(UINT_ARG, SINT_ARG): New defines.
5966*1fd5a2e1SPrashanth Swaminathan	(ffi_closure, ffi_raw_closure): New types.
5967*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure, ffi_prep_raw_closure): New declarations.
5968*1fd5a2e1SPrashanth Swaminathan
5969*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add check for endianness and sizeof void*.
5970*1fd5a2e1SPrashanth Swaminathan
5971*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (ffi_call_SYSV): Call fixup routine via argument,
5972*1fd5a2e1SPrashanth Swaminathan	instead of directly.
5973*1fd5a2e1SPrashanth Swaminathan
5974*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5975*1fd5a2e1SPrashanth Swaminathan
5976*1fd5a2e1SPrashanth SwaminathanThu Jul  8 14:28:42 1999  Anthony Green  <[email protected]>
5977*1fd5a2e1SPrashanth Swaminathan
5978*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add x86 and powerpc BeOS configurations.
5979*1fd5a2e1SPrashanth Swaminathan	From Makoto Kato <[email protected]>.
5980*1fd5a2e1SPrashanth Swaminathan
5981*1fd5a2e1SPrashanth Swaminathan1999-05-09  Anthony Green  <[email protected]>
5982*1fd5a2e1SPrashanth Swaminathan
5983*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add warning about this being beta code.
5984*1fd5a2e1SPrashanth Swaminathan	Remove src/Makefile.am from the picture.
5985*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
5986*1fd5a2e1SPrashanth Swaminathan
5987*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Move logic from src/Makefile.am.  Add changes
5988*1fd5a2e1SPrashanth Swaminathan	to support libffi as a target library.
5989*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
5990*1fd5a2e1SPrashanth Swaminathan
5991*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, config.guess, config.sub, ltconfig, ltmain.sh:
5992*1fd5a2e1SPrashanth Swaminathan	Upgraded to new autoconf, automake, libtool.
5993*1fd5a2e1SPrashanth Swaminathan
5994*1fd5a2e1SPrashanth Swaminathan	* README: Tweaks.
5995*1fd5a2e1SPrashanth Swaminathan
5996*1fd5a2e1SPrashanth Swaminathan	* LICENSE: Update copyright date.
5997*1fd5a2e1SPrashanth Swaminathan
5998*1fd5a2e1SPrashanth Swaminathan	* src/Makefile.am, src/Makefile.in: Removed.
5999*1fd5a2e1SPrashanth Swaminathan
6000*1fd5a2e1SPrashanth Swaminathan1998-11-29  Anthony Green  <[email protected]>
6001*1fd5a2e1SPrashanth Swaminathan
6002*1fd5a2e1SPrashanth Swaminathan	* include/ChangeLog: Removed.
6003*1fd5a2e1SPrashanth Swaminathan	* src/ChangeLog: Removed.
6004*1fd5a2e1SPrashanth Swaminathan	* src/mips/ChangeLog: Removed.
6005*1fd5a2e1SPrashanth Swaminathan	* src/sparc/ChangeLog: Remboved.
6006*1fd5a2e1SPrashanth Swaminathan	* src/x86/ChangeLog: Removed.
6007*1fd5a2e1SPrashanth Swaminathan
6008*1fd5a2e1SPrashanth Swaminathan	* ChangeLog.v1: Created.
6009*1fd5a2e1SPrashanth Swaminathan
6010*1fd5a2e1SPrashanth Swaminathan=============================================================================
6011*1fd5a2e1SPrashanth SwaminathanFrom the old ChangeLog.libffi file....
6012*1fd5a2e1SPrashanth Swaminathan
6013*1fd5a2e1SPrashanth Swaminathan2011-02-08  Andreas Tobler  <[email protected]>
6014*1fd5a2e1SPrashanth Swaminathan
6015*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi.exp: Tweak for stand-alone mode.
6016*1fd5a2e1SPrashanth Swaminathan
6017*1fd5a2e1SPrashanth Swaminathan2009-12-25  Samuli Suominen  <[email protected]>
6018*1fd5a2e1SPrashanth Swaminathan
6019*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Undefine _AC_ARG_VAR_PRECIOUS for autoconf 2.64.
6020*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6021*1fd5a2e1SPrashanth Swaminathan	* fficonfig.h.in: Rebuilt.
6022*1fd5a2e1SPrashanth Swaminathan
6023*1fd5a2e1SPrashanth Swaminathan2009-06-16  Andrew Haley  <[email protected]>
6024*1fd5a2e1SPrashanth Swaminathan
6025*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint64.c,
6026*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint64.c,
6027*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble_va.c,
6028*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_ulonglong.c,
6029*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/return_ll1.c,
6030*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/stret_medium2.c: Fix printf format
6031*1fd5a2e1SPrashanth Swaminathan	specifiers.
6032*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/huge_struct.c: Ad x86 XFAILs.
6033*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/float2.c: Fix dg-excess-errors.
6034*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/ffitest.h,
6035*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/ffitestcxx.h (PRIdLL, PRIuLL): Define.
6036*1fd5a2e1SPrashanth Swaminathan
6037*1fd5a2e1SPrashanth Swaminathan2009-06-12  Andrew Haley  <[email protected]>
6038*1fd5a2e1SPrashanth Swaminathan
6039*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_sint64.c,
6040*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_align_uint64.c,
6041*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_ulonglong.c,
6042*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/return_ll1.c,
6043*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/stret_medium2.c: Fix printf format
6044*1fd5a2e1SPrashanth Swaminathan	specifiers.
6045*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.special/unwindtest.cc: include stdint.h.
6046*1fd5a2e1SPrashanth Swaminathan
6047*1fd5a2e1SPrashanth Swaminathan2009-06-11  Timothy Wall  <[email protected]>
6048*1fd5a2e1SPrashanth Swaminathan
6049*1fd5a2e1SPrashanth Swaminathan	* Makefile.am,
6050*1fd5a2e1SPrashanth Swaminathan        configure.ac,
6051*1fd5a2e1SPrashanth Swaminathan        include/ffi.h.in,
6052*1fd5a2e1SPrashanth Swaminathan        include/ffi_common.h,
6053*1fd5a2e1SPrashanth Swaminathan        src/closures.c,
6054*1fd5a2e1SPrashanth Swaminathan        src/dlmalloc.c,
6055*1fd5a2e1SPrashanth Swaminathan        src/x86/ffi.c,
6056*1fd5a2e1SPrashanth Swaminathan        src/x86/ffitarget.h,
6057*1fd5a2e1SPrashanth Swaminathan        src/x86/win64.S (new),
6058*1fd5a2e1SPrashanth Swaminathan	README: Added win64 support (mingw or MSVC)
6059*1fd5a2e1SPrashanth Swaminathan        * Makefile.in,
6060*1fd5a2e1SPrashanth Swaminathan        include/Makefile.in,
6061*1fd5a2e1SPrashanth Swaminathan        man/Makefile.in,
6062*1fd5a2e1SPrashanth Swaminathan        testsuite/Makefile.in,
6063*1fd5a2e1SPrashanth Swaminathan        configure,
6064*1fd5a2e1SPrashanth Swaminathan        aclocal.m4: Regenerated
6065*1fd5a2e1SPrashanth Swaminathan        * ltcf-c.sh: properly escape cygwin/w32 path
6066*1fd5a2e1SPrashanth Swaminathan        * man/ffi_call.3: Clarify size requirements for return value.
6067*1fd5a2e1SPrashanth Swaminathan        * src/x86/ffi64.c: Fix filename in comment.
6068*1fd5a2e1SPrashanth Swaminathan        * src/x86/win32.S: Remove unused extern.
6069*1fd5a2e1SPrashanth Swaminathan
6070*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/closure_fn0.c,
6071*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn1.c,
6072*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn2.c,
6073*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn3.c,
6074*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn4.c,
6075*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn5.c,
6076*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn6.c,
6077*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/closure_stdcall.c,
6078*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_12byte.c,
6079*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_16byte.c,
6080*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_18byte.c,
6081*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_19byte.c,
6082*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_1_1byte.c,
6083*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_20byte.c,
6084*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_20byte1.c,
6085*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_24byte.c,
6086*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_2byte.c,
6087*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3_1byte.c,
6088*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_3byte1.c,
6089*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_3byte2.c,
6090*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_4_1byte.c,
6091*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_4byte.c,
6092*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_5_1_byte.c,
6093*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_5byte.c,
6094*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_64byte.c,
6095*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_6_1_byte.c,
6096*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_6byte.c,
6097*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_7_1_byte.c,
6098*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_7byte.c,
6099*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_8byte.c,
6100*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_9byte1.c,
6101*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_9byte2.c,
6102*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_double.c,
6103*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_float.c,
6104*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_longdouble.c,
6105*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_longdouble_split.c,
6106*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_longdouble_split2.c,
6107*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_pointer.c,
6108*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_sint16.c,
6109*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_sint32.c,
6110*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_sint64.c,
6111*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_uint16.c,
6112*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_uint32.c,
6113*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_align_uint64.c,
6114*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_dbls_struct.c,
6115*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_double.c,
6116*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_double_va.c,
6117*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_float.c,
6118*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_longdouble.c,
6119*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_longdouble_va.c,
6120*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_schar.c,
6121*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_sshort.c,
6122*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_sshortchar.c,
6123*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_uchar.c,
6124*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_ushort.c,
6125*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_multi_ushortchar.c,
6126*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_pointer.c,
6127*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_pointer_stack.c,
6128*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_schar.c,
6129*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_sint.c,
6130*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_sshort.c,
6131*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_uchar.c,
6132*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_uint.c,
6133*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_ulonglong.c,
6134*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/cls_ushort.c,
6135*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/err_bad_abi.c,
6136*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/err_bad_typedef.c,
6137*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/float2.c,
6138*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/huge_struct.c,
6139*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct.c,
6140*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct1.c,
6141*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct10.c,
6142*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct2.c,
6143*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct3.c,
6144*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct4.c,
6145*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct5.c,
6146*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct6.c,
6147*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct7.c,
6148*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct8.c,
6149*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/nested_struct9.c,
6150*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/problem1.c,
6151*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/return_ldl.c,
6152*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/return_ll1.c,
6153*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/stret_large.c,
6154*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/stret_large2.c,
6155*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/stret_medium.c,
6156*1fd5a2e1SPrashanth Swaminathan 	testsuite/libffi.call/stret_medium2.c,
6157*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.special/unwindtest.cc: use ffi_closure_alloc instead
6158*1fd5a2e1SPrashanth Swaminathan        of checking for MMAP.  Use intptr_t instead of long casts.
6159*1fd5a2e1SPrashanth Swaminathan
6160*1fd5a2e1SPrashanth Swaminathan2009-06-04  Andrew Haley  <[email protected]>
6161*1fd5a2e1SPrashanth Swaminathan
6162*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h: Fix misapplied merge from gcc.
6163*1fd5a2e1SPrashanth Swaminathan
6164*1fd5a2e1SPrashanth Swaminathan2009-06-04  Andrew Haley  <[email protected]>
6165*1fd5a2e1SPrashanth Swaminathan
6166*1fd5a2e1SPrashanth Swaminathan	* src/mips/o32.S,
6167*1fd5a2e1SPrashanth Swaminathan	src/mips/n32.S: Fix licence formatting.
6168*1fd5a2e1SPrashanth Swaminathan
6169*1fd5a2e1SPrashanth Swaminathan2009-06-04  Andrew Haley  <[email protected]>
6170*1fd5a2e1SPrashanth Swaminathan
6171*1fd5a2e1SPrashanth Swaminathan	* src/x86/darwin.S: Fix licence formatting.
6172*1fd5a2e1SPrashanth Swaminathan	src/x86/win32.S: Likewise.
6173*1fd5a2e1SPrashanth Swaminathan	src/sh64/sysv.S: Likewise.
6174*1fd5a2e1SPrashanth Swaminathan	src/sh/sysv.S: Likewise.
6175*1fd5a2e1SPrashanth Swaminathan
6176*1fd5a2e1SPrashanth Swaminathan2009-06-04  Andrew Haley  <[email protected]>
6177*1fd5a2e1SPrashanth Swaminathan
6178*1fd5a2e1SPrashanth Swaminathan	* src/sh64/ffi.c: Remove lint directives.  Was missing from merge
6179*1fd5a2e1SPrashanth Swaminathan	of Andreas Tobler's patch from 2006-04-22.
6180*1fd5a2e1SPrashanth Swaminathan
6181*1fd5a2e1SPrashanth Swaminathan2009-06-04  Andrew Haley  <[email protected]>
6182*1fd5a2e1SPrashanth Swaminathan
6183*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c: Apply missing hunk from Alexandre Oliva's patch of
6184*1fd5a2e1SPrashanth Swaminathan	2007-03-07.
6185*1fd5a2e1SPrashanth Swaminathan
6186*1fd5a2e1SPrashanth Swaminathan2008-12-26  Timothy Wall  <[email protected]>
6187*1fd5a2e1SPrashanth Swaminathan
6188*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_longdouble.c,
6189*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/cls_longdouble_va.c,
6190*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/cls_align_longdouble.c,
6191*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/cls_align_longdouble_split.c,
6192*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/cls_align_longdouble_split2.c: mark expected
6193*1fd5a2e1SPrashanth Swaminathan        failures on x86_64 cygwin/mingw.
6194*1fd5a2e1SPrashanth Swaminathan
6195*1fd5a2e1SPrashanth Swaminathan2008-12-22  Timothy Wall  <[email protected]>
6196*1fd5a2e1SPrashanth Swaminathan
6197*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_fn0.c,
6198*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn1.c,
6199*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn2.c,
6200*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn3.c,
6201*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn4.c,
6202*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn5.c,
6203*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_fn6.c,
6204*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_loc_fn0.c,
6205*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/closure_stdcall.c,
6206*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/cls_align_pointer.c,
6207*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/cls_pointer.c,
6208*1fd5a2e1SPrashanth Swaminathan        testsuite/libffi.call/cls_pointer_stack.c: use portable cast from
6209*1fd5a2e1SPrashanth Swaminathan        pointer to integer (intptr_t).
6210*1fd5a2e1SPrashanth Swaminathan        * testsuite/libffi.call/cls_longdouble.c: disable for win64.
6211*1fd5a2e1SPrashanth Swaminathan
6212*1fd5a2e1SPrashanth Swaminathan2008-12-19  Anthony Green  <[email protected]>
6213*1fd5a2e1SPrashanth Swaminathan
6214*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 3.0.8.
6215*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6216*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Increment revision.
6217*1fd5a2e1SPrashanth Swaminathan	* README: Update for new release.
6218*1fd5a2e1SPrashanth Swaminathan
6219*1fd5a2e1SPrashanth Swaminathan2008-11-11  Anthony Green  <[email protected]>
6220*1fd5a2e1SPrashanth Swaminathan
6221*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 3.0.7.
6222*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6223*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Increment revision.
6224*1fd5a2e1SPrashanth Swaminathan	* README: Update for new release.
6225*1fd5a2e1SPrashanth Swaminathan
6226*1fd5a2e1SPrashanth Swaminathan2008-08-25  Andreas Tobler  <[email protected]>
6227*1fd5a2e1SPrashanth Swaminathan
6228*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffitarget.h (ffi_abi): Add FFI_LINUX and
6229*1fd5a2e1SPrashanth Swaminathan	FFI_LINUX_SOFT_FLOAT to the POWERPC_FREEBSD enum.
6230*1fd5a2e1SPrashanth Swaminathan	Add note about flag bits used for FFI_SYSV_TYPE_SMALL_STRUCT.
6231*1fd5a2e1SPrashanth Swaminathan	Adjust copyright notice.
6232*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ffi.c: Add two new flags to indicate if we have one
6233*1fd5a2e1SPrashanth Swaminathan	register or two register to use for FFI_SYSV structs.
6234*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Pass the right register flag introduced above.
6235*1fd5a2e1SPrashanth Swaminathan	(ffi_closure_helper_SYSV): Fix the return type for
6236*1fd5a2e1SPrashanth Swaminathan	FFI_SYSV_TYPE_SMALL_STRUCT. Comment.
6237*1fd5a2e1SPrashanth Swaminathan	Adjust copyright notice.
6238*1fd5a2e1SPrashanth Swaminathan
6239*1fd5a2e1SPrashanth Swaminathan2008-07-24  Anthony Green  <[email protected]>
6240*1fd5a2e1SPrashanth Swaminathan
6241*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_dbls_struct.c,
6242*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_double_va.c,
6243*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble.c,
6244*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_longdouble_va.c,
6245*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_pointer.c,
6246*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/cls_pointer_stack.c,
6247*1fd5a2e1SPrashanth Swaminathan	testsuite/libffi.call/err_bad_abi.c: Clean up failures from
6248*1fd5a2e1SPrashanth Swaminathan	compiler warnings.
6249*1fd5a2e1SPrashanth Swaminathan
6250*1fd5a2e1SPrashanth Swaminathan2008-07-17  Anthony Green  <[email protected]>
6251*1fd5a2e1SPrashanth Swaminathan
6252*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 3.0.6.
6253*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6254*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Increment revision.  Add documentation.
6255*1fd5a2e1SPrashanth Swaminathan	* README: Update for new release.
6256*1fd5a2e1SPrashanth Swaminathan
6257*1fd5a2e1SPrashanth Swaminathan2008-07-16  Kaz Kojima  <[email protected]>
6258*1fd5a2e1SPrashanth Swaminathan
6259*1fd5a2e1SPrashanth Swaminathan	* src/sh/ffi.c (ffi_prep_closure_loc): Turn INSN into an unsigned
6260*1fd5a2e1SPrashanth Swaminathan	int.
6261*1fd5a2e1SPrashanth Swaminathan
6262*1fd5a2e1SPrashanth Swaminathan2008-07-16  Kaz Kojima  <[email protected]>
6263*1fd5a2e1SPrashanth Swaminathan
6264*1fd5a2e1SPrashanth Swaminathan	* src/sh/sysv.S: Add .note.GNU-stack on Linux.
6265*1fd5a2e1SPrashanth Swaminathan	* src/sh64/sysv.S: Likewise.
6266*1fd5a2e1SPrashanth Swaminathan
6267*1fd5a2e1SPrashanth Swaminathan2008-04-03  Anthony Green  <[email protected]>
6268*1fd5a2e1SPrashanth Swaminathan
6269*1fd5a2e1SPrashanth Swaminathan	* libffi.pc.in (Libs): Add -L${libdir}.
6270*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 3.0.5.
6271*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6272*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Increment revision.
6273*1fd5a2e1SPrashanth Swaminathan	* README: Update for new release.
6274*1fd5a2e1SPrashanth Swaminathan
6275*1fd5a2e1SPrashanth Swaminathan2008-04-03  Anthony Green  <[email protected]>
6276*1fd5a2e1SPrashanth Swaminathan	    Xerces Ranby  <[email protected]>
6277*1fd5a2e1SPrashanth Swaminathan
6278*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Wrap definition of target architecture to
6279*1fd5a2e1SPrashanth Swaminathan	protect from double definitions.
6280*1fd5a2e1SPrashanth Swaminathan
6281*1fd5a2e1SPrashanth Swaminathan2008-03-22  Moriyoshi Koizumi  <[email protected]>
6282*1fd5a2e1SPrashanth Swaminathan
6283*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_prep_closure_loc): Fix for bug revealed in
6284*1fd5a2e1SPrashanth Swaminathan	closure_loc_fn0.c.
6285*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_loc_fn0.c (closure_loc_test_fn0):
6286*1fd5a2e1SPrashanth Swaminathan	New test.
6287*1fd5a2e1SPrashanth Swaminathan
6288*1fd5a2e1SPrashanth Swaminathan2008-03-04  Anthony Green  <[email protected]>
6289*1fd5a2e1SPrashanth Swaminathan	    Blake Chaffin
6290*1fd5a2e1SPrashanth Swaminathan	    [email protected]
6291*1fd5a2e1SPrashanth Swaminathan
6292*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/cls_align_longdouble_split2.c
6293*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/cls_align_longdouble_split.c
6294*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/cls_dbls_struct.c
6295*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/cls_double_va.c
6296*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/cls_longdouble.c
6297*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/cls_longdouble_va.c
6298*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/cls_pointer.c
6299*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/cls_pointer_stack.c
6300*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/err_bad_abi.c
6301*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/err_bad_typedef.c
6302*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/huge_struct.c
6303*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/stret_large2.c
6304*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/stret_large.c
6305*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/stret_medium2.c
6306*1fd5a2e1SPrashanth Swaminathan          testsuite/libffi.call/stret_medium.c: New tests from Apple.
6307*1fd5a2e1SPrashanth Swaminathan
6308*1fd5a2e1SPrashanth Swaminathan2008-02-26  Jakub Jelinek  <[email protected]>
6309*1fd5a2e1SPrashanth Swaminathan            Anthony Green  <[email protected]>
6310*1fd5a2e1SPrashanth Swaminathan
6311*1fd5a2e1SPrashanth Swaminathan	* src/alpha/osf.S: Add .note.GNU-stack on Linux.
6312*1fd5a2e1SPrashanth Swaminathan	* src/s390/sysv.S: Likewise.
6313*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64.S: Likewise.
6314*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/linux64_closure.S: Likewise.
6315*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/ppc_closure.S: Likewise.
6316*1fd5a2e1SPrashanth Swaminathan	* src/powerpc/sysv.S: Likewise.
6317*1fd5a2e1SPrashanth Swaminathan	* src/x86/unix64.S: Likewise.
6318*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S: Likewise.
6319*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v8.S: Likewise.
6320*1fd5a2e1SPrashanth Swaminathan	* src/sparc/v9.S: Likewise.
6321*1fd5a2e1SPrashanth Swaminathan	* src/m68k/sysv.S: Likewise.
6322*1fd5a2e1SPrashanth Swaminathan	* src/ia64/unix.S: Likewise.
6323*1fd5a2e1SPrashanth Swaminathan	* src/arm/sysv.S: Likewise.
6324*1fd5a2e1SPrashanth Swaminathan
6325*1fd5a2e1SPrashanth Swaminathan2008-02-26  Anthony Green  <[email protected]>
6326*1fd5a2e1SPrashanth Swaminathan            Thomas Heller  <[email protected]>
6327*1fd5a2e1SPrashanth Swaminathan
6328*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (ffi_closure_SYSV_inner): Change C++ comment to C
6329*1fd5a2e1SPrashanth Swaminathan	comment.
6330*1fd5a2e1SPrashanth Swaminathan
6331*1fd5a2e1SPrashanth Swaminathan2008-02-26  Anthony Green  <[email protected]>
6332*1fd5a2e1SPrashanth Swaminathan            Thomas Heller  <[email protected]>
6333*1fd5a2e1SPrashanth Swaminathan
6334*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in: Change void (*)() to void (*)(void).
6335*1fd5a2e1SPrashanth Swaminathan
6336*1fd5a2e1SPrashanth Swaminathan2008-02-26  Anthony Green  <[email protected]>
6337*1fd5a2e1SPrashanth Swaminathan            Thomas Heller  <[email protected]>
6338*1fd5a2e1SPrashanth Swaminathan
6339*1fd5a2e1SPrashanth Swaminathan	* src/alpha/ffi.c: Change void (*)() to void (*)(void).
6340*1fd5a2e1SPrashanth Swaminathan	src/alpha/osf.S, src/arm/ffi.c, src/frv/ffi.c, src/ia64/ffi.c,
6341*1fd5a2e1SPrashanth Swaminathan	src/ia64/unix.S, src/java_raw_api.c, src/m32r/ffi.c,
6342*1fd5a2e1SPrashanth Swaminathan	src/mips/ffi.c, src/pa/ffi.c, src/pa/hpux32.S, src/pa/linux.S,
6343*1fd5a2e1SPrashanth Swaminathan	src/powerpc/ffi.c, src/powerpc/ffi_darwin.c, src/raw_api.c,
6344*1fd5a2e1SPrashanth Swaminathan	src/s390/ffi.c, src/sh/ffi.c, src/sh64/ffi.c, src/sparc/ffi.c,
6345*1fd5a2e1SPrashanth Swaminathan	src/x86/ffi.c, src/x86/unix64.S, src/x86/darwin64.S,
6346*1fd5a2e1SPrashanth Swaminathan	src/x86/ffi64.c: Ditto.
6347*1fd5a2e1SPrashanth Swaminathan
6348*1fd5a2e1SPrashanth Swaminathan2008-02-24  Anthony Green  <[email protected]>
6349*1fd5a2e1SPrashanth Swaminathan
6350*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Accept openbsd*, not just openbsd.
6351*1fd5a2e1SPrashanth Swaminathan	Bump version to 3.0.4.
6352*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6353*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Increment revision.
6354*1fd5a2e1SPrashanth Swaminathan	* README: Update for new release.
6355*1fd5a2e1SPrashanth Swaminathan
6356*1fd5a2e1SPrashanth Swaminathan2008-02-22  Anthony Green  <[email protected]>
6357*1fd5a2e1SPrashanth Swaminathan
6358*1fd5a2e1SPrashanth Swaminathan	* README: Clean up list of tested platforms.
6359*1fd5a2e1SPrashanth Swaminathan
6360*1fd5a2e1SPrashanth Swaminathan2008-02-22  Anthony Green  <[email protected]>
6361*1fd5a2e1SPrashanth Swaminathan
6362*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 3.0.3.
6363*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6364*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Increment revision.
6365*1fd5a2e1SPrashanth Swaminathan	* README: Update for new release.  Clean up test docs.
6366*1fd5a2e1SPrashanth Swaminathan
6367*1fd5a2e1SPrashanth Swaminathan2008-02-22  Bjoern Koenig  <[email protected]>
6368*1fd5a2e1SPrashanth Swaminathan	    Andreas Tobler  <[email protected]>
6369*1fd5a2e1SPrashanth Swaminathan
6370*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add amd64-*-freebsd* target.
6371*1fd5a2e1SPrashanth Swaminathan	* configure: Regenerate.
6372*1fd5a2e1SPrashanth Swaminathan
6373*1fd5a2e1SPrashanth Swaminathan2008-02-22  Thomas Heller <[email protected]>
6374*1fd5a2e1SPrashanth Swaminathan
6375*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add x86 OpenBSD support.
6376*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6377*1fd5a2e1SPrashanth Swaminathan
6378*1fd5a2e1SPrashanth Swaminathan2008-02-21  Thomas Heller <[email protected]>
6379*1fd5a2e1SPrashanth Swaminathan
6380*1fd5a2e1SPrashanth Swaminathan	* README: Change "make test" to "make check".
6381*1fd5a2e1SPrashanth Swaminathan
6382*1fd5a2e1SPrashanth Swaminathan2008-02-21  Anthony Green  <[email protected]>
6383*1fd5a2e1SPrashanth Swaminathan
6384*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 3.0.2.
6385*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6386*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Increment revision.
6387*1fd5a2e1SPrashanth Swaminathan	* README: Update for new release.
6388*1fd5a2e1SPrashanth Swaminathan
6389*1fd5a2e1SPrashanth Swaminathan2008-02-21  Björn König <[email protected]>
6390*1fd5a2e1SPrashanth Swaminathan
6391*1fd5a2e1SPrashanth Swaminathan	* src/x86/freebsd.S: New file.
6392*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add x86 FreeBSD support.
6393*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Ditto.
6394*1fd5a2e1SPrashanth Swaminathan
6395*1fd5a2e1SPrashanth Swaminathan2008-02-15  Anthony Green  <[email protected]>
6396*1fd5a2e1SPrashanth Swaminathan
6397*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 3.0.1.
6398*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6399*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Increment revision.
6400*1fd5a2e1SPrashanth Swaminathan	* README: Update for new release.
6401*1fd5a2e1SPrashanth Swaminathan
6402*1fd5a2e1SPrashanth Swaminathan2008-02-15  David Daney	 <[email protected]>
6403*1fd5a2e1SPrashanth Swaminathan
6404*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c: Remove extra '>' from include directive.
6405*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Use clear_location instead of tramp.
6406*1fd5a2e1SPrashanth Swaminathan
6407*1fd5a2e1SPrashanth Swaminathan2008-02-15  Anthony Green  <[email protected]>
6408*1fd5a2e1SPrashanth Swaminathan
6409*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 3.0.0.
6410*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6411*1fd5a2e1SPrashanth Swaminathan
6412*1fd5a2e1SPrashanth Swaminathan2008-02-15  David Daney	 <[email protected]>
6413*1fd5a2e1SPrashanth Swaminathan
6414*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffi.c (USE__BUILTIN___CLEAR_CACHE):
6415*1fd5a2e1SPrashanth Swaminathan	Define (conditionally), and use it to include cachectl.h.
6416*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_closure_loc): Fix cache flushing.
6417*1fd5a2e1SPrashanth Swaminathan	* src/mips/ffitarget.h (_ABIN32, _ABI64, _ABIO32): Define.
6418*1fd5a2e1SPrashanth Swaminathan
6419*1fd5a2e1SPrashanth Swaminathan2008-02-15  Anthony Green  <[email protected]>
6420*1fd5a2e1SPrashanth Swaminathan
6421*1fd5a2e1SPrashanth Swaminathan        * man/ffi_call.3, man/ffi_prep_cif.3, man/ffi.3:
6422*1fd5a2e1SPrashanth Swaminathan	Update dates and remove all references to ffi_prep_closure.
6423*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 2.99.9.
6424*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6425*1fd5a2e1SPrashanth Swaminathan
6426*1fd5a2e1SPrashanth Swaminathan2008-02-15  Anthony Green  <[email protected]>
6427*1fd5a2e1SPrashanth Swaminathan
6428*1fd5a2e1SPrashanth Swaminathan	* man/ffi_prep_closure.3: Delete.
6429*1fd5a2e1SPrashanth Swaminathan	* man/Makefile.am (EXTRA_DIST): Remove ffi_prep_closure.3.
6430*1fd5a2e1SPrashanth Swaminathan	(man_MANS): Ditto.
6431*1fd5a2e1SPrashanth Swaminathan	* man/Makefile.in: Rebuilt.
6432*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 2.99.8.
6433*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6434*1fd5a2e1SPrashanth Swaminathan
6435*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6436*1fd5a2e1SPrashanth Swaminathan
6437*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 2.99.7.
6438*1fd5a2e1SPrashanth Swaminathan	* configure, doc/stamp-vti, doc/version.texi: Rebuilt.
6439*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in LICENSE src/debug.c src/closures.c
6440*1fd5a2e1SPrashanth Swaminathan          src/ffitest.c src/s390/sysv.S src/s390/ffitarget.h
6441*1fd5a2e1SPrashanth Swaminathan          src/types.c src/m68k/ffitarget.h src/raw_api.c src/frv/ffi.c
6442*1fd5a2e1SPrashanth Swaminathan          src/frv/ffitarget.h src/sh/ffi.c src/sh/sysv.S
6443*1fd5a2e1SPrashanth Swaminathan          src/sh/ffitarget.h src/powerpc/ffitarget.h src/pa/ffi.c
6444*1fd5a2e1SPrashanth Swaminathan          src/pa/ffitarget.h src/pa/linux.S src/java_raw_api.c
6445*1fd5a2e1SPrashanth Swaminathan          src/cris/ffitarget.h src/x86/ffi.c src/x86/sysv.S
6446*1fd5a2e1SPrashanth Swaminathan          src/x86/unix64.S src/x86/win32.S src/x86/ffitarget.h
6447*1fd5a2e1SPrashanth Swaminathan          src/x86/ffi64.c src/x86/darwin.S src/ia64/ffi.c
6448*1fd5a2e1SPrashanth Swaminathan          src/ia64/ffitarget.h src/ia64/ia64_flags.h src/ia64/unix.S
6449*1fd5a2e1SPrashanth Swaminathan          src/sparc/ffi.c src/sparc/v9.S src/sparc/ffitarget.h
6450*1fd5a2e1SPrashanth Swaminathan          src/sparc/v8.S src/alpha/ffi.c src/alpha/ffitarget.h
6451*1fd5a2e1SPrashanth Swaminathan          src/alpha/osf.S src/sh64/ffi.c src/sh64/sysv.S
6452*1fd5a2e1SPrashanth Swaminathan          src/sh64/ffitarget.h src/mips/ffi.c src/mips/ffitarget.h
6453*1fd5a2e1SPrashanth Swaminathan          src/mips/n32.S src/mips/o32.S src/arm/ffi.c src/arm/sysv.S
6454*1fd5a2e1SPrashanth Swaminathan          src/arm/ffitarget.h src/prep_cif.c: Update license text.
6455*1fd5a2e1SPrashanth Swaminathan
6456*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6457*1fd5a2e1SPrashanth Swaminathan
6458*1fd5a2e1SPrashanth Swaminathan	* README: Update tested platforms.
6459*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 2.99.6.
6460*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6461*1fd5a2e1SPrashanth Swaminathan
6462*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6463*1fd5a2e1SPrashanth Swaminathan
6464*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 2.99.5.
6465*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6466*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add darwin64.S
6467*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
6468*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Remove libstdc++ bits from GCC tree.
6469*1fd5a2e1SPrashanth Swaminathan	* LICENSE: Update WARRANTY.
6470*1fd5a2e1SPrashanth Swaminathan
6471*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6472*1fd5a2e1SPrashanth Swaminathan
6473*1fd5a2e1SPrashanth Swaminathan	* libffi.pc.in (libdir): Fix libdir definition.
6474*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 2.99.4.
6475*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6476*1fd5a2e1SPrashanth Swaminathan
6477*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6478*1fd5a2e1SPrashanth Swaminathan
6479*1fd5a2e1SPrashanth Swaminathan	* README: Update.
6480*1fd5a2e1SPrashanth Swaminathan	* libffi.info: New file.
6481*1fd5a2e1SPrashanth Swaminathan	* doc/stamp-vti: New file.
6482*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Bump version to 2.99.3.
6483*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6484*1fd5a2e1SPrashanth Swaminathan
6485*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6486*1fd5a2e1SPrashanth Swaminathan
6487*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (SUBDIRS): Add man dir.
6488*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
6489*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Create Makefile.
6490*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6491*1fd5a2e1SPrashanth Swaminathan        * man/ffi_call.3 man/ffi_prep_cif.3 man/ffi_prep_closure.3
6492*1fd5a2e1SPrashanth Swaminathan          man/Makefile.am man/Makefile.in: New files.
6493*1fd5a2e1SPrashanth Swaminathan
6494*1fd5a2e1SPrashanth Swaminathan2008-02-14  Tom Tromey  <[email protected]>
6495*1fd5a2e1SPrashanth Swaminathan
6496*1fd5a2e1SPrashanth Swaminathan	* aclocal.m4, Makefile.in, configure, fficonfig.h.in: Rebuilt.
6497*1fd5a2e1SPrashanth Swaminathan	* mdate-sh, texinfo.tex: New files.
6498*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (info_TEXINFOS): New variable.
6499*1fd5a2e1SPrashanth Swaminathan	* doc/libffi.texi: New file.
6500*1fd5a2e1SPrashanth Swaminathan	* doc/version.texi: Likewise.
6501*1fd5a2e1SPrashanth Swaminathan
6502*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6503*1fd5a2e1SPrashanth Swaminathan
6504*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AM_CFLAGS): Don't compile with -D$(TARGET).
6505*1fd5a2e1SPrashanth Swaminathan	(lib_LTLIBRARIES): Define.
6506*1fd5a2e1SPrashanth Swaminathan	(toolexeclib_LIBRARIES): Undefine.
6507*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
6508*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Reset version to 2.99.1.
6509*1fd5a2e1SPrashanth Swaminathan	* configure.in: Rebuilt.
6510*1fd5a2e1SPrashanth Swaminathan
6511*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6512*1fd5a2e1SPrashanth Swaminathan
6513*1fd5a2e1SPrashanth Swaminathan	* libffi.pc.in: Use @PACKAGE_NAME@ and @PACKAGE_VERSION@.
6514*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Reset version to 2.99.1.
6515*1fd5a2e1SPrashanth Swaminathan	* configure.in: Rebuilt.
6516*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add ChangeLog.libffi.
6517*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
6518*1fd5a2e1SPrashanth Swaminathan	* LICENSE: Update copyright notice.
6519*1fd5a2e1SPrashanth Swaminathan
6520*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6521*1fd5a2e1SPrashanth Swaminathan
6522*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.am (nodist_includes_HEADERS): Define.  Don't
6523*1fd5a2e1SPrashanth Swaminathan	distribute ffitarget.h or ffi.h from the build include dir.
6524*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
6525*1fd5a2e1SPrashanth Swaminathan
6526*1fd5a2e1SPrashanth Swaminathan2008-02-14  Anthony Green  <[email protected]>
6527*1fd5a2e1SPrashanth Swaminathan
6528*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.am (includesdir): Install headers under libdir.
6529*1fd5a2e1SPrashanth Swaminathan	(pkgconfigdir): Define. Install libffi.pc.
6530*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Rebuilt.
6531*1fd5a2e1SPrashanth Swaminathan	* libffi.pc.in: Create.
6532*1fd5a2e1SPrashanth Swaminathan	* libtool-version: Increment CURRENT
6533*1fd5a2e1SPrashanth Swaminathan	* configure.ac: Add libffi.pc.in
6534*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6535*1fd5a2e1SPrashanth Swaminathan
6536*1fd5a2e1SPrashanth Swaminathan2008-02-03  Anthony Green  <[email protected]>
6537*1fd5a2e1SPrashanth Swaminathan
6538*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.am (includesdir): Fix header install with
6539*1fd5a2e1SPrashanth Swaminathan	DESTDIR.
6540*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Rebuilt.
6541*1fd5a2e1SPrashanth Swaminathan
6542*1fd5a2e1SPrashanth Swaminathan2008-02-03  Timothy Wall  <[email protected]>
6543*1fd5a2e1SPrashanth Swaminathan
6544*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (FFI_INIT_TRAMPOLINE_STDCALL): Calculate jump return
6545*1fd5a2e1SPrashanth Swaminathan          offset based on code pointer, not data pointer.
6546*1fd5a2e1SPrashanth Swaminathan
6547*1fd5a2e1SPrashanth Swaminathan2008-02-01  Anthony Green  <[email protected]>
6548*1fd5a2e1SPrashanth Swaminathan
6549*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.am: Fix header installs.
6550*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Ditto.
6551*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Rebuilt.
6552*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Ditto.
6553*1fd5a2e1SPrashanth Swaminathan
6554*1fd5a2e1SPrashanth Swaminathan2008-02-01  Anthony Green  <[email protected]>
6555*1fd5a2e1SPrashanth Swaminathan
6556*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c (FFI_INIT_TRAMPOLINE_STDCALL,
6557*1fd5a2e1SPrashanth Swaminathan	FFI_INIT_TRAMPOLINE): Revert my broken changes to twall's last
6558*1fd5a2e1SPrashanth Swaminathan	patch.
6559*1fd5a2e1SPrashanth Swaminathan
6560*1fd5a2e1SPrashanth Swaminathan2008-01-31  Anthony Green  <[email protected]>
6561*1fd5a2e1SPrashanth Swaminathan
6562*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Add missing files.
6563*1fd5a2e1SPrashanth Swaminathan	* testsuite/Makefile.am: Ditto.
6564*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, testsuite/Makefile.in: Rebuilt.
6565*1fd5a2e1SPrashanth Swaminathan
6566*1fd5a2e1SPrashanth Swaminathan2008-01-31  Timothy Wall <[email protected]>
6567*1fd5a2e1SPrashanth Swaminathan
6568*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/closure_stdcall.c: Add test for stdcall
6569*1fd5a2e1SPrashanth Swaminathan	closures.
6570*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffitarget.h: Increase size of trampoline for stdcall
6571*1fd5a2e1SPrashanth Swaminathan	closures.
6572*1fd5a2e1SPrashanth Swaminathan	* src/x86/win32.S: Add assembly for stdcall closure.
6573*1fd5a2e1SPrashanth Swaminathan	* src/x86/ffi.c: Initialize stdcall closure trampoline.
6574*1fd5a2e1SPrashanth Swaminathan
6575*1fd5a2e1SPrashanth Swaminathan2008-01-30  H.J. Lu <[email protected]>
6576*1fd5a2e1SPrashanth Swaminathan
6577*1fd5a2e1SPrashanth Swaminathan	PR libffi/34612
6578*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S (ffi_closure_SYSV): Pop 4 byte from stack when
6579*1fd5a2e1SPrashanth Swaminathan	returning struct.
6580*1fd5a2e1SPrashanth Swaminathan
6581*1fd5a2e1SPrashanth Swaminathan	* testsuite/libffi.call/call.exp: Add "-O2 -fomit-frame-pointer"
6582*1fd5a2e1SPrashanth Swaminathan	tests.
6583*1fd5a2e1SPrashanth Swaminathan
6584*1fd5a2e1SPrashanth Swaminathan2008-01-30  Anthony Green  <[email protected]>
6585*1fd5a2e1SPrashanth Swaminathan
6586*1fd5a2e1SPrashanth Swaminathan	* Makefile.am, include/Makefile.am: Move headers to
6587*1fd5a2e1SPrashanth Swaminathan	libffi_la_SOURCES for new automake.
6588*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, include/Makefile.in: Rebuilt.
6589*1fd5a2e1SPrashanth Swaminathan
6590*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/wrapper.exp: Copied from gcc tree to allow for
6591*1fd5a2e1SPrashanth Swaminathan	execution outside of gcc tree.
6592*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/target-libpath.exp: Ditto.
6593*1fd5a2e1SPrashanth Swaminathan
6594*1fd5a2e1SPrashanth Swaminathan	* testsuite/lib/libffi-dg.exp: Many changes to allow for execution
6595*1fd5a2e1SPrashanth Swaminathan	outside of gcc tree.
6596*1fd5a2e1SPrashanth Swaminathan
6597*1fd5a2e1SPrashanth Swaminathan
6598*1fd5a2e1SPrashanth Swaminathan=============================================================================
6599*1fd5a2e1SPrashanth SwaminathanFrom the old ChangeLog.libgcj file....
6600*1fd5a2e1SPrashanth Swaminathan
6601*1fd5a2e1SPrashanth Swaminathan2004-01-14  Kelley Cook  <[email protected]>
6602*1fd5a2e1SPrashanth Swaminathan
6603*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add in AC_PREREQ(2.13)
6604*1fd5a2e1SPrashanth Swaminathan
6605*1fd5a2e1SPrashanth Swaminathan2003-02-20  Alexandre Oliva  <[email protected]>
6606*1fd5a2e1SPrashanth Swaminathan
6607*1fd5a2e1SPrashanth Swaminathan	* configure.in: Propagate ORIGINAL_LD_FOR_MULTILIBS to
6608*1fd5a2e1SPrashanth Swaminathan	config.status.
6609*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6610*1fd5a2e1SPrashanth Swaminathan
6611*1fd5a2e1SPrashanth Swaminathan2002-01-27  Alexandre Oliva  <[email protected]>
6612*1fd5a2e1SPrashanth Swaminathan
6613*1fd5a2e1SPrashanth Swaminathan	* configure.in (toolexecdir, toolexeclibdir): Set and AC_SUBST.
6614*1fd5a2e1SPrashanth Swaminathan	Remove USE_LIBDIR conditional.
6615*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (toolexecdir, toolexeclibdir): Don't override.
6616*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, configure: Rebuilt.
6617*1fd5a2e1SPrashanth Swaminathan
6618*1fd5a2e1SPrashanth SwaminathanMon Aug  9 18:33:38 1999  Rainer Orth  <[email protected]>
6619*1fd5a2e1SPrashanth Swaminathan
6620*1fd5a2e1SPrashanth Swaminathan	* include/Makefile.in: Rebuilt.
6621*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt
6622*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (toolexeclibdir): Add $(MULTISUBDIR) even for native
6623*1fd5a2e1SPrashanth Swaminathan	builds.
6624*1fd5a2e1SPrashanth Swaminathan	Use USE_LIBDIR.
6625*1fd5a2e1SPrashanth Swaminathan
6626*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6627*1fd5a2e1SPrashanth Swaminathan	* configure.in (USE_LIBDIR): Define for native builds.
6628*1fd5a2e1SPrashanth Swaminathan	Use lowercase in configure --help explanations.
6629*1fd5a2e1SPrashanth Swaminathan
6630*1fd5a2e1SPrashanth Swaminathan1999-08-08  Anthony Green  <[email protected]>
6631*1fd5a2e1SPrashanth Swaminathan
6632*1fd5a2e1SPrashanth Swaminathan	* include/ffi.h.in (FFI_FN): Remove `...'.
6633*1fd5a2e1SPrashanth Swaminathan
6634*1fd5a2e1SPrashanth Swaminathan1999-08-08  Anthony Green  <[email protected]>
6635*1fd5a2e1SPrashanth Swaminathan
6636*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
6637*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (AM_CFLAGS): Compile with -fexceptions.
6638*1fd5a2e1SPrashanth Swaminathan
6639*1fd5a2e1SPrashanth Swaminathan	* src/x86/sysv.S: Add exception handling metadata.
6640*1fd5a2e1SPrashanth Swaminathan
6641*1fd5a2e1SPrashanth Swaminathan
6642*1fd5a2e1SPrashanth Swaminathan=============================================================================
6643*1fd5a2e1SPrashanth Swaminathan
6644*1fd5a2e1SPrashanth SwaminathanThe libffi version 1 ChangeLog archive.
6645*1fd5a2e1SPrashanth Swaminathan
6646*1fd5a2e1SPrashanth SwaminathanVersion 1 of libffi had per-directory ChangeLogs.  Current and future
6647*1fd5a2e1SPrashanth Swaminathanversions have a single ChangeLog file in the root directory.  The
6648*1fd5a2e1SPrashanth Swaminathanversion 1 ChangeLogs have all been concatenated into this file for
6649*1fd5a2e1SPrashanth Swaminathanfuture reference only.
6650*1fd5a2e1SPrashanth Swaminathan
6651*1fd5a2e1SPrashanth Swaminathan--- libffi ----------------------------------------------------------------
6652*1fd5a2e1SPrashanth Swaminathan
6653*1fd5a2e1SPrashanth SwaminathanMon Oct  5 02:17:50 1998  Anthony Green  <[email protected]>
6654*1fd5a2e1SPrashanth Swaminathan
6655*1fd5a2e1SPrashanth Swaminathan	* configure.in: Boosted rev.
6656*1fd5a2e1SPrashanth Swaminathan	* configure, Makefile.in, aclocal.m4: Rebuilt.
6657*1fd5a2e1SPrashanth Swaminathan	* README: Boosted rev and updated release notes.
6658*1fd5a2e1SPrashanth Swaminathan
6659*1fd5a2e1SPrashanth SwaminathanMon Oct  5 01:03:03 1998  Anthony Green  <[email protected]>
6660*1fd5a2e1SPrashanth Swaminathan
6661*1fd5a2e1SPrashanth Swaminathan	* configure.in: Boosted rev.
6662*1fd5a2e1SPrashanth Swaminathan	* configure, Makefile.in, aclocal.m4: Rebuilt.
6663*1fd5a2e1SPrashanth Swaminathan	* README: Boosted rev and updated release notes.
6664*1fd5a2e1SPrashanth Swaminathan
6665*1fd5a2e1SPrashanth Swaminathan1998-07-25  Andreas Schwab  <[email protected]>
6666*1fd5a2e1SPrashanth Swaminathan
6667*1fd5a2e1SPrashanth Swaminathan	* m68k/ffi.c (ffi_prep_cif_machdep): Use bitmask for cif->flags.
6668*1fd5a2e1SPrashanth Swaminathan	Correctly handle small structures.
6669*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Also handle small structures.
6670*1fd5a2e1SPrashanth Swaminathan	(ffi_call): Pass size of return type to ffi_call_SYSV.
6671*1fd5a2e1SPrashanth Swaminathan	* m68k/sysv.S: Adjust for above changes.  Correctly align small
6672*1fd5a2e1SPrashanth Swaminathan	structures in the return value.
6673*1fd5a2e1SPrashanth Swaminathan
6674*1fd5a2e1SPrashanth Swaminathan	* types.c (uint64, sint64) [M68K]: Change alignment to 4.
6675*1fd5a2e1SPrashanth Swaminathan
6676*1fd5a2e1SPrashanth SwaminathanFri Apr 17 17:26:58 1998  Anthony Green  <[email protected]>
6677*1fd5a2e1SPrashanth Swaminathan
6678*1fd5a2e1SPrashanth Swaminathan	* configure.in: Boosted rev.
6679*1fd5a2e1SPrashanth Swaminathan	* configure,Makefile.in,aclocal.m4: Rebuilt.
6680*1fd5a2e1SPrashanth Swaminathan	* README: Boosted rev and added release notes.
6681*1fd5a2e1SPrashanth Swaminathan
6682*1fd5a2e1SPrashanth SwaminathanSun Feb 22 00:50:41 1998  Geoff Keating  <[email protected]>
6683*1fd5a2e1SPrashanth Swaminathan
6684*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add PowerPC config bits.
6685*1fd5a2e1SPrashanth Swaminathan
6686*1fd5a2e1SPrashanth Swaminathan1998-02-14  Andreas Schwab  <[email protected]>
6687*1fd5a2e1SPrashanth Swaminathan
6688*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add m68k config bits.  Change AC_CANONICAL_SYSTEM
6689*1fd5a2e1SPrashanth Swaminathan	to AC_CANONICAL_HOST, this is not a compiler.  Use $host instead
6690*1fd5a2e1SPrashanth Swaminathan	of $target.  Remove AC_CHECK_SIZEOF(char), we already know the
6691*1fd5a2e1SPrashanth Swaminathan	result.  Fix argument of AC_ARG_ENABLE.
6692*1fd5a2e1SPrashanth Swaminathan	* configure, fficonfig.h.in: Rebuilt.
6693*1fd5a2e1SPrashanth Swaminathan
6694*1fd5a2e1SPrashanth SwaminathanTue Feb 10 20:53:40 1998  Richard Henderson  <[email protected]>
6695*1fd5a2e1SPrashanth Swaminathan
6696*1fd5a2e1SPrashanth Swaminathan	* configure.in: Add Alpha config bits.
6697*1fd5a2e1SPrashanth Swaminathan
6698*1fd5a2e1SPrashanth SwaminathanTue May 13 13:39:20 1997  Anthony Green  <[email protected]>
6699*1fd5a2e1SPrashanth Swaminathan
6700*1fd5a2e1SPrashanth Swaminathan	* README: Updated dates and reworded Irix comments.
6701*1fd5a2e1SPrashanth Swaminathan
6702*1fd5a2e1SPrashanth Swaminathan	* configure.in: Removed AC_PROG_RANLIB.
6703*1fd5a2e1SPrashanth Swaminathan
6704*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, aclocal.m4, config.guess, config.sub, configure,
6705*1fd5a2e1SPrashanth Swaminathan	ltmain.sh, */Makefile.in: libtoolized again and	rebuilt with
6706*1fd5a2e1SPrashanth Swaminathan	automake and autoconf.
6707*1fd5a2e1SPrashanth Swaminathan
6708*1fd5a2e1SPrashanth SwaminathanSat May 10 18:44:50 1997  Tom Tromey  <[email protected]>
6709*1fd5a2e1SPrashanth Swaminathan
6710*1fd5a2e1SPrashanth Swaminathan	* configure, aclocal.m4: Rebuilt.
6711*1fd5a2e1SPrashanth Swaminathan	* configure.in: Don't compute EXTRADIST; now handled in
6712*1fd5a2e1SPrashanth Swaminathan	src/Makefile.in.  Removed macros implied by AM_INIT_AUTOMAKE.
6713*1fd5a2e1SPrashanth Swaminathan	Don't run AM_MAINTAINER_MODE.
6714*1fd5a2e1SPrashanth Swaminathan
6715*1fd5a2e1SPrashanth SwaminathanThu May  8 14:34:05 1997  Anthony Green  <[email protected]>
6716*1fd5a2e1SPrashanth Swaminathan
6717*1fd5a2e1SPrashanth Swaminathan	* missing, ltmain.sh, ltconfig.sh: Created. These are new files
6718*1fd5a2e1SPrashanth Swaminathan	required by automake and libtool.
6719*1fd5a2e1SPrashanth Swaminathan
6720*1fd5a2e1SPrashanth Swaminathan	* README: Boosted rev to 1.14. Added notes.
6721*1fd5a2e1SPrashanth Swaminathan
6722*1fd5a2e1SPrashanth Swaminathan	* acconfig.h: Moved PACKAGE and VERSION for new automake.
6723*1fd5a2e1SPrashanth Swaminathan
6724*1fd5a2e1SPrashanth Swaminathan	* configure.in: Changes for libtool.
6725*1fd5a2e1SPrashanth Swaminathan
6726*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (check): make test now make check. Uses libtool now.
6727*1fd5a2e1SPrashanth Swaminathan
6728*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, configure.in, aclocal.h, fficonfig.h.in: Rebuilt.
6729*1fd5a2e1SPrashanth Swaminathan
6730*1fd5a2e1SPrashanth SwaminathanThu May  1 16:27:07 1997  Anthony Green  <[email protected]>
6731*1fd5a2e1SPrashanth Swaminathan
6732*1fd5a2e1SPrashanth Swaminathan	* missing: Added file required by new automake.
6733*1fd5a2e1SPrashanth Swaminathan
6734*1fd5a2e1SPrashanth SwaminathanTue Nov 26 14:10:42 1996  Anthony Green  <[email protected]>
6735*1fd5a2e1SPrashanth Swaminathan
6736*1fd5a2e1SPrashanth Swaminathan	* acconfig.h: Added USING_PURIFY flag. This is defined when
6737*1fd5a2e1SPrashanth Swaminathan	--enable-purify-safety was used at configure time.
6738*1fd5a2e1SPrashanth Swaminathan
6739*1fd5a2e1SPrashanth Swaminathan	* configure.in (allsources): Added --enable-purify-safety switch.
6740*1fd5a2e1SPrashanth Swaminathan	(VERSION): Boosted rev to 1.13.
6741*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6742*1fd5a2e1SPrashanth Swaminathan
6743*1fd5a2e1SPrashanth SwaminathanFri Nov 22 06:46:12 1996  Anthony Green  <[email protected]>
6744*1fd5a2e1SPrashanth Swaminathan
6745*1fd5a2e1SPrashanth Swaminathan	* configure.in (VERSION): Boosted rev to 1.12.
6746*1fd5a2e1SPrashanth Swaminathan	Removed special CFLAGS hack for gcc.
6747*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6748*1fd5a2e1SPrashanth Swaminathan
6749*1fd5a2e1SPrashanth Swaminathan	* README: Boosted rev to 1.12. Added notes.
6750*1fd5a2e1SPrashanth Swaminathan
6751*1fd5a2e1SPrashanth Swaminathan	* Many files: Cygnus Support changed to Cygnus Solutions.
6752*1fd5a2e1SPrashanth Swaminathan
6753*1fd5a2e1SPrashanth SwaminathanWed Oct 30 11:15:25 1996  Anthony Green  <[email protected]>
6754*1fd5a2e1SPrashanth Swaminathan
6755*1fd5a2e1SPrashanth Swaminathan	* configure.in (VERSION): Boosted rev to 1.11.
6756*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6757*1fd5a2e1SPrashanth Swaminathan
6758*1fd5a2e1SPrashanth Swaminathan	* README: Boosted rev to 1.11. Added notes about GNU make.
6759*1fd5a2e1SPrashanth Swaminathan
6760*1fd5a2e1SPrashanth SwaminathanTue Oct 29 12:25:12 1996  Anthony Green  <[email protected]>
6761*1fd5a2e1SPrashanth Swaminathan
6762*1fd5a2e1SPrashanth Swaminathan	* configure.in: Fixed -Wall trick.
6763*1fd5a2e1SPrashanth Swaminathan	(VERSION): Boosted rev.
6764*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt
6765*1fd5a2e1SPrashanth Swaminathan
6766*1fd5a2e1SPrashanth Swaminathan	* acconfig.h: Needed for --enable-debug configure switch.
6767*1fd5a2e1SPrashanth Swaminathan
6768*1fd5a2e1SPrashanth Swaminathan	* README: Boosted rev to 1.09. Added more notes on building
6769*1fd5a2e1SPrashanth Swaminathan	libffi, and LCLint.
6770*1fd5a2e1SPrashanth Swaminathan
6771*1fd5a2e1SPrashanth Swaminathan	* configure.in: Added --enable-debug switch. Boosted rev to
6772*1fd5a2e1SPrashanth Swaminathan	1.09.
6773*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt
6774*1fd5a2e1SPrashanth Swaminathan
6775*1fd5a2e1SPrashanth SwaminathanTue Oct 15 13:11:28 1996  Anthony Green  <[email protected]>
6776*1fd5a2e1SPrashanth Swaminathan
6777*1fd5a2e1SPrashanth Swaminathan	* configure.in (VERSION): Boosted rev to 1.08
6778*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6779*1fd5a2e1SPrashanth Swaminathan
6780*1fd5a2e1SPrashanth Swaminathan	* README: Added n32 bug fix notes.
6781*1fd5a2e1SPrashanth Swaminathan
6782*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Added "make lint" production.
6783*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
6784*1fd5a2e1SPrashanth Swaminathan
6785*1fd5a2e1SPrashanth SwaminathanMon Oct 14 10:54:46 1996  Anthony Green  <[email protected]>
6786*1fd5a2e1SPrashanth Swaminathan
6787*1fd5a2e1SPrashanth Swaminathan	* README: Added web page reference.
6788*1fd5a2e1SPrashanth Swaminathan
6789*1fd5a2e1SPrashanth Swaminathan	* configure.in, README: Boosted rev to 1.05
6790*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6791*1fd5a2e1SPrashanth Swaminathan
6792*1fd5a2e1SPrashanth Swaminathan	* README: Fixed n32 sample code.
6793*1fd5a2e1SPrashanth Swaminathan
6794*1fd5a2e1SPrashanth SwaminathanFri Oct 11 17:09:28 1996  Anthony Green  <[email protected]>
6795*1fd5a2e1SPrashanth Swaminathan
6796*1fd5a2e1SPrashanth Swaminathan	* README: Added sparc notes.
6797*1fd5a2e1SPrashanth Swaminathan
6798*1fd5a2e1SPrashanth Swaminathan	* configure.in, README: Boosted rev to 1.04.
6799*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6800*1fd5a2e1SPrashanth Swaminathan
6801*1fd5a2e1SPrashanth SwaminathanThu Oct 10 10:31:03 1996  Anthony Green  <[email protected]>
6802*1fd5a2e1SPrashanth Swaminathan
6803*1fd5a2e1SPrashanth Swaminathan	* configure.in, README: Boosted rev to 1.03.
6804*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6805*1fd5a2e1SPrashanth Swaminathan
6806*1fd5a2e1SPrashanth Swaminathan	* README: Added struct notes.
6807*1fd5a2e1SPrashanth Swaminathan
6808*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Added LICENSE to distribution.
6809*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
6810*1fd5a2e1SPrashanth Swaminathan
6811*1fd5a2e1SPrashanth Swaminathan	* README: Removed Linux section. No special notes now
6812*1fd5a2e1SPrashanth Swaminathan	because aggregates arg/return types work.
6813*1fd5a2e1SPrashanth Swaminathan
6814*1fd5a2e1SPrashanth SwaminathanWed Oct  9 16:16:42 1996  Anthony Green  <[email protected]>
6815*1fd5a2e1SPrashanth Swaminathan
6816*1fd5a2e1SPrashanth Swaminathan	* README, configure.in (VERSION): Boosted rev to 1.02
6817*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6818*1fd5a2e1SPrashanth Swaminathan
6819*1fd5a2e1SPrashanth SwaminathanTue Oct  8 11:56:33 1996  Anthony Green  <[email protected]>
6820*1fd5a2e1SPrashanth Swaminathan
6821*1fd5a2e1SPrashanth Swaminathan	* README (NOTE): Added n32 notes.
6822*1fd5a2e1SPrashanth Swaminathan
6823*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Added test production.
6824*1fd5a2e1SPrashanth Swaminathan	* Makefile: Rebuilt
6825*1fd5a2e1SPrashanth Swaminathan
6826*1fd5a2e1SPrashanth Swaminathan	* README: spell checked!
6827*1fd5a2e1SPrashanth Swaminathan
6828*1fd5a2e1SPrashanth Swaminathan	* configure.in (VERSION): Boosted rev to 1.01
6829*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6830*1fd5a2e1SPrashanth Swaminathan
6831*1fd5a2e1SPrashanth SwaminathanMon Oct  7 15:50:22 1996  Anthony Green  <[email protected]>
6832*1fd5a2e1SPrashanth Swaminathan
6833*1fd5a2e1SPrashanth Swaminathan	* configure.in: Added nasty bit to support SGI tools.
6834*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6835*1fd5a2e1SPrashanth Swaminathan
6836*1fd5a2e1SPrashanth Swaminathan	* README: Added SGI notes. Added note about automake bug.
6837*1fd5a2e1SPrashanth Swaminathan
6838*1fd5a2e1SPrashanth SwaminathanMon Oct  7 11:00:28 1996  Anthony Green  <[email protected]>
6839*1fd5a2e1SPrashanth Swaminathan
6840*1fd5a2e1SPrashanth Swaminathan	* README: Rewrote intro, and fixed examples.
6841*1fd5a2e1SPrashanth Swaminathan
6842*1fd5a2e1SPrashanth SwaminathanFri Oct  4 10:19:55 1996  Anthony Green  <[email protected]>
6843*1fd5a2e1SPrashanth Swaminathan
6844*1fd5a2e1SPrashanth Swaminathan	* configure.in: -D$TARGET is no longer used as a compiler switch.
6845*1fd5a2e1SPrashanth Swaminathan	It is now inserted into ffi.h at configure time.
6846*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6847*1fd5a2e1SPrashanth Swaminathan
6848*1fd5a2e1SPrashanth Swaminathan	* FFI_ABI and FFI_STATUS are now ffi_abi and ffi_status.
6849*1fd5a2e1SPrashanth Swaminathan
6850*1fd5a2e1SPrashanth SwaminathanThu Oct  3 13:47:34 1996  Anthony Green  <[email protected]>
6851*1fd5a2e1SPrashanth Swaminathan
6852*1fd5a2e1SPrashanth Swaminathan	* README, LICENSE: Created. Wrote some docs.
6853*1fd5a2e1SPrashanth Swaminathan
6854*1fd5a2e1SPrashanth Swaminathan	* configure.in: Don't barf on i586-unknown-linuxaout.
6855*1fd5a2e1SPrashanth Swaminathan	Added EXTRADIST code for "make dist".
6856*1fd5a2e1SPrashanth Swaminathan	* configure: Rebuilt.
6857*1fd5a2e1SPrashanth Swaminathan
6858*1fd5a2e1SPrashanth Swaminathan	* */Makefile.in: Rebuilt with patched automake.
6859*1fd5a2e1SPrashanth Swaminathan
6860*1fd5a2e1SPrashanth SwaminathanTue Oct  1 17:12:25 1996  Anthony Green  <[email protected]>
6861*1fd5a2e1SPrashanth Swaminathan
6862*1fd5a2e1SPrashanth Swaminathan	* Makefile.am, aclocal.m4, config.guess, config.sub,
6863*1fd5a2e1SPrashanth Swaminathan	configure.in, fficonfig.h.in, install-sh, mkinstalldirs,
6864*1fd5a2e1SPrashanth Swaminathan	stamp-h.in: Created
6865*1fd5a2e1SPrashanth Swaminathan	* Makefile.in, configure: Generated
6866*1fd5a2e1SPrashanth Swaminathan
6867*1fd5a2e1SPrashanth Swaminathan--- libffi/include --------------------------------------------------------
6868*1fd5a2e1SPrashanth Swaminathan
6869*1fd5a2e1SPrashanth SwaminathanTue Feb 24 13:09:36 1998  Anthony Green  <[email protected]>
6870*1fd5a2e1SPrashanth Swaminathan
6871*1fd5a2e1SPrashanth Swaminathan	* ffi_mips.h: Updated FFI_TYPE_STRUCT_* values based on
6872*1fd5a2e1SPrashanth Swaminathan	ffi.h.in changes.  This is a work-around for SGI's "simple"
6873*1fd5a2e1SPrashanth Swaminathan	assembler.
6874*1fd5a2e1SPrashanth Swaminathan
6875*1fd5a2e1SPrashanth SwaminathanSun Feb 22 00:51:55 1998  Geoff Keating  <[email protected]>
6876*1fd5a2e1SPrashanth Swaminathan
6877*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: PowerPC support.
6878*1fd5a2e1SPrashanth Swaminathan
6879*1fd5a2e1SPrashanth Swaminathan1998-02-14  Andreas Schwab  <[email protected]>
6880*1fd5a2e1SPrashanth Swaminathan
6881*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Add m68k support.
6882*1fd5a2e1SPrashanth Swaminathan	(FFI_TYPE_LONGDOUBLE): Make it a separate value.
6883*1fd5a2e1SPrashanth Swaminathan
6884*1fd5a2e1SPrashanth SwaminathanTue Feb 10 20:55:16 1998  Richard Henderson  <[email protected]>
6885*1fd5a2e1SPrashanth Swaminathan
6886*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in (SIZEOF_ARG): Use a pointer type by default.
6887*1fd5a2e1SPrashanth Swaminathan
6888*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Alpha support.
6889*1fd5a2e1SPrashanth Swaminathan
6890*1fd5a2e1SPrashanth SwaminathanFri Nov 22 06:48:45 1996  Anthony Green  <[email protected]>
6891*1fd5a2e1SPrashanth Swaminathan
6892*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in, ffi_common.h: Cygnus Support -> Cygnus Solutions.
6893*1fd5a2e1SPrashanth Swaminathan
6894*1fd5a2e1SPrashanth SwaminathanWed Nov 20 22:31:01 1996  Anthony Green  <[email protected]>
6895*1fd5a2e1SPrashanth Swaminathan
6896*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Added ffi_type_void definition.
6897*1fd5a2e1SPrashanth Swaminathan
6898*1fd5a2e1SPrashanth SwaminathanTue Oct 29 12:22:40 1996  Anthony Green  <[email protected]>
6899*1fd5a2e1SPrashanth Swaminathan
6900*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (hack_DATA): Always install ffi_mips.h.
6901*1fd5a2e1SPrashanth Swaminathan
6902*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Removed FFI_DEBUG. It's now in the correct
6903*1fd5a2e1SPrashanth Swaminathan	place (acconfig.h).
6904*1fd5a2e1SPrashanth Swaminathan	Added #include <stddef.h> for size_t definition.
6905*1fd5a2e1SPrashanth Swaminathan
6906*1fd5a2e1SPrashanth SwaminathanTue Oct 15 17:23:35 1996  Anthony Green  <[email protected]>
6907*1fd5a2e1SPrashanth Swaminathan
6908*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in, ffi_common.h, ffi_mips.h: More clean up.
6909*1fd5a2e1SPrashanth Swaminathan	Commented out #define of FFI_DEBUG.
6910*1fd5a2e1SPrashanth Swaminathan
6911*1fd5a2e1SPrashanth SwaminathanTue Oct 15 13:01:06 1996  Anthony Green  <[email protected]>
6912*1fd5a2e1SPrashanth Swaminathan
6913*1fd5a2e1SPrashanth Swaminathan	* ffi_common.h: Added bool definition.
6914*1fd5a2e1SPrashanth Swaminathan
6915*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in, ffi_common.h: Clean up based on LCLint output.
6916*1fd5a2e1SPrashanth Swaminathan	Added funny /*@...@*/ comments to annotate source.
6917*1fd5a2e1SPrashanth Swaminathan
6918*1fd5a2e1SPrashanth SwaminathanMon Oct 14 12:29:23 1996  Anthony Green  <[email protected]>
6919*1fd5a2e1SPrashanth Swaminathan
6920*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Interface changes based on feedback from Jim
6921*1fd5a2e1SPrashanth Swaminathan	Blandy.
6922*1fd5a2e1SPrashanth Swaminathan
6923*1fd5a2e1SPrashanth SwaminathanFri Oct 11 16:49:35 1996  Anthony Green  <[email protected]>
6924*1fd5a2e1SPrashanth Swaminathan
6925*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Small change for sparc support.
6926*1fd5a2e1SPrashanth Swaminathan
6927*1fd5a2e1SPrashanth SwaminathanThu Oct 10 14:53:37 1996  Anthony Green  <[email protected]>
6928*1fd5a2e1SPrashanth Swaminathan
6929*1fd5a2e1SPrashanth Swaminathan	* ffi_mips.h: Added FFI_TYPE_STRUCT_* definitions for
6930*1fd5a2e1SPrashanth Swaminathan	special structure return types.
6931*1fd5a2e1SPrashanth Swaminathan
6932*1fd5a2e1SPrashanth SwaminathanWed Oct  9 13:55:57 1996  Anthony Green  <[email protected]>
6933*1fd5a2e1SPrashanth Swaminathan
6934*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Added SIZEOF_ARG definition for X86
6935*1fd5a2e1SPrashanth Swaminathan
6936*1fd5a2e1SPrashanth SwaminathanTue Oct  8 11:40:36 1996  Anthony Green  <[email protected]>
6937*1fd5a2e1SPrashanth Swaminathan
6938*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in (FFI_FN): Added macro for eliminating compiler warnings.
6939*1fd5a2e1SPrashanth Swaminathan	Use it to case your function pointers to the proper type.
6940*1fd5a2e1SPrashanth Swaminathan
6941*1fd5a2e1SPrashanth Swaminathan	* ffi_mips.h (SIZEOF_ARG): Added magic to fix type promotion bug.
6942*1fd5a2e1SPrashanth Swaminathan
6943*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Added ffi_mips.h to EXTRA_DIST.
6944*1fd5a2e1SPrashanth Swaminathan	* Makefile: Rebuilt.
6945*1fd5a2e1SPrashanth Swaminathan
6946*1fd5a2e1SPrashanth Swaminathan	* ffi_mips.h: Created. Moved all common mips definitions here.
6947*1fd5a2e1SPrashanth Swaminathan
6948*1fd5a2e1SPrashanth SwaminathanMon Oct  7 10:58:12 1996  Anthony Green  <[email protected]>
6949*1fd5a2e1SPrashanth Swaminathan
6950*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: The SGI assember is very picky about parens. Redefined
6951*1fd5a2e1SPrashanth Swaminathan 	some macros to avoid problems.
6952*1fd5a2e1SPrashanth Swaminathan
6953*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Added FFI_DEFAULT_ABI definitions. Also added
6954*1fd5a2e1SPrashanth Swaminathan	externs for pointer, and 64bit integral ffi_types.
6955*1fd5a2e1SPrashanth Swaminathan
6956*1fd5a2e1SPrashanth SwaminathanFri Oct  4 09:51:37 1996  Anthony Green  <[email protected]>
6957*1fd5a2e1SPrashanth Swaminathan
6958*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Added FFI_ABI member to ffi_cif and changed
6959*1fd5a2e1SPrashanth Swaminathan	function prototypes accordingly.
6960*1fd5a2e1SPrashanth Swaminathan	Added #define @TARGET@. Now programs including ffi.h don't
6961*1fd5a2e1SPrashanth Swaminathan	have to specify this themselves.
6962*1fd5a2e1SPrashanth Swaminathan
6963*1fd5a2e1SPrashanth SwaminathanThu Oct  3 15:36:44 1996  Anthony Green  <[email protected]>
6964*1fd5a2e1SPrashanth Swaminathan
6965*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in: Changed ffi_prep_cif's values from void* to void**
6966*1fd5a2e1SPrashanth Swaminathan
6967*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Added EXTRA_DIST for "make dist"
6968*1fd5a2e1SPrashanth Swaminathan	to work.
6969*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
6970*1fd5a2e1SPrashanth Swaminathan
6971*1fd5a2e1SPrashanth SwaminathanWed Oct  2 10:16:59 1996  Anthony Green  <[email protected]>
6972*1fd5a2e1SPrashanth Swaminathan
6973*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Created
6974*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Generated
6975*1fd5a2e1SPrashanth Swaminathan
6976*1fd5a2e1SPrashanth Swaminathan	* ffi_common.h: Added rcsid comment
6977*1fd5a2e1SPrashanth Swaminathan
6978*1fd5a2e1SPrashanth SwaminathanTue Oct  1 17:13:51 1996  Anthony Green  <[email protected]>
6979*1fd5a2e1SPrashanth Swaminathan
6980*1fd5a2e1SPrashanth Swaminathan	* ffi.h.in, ffi_common.h: Created
6981*1fd5a2e1SPrashanth Swaminathan
6982*1fd5a2e1SPrashanth Swaminathan--- libffi/src ------------------------------------------------------------
6983*1fd5a2e1SPrashanth Swaminathan
6984*1fd5a2e1SPrashanth SwaminathanMon Oct  5 02:17:50 1998  Anthony Green  <[email protected]>
6985*1fd5a2e1SPrashanth Swaminathan
6986*1fd5a2e1SPrashanth Swaminathan	* arm/ffi.c, arm/sysv.S: Created.
6987*1fd5a2e1SPrashanth Swaminathan
6988*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Added arm files.
6989*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
6990*1fd5a2e1SPrashanth Swaminathan
6991*1fd5a2e1SPrashanth SwaminathanMon Oct  5 01:41:38 1998  Anthony Green  <[email protected]>
6992*1fd5a2e1SPrashanth Swaminathan
6993*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (libffi_la_LDFLAGS): Incremented revision.
6994*1fd5a2e1SPrashanth Swaminathan
6995*1fd5a2e1SPrashanth SwaminathanSun Oct  4 16:27:17 1998  Anthony Green  <[email protected]>
6996*1fd5a2e1SPrashanth Swaminathan
6997*1fd5a2e1SPrashanth Swaminathan	* alpha/osf.S (ffi_call_osf): Patch for DU assembler.
6998*1fd5a2e1SPrashanth Swaminathan
6999*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (main): long long and long double return values work
7000*1fd5a2e1SPrashanth Swaminathan	for x86.
7001*1fd5a2e1SPrashanth Swaminathan
7002*1fd5a2e1SPrashanth SwaminathanFri Apr 17 11:50:58 1998  Anthony Green  <[email protected]>
7003*1fd5a2e1SPrashanth Swaminathan
7004*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
7005*1fd5a2e1SPrashanth Swaminathan
7006*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (main): Floating point tests not executed for systems
7007*1fd5a2e1SPrashanth Swaminathan 	with broken lond double (SunOS 4 w/ GCC).
7008*1fd5a2e1SPrashanth Swaminathan
7009*1fd5a2e1SPrashanth Swaminathan	* types.c: Fixed x86 alignment info for long long types.
7010*1fd5a2e1SPrashanth Swaminathan
7011*1fd5a2e1SPrashanth SwaminathanThu Apr 16 07:15:28 1998  Anthony Green  <[email protected]>
7012*1fd5a2e1SPrashanth Swaminathan
7013*1fd5a2e1SPrashanth Swaminathan	* ffitest.c: Added more notes about GCC bugs under Irix 6.
7014*1fd5a2e1SPrashanth Swaminathan
7015*1fd5a2e1SPrashanth SwaminathanWed Apr 15 08:42:22 1998  Anthony Green  <[email protected]>
7016*1fd5a2e1SPrashanth Swaminathan
7017*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (struct5): New test function.
7018*1fd5a2e1SPrashanth Swaminathan	(main): New test with struct5.
7019*1fd5a2e1SPrashanth Swaminathan
7020*1fd5a2e1SPrashanth SwaminathanThu Mar  5 10:48:11 1998  Anthony Green  <[email protected]>
7021*1fd5a2e1SPrashanth Swaminathan
7022*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (initialize_aggregate): Fix assertion for
7023*1fd5a2e1SPrashanth Swaminathan	nested structures.
7024*1fd5a2e1SPrashanth Swaminathan
7025*1fd5a2e1SPrashanth SwaminathanTue Feb 24 16:33:41 1998  Anthony Green  <[email protected]>
7026*1fd5a2e1SPrashanth Swaminathan
7027*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (ffi_prep_cif): Added long double support for sparc.
7028*1fd5a2e1SPrashanth Swaminathan
7029*1fd5a2e1SPrashanth SwaminathanSun Feb 22 00:52:18 1998  Geoff Keating  <[email protected]>
7030*1fd5a2e1SPrashanth Swaminathan
7031*1fd5a2e1SPrashanth Swaminathan	* powerpc/asm.h: New file.
7032*1fd5a2e1SPrashanth Swaminathan	* powerpc/ffi.c: New file.
7033*1fd5a2e1SPrashanth Swaminathan	* powerpc/sysv.S: New file.
7034*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: PowerPC port.
7035*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (main): Allow all tests to run even in presence of gcc
7036*1fd5a2e1SPrashanth Swaminathan 	bug on PowerPC.
7037*1fd5a2e1SPrashanth Swaminathan
7038*1fd5a2e1SPrashanth Swaminathan1998-02-17  Anthony Green  <[email protected]>
7039*1fd5a2e1SPrashanth Swaminathan
7040*1fd5a2e1SPrashanth Swaminathan	* mips/ffi.c: Fixed comment typo.
7041*1fd5a2e1SPrashanth Swaminathan
7042*1fd5a2e1SPrashanth Swaminathan	* x86/ffi.c (ffi_prep_cif_machdep), x86/sysv.S (retfloat):
7043*1fd5a2e1SPrashanth Swaminathan	Fixed x86 long double return handling.
7044*1fd5a2e1SPrashanth Swaminathan
7045*1fd5a2e1SPrashanth Swaminathan	* types.c: Fixed x86 long double alignment info.
7046*1fd5a2e1SPrashanth Swaminathan
7047*1fd5a2e1SPrashanth Swaminathan1998-02-14  Andreas Schwab  <[email protected]>
7048*1fd5a2e1SPrashanth Swaminathan
7049*1fd5a2e1SPrashanth Swaminathan	* types.c: Add m68k support.
7050*1fd5a2e1SPrashanth Swaminathan
7051*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (floating): Add long double parameter.
7052*1fd5a2e1SPrashanth Swaminathan	(return_ll, ldblit): New functions to test long long and long
7053*1fd5a2e1SPrashanth Swaminathan	double return value.
7054*1fd5a2e1SPrashanth Swaminathan	(main): Fix type error in assignment of ts[1-4]_type.elements.
7055*1fd5a2e1SPrashanth Swaminathan	Add tests for long long and long double arguments and return
7056*1fd5a2e1SPrashanth Swaminathan	values.
7057*1fd5a2e1SPrashanth Swaminathan
7058*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (ffi_prep_cif) [M68K]: Don't allocate argument for
7059*1fd5a2e1SPrashanth Swaminathan	struct value pointer.
7060*1fd5a2e1SPrashanth Swaminathan
7061*1fd5a2e1SPrashanth Swaminathan	* m68k/ffi.c, m68k/sysv.S: New files.
7062*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Add bits for m68k port.  Add kludge to work around
7063*1fd5a2e1SPrashanth Swaminathan	automake deficiency.
7064*1fd5a2e1SPrashanth Swaminathan	(test): Don't require "." in $PATH.
7065*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
7066*1fd5a2e1SPrashanth Swaminathan
7067*1fd5a2e1SPrashanth SwaminathanWed Feb 11 07:36:50 1998  Anthony Green  <[email protected]>
7068*1fd5a2e1SPrashanth Swaminathan
7069*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
7070*1fd5a2e1SPrashanth Swaminathan
7071*1fd5a2e1SPrashanth SwaminathanTue Feb 10 20:56:00 1998  Richard Henderson  <[email protected]>
7072*1fd5a2e1SPrashanth Swaminathan
7073*1fd5a2e1SPrashanth Swaminathan	* alpha/ffi.c, alpha/osf.S: New files.
7074*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Alpha port.
7075*1fd5a2e1SPrashanth Swaminathan
7076*1fd5a2e1SPrashanth SwaminathanTue Nov 18 14:12:07 1997  Anthony Green  <[email protected]>
7077*1fd5a2e1SPrashanth Swaminathan
7078*1fd5a2e1SPrashanth Swaminathan	* mips/ffi.c (ffi_prep_cif_machdep): Initialize rstruct_flag
7079*1fd5a2e1SPrashanth Swaminathan	for n32.
7080*1fd5a2e1SPrashanth Swaminathan
7081*1fd5a2e1SPrashanth SwaminathanTue Jun  3 17:18:20 1997  Anthony Green  <[email protected]>
7082*1fd5a2e1SPrashanth Swaminathan
7083*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (main): Added hack to get structure tests working
7084*1fd5a2e1SPrashanth Swaminathan	correctly.
7085*1fd5a2e1SPrashanth Swaminathan
7086*1fd5a2e1SPrashanth SwaminathanSat May 10 19:06:42 1997  Tom Tromey  <[email protected]>
7087*1fd5a2e1SPrashanth Swaminathan
7088*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
7089*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Explicitly list all distributable
7090*1fd5a2e1SPrashanth Swaminathan	files in subdirs.
7091*1fd5a2e1SPrashanth Swaminathan	(VERSION, CC): Removed.
7092*1fd5a2e1SPrashanth Swaminathan
7093*1fd5a2e1SPrashanth SwaminathanThu May  8 17:19:01 1997  Anthony Green  <[email protected]>
7094*1fd5a2e1SPrashanth Swaminathan
7095*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Many changes for new automake and libtool.
7096*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
7097*1fd5a2e1SPrashanth Swaminathan
7098*1fd5a2e1SPrashanth SwaminathanFri Nov 22 06:57:56 1996  Anthony Green  <[email protected]>
7099*1fd5a2e1SPrashanth Swaminathan
7100*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (main): Fixed test case for non mips machines.
7101*1fd5a2e1SPrashanth Swaminathan
7102*1fd5a2e1SPrashanth SwaminathanWed Nov 20 22:31:59 1996  Anthony Green  <[email protected]>
7103*1fd5a2e1SPrashanth Swaminathan
7104*1fd5a2e1SPrashanth Swaminathan	* types.c: Added ffi_type_void declaration.
7105*1fd5a2e1SPrashanth Swaminathan
7106*1fd5a2e1SPrashanth SwaminathanTue Oct 29 13:07:19 1996  Anthony Green  <[email protected]>
7107*1fd5a2e1SPrashanth Swaminathan
7108*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (main): Fixed character constants.
7109*1fd5a2e1SPrashanth Swaminathan	(main): Emit warning for structure test 3 failure on Sun.
7110*1fd5a2e1SPrashanth Swaminathan
7111*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (VPATH): Fixed VPATH def'n so automake won't
7112*1fd5a2e1SPrashanth Swaminathan	strip it out.
7113*1fd5a2e1SPrashanth Swaminathan	Moved distdir hack from libffi to automake.
7114*1fd5a2e1SPrashanth Swaminathan	(ffitest): Added missing -c for $(COMPILE) (change in automake).
7115*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
7116*1fd5a2e1SPrashanth Swaminathan
7117*1fd5a2e1SPrashanth SwaminathanTue Oct 15 13:08:20 1996  Anthony Green  <[email protected]>
7118*1fd5a2e1SPrashanth Swaminathan
7119*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Added "make lint" production.
7120*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Rebuilt.
7121*1fd5a2e1SPrashanth Swaminathan
7122*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (STACK_ARG_SIZE): Improved STACK_ARG_SIZE macro.
7123*1fd5a2e1SPrashanth Swaminathan  	Clean up based on LCLint output. Added funny /*@...@*/ comments to
7124*1fd5a2e1SPrashanth Swaminathan 	annotate source.
7125*1fd5a2e1SPrashanth Swaminathan
7126*1fd5a2e1SPrashanth Swaminathan	* ffitest.c, debug.c: Cleaned up code.
7127*1fd5a2e1SPrashanth Swaminathan
7128*1fd5a2e1SPrashanth SwaminathanMon Oct 14 12:26:56 1996  Anthony Green  <[email protected]>
7129*1fd5a2e1SPrashanth Swaminathan
7130*1fd5a2e1SPrashanth Swaminathan	* ffitest.c: Changes based on interface changes.
7131*1fd5a2e1SPrashanth Swaminathan
7132*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (ffi_prep_cif): Cleaned up interface based on
7133*1fd5a2e1SPrashanth Swaminathan	feedback from Jim Blandy.
7134*1fd5a2e1SPrashanth Swaminathan
7135*1fd5a2e1SPrashanth SwaminathanFri Oct 11 15:53:18 1996  Anthony Green  <[email protected]>
7136*1fd5a2e1SPrashanth Swaminathan
7137*1fd5a2e1SPrashanth Swaminathan	* ffitest.c: Reordered tests while porting to sparc.
7138*1fd5a2e1SPrashanth Swaminathan	Made changes to handle lame structure passing for sparc.
7139*1fd5a2e1SPrashanth Swaminathan	Removed calls to fflush().
7140*1fd5a2e1SPrashanth Swaminathan
7141*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (ffi_prep_cif): Added special case for sparc
7142*1fd5a2e1SPrashanth Swaminathan	aggregate type arguments.
7143*1fd5a2e1SPrashanth Swaminathan
7144*1fd5a2e1SPrashanth SwaminathanThu Oct 10 09:56:51 1996  Anthony Green  <[email protected]>
7145*1fd5a2e1SPrashanth Swaminathan
7146*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (main): Added structure passing/returning tests.
7147*1fd5a2e1SPrashanth Swaminathan
7148*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (ffi_prep_cif): Perform proper initialization
7149*1fd5a2e1SPrashanth Swaminathan	of structure return types if needed.
7150*1fd5a2e1SPrashanth Swaminathan	(initialize_aggregate): Bug fix
7151*1fd5a2e1SPrashanth Swaminathan
7152*1fd5a2e1SPrashanth SwaminathanWed Oct  9 16:04:20 1996  Anthony Green  <[email protected]>
7153*1fd5a2e1SPrashanth Swaminathan
7154*1fd5a2e1SPrashanth Swaminathan	* types.c: Added special definitions for x86 (double doesn't
7155*1fd5a2e1SPrashanth Swaminathan	need double word alignment).
7156*1fd5a2e1SPrashanth Swaminathan
7157*1fd5a2e1SPrashanth Swaminathan	* ffitest.c: Added many tests
7158*1fd5a2e1SPrashanth Swaminathan
7159*1fd5a2e1SPrashanth SwaminathanTue Oct  8 09:19:22 1996  Anthony Green  <[email protected]>
7160*1fd5a2e1SPrashanth Swaminathan
7161*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (ffi_prep_cif): Fixed assertion.
7162*1fd5a2e1SPrashanth Swaminathan
7163*1fd5a2e1SPrashanth Swaminathan	* debug.c (ffi_assert): Must return a non void now.
7164*1fd5a2e1SPrashanth Swaminathan
7165*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Added test production.
7166*1fd5a2e1SPrashanth Swaminathan	* Makefile: Rebuilt.
7167*1fd5a2e1SPrashanth Swaminathan
7168*1fd5a2e1SPrashanth Swaminathan	* ffitest.c (main): Created.
7169*1fd5a2e1SPrashanth Swaminathan
7170*1fd5a2e1SPrashanth Swaminathan	* types.c: Created. Stripped common code out of */ffi.c.
7171*1fd5a2e1SPrashanth Swaminathan
7172*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c: Added missing stdlib.h include.
7173*1fd5a2e1SPrashanth Swaminathan
7174*1fd5a2e1SPrashanth Swaminathan	* debug.c (ffi_type_test): Used "a" to eliminate compiler
7175*1fd5a2e1SPrashanth Swaminathan	warnings in non-debug builds. Included ffi_common.h.
7176*1fd5a2e1SPrashanth Swaminathan
7177*1fd5a2e1SPrashanth SwaminathanMon Oct  7 15:36:42 1996  Anthony Green  <[email protected]>
7178*1fd5a2e1SPrashanth Swaminathan
7179*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Added a rule for .s -> .o
7180*1fd5a2e1SPrashanth Swaminathan	This is required by the SGI compiler.
7181*1fd5a2e1SPrashanth Swaminathan	* Makefile: Rebuilt.
7182*1fd5a2e1SPrashanth Swaminathan
7183*1fd5a2e1SPrashanth SwaminathanFri Oct  4 09:51:08 1996  Anthony Green  <[email protected]>
7184*1fd5a2e1SPrashanth Swaminathan
7185*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (initialize_aggregate): Moved abi specification
7186*1fd5a2e1SPrashanth Swaminathan	to ffi_prep_cif().
7187*1fd5a2e1SPrashanth Swaminathan
7188*1fd5a2e1SPrashanth SwaminathanThu Oct  3 15:37:37 1996  Anthony Green  <[email protected]>
7189*1fd5a2e1SPrashanth Swaminathan
7190*1fd5a2e1SPrashanth Swaminathan	* prep_cif.c (ffi_prep_cif): Changed values from void* to void**.
7191*1fd5a2e1SPrashanth Swaminathan	(initialize_aggregate): Fixed aggregate type initialization.
7192*1fd5a2e1SPrashanth Swaminathan
7193*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (EXTRA_DIST): Added support code for "make dist".
7194*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
7195*1fd5a2e1SPrashanth Swaminathan
7196*1fd5a2e1SPrashanth SwaminathanWed Oct  2 11:41:57 1996  Anthony Green  <[email protected]>
7197*1fd5a2e1SPrashanth Swaminathan
7198*1fd5a2e1SPrashanth Swaminathan	* debug.c, prep_cif: Created.
7199*1fd5a2e1SPrashanth Swaminathan
7200*1fd5a2e1SPrashanth Swaminathan	* Makefile.am: Added debug.o and prep_cif.o to OBJ.
7201*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
7202*1fd5a2e1SPrashanth Swaminathan
7203*1fd5a2e1SPrashanth Swaminathan	* Makefile.am (INCLUDES): Added missing -I../include
7204*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Regenerated.
7205*1fd5a2e1SPrashanth Swaminathan
7206*1fd5a2e1SPrashanth SwaminathanTue Oct  1 17:11:51 1996  Anthony Green  <[email protected]>
7207*1fd5a2e1SPrashanth Swaminathan
7208*1fd5a2e1SPrashanth Swaminathan	* error.c, Makefile.am: Created.
7209*1fd5a2e1SPrashanth Swaminathan	* Makefile.in: Generated.
7210*1fd5a2e1SPrashanth Swaminathan
7211*1fd5a2e1SPrashanth Swaminathan--- libffi/src/x86 --------------------------------------------------------
7212*1fd5a2e1SPrashanth Swaminathan
7213*1fd5a2e1SPrashanth SwaminathanSun Oct  4 16:27:17 1998  Anthony Green  <[email protected]>
7214*1fd5a2e1SPrashanth Swaminathan
7215*1fd5a2e1SPrashanth Swaminathan	* sysv.S (retlongdouble): Fixed long long return value support.
7216*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_cif_machdep): Ditto.
7217*1fd5a2e1SPrashanth Swaminathan
7218*1fd5a2e1SPrashanth SwaminathanWed May 13 04:30:33 1998  Anthony Green  <[email protected]>
7219*1fd5a2e1SPrashanth Swaminathan
7220*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_cif_machdep): Fixed long double return value
7221*1fd5a2e1SPrashanth Swaminathan	support.
7222*1fd5a2e1SPrashanth Swaminathan
7223*1fd5a2e1SPrashanth SwaminathanWed Apr 15 08:43:20 1998  Anthony Green  <[email protected]>
7224*1fd5a2e1SPrashanth Swaminathan
7225*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_args): small struct support was missing.
7226*1fd5a2e1SPrashanth Swaminathan
7227*1fd5a2e1SPrashanth SwaminathanThu May  8 16:53:58 1997  Anthony Green  <[email protected]>
7228*1fd5a2e1SPrashanth Swaminathan
7229*1fd5a2e1SPrashanth Swaminathan	* objects.mak: Removed.
7230*1fd5a2e1SPrashanth Swaminathan
7231*1fd5a2e1SPrashanth SwaminathanMon Dec  2 15:12:58 1996  Tom Tromey  <[email protected]>
7232*1fd5a2e1SPrashanth Swaminathan
7233*1fd5a2e1SPrashanth Swaminathan	* sysv.S: Use .balign, for a.out Linux boxes.
7234*1fd5a2e1SPrashanth Swaminathan
7235*1fd5a2e1SPrashanth SwaminathanTue Oct 15 13:06:50 1996  Anthony Green  <[email protected]>
7236*1fd5a2e1SPrashanth Swaminathan
7237*1fd5a2e1SPrashanth Swaminathan	* ffi.c: Clean up based on LCLint output.
7238*1fd5a2e1SPrashanth Swaminathan	Added funny /*@...@*/ comments to annotate source.
7239*1fd5a2e1SPrashanth Swaminathan
7240*1fd5a2e1SPrashanth SwaminathanFri Oct 11 16:43:38 1996  Anthony Green  <[email protected]>
7241*1fd5a2e1SPrashanth Swaminathan
7242*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_call): Added assertion for bad ABIs.
7243*1fd5a2e1SPrashanth Swaminathan
7244*1fd5a2e1SPrashanth SwaminathanWed Oct  9 13:57:27 1996  Anthony Green  <[email protected]>
7245*1fd5a2e1SPrashanth Swaminathan
7246*1fd5a2e1SPrashanth Swaminathan	* sysv.S (retdouble): Fixed double return problems.
7247*1fd5a2e1SPrashanth Swaminathan
7248*1fd5a2e1SPrashanth Swaminathan	* ffi.c	(ffi_call): Corrected fn arg definition.
7249*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Fixed double return problems
7250*1fd5a2e1SPrashanth Swaminathan
7251*1fd5a2e1SPrashanth SwaminathanTue Oct  8 12:12:49 1996  Anthony Green  <[email protected]>
7252*1fd5a2e1SPrashanth Swaminathan
7253*1fd5a2e1SPrashanth Swaminathan	* ffi.c: Moved ffi_type definitions to types.c.
7254*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Fixed type promotion bug.
7255*1fd5a2e1SPrashanth Swaminathan
7256*1fd5a2e1SPrashanth SwaminathanMon Oct  7 15:53:06 1996  Anthony Green  <[email protected]>
7257*1fd5a2e1SPrashanth Swaminathan
7258*1fd5a2e1SPrashanth Swaminathan	* ffi.c (FFI_*_TYPEDEF): Removed redundant ';'
7259*1fd5a2e1SPrashanth Swaminathan
7260*1fd5a2e1SPrashanth SwaminathanFri Oct  4 09:54:53 1996  Anthony Green  <[email protected]>
7261*1fd5a2e1SPrashanth Swaminathan
7262*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_call): Removed FFI_ABI arg, and swapped
7263*1fd5a2e1SPrashanth Swaminathan	remaining args.
7264*1fd5a2e1SPrashanth Swaminathan
7265*1fd5a2e1SPrashanth SwaminathanWed Oct  2 10:07:05 1996  Anthony Green  <[email protected]>
7266*1fd5a2e1SPrashanth Swaminathan
7267*1fd5a2e1SPrashanth Swaminathan	* ffi.c, sysv.S, objects.mak: Created.
7268*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif): cif->rvalue no longer initialized to NULL.
7269*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Moved machine independent cif processing
7270*1fd5a2e1SPrashanth Swaminathan	to src/prep_cif.c. Introduced ffi_prep_cif_machdep().
7271*1fd5a2e1SPrashanth Swaminathan
7272*1fd5a2e1SPrashanth Swaminathan--- libffi/src/mips -------------------------------------------------------
7273*1fd5a2e1SPrashanth Swaminathan
7274*1fd5a2e1SPrashanth SwaminathanTue Feb 17 17:18:07 1998  Anthony Green  <[email protected]>
7275*1fd5a2e1SPrashanth Swaminathan
7276*1fd5a2e1SPrashanth Swaminathan	* o32.S: Fixed typo in comment.
7277*1fd5a2e1SPrashanth Swaminathan
7278*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_cif_machdep): Fixed argument processing.
7279*1fd5a2e1SPrashanth Swaminathan
7280*1fd5a2e1SPrashanth SwaminathanThu May  8 16:53:58 1997  Anthony Green  <[email protected]>
7281*1fd5a2e1SPrashanth Swaminathan
7282*1fd5a2e1SPrashanth Swaminathan	* o32.s, n32.s: Wrappers for SGI tool support.
7283*1fd5a2e1SPrashanth Swaminathan
7284*1fd5a2e1SPrashanth Swaminathan	* objects.mak: Removed.
7285*1fd5a2e1SPrashanth Swaminathan
7286*1fd5a2e1SPrashanth SwaminathanTue Oct 29 14:37:45 1996  Anthony Green  <[email protected]>
7287*1fd5a2e1SPrashanth Swaminathan
7288*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_args): Changed int z to size_t z.
7289*1fd5a2e1SPrashanth Swaminathan
7290*1fd5a2e1SPrashanth SwaminathanTue Oct 15 13:17:25 1996  Anthony Green  <[email protected]>
7291*1fd5a2e1SPrashanth Swaminathan
7292*1fd5a2e1SPrashanth Swaminathan	* n32.S: Fixed bad stack munging.
7293*1fd5a2e1SPrashanth Swaminathan
7294*1fd5a2e1SPrashanth Swaminathan	* ffi.c: Moved prototypes for ffi_call_?32() to here from
7295*1fd5a2e1SPrashanth Swaminathan	ffi_mips.h because extended_cif is not defined in ffi_mips.h.
7296*1fd5a2e1SPrashanth Swaminathan
7297*1fd5a2e1SPrashanth SwaminathanMon Oct 14 12:42:02 1996  Anthony Green  <[email protected]>
7298*1fd5a2e1SPrashanth Swaminathan
7299*1fd5a2e1SPrashanth Swaminathan	* ffi.c: Interface changes based on feedback from Jim Blandy.
7300*1fd5a2e1SPrashanth Swaminathan
7301*1fd5a2e1SPrashanth SwaminathanThu Oct 10 11:22:16 1996  Anthony Green  <[email protected]>
7302*1fd5a2e1SPrashanth Swaminathan
7303*1fd5a2e1SPrashanth Swaminathan	* n32.S, ffi.c: Lots of changes to support passing and
7304*1fd5a2e1SPrashanth Swaminathan	returning structures with the n32 calling convention.
7305*1fd5a2e1SPrashanth Swaminathan
7306*1fd5a2e1SPrashanth Swaminathan	* n32.S: Fixed fn pointer bug.
7307*1fd5a2e1SPrashanth Swaminathan
7308*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_cif_machdep): Fix for o32 structure
7309*1fd5a2e1SPrashanth Swaminathan	return values.
7310*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Fixed n32 structure passing when structures
7311*1fd5a2e1SPrashanth Swaminathan	partially fit in registers.
7312*1fd5a2e1SPrashanth Swaminathan
7313*1fd5a2e1SPrashanth SwaminathanWed Oct  9 13:49:25 1996  Anthony Green  <[email protected]>
7314*1fd5a2e1SPrashanth Swaminathan
7315*1fd5a2e1SPrashanth Swaminathan	* objects.mak: Added n32.o.
7316*1fd5a2e1SPrashanth Swaminathan
7317*1fd5a2e1SPrashanth Swaminathan	* n32.S: Created.
7318*1fd5a2e1SPrashanth Swaminathan
7319*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_args): Added magic to support proper
7320*1fd5a2e1SPrashanth Swaminathan	n32 processing.
7321*1fd5a2e1SPrashanth Swaminathan
7322*1fd5a2e1SPrashanth SwaminathanTue Oct  8 10:37:35 1996  Anthony Green  <[email protected]>
7323*1fd5a2e1SPrashanth Swaminathan
7324*1fd5a2e1SPrashanth Swaminathan	* ffi.c: Moved ffi_type definitions to types.c.
7325*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_args): Fixed type promotion bug.
7326*1fd5a2e1SPrashanth Swaminathan
7327*1fd5a2e1SPrashanth Swaminathan	* o32.S: This code is only built for o32 compiles.
7328*1fd5a2e1SPrashanth Swaminathan	A lot of the #define cruft has moved to ffi_mips.h.
7329*1fd5a2e1SPrashanth Swaminathan
7330*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_cif_machdep): Fixed arg flags. Second arg
7331*1fd5a2e1SPrashanth Swaminathan	is only processed if the first is either a float or double.
7332*1fd5a2e1SPrashanth Swaminathan
7333*1fd5a2e1SPrashanth SwaminathanMon Oct  7 15:33:59 1996  Anthony Green  <[email protected]>
7334*1fd5a2e1SPrashanth Swaminathan
7335*1fd5a2e1SPrashanth Swaminathan	* o32.S: Modified to compile under each of o32, n32 and n64.
7336*1fd5a2e1SPrashanth Swaminathan
7337*1fd5a2e1SPrashanth Swaminathan	* ffi.c (FFI_*_TYPEDEF): Removed redundant ';'
7338*1fd5a2e1SPrashanth Swaminathan
7339*1fd5a2e1SPrashanth SwaminathanFri Oct  4 09:53:25 1996  Anthony Green  <[email protected]>
7340*1fd5a2e1SPrashanth Swaminathan
7341*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_call): Removed FFI_ABI arg, and swapped
7342*1fd5a2e1SPrashanth Swaminathan	remaining args.
7343*1fd5a2e1SPrashanth Swaminathan
7344*1fd5a2e1SPrashanth SwaminathanWed Oct  2 17:41:22 1996  Anthony Green  <[email protected]>
7345*1fd5a2e1SPrashanth Swaminathan
7346*1fd5a2e1SPrashanth Swaminathan	* o32.S: Removed crufty definitions.
7347*1fd5a2e1SPrashanth Swaminathan
7348*1fd5a2e1SPrashanth SwaminathanWed Oct  2 12:53:42 1996  Anthony Green  <[email protected]>
7349*1fd5a2e1SPrashanth Swaminathan
7350*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_cif): cif->rvalue no longer initialized to NULL.
7351*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Moved all machine independent cif processing
7352*1fd5a2e1SPrashanth Swaminathan	to src/prep_cif.c. Introduced ffi_prep_cif_machdep. Return types
7353*1fd5a2e1SPrashanth Swaminathan	of FFI_TYPE_STRUCT are no different than FFI_TYPE_INT.
7354*1fd5a2e1SPrashanth Swaminathan
7355*1fd5a2e1SPrashanth SwaminathanTue Oct  1 17:11:02 1996  Anthony Green  <[email protected]>
7356*1fd5a2e1SPrashanth Swaminathan
7357*1fd5a2e1SPrashanth Swaminathan	* ffi.c, o32.S, object.mak: Created
7358*1fd5a2e1SPrashanth Swaminathan
7359*1fd5a2e1SPrashanth Swaminathan--- libffi/src/sparc ------------------------------------------------------
7360*1fd5a2e1SPrashanth Swaminathan
7361*1fd5a2e1SPrashanth SwaminathanTue Feb 24 16:33:18 1998  Anthony Green  <[email protected]>
7362*1fd5a2e1SPrashanth Swaminathan
7363*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_args): Added long double support.
7364*1fd5a2e1SPrashanth Swaminathan
7365*1fd5a2e1SPrashanth SwaminathanThu May  8 16:53:58 1997  Anthony Green  <[email protected]>
7366*1fd5a2e1SPrashanth Swaminathan
7367*1fd5a2e1SPrashanth Swaminathan	* objects.mak: Removed.
7368*1fd5a2e1SPrashanth Swaminathan
7369*1fd5a2e1SPrashanth SwaminathanThu May  1 16:07:56 1997  Anthony Green  <[email protected]>
7370*1fd5a2e1SPrashanth Swaminathan
7371*1fd5a2e1SPrashanth Swaminathan	* v8.S: Fixed minor portability problem reported by
7372*1fd5a2e1SPrashanth Swaminathan	Russ McManus <[email protected]>.
7373*1fd5a2e1SPrashanth Swaminathan
7374*1fd5a2e1SPrashanth SwaminathanTue Nov 26 14:12:43 1996  Anthony Green  <[email protected]>
7375*1fd5a2e1SPrashanth Swaminathan
7376*1fd5a2e1SPrashanth Swaminathan	* v8.S: Used STACKFRAME define elsewhere.
7377*1fd5a2e1SPrashanth Swaminathan
7378*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_args): Zero out space when USING_PURIFY
7379*1fd5a2e1SPrashanth Swaminathan	is set.
7380*1fd5a2e1SPrashanth Swaminathan	(ffi_prep_cif_machdep): Allocate the correct stack frame
7381*1fd5a2e1SPrashanth Swaminathan	space for functions with < 6 args.
7382*1fd5a2e1SPrashanth Swaminathan
7383*1fd5a2e1SPrashanth SwaminathanTue Oct 29 15:08:55 1996  Anthony Green  <[email protected]>
7384*1fd5a2e1SPrashanth Swaminathan
7385*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_prep_args): int z is now size_t z.
7386*1fd5a2e1SPrashanth Swaminathan
7387*1fd5a2e1SPrashanth SwaminathanMon Oct 14 13:31:24 1996  Anthony Green  <[email protected]>
7388*1fd5a2e1SPrashanth Swaminathan
7389*1fd5a2e1SPrashanth Swaminathan	* v8.S (ffi_call_V8): Gordon rewrites this again. It looks
7390*1fd5a2e1SPrashanth Swaminathan	great now.
7391*1fd5a2e1SPrashanth Swaminathan
7392*1fd5a2e1SPrashanth Swaminathan	* ffi.c (ffi_call): The comment about hijacked registers
7393*1fd5a2e1SPrashanth Swaminathan	is no longer valid after gordoni hacked v8.S.
7394*1fd5a2e1SPrashanth Swaminathan
7395*1fd5a2e1SPrashanth Swaminathan        * v8.S (ffi_call_V8): Rewrote with gordoni. Much simpler.
7396*1fd5a2e1SPrashanth Swaminathan
7397*1fd5a2e1SPrashanth Swaminathan	* v8.S, ffi.c: ffi_call() had changed to accept more than
7398*1fd5a2e1SPrashanth Swaminathan	two args, so v8.S had to change (because it hijacks incoming
7399*1fd5a2e1SPrashanth Swaminathan	arg registers).
7400*1fd5a2e1SPrashanth Swaminathan
7401*1fd5a2e1SPrashanth Swaminathan	* ffi.c: Interface changes based on feedback from Jim Blandy.
7402*1fd5a2e1SPrashanth Swaminathan
7403*1fd5a2e1SPrashanth SwaminathanThu Oct 10 17:48:16 1996  Anthony Green  <[email protected]>
7404*1fd5a2e1SPrashanth Swaminathan
7405*1fd5a2e1SPrashanth Swaminathan	* ffi.c, v8.S, objects.mak: Created.
7406*1fd5a2e1SPrashanth Swaminathan
7407*1fd5a2e1SPrashanth Swaminathan
7408