Re: [PATCH] RISC-V: Implement reassociation width hook

Jeffrey Law <[email protected]> Wed, 5 Aug 2026 20:24:14 -0600
Newsgroups gmane.comp.gcc.patches
Message-ID <[email protected]>

On 8/4/2026 5:38 AM, Wang Yaduo wrote:
> > diff --git a/gcc/config/riscv/riscv.cc b/gcc/config/riscv/riscv.cc
> > index a401c0c7c9..a2b4149851 100644
> > --- a/gcc/config/riscv/riscv.cc
> > +++ b/gcc/config/riscv/riscv.cc
> > @@ -300,6 +300,9 @@ struct riscv_tune_param
> >   const char *jump_align;
> >   const char *loop_align;
> >   bool prefer_agnostic;
> > +  unsigned short int_reassoc_width = 1;
> > +  unsigned short fp_reassoc_width = 1;
> > +  unsigned short vec_reassoc_width = 1;
> >    unsigned int small_loop_unroll_ninsns = 4;
> >    unsigned int small_loop_unroll_factor = 2;
> >  };
> Hi Jeff,
>
>   From c++14, The omitted members with default member initializers use 
> those
> initializers. Therefore, rocket_tune_info and the other initializers 
> ending at
> prefer_agnostic get reassociation widths of 1/1/1, like the previous
> small_loop_unroll_* field did.Do you prefer the fields to be explicit 
> in every
> initializer for clarity?
You're right.  I tend to think like an old C guy (well, I am an old C 
guy :-)  Having been bitten by this before I zeroed in and didn't 
re-evaluate in the C++14 world.  Thanks for being persistent.

As Robin indicated, this is OK for the trunk.  I'll push it momentarily.

jeff