Tag: iaca

什么是IACA,我如何使用它?

我发现了一个叫IACA(英特尔架构代码分析器)的有趣而强大的工具,但是我很难理解它。 我该怎么做,它有什么限制,我怎么能: 用它来分析C或C ++中的代码? 用它来分析x86汇编中的代码?

微融合和寻址模式

使用英特尔®架构代码分析器 (IACA),我发现了一些意想不到的情况(对我来说)。 以下指令使用[base+index]寻址 addps xmm1, xmmword ptr [rsi+rax*1] 根据IACA没有微熔丝。 但是,如果我这样使用[base+offset] addps xmm1, xmmword ptr [rsi] IACA报告说它确实融合了。 “ 英特尔优化参考手册”第2-11部分提供了以下内容作为“可由所有解码器处理的微型熔合微操作” FADD DOUBLE PTR [RDI + RSI*8] Agner Fog的优化组装手册也给出了使用[base+index]寻址的微操作融合的例子。 例如,请参见第12.2节“Core2上的相同示例”。 那么正确的答案是什么?