团队、
我们是否有关于编译器正在生成的 Cret 指令的任何详细信息? 似乎是一个导致分支(b)指令的伪指令。 但我找不到任何关于克雷特的描述。 我的一位客户正在进行安全认证、他们需要记录/认证所有生成的代码。 因此,重要的是要知道 Cret 是否总是产生一个分支.
例如、对于 以下 C 代码、编译器生成使用 Cret 调用 some_func_...的汇编代码:
void f(void)
{
if(glob_var_1_boolean)
{
some_func_1();
}
else
{
some_func_2();
}
}
客户正在使用具有以下选项的 TI ARM C/C++编译器 v20.2.1.LTS:
--abi=eabi --arm_vmrs_si_workaround=off --code_state=16 --diag_wrap =off --embedded_constants=on --endian=big --float_support=VFPv3D16 --hll_source=on --object_format=elf --silicon_version=7R5 --symdebug:dwarf=unaligned_version=on------dwarmodebug_dwarf_version=on-unaligned_access
谢谢。
罗伯特