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

--- Comment #5 from Finn Thain <fthain at telegraphics dot com.au> 2010-10-27 
13:28:01 UTC ---
> The invalid address is generated by output_move_double.

I have to say it, the .md files I looked at are hands-down the most complex and
baroque code I've ever seen. So I don't understand them. But, that's where
output_move_double gets called.

And apparently, somehow, ColdFire (and 68000) avoid this issue... What's the
solution? Should I somehow find a test case that breaks on ColdFire so that
Maxim gets to fix this? (Just kidding ;-)

Or maybe have output_move_double call a new routine that does the same
reshuffling that m68k_final_prescan_insn does -- a wrapper around the
*handle_movsi invocation. Or is that going to be too expensive?

Reply via email to