1
我試圖評估增益,如果我手動插入預取指令到源代碼和當我命令編譯器ARMCC自動插入預取指令。但是我不知道編譯選項(命令行),命令ARMCC編譯器在編譯過程中自動插入預取指令。 謝謝!在編譯過程中自動插入預取指令的ARMCC編譯器選項是什麼?
我試圖評估增益,如果我手動插入預取指令到源代碼和當我命令編譯器ARMCC自動插入預取指令。但是我不知道編譯選項(命令行),命令ARMCC編譯器在編譯過程中自動插入預取指令。 謝謝!在編譯過程中自動插入預取指令的ARMCC編譯器選項是什麼?
它們是下文檔主題Chapter 10 Compiler-specific Features
__pld
:此內在插入一個數據預取,例如PLD,到由編譯器生成的指令流。它使您能夠通過C或C++程序向內存系統發出信號,指出在不久的將來可能會從地址加載數據。
__pldw
:該內在函數將PLDW指令插入由編譯器生成的指令流中。它使您能夠通過C或C++程序向內存系統發出信號,指出可能在不久的將來從有意寫入的地址加載數據。 此內在函數將PLDW指令插入由編譯器生成的指令流中。它使您能夠通過C或C++程序向內存系統發出信號,指出可能在不久的將來從有意寫入的地址加載數據。
__pli
:此內在函數將指令預取(例如PLI)插入由編譯器生成的指令流中。它使您能夠通過C或C++程序向內存系統發出信號,指示在不久的將來可能會從地址加載指令。
Thanks @auselen我意識到這一點,並且我已經使用該內在函數將數據預取指令手動插入到我的源代碼中,並且ARMCC相應地生成了PLD。但是,我所要求的是知道進入ARMCC編譯器命令行的選項(與gcc ... --fprefetch-loop-arrays一樣),以命令ARMCC編譯器將PLD添加到生成的指令流中。我的目標是比較ARMCC的做法和我正在做的事情。 –