# HG changeset patch # User jprovino # Date 1373986548 14400 # Node ID 16b10327b00d40e2eb1bec58800c94078ba61fc8 # Parent d0add7016434b4ff4f61f377a5a970aac50363f5 8011569: ARM -- avoid native stack walking Summary: ARM compilers do not emit FramePointer on each native frame by default Reviewed-by: dholmes, zgu diff -r d0add7016434 -r 16b10327b00d make/linux/makefiles/vm.make --- a/make/linux/makefiles/vm.make Fri Jun 07 09:33:01 2013 -0700 +++ b/make/linux/makefiles/vm.make Tue Jul 16 10:55:48 2013 -0400 @@ -46,6 +46,7 @@ include $(MAKEFILES_DIR)/zeroshark.make else include $(MAKEFILES_DIR)/$(BUILDARCH).make + -include $(HS_ALT_MAKE)/$(Platform_os_family)/makefiles/$(BUILDARCH).make endif # set VPATH so make knows where to look for source files @@ -384,4 +385,4 @@ install: install_jvm install_jsig install_saproc -.PHONY: default build install install_jvm +.PHONY: default build install install_jvm $(HS_ALT_MAKE)/$(Platform_os_family)/makefiles/$(BUILDARCH).make diff -r d0add7016434 -r 16b10327b00d src/share/vm/services/memTracker.cpp --- a/src/share/vm/services/memTracker.cpp Fri Jun 07 09:33:01 2013 -0700 +++ b/src/share/vm/services/memTracker.cpp Tue Jul 16 10:55:48 2013 -0400 @@ -80,13 +80,13 @@ } else if (strcmp(option_line, "=detail") == 0) { // detail relies on a stack-walking ability that may not // be available depending on platform and/or compiler flags - if (PLATFORM_NMT_DETAIL_SUPPORTED) { +#if PLATFORM_NATIVE_STACK_WALKING_SUPPORTED _tracking_level = NMT_detail; - } else { +#else jio_fprintf(defaultStream::error_stream(), - "NMT detail is not supported on this platform. Using NMT summary instead."); + "NMT detail is not supported on this platform. Using NMT summary instead.\n"); _tracking_level = NMT_summary; - } +#endif } else if (strcmp(option_line, "=off") != 0) { vm_exit_during_initialization("Syntax error, expecting -XX:NativeMemoryTracking=[off|summary|detail]", NULL); } diff -r d0add7016434 -r 16b10327b00d src/share/vm/utilities/globalDefinitions.hpp --- a/src/share/vm/utilities/globalDefinitions.hpp Fri Jun 07 09:33:01 2013 -0700 +++ b/src/share/vm/utilities/globalDefinitions.hpp Tue Jul 16 10:55:48 2013 -0400 @@ -381,12 +381,12 @@ #endif /* - * If a platform does not support NMT_detail + * If a platform does not support native stack walking * the platform specific globalDefinitions (above) - * can set PLATFORM_NMT_DETAIL_SUPPORTED to false + * can set PLATFORM_NATIVE_STACK_WALKING_SUPPORTED to 0 */ -#ifndef PLATFORM_NMT_DETAIL_SUPPORTED -#define PLATFORM_NMT_DETAIL_SUPPORTED true +#ifndef PLATFORM_NATIVE_STACK_WALKING_SUPPORTED +#define PLATFORM_NATIVE_STACK_WALKING_SUPPORTED 1 #endif // The byte alignment to be used by Arena::Amalloc. See bugid 4169348.