On 4/8/2021 8:06 AM, Richard Sandiford via Gcc-patches wrote:
The sve/vcond_3.c tests had started to fail after PR97690/99305, because we were generating: a = VEC_COND_EXPR <cond, { 0, ... }, { 1, ... }>; b = a << 15; instead of: a = VEC_COND_EXPR <cond, { 0, ... }, { 1<<15, ... }>; We already have a match.pd rule to handle this kind of thing, but it didn't handle shifts. Tested on aarch64-linux-gnu. OK to install? Richard gcc/ * match.pd: Extend vec_cond folds to handle shifts.
OK jeff