diff options
author | Roger Sayle <roger@nextmovesoftware.com> | 2021-11-30 08:35:39 +0000 |
---|---|---|
committer | Roger Sayle <roger@nextmovesoftware.com> | 2021-11-30 08:35:39 +0000 |
commit | c39d77f252e895306ef88c1efb3eff04e4232554 (patch) | |
tree | 90de97dc9fdbc692cb7dbdf8e06eac36b77d9021 /gcc/tree-vectorizer.h | |
parent | b962469a01b017ae2e7ef2865a40e37094ceec4b (diff) | |
download | gcc-c39d77f252e895306ef88c1efb3eff04e4232554.zip gcc-c39d77f252e895306ef88c1efb3eff04e4232554.tar.gz gcc-c39d77f252e895306ef88c1efb3eff04e4232554.tar.bz2 |
x86_64: PR target/100711: Splitters for pandn
This patch addresses PR target/100711 by introducing define_split
patterns so that not/broadcast/pand may be simplified (by combine)
to broadcast/pandn. This introduces two splitters one for optimizing
pandn on TARGET_SSE for V4SI and V2DI, and another for vpandn on
TARGET_AVX2 for V16QI, V8HI, V32QI, V16HI and V8SI. Each splitter
has its own new testcase.
I've also confirmed that not/broadcast/pandn is already getting
simplified to broadcast/pand by the middle-end optimizers.
2021-11-30 Roger Sayle <roger@nextmovesoftware.com>
Uroš Bizjak <ubizjak@gmail.com>
gcc/ChangeLog
PR target/100711
* config/i386/sse.md (define_split): New splitters to simplify
not;vec_duplicate;and as vec_duplicate;andn.
gcc/testsuite/ChangeLog
PR target/100711
* gcc.target/i386/pr100711-1.c: New test case.
* gcc.target/i386/pr100711-2.c: New test case.
Diffstat (limited to 'gcc/tree-vectorizer.h')
0 files changed, 0 insertions, 0 deletions