【问题标题】:What is the ARMCC compiler option for automatic insertion of prefetching instructions during compilation process?在编译过程中自动插入预取指令的 ARMCC 编译器选项是什么?
【发布时间】:2016-06-06 14:08:23
【问题描述】:

如果我将预取指令手动插入到源代码中并且当我命令编译器 ARMCC 自动插入该预取指令时,我正在尝试评估增益。但我不知道命令 ARMCC 编译器在编译过程中自动插入预取指令的编译选项(命令行)。 谢谢!

【问题讨论】:

    标签: arm compiler-optimization armcc


    【解决方案1】:

    它们位于文档主题Chapter 10 Compiler-specific Features

    __pld:此内在函数将数据预取(例如 PLD)插入编译器生成的指令流中。它使您能够从您的 C 或 C++ 程序向内存系统发出信号,表明可能在不久的将来从某个地址加载数据。

    __pldw:此内在函数将 PLDW 指令插入编译器生成的指令流中。它使您能够从您的 C 或 C++ 程序向内存系统发出信号,表明在不久的将来可能会从一个有写入意图的地址加载数据。 此内在函数将 PLDW 指令插入编译器生成的指令流中。它使您能够从您的 C 或 C++ 程序向内存系统发出信号,表明可能在不久的将来从一个有写入意图的地址加载数据。

    __pli:此内在函数将指令预取(例如 PLI)插入编译器生成的指令流中。它使您能够从您的 C 或 C++ 程序向内存系统发出信号,表明可能在不久的将来从某个地址加载指令。

    【讨论】:

    • 感谢@auselen 我知道这一点,并且我已经使用该内在函数将数据预取指令手动插入到我的源代码中,并且 ARMCC 相应地生成了 PLD。但是,我要求知道传递到 ARMCC 编译器命令行的选项(与 gcc ... --fprefetch-loop-arrays 一样)以命令 ARMCC 编译器将 PLD 添加到生成的指令流中。我的目标是将 ARMCC 所做的事情与我正在做的事情进行比较。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-27
    • 1970-01-01
    • 2013-12-26
    • 2015-05-24
    • 2017-11-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多