Mercurial > hg > truffle
comparison src/share/vm/runtime/synchronizer.cpp @ 10130:6f817ce50129
8010992: Remove calls to global ::operator new[] and new
Summary: disable use of global operator new and new[] which could cause unexpected exception and escape from NMT tracking.
Reviewed-by: coleenp, dholmes, zgu
Contributed-by: yumin.qi@oracle.com
author | minqi |
---|---|
date | Fri, 19 Apr 2013 11:08:52 -0700 |
parents | cc32ccaaf47f |
children | 5a9fa2ba85f0 |
comparison
equal
deleted
inserted
replaced
10129:7815eaceaa8c | 10130:6f817ce50129 |
---|---|
1010 | 1010 |
1011 // 3: allocate a block of new ObjectMonitors | 1011 // 3: allocate a block of new ObjectMonitors |
1012 // Both the local and global free lists are empty -- resort to malloc(). | 1012 // Both the local and global free lists are empty -- resort to malloc(). |
1013 // In the current implementation objectMonitors are TSM - immortal. | 1013 // In the current implementation objectMonitors are TSM - immortal. |
1014 assert (_BLOCKSIZE > 1, "invariant") ; | 1014 assert (_BLOCKSIZE > 1, "invariant") ; |
1015 ObjectMonitor * temp = new ObjectMonitor[_BLOCKSIZE]; | 1015 ObjectMonitor * temp; |
1016 NEW_C_HEAP_OBJECT_ARRAY(temp, ObjectMonitor, _BLOCKSIZE, mtInternal, 0, AllocFailStrategy::RETURN_NULL); | |
1016 | 1017 |
1017 // NOTE: (almost) no way to recover if allocation failed. | 1018 // NOTE: (almost) no way to recover if allocation failed. |
1018 // We might be able to induce a STW safepoint and scavenge enough | 1019 // We might be able to induce a STW safepoint and scavenge enough |
1019 // objectMonitors to permit progress. | 1020 // objectMonitors to permit progress. |
1020 if (temp == NULL) { | 1021 if (temp == NULL) { |