我知道大多数现代处理器都维护一个分支预测表(BPT(。我已经阅读了gdb文档,但找不到任何应该给出所需结果的命令。基于此,我有几个问题:
是否有gdb命令(或其他方式(来获取流程的BPT信息?
如果没有,是否可以查看流程的BPT?
是否可以查看流程的BPT?
否:至少在英特尔处理器上,它隐藏在处理器内部,不会以任何方式暴露给用户空间或内核。它甚至没有被记录下来,并构成了";秘密酱汁";。
您可以通过进行仔细的实验和观察各种性能计数器来收集有关分支预测器的一些细节,但您不能直接检查它。