src/share/vm/ci/ciMethodBlocks.cpp

changeset 1081
039a914095f4
parent 802
194b8e3a2fc4
child 1279
bd02caa94611
     1.1 --- a/src/share/vm/ci/ciMethodBlocks.cpp	Mon Mar 16 15:06:33 2009 -0700
     1.2 +++ b/src/share/vm/ci/ciMethodBlocks.cpp	Wed Mar 18 13:25:02 2009 -0700
     1.3 @@ -284,6 +284,11 @@
     1.4        //
     1.5        int ex_start = handler->start();
     1.6        int ex_end = handler->limit();
     1.7 +      // ensure a block at the start of exception range and start of following code
     1.8 +      (void) make_block_at(ex_start);
     1.9 +      if (ex_end < _code_size)
    1.10 +        (void) make_block_at(ex_end);
    1.11 +
    1.12        if (eb->is_handler()) {
    1.13          // Extend old handler exception range to cover additional range.
    1.14          int old_ex_start = eb->ex_start_bci();
    1.15 @@ -295,10 +300,6 @@
    1.16          eb->clear_exception_handler(); // Reset exception information
    1.17        }
    1.18        eb->set_exception_range(ex_start, ex_end);
    1.19 -      // ensure a block at the start of exception range and start of following code
    1.20 -      (void) make_block_at(ex_start);
    1.21 -      if (ex_end < _code_size)
    1.22 -        (void) make_block_at(ex_end);
    1.23      }
    1.24    }
    1.25  

mercurial