gpt4 book ai didi

c - C 中的 switch 语句会清空 x86 管道吗?

转载 作者:太空狗 更新时间:2023-10-29 15:14:20 26 4
gpt4 key购买 nike

在 C 中执行 switch 语句(假设它使用跳转表)是否会清空 x86 处理器的管道?我在想这可能是因为它需要查表的结果才能知道接下来要执行什么指令。它能否尽早将该结果转发回来,以免管道被完全清空?

最佳答案

跳转表不一定清空管道。间接分支是在现代处理器上预测的,分支预测器比您预期的要好。显然,正确预测的间接分支不会导致停顿。

根本不分支是可取的,但通常是不可能的(或引入如此多的开销以至于成为净损失)。用一系列条件分支替换跳转表有时是有益的,但前提是替换序列中的分支数量相当少。

关于c - C 中的 switch 语句会清空 x86 管道吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7498543/

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