aboutsummaryrefslogtreecommitdiff
path: root/libgo/go
diff options
context:
space:
mode:
authorliuhongt <hongtao.liu@intel.com>2022-01-17 10:47:46 +0800
committerliuhongt <hongtao.liu@intel.com>2022-01-20 16:51:10 +0800
commit8bc700f4c3fbe405413db02281ef2918bfa831fc (patch)
tree02d82c92a7bc07f91bbf78f037849a625a26be80 /libgo/go
parentad4188f8385f86cc04806fb0e26c7da1f5f655b8 (diff)
downloadgcc-8bc700f4c3fbe405413db02281ef2918bfa831fc.zip
gcc-8bc700f4c3fbe405413db02281ef2918bfa831fc.tar.gz
gcc-8bc700f4c3fbe405413db02281ef2918bfa831fc.tar.bz2
Enhance vec_pack_trunc for integral mode mask.
For testcase in PR, the patch supports QI:4 -> HI:16 pack with multi steps(first pack QI:4 -> QI:8 through vec_pack_sbool_trunc_qi, then pack QI:8 -> HI:16 through vec_pack_trunc_hi). Similar for QI:2 -> HI:16 which is test4 in mask-pack-prefer-128.c. gcc/ChangeLog: PR target/103771 * tree-vect-stmts.cc (supportable_narrowing_operation): Enhance integral mode mask pack by multi steps which takes vec_pack_sbool_trunc_optab as start when elements number is less than BITS_PER_UNITS. gcc/testsuite/ChangeLog: * gcc.target/i386/mask-pack-prefer128.c: New test. * gcc.target/i386/mask-pack-prefer256.c: New test. * gcc.target/i386/pr103771.c: New test.
Diffstat (limited to 'libgo/go')
0 files changed, 0 insertions, 0 deletions