comparison src/share/vm/code/debugInfoRec.hpp @ 6948:e522a00b91aa

Merge with http://hg.openjdk.java.net/hsx/hsx25/hotspot/ after NPG - C++ build works
author Doug Simon <doug.simon@oracle.com>
date Mon, 12 Nov 2012 23:14:12 +0100
parents 51111665eda6 da91efe96a93
children b6a8f2d23057
comparison
equal deleted inserted replaced
6711:ae13cc658b80 6948:e522a00b91aa
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