diff options
author | Dimitar Dimitrov <dimitar@dinux.eu> | 2023-06-13 22:20:13 +0300 |
---|---|---|
committer | Dimitar Dimitrov <dimitar@dinux.eu> | 2023-08-30 21:55:56 +0300 |
commit | ee077d0c5793e1d4ad8d3b033ef2f0225ba6bd59 (patch) | |
tree | c6077ce342b2ccdf0af936eec01902cb0c47b5c2 /gcc/vec.h | |
parent | 4a92205ef1da044eaf9490e61787836a3abe7d6c (diff) | |
download | gcc-ee077d0c5793e1d4ad8d3b033ef2f0225ba6bd59.zip gcc-ee077d0c5793e1d4ad8d3b033ef2f0225ba6bd59.tar.gz gcc-ee077d0c5793e1d4ad8d3b033ef2f0225ba6bd59.tar.bz2 |
pru: Add cstore expansion patterns
Add cstore patterns for the two specific operations which can be
efficiently expanded using the UMIN instruction:
X != 0
X == 0
The rest of the operations are rejected, and left to be expanded
by the common expansion code.
PR target/106562
gcc/ChangeLog:
* config/pru/predicates.md (const_0_operand): New predicate.
(pru_cstore_comparison_operator): Ditto.
* config/pru/pru.md (cstore<mode>4): New pattern.
(cstoredi4): Ditto.
gcc/testsuite/ChangeLog:
* gcc.target/pru/pr106562-10.c: New test.
* gcc.target/pru/pr106562-11.c: New test.
* gcc.target/pru/pr106562-5.c: New test.
* gcc.target/pru/pr106562-6.c: New test.
* gcc.target/pru/pr106562-7.c: New test.
* gcc.target/pru/pr106562-8.c: New test.
* gcc.target/pru/pr106562-9.c: New test.
Signed-off-by: Dimitar Dimitrov <dimitar@dinux.eu>
Diffstat (limited to 'gcc/vec.h')
0 files changed, 0 insertions, 0 deletions