http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49721
--- Comment #2 from H.J. Lu <hjl.tools at gmail dot com> 2011-07-28 21:27:33 UTC --- The question is we have (zero_extend:DI (plus:SI (FOO:SI) (const_int Y))) Is is OK to transform it to (plus:DI (zero_extend:DI (FOO:SI)) (const_int Y)) The current convert_memory_address_addr_space does transformation if Y > 0. It makes no sense not to transform it if Y < 0.