软件分支转移的环境影响分析
1. 环境对分支转移的影响因素
1.1 时间因素
在某些情况下,时间差异会影响分支转移。例如,在函数 HP_TIMING_DIFF_INIT 中,当 t2 和 t1 的时间差小于阈值 dl_hp_timing_overhead 时,会发生分支转移。该分支转移位于 dl_start_final() 函数中的 HP_TIMING_DIFF_INIT 里,是一个直接分支转移,具体为 HP_TIMING_DIFF_INIT 中的第 13 行。以下是 HP_TIMING_DIFF_INIT 的代码:
/* Use two ‘rdtsc’ instructions in a row to find out how long it takes. */
#define HP_TIMING_DIFF_INIT() \
do { \
if (GLRO(dl_hp_timing_overhead) == 0) \
{ \
int __cnt = 5; \
GLRO(dl_hp_timing_overhead) = ~0ull; \
do \
{ \
hp_timing_t __t1, __t2; \
HP_TIMING_NOW (__t1); \
超级会员免费看
订阅专栏 解锁全文
9372

被折叠的 条评论
为什么被折叠?



