On Wed, 7 Jan 2026, Rainer Orth wrote:

> Hi Richard,
> 
> >> very true: unless you're intimately familar with vectorization, it's
> >> quite some guesswork which effective-target to use currently.
> >
> > And even the vectorizer dump could be improved to mention relevant
> > missed optabs (sometimes it's multiple ones or one of many, of course...)
> 
> indeed: the worst offender recently was PR tree-optimization/123195
> where you get the most useless
> 
> gcc.dg/vect/pr104116-ceil-div-2.c:11:1: missed:   no optab.
> gcc.dg/vect/pr104116-ceil-div-2.c:11:1: missed:   not vectorized: relevant 
> stmt not supported: _5 = _4 /[cl] 2;
> 
> message.  I'd had to run a debug cc1 under gdb to determine which of the
> two instances of the same message in tree-vect-stmts.cc
> (vectorizable_shift, vectorizable_operation) this was from ;-(

Hmm, I'd have expected the message from vectorizable_shift to be
dead code, but /[cl] (CEIL_DIV_EXPR) definitely isn't handled but
we expect patterns to be used here (but their target support checks
likely fail for you).  The /[cl] should have directed you to the
correct place ;)

I'll test a patch to make the message a bit more verbose and
add 'shift' to the shift variants.

Richard.

> 
>       Rainer
> 
> 

-- 
Richard Biener <[email protected]>
SUSE Software Solutions Germany GmbH,
Frankenstrasse 146, 90461 Nuernberg, Germany;
GF: Jochen Jaser, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)

Reply via email to