comparison src/share/vm/code/codeCache.hpp @ 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 6c97c830fb6f
children da91efe96a93
comparison
equal deleted inserted replaced
6174:74533f63b116 6197:d2a62e0f25eb
86 static nmethod* find_nmethod(void* start); 86 static nmethod* find_nmethod(void* start);
87 87
88 // Lookup that does not fail if you lookup a zombie method (if you call this, be sure to know 88 // Lookup that does not fail if you lookup a zombie method (if you call this, be sure to know
89 // what you are doing) 89 // what you are doing)
90 static CodeBlob* find_blob_unsafe(void* start) { 90 static CodeBlob* find_blob_unsafe(void* start) {
91 // NMT can walk the stack before code cache is created
92 if (_heap == NULL) return NULL;
93
91 CodeBlob* result = (CodeBlob*)_heap->find_start(start); 94 CodeBlob* result = (CodeBlob*)_heap->find_start(start);
92 // this assert is too strong because the heap code will return the 95 // this assert is too strong because the heap code will return the
93 // heapblock containing start. That block can often be larger than 96 // heapblock containing start. That block can often be larger than
94 // the codeBlob itself. If you look up an address that is within 97 // the codeBlob itself. If you look up an address that is within
95 // the heapblock but not in the codeBlob you will assert. 98 // the heapblock but not in the codeBlob you will assert.