diff options
author | Jakub Jelinek <jakub@redhat.com> | 2002-04-28 21:57:42 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2002-04-28 21:57:42 +0200 |
commit | 5d84cf0b8d41240167b41773e4ff71716e285cab (patch) | |
tree | 8f8fb5903fbe17a1cd591f2bd8975d96fdb09d5f /libffi/configure.in | |
parent | 069909862b409fc025762213f2dc9979a27ee822 (diff) | |
download | gcc-5d84cf0b8d41240167b41773e4ff71716e285cab.zip gcc-5d84cf0b8d41240167b41773e4ff71716e285cab.tar.gz gcc-5d84cf0b8d41240167b41773e4ff71716e285cab.tar.bz2 |
configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working %r_disp32().
* configure.in (HAVE_AS_SPARC_UA_PCREL): Check for working
%r_disp32().
* src/sparc/v8.S: Use it.
* src/sparc/v9.S: Likewise.
* fficonfig.h.in: Rebuilt.
* configure: Rebuilt.
From-SVN: r52858
Diffstat (limited to 'libffi/configure.in')
-rw-r--r-- | libffi/configure.in | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/libffi/configure.in b/libffi/configure.in index 9dfa33d..9e9ab1c 100644 --- a/libffi/configure.in +++ b/libffi/configure.in @@ -96,6 +96,24 @@ AC_COMPILE_CHECK_SIZEOF(long double) AC_COMPILE_CHECK_SIZEOF(void *) AC_C_BIGENDIAN_CROSS +if test x$TARGET == xSPARC; then + AC_CACHE_CHECK([assembler and linker support unaligned pc related relocs], + libffi_cv_as_sparc_ua_pcrel, [ + save_CFLAGS="$CFLAGS" + save_LDFLAGS="$LDFLAGS" + CFLAGS="$CFLAGS -fpic" + LDFLAGS="$LDFLAGS -shared" + AC_TRY_LINK([asm (".text; foo: nop; .data; .align 4; .byte 0; .uaword %r_disp32(foo); .text");],, + [libffi_cv_as_sparc_ua_pcrel=yes], + [libffi_cv_as_sparc_ua_pcrel=no]) + CFLAGS="$save_CFLAGS" + LDFLAGS="$save_LDFLAGS"]) + if test "x$libffi_cv_as_sparc_ua_pcrel" = xyes; then + AC_DEFINE(HAVE_AS_SPARC_UA_PCREL, 1, + [Define if your assembler and linker support unaligned PC relative relocs.]) + fi +fi + AC_SUBST(TARGET) AC_SUBST(TARGETDIR) |