Refresh from GCC

This commit is contained in:
Anthony Green
2011-02-08 07:52:40 -05:00
parent 5b9cd52784
commit 0e5843995f
50 changed files with 2238 additions and 16910 deletions

View File

@@ -1,3 +1,47 @@
2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
PR target/40125
* configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs.
* configure: Regenerate.
2010-12-18 Iain Sandoe <iains@gcc.gnu.org>
PR libffi/29152
PR libffi/42378
* src/powerpc/darwin_closure.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffitarget.h (POWERPC_DARWIN64): New,
(FFI_TRAMPOLINE_SIZE): Update for Darwin64.
* src/powerpc/darwin.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffi_darwin.c: Likewise.
2010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (libffi_cv_as_ascii_pseudo_op): Use double
backslashes.
(libffi_cv_as_string_pseudo_op): Likewise.
* configure: Regenerate.
2010-12-03 Chung-Lin Tang <cltang@codesourcery.com>
* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
(ffi_closure_VFP): Same.
(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
directive.
2010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define.
(PRIuPTR): Define.
2010-11-29 Richard Henderson <rth@redhat.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
(.eh_frame): Use FDE_ENCODING.
(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.
2010-11-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/lib/libffi-dg.exp: Rename ...
@@ -211,7 +255,7 @@
2010-01-15 Oliver Kiddle <okiddle@yahoo.co.uk>
* src/x86/ffitarget.h (ffi_abi): Check for __i386 and __amd64 for
Sun Studio compiler compatibility.
Sun Studio compiler compatibility.
2010-01-12 Conrad Irwin <conrad.irwin@gmail.com>

View File

@@ -69,8 +69,10 @@ DIST_COMMON = README $(am__configure_deps) $(srcdir)/Makefile.am \
compile config.guess config.sub depcomp install-sh ltmain.sh \
mdate-sh missing texinfo.tex
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
$(top_srcdir)/configure.ac
am__aclocal_m4_deps = $(top_srcdir)/m4/libtool.m4 \
$(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \
$(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \
$(top_srcdir)/acinclude.m4 $(top_srcdir)/configure.ac
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
$(ACLOCAL_M4)
am__CONFIG_DISTCLEAN_FILES = config.status config.cache config.log \

View File

@@ -7816,6 +7816,10 @@ _lt_linker_boilerplate=`cat conftest.err`
$RM -r conftest*
## CAVEAT EMPTOR:
## There is no encapsulation within the following macros, do not change
## the running order or otherwise move them around unless you know exactly
## what you are doing...
if test -n "$compiler"; then
lt_prog_compiler_no_builtin_flag=
@@ -7841,11 +7845,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:7844: $lt_compile\"" >&5)
(eval echo "\"\$as_me:7848: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:7848: \$? = $ac_status" >&5
echo "$as_me:7852: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -8180,11 +8184,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:8183: $lt_compile\"" >&5)
(eval echo "\"\$as_me:8187: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:8187: \$? = $ac_status" >&5
echo "$as_me:8191: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -8285,11 +8289,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:8288: $lt_compile\"" >&5)
(eval echo "\"\$as_me:8292: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
echo "$as_me:8292: \$? = $ac_status" >&5
echo "$as_me:8296: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -8340,11 +8344,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:8343: $lt_compile\"" >&5)
(eval echo "\"\$as_me:8347: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
echo "$as_me:8347: \$? = $ac_status" >&5
echo "$as_me:8351: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -11143,7 +11147,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 11146 "configure"
#line 11150 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11239,7 +11243,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 11242 "configure"
#line 11246 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12188,8 +12192,15 @@ case "$host" in
;;
i?86-win32* | i?86-*-cygwin* | i?86-*-mingw* | i?86-*-os2*)
TARGET=X86_WIN32; TARGETDIR=x86
# All mingw/cygwin/win32 builds require this for sharedlib
AM_LTLDFLAGS="-no-undefined"
# All mingw/cygwin/win32 builds require -no-undefined for sharedlib.
# We must also check with_cross_host to decide if this is a native
# or cross-build and select where to install dlls appropriately.
if test -n "$with_cross_host" &&
test x"$with_cross_host" != x"no"; then
AM_LTLDFLAGS='-no-undefined -bindir "$(toolexeclibdir)"';
else
AM_LTLDFLAGS='-no-undefined -bindir "$(bindir)"';
fi
;;
i?86-*-darwin*)
TARGET=X86_DARWIN; TARGETDIR=x86
@@ -14530,7 +14541,7 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
asm (".ascii \"string\"");
asm (".ascii \\"string\\"");
int
main ()
{
@@ -14592,7 +14603,7 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
asm (".string \"string\"");
asm (".string \\"string\\"");
int
main ()
{

View File

@@ -86,8 +86,15 @@ case "$host" in
;;
i?86-win32* | i?86-*-cygwin* | i?86-*-mingw* | i?86-*-os2*)
TARGET=X86_WIN32; TARGETDIR=x86
# All mingw/cygwin/win32 builds require this for sharedlib
AM_LTLDFLAGS="-no-undefined"
# All mingw/cygwin/win32 builds require -no-undefined for sharedlib.
# We must also check with_cross_host to decide if this is a native
# or cross-build and select where to install dlls appropriately.
if test -n "$with_cross_host" &&
test x"$with_cross_host" != x"no"; then
AM_LTLDFLAGS='-no-undefined -bindir "$(toolexeclibdir)"';
else
AM_LTLDFLAGS='-no-undefined -bindir "$(bindir)"';
fi
;;
i?86-*-darwin*)
TARGET=X86_DARWIN; TARGETDIR=x86
@@ -287,7 +294,7 @@ if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64
libffi_cv_as_ascii_pseudo_op, [
libffi_cv_as_ascii_pseudo_op=unknown
# Check if we have .ascii
AC_TRY_COMPILE([asm (".ascii \"string\"");],,
AC_TRY_COMPILE([asm (".ascii \\"string\\"");],,
[libffi_cv_as_ascii_pseudo_op=yes],
[libffi_cv_as_ascii_pseudo_op=no])
])
@@ -300,7 +307,7 @@ if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64
libffi_cv_as_string_pseudo_op, [
libffi_cv_as_string_pseudo_op=unknown
# Check if we have .string
AC_TRY_COMPILE([asm (".string \"string\"");],,
AC_TRY_COMPILE([asm (".string \\"string\\"");],,
[libffi_cv_as_string_pseudo_op=yes],
[libffi_cv_as_string_pseudo_op=no])
])

View File

@@ -1,3 +1,47 @@
2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
PR target/40125
* configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs.
* configure: Regenerate.
2010-12-18 Iain Sandoe <iains@gcc.gnu.org>
PR libffi/29152
PR libffi/42378
* src/powerpc/darwin_closure.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffitarget.h (POWERPC_DARWIN64): New,
(FFI_TRAMPOLINE_SIZE): Update for Darwin64.
* src/powerpc/darwin.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffi_darwin.c: Likewise.
2010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (libffi_cv_as_ascii_pseudo_op): Use double
backslashes.
(libffi_cv_as_string_pseudo_op): Likewise.
* configure: Regenerate.
2010-12-03 Chung-Lin Tang <cltang@codesourcery.com>
* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
(ffi_closure_VFP): Same.
(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
directive.
2010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define.
(PRIuPTR): Define.
2010-11-29 Richard Henderson <rth@redhat.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
(.eh_frame): Use FDE_ENCODING.
(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.
2010-11-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/lib/libffi-dg.exp: Rename ...
@@ -185,7 +229,7 @@
2010-01-15 Oliver Kiddle <okiddle@yahoo.co.uk>
* src/x86/ffitarget.h (ffi_abi): Check for __i386 and __amd64 for
Sun Studio compiler compatibility.
Sun Studio compiler compatibility.
2010-01-12 Conrad Irwin <conrad.irwin@gmail.com>

View File

@@ -1,3 +1,47 @@
2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
PR target/40125
* configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs.
* configure: Regenerate.
2010-12-18 Iain Sandoe <iains@gcc.gnu.org>
PR libffi/29152
PR libffi/42378
* src/powerpc/darwin_closure.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffitarget.h (POWERPC_DARWIN64): New,
(FFI_TRAMPOLINE_SIZE): Update for Darwin64.
* src/powerpc/darwin.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffi_darwin.c: Likewise.
2010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (libffi_cv_as_ascii_pseudo_op): Use double
backslashes.
(libffi_cv_as_string_pseudo_op): Likewise.
* configure: Regenerate.
2010-12-03 Chung-Lin Tang <cltang@codesourcery.com>
* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
(ffi_closure_VFP): Same.
(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
directive.
2010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define.
(PRIuPTR): Define.
2010-11-29 Richard Henderson <rth@redhat.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
(.eh_frame): Use FDE_ENCODING.
(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.
2010-11-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/lib/libffi-dg.exp: Rename ...
@@ -207,7 +251,7 @@
2010-01-15 Oliver Kiddle <okiddle@yahoo.co.uk>
* src/x86/ffitarget.h (ffi_abi): Check for __i386 and __amd64 for
Sun Studio compiler compatibility.
Sun Studio compiler compatibility.
2010-01-12 Conrad Irwin <conrad.irwin@gmail.com>

View File

@@ -1,3 +1,47 @@
2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
PR target/40125
* configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs.
* configure: Regenerate.
2010-12-18 Iain Sandoe <iains@gcc.gnu.org>
PR libffi/29152
PR libffi/42378
* src/powerpc/darwin_closure.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffitarget.h (POWERPC_DARWIN64): New,
(FFI_TRAMPOLINE_SIZE): Update for Darwin64.
* src/powerpc/darwin.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffi_darwin.c: Likewise.
2010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (libffi_cv_as_ascii_pseudo_op): Use double
backslashes.
(libffi_cv_as_string_pseudo_op): Likewise.
* configure: Regenerate.
2010-12-03 Chung-Lin Tang <cltang@codesourcery.com>
* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
(ffi_closure_VFP): Same.
(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
directive.
2010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define.
(PRIuPTR): Define.
2010-11-29 Richard Henderson <rth@redhat.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
(.eh_frame): Use FDE_ENCODING.
(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.
2010-11-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/lib/libffi-dg.exp: Rename ...
@@ -180,7 +224,7 @@
2010-01-15 Oliver Kiddle <okiddle@yahoo.co.uk>
* src/x86/ffitarget.h (ffi_abi): Check for __i386 and __amd64 for
Sun Studio compiler compatibility.
Sun Studio compiler compatibility.
2010-01-12 Conrad Irwin <conrad.irwin@gmail.com>

View File

@@ -11359,8 +11359,15 @@ case "$host" in
;;
i?86-win32* | i?86-*-cygwin* | i?86-*-mingw* | i?86-*-os2*)
TARGET=X86_WIN32; TARGETDIR=x86
# All mingw/cygwin/win32 builds require this for sharedlib
AM_LTLDFLAGS="-no-undefined"
# All mingw/cygwin/win32 builds require -no-undefined for sharedlib.
# We must also check with_cross_host to decide if this is a native
# or cross-build and select where to install dlls appropriately.
if test -n "$with_cross_host" &&
test x"$with_cross_host" != x"no"; then
AM_LTLDFLAGS='-no-undefined -bindir "$(toolexeclibdir)"';
else
AM_LTLDFLAGS='-no-undefined -bindir "$(bindir)"';
fi
;;
i?86-*-darwin*)
TARGET=X86_DARWIN; TARGETDIR=x86
@@ -12423,7 +12430,7 @@ else
# Check if we have .ascii
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
asm (".ascii \"string\"");
asm (".ascii \\"string\\"");
int
main ()
{
@@ -12458,7 +12465,7 @@ else
# Check if we have .string
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
asm (".string \"string\"");
asm (".string \\"string\\"");
int
main ()
{

View File

@@ -82,8 +82,15 @@ case "$host" in
;;
i?86-win32* | i?86-*-cygwin* | i?86-*-mingw* | i?86-*-os2*)
TARGET=X86_WIN32; TARGETDIR=x86
# All mingw/cygwin/win32 builds require this for sharedlib
AM_LTLDFLAGS="-no-undefined"
# All mingw/cygwin/win32 builds require -no-undefined for sharedlib.
# We must also check with_cross_host to decide if this is a native
# or cross-build and select where to install dlls appropriately.
if test -n "$with_cross_host" &&
test x"$with_cross_host" != x"no"; then
AM_LTLDFLAGS='-no-undefined -bindir "$(toolexeclibdir)"';
else
AM_LTLDFLAGS='-no-undefined -bindir "$(bindir)"';
fi
;;
i?86-*-darwin*)
TARGET=X86_DARWIN; TARGETDIR=x86
@@ -282,7 +289,7 @@ if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64
libffi_cv_as_ascii_pseudo_op, [
libffi_cv_as_ascii_pseudo_op=unknown
# Check if we have .ascii
AC_TRY_COMPILE([asm (".ascii \"string\"");],,
AC_TRY_COMPILE([asm (".ascii \\"string\\"");],,
[libffi_cv_as_ascii_pseudo_op=yes],
[libffi_cv_as_ascii_pseudo_op=no])
])
@@ -295,7 +302,7 @@ if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64
libffi_cv_as_string_pseudo_op, [
libffi_cv_as_string_pseudo_op=unknown
# Check if we have .string
AC_TRY_COMPILE([asm (".string \"string\"");],,
AC_TRY_COMPILE([asm (".string \\"string\\"");],,
[libffi_cv_as_string_pseudo_op=yes],
[libffi_cv_as_string_pseudo_op=no])
])

View File

@@ -1,3 +1,47 @@
2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
PR target/40125
* configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs.
* configure: Regenerate.
2010-12-18 Iain Sandoe <iains@gcc.gnu.org>
PR libffi/29152
PR libffi/42378
* src/powerpc/darwin_closure.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffitarget.h (POWERPC_DARWIN64): New,
(FFI_TRAMPOLINE_SIZE): Update for Darwin64.
* src/powerpc/darwin.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffi_darwin.c: Likewise.
2010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (libffi_cv_as_ascii_pseudo_op): Use double
backslashes.
(libffi_cv_as_string_pseudo_op): Likewise.
* configure: Regenerate.
2010-12-03 Chung-Lin Tang <cltang@codesourcery.com>
* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
(ffi_closure_VFP): Same.
(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
directive.
2010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define.
(PRIuPTR): Define.
2010-11-29 Richard Henderson <rth@redhat.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
(.eh_frame): Use FDE_ENCODING.
(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.
2010-11-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/lib/libffi-dg.exp: Rename ...
@@ -199,7 +243,7 @@
2010-01-15 Oliver Kiddle <okiddle@yahoo.co.uk>
* src/x86/ffitarget.h (ffi_abi): Check for __i386 and __amd64 for
Sun Studio compiler compatibility.
Sun Studio compiler compatibility.
2010-01-12 Conrad Irwin <conrad.irwin@gmail.com>

View File

@@ -3,7 +3,7 @@
Copyright (c) 2002 Ranjit Mathew
Copyright (c) 2002 Bo Thorsen
Copyright (c) 2002 Roger Sayle
Copyright (C) 2008 Free Software Foundation, Inc.
Copyright (C) 2008, 2010 Free Software Foundation, Inc.
x86 Foreign Function Interface

View File

@@ -1,3 +1,47 @@
2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
PR target/40125
* configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs.
* configure: Regenerate.
2010-12-18 Iain Sandoe <iains@gcc.gnu.org>
PR libffi/29152
PR libffi/42378
* src/powerpc/darwin_closure.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffitarget.h (POWERPC_DARWIN64): New,
(FFI_TRAMPOLINE_SIZE): Update for Darwin64.
* src/powerpc/darwin.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffi_darwin.c: Likewise.
2010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (libffi_cv_as_ascii_pseudo_op): Use double
backslashes.
(libffi_cv_as_string_pseudo_op): Likewise.
* configure: Regenerate.
2010-12-03 Chung-Lin Tang <cltang@codesourcery.com>
* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
(ffi_closure_VFP): Same.
(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
directive.
2010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define.
(PRIuPTR): Define.
2010-11-29 Richard Henderson <rth@redhat.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
(.eh_frame): Use FDE_ENCODING.
(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.
2010-11-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/lib/libffi-dg.exp: Rename ...
@@ -191,7 +235,7 @@
2010-01-15 Oliver Kiddle <okiddle@yahoo.co.uk>
* src/x86/ffitarget.h (ffi_abi): Check for __i386 and __amd64 for
Sun Studio compiler compatibility.
Sun Studio compiler compatibility.
2010-01-12 Conrad Irwin <conrad.irwin@gmail.com>

View File

@@ -1,10 +1,10 @@
This is doc/libffi.info, produced by makeinfo version 4.12 from
./doc/libffi.texi.
This is /home/green/libffi/doc/libffi.info, produced by makeinfo
version 4.13 from /home/green/libffi/doc/libffi.texi.
This manual is for Libffi, a portable foreign-function interface
library.
Copyright (C) 2008 Red Hat, Inc.
Copyright (C) 2008, 2010 Red Hat, Inc.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU General Public License as
@@ -13,7 +13,7 @@ library.
included in the section entitled "GNU General Public License".
INFO-DIR-SECTION
INFO-DIR-SECTION Development
START-INFO-DIR-ENTRY
* libffi: (libffi). Portable foreign-function interface library.
END-INFO-DIR-ENTRY
@@ -27,7 +27,7 @@ libffi
This manual is for Libffi, a portable foreign-function interface
library.
Copyright (C) 2008 Red Hat, Inc.
Copyright (C) 2008, 2010 Red Hat, Inc.
Permission is granted to copy, distribute and/or modify this
document under the terms of the GNU General Public License as
@@ -89,6 +89,7 @@ File: libffi.info, Node: Using libffi, Next: Missing Features, Prev: Introduc
* Types:: libffi type descriptions.
* Multiple ABIs:: Different passing styles on one platform.
* The Closure API:: Writing a generic function.
* Closure Example:: A closure example.

File: libffi.info, Node: The Basics, Next: Simple Example, Up: Using libffi
@@ -368,7 +369,7 @@ instance, the x86 platform has both `stdcall' and `fastcall' functions.
necessarily platform-specific.

File: libffi.info, Node: The Closure API, Prev: Multiple ABIs, Up: Using libffi
File: libffi.info, Node: The Closure API, Next: Closure Example, Prev: Multiple ABIs, Up: Using libffi
2.5 The Closure API
===================
@@ -443,6 +444,62 @@ closure function:
is deprecated, as it cannot handle the need for separate writable and
executable addresses.

File: libffi.info, Node: Closure Example, Prev: The Closure API, Up: Using libffi
2.6 Closure Example
===================
A trivial example that creates a new `puts' by binding `fputs' with
`stdin'.
#include <stdio.h>
#include <ffi.h>
/* Acts like puts with the file given at time of enclosure. */
void puts_binding(ffi_cif *cif, unsigned int *ret, void* args[],
FILE *stream)
{
*ret = fputs(*(char **)args[0], stream);
}
int main()
{
ffi_cif cif;
ffi_type *args[1];
ffi_closure *closure;
int (*bound_puts)(char *);
int rc;
/* Allocate closure and bound_puts */
closure = ffi_closure_alloc(sizeof(ffi_closure), &bound_puts);
if (closure)
{
/* Initialize the argument info vectors */
args[0] = &ffi_type_pointer;
/* Initialize the cif */
if (ffi_prep_cif(&cif, FFI_DEFAULT_ABI, 1,
&ffi_type_uint, args) == FFI_OK)
{
/* Initialize the closure, setting stream to stdout */
if (ffi_prep_closure_loc(closure, &cif, puts_binding,
stdout, bound_puts) == FFI_OK)
{
rc = bound_puts("Hello World!");
/* rc now holds the result of the call to fputs */
}
}
}
/* Deallocate both closure, and bound_puts */
ffi_closure_free(closure);
return 0;
}

File: libffi.info, Node: Missing Features, Next: Index, Prev: Using libffi, Up: Top
@@ -480,7 +537,7 @@ Index
* closures: The Closure API. (line 13)
* FFI: Introduction. (line 31)
* ffi_call: The Basics. (line 41)
* ffi_closure_alloca: The Closure API. (line 19)
* ffi_closure_alloc: The Closure API. (line 19)
* ffi_closure_free: The Closure API. (line 26)
* FFI_CLOSURES: The Closure API. (line 13)
* ffi_prep_cif: The Basics. (line 16)
@@ -516,18 +573,19 @@ Index

Tag Table:
Node: Top670
Node: Introduction1406
Node: Using libffi3042
Node: The Basics3477
Node: Simple Example6084
Node: Types7111
Node: Primitive Types7394
Node: Structures9214
Node: Type Example10074
Node: Multiple ABIs11297
Node: The Closure API11668
Node: Missing Features14588
Node: Index15081
Node: Top724
Node: Introduction1466
Node: Using libffi3102
Node: The Basics3588
Node: Simple Example6195
Node: Types7222
Node: Primitive Types7505
Node: Structures9325
Node: Type Example10185
Node: Multiple ABIs11408
Node: The Closure API11779
Node: Closure Example14723
Node: Missing Features16282
Node: Index16775

End Tag Table

View File

@@ -3,7 +3,7 @@
Copyright (c) 2002 Ranjit Mathew
Copyright (c) 2002 Bo Thorsen
Copyright (c) 2002 Roger Sayle
Copyright (C) 2008 Free Software Foundation, Inc.
Copyright (C) 2008, 2010 Free Software Foundation, Inc.
x86 Foreign Function Interface

View File

@@ -1,3 +1,47 @@
2011-01-26 Dave Korn <dave.korn.cygwin@gmail.com>
PR target/40125
* configure.ac (AM_LTLDFLAGS): Add -bindir option for windows DLLs.
* configure: Regenerate.
2010-12-18 Iain Sandoe <iains@gcc.gnu.org>
PR libffi/29152
PR libffi/42378
* src/powerpc/darwin_closure.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffitarget.h (POWERPC_DARWIN64): New,
(FFI_TRAMPOLINE_SIZE): Update for Darwin64.
* src/powerpc/darwin.S: Provide Darwin64 implementation,
update comments.
* src/powerpc/ffi_darwin.c: Likewise.
2010-12-06 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* configure.ac (libffi_cv_as_ascii_pseudo_op): Use double
backslashes.
(libffi_cv_as_string_pseudo_op): Likewise.
* configure: Regenerate.
2010-12-03 Chung-Lin Tang <cltang@codesourcery.com>
* src/arm/sysv.S (ffi_closure_SYSV): Add UNWIND to .pad directive.
(ffi_closure_VFP): Same.
(ffi_call_VFP): Move down to before ffi_closure_VFP. Add '.fpu vfp'
directive.
2010-12-01 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/libffi.call/ffitest.h [__sgi] (PRId64, PRIu64): Define.
(PRIuPTR): Define.
2010-11-29 Richard Henderson <rth@redhat.com>
Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* src/x86/sysv.S (FDE_ENCODING, FDE_ENCODE): Define.
(.eh_frame): Use FDE_ENCODING.
(.LASFDE1, .LASFDE2, LASFDE3): Simplify with FDE_ENCODE.
2010-11-15 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
* testsuite/lib/libffi-dg.exp: Rename ...
@@ -218,7 +262,7 @@
2010-01-15 Oliver Kiddle <okiddle@yahoo.co.uk>
* src/x86/ffitarget.h (ffi_abi): Check for __i386 and __amd64 for
Sun Studio compiler compatibility.
Sun Studio compiler compatibility.
2010-01-12 Conrad Irwin <conrad.irwin@gmail.com>

File diff suppressed because it is too large Load Diff

View File

@@ -7822,6 +7822,10 @@ _lt_linker_boilerplate=`cat conftest.err`
$RM -r conftest*
## CAVEAT EMPTOR:
## There is no encapsulation within the following macros, do not change
## the running order or otherwise move them around unless you know exactly
## what you are doing...
if test -n "$compiler"; then
lt_prog_compiler_no_builtin_flag=
@@ -7847,11 +7851,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:7850: $lt_compile\"" >&5)
(eval echo "\"\$as_me:7854: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:7854: \$? = $ac_status" >&5
echo "$as_me:7858: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -8186,11 +8190,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:8189: $lt_compile\"" >&5)
(eval echo "\"\$as_me:8193: $lt_compile\"" >&5)
(eval "$lt_compile" 2>conftest.err)
ac_status=$?
cat conftest.err >&5
echo "$as_me:8193: \$? = $ac_status" >&5
echo "$as_me:8197: \$? = $ac_status" >&5
if (exit $ac_status) && test -s "$ac_outfile"; then
# The compiler can only warn and ignore the option if not recognized
# So say no if there are warnings other than the usual output.
@@ -8291,11 +8295,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:8294: $lt_compile\"" >&5)
(eval echo "\"\$as_me:8298: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
echo "$as_me:8298: \$? = $ac_status" >&5
echo "$as_me:8302: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -8346,11 +8350,11 @@ else
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
-e 's:$: $lt_compiler_flag:'`
(eval echo "\"\$as_me:8349: $lt_compile\"" >&5)
(eval echo "\"\$as_me:8353: $lt_compile\"" >&5)
(eval "$lt_compile" 2>out/conftest.err)
ac_status=$?
cat out/conftest.err >&5
echo "$as_me:8353: \$? = $ac_status" >&5
echo "$as_me:8357: \$? = $ac_status" >&5
if (exit $ac_status) && test -s out/conftest2.$ac_objext
then
# The compiler can only warn and ignore the option if not recognized
@@ -11149,7 +11153,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 11152 "configure"
#line 11156 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -11245,7 +11249,7 @@ else
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
lt_status=$lt_dlunknown
cat > conftest.$ac_ext <<_LT_EOF
#line 11248 "configure"
#line 11252 "configure"
#include "confdefs.h"
#if HAVE_DLFCN_H
@@ -12194,8 +12198,15 @@ case "$host" in
;;
i?86-win32* | i?86-*-cygwin* | i?86-*-mingw* | i?86-*-os2*)
TARGET=X86_WIN32; TARGETDIR=x86
# All mingw/cygwin/win32 builds require this for sharedlib
AM_LTLDFLAGS="-no-undefined"
# All mingw/cygwin/win32 builds require -no-undefined for sharedlib.
# We must also check with_cross_host to decide if this is a native
# or cross-build and select where to install dlls appropriately.
if test -n "$with_cross_host" &&
test x"$with_cross_host" != x"no"; then
AM_LTLDFLAGS='-no-undefined -bindir "$(toolexeclibdir)"';
else
AM_LTLDFLAGS='-no-undefined -bindir "$(bindir)"';
fi
;;
i?86-*-darwin*)
TARGET=X86_DARWIN; TARGETDIR=x86
@@ -14536,7 +14547,7 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
asm (".ascii \"string\"");
asm (".ascii \\"string\\"");
int
main ()
{
@@ -14598,7 +14609,7 @@ _ACEOF
cat confdefs.h >>conftest.$ac_ext
cat >>conftest.$ac_ext <<_ACEOF
/* end confdefs.h. */
asm (".string \"string\"");
asm (".string \\"string\\"");
int
main ()
{

View File

@@ -90,8 +90,15 @@ case "$host" in
;;
i?86-win32* | i?86-*-cygwin* | i?86-*-mingw* | i?86-*-os2*)
TARGET=X86_WIN32; TARGETDIR=x86
# All mingw/cygwin/win32 builds require this for sharedlib
AM_LTLDFLAGS="-no-undefined"
# All mingw/cygwin/win32 builds require -no-undefined for sharedlib.
# We must also check with_cross_host to decide if this is a native
# or cross-build and select where to install dlls appropriately.
if test -n "$with_cross_host" &&
test x"$with_cross_host" != x"no"; then
AM_LTLDFLAGS='-no-undefined -bindir "$(toolexeclibdir)"';
else
AM_LTLDFLAGS='-no-undefined -bindir "$(bindir)"';
fi
;;
i?86-*-darwin*)
TARGET=X86_DARWIN; TARGETDIR=x86
@@ -291,7 +298,7 @@ if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64
libffi_cv_as_ascii_pseudo_op, [
libffi_cv_as_ascii_pseudo_op=unknown
# Check if we have .ascii
AC_TRY_COMPILE([asm (".ascii \"string\"");],,
AC_TRY_COMPILE([asm (".ascii \\"string\\"");],,
[libffi_cv_as_ascii_pseudo_op=yes],
[libffi_cv_as_ascii_pseudo_op=no])
])
@@ -304,7 +311,7 @@ if test x$TARGET = xX86 || test x$TARGET = xX86_WIN32 || test x$TARGET = xX86_64
libffi_cv_as_string_pseudo_op, [
libffi_cv_as_string_pseudo_op=unknown
# Check if we have .string
AC_TRY_COMPILE([asm (".string \"string\"");],,
AC_TRY_COMPILE([asm (".string \\"string\\"");],,
[libffi_cv_as_string_pseudo_op=yes],
[libffi_cv_as_string_pseudo_op=no])
])