You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by pk...@apache.org on 2022/01/20 15:01:00 UTC

[incubator-nuttx] 03/03: board: Remove -fno-omit-frame-pointer from Make.defs

This is an automated email from the ASF dual-hosted git repository.

pkarashchenko pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-nuttx.git

commit 04297c3ca3c24f749ba8752bd6d2d0c0c4b8576c
Author: Xiang Xiao <xi...@xiaomi.com>
AuthorDate: Thu Jan 20 01:51:55 2022 +0800

    board: Remove -fno-omit-frame-pointer from Make.defs
    
    except sim arch, since this flag is set inside Toolschain.defs now
    
    Signed-off-by: Xiang Xiao <xi...@xiaomi.com>
---
 Documentation/guides/cpp_cmake.rst               |  2 +-
 arch/sparc/src/sparc_v8/Toolchain.defs           |  6 ++++++
 boards/risc-v/bl602/bl602evb/scripts/Make.defs   |  4 ++--
 boards/risc-v/c906/smartl-c906/scripts/Make.defs |  2 +-
 boards/risc-v/mpfs/icicle/scripts/Make.defs      |  2 +-
 boards/risc-v/mpfs/m100pfsevp/scripts/Make.defs  |  2 +-
 boards/sim/sim/sim/scripts/Make.defs             | 25 ++++++++++++++++++------
 boards/sparc/bm3803/xx3803/scripts/Make.defs     |  2 +-
 boards/sparc/bm3823/xx3823/scripts/Make.defs     |  2 +-
 9 files changed, 33 insertions(+), 14 deletions(-)

diff --git a/Documentation/guides/cpp_cmake.rst b/Documentation/guides/cpp_cmake.rst
index 6540dc3..498f5ed 100644
--- a/Documentation/guides/cpp_cmake.rst
+++ b/Documentation/guides/cpp_cmake.rst
@@ -88,7 +88,7 @@ Creating the project
 
     include(cmake/stm32f4discovery.cmake)
 
-    set(AC_COMMON_FLAGS "${AC_COMMON_FLAGS} -fno-builtin -Wall -Wshadow -Wundef -fno-strict-aliasing -fomit-frame-pointer -Os")
+    set(AC_COMMON_FLAGS "${AC_COMMON_FLAGS} -fno-builtin -Wall -Wshadow -Wundef -fno-strict-aliasing -Os")
     set(AC_COMMON_FLAGS "${AC_COMMON_FLAGS} -D_DEBUG -D_LIBCPP_BUILD_STATIC -D_LIBCPP_NO_EXCEPTIONS ")
     set(AC_COMMON_FLAGS "${AC_COMMON_FLAGS} -fno-exceptions -fcheck-new -fno-rtti -pedantic ")
     set(AC_COMMON_FLAGS "${AC_COMMON_FLAGS} -nostdinc++")
diff --git a/arch/sparc/src/sparc_v8/Toolchain.defs b/arch/sparc/src/sparc_v8/Toolchain.defs
index 2a8328f..8e1b0e1 100644
--- a/arch/sparc/src/sparc_v8/Toolchain.defs
+++ b/arch/sparc/src/sparc_v8/Toolchain.defs
@@ -78,3 +78,9 @@ ifeq ($(CONFIG_SPARC_TOOLCHAIN),CODEREDW)
   LDFLAGS += -nostartfiles -nodefaultlibs
   LDSCRIPT = sparc-elf-debug.ld
 endif
+
+ifeq ($(CONFIG_FRAME_POINTER),y)
+  MAXOPTIMIZATION += -fno-omit-frame-pointer -fno-optimize-sibling-calls
+else
+  MAXOPTIMIZATION += -fomit-frame-pointer
+endif
diff --git a/boards/risc-v/bl602/bl602evb/scripts/Make.defs b/boards/risc-v/bl602/bl602evb/scripts/Make.defs
index a9cbe45..8feefe1 100644
--- a/boards/risc-v/bl602/bl602evb/scripts/Make.defs
+++ b/boards/risc-v/bl602/bl602evb/scripts/Make.defs
@@ -45,8 +45,8 @@ ifneq ($(CONFIG_DEBUG_NOOPT),y)
 endif
 
 ARCHCPUFLAGS += -mno-relax
