Mercurial > hg > truffle
comparison src/share/vm/oops/instanceKlass.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 | 71afdabfd05b |
children | 04ade88d9712 |
comparison
equal
deleted
inserted
replaced
6174:74533f63b116 | 6197:d2a62e0f25eb |
---|---|
1006 } | 1006 } |
1007 } | 1007 } |
1008 | 1008 |
1009 | 1009 |
1010 /* JNIid class for jfieldIDs only */ | 1010 /* JNIid class for jfieldIDs only */ |
1011 class JNIid: public CHeapObj { | 1011 class JNIid: public CHeapObj<mtClass> { |
1012 friend class VMStructs; | 1012 friend class VMStructs; |
1013 private: | 1013 private: |
1014 klassOop _holder; | 1014 klassOop _holder; |
1015 JNIid* _next; | 1015 JNIid* _next; |
1016 int _offset; | 1016 int _offset; |
1057 // the information so that the information may be collected as needed | 1057 // the information so that the information may be collected as needed |
1058 // by the system. If the information is shared, then a regular | 1058 // by the system. If the information is shared, then a regular |
1059 // reference must be used because a weak reference would be seen as | 1059 // reference must be used because a weak reference would be seen as |
1060 // collectible. A GrowableArray of PreviousVersionNodes is attached | 1060 // collectible. A GrowableArray of PreviousVersionNodes is attached |
1061 // to the instanceKlass as needed. See PreviousVersionWalker below. | 1061 // to the instanceKlass as needed. See PreviousVersionWalker below. |
1062 class PreviousVersionNode : public CHeapObj { | 1062 class PreviousVersionNode : public CHeapObj<mtClass> { |
1063 private: | 1063 private: |
1064 // A shared ConstantPool is never collected so we'll always have | 1064 // A shared ConstantPool is never collected so we'll always have |
1065 // a reference to it so we can update items in the cache. We'll | 1065 // a reference to it so we can update items in the cache. We'll |
1066 // have a weak reference to a non-shared ConstantPool until all | 1066 // have a weak reference to a non-shared ConstantPool until all |
1067 // of the methods (EMCP or obsolete) have been collected; the | 1067 // of the methods (EMCP or obsolete) have been collected; the |
1152 // recording the method, a count of how many times a particular nmethod | 1152 // recording the method, a count of how many times a particular nmethod |
1153 // was recorded is kept. This ensures that any recording errors are | 1153 // was recorded is kept. This ensures that any recording errors are |
1154 // noticed since an nmethod should be removed as many times are it's | 1154 // noticed since an nmethod should be removed as many times are it's |
1155 // added. | 1155 // added. |
1156 // | 1156 // |
1157 class nmethodBucket: public CHeapObj { | 1157 class nmethodBucket: public CHeapObj<mtClass> { |
1158 friend class VMStructs; | 1158 friend class VMStructs; |
1159 private: | 1159 private: |
1160 nmethod* _nmethod; | 1160 nmethod* _nmethod; |
1161 int _count; | 1161 int _count; |
1162 nmethodBucket* _next; | 1162 nmethodBucket* _next; |