Merged with michi branch at rev 1684fe51cf3d.
[cacao.git] / src / vm / jit / disass-common.c
index 78e74f50cb44a6a7d7ebe92f70f0b64035233ea2..75ebe3b3dd1a76844589cd136f4b28af8d496ca8 100644 (file)
@@ -1,6 +1,6 @@
 /* src/vm/jit/disass-common.c - common functions for GNU binutils disassembler
 
-   Copyright (C) 1996-2005, 2006 R. Grafl, A. Krall, C. Kruegel,
+   Copyright (C) 1996-2005, 2006, 2007 R. Grafl, A. Krall, C. Kruegel,
    C. Oates, R. Obermaisser, M. Platter, M. Probst, S. Ring,
    E. Steiner, C. Thalinger, D. Thuernbeck, P. Tomsich, C. Ullrich,
    J. Wenninger, Institut f. Computersprachen - TU Wien
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
    02110-1301, USA.
 
-   Contact: cacao@cacaojvm.org
-
-   Authors: Christian Thalinger
-
-   Changes:
-
-   $Id: disass-common.c 4844 2006-04-25 18:02:15Z edwin $
-
 */
 
 
 #include "config.h"
 
-#if defined(WITH_BINUTILS_DISASSEMBLER)
-# include <dis-asm.h>
-#endif
-
+#include <dis-asm.h>
 #include <stdarg.h>
 #include <stdio.h>
 
 #include "vm/types.h"
 
-#include "mm/memory.h"
+#include "mm/memory.hpp"
+
 #include "vm/jit/disass.h"
 
 
@@ -59,7 +49,7 @@ bool disass_initialized = false;
 /* We need this on i386 and x86_64 since we don't know the byte length
    of currently printed instructions.  512 bytes should be enough. */
 
-#if defined(__I386__) || defined(__X86_64__)
+#if defined(__I386__) || defined(__X86_64__) || defined(__S390__) || defined(__M68K__)
 char disass_buf[512];
 s4   disass_len;
 #endif
@@ -92,14 +82,13 @@ void disassemble(u1 *start, u1 *end)
 
 *******************************************************************************/
 
-#if defined(WITH_BINUTILS_DISASSEMBLER)
 void disass_printf(PTR p, const char *fmt, ...)
 {
        va_list ap;
 
        va_start(ap, fmt);
 
-#if defined(__I386__) || defined(__X86_64__)
+#if defined(__I386__) || defined(__X86_64__) || defined(__S390__) || defined(__M68K__)
        disass_len += vsprintf(disass_buf + disass_len, fmt, ap);
 #else
        vprintf(fmt, ap);
@@ -122,7 +111,6 @@ int disass_buffer_read_memory(bfd_vma memaddr, bfd_byte *myaddr, unsigned int le
 
        return 0;
 }
-#endif /* defined(WITH_BINUTILS_DISASSEMBLER) */
 
 
 /*