]> gcc.gnu.org Git - gcc.git/commit
Allow consant element vec_extract to be loaded into vector registers.
authorMichael Meissner <meissner@linux.ibm.com>
Tue, 25 Apr 2023 01:53:54 +0000 (21:53 -0400)
committerMichael Meissner <meissner@linux.ibm.com>
Tue, 25 Apr 2023 01:53:54 +0000 (21:53 -0400)
commit51f1707cd47aeb16bd0a672210d1072dc0ebb362
tree27cbd085e4d103a28d12a1a223cf0f64a8240b27
parent3f1c236b90f69acda6ba4dcabe07d60ff407a7f4
Allow consant element vec_extract to be loaded into vector registers.

This patch allows vec_extract of V4SI, V8HI, and V16QI vector types with a
constant element number to be loaded into vector registers directly.  It also
will be split before register allocation.

This patch also adds support to rs6000_adjust_vec_address to allow it to be run
before register allocation.

2023-04-24   Michael Meissner  <meissner@linux.ibm.com>

gcc/

* config/rs6000/rs6000.cc (get_vector_offset): Allow being called before
register allocation.
(adjust_vec_address_pcrel): Likewise.
(rs6000_adjust_vec_address): Likewise.
* config/rs6000/vsx.md (VSX_EX_ISA): New mode attribute.
(vsx_extract_<mode>_load): Allow vector registers to be loaded.
gcc/config/rs6000/rs6000.cc
gcc/config/rs6000/vsx.md
This page took 0.060966 seconds and 6 git commands to generate.