aboutsummaryrefslogtreecommitdiff
path: root/libgo
diff options
context:
space:
mode:
authorHaochen Gui <guihaoc@gcc.gnu.org>2022-05-30 09:12:34 +0800
committerHaochen Gui <guihaoc@gcc.gnu.org>2022-06-16 16:58:36 +0800
commit8d1c6e7038b0c281ac2678f2f615806a7aac9174 (patch)
treec60e0ecd95ca4fdbaf7289b7f9c68cda5177ae14 /libgo
parent42858325e41177ba622a507c398dae2adbc017d6 (diff)
downloadgcc-8d1c6e7038b0c281ac2678f2f615806a7aac9174.zip
gcc-8d1c6e7038b0c281ac2678f2f615806a7aac9174.tar.gz
gcc-8d1c6e7038b0c281ac2678f2f615806a7aac9174.tar.bz2
rs6000: add V1TI into vector comparison expand [PR103316]
This patch adds V1TI mode into a new mode iterator used in vector comparison,shift and rotation expands. It also merges some vector comparison, shift and rotation expands for V1T1 and other vector integer modes as they have the similar patterns. The expands for V1TI only are removed. gcc/ PR target/103316 * config/rs6000/rs6000-builtin.cc (rs6000_gimple_fold_builtin): Enable gimple folding for RS6000_BIF_VCMPEQUT, RS6000_BIF_VCMPNET, RS6000_BIF_CMPGE_1TI, RS6000_BIF_CMPGE_U1TI, RS6000_BIF_VCMPGTUT, RS6000_BIF_VCMPGTST, RS6000_BIF_CMPLE_1TI, RS6000_BIF_CMPLE_U1TI. * config/rs6000/vector.md (VEC_IC): New mode iterator. Add support for new Power10 V1TI instructions. (vec_cmp<mode><mode>): Set mode iterator to VEC_IC. (vec_cmpu<mode><mode>): Likewise. (vector_nlt<mode>): Set mode iterator to VEC_IC. (vector_nltv1ti): Remove. (vector_gtu<mode>): Set mode iterator to VEC_IC. (vector_gtuv1ti): Remove. (vector_nltu<mode>): Set mode iterator to VEC_IC. (vector_nltuv1ti): Remove. (vector_geu<mode>): Set mode iterator to VEC_IC. (vector_ngt<mode>): Likewise. (vector_ngtv1ti): Remove. (vector_ngtu<mode>): Set mode iterator to VEC_IC. (vector_ngtuv1ti): Remove. (vector_gtu_<mode>_p): Set mode iterator to VEC_IC. (vector_gtu_v1ti_p): Remove. (vrotl<mode>3): Set mode iterator to VEC_IC. Emit insns for V1TI. (vrotlv1ti3): Remove. (vashr<mode>3): Set mode iterator to VEC_IC. Emit insns for V1TI. (vashrv1ti3): Remove. gcc/testsuite/ PR target/103316 * gcc.target/powerpc/pr103316.c: New. * gcc.target/powerpc/fold-vec-cmp-int128.c: New.
Diffstat (limited to 'libgo')
0 files changed, 0 insertions, 0 deletions