diff options
author | liuhongt <hongtao.liu@intel.com> | 2022-05-13 15:48:01 +0800 |
---|---|---|
committer | liuhongt <hongtao.liu@intel.com> | 2022-05-16 08:30:34 +0800 |
commit | 69c4b5c519f0df37e4903992644cc29682721bc1 (patch) | |
tree | 97e8833d73fd906c2533908f637e2d11954b4f2f /gcc/fortran/openmp.cc | |
parent | ac6a32f663a6c3b11c205e7c599bd1d92f80f19a (diff) | |
download | gcc-69c4b5c519f0df37e4903992644cc29682721bc1.zip gcc-69c4b5c519f0df37e4903992644cc29682721bc1.tar.gz gcc-69c4b5c519f0df37e4903992644cc29682721bc1.tar.bz2 |
Fix ICE caused by wrong condition.
When d->perm[i] == d->perm[i-1] + 1 and d->perm[i] == nelt, it's not
continuous. It should fail if there's more than 2 continuous areas.
gcc/ChangeLog:
PR target/105587
* config/i386/i386-expand.cc
(expand_vec_perm_pslldq_psrldq_por): Fail when (d->perm[i] ==
d->perm[i-1] + 1) && d->perm[i] == nelt && start != -1.
gcc/testsuite/ChangeLog:
* gcc.target/i386/pr105587.c: New test.
Diffstat (limited to 'gcc/fortran/openmp.cc')
0 files changed, 0 insertions, 0 deletions