diff src/cpu/sparc/vm/disassembler_sparc.hpp @ 100:c7c777385a15

6667042: PrintAssembly option does not work without special plugin Summary: remove old private plugin interface, simplify, rework old plugin to use unchanged Gnu sources Reviewed-by: kvn, rasbold
author jrose
date Wed, 02 Apr 2008 12:09:59 -0700
parents a61af66fc99e
children c18cbe5936b8
line wrap: on
line diff
--- a/src/cpu/sparc/vm/disassembler_sparc.hpp	Fri Mar 28 09:00:39 2008 -0700
+++ b/src/cpu/sparc/vm/disassembler_sparc.hpp	Wed Apr 02 12:09:59 2008 -0700
@@ -1,5 +1,5 @@
 /*
- * Copyright 1997-1999 Sun Microsystems, Inc.  All Rights Reserved.
+ * Copyright 1997-2008 Sun Microsystems, Inc.  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
@@ -22,30 +22,11 @@
  *
  */
 
-// The disassembler prints out sparc code annotated
-// with Java specific information.
+  static int pd_instruction_alignment() {
+    return sizeof(int);
+  }
 
-class Disassembler {
-#ifndef PRODUCT
- private:
-  // points to the library.
-  static void*    _library;
-  // points to the print_insn_sparc function.
-  static dll_func _print_insn_sparc;
-  // tries to load library and return whether it succedded.
-  static bool load_library();
-  // decodes one instruction and return the start of the next instruction.
-  static address decode_instruction(address start, DisassemblerEnv* env);
-#endif
- public:
-  static void decode(CodeBlob *cb,               outputStream* st = NULL) PRODUCT_RETURN;
-  static void decode(nmethod* nm,                outputStream* st = NULL) PRODUCT_RETURN;
-  static void decode(u_char* begin, u_char* end, outputStream* st = NULL) PRODUCT_RETURN;
-};
-
-//Reconciliation History
-// 1.9 98/04/29 10:45:51 disassembler_i486.hpp
-// 1.10 98/05/11 16:47:20 disassembler_i486.hpp
-// 1.12 99/06/22 16:37:37 disassembler_i486.hpp
-// 1.13 99/08/06 10:09:04 disassembler_i486.hpp
-//End
+  static const char* pd_cpu_opts() {
+    return (VM_Version::v9_instructions_work()?
+            (VM_Version::v8_instructions_work()? "" : "v9only") : "v8only");
+  }