https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112651

Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |amylaar at gcc dot gnu.org

--- Comment #2 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> ---
We can have in fact vector code without the intervention of the autovectorizer,
if the user uses GNU C to write explicitly vectorized code, which code
generation will simply translate to target instructions if the modes are
available.
Where the mode is too wide for the hardware becaue it doesn't support LMUL > 1,
we want the vector lowering to kick in.
I think we should achieve this aim by disabling vector modes altogether that
are too wide for the hardware.
That is alone is not a full solution, though, since a number of vector modes
can be obtained with more than one LMUL value.  Often, the higher LMUL values
appear to be more efficient when just counting instructions because they allow
vsetivli to be used for larger vectors, thus reducing the need to load
constants into general purpose registers first.

Reply via email to