src/share/vm/compiler/disassembler.hpp

Print this page

        

@@ -1,7 +1,7 @@
 /*
- * Copyright (c) 2008, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 2008, 2010, Oracle and/or its affiliates. All rights reserved.
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
  *
  * This code is free software; you can redistribute it and/or modify it
  * under the terms of the GNU General Public License version 2 only, as
  * published by the Free Software Foundation.

@@ -20,10 +20,24 @@
  * or visit www.oracle.com if you need additional information or have any
  * questions.
  *
  */
 
+#ifndef SHARE_VM_COMPILER_DISASSEMBLER_HPP
+#define SHARE_VM_COMPILER_DISASSEMBLER_HPP
+
+#include "runtime/globals.hpp"
+#ifdef TARGET_OS_FAMILY_linux
+# include "os_linux.inline.hpp"
+#endif
+#ifdef TARGET_OS_FAMILY_solaris
+# include "os_solaris.inline.hpp"
+#endif
+#ifdef TARGET_OS_FAMILY_windows
+# include "os_windows.inline.hpp"
+#endif
+
 class decode_env;
 
 // The disassembler prints out assembly code annotated
 // with Java specific information.
 

@@ -45,15 +59,26 @@
   static decode_func _decode_instructions;
   // tries to load library and return whether it succedded.
   static bool load_library();
 
   // Machine dependent stuff
-  #include "incls/_disassembler_pd.hpp.incl"
+#ifdef TARGET_ARCH_x86
+# include "disassembler_x86.hpp"
+#endif
+#ifdef TARGET_ARCH_sparc
+# include "disassembler_sparc.hpp"
+#endif
+#ifdef TARGET_ARCH_zero
+# include "disassembler_zero.hpp"
+#endif
+
 
  public:
   static bool can_decode() {
     return (_decode_instructions != NULL) || load_library();
   }
   static void decode(CodeBlob *cb,               outputStream* st = NULL);
   static void decode(nmethod* nm,                outputStream* st = NULL);
   static void decode(address begin, address end, outputStream* st = NULL);
 };
+
+#endif // SHARE_VM_COMPILER_DISASSEMBLER_HPP