------- Comment #4 from amylaar at gcc dot gnu dot org 2006-07-06 19:32 ------- (In reply to comment #2) > Investigating... I suspect that the SH backend's rtx_costs are parameterized > incorrectly, such that a 64-bit shift by the constant 32, looks to be at least > 32 times more expensive than a 64-bit addition.
No, the costs are correct, no DImode shift is supported with a count other than one. The expanders are supposed to use SImode shifts. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28283