Mercurial > hg > truffle
changeset 646:039a914095f4
6772368: REGRESSION:tomcat crashed twice with JDK 7
Summary: Call make_block_at() with the original handler limits.
Reviewed-by: never
author | kvn |
---|---|
date | Wed, 18 Mar 2009 13:25:02 -0700 |
parents | c3a720eefe82 |
children | bd441136a5ce |
files | src/share/vm/ci/ciMethodBlocks.cpp |
diffstat | 1 files changed, 5 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/src/share/vm/ci/ciMethodBlocks.cpp Mon Mar 16 15:06:33 2009 -0700 +++ b/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); } }