[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Guile-commits] 429/437: Remove disassembler support from lightning
From: |
Andy Wingo |
Subject: |
[Guile-commits] 429/437: Remove disassembler support from lightning |
Date: |
Mon, 2 Jul 2018 05:15:11 -0400 (EDT) |
wingo pushed a commit to branch lightning
in repository guile.
commit 2a8ebe87e366694ecb0e8ea84ffc4eec75381a53
Author: Andy Wingo <address@hidden>
Date: Sun Jul 1 10:44:30 2018 +0200
Remove disassembler support from lightning
* libguile/lightning/configure.ac: Remove checks for libiberty, BFD, and
so on.
* libguile/lightning/lib/jit_disasm.c: Remove.
* libguile/lightning/lib/lightning.c: Define DISASSEMBLER and
DEVEL_DISASSEMBLER to 0.
(init_jit, finish_jit): Delete calls into jit_disasm.
* libguile/lightning/lib/jit_memory.c:
* libguile/lightning/lib/jit_note.c:
* libguile/lightning/lib/jit_print.c:
* libguile/lightning/lib/jit_rewind.c:
* libguile/lightning/lib/jit_size.c: Define DISASSEMBLER to 0.
* libguile/lightning/lightning.am (lightning_c_files): Remove
jit_disasm.c.
---
libguile/lightning/configure.ac | 67 ------
libguile/lightning/lib/jit_disasm.c | 415 ------------------------------------
libguile/lightning/lib/jit_memory.c | 4 +-
libguile/lightning/lib/jit_note.c | 4 +-
libguile/lightning/lib/jit_print.c | 4 +-
libguile/lightning/lib/jit_rewind.c | 4 +-
libguile/lightning/lib/jit_size.c | 2 +
libguile/lightning/lib/lightning.c | 23 +-
libguile/lightning/lightning.am | 1 -
9 files changed, 17 insertions(+), 507 deletions(-)
diff --git a/libguile/lightning/configure.ac b/libguile/lightning/configure.ac
index 9e5c84f..8dc7f34 100644
--- a/libguile/lightning/configure.ac
+++ b/libguile/lightning/configure.ac
@@ -34,66 +34,6 @@ esac
AC_CHECK_FUNCS(mremap ffsl isnan isinf,,)
-AC_ARG_ENABLE(disassembler,
- AS_HELP_STRING([--enable-disassembler],
- [Enable jit disassembler using binutils]),
- [DISASSEMBLER=$enableval], [DISASSEMBLER=auto])
-if test "x$DISASSEMBLER" != "xno"; then
- # FIXME need to check for libiberty first or will fail to link
- AC_CHECK_LIB(iberty, htab_try_create, ,
- [HAVE_IBERTY="no"])
- AC_CHECK_LIB(bfd, bfd_init, ,
- [HAVE_BFD="no"])
- AC_CHECK_LIB(z, compressBound, ,
- [HAVE_Z="no"])
- AC_CHECK_LIB(opcodes, init_disassemble_info, ,
- [HAVE_OPCODES="no"])
- if test "x$HAVE_IBERTY" = "xno" -o \
- "x$HAVE_BFD" = "xno" -o \
- "x$HAVE_Z" = "xno" -o \
- "x$HAVE_OPCODES" = "xno"; then
- if test "x$DISASSEMBLER" != "xauto"; then
- AC_MSG_ERROR([binutils not found, see
http://www.gnu.org/software/binutils/])
- else
- AC_MSG_WARN([binutils not found, see
http://www.gnu.org/software/binutils/])
- DISASSEMBLER="no"
- fi
- fi
-fi
-AM_CONDITIONAL(with_disassembler, [test "x$DISASSEMBLER" != "xno"])
-if test "x$DISASSEMBLER" != "xno"; then
- LIGHTNING_CFLAGS="$LIGHTNING_CFLAGS -DDISASSEMBLER=1"
- save_CFLAGS=$CFLAGS
- CFLAGS="$CFLAGS -I$PWD/include -D_GNU_SOURCE"
- AC_COMPILE_IFELSE([AC_LANG_SOURCE(
- #include <lightning.h>
- #include <lightning/jit_private.h>
- #include <dis-asm.h>
- int main(int argc, char *argv[])
- {
- disassembler_ftype print;
- bfd *abfd;
- print = disassembler(abfd);
- return 0;
- }
- )], [ac_cv_test_new_disassembler=no],,)
- CFLAGS="$save_CFLAGS"
- if test "x$ac_cv_test_new_disassembler" != "xno"; then
- LIGHTNING_CFLAGS="$LIGHTNING_CFLAGS -DBINUTILS_2_29=1"
- fi
-fi
-
-AC_ARG_ENABLE(devel-disassembler,
- AS_HELP_STRING([--enable-devel-disassembler],
- [Enable extra disassembly options]),
- [DEVEL_DISASSEMBLER=$enableval], [DEVEL_DISASSEMBLER=no])
-if test "x$DEVEL_DISASSEMBLER" != "xno"; then
- if test "x$DISASSEMBLER" = "xno"; then
- AC_MSG_ERROR(devel-disassembler needs disassembler enabled)
- fi
- LIGHTNING_CFLAGS="$LIGHTNING_CFLAGS -DDEVEL_DISASSEMBLER=1"
-fi
-
AC_ARG_ENABLE(assertions,
AS_HELP_STRING([--enable-assertions],
[Enable runtime code generation assertions]),
@@ -222,13 +162,6 @@ 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/libguile/lightning/lib/jit_disasm.c
b/libguile/lightning/lib/jit_disasm.c
deleted file mode 100644
index 89cc289..0000000
--- a/libguile/lightning/lib/jit_disasm.c
+++ /dev/null
@@ -1,415 +0,0 @@
-/*
- * Copyright (C) 2012-2017 Free Software Foundation, Inc.
- *
- * This file is part of GNU lightning.
- *
- * GNU lightning is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Lesser General Public License as published
- * by the Free Software Foundation; either version 3, or (at your option)
- * any later version.
- *
- * GNU lightning is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
- * License for more details.
- *
- * Authors:
- * Paulo Cesar Pereira de Andrade
- */
-
-#include <lightning.h>
-#include <lightning/jit_private.h>
-#if DISASSEMBLER
-# include <dis-asm.h>
-#endif
-
-/*
- * Prototypes
- */
-#if DISASSEMBLER
-static int
-disasm_compare_symbols(const void *ap, const void *bp);
-
-static void
-disasm_print_address(bfd_vma addr, struct disassemble_info *info);
-
-#define disassemble(u, v) _disassemble(_jit, u, v)
-static void
-_disassemble(jit_state_t *_jit, jit_pointer_t code, jit_int32_t length);
-#endif
-
-/*
- * Initialization
- */
-#if DISASSEMBLER
-static bfd *disasm_bfd;
-static disassemble_info disasm_info;
-static disassembler_ftype disasm_print;
-static asymbol **disasm_symbols;
-static asymbol *disasm_synthetic;
-static long disasm_num_symbols;
-static long disasm_num_synthetic;
-static jit_state_t *disasm_jit;
-#define disasm_stream stdout
-#endif
-
-/*
- * Implementation
- */
-void
-jit_init_debug(const char *progname)
-{
-#if DISASSEMBLER
- bfd_init();
-
- if (progname)
- disasm_bfd = bfd_openr(progname, NULL);
- if (disasm_bfd == NULL) {
-#if defined(__linux__)
- disasm_bfd = bfd_openr("/proc/self/exe", NULL);
- if (disasm_bfd == NULL)
-#endif
- return;
- }
- bfd_check_format(disasm_bfd, bfd_object);
- bfd_check_format(disasm_bfd, bfd_archive);
- INIT_DISASSEMBLE_INFO(disasm_info, disasm_stream, fprintf);
-# if defined(__i386__) || defined(__x86_64__)
- disasm_info.arch = bfd_arch_i386;
-# if defined(__x86_64__)
-# if __WORDSIZE == 32
- disasm_info.mach = bfd_mach_x64_32;
-# else
- disasm_info.mach = bfd_mach_x86_64;
-# endif
-# else
- disasm_info.mach = bfd_mach_i386_i386;
-# endif
-# endif
-# 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;
-# endif
-# if defined(__s390__) || defined(__s390x__)
- disasm_info.arch = bfd_arch_s390;
-# if __WORDSIZE == 32
- disasm_info.mach = bfd_mach_s390_31;
-# else
- disasm_info.mach = bfd_mach_s390_64;
-# endif
- disasm_info.endian = disasm_info.display_endian = BFD_ENDIAN_BIG;
- disasm_info.disassembler_options = "zarch";
-# endif
-# if defined(__alpha__)
- disasm_info.arch = bfd_arch_alpha;
- disasm_info.mach = bfd_mach_alpha_ev6;
-# endif
- disasm_info.print_address_func = disasm_print_address;
-
-# if BINUTILS_2_29
- disasm_print = disassembler(disasm_info.arch, __BYTE_ORDER == __BIG_ENDIAN,
- disasm_info.mach, disasm_bfd);
-# else
- disasm_print = disassembler(disasm_bfd);
-# endif
- assert(disasm_print);
-
- if (bfd_get_file_flags(disasm_bfd) & HAS_SYMS) {
- asymbol **in;
- asymbol **out;
- asymbol *symbol;
- long offset;
- long sym_count;
- long dyn_count;
- long sym_storage;
- long dyn_storage;
-
- if ((sym_storage = bfd_get_symtab_upper_bound(disasm_bfd)) >= 0) {
-
- if (bfd_get_file_flags(disasm_bfd) & DYNAMIC) {
- dyn_storage = bfd_get_dynamic_symtab_upper_bound(disasm_bfd);
-# if defined(__alpha__)
- /* XXX */
- if (dyn_storage < 0)
- dyn_storage = 0;
-# else
- assert(dyn_storage >= 0);
-# endif
- }
- else
- dyn_storage = 0;
-
- jit_alloc((jit_pointer_t *)&disasm_symbols,
- (sym_storage + dyn_storage) * sizeof(asymbol *));
- sym_count = bfd_canonicalize_symtab(disasm_bfd, disasm_symbols);
- assert(sym_count >= 0);
- if (dyn_storage) {
- dyn_count = bfd_canonicalize_dynamic_symtab(disasm_bfd,
- disasm_symbols +
- sym_count);
- assert(dyn_count >= 0);
- }
- else
- dyn_count = 0;
- disasm_num_symbols = sym_count + dyn_count;
-
- disasm_num_synthetic = bfd_get_synthetic_symtab(disasm_bfd,
- sym_count,
- disasm_symbols,
- dyn_count,
- disasm_symbols +
- sym_count,
- &disasm_synthetic);
- if (disasm_num_synthetic > 0) {
- jit_realloc((jit_pointer_t *)&disasm_symbols,
- (sym_storage + dyn_storage) * sizeof(asymbol *),
- (sym_storage + dyn_storage + disasm_num_synthetic) *
- sizeof(asymbol *));
- for (offset = 0; offset < disasm_num_synthetic; offset++)
- disasm_symbols[disasm_num_symbols++] =
- disasm_synthetic + offset;
- }
-
- /* remove symbols not useful for disassemble */
- in = out = disasm_symbols;
- for (offset = 0; offset < disasm_num_symbols; offset++) {
- symbol = *in++;
- if (symbol->name &&
- symbol->name[0] != '\0' &&
- !(symbol->flags & (BSF_DEBUGGING | BSF_SECTION_SYM)) &&
- !bfd_is_und_section(symbol->section) &&
- !bfd_is_com_section(symbol->section))
- *out++ = symbol;
- }
- disasm_num_symbols = out - disasm_symbols;
- qsort(disasm_symbols, disasm_num_symbols,
- sizeof(asymbol *), disasm_compare_symbols);
- }
- }
-#endif
-}
-
-void
-jit_finish_debug(void)
-{
-#if DISASSEMBLER
- if (disasm_synthetic)
- jit_free((jit_pointer_t *)&disasm_synthetic);
- if (disasm_symbols)
- jit_free((jit_pointer_t *)&disasm_symbols);
-#endif
-}
-
-void
-_jit_disassemble(jit_state_t *_jit)
-{
-#if DISASSEMBLER
- if (disasm_bfd) {
-# if defined(__arm__)
- /* FIXME add mapping for prolog switching to arm and possible jump
- * before first prolog also in arm mode */
- disasm_info.disassembler_options = jit_cpu.thumb ? "force-thumb" : "";
-# endif
-
- disassemble(_jit->code.ptr, _jit->pc.uc - _jit->code.ptr);
- }
-#endif
-}
-
-#if DISASSEMBLER
-/* Based on objdump source */
-static int
-disasm_compare_symbols(const void *ap, const void *bp)
-{
- const asymbol *a = *(const asymbol **)ap;
- const asymbol *b = *(const asymbol **)bp;
-
- if (bfd_asymbol_value(a) > bfd_asymbol_value(b))
- return (1);
- if (bfd_asymbol_value(a) < bfd_asymbol_value(b))
- return (-1);
- return (0);
-}
-
-#if __WORDSIZE == 32
-# define address_buffer_length 16
-# define address_buffer_format "%llx"
-#else
-# define address_buffer_length 32
-# define address_buffer_format "%lx"
-#endif
-static void
-disasm_print_address(bfd_vma addr, struct disassemble_info *info)
-{
- char *name;
- char *file;
- int line;
- char buffer[address_buffer_length];
-
- sprintf(buffer, address_buffer_format, (long long)addr);
- (*info->fprintf_func)(info->stream, "0x%s", buffer);
-
-# define _jit disasm_jit
-# undef jit_pointer_p
-# define jit_pointer_p(u) \
- ((u) >= _jit->code.ptr && (u) < _jit->pc.uc)
- if (jit_pointer_p((jit_uint8_t *)(jit_word_t)addr)) {
- if (jit_get_note((jit_uint8_t *)(jit_word_t)addr, &name, &file, &line))
- (*info->fprintf_func)(info->stream, " %s:%s:%d",
- name ? name : "",
- file ? file : "",
- line);
- }
-# undef jit_pointer_p
-# undef _jit
- else if (disasm_num_symbols) {
- long low;
- long high;
- long offset;
- asymbol *symbol;
-
- low = 0;
- high = disasm_num_symbols;
- do {
- offset = (low + high) >> 1;
- symbol = disasm_symbols[offset];
- if (bfd_asymbol_value(symbol) > addr)
- high = offset - 1;
- else if (bfd_asymbol_value(symbol) < addr)
- low = offset + 1;
- else
- break;
- } while (low < high);
-
- if (offset >= 0 && offset < disasm_num_symbols) {
- if (bfd_asymbol_value(symbol) < addr) {
- while (++offset < disasm_num_symbols) {
- symbol = disasm_symbols[offset];
- if (bfd_asymbol_value(symbol) >= addr)
- break;
- }
- }
- else if (bfd_asymbol_value(symbol) > addr) {
- while (offset--) {
- if (bfd_asymbol_value(disasm_symbols[offset]) < addr)
- break;
- symbol = disasm_symbols[offset];
- }
- }
- if (bfd_asymbol_value(symbol) == addr)
- (*info->fprintf_func)(info->stream, " # %s", symbol->name);
- }
- }
-}
-
-static void
-_disassemble(jit_state_t *_jit, jit_pointer_t code, jit_int32_t length)
-{
- int bytes;
- char *name, *old_name;
- char *file, *old_file;
- int line, old_line;
-#if __arm__
- jit_int32_t offset;
- jit_bool_t data_info;
- jit_int32_t data_offset;
-#endif
- bfd_vma pc = (jit_uword_t)code;
- bfd_vma end = (jit_uword_t)code + length;
- char buffer[address_buffer_length];
-#if DEVEL_DISASSEMBLER
- jit_node_t *node;
- jit_uword_t prevw;
-#endif
-
-#if __arm__
- data_info = _jitc && _jitc->data_info.ptr;
- data_offset = 0;
-#endif
- disasm_info.buffer = code;
- disasm_info.buffer_vma = (jit_uword_t)code;
- disasm_info.buffer_length = length;
- old_file = old_name = NULL;
- old_line = 0;
- disasm_jit = _jit;
-#if DEVEL_DISASSEMBLER
- node = _jitc->head;
- prevw = pc;
-#endif
- while (pc < end) {
-#if DEVEL_DISASSEMBLER
- while (node && (jit_uword_t)(prevw + node->offset) < (jit_uword_t)pc) {
- prevw += node->offset;
- node = node->next;
- }
- while (node && (jit_uword_t)(prevw + node->offset) == (jit_uword_t)pc) {
- jit_print_node(node);
- fputc('\n', stdout);
- prevw += node->offset;
- node = node->next;
- }
-#endif
-#if __arm__
- again:
- if (data_info) {
- while (_jitc->data_info.ptr[data_offset].code < pc) {
- if (++data_offset >= _jitc->data_info.length) {
- data_info = 0;
- goto again;
- }
- }
- if (pc == _jitc->data_info.ptr[data_offset].code) {
- offset = _jitc->data_info.ptr[data_offset].length;
- for (; offset >= 4; offset -= 4, pc += 4) {
- bytes = sprintf(buffer, address_buffer_format, pc);
- (*disasm_info.fprintf_func)(disasm_stream,
- "%*c0x%s\t.data\t0x%08x\n",
- 16 - bytes, ' ', buffer,
- *(jit_uint32_t *)
- (jit_uint32_t)pc);
- }
- /* reset disassemble information instead of attempting
- * to hack the arm specific backend data structures to
- * tell it to forward the required number of bytes. */
- disasm_info.buffer = (jit_pointer_t)(jit_uint32_t)pc;
- disasm_info.buffer_vma = (jit_uword_t)pc;
- if ((disasm_info.buffer_length = end - pc) <= 0)
- break;
- }
- }
-#endif
- if (jit_get_note((jit_uint8_t *)(jit_word_t)pc, &name, &file, &line) &&
- (name != old_name || file != old_file || line != old_line)) {
- (*disasm_info.fprintf_func)(disasm_stream, "# %s:%s:%d\n",
- name ? name : "",
- file ? file : "",
- line);
- old_name = name;
- old_file = file;
- old_line = line;
- }
-
- bytes = sprintf(buffer, address_buffer_format, (long long)pc);
- (*disasm_info.fprintf_func)(disasm_stream, "%*c0x%s\t",
- 16 - bytes, ' ', buffer);
- pc += (*disasm_print)(pc, &disasm_info);
- putc('\n', disasm_stream);
- }
-}
-#endif
diff --git a/libguile/lightning/lib/jit_memory.c
b/libguile/lightning/lib/jit_memory.c
index cbc2395..71449d1 100644
--- a/libguile/lightning/lib/jit_memory.c
+++ b/libguile/lightning/lib/jit_memory.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2013-2017 Free Software Foundation, Inc.
+ * Copyright (C) 2013-2018 Free Software Foundation, Inc.
*
* This file is part of GNU lightning.
*
@@ -17,6 +17,8 @@
* Paulo Cesar Pereira de Andrade
*/
+#define DISASSEMBLER 0
+
#include <lightning.h>
#include <lightning/jit_private.h>
#include <sys/mman.h>
diff --git a/libguile/lightning/lib/jit_note.c
b/libguile/lightning/lib/jit_note.c
index f834de6..0d679ae 100644
--- a/libguile/lightning/lib/jit_note.c
+++ b/libguile/lightning/lib/jit_note.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2013-2017 Free Software Foundation, Inc.
+ * Copyright (C) 2013-2018 Free Software Foundation, Inc.
*
* This file is part of GNU lightning.
*
@@ -17,6 +17,8 @@
* Paulo Cesar Pereira de Andrade
*/
+#define DISASSEMBLER 0
+
#include <lightning.h>
#include <lightning/jit_private.h>
diff --git a/libguile/lightning/lib/jit_print.c
b/libguile/lightning/lib/jit_print.c
index 8fe9885..1197da9 100644
--- a/libguile/lightning/lib/jit_print.c
+++ b/libguile/lightning/lib/jit_print.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2012-2017 Free Software Foundation, Inc.
+ * Copyright (C) 2012-2018 Free Software Foundation, Inc.
*
* This file is part of GNU lightning.
*
@@ -17,6 +17,8 @@
* Paulo Cesar Pereira de Andrade
*/
+#define DISASSEMBLER 0
+
#include <lightning.h>
#include <lightning/jit_private.h>
diff --git a/libguile/lightning/lib/jit_rewind.c
b/libguile/lightning/lib/jit_rewind.c
index 518d2f6..34c9e74 100644
--- a/libguile/lightning/lib/jit_rewind.c
+++ b/libguile/lightning/lib/jit_rewind.c
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2015-2017 Free Software Foundation, Inc.
+ * Copyright (C) 2015-2018 Free Software Foundation, Inc.
*
* This file is part of GNU lightning.
*
@@ -17,6 +17,8 @@
* Paulo Cesar Pereira de Andrade
*/
+#define DISASSEMBLER 0
+
#include <lightning.h>
#include <lightning/jit_private.h>
diff --git a/libguile/lightning/lib/jit_size.c
b/libguile/lightning/lib/jit_size.c
index 77082ea..d1d9955 100644
--- a/libguile/lightning/lib/jit_size.c
+++ b/libguile/lightning/lib/jit_size.c
@@ -17,6 +17,8 @@
* Paulo Cesar Pereira de Andrade
*/
+#define DISASSEMBLER 0
+
#include <lightning.h>
#include <lightning/jit_private.h>
diff --git a/libguile/lightning/lib/lightning.c
b/libguile/lightning/lib/lightning.c
index db79dea..63bef93 100644
--- a/libguile/lightning/lib/lightning.c
+++ b/libguile/lightning/lib/lightning.c
@@ -17,6 +17,9 @@
* Paulo Cesar Pereira de Andrade
*/
+#define DISASSEMBLER 0
+#define DEVEL_DISASSEMBLER 0
+
#include <lightning.h>
#include <lightning/jit_private.h>
#include <sys/mman.h>
@@ -184,14 +187,12 @@ void
init_jit(const char *progname)
{
jit_get_cpu();
- jit_init_debug(progname);
jit_init_size();
}
void
finish_jit(void)
{
- jit_finish_debug();
jit_finish_size();
}
@@ -943,10 +944,6 @@ jit_new_state(void)
(_jitc->pool.length = 16) * sizeof(jit_node_t*));
jit_alloc((jit_pointer_t *)&_jitc->blocks.ptr,
(_jitc->blocks.length = 16) * sizeof(jit_block_t));
-#if __arm__ && DISASSEMBLER
- jit_alloc((jit_pointer_t *)&_jitc->data_info.ptr,
- (_jitc->data_info.length = 1024) * sizeof(jit_data_info_t));
-#endif
/* allocate at most one extra note in case jit_name() is
* never called, or called after adding at least one note */
@@ -959,13 +956,6 @@ jit_new_state(void)
void
_jit_clear_state(jit_state_t *_jit)
{
-#if DEVEL_DISASSEMBLER
-# define jit_really_clear_state() _jit_really_clear_state(_jit)
-}
-
-void _jit_really_clear_state(jit_state_t *_jit)
-{
-#endif
jit_word_t offset;
jit_function_t *function;
@@ -1005,10 +995,6 @@ void _jit_really_clear_state(jit_state_t *_jit)
_jitc->note.name = _jitc->note.note = NULL;
_jitc->note.base = NULL;
-#if __arm__ && DISASSEMBLER
- jit_free((jit_pointer_t *)&_jitc->data_info.ptr);
-#endif
-
#if __powerpc64__ || __ia64__
jit_free((jit_pointer_t *)&_jitc->prolog.ptr);
#endif
@@ -1023,9 +1009,6 @@ void _jit_really_clear_state(jit_state_t *_jit)
void
_jit_destroy_state(jit_state_t *_jit)
{
-#if DEVEL_DISASSEMBLER
- jit_really_clear_state();
-#endif
if (!_jit->user_code)
munmap(_jit->code.ptr, _jit->code.length);
if (!_jit->user_data)
diff --git a/libguile/lightning/lightning.am b/libguile/lightning/lightning.am
index ada9c5b..3b96a20 100644
--- a/libguile/lightning/lightning.am
+++ b/libguile/lightning/lightning.am
@@ -20,7 +20,6 @@ lightning = $(top_srcdir)/libguile/lightning
# FIXME: set LIGHTNING_CFLAGS=-I$(lightning)/include in configure.ac
lightning_c_files = \
- $(lightning)/lib/jit_disasm.c \
$(lightning)/lib/jit_memory.c \
$(lightning)/lib/jit_names.c \
$(lightning)/lib/jit_note.c \
- [Guile-commits] 415/437: Build and pass all test cases on Alpha Linux, (continued)
- [Guile-commits] 415/437: Build and pass all test cases on Alpha Linux, Andy Wingo, 2018/07/02
- [Guile-commits] 142/437: Make current test cases pass in armv7l., Andy Wingo, 2018/07/02
- [Guile-commits] 188/437: Add framework for sparc port., Andy Wingo, 2018/07/02
- [Guile-commits] 227/437: Cosmetic removal of unused macros., Andy Wingo, 2018/07/02
- [Guile-commits] 330/437: Resync with new patch to make functions receive a const argument, Andy Wingo, 2018/07/02
- [Guile-commits] 185/437: Store all annotation information in the read only data buffer., Andy Wingo, 2018/07/02
- [Guile-commits] 170/437: Test and correct test cases in all current backends., Andy Wingo, 2018/07/02
- [Guile-commits] 368/437: Implement jit_allocar for dynamic stack allocation, Andy Wingo, 2018/07/02
- [Guile-commits] 355/437: Update documentation on jit_frame and jit_tramp, Andy Wingo, 2018/07/02
- [Guile-commits] 323/437: misc: Make jit_note and related functions take a const argument, Andy Wingo, 2018/07/02
- [Guile-commits] 429/437: Remove disassembler support from lightning,
Andy Wingo <=
- [Guile-commits] 346/437: PPC: Build and pass all tests in powerpcle, Andy Wingo, 2018/07/02
- [Guile-commits] 180/437: Correct C sequence point problem., Andy Wingo, 2018/07/02
- [Guile-commits] 370/437: Add missing ellipsis in allocar.tst, Andy Wingo, 2018/07/02
- [Guile-commits] 337/437: Remove a wrong optimization of callee save registers, Andy Wingo, 2018/07/02
- [Guile-commits] 437/437: Wire up lightning into libguile build, Andy Wingo, 2018/07/02
- [Guile-commits] 362/437: Avoid problems if JIT_INSTR_MAX is miscalculated, Andy Wingo, 2018/07/02
- [Guile-commits] 183/437: Correct qmul and qdiv in ppc., Andy Wingo, 2018/07/02
- [Guile-commits] 235/437: Correct build on FreeBSD/amd64, Andy Wingo, 2018/07/02
- [Guile-commits] 240/437: Correct wrong test and update of arm thumb offset information., Andy Wingo, 2018/07/02
- [Guile-commits] 215/437: Add functional hppa port. All tests pass., Andy Wingo, 2018/07/02