gpt4 book ai didi

optimization - 编译器优化会引入错误吗?

转载 作者:行者123 更新时间:2023-12-03 05:28:52 25 4
gpt4 key购买 nike

今天我和我的一个 friend 讨论了几个小时关于“编译器优化”的问题。

我为 的观点辩护。有时 ,编译器优化可能会引入错误,或者至少会引入不希望的行为。

我的 friend 完全不同意,说“编译器是由聪明人构建的,做聪明的事情”,因此可以从不出错。

他根本没有说服我,但我不得不承认我缺乏现实生活中的例子来加强我的观点。

谁在这里?如果我是,您是否有任何现实生活中的示例,其中编译器优化会在生成的软件中产生错误?如果我弄错了,我应该停止编程并学习钓鱼吗?

最佳答案

编译器(和运行时)优化当然会引入不希望的行为 - 但至少只有在您依赖未指定的行为(或确实对明确指定的行为做出错误假设)时才会发生这种情况。

现在除此之外,当然编译器中可能存在错误。其中一些可能与优化有关,其影响可能非常微妙 - 事实上它们很可能是,因为明显的错误更有可能被修复。

假设您将 JIT 作为编译器包括在内,我已经在 .NET JIT 和 Hotspot JVM 的已发布版本中看到了错误(不幸的是,我目前没有详细信息),这些错误在特别奇怪的情况下可以重现。我不知道它们是否是由于特定的优化。

关于optimization - 编译器优化会引入错误吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2722302/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com