< prev index next >
test/runtime/NMT/CheckForProperDetailStackTrace.java
Print this page
rev 11986 : 8165315: [ppc] Port "8133749: NMT detail stack trace cleanup"
Summary: Also add methods to check for slow/fastdebug to Platform.java.
Reviewed-by: simonis, cjplummer, dholmes
*** 55,69 ****
/* A symbol that should always be present in NMT detail output. */
private static String expectedSymbol =
"locked_create_entry_or_null";
- private static final String jdkDebug = System.getProperty("jdk.debug");
- private static boolean isSlowDebugBuild() {
- return (jdkDebug.toLowerCase().equals("slowdebug"));
- }
-
public static void main(String args[]) throws Exception {
ProcessBuilder pb = ProcessTools.createJavaProcessBuilder(
"-XX:+UnlockDiagnosticVMOptions",
"-XX:NativeMemoryTracking=detail",
"-XX:+PrintNMTStatistics",
--- 55,64 ----
*** 74,88 ****
// We should never see either of these frames because they are supposed to be skipped. */
output.shouldNotContain("NativeCallStack::NativeCallStack");
output.shouldNotContain("os::get_native_stack");
! // AllocateHeap shouldn't be in the output because it is suppose to always be inlined.
! // We check for that here, but allow it for Windows and Solaris slowdebug builds because
! // the compiler ends up not inlining AllocateHeap.
Boolean okToHaveAllocateHeap =
! isSlowDebugBuild() && (Platform.isSolaris() || Platform.isWindows());
if (!okToHaveAllocateHeap) {
output.shouldNotContain("AllocateHeap");
}
// See if we have any stack trace symbols in the output
--- 69,84 ----
// We should never see either of these frames because they are supposed to be skipped. */
output.shouldNotContain("NativeCallStack::NativeCallStack");
output.shouldNotContain("os::get_native_stack");
! // AllocateHeap shouldn't be in the output because it is supposed to always be inlined.
! // We check for that here, but allow it for Aix, Solaris and Windows slowdebug builds
! // because the compiler ends up not inlining AllocateHeap.
Boolean okToHaveAllocateHeap =
! Platform.isSlowDebugBuild() &&
! (Platform.isAix() || Platform.isSolaris() || Platform.isWindows());
if (!okToHaveAllocateHeap) {
output.shouldNotContain("AllocateHeap");
}
// See if we have any stack trace symbols in the output
< prev index next >