< prev index next >

src/hotspot/share/memory/allocation.hpp

Print this page

167 const bool NMT_track_callsite = false;
168 
169 #endif // INCLUDE_NMT
170 
171 class NativeCallStack;
172 
173 
174 char* AllocateHeap(size_t size,
175                    MEMFLAGS flags,
176                    const NativeCallStack& stack,
177                    AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
178 char* AllocateHeap(size_t size,
179                    MEMFLAGS flags,
180                    AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
181 
182 char* ReallocateHeap(char *old,
183                      size_t size,
184                      MEMFLAGS flag,
185                      AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
186 

187 void FreeHeap(void* p);
188 
189 template <MEMFLAGS F> class CHeapObj ALLOCATION_SUPER_CLASS_SPEC {
190  public:
191   ALWAYSINLINE void* operator new(size_t size) throw() {
192     return (void*)AllocateHeap(size, F);
193   }
194 
195   ALWAYSINLINE void* operator new(size_t size,
196                                   const NativeCallStack& stack) throw() {
197     return (void*)AllocateHeap(size, F, stack);
198   }
199 
200   ALWAYSINLINE void* operator new(size_t size, const std::nothrow_t&,
201                                   const NativeCallStack& stack) throw() {
202     return (void*)AllocateHeap(size, F, stack, AllocFailStrategy::RETURN_NULL);
203   }
204 
205   ALWAYSINLINE void* operator new(size_t size, const std::nothrow_t&) throw() {
206     return (void*)AllocateHeap(size, F, AllocFailStrategy::RETURN_NULL);

167 const bool NMT_track_callsite = false;
168 
169 #endif // INCLUDE_NMT
170 
171 class NativeCallStack;
172 
173 
174 char* AllocateHeap(size_t size,
175                    MEMFLAGS flags,
176                    const NativeCallStack& stack,
177                    AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
178 char* AllocateHeap(size_t size,
179                    MEMFLAGS flags,
180                    AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
181 
182 char* ReallocateHeap(char *old,
183                      size_t size,
184                      MEMFLAGS flag,
185                      AllocFailType alloc_failmode = AllocFailStrategy::EXIT_OOM);
186 
187 // handles NULL pointers
188 void FreeHeap(void* p);
189 
190 template <MEMFLAGS F> class CHeapObj ALLOCATION_SUPER_CLASS_SPEC {
191  public:
192   ALWAYSINLINE void* operator new(size_t size) throw() {
193     return (void*)AllocateHeap(size, F);
194   }
195 
196   ALWAYSINLINE void* operator new(size_t size,
197                                   const NativeCallStack& stack) throw() {
198     return (void*)AllocateHeap(size, F, stack);
199   }
200 
201   ALWAYSINLINE void* operator new(size_t size, const std::nothrow_t&,
202                                   const NativeCallStack& stack) throw() {
203     return (void*)AllocateHeap(size, F, stack, AllocFailStrategy::RETURN_NULL);
204   }
205 
206   ALWAYSINLINE void* operator new(size_t size, const std::nothrow_t&) throw() {
207     return (void*)AllocateHeap(size, F, AllocFailStrategy::RETURN_NULL);
< prev index next >