6772368: REGRESSION:tomcat crashed twice with JDK 7
authorkvn
Wed, 18 Mar 2009 13:25:02 -0700
changeset 2258 020bda12ecd4
parent 2257 d8e6e11e7f32
child 2259 d3c946e7f127
6772368: REGRESSION:tomcat crashed twice with JDK 7 Summary: Call make_block_at() with the original handler limits. Reviewed-by: never
hotspot/src/share/vm/ci/ciMethodBlocks.cpp
--- a/hotspot/src/share/vm/ci/ciMethodBlocks.cpp	Mon Mar 16 15:06:33 2009 -0700
+++ b/hotspot/src/share/vm/ci/ciMethodBlocks.cpp	Wed Mar 18 13:25:02 2009 -0700
@@ -284,6 +284,11 @@
       //
       int ex_start = handler->start();
       int ex_end = handler->limit();
+      // ensure a block at the start of exception range and start of following code
+      (void) make_block_at(ex_start);
+      if (ex_end < _code_size)
+        (void) make_block_at(ex_end);
+
       if (eb->is_handler()) {
         // Extend old handler exception range to cover additional range.
         int old_ex_start = eb->ex_start_bci();
@@ -295,10 +300,6 @@
         eb->clear_exception_handler(); // Reset exception information
       }
       eb->set_exception_range(ex_start, ex_end);
-      // ensure a block at the start of exception range and start of following code
-      (void) make_block_at(ex_start);
-      if (ex_end < _code_size)
-        (void) make_block_at(ex_end);
     }
   }