]> git.ipfire.org Git - thirdparty/gcc.git/commit
rs6000: Remove vcond{,u} expanders
authorKewen Lin <linkw@linux.ibm.com>
Fri, 12 Jul 2024 06:32:57 +0000 (01:32 -0500)
committerKewen Lin <linkw@gcc.gnu.org>
Fri, 12 Jul 2024 06:32:57 +0000 (01:32 -0500)
commitf7e4000397842671fe7e5c0473f1fa62707e1db9
tree957000d0ed05cd027dd6fd6fabf9240ef35c9110
parent4f4478f0f31263997bfdc4159f90e58dd79b38f9
rs6000: Remove vcond{,u} expanders

As PR114189 shows, middle-end will obsolete vcond, vcondu
and vcondeq optabs soon.  This patch is to remove all
vcond{,u} expanders in rs6000 port and adjust the function
rs6000_emit_vector_cond_expr which is called by those
expanders as static.

PR target/115659

gcc/ChangeLog:

* config/rs6000/rs6000-protos.h (rs6000_emit_vector_cond_expr): Remove.
* config/rs6000/rs6000.cc (rs6000_emit_vector_cond_expr): Add static
qualifier as it is only called by rs6000_emit_swsqrt now.
* config/rs6000/vector.md (vcond<VEC_F:mode><VEC_F:mode>): Remove.
(vcond<VEC_I:mode><VEC_I:mode>): Remove.
(vcondv4sfv4si): Likewise.
(vcondv4siv4sf): Likewise.
(vcondv2dfv2di): Likewise.
(vcondv2div2df): Likewise.
(vcondu<VEC_I:mode><VEC_I:mode>): Likewise.
(vconduv4sfv4si): Likewise.
(vconduv2dfv2di): Likewise.
gcc/config/rs6000/rs6000-protos.h
gcc/config/rs6000/rs6000.cc
gcc/config/rs6000/vector.md