From ab98bdcd07b6e21c1e9284fd6e8fed3b4f94d03c Mon Sep 17 00:00:00 2001 From: sgehwolf Date: Thu, 12 Jul 2018 16:28:31 +0200 Subject: [PATCH] 8207057: No debug info for assembler files Summary: Generate debug info for assembler files as needed. Reviewed-by: erikj --- make/autoconf/flags-cflags.m4 | 7 +++++++ make/autoconf/spec.gmk.in | 1 + make/common/NativeCompilation.gmk | 4 +++- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/make/autoconf/flags-cflags.m4 b/make/autoconf/flags-cflags.m4 index 2f79a08ee7..b66a42ca19 100644 --- a/make/autoconf/flags-cflags.m4 +++ b/make/autoconf/flags-cflags.m4 @@ -106,11 +106,17 @@ AC_DEFUN([FLAGS_SETUP_SHARED_LIBS], AC_DEFUN([FLAGS_SETUP_DEBUG_SYMBOLS], [ + # By default don't set any specific assembler debug + # info flags for toolchains unless we know they work. + # See JDK-8207057. + ASFLAGS_DEBUG_SYMBOLS="" # Debug symbols if test "x$TOOLCHAIN_TYPE" = xgcc; then CFLAGS_DEBUG_SYMBOLS="-g" + ASFLAGS_DEBUG_SYMBOLS="-g" elif test "x$TOOLCHAIN_TYPE" = xclang; then CFLAGS_DEBUG_SYMBOLS="-g" + ASFLAGS_DEBUG_SYMBOLS="-g" elif test "x$TOOLCHAIN_TYPE" = xsolstudio; then # -g0 enables debug symbols without disabling inlining. CFLAGS_DEBUG_SYMBOLS="-g0 -xs" @@ -121,6 +127,7 @@ AC_DEFUN([FLAGS_SETUP_DEBUG_SYMBOLS], fi AC_SUBST(CFLAGS_DEBUG_SYMBOLS) + AC_SUBST(ASFLAGS_DEBUG_SYMBOLS) ]) AC_DEFUN([FLAGS_SETUP_WARNINGS], diff --git a/make/autoconf/spec.gmk.in b/make/autoconf/spec.gmk.in index c08bec0824..3d5385a6a9 100644 --- a/make/autoconf/spec.gmk.in +++ b/make/autoconf/spec.gmk.in @@ -534,6 +534,7 @@ COPY_DEBUG_SYMBOLS := @COPY_DEBUG_SYMBOLS@ ZIP_EXTERNAL_DEBUG_SYMBOLS := @ZIP_EXTERNAL_DEBUG_SYMBOLS@ CFLAGS_DEBUG_SYMBOLS:=@CFLAGS_DEBUG_SYMBOLS@ +ASFLAGS_DEBUG_SYMBOLS:=@ASFLAGS_DEBUG_SYMBOLS@ # # Compress (or not) jars diff --git a/make/common/NativeCompilation.gmk b/make/common/NativeCompilation.gmk index 6fd5ed5a61..467c26bd1b 100644 --- a/make/common/NativeCompilation.gmk +++ b/make/common/NativeCompilation.gmk @@ -251,6 +251,7 @@ define SetupCompileNativeFileBody $$($$($1_BASE)_SYSROOT_CFLAGS) $1_BASE_CXXFLAGS := $$($$($1_BASE)_CXXFLAGS) $$($$($1_BASE)_EXTRA_CXXFLAGS) \ $$($$($1_BASE)_SYSROOT_CFLAGS) $$($1_EXTRA_CXXFLAGS) + $1_BASE_ASFLAGS := $$($$($1_BASE)_ASFLAGS) $$($$($1_BASE)_EXTRA_ASFLAGS) ifneq ($$(filter %.c, $$($1_FILENAME)), ) # Compile as a C file @@ -266,7 +267,7 @@ define SetupCompileNativeFileBody $1_DEP_FLAG := $(C_FLAG_DEPS) else ifneq ($$(filter %.s %.S, $$($1_FILENAME)), ) # Compile as assembler file - $1_FLAGS := $$($$($1_BASE)_ASFLAGS) + $1_FLAGS := $$($1_BASE_ASFLAGS) $1_COMPILER := $(AS) $1_DEP_FLAG := else ifneq ($$(filter %.cpp %.cc %.mm, $$($1_FILENAME)), ) @@ -576,6 +577,7 @@ define SetupNativeCompilationBody ifeq ($(COMPILE_WITH_DEBUG_SYMBOLS), true) $1_EXTRA_CFLAGS += $$(CFLAGS_DEBUG_SYMBOLS) $1_EXTRA_CXXFLAGS += $$(CFLAGS_DEBUG_SYMBOLS) + $1_EXTRA_ASFLAGS += $$(ASFLAGS_DEBUG_SYMBOLS) endif ifneq ($$($1_REORDER), ) -- GitLab