ASM
asm
关键字采用单个操作数,该操作数必须是字符串文字。它具有实现定义的含义,但通常传递给实现的汇编器,汇编器的输出被合并到转换单元中。
asm
语句是一个定义,而不是表达式,因此它可能出现在块作用域或命名空间作用域(包括全局作用域)中。但是,由于内联汇编不能受 C++语言规则的约束,因此 asm
可能不会出现在 constexpr
函数中。
例:
placeholderCopy[[noreturn]] void halt_system() {
asm("hlt");
}