Mercurial > hg > truffle
diff src/share/vm/ci/ciMethodBlocks.hpp @ 26:0871d5cd64cd
6621084: ciMethodBlocks::split_block_at() is broken for methods with exception handler
Summary: After an exception handler block is split the exception information is not moved to the new block which starts in exception handler BCI.
Reviewed-by: jrose
author | kvn |
---|---|
date | Thu, 21 Feb 2008 14:03:41 -0800 |
parents | a61af66fc99e |
children | d1605aabd0a1 |
line wrap: on
line diff
--- a/src/share/vm/ci/ciMethodBlocks.hpp Wed Feb 20 17:23:43 2008 -0800 +++ b/src/share/vm/ci/ciMethodBlocks.hpp Thu Feb 21 14:03:41 2008 -0800 @@ -110,9 +110,10 @@ void set_does_jsr() { _flags |= DoesJsr; } void clear_does_jsr() { _flags &= ~DoesJsr; } void set_does_ret() { _flags |= DoesRet; } - void clear_does_ret() { _flags |= DoesRet; } + void clear_does_ret() { _flags &= ~DoesRet; } void set_is_ret_target() { _flags |= RetTarget; } void set_has_handler() { _flags |= HasHandler; } + void clear_exception_handler() { _flags &= ~Handler; _ex_start_bci = -1; _ex_limit_bci = -1; } #ifndef PRODUCT ciMethod *method() const { return _method; } void dump();