Meant to CC a few people, oops.

Aaron Sawdey, Ph.D. saw...@linux.ibm.com
IBM Linux on POWER Toolchain
 

> On Sep 2, 2020, at 9:22 AM, Aaron Sawdey via Gcc <gcc@gcc.gnu.org> wrote:
> 
> 
> PR96791 is happening because DSE is trying to truncate a
> POImode reg down to DImode. The POImode is created by a
> structure copy that gets inline expanded using lxvp/stxvp
> which we have defined using POImode. DSE recognizes that a
> following load overlaps with the stxvp and can be satisfied
> by a truncation of the POImode reg used for the stxvp.
> 
> The intention of using POImode was to avoid having to fully
> define OImode and it seems like defining these truncations
> would be the first step along that path.  If I haven't
> misrepresented it, I believe that is Segher's position on
> this.
> 
> The function extract_low_bits() in expmed.c does some
> querying of the target hook modes_tieable_p but not in any
> way that allows us to tell it not to allow truncation of
> POImode to a smaller mode.  As a result we run into the ICE
> because the patterns are not provided to do this.
> 
> So, I put it to the community: Is there an existing way to do
> this?  Or, do we need another target hook of some kind to
> check this sort of thing?
> 
> Thanks,
>    Aaron
> 
> 
> Aaron Sawdey, Ph.D. saw...@linux.ibm.com
> IBM Linux on POWER Toolchain
> 
> 

Reply via email to