Mercurial > hg > icedtea7
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"