ZHCU876Z July 2001 – October 2023 SM320F28335-EP
在 FPU 目标上,使用 --opt_level=2,优化器进行依赖性分析。为了帮助编译器确定内存器依赖关系,可以使用 restrict 关键字限定指针、引用或数组。restrict 关键字是一种类型限定符,可以应用于指针、引用和数组。关键字的使用代表程序员的保证:在指针声明的范围内,所指向的对象只能由该指针访问。任何违反此保证的行为都会导致程序未定义。这种做法可以帮助编译器优化某些代码段,因为这样可以更加轻松地确定别名信息。由于更多的 FPU 运算可以被并行化,因此可以提高性能和增加代码大小。
如Example3-1 和Example3-2 所示,可以使用 restrict 关键字通知编译器:a 和 b 永远不会指向 foo 中的同一个对象。此外,还会向编译器保证 a 和 b 所指向的对象在内存中不会重叠。