Mercurial > hg > truffle
comparison src/share/vm/classfile/javaClasses.hpp @ 7185:90273fc0a981
8000662: NPG: nashorn ant clean test262 out-of-memory with Java heap
Summary: Add ClassLoaderData object for each anonymous class with metaspaces to allocate in.
Reviewed-by: twisti, jrose, stefank
author | coleenp |
---|---|
date | Thu, 29 Nov 2012 16:50:29 -0500 |
parents | 80e866b1d053 |
children | 291ffc492eb6 2aa953165ade 35431a769282 |
comparison
equal
deleted
inserted
replaced
7181:2fc0334f613a | 7185:90273fc0a981 |
---|---|
1123 | 1123 |
1124 | 1124 |
1125 // Interface to java.lang.ClassLoader objects | 1125 // Interface to java.lang.ClassLoader objects |
1126 | 1126 |
1127 #define CLASSLOADER_INJECTED_FIELDS(macro) \ | 1127 #define CLASSLOADER_INJECTED_FIELDS(macro) \ |
1128 macro(java_lang_ClassLoader, loader_data, intptr_signature, false) \ | 1128 macro(java_lang_ClassLoader, loader_data, intptr_signature, false) |
1129 macro(java_lang_ClassLoader, dependencies, object_signature, false) | |
1130 | 1129 |
1131 class java_lang_ClassLoader : AllStatic { | 1130 class java_lang_ClassLoader : AllStatic { |
1132 private: | 1131 private: |
1133 // The fake offsets are added by the class loader when java.lang.Class is loaded | 1132 // The fake offsets are added by the class loader when java.lang.Class is loaded |
1134 enum { | 1133 enum { |
1135 hc_parent_offset = 0 | 1134 hc_parent_offset = 0 |
1136 }; | 1135 }; |
1137 static int _loader_data_offset; | 1136 static int _loader_data_offset; |
1138 static int _dependencies_offset; | |
1139 static bool offsets_computed; | 1137 static bool offsets_computed; |
1140 static int parent_offset; | 1138 static int parent_offset; |
1141 static int parallelCapable_offset; | 1139 static int parallelCapable_offset; |
1142 | 1140 |
1143 public: | 1141 public: |
1144 static void compute_offsets(); | 1142 static void compute_offsets(); |
1145 | 1143 |
1146 static ClassLoaderData** loader_data_addr(oop loader); | 1144 static ClassLoaderData** loader_data_addr(oop loader); |
1147 static ClassLoaderData* loader_data(oop loader); | 1145 static ClassLoaderData* loader_data(oop loader); |
1148 | |
1149 static oop dependencies(oop loader); | |
1150 static HeapWord* dependencies_addr(oop loader); | |
1151 | 1146 |
1152 static oop parent(oop loader); | 1147 static oop parent(oop loader); |
1153 static bool isAncestor(oop loader, oop cl); | 1148 static bool isAncestor(oop loader, oop cl); |
1154 | 1149 |
1155 // Support for parallelCapable field | 1150 // Support for parallelCapable field |