toolchain: detect use of large stack variables
partition/fs_gpt.c:384:5: warning: stack usage might be 288 bytes [-Wstack-usage=] 384 | int parse_gpt_partition(FAR struct partition_state_s *state, Signed-off-by: yinshengkai <yinshengkai@xiaomi.com>
This commit is contained in:
parent
d3bca3c2cf
commit
88f3bc77f1
7
Kconfig
7
Kconfig
@ -2073,6 +2073,13 @@ config STACK_USAGE
|
|||||||
on a per-function basis. Please use https://github.com/HBehrens/puncover
|
on a per-function basis. Please use https://github.com/HBehrens/puncover
|
||||||
or tools/showstack.sh to generate the more useful report.
|
or tools/showstack.sh to generate the more useful report.
|
||||||
|
|
||||||
|
config STACK_USAGE_WARNING
|
||||||
|
int "Detect use of large stack variables"
|
||||||
|
default 0
|
||||||
|
help
|
||||||
|
Set the stack warning threshold, if the stack usage exceeds the
|
||||||
|
threshold, a warning will be generated
|
||||||
|
|
||||||
config ARCH_HAVE_HEAPCHECK
|
config ARCH_HAVE_HEAPCHECK
|
||||||
bool
|
bool
|
||||||
default n
|
default n
|
||||||
|
@ -58,6 +58,10 @@ ifeq ($(CONFIG_STACK_USAGE),y)
|
|||||||
ARCHOPTIMIZATION += -fstack-usage
|
ARCHOPTIMIZATION += -fstack-usage
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(CONFIG_STACK_USAGE_WARNING),0)
|
||||||
|
ARCHOPTIMIZATION += -Wstack-usage=$(CONFIG_STACK_USAGE_WARNING)
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
||||||
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
||||||
endif
|
endif
|
||||||
|
@ -69,6 +69,10 @@ ifeq ($(CONFIG_STACK_USAGE),y)
|
|||||||
ARCHOPTIMIZATION += -fstack-usage
|
ARCHOPTIMIZATION += -fstack-usage
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(CONFIG_STACK_USAGE_WARNING),0)
|
||||||
|
ARCHOPTIMIZATION += -Wstack-usage=$(CONFIG_STACK_USAGE_WARNING)
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
||||||
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
||||||
endif
|
endif
|
||||||
|
@ -65,6 +65,10 @@ if(CONFIG_STACK_USAGE)
|
|||||||
add_compile_options(-fstack-usage)
|
add_compile_options(-fstack-usage)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if(CONFIG_STACK_USAGE_WARNING)
|
||||||
|
add_compile_options(-Wstack-usage=${CONFIG_STACK_USAGE_WARNING})
|
||||||
|
endif()
|
||||||
|
|
||||||
if(CONFIG_ARCH_COVERAGE)
|
if(CONFIG_ARCH_COVERAGE)
|
||||||
add_compile_options(-fprofile-generate -ftest-coverage)
|
add_compile_options(-fprofile-generate -ftest-coverage)
|
||||||
endif()
|
endif()
|
||||||
|
@ -79,6 +79,10 @@ ifeq ($(CONFIG_STACK_USAGE),y)
|
|||||||
ARCHOPTIMIZATION += -fstack-usage
|
ARCHOPTIMIZATION += -fstack-usage
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(CONFIG_STACK_USAGE_WARNING),0)
|
||||||
|
ARCHOPTIMIZATION += -Wstack-usage=$(CONFIG_STACK_USAGE_WARNING)
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
||||||
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
||||||
endif
|
endif
|
||||||
|
@ -79,6 +79,10 @@ ifeq ($(CONFIG_STACK_USAGE),y)
|
|||||||
ARCHOPTIMIZATION += -fstack-usage
|
ARCHOPTIMIZATION += -fstack-usage
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(CONFIG_STACK_USAGE_WARNING),0)
|
||||||
|
ARCHOPTIMIZATION += -Wstack-usage=$(CONFIG_STACK_USAGE_WARNING)
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
||||||
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
||||||
endif
|
endif
|
||||||
|
@ -68,6 +68,10 @@ ifeq ($(CONFIG_STACK_USAGE),y)
|
|||||||
ARCHOPTIMIZATION += -fstack-usage
|
ARCHOPTIMIZATION += -fstack-usage
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifneq ($(CONFIG_STACK_USAGE_WARNING),0)
|
||||||
|
ARCHOPTIMIZATION += -Wstack-usage=$(CONFIG_STACK_USAGE_WARNING)
|
||||||
|
endif
|
||||||
|
|
||||||
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
ifeq ($(CONFIG_ARCH_COVERAGE_ALL),y)
|
||||||
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
ARCHOPTIMIZATION += -fprofile-generate -ftest-coverage
|
||||||
endif
|
endif
|
||||||
|
Loading…
Reference in New Issue
Block a user