英特爾 XScale(R) 技術主題指令資源延遲懲罰/警告

XSC_RESOURCE

解釋

“乘法/乘法累加”(MLA) 指令並不是真正管道化的,這是因為處理一條指令可能需要使用相同的數據路徑資源幾個週期,然後才能接受新的指令。這會導致乘法指令資源延遲。受懲罰的指令使用目前未準備就緒的資源。

任何記憶體操作後面跟著 LDRD 指令時,都可能導致 1 個週期的暫停。

建議

儘可能重新調整指令順序,以填補乘法資源可用之前的額外延遲週期。

重新調整指令順序,以避免記憶體操作指令後面跟著 LDRD。

示例 1

MLA        r0,r1,r2,r3

UMLALS     r4,r2,r3,r1               ;; XSC_RESOURCE

示例 2

LDRD       R2, [R5, #0x0]!

LDMIA      R6,{R7}                    ;; XSC_RESOURCE, XSC_LDMSTM_1