http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50696
--- Comment #4 from H.J. Lu <hjl.tools at gmail dot com> 2011-10-11 22:13:47 UTC --- const_32bit_mask is incorrect since combine may optimize VAL in ADDR & VAL from 0xffffffff to 0xfffffffc. Even if we take this into account, we can't decompose (plus:DI (subreg:DI (mult:SI (reg/v:SI 85 [ i ]) (const_int 4 [0x4])) 0) (subreg:DI (reg:SI 100) 0))