Mercurial > hg > truffle
diff src/share/vm/code/scopeDesc.hpp @ 3018:5857923e563c
Fixed an issue with frame states in exception dispatch chains (now we are correctly rethrowing the exception immediately at entering the interpreter).
author | Thomas Wuerthinger <thomas@wuerthinger.net> |
---|---|
date | Sat, 18 Jun 2011 19:13:55 +0200 |
parents | f95d63e2154a |
children | e522a00b91aa |
line wrap: on
line diff
--- a/src/share/vm/code/scopeDesc.hpp Sat Jun 18 14:51:18 2011 +0200 +++ b/src/share/vm/code/scopeDesc.hpp Sat Jun 18 19:13:55 2011 +0200 @@ -60,17 +60,18 @@ class ScopeDesc : public ResourceObj { public: // Constructor - ScopeDesc(const nmethod* code, int decode_offset, int obj_decode_offset, bool reexecute, bool return_oop); + ScopeDesc(const nmethod* code, int decode_offset, int obj_decode_offset, bool reexecute, bool rethrow_exception, bool return_oop); // Calls above, giving default value of "serialized_null" to the // "obj_decode_offset" argument. (We don't use a default argument to // avoid a .hpp-.hpp dependency.) - ScopeDesc(const nmethod* code, int decode_offset, bool reexecute, bool return_oop); + ScopeDesc(const nmethod* code, int decode_offset, bool reexecute, bool rethrow_exception, bool return_oop); // JVM state methodHandle method() const { return _method; } int bci() const { return _bci; } bool should_reexecute() const { return _reexecute; } + bool rethrow_exception() const { return _rethrow_exception; } bool return_oop() const { return _return_oop; } GrowableArray<ScopeValue*>* locals(); @@ -97,6 +98,7 @@ methodHandle _method; int _bci; bool _reexecute; + bool _rethrow_exception; bool _return_oop; // Decoding offsets