[Bug target/72804] Poor code gen with -mvsx-timode

bergner at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Aug 7 21:04:00 GMT 2017


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

--- Comment #5 from Peter Bergner <bergner at gcc dot gnu.org> ---
I'm testing a patch.  The root cause is that the vsx_le_permute_*,
vsx_le_perm_load_* and vsx_le_perm_store_* patterns do not support the TImode
values in integer registers and it is these patterns that LRA is using to try
and reload the TImode values into/out of integer registers, which causes us to
loop until some magic happens and we break out.

Adding support for integer registers to the above patterns improves the code to
what we would expect to see.


More information about the Gcc-bugs mailing list