------- Comment #3 from jdemeyer at cage dot ugent dot be  2009-09-07 19:30 
-------
(In reply to comment #2)
> I think you need to mark both alternatives early-clobber, not only the 
> register
> one.  Thus "=&r&m" at least according to the manual.

That doesn't seem to change anything.  It looks to me like the parser only
checks for the presence of at least one "&", since it even accepts "=&&r&&m&&"
(maybe that's another bug?).  On the other hand, using "=&m" as constraint
gives an error
bug.c:141:2: error: '&' constraint used with no register class

According to http://gcc.gnu.org/onlinedocs/gcc/Multi_002dAlternative.html,
the constraint "=&rm" counts as ONE alternative, since alternatives are
seperated by commas.  This is one alternative, allowing both a register or
memory location.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41294

Reply via email to