[PATCH]: Fix PR middle-end/56382 -- Only move MODE_COMPLEX_FLOAT by parts if we can create pseudos

John David Anglin dave.anglin@bell.net
Thu Aug 29 23:28:00 GMT 2013


On 29-Aug-13, at 6:52 PM, Steven Bosscher wrote:

> I haven't tried to see what goes on in the compiler, but it feels like
> your.patch just fixes a symptom. Might be just reload behaving like
> reload, but it just seems to me that the problem is not that you
> cannot create new pseudos at the point of the ICE. The test on whether
> the optab exists is obviously not enough, you somehow need to make
> sure that the move doesn't require new registers. That's something I
> would expect reload to check: Can the target make the move I'm asking
> for without introducing new registers...

I believe that reload does not handle complex moves.  The PA backend  
only
has reload patterns for integer and floating point moves, and the  
documentation
indicates that the backend doesn't have to provide complex support.

Maybe I'm missing something, but I don't think I have a way to trigger  
a reload
pattern for this case in the backend.  There are no reloads patterns  
for insert
and extract operations.  The middle is supposed to handle it.

Dave
--
John David Anglin	dave.anglin@bell.net





More information about the Gcc-patches mailing list