Hi Jan,

I'll add that to my to do list, thanks for the report! It may take a
while for me to do since I am a university student however.

best regards,
Julian

On Wed, Jun 4, 2025 at 4:31 PM Jan-Benedict Glaw <jbg...@lug-owl.de> wrote:
>
> Hi Julian,
>
> On Fri, 2025-05-02 09:59:13 +0000, Julian Waters <tanksherma...@gmail.com> 
> wrote:
> > After a long hiatus, I've returned to address review comments on the
> > Windows TLS patch. Attached here is the final patch from this
> > effort. Ok for merge? Will need help from Windows maintainers to
> > commit once this is approved.
> [...]
> > diff --git a/gcc/config/i386/i386.cc b/gcc/config/i386/i386.cc
> > index 2f840338138..2b40a203a61 100644
> > --- a/gcc/config/i386/i386.cc
> > +++ b/gcc/config/i386/i386.cc
> [...]
> > @@ -12363,6 +12390,26 @@ legitimize_tls_address (rtx x, enum tls_model 
> > model, bool for_mov)
> >    machine_mode tp_mode = Pmode;
> >    int type;
> >
> > +#if TARGET_WIN32_TLS
> > +  off = gen_const_mem (SImode, ix86_tls_index ());
> > +  set_mem_alias_set (off, GOT_ALIAS_SET);
> > +
> > +  tp = gen_const_mem (Pmode, GEN_INT (TARGET_64BIT ? 88 : 44));
> > +  set_mem_addr_space (tp, DEFAULT_TLS_SEG_REG);
> > +
> > +  if (TARGET_64BIT)
> > +    off = convert_to_mode (Pmode, off, 1);
> > +
> > +  base = force_reg (Pmode, off);
> > +  tp = copy_to_mode_reg (Pmode, tp);
> > +
> > +  tp = gen_const_mem (Pmode, gen_rtx_PLUS (Pmode, tp, gen_rtx_MULT (Pmode, 
> > base, GEN_INT (UNITS_PER_WORD))));
> > +  set_mem_alias_set (tp, GOT_ALIAS_SET);
> > +
> > +  base = force_reg (Pmode, tp);
> > +
> > +  return gen_rtx_PLUS (Pmode, base, gen_rtx_CONST (Pmode, gen_rtx_UNSPEC 
> > (SImode, gen_rtvec (1, x), UNSPEC_SECREL32)));
> > +#else
> >    /* Fall back to global dynamic model if tool chain cannot support local
> >       dynamic.  */
> >    if (TARGET_SUN_TLS && !TARGET_64BIT
>
> With automated builds (configured with --enable-languages=all
> --enable-languages=c,c++ --disable-gcov --disable-shared
> --disable-threads --target=i686-mingw32crt --without-headers), I see
> new warnings about unused parameters (`model` and `for_mov`) and
> variables (`dest`, `pic`, `tp_mode` and `type`), which are all only
> used in the #else part. That would be nice to cover (which would again
> allow to configure with --enable-werror-always .)
>
> Thanks,
>   Jan-Benedict
>
> --

Reply via email to