changeset 1885:19e7ed3a153a

Forwardport Shark. 2009-06-09 Gary Benson <gbenson@redhat.com> * patches/hotspot/default/icedtea-shark.patch (ciInstanceKlass::is_cache_entry_resolved): Removed. (ciInstanceKlass::constant_pool_tag_at): Likewise.
author Andrew John Hughes <ahughes@redhat.com>
date Wed, 10 Jun 2009 18:10:29 +0100
parents 600e54c4e646
children 29be67755005
files ChangeLog patches/hotspot/default/icedtea-shark.patch
diffstat 2 files changed, 66 insertions(+), 57 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Wed Jun 10 17:20:46 2009 +0100
+++ b/ChangeLog	Wed Jun 10 18:10:29 2009 +0100
@@ -1,3 +1,9 @@
+2009-06-09  Gary Benson  <gbenson@redhat.com>
+
+	* patches/hotspot/default/icedtea-shark.patch
+	(ciInstanceKlass::is_cache_entry_resolved): Removed.
+	(ciInstanceKlass::constant_pool_tag_at): Likewise.
+
 2009-06-09  Gary Benson  <gbenson@redhat.com>
 
 	* ports/hotspot/src/share/vm/shark/sharkTopLevelBlock.cpp
--- a/patches/hotspot/default/icedtea-shark.patch	Wed Jun 10 17:20:46 2009 +0100
+++ b/patches/hotspot/default/icedtea-shark.patch	Wed Jun 10 18:10:29 2009 +0100
@@ -1,49 +1,23 @@
 diff -Nru openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.cpp openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.cpp
---- openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.cpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.cpp	2009-05-19 16:10:18.000000000 +0100
-@@ -548,3 +548,23 @@
+--- openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.cpp	2009-03-30 17:15:27.000000000 +0100
++++ openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.cpp	2009-06-10 18:05:39.000000000 +0100
+@@ -548,3 +548,4 @@
    }
    return impl;
  }
 +
-+#ifdef SHARK
-+// ------------------------------------------------------------------
-+// ciInstanceKlass::constant_pool_tag_at
-+//
-+// What is in this constant pool slot?
-+constantTag ciInstanceKlass::constant_pool_tag_at(int index) {
-+  VM_ENTRY_MARK;
-+  return get_instanceKlass()->constants()->tag_at(index);
-+}
-+ 
-+// ------------------------------------------------------------------
-+// ciInstanceKlass::is_cache_entry_resolved
-+//
-+// Is this entry in the constant pool cache resolved?
-+bool ciInstanceKlass::is_cache_entry_resolved(int index, Bytecodes::Code opcode) {
-+  VM_ENTRY_MARK;
-+  return get_instanceKlass()->constants()->cache()->entry_at(index)->is_resolved(opcode);
-+}
-+#endif // SHARK
 diff -Nru openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.hpp openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.hpp
---- openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.hpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.hpp	2009-05-19 16:11:21.000000000 +0100
-@@ -198,4 +198,12 @@
+--- openjdk.orig/hotspot/src/share/vm/ci/ciInstanceKlass.hpp	2009-03-30 17:15:27.000000000 +0100
++++ openjdk/hotspot/src/share/vm/ci/ciInstanceKlass.hpp	2009-06-10 18:05:45.000000000 +0100
+@@ -198,4 +198,5 @@
    // What kind of ciObject is this?
    bool is_instance_klass() { return true; }
    bool is_java_klass()     { return true; }
 +
-+#ifdef SHARK
-+ // What is in this constant pool slot?
-+ constantTag constant_pool_tag_at(int index);
-+
-+ // Is this entry in the constant pool cache resolved?
-+ bool is_cache_entry_resolved(int index, Bytecodes::Code opcode);
-+#endif // SHARK
  };
 diff -Nru openjdk.orig/hotspot/src/share/vm/ci/ciMethod.cpp openjdk/hotspot/src/share/vm/ci/ciMethod.cpp
---- openjdk.orig/hotspot/src/share/vm/ci/ciMethod.cpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/ci/ciMethod.cpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/ci/ciMethod.cpp	2009-05-08 17:40:25.000000000 +0100
++++ openjdk/hotspot/src/share/vm/ci/ciMethod.cpp	2009-06-10 18:07:13.000000000 +0100
 @@ -56,9 +56,9 @@
    _liveness           = NULL;
    _bcea = NULL;
