hotspot/src/share/vm/ci/ciMethodBlocks.cpp
changeset 2258 020bda12ecd4
parent 1399 9648dfd4ce09
child 3261 c7d5aae8d3f7
--- 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);
     }
   }