昇腾社区首页
中文
注册

msSanitizer工具使用"--cce-enable-sanitizer -g"编译算子时出现"InputSection too large"错误

现象描述

报错ld.lld: error: InputSection too large for range extension thunk。

原因分析

算子链接时输入代码段过大,超过编译器支持的指令跳转范围。

解决措施

通过增加编译选项,启用编译器扩大跳转范围的特性来解决。在算子代码编译选项"--cce-enable-sanitizer -g"后增加"-Xaicore-start -mcmodel=large -mllvm -cce-aicore-relax -Xaicore-end"。

1
2
3
4
5
6
7
target_compile_options(${smoke_testcase}_npu PRIVATE
                     -O2
                     -std=c++17
                     --cce-enable-sanitizer
                     -g 
                     -Xaicore-start -mcmodel=large -mllvm -cce-aicore-relax -Xaicore-end
)