@@ -68,7 +42,26 @@
  }
  
  
-@@ -294,34 +294,34 @@
+@@ -228,6 +228,18 @@
+   return get_methodOop()->vtable_index();
+ }
+ 
++#ifdef SHARK
++// ------------------------------------------------------------------
++// ciMethod::itable_index
++//
++// Get the position of this method's entry in the itable, if any.
++int ciMethod::itable_index() {
++  check_is_loaded();
++  assert(holder()->is_linked(), "must be linked");
++  VM_ENTRY_MARK;
++  return klassItable::compute_itable_index(get_methodOop());
++}
++#endif // SHARK
+ 
+ // ------------------------------------------------------------------
+ // ciMethod::native_entry
+@@ -294,34 +306,34 @@
  // ------------------------------------------------------------------
  // ciMethod::get_flow_analysis
  ciTypeFlow* ciMethod::get_flow_analysis() {
@@ -110,8 +103,8 @@
  
  // ------------------------------------------------------------------
 diff -Nru openjdk.orig/hotspot/src/share/vm/ci/ciMethod.hpp openjdk/hotspot/src/share/vm/ci/ciMethod.hpp
---- openjdk.orig/hotspot/src/share/vm/ci/ciMethod.hpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/ci/ciMethod.hpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/ci/ciMethod.hpp	2009-05-08 17:40:25.000000000 +0100
++++ openjdk/hotspot/src/share/vm/ci/ciMethod.hpp	2009-06-10 18:07:39.000000000 +0100
 @@ -69,7 +69,7 @@
  
    // Optional liveness analyzer.
@@ -121,9 +114,19 @@
    ciTypeFlow*     _flow;
  #endif
  
+@@ -139,6 +139,9 @@
+ 
+   // Runtime information.
+   int           vtable_index();
++#ifdef SHARK
++  int itable_index();
++#endif // SHARK 
+   address       native_entry();
+   address       interpreter_entry();
+ 
 diff -Nru openjdk.orig/hotspot/src/share/vm/code/nmethod.cpp openjdk/hotspot/src/share/vm/code/nmethod.cpp
---- openjdk.orig/hotspot/src/share/vm/code/nmethod.cpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/code/nmethod.cpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/code/nmethod.cpp	2009-03-30 23:08:41.000000000 +0100
++++ openjdk/hotspot/src/share/vm/code/nmethod.cpp	2009-06-10 18:04:13.000000000 +0100
 @@ -65,6 +65,11 @@
    assert(compiler() != NULL, "must be");
    return compiler()->is_c2();
@@ -162,8 +165,8 @@
      tty->print("(nm) ");
    }
 diff -Nru openjdk.orig/hotspot/src/share/vm/code/nmethod.hpp openjdk/hotspot/src/share/vm/code/nmethod.hpp
---- openjdk.orig/hotspot/src/share/vm/code/nmethod.hpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/code/nmethod.hpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/code/nmethod.hpp	2009-03-30 23:08:41.000000000 +0100
++++ openjdk/hotspot/src/share/vm/code/nmethod.hpp	2009-06-10 18:04:13.000000000 +0100
 @@ -318,6 +318,7 @@
  
    bool is_compiled_by_c1() const;
@@ -173,8 +176,8 @@
    // boundaries for different parts
    address code_begin         () const             { return _entry_point; }
 diff -Nru openjdk.orig/hotspot/src/share/vm/compiler/abstractCompiler.hpp openjdk/hotspot/src/share/vm/compiler/abstractCompiler.hpp
---- openjdk.orig/hotspot/src/share/vm/compiler/abstractCompiler.hpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/compiler/abstractCompiler.hpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/compiler/abstractCompiler.hpp	2009-03-30 17:15:27.000000000 +0100
++++ openjdk/hotspot/src/share/vm/compiler/abstractCompiler.hpp	2009-06-10 18:04:13.000000000 +0100
 @@ -45,18 +45,26 @@
    // Missing feature tests
    virtual bool supports_native()                 { return true; }
@@ -204,8 +207,8 @@
  
    // Customization
 diff -Nru openjdk.orig/hotspot/src/share/vm/compiler/compileBroker.cpp openjdk/hotspot/src/share/vm/compiler/compileBroker.cpp