-ARCHCFLAGS = -fno-builtin -ffunction-sections -fdata-sections -fno-omit-frame-pointer
-ARCHCXXFLAGS = -fno-builtin -ffunction-sections -fdata-sections -fno-omit-frame-pointer -fno-exceptions -fcheck-new -std=c++17 -D__NuttX__ -pipe -nostdinc++
+ARCHCFLAGS = -fno-builtin -ffunction-sections -fdata-sections
+ARCHCXXFLAGS = -fno-builtin -ffunction-sections -fdata-sections -fno-exceptions -fcheck-new -std=c++17 -D__NuttX__ -pipe -nostdinc++
 ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef
 ARCHWARNINGSXX = -Wall -Wshadow -Wundef
 ARCHPICFLAGS = -fpic -msingle-pic-base -mpic-register=r10
diff --git a/boards/risc-v/c906/smartl-c906/scripts/Make.defs b/boards/risc-v/c906/smartl-c906/scripts/Make.defs
index 7595d3f..a880b48 100644
--- a/boards/risc-v/c906/smartl-c906/scripts/Make.defs
+++ b/boards/risc-v/c906/smartl-c906/scripts/Make.defs
@@ -52,7 +52,7 @@ endif
 
 ARCHCPUFLAGS += -mcmodel=medany
 
-ARCHCFLAGS = -fno-builtin -ffunction-sections -fdata-sections -fno-omit-frame-pointer
+ARCHCFLAGS = -fno-builtin -ffunction-sections -fdata-sections
 ARCHCXXFLAGS = -fno-builtin -fno-exceptions -fcheck-new -fno-rtti
 ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef
 ARCHWARNINGSXX = -Wall -Wshadow -Wundef
diff --git a/boards/risc-v/mpfs/icicle/scripts/Make.defs b/boards/risc-v/mpfs/icicle/scripts/Make.defs
index 753d150..26f1cc3 100755
--- a/boards/risc-v/mpfs/icicle/scripts/Make.defs
+++ b/boards/risc-v/mpfs/icicle/scripts/Make.defs
@@ -57,7 +57,7 @@ endif
 
 ARCHCPUFLAGS += -mcmodel=medany
 
-ARCHCFLAGS = -fno-builtin -ffunction-sections -fdata-sections -fno-omit-frame-pointer
+ARCHCFLAGS = -fno-builtin -ffunction-sections -fdata-sections
 ARCHCXXFLAGS = -fno-builtin -fno-exceptions -fcheck-new -fno-rtti
 ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef
 ARCHWARNINGSXX = -Wall -Wshadow -Wundef
diff --git a/boards/risc-v/mpfs/m100pfsevp/scripts/Make.defs b/boards/risc-v/mpfs/m100pfsevp/scripts/Make.defs
index c46616e..8d53ea6 100755
--- a/boards/risc-v/mpfs/m100pfsevp/scripts/Make.defs
+++ b/boards/risc-v/mpfs/m100pfsevp/scripts/Make.defs
@@ -52,7 +52,7 @@ endif
 
 ARCHCPUFLAGS += -mcmodel=medany
 
-ARCHCFLAGS = -fno-builtin -ffunction-sections -fdata-sections -fno-omit-frame-pointer
+ARCHCFLAGS = -fno-builtin -ffunction-sections -fdata-sections
 ARCHCXXFLAGS = -fno-builtin -fno-exceptions -fcheck-new -fno-rtti
 ARCHWARNINGS = -Wall -Wstrict-prototypes -Wshadow -Wundef
 ARCHWARNINGSXX = -Wall -Wshadow -Wundef
diff --git a/boards/sim/sim/sim/scripts/Make.defs b/boards/sim/sim/sim/scripts/Make.defs
index 1044649..8606a3c 100644
--- a/boards/sim/sim/sim/scripts/Make.defs
+++ b/boards/sim/sim/sim/scripts/Make.defs
@@ -134,16 +134,24 @@ ifeq ($(CONFIG_LIBCXX),y)
 endif
 
 ifeq ($(CONFIG_SIM_ASAN),y)
