Mercurial > hg > graal-compiler
comparison src/share/vm/memory/restore.cpp @ 6197:d2a62e0f25eb
6995781: Native Memory Tracking (Phase 1)
7151532: DCmd for hotspot native memory tracking
Summary: Implementation of native memory tracking phase 1, which tracks VM native memory usage, and related DCmd
Reviewed-by: acorn, coleenp, fparain
author | zgu |
---|---|
date | Thu, 28 Jun 2012 17:03:16 -0400 |
parents | 1d1603768966 |
children |
comparison
equal
deleted
inserted
replaced
6174:74533f63b116 | 6197:d2a62e0f25eb |
---|---|
130 | 130 |
131 int symbolTableLen = *(intptr_t*)buffer; | 131 int symbolTableLen = *(intptr_t*)buffer; |
132 buffer += sizeof(intptr_t); | 132 buffer += sizeof(intptr_t); |
133 int number_of_entries = *(intptr_t*)buffer; | 133 int number_of_entries = *(intptr_t*)buffer; |
134 buffer += sizeof(intptr_t); | 134 buffer += sizeof(intptr_t); |
135 SymbolTable::create_table((HashtableBucket*)buffer, symbolTableLen, | 135 SymbolTable::create_table((HashtableBucket<mtSymbol>*)buffer, symbolTableLen, |
136 number_of_entries); | 136 number_of_entries); |
137 buffer += symbolTableLen; | 137 buffer += symbolTableLen; |
138 | 138 |
139 // Create the string table using the bucket array at this spot in the | 139 // Create the string table using the bucket array at this spot in the |
140 // misc data space. Since the string table is often modified, this | 140 // misc data space. Since the string table is often modified, this |
142 | 142 |
143 int stringTableLen = *(intptr_t*)buffer; | 143 int stringTableLen = *(intptr_t*)buffer; |
144 buffer += sizeof(intptr_t); | 144 buffer += sizeof(intptr_t); |
145 number_of_entries = *(intptr_t*)buffer; | 145 number_of_entries = *(intptr_t*)buffer; |
146 buffer += sizeof(intptr_t); | 146 buffer += sizeof(intptr_t); |
147 StringTable::create_table((HashtableBucket*)buffer, stringTableLen, | 147 StringTable::create_table((HashtableBucket<mtSymbol>*)buffer, stringTableLen, |
148 number_of_entries); | 148 number_of_entries); |
149 buffer += stringTableLen; | 149 buffer += stringTableLen; |
150 | 150 |
151 // Create the shared dictionary using the bucket array at this spot in | 151 // Create the shared dictionary using the bucket array at this spot in |
152 // the misc data space. Since the shared dictionary table is never | 152 // the misc data space. Since the shared dictionary table is never |
155 | 155 |
156 int sharedDictionaryLen = *(intptr_t*)buffer; | 156 int sharedDictionaryLen = *(intptr_t*)buffer; |
157 buffer += sizeof(intptr_t); | 157 buffer += sizeof(intptr_t); |
158 number_of_entries = *(intptr_t*)buffer; | 158 number_of_entries = *(intptr_t*)buffer; |
159 buffer += sizeof(intptr_t); | 159 buffer += sizeof(intptr_t); |
160 SystemDictionary::set_shared_dictionary((HashtableBucket*)buffer, | 160 SystemDictionary::set_shared_dictionary((HashtableBucket<mtClass>*)buffer, |
161 sharedDictionaryLen, | 161 sharedDictionaryLen, |
162 number_of_entries); | 162 number_of_entries); |
163 buffer += sharedDictionaryLen; | 163 buffer += sharedDictionaryLen; |
164 | 164 |
165 // Create the package info table using the bucket array at this spot in | 165 // Create the package info table using the bucket array at this spot in |
169 | 169 |
170 int pkgInfoLen = *(intptr_t*)buffer; | 170 int pkgInfoLen = *(intptr_t*)buffer; |
171 buffer += sizeof(intptr_t); | 171 buffer += sizeof(intptr_t); |
172 number_of_entries = *(intptr_t*)buffer; | 172 number_of_entries = *(intptr_t*)buffer; |
173 buffer += sizeof(intptr_t); | 173 buffer += sizeof(intptr_t); |
174 ClassLoader::create_package_info_table((HashtableBucket*)buffer, pkgInfoLen, | 174 ClassLoader::create_package_info_table((HashtableBucket<mtClass>*)buffer, pkgInfoLen, |
175 number_of_entries); | 175 number_of_entries); |
176 buffer += pkgInfoLen; | 176 buffer += pkgInfoLen; |
177 ClassLoader::verify(); | 177 ClassLoader::verify(); |
178 | 178 |
179 // The following data in the shared misc data region are the linked | 179 // The following data in the shared misc data region are the linked |