equal
deleted
inserted
replaced
1 /* |
1 /* |
2 * Copyright (c) 1997, 2012, Oracle and/or its affiliates. All rights reserved. |
2 * Copyright (c) 1997, 2013, 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. |
99 class CheckedExceptionElement; |
99 class CheckedExceptionElement; |
100 class LocalVariableTableElement; |
100 class LocalVariableTableElement; |
101 class AdapterHandlerEntry; |
101 class AdapterHandlerEntry; |
102 class MethodData; |
102 class MethodData; |
103 class ConstMethod; |
103 class ConstMethod; |
|
104 class KlassSizeStats; |
104 |
105 |
105 class Method : public Metadata { |
106 class Method : public Metadata { |
106 friend class VMStructs; |
107 friend class VMStructs; |
107 private: |
108 private: |
108 ConstMethod* _constMethod; // Method read-only data. |
109 ConstMethod* _constMethod; // Method read-only data. |
591 |
592 |
592 // sizing |
593 // sizing |
593 static int header_size() { return sizeof(Method)/HeapWordSize; } |
594 static int header_size() { return sizeof(Method)/HeapWordSize; } |
594 static int size(bool is_native); |
595 static int size(bool is_native); |
595 int size() const { return method_size(); } |
596 int size() const { return method_size(); } |
|
597 #if INCLUDE_SERVICES |
|
598 void collect_statistics(KlassSizeStats *sz) const; |
|
599 #endif |
596 |
600 |
597 // interpreter support |
601 // interpreter support |
598 static ByteSize const_offset() { return byte_offset_of(Method, _constMethod ); } |
602 static ByteSize const_offset() { return byte_offset_of(Method, _constMethod ); } |
599 static ByteSize access_flags_offset() { return byte_offset_of(Method, _access_flags ); } |
603 static ByteSize access_flags_offset() { return byte_offset_of(Method, _access_flags ); } |
600 #ifdef CC_INTERP |
604 #ifdef CC_INTERP |