diff options
author | Andrew Pinski <apinski@marvell.com> | 2023-08-20 17:22:27 -0700 |
---|---|---|
committer | Andrew Pinski <apinski@marvell.com> | 2023-08-21 00:45:38 -0700 |
commit | 47b833a9abe19d862a773d20dd6f961dcf811a11 (patch) | |
tree | 07092290947f8e29541a2173447697f6494bd7cb /gcc/value-range.cc | |
parent | b9426543e8d3b9333d1561844472c3f568fa6913 (diff) | |
download | gcc-47b833a9abe19d862a773d20dd6f961dcf811a11.zip gcc-47b833a9abe19d862a773d20dd6f961dcf811a11.tar.gz gcc-47b833a9abe19d862a773d20dd6f961dcf811a11.tar.bz2 |
MATCH: [PR111002] Sink view_convert for vec_cond
Like convert we can sink view_convert into vec_cond but
we can only do it if the element types are nop_conversions.
This is to allow conversion between signed and unsigned types only.
Rather than between integer and float types which mess up the vec_cond
so that isel does not understand `a?-1:0` is still that.
OK? Bootstrapped and tested on x86_64-linux-gnu and aarch64-linux-gnu.
PR tree-optimization/111002
gcc/ChangeLog:
* match.pd (view_convert(vec_cond(a,b,c))): New pattern.
gcc/testsuite/ChangeLog:
* gcc.target/aarch64/sve/cond_convert_8.c: New test.
Diffstat (limited to 'gcc/value-range.cc')
0 files changed, 0 insertions, 0 deletions