https://gcc.gnu.org/g:1fc2416ddc96a2fb1492642823f67e64488a153a

commit r17-4519-g1fc2416ddc96a2fb1492642823f67e64488a153a
Author: Alfie Richards <[email protected]>
Date:   Mon Sep 21 12:48:06 2026 +0000

    fix: riscv: Restore previous --param=riscv-autovec-mode behaviour [PR 
127494]
    
    Fixed riscv regressions introduced in r17-4413-g3b99fd4bdc7005.
    
    Restores previous behaviour by only overriding autovec mode if it is one
    of the available autovec modes.
    
    gcc/ChangeLog:
    
            PR target/127494
    
            * config/riscv/riscv-v.cc (autovectorize_vector_modes):
            Restore previous behaviour.

Diff:
---
 gcc/config/riscv/riscv-v.cc | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gcc/config/riscv/riscv-v.cc b/gcc/config/riscv/riscv-v.cc
index 1cf53c7841c9..faa43f4bf649 100644
--- a/gcc/config/riscv/riscv-v.cc
+++ b/gcc/config/riscv/riscv-v.cc
@@ -3069,7 +3069,8 @@ autovectorize_vector_modes (vector_modes *modes, bool)
       modes->truncate (0);
 
       machine_mode mode;
-      if (parse_machine_mode (riscv_autovec_mode, &mode))
+      if (parse_machine_mode (riscv_autovec_mode, &mode)
+         && ms.contains (mode))
        {
          modes->safe_push (mode);
          return 0;

Reply via email to