【问题标题】:powerpc assembly translationpowerpc组装翻译
【发布时间】:2013-04-03 23:25:48
【问题描述】:

有擅长power pc组装的高手能帮我破译一下这段代码吗?

extern inline void out_8(volatile unsigned char __iomem *addr, u8 val)
{
    __asm__ __volatile__("sync;\n"
                 "stb%U0%X0 %1,%0;\n"
                 : "=m" (*addr)
                 : "r" (val));
}

非常感谢您的帮助。

【问题讨论】:

  • 我不是专家,但对我来说,这看起来就像它只是将字节值 val 存储在由 addr 标识的内存位置中。

标签: assembly powerpc


【解决方案1】:

同步 - 意味着内存和乱序缓冲区 - 刷新缓存等,然后是存储字节。看起来像内存屏障字节写入。确认...是的。同步用于确保处理器上所有先前的指令都已完成,并且没有启动后续指令。有趣的是,symc 通常发生在存储之后而不是之前,因此上面的代码确认在执行字节写入之前没有其他待处理的写入。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-31
    • 2011-07-05
    • 2015-02-14
    相关资源
    最近更新 更多