comparison src/share/vm/code/debugInfoRec.hpp @ 7066:7d815d842ee0

Merge.
author Christian Haeubl <haeubl@ssw.jku.at>
date Fri, 23 Nov 2012 11:50:27 +0100
parents e522a00b91aa
children b6a8f2d23057
comparison
equal deleted inserted replaced
7065:cfacf5d5bade 7066:7d815d842ee0
1 /* 1 /*
2 * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. 2 * Copyright (c) 1998, 2012, Oracle and/or its affiliates. All rights reserved.
3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. 3 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4 * 4 *
5 * This code is free software; you can redistribute it and/or modify it 5 * This code is free software; you can redistribute it and/or modify it
6 * under the terms of the GNU General Public License version 2 only, as 6 * under the terms of the GNU General Public License version 2 only, as
7 * published by the Free Software Foundation. 7 * published by the Free Software Foundation.
54 // "repeat last four steps for all scopes" 54 // "repeat last four steps for all scopes"
55 // "outer most scope first and inner most scope last" 55 // "outer most scope first and inner most scope last"
56 // NB: nodes from create_scope_values and create_locations 56 // NB: nodes from create_scope_values and create_locations
57 // can be reused for simple sharing. 57 // can be reused for simple sharing.
58 // - mark the end of the scopes (end_safepoint or end_non_safepoint) 58 // - mark the end of the scopes (end_safepoint or end_non_safepoint)
59 // 2) Use oop_size, data_size, pcs_size to create the nmethod and 59 // 2) Use oop_size, metadata_size, data_size, pcs_size to create the nmethod
60 // finally migrate the debugging information into the nmethod 60 // and finally migrate the debugging information into the nmethod
61 // by calling copy_to. 61 // by calling copy_to.
62 62
63 class DebugToken; // Opaque datatype for stored: 63 class DebugToken; // Opaque datatype for stored:
64 // - GrowableArray<ScopeValue*> 64 // - GrowableArray<ScopeValue*>
65 // - GrowableArray<MonitorValue*> 65 // - GrowableArray<MonitorValue*>
123 123
124 // returns the size of the generated scopeDescs. 124 // returns the size of the generated scopeDescs.
125 int data_size(); 125 int data_size();
126 int pcs_size(); 126 int pcs_size();
127 int oop_size() { return oop_recorder()->oop_size(); } 127 int oop_size() { return oop_recorder()->oop_size(); }
128 int metadata_size() { return oop_recorder()->metadata_size(); }
128 129
129 // copy the generated debugging information to nmethod 130 // copy the generated debugging information to nmethod
130 void copy_to(nmethod* nm); 131 void copy_to(nmethod* nm);
131 132
132 // verifies the debug information 133 // verifies the debug information
193 194
194 int serialize_monitor_values(GrowableArray<MonitorValue*>* monitors); 195 int serialize_monitor_values(GrowableArray<MonitorValue*>* monitors);
195 int serialize_scope_values(GrowableArray<ScopeValue*>* values); 196 int serialize_scope_values(GrowableArray<ScopeValue*>* values);
196 int find_sharable_decode_offset(int stream_offset); 197 int find_sharable_decode_offset(int stream_offset);
197 198
199 #ifndef PRODUCT
200 bool recorders_frozen();
201 void mark_recorders_frozen();
202 #endif // PRODUCT
203
198 public: 204 public:
199 enum { serialized_null = 0 }; 205 enum { serialized_null = 0 };
200 }; 206 };
201 207
202 #endif // SHARE_VM_CODE_DEBUGINFOREC_HPP 208 #endif // SHARE_VM_CODE_DEBUGINFOREC_HPP