<div dir="ltr"><div dir="ltr"><br></div>On Fri, Aug 19, 2022 at 2:14 AM Joerg Vehlow <<a href="mailto:lkml@jv-coder.de">lkml@jv-coder.de</a>> wrote:<div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Why is this even split up into two asm instructions?<br>I guess there is nothing, that prevents the compiler from reordering the<br>asm instructions, because it does not know, that they have side effects<br>(they are not marked volatile).<br><br>asm volatile ("syscall" : : "a"(__NR_tkill), "D"(pid), "S"(SIGHUP):<br>"rax", "rcx", "r11");<br></blockquote><div><br></div><div>I tried this and clang complains that the "Asm-specifier for input or output variable conflicts with asm clobber list" for rax.  Should it be</div><div><br></div><div>  asm volatile ("syscall" : : "a"(__NR_tkill), "D"(pid), "S"(SIGHUP) : "rcx", "r11");<br></div><div><br></div><div>instead?  Is it implicit that __NR_tkill is going into rax so it will be clobbered?</div><div><br></div><div>Thanks,</div><div>Edward</div></div></div>