aboutsummaryrefslogtreecommitdiff
path: root/gcc/gimple-range-fold.cc
diff options
context:
space:
mode:
authorliuhongt <hongtao.liu@intel.com>2021-07-20 18:32:35 +0800
committerliuhongt <hongtao.liu@intel.com>2021-07-22 10:40:16 +0800
commita56c251898ea70b46798d7893a871bcfe318529b (patch)
treec377234035d48b0c85d7ca7ac75c3e29612093ff /gcc/gimple-range-fold.cc
parent419c6c68e60adc8801b44dab72ebcd680cfe1d97 (diff)
downloadgcc-a56c251898ea70b46798d7893a871bcfe318529b.zip
gcc-a56c251898ea70b46798d7893a871bcfe318529b.tar.gz
gcc-a56c251898ea70b46798d7893a871bcfe318529b.tar.bz2
Support logic shift left/right for avx512 mask type.
gcc/ChangeLog: * config/i386/constraints.md (Wb): New constraint. (Ww): Ditto. * config/i386/i386.md (*ashlhi3_1): Extend to avx512 mask shift. (*ashlqi3_1): Ditto. (*<insn><mode>3_1): Split to .. (*ashr<mode>3_1): this, ... (*lshr<mode>3_1): and this, also extend this pattern to avx512 mask registers. (*<insn><mode>3_1): Split to .. (*ashr<mode>3_1): this, ... (*lshrqi3_1): and this, also extend this pattern to avx512 mask registers. (*lshrhi3_1): And this, also extend this pattern to avx512 mask registers. * config/i386/sse.md (k<code><mode>): New define_split after it to convert generic shift pattern to mask shift ones. gcc/testsuite/ChangeLog: * gcc.target/i386/mask-shift.c: New test.
Diffstat (limited to 'gcc/gimple-range-fold.cc')
0 files changed, 0 insertions, 0 deletions