105 #endif |
105 #endif |
106 |
106 |
107 } |
107 } |
108 |
108 |
109 // Allocate word_size words from Metaspace. |
109 // Allocate word_size words from Metaspace. |
110 MetaWord* ClassLoaderMetaspace::allocate(size_t word_size, MetadataType mdType) { |
110 MetaWord* ClassLoaderMetaspace::allocate(size_t word_size, Metaspace::MetadataType mdType) { |
111 Metaspace::assert_not_frozen(); |
111 Metaspace::assert_not_frozen(); |
112 if (use_class_space(mdType)) { |
112 if (use_class_space(mdType)) { |
113 return class_space_manager()->allocate(word_size); |
113 return class_space_manager()->allocate(word_size); |
114 } else { |
114 } else { |
115 return non_class_space_manager()->allocate(word_size); |
115 return non_class_space_manager()->allocate(word_size); |
116 } |
116 } |
117 } |
117 } |
118 |
118 |
119 // Attempt to expand the GC threshold to be good for at least another word_size words |
119 // Attempt to expand the GC threshold to be good for at least another word_size words |
120 // and allocate. Returns NULL if failure. Used during Metaspace GC. |
120 // and allocate. Returns NULL if failure. Used during Metaspace GC. |
121 MetaWord* ClassLoaderMetaspace::expand_and_allocate(size_t word_size, MetadataType mdType) { |
121 MetaWord* ClassLoaderMetaspace::expand_and_allocate(size_t word_size, Metaspace::MetadataType mdType) { |
122 Metaspace::assert_not_frozen(); |
122 Metaspace::assert_not_frozen(); |
123 size_t delta_bytes = MetaspaceGC::delta_capacity_until_GC(word_size * BytesPerWord); |
123 size_t delta_bytes = MetaspaceGC::delta_capacity_until_GC(word_size * BytesPerWord); |
124 assert(delta_bytes > 0, "Must be"); |
124 assert(delta_bytes > 0, "Must be"); |
125 |
125 |
126 size_t before = 0; |
126 size_t before = 0; |