---- openjdk.orig/hotspot/src/share/vm/compiler/compileBroker.cpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/compiler/compileBroker.cpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/compiler/compileBroker.cpp	2009-03-30 17:15:27.000000000 +0100
++++ openjdk/hotspot/src/share/vm/compiler/compileBroker.cpp	2009-06-10 18:04:13.000000000 +0100
 @@ -554,6 +554,14 @@
  #endif
  #endif // COMPILER2
@@ -222,8 +225,8 @@
    _task_free_list = NULL;
  
 diff -Nru openjdk.orig/hotspot/src/share/vm/memory/cardTableModRefBS.hpp openjdk/hotspot/src/share/vm/memory/cardTableModRefBS.hpp
---- openjdk.orig/hotspot/src/share/vm/memory/cardTableModRefBS.hpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/memory/cardTableModRefBS.hpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/memory/cardTableModRefBS.hpp	2009-03-30 23:08:41.000000000 +0100
++++ openjdk/hotspot/src/share/vm/memory/cardTableModRefBS.hpp	2009-06-10 18:04:13.000000000 +0100
 @@ -44,6 +44,7 @@
    friend class VMStructs;
    friend class CardTableRS;
@@ -233,8 +236,8 @@
    // For debugging.
    friend class GuaranteeNotModClosure;
 diff -Nru openjdk.orig/hotspot/src/share/vm/oops/methodOop.cpp openjdk/hotspot/src/share/vm/oops/methodOop.cpp
---- openjdk.orig/hotspot/src/share/vm/oops/methodOop.cpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/oops/methodOop.cpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/oops/methodOop.cpp	2009-05-08 17:40:29.000000000 +0100
++++ openjdk/hotspot/src/share/vm/oops/methodOop.cpp	2009-06-10 18:04:13.000000000 +0100
 @@ -738,10 +738,14 @@
    }
  
@@ -251,8 +254,8 @@
  }
  
 diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/deoptimization.cpp openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp
---- openjdk.orig/hotspot/src/share/vm/runtime/deoptimization.cpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/runtime/deoptimization.cpp	2009-03-30 17:15:28.000000000 +0100
++++ openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp	2009-06-10 18:04:13.000000000 +0100
 @@ -229,6 +229,7 @@
  
    }
@@ -328,8 +331,8 @@
 -#endif // COMPILER2
 +#endif // COMPILER2 || SHARK
 diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/globals.cpp openjdk/hotspot/src/share/vm/runtime/globals.cpp
---- openjdk.orig/hotspot/src/share/vm/runtime/globals.cpp	2009-05-14 18:57:58.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/runtime/globals.cpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/runtime/globals.cpp	2009-03-30 17:15:28.000000000 +0100
++++ openjdk/hotspot/src/share/vm/runtime/globals.cpp	2009-06-10 18:04:13.000000000 +0100
 @@ -176,6 +176,18 @@
    #define C2_NOTPRODUCT_FLAG_STRUCT(type, name, value, doc) { #type, XSTR(name), &name, "{C2 notproduct}", DEFAULT },
  #endif
@@ -360,8 +363,8 @@
  };
  
 diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/globals.hpp openjdk/hotspot/src/share/vm/runtime/globals.hpp
---- openjdk.orig/hotspot/src/share/vm/runtime/globals.hpp	2009-05-19 01:11:05.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/runtime/globals.hpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/runtime/globals.hpp	2009-06-10 17:54:59.000000000 +0100
++++ openjdk/hotspot/src/share/vm/runtime/globals.hpp	2009-06-10 18:04:13.000000000 +0100
 @@ -22,7 +22,7 @@
   *
   */
@@ -372,8 +375,8 @@
  define_pd_global(bool, UseTLAB,                      false);
  define_pd_global(bool, CICompileOSR,                 false);
 diff -Nru openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp openjdk/hotspot/src/share/vm/runtime/vm_version.cpp
---- openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp	2009-05-19 01:11:05.000000000 +0100
-+++ openjdk/hotspot/src/share/vm/runtime/vm_version.cpp	2009-05-19 16:07:37.000000000 +0100
+--- openjdk.orig/hotspot/src/share/vm/runtime/vm_version.cpp	2009-06-10 17:54:59.000000000 +0100
++++ openjdk/hotspot/src/share/vm/runtime/vm_version.cpp	2009-06-10 18:04:13.000000000 +0100
 @@ -94,6 +94,9 @@
  #ifdef TIERED
    #define VMTYPE "Server"