【发布时间】:2012-09-14 19:57:24
【问题描述】:
如果说是 Intel Core i7,以下代码会导致分支错误预测惩罚吗?
for(i = 0, count = *ptr; i < count; i++) {
// do something
}
count 可以是 0、1 或 2。
【问题讨论】:
-
没有足够的迭代使其变得可预测
-
那里的代码太少了,真的没有意义。如果您在外循环中多次执行此操作,您可能需要说服编译器展开循环(或手动展开循环),以便它可以使用条件指令。
标签: c assembly x86 branch-prediction