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

            Bug ID: 112537
           Summary: Is there a way to disable cpymem pass for rvv
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c
          Assignee: unassigned at gcc dot gnu.org
          Reporter: fanghuaqi at vip dot qq.com
  Target Milestone: ---

See
https://gcc.gnu.org/git/?p=gcc.git;a=blob;f=gcc/testsuite/gcc.target/riscv/rvv/base/cpymem-2.c;h=7b706b6ef52544cabdce2007256c9e67b72ccd79;hb=9464e72bcc9123b619215af8cfef491772a3ebd9
this case, if I pass -march=rv64imafdcv to compile code like this, it will
generate vector related code, which I think it should only be enabled when
--param=riscv-autovec-preference=scalable is enabled, but actually it is auto
enable d even I pass  --param=riscv-autovec-preference=none, see
https://godbolt.org/z/TazWKEjzM

Is there a way to disable it, since if vector load and store for smaller
structure assign is costable and harmfull to cpu pipeline.

Thanks

Reply via email to