< prev index next >

src/hotspot/share/memory/allocation.inline.hpp

Print this page
rev 49243 : 8199698: Change 8199275 breaks template instantiation for xlC (and potentially other compliers)

@@ -76,54 +76,67 @@
 inline void FreeHeap(void* p) {
   os::free(p);
 }
 
 
-template <MEMFLAGS F> void* CHeapObj<F>::operator new(size_t size,
-      const NativeCallStack& stack) throw() {
+template <MEMFLAGS F>
+NOINLINE
+void* CHeapObj<F>::operator new(size_t size, const NativeCallStack& stack) throw() {
   return (void*)AllocateHeap(size, F, stack);
 }
 
-template <MEMFLAGS F> void* CHeapObj<F>::operator new(size_t size) throw() {
+template <MEMFLAGS F>
+NOINLINE
+void* CHeapObj<F>::operator new(size_t size) throw() {
   return CHeapObj<F>::operator new(size, CALLER_PC);
 }
 
-template <MEMFLAGS F> void* CHeapObj<F>::operator new (size_t size,
-      const std::nothrow_t&  nothrow_constant, const NativeCallStack& stack) throw() {
+template <MEMFLAGS F>
+NOINLINE
+void* CHeapObj<F>::operator new (size_t size, const std::nothrow_t&,
+                                 const NativeCallStack& stack) throw() {
   return (void*)AllocateHeap(size, F, stack, AllocFailStrategy::RETURN_NULL);
 }
 
-template <MEMFLAGS F> void* CHeapObj<F>::operator new (size_t size,
-  const std::nothrow_t& nothrow_constant) throw() {
+template <MEMFLAGS F>
+NOINLINE
+void* CHeapObj<F>::operator new (size_t size, const std::nothrow_t& nothrow_constant) throw() {
   return CHeapObj<F>::operator new(size, nothrow_constant, CALLER_PC);
 }
 
-template <MEMFLAGS F> void* CHeapObj<F>::operator new [](size_t size,
-      const NativeCallStack& stack) throw() {
+template <MEMFLAGS F>
+NOINLINE
+void* CHeapObj<F>::operator new [](size_t size, const NativeCallStack& stack) throw() {
   return CHeapObj<F>::operator new(size, stack);
 }
 
-template <MEMFLAGS F> void* CHeapObj<F>::operator new [](size_t size)
-  throw() {
+template <MEMFLAGS F>
+NOINLINE
+void* CHeapObj<F>::operator new [](size_t size) throw() {
   return CHeapObj<F>::operator new(size, CALLER_PC);
 }
 
-template <MEMFLAGS F> void* CHeapObj<F>::operator new [](size_t size,
-  const std::nothrow_t&  nothrow_constant, const NativeCallStack& stack) throw() {
+template <MEMFLAGS F>
+NOINLINE
+void* CHeapObj<F>::operator new [](size_t size, const std::nothrow_t&  nothrow_constant,
+                                   const NativeCallStack& stack) throw() {
   return CHeapObj<F>::operator new(size, nothrow_constant, stack);
 }
 
-template <MEMFLAGS F> void* CHeapObj<F>::operator new [](size_t size,
+template <MEMFLAGS F>
+NOINLINE void* CHeapObj<F>::operator new [](size_t size,
   const std::nothrow_t& nothrow_constant) throw() {
   return CHeapObj<F>::operator new(size, nothrow_constant, CALLER_PC);
 }
 
-template <MEMFLAGS F> void CHeapObj<F>::operator delete(void* p){
+template <MEMFLAGS F>
+void CHeapObj<F>::operator delete(void* p){
     FreeHeap(p);
 }
 
-template <MEMFLAGS F> void CHeapObj<F>::operator delete [](void* p){
+template <MEMFLAGS F>
+void CHeapObj<F>::operator delete [](void* p){
     FreeHeap(p);
 }
 
 template <class E>
 size_t MmapArrayAllocator<E>::size_for(size_t length) {
< prev index next >