guile-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Guile-commits] 351/437: PPC: Only call binutils function if it is avail


From: Andy Wingo
Subject: [Guile-commits] 351/437: PPC: Only call binutils function if it is available
Date: Mon, 2 Jul 2018 05:14:52 -0400 (EDT)

wingo pushed a commit to branch lightning
in repository guile.

commit 361caf28545aa0c2b2ab8d1cbd334fbdd952f373
Author: Paulo Andrade <address@hidden>
Date:   Thu Jan 15 14:56:38 2015 -0200

    PPC: Only call binutils function if it is available
    
        * configure.ac, lib/jit_disasm.c: Rewrite workaround
        to apparent problem to initialize powerpc disassembler.
---
 ChangeLog        | 5 +++++
 configure.ac     | 7 +++++++
 lib/jit_disasm.c | 8 ++++++++
 3 files changed, 20 insertions(+)

diff --git a/ChangeLog b/ChangeLog
index 3c13109..f78f581 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2015-01-15 Paulo Andrade <address@hidden>
 
+       * configure.ac, lib/jit_disasm.c: Rewrite workaround
+       to apparent problem to initialize powerpc disassembler.
+
+2015-01-15 Paulo Andrade <address@hidden>
+
        * include/lightning.h, lib/jit_aarch64.c,
        lib/jit_alpha.c, lib/jit_arm.c, lib/jit_hppa.c,
        lib/jit_ia64.c, lib/jit_mips.c, lib/jit_ppc.c,
diff --git a/configure.ac b/configure.ac
index 749659b..d26e777 100644
--- a/configure.ac
+++ b/configure.ac
@@ -230,6 +230,13 @@ elif test $cpu = arm; then
        return 1;
     }
     ]])],[ac_cv_test_arm_swf=yes],[],[ac_cv_test_arm_swf=no])
+elif test $cpu = ppc; then
+    if test "x$DISASSEMBLER" != "xno"; then
+       save_LIBS="$LIBS"
+       LIBS="$LIBS $SHLIB"
+       AC_CHECK_FUNCS(disassemble_init_for_target disassemble_init_powerpc)
+       LIBS="$save_LIBS"
+    fi
 fi
 CFLAGS=$save_CFLAGS
 
diff --git a/lib/jit_disasm.c b/lib/jit_disasm.c
index 01158de..86e5441 100644
--- a/lib/jit_disasm.c
+++ b/lib/jit_disasm.c
@@ -91,11 +91,19 @@ jit_init_debug(const char *progname)
 #  if defined(__powerpc__)
     disasm_info.arch = bfd_arch_powerpc;
     disasm_info.mach = bfd_mach_ppc64;
+#    if HAVE_DISASSEMBLE_INIT_FOR_TARGET
+    disassemble_init_for_target(&disasm_info);
+#    elif HAVE_DISASSEMBLE_INIT_POWERPC
     disassemble_init_powerpc(&disasm_info);
+#    endif
 #    if defined(__powerpc64__)
     disasm_info.disassembler_options = "64";
 #    endif
+#    if HAVE_DISASSEMBLE_INIT_FOR_TARGET
+    disassemble_init_for_target(&disasm_info);
+#    elif HAVE_DISASSEMBLE_INIT_POWERPC
     disassemble_init_powerpc(&disasm_info);
+#    endif
 #  endif
 #  if defined(__sparc__)
     disasm_info.endian = disasm_info.display_endian = BFD_ENDIAN_BIG;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]