optimization/6162: gcc 3.0.4: certain i386 asm reloader ice
Kevin Ryde
user42@zip.com.au
Wed Oct 30 14:36:00 GMT 2002
Michael Matz <matz@suse.de> writes:
>
> Well, to find it is quite easy. reload is inherently incapable of
> handling more than one commutative operand, but there are two of them in
> the asm. If you are unlucky both of them would need to be swapped to make
> the insn valid, and this is what breaks reload, as it only can swap the
> last pair. I don't know why this constraint isn't documented, but anyway,
> that's the reason.
The stuff in question is from longlong.h actually (shared by GMP and
GCC). All the add_ssaaaa's (or it looks like all) have two
commutatives.
More information about the Gcc-bugs
mailing list