msSanitizer工具使用 "--cce-enable-sanitizer -g" 编译算子时出现 "InputSection too large" 错误
2025/04/30
16
问题信息
问题来源 | 产品大类 | 产品子类 | 关键字 |
---|---|---|---|
官方 | MindStudio | - | InputSection too large、msSanitizer |
问题现象描述
报错ld.lld: error: InputSection too large for range extension thunk。
原因分析
算子链接时输入代码段过大,超过编译器支持的指令跳转范围。
解决措施
通过增加编译选项,启用编译器扩大跳转范围的特性来解决。在算子代码编译选项 "--cce-enable-sanitizer -g" 后增加 "-Xaicore-start -mcmodel=large -mllvm -cce-aicore-relax -Xaicore-end"。
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 )