https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87733

--- Comment #15 from Segher Boessenkool <segher at gcc dot gnu.org> ---
(In reply to Rich Felker from comment #12)
> > You can work around it on older GCC by simply not using a register var
> > for more than one asm operand, I think?
> 
> Nope. Making a syscall inherently requires binding specific registers for
> all of the inputs/outputs, unless you want to spill everything to an
> explicit structure in memory and load them all explicitly in the asm block.
> So it really is a big deal.

I didn't say this very well...  The only issue is using the same hard
register for two different operands.  You don't need to do this for
syscalls (and you do not *need* that *ever*, of course).

Can you post some code that fails?  If you think this is a GCC bug (in
some older branch?) that we should fix, please open a new PR for it.

Reply via email to