-  CFLAGS += -fsanitize=address -fno-omit-frame-pointer
-  CXXFLAGS += -fsanitize=address -fno-omit-frame-pointer
+  CFLAGS += -fsanitize=address
+  CXXFLAGS += -fsanitize=address
 else ifeq ($(CONFIG_MM_KASAN),y)
   CFLAGS += -fsanitize=kernel-address
   CXXFLAGS += -fsanitize=kernel-address
 endif
 
 ifeq ($(CONFIG_SIM_UBSAN),y)
-  CFLAGS += -fsanitize=undefined -fno-omit-frame-pointer
-  CXXFLAGS += -fsanitize=undefined -fno-omit-frame-pointer
+  CFLAGS += -fsanitize=undefined
+  CXXFLAGS += -fsanitize=undefined
+endif
+
+ifeq ($(CONFIG_FRAME_POINTER),y)
+  CFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
+  CXXFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
+else
+  CFLAGS += -fomit-frame-pointer
+  CXXFLAGS += -fomit-frame-pointer
 endif
 
 # Loadable module definitions
@@ -210,15 +218,20 @@ ifeq ($(CONFIG_SIM_M32),y)
 endif
 
 ifeq ($(CONFIG_SIM_ASAN),y)
-  CCLINKFLAGS += -fsanitize=address -fno-omit-frame-pointer
+  CCLINKFLAGS += -fsanitize=address
 else ifeq ($(CONFIG_MM_KASAN),y)
   CCLINKFLAGS += -fsanitize=kernel-address
 endif
 
 ifeq ($(CONFIG_SIM_UBSAN),y)
-  CCLINKFLAGS += -fsanitize=undefined -fno-omit-frame-pointer
+  CCLINKFLAGS += -fsanitize=undefined
 endif
 
+ifeq ($(CONFIG_FRAME_POINTER),y)
+  CCLINKFLAGS += -fno-omit-frame-pointer -fno-optimize-sibling-calls
+else
+  CCLINKFLAGS += -fomit-frame-pointer
+endif
 
 HOSTCFLAGS = $(ARCHWARNINGS) $(ARCHOPTIMIZATION) \
    $(ARCHCPUFLAGS) $(HOSTINCLUDES) $(EXTRAFLAGS) -D__SIM__ -pipe
diff --git a/boards/sparc/bm3803/xx3803/scripts/Make.defs b/boards/sparc/bm3803/xx3803/scripts/Make.defs
index 7f5f3e0..dcff774 100644
--- a/boards/sparc/bm3803/xx3803/scripts/Make.defs
+++ b/boards/sparc/bm3803/xx3803/scripts/Make.defs
@@ -55,7 +55,7 @@ ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
 endif
 
 ifneq ($(CONFIG_DEBUG_NOOPT),y)
-  ARCHOPTIMIZATION += $(MAXOPTIMIZATION) -fno-strict-aliasing -fomit-frame-pointer
+  ARCHOPTIMIZATION += $(MAXOPTIMIZATION) -fno-strict-aliasing
 endif
 
 # ARCHOPTIMIZATION += -fno-zero-initialized-in-bss
diff --git a/boards/sparc/bm3823/xx3823/scripts/Make.defs b/boards/sparc/bm3823/xx3823/scripts/Make.defs
index 68b8a52..b48393d 100644
--- a/boards/sparc/bm3823/xx3823/scripts/Make.defs
+++ b/boards/sparc/bm3823/xx3823/scripts/Make.defs
@@ -55,7 +55,7 @@ ifeq ($(CONFIG_DEBUG_SYMBOLS),y)
 endif
 
 ifneq ($(CONFIG_DEBUG_NOOPT),y)
-  ARCHOPTIMIZATION += $(MAXOPTIMIZATION) -fno-strict-aliasing -fomit-frame-pointer
+  ARCHOPTIMIZATION += $(MAXOPTIMIZATION) -fno-strict-aliasing
 endif
 
 # ARCHOPTIMIZATION += -fno-zero-initialized-in-bss