器件型号: F29H859TU-Q1
您好:
我正在使用 C29 Clang 编译器、我正在寻找在代码中创建屏障的理想方法、指令编译器不要将屏障前面的代码与屏障后面的代码混合。
此功能非常有用、例如、能够测量某些代码的持续时间(以保证我们正在测量所需的内容)。
我听说过不同的解决方案、但我不确定它们的稳健性:
-
__ builtin_instrumentation_label()
- ASM Volatile (““)
- asm volatile(““:::“memory“)
因此、请提供我们所使用的解决方案、并希望此解决方案在当前版本的编译器 (2.2.0 LTS) 上的限制、但将来可能会有哪些限制(从全球范围来看,保证内容及不保证内容)。
谢谢你