--- Comment #4 from Segher Boessenkool <segher at gcc dot> ---
Author: segher
Date: Wed Aug  9 21:08:33 2017
New Revision: 251005

rs6000: Use SAVE_MULTIPLE only if we restore what it saves (PR80938)

We can have SAVE_MULTIPLE while we do not have REST_MULTIPLE.  If the
inline restore does not restore all registers, the CFI for the save
and restore can conflict if things are shrink-wrapped.

We could restore all registers that are saved (not ideal), or emit
the CFI notes to say we did (which will work fine, but is also not
so great); instead, let's not save the registers that are unused.

        PR target/80938
        * config/rs6000/rs6000.c (rs6000_savres_strategy): Don't use
        SAVE_MULTIPLE if not all the registers that saves, should be saved.


Reply via email to