GCC 内联 asm 中单词 "clobber" 的含义是什么



无法完全理解单词"的含义;clobber"狠狠地打(某人("或";严厉地对待或处理"gcc手册6.45.2.6 Clobbers

"Clobber";在这种情况下,";任意重写";。换句话说,将寄存器声明为"0";痛击的";告诉编译器,此寄存器可能会被其他任意值覆盖,并且当asm代码完成时,编译器不应假设其内容的任何内容;其先前的值被认为是丢失的。

这与";点击":类似的情况是,重写寄存器就像用物理力破坏或破坏它以前的值。

手册对其进行了进一步的定义:

Clobbers:一个逗号分隔的寄存器或其他值列表被AssemblerTemplate[…]更改

最新更新