On Thu, 19 Dec 2024, Robin Dapp wrote: > > I wonder if LOOP_VINFO_LENS is really empty here? If not, who recorded > > the len and why did that not disable partial vectors? > > It's not empty. vectorizable_operation fills it for a vectype of vector short > (4). Before (in vector_type_mode), we determined that a vector long (1) has > an > integer mode with the same size so it is not discarded.
I don't quite understand - you are checking loop_vinfo->vector_mode, but how can you be sure no chosen vector uses a !VECTOR_MODE_P? It seems fragile to rely on (it might work in this case), instead when any !VECTOR_MODE_P needs a 'len' we should reject it - so why does this not happen here? Richard.