是否可以禁用GHS编译器的所有类型的优化? 我有一个问题,无法在调试器(Lauterbach)中看到局部变量。 使得无法理解正在调试的问题(在瑞萨RH850上)。
使用的当前标志是
CFLAGS = -g -G -dual_debug -D_BUILD_SWDEV_=1 -D_BUILD_SWPRO_
CFLAGS += -g -c -dwarf2
CFLAGS += -cpu=rh850g3k -fsoft -ignore_callt_state_in_interrupts -misalign_pack -no_callt -Osize
CFLAGS += -prepare_dispose -registermode=32 -reserve_r2 -shorten_loads -sda=all -Wshadow -Wundef --no_commons --prototype_errors --short_enum
CFLAGS += -large_sda -Ospace -inline_prologue
CFLAGS += -bsp generic
如果在函数中将变量设置为static,情况将保持不变。
谢谢。
答案 0 :(得分:0)
根据FrodeTennebo在此线程https://stackoverflow.com/a/41370425
#pragma ghs ZO
禁用从下一个功能开始的所有优化。
如果要编译器标志
-Onone
将全局禁用所有优化。