Mercurial > hg > truffle
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. |