diff options
author | Michael Meissner <meissner@linux.ibm.com> | 2021-08-25 15:11:47 -0400 |
---|---|---|
committer | Michael Meissner <meissner@linux.ibm.com> | 2021-08-25 15:11:47 -0400 |
commit | bb24717e5042b6e8a3847e780a8d215edb9c62f6 (patch) | |
tree | 95dd822838ffd16ac34a23b42211a28c4f4e030c /gcc/gimple-range.cc | |
parent | 3ac6b5cff1eca4e1748c671960ef7b4ca5e47fd2 (diff) | |
download | gcc-bb24717e5042b6e8a3847e780a8d215edb9c62f6.zip gcc-bb24717e5042b6e8a3847e780a8d215edb9c62f6.tar.gz gcc-bb24717e5042b6e8a3847e780a8d215edb9c62f6.tar.bz2 |
Make xxsplti*, xpermx, xxeval be vecperm type.
I noticed that the built-functions for xxspltiw, xxspltidp, xxsplti32dx,
xxpermx, and xxeval all used the 'vecsimple' type. These instructions are
permute instructions (3 cycle latency) and should use 'vecperm' instead.
While I was at it, I changed the UNSPEC name for xxspltidp to be
UNSPEC_XXSPLTIDP instead of UNSPEC_XXSPLTID.
2021-08-25 Michael Meissner <meissner@linux.ibm.com>
gcc/
* config/rs6000/vsx.md (UNSPEC_XXSPLTIDP): Rename from
UNSPEC_XXSPLTID.
(xxspltiw_v4si): Use vecperm type attribute.
(xxspltiw_v4si_inst): Use vecperm type attribute.
(xxspltiw_v4sf_inst): Likewise.
(xxspltidp_v2df): Use vecperm type attribute. Use
UNSPEC_XXSPLTIDP instead of UNSPEC_XXSPLTID.
(xxspltidp_v2df_inst): Likewise.
(xxsplti32dx_v4si): Use vecperm type attribute.
(xxsplti32dx_v4si_inst): Likewise.
(xxsplti32dx_v4sf_inst): Likewise.
(xxblend_<mode>): Likewise.
(xxpermx): Likewise.
(xxpermx_inst): Likewise.
(xxeval): Likewise.
Diffstat (limited to 'gcc/gimple-range.cc')
0 files changed, 0 insertions, 0 deletions