是否有任何编译器标志来强制签名整数溢出的不确定行为



我正在编写一个需要超快的图形算法。是否有任何编译器标志来强制签名的整数溢出,例如c?还是其他任何旗帜迫使更多不确定的行为?如果没有,有人是否对速度差进行了基准测试?

Rust中的整数溢出永远不会触发未定义的行为,与C相反。在调试模式下编译时,算术操作检查溢出和恐慌,但在发布模式下没有检查。可以通过将标志-C overflow-checks=yes传递给rustc

来控制该行为。

更一般而言,如果性能很重要,则应确保使用发布版本。如果您只想定位特定的CPU,则可以使用-C target-cpu=val,例如-C target-cpu=native可针对当前CPU进行优化。当然,您需要介绍您的代码以找出要优化的内容。

相关内容

  • 没有找到相关文章

最新更新