我希望能够清理我的汇编代码并提供一个宏的方式来多次调用“NOP”指令。
这违背了 NOP 的初衷:
#define NOP() asm(" nop")
#define NOP_N( N ) \
NOP(); \
NOP(); \
.... call NOP() N times
我不确定宏中是否可能实现这一点。
显然,出于性能考虑,我不希望像这样使用:
#define NOP_N( n ) { register int i; for(i=0;i<n;i++) asm(" nop"); }
这违背了 NOP 的初衷:
L17: ; NOP_N(3);
nop
addi 1,r0 ; Unsigned
cmpi 3,r0
blo L17
此代码使用C和汇编语言编写,因此不涉及C ++。同时,编译器比较老旧,不支持变参宏...