https://gcc.gnu.org/bugzilla/show_bug.cgi?id=91720

Jim Wilson <wilson at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |wilson at gcc dot gnu.org

--- Comment #8 from Jim Wilson <wilson at gcc dot gnu.org> ---
Created attachment 46867
  --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=46867&action=edit
simplest fix: don't define WORD_REGISTER_OPERATIONS

I've had problems with combine, LOAD_EXTEND_OP, and WORD_REGISTER_OPERATIONS
before.  I think combine is making unsafe assumptions in this case, but I'm
getting tired of arguing about this.  So the simple solution is to just stop
defining WORD_REGISTER_OPERATIONS.  It makes this testcase work.

I get about a 0.1% code size increase when I try it with a 64-bit toolchain,
looking at libc and libstdc++ library file sizes.  If this affects dhrystone or
coremark code size or performance, a lot of people will be unhappy, so I will
have to double check that.  For a 32-bit toolchain it is more like 0.01% which
is not as bad.

Reply via email to