< prev index next >
src/hotspot/share/code/scopeDesc.cpp
Print this page
rev 53033 : imported patch at_scope
@@ -49,20 +49,28 @@
_return_oop = return_oop;
decode_body();
}
-ScopeDesc::ScopeDesc(const ScopeDesc* parent) {
+void ScopeDesc::initialize(const ScopeDesc* parent, int decode_offset) {
_code = parent->_code;
- _decode_offset = parent->_sender_decode_offset;
+ _decode_offset = decode_offset;
_objects = parent->_objects;
_reexecute = false; //reexecute only applies to the first scope
_rethrow_exception = false;
_return_oop = false;
decode_body();
}
+ScopeDesc::ScopeDesc(const ScopeDesc* parent) {
+ initialize(parent, parent->_sender_decode_offset);
+}
+
+ScopeDesc::ScopeDesc(const ScopeDesc* parent, int decode_offset) {
+ initialize(parent, decode_offset);
+}
+
void ScopeDesc::decode_body() {
if (decode_offset() == DebugInformationRecorder::serialized_null) {
// This is a sentinel record, which is only relevant to
// approximate queries. Decode a reasonable frame.
< prev index next >