我们知道,如果我将
%eax
设置为输入,则无法将其包含在破坏寄存器列表中。因此,我的问题是,在汇编代码中修改%eax
的值而没有在破坏列表中声明是否合法?__asm__ __volatile__("inc %0" :: "a"(num) : "%eax"); // illegal
__asm__ __volatile__("inc %0" :: "a"(num)); // Can I modify %eax?