changeset 1147:77b03084ebd0

2008-10-23 Gary Benson <gbenson@redhat.com> PR icedtea/204: * ports/hotspot/src/share/vm/shark/sharkState.cpp (SharkPHIState::initialize): Fix return address initialization. * ports/hotspot/src/share/vm/shark/sharkBlock.hpp (SharkBlock::jsr_ret_bci): Removed now-unnecessary code. * patches/icedtea-shark.patch (openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp): Likewise.
author Gary Benson <gbenson@redhat.com>
date Thu, 23 Oct 2008 04:58:23 -0400
parents 5d129b358a4f
children 0fafece1a73c
files ChangeLog patches/icedtea-shark.patch ports/hotspot/src/share/vm/shark/sharkBlock.hpp ports/hotspot/src/share/vm/shark/sharkState.cpp
diffstat 4 files changed, 14 insertions(+), 43 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Wed Oct 22 19:37:18 2008 +0200
+++ b/ChangeLog	Thu Oct 23 04:58:23 2008 -0400
@@ -1,3 +1,13 @@
+2008-10-23  Gary Benson  <gbenson@redhat.com>
+
+	PR icedtea/204:
+	* ports/hotspot/src/share/vm/shark/sharkState.cpp
+	(SharkPHIState::initialize): Fix return address initialization.
+	* ports/hotspot/src/share/vm/shark/sharkBlock.hpp
+	(SharkBlock::jsr_ret_bci): Removed now-unnecessary code.
+	* patches/icedtea-shark.patch
+	(openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp): Likewise.
+
 2008-10-22  Matthias Klose  <doko@ubuntu.com>
 
         * Makefile.am: Revert the previous change. Always pass DISTRIBUTION_ID
--- a/patches/icedtea-shark.patch	Wed Oct 22 19:37:18 2008 +0200
+++ b/patches/icedtea-shark.patch	Thu Oct 23 04:58:23 2008 -0400
@@ -303,41 +303,6 @@
  }
  
  
-diff -r 70711eb56d8e openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp
---- openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp	Mon Sep 29 08:47:58 2008 +0100
-+++ openjdk/hotspot/src/share/vm/ci/ciTypeFlow.hpp	Mon Sep 29 08:51:58 2008 +0100
-@@ -94,9 +94,17 @@ public:
-   private:
-     GrowableArray<JsrRecord*>* _set;
- 
-+#ifdef SHARK
-+    // XXX This can be removed if it turns out we have to deal
-+    // with T_ADDRESS values the same as everything else.
-+  public:
-+#endif // SHARK
-     JsrRecord* record_at(int i) {
-       return _set->at(i);
-     }
-+#ifdef SHARK
-+  private:
-+#endif // SHARK
- 
-     // Insert the given JsrRecord into the JsrSet, maintaining the order
-     // of the set and replacing any element with the same entry address.
-@@ -515,6 +523,13 @@ public:
-     ciType* local_type_at(int i) const { return _state->local_type_at(i); }
-     ciType* stack_type_at(int i) const { return _state->stack_type_at(i); }
- 
-+    // access to the JSRs
-+#ifdef SHARK
-+    // XXX This can be removed if it turns out we have to deal
-+    // with T_ADDRESS values the same as everything else.
-+    JsrSet* jsrset() const { return _jsrs; }
-+#endif // SHARK
-+    
-     // Get the successors for this Block.
-     GrowableArray<Block*>* successors(ciBytecodeStream* str,
- 				      StateVector* state,
 diff -r 70711eb56d8e openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp
 --- openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp	Mon Sep 29 08:47:58 2008 +0100
 +++ openjdk/hotspot/src/share/vm/runtime/deoptimization.cpp	Mon Sep 29 08:54:36 2008 +0100
--- a/ports/hotspot/src/share/vm/shark/sharkBlock.hpp	Wed Oct 22 19:37:18 2008 +0200
+++ b/ports/hotspot/src/share/vm/shark/sharkBlock.hpp	Thu Oct 23 04:58:23 2008 -0400
@@ -128,12 +128,6 @@
   {
     return function()->block(ciblock()->successors()->at(index)->pre_order());
   }
-  int jsr_ret_bci() const
-  {
-    int jsr_level = ciblock()->jsrset()->size();
-    assert(jsr_level > 0, "should be");
-    return ciblock()->jsrset()->record_at(jsr_level - 1)->return_address();
-  }
   SharkBlock* bci_successor(int bci) const;
 
   // Bytecode stream
--- a/ports/hotspot/src/share/vm/shark/sharkState.cpp	Wed Oct 22 19:37:18 2008 +0200
+++ b/ports/hotspot/src/share/vm/shark/sharkState.cpp	Thu Oct 23 04:58:23 2008 -0400
@@ -129,7 +129,8 @@
       break;
 
     case T_ADDRESS:
-      value = SharkValue::create_returnAddress(block()->jsr_ret_bci());
+      value = SharkValue::create_returnAddress(
+        type->as_return_address()->bci());
       break;
 
     case ciTypeFlow::StateVector::T_BOTTOM:
@@ -167,7 +168,8 @@
       break;
 
     case T_ADDRESS:
-      value = SharkValue::create_returnAddress(block()->jsr_ret_bci());
+      value = SharkValue::create_returnAddress(
+        type->as_return_address()->bci());
       break;
 
     case ciTypeFlow::StateVector::T_LONG2: