https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71680
--- Comment #16 from Alan Modra <amodra at gcc dot gnu.org> --- Author: amodra Date: Wed Aug 10 05:43:36 2016 New Revision: 239317 URL: https://gcc.gnu.org/viewcvs?rev=239317&root=gcc&view=rev Log: [RS6000] e500 part of pr71680 The fallback part of HARD_REGNO_CALLER_SAVE_MODE, choose_hard_reg_mode, returns DFmode for SImode when TARGET_E500_DOUBLE. This confuses lra when attempting to save ctr around a call. PR target/71680 * config/rs6000/rs6000.h (HARD_REGNO_CALLER_SAVE_MODE): Return SImode for TARGET_E500_DOUBLE when given SImode. Modified: trunk/gcc/ChangeLog trunk/gcc/config/rs6000/rs6000.h