Re: Profiled libraries on freebsd-current

From: Steve Kargl <sgk_at_troutmask.apl.washington.edu>
Date: Tue, 03 May 2022 00:18:42 UTC
On Mon, May 02, 2022 at 10:37:00AM -0700, Steve Kargl wrote:
> On Mon, May 02, 2022 at 12:32:25PM -0400, Ed Maste wrote:
> > On Sun, 1 May 2022 at 11:54, Steve Kargl
> > <sgk@troutmask.apl.washington.edu> wrote:
> > >
> > > diff --git a/gcc/config/freebsd-spec.h b/gcc/config/freebsd-spec.h
> > > index 594487829b5..1e8ab2e1827 100644
> > > --- a/gcc/config/freebsd-spec.h
> > > +++ b/gcc/config/freebsd-spec.h
> > > @@ -93,14 +93,22 @@ see the files COPYING3 and COPYING.RUNTIME respectively.  If not, see
> > >     (similar to the default, except no -lg, and no -p).  */
> > >
> > >  #ifdef FBSD_NO_THREADS
> > 
> > I wonder if we can simplify things now, and remove this
> > `FBSD_NO_THREADS` case. I didn't see anything similar in other GCC
> > targets I looked at.
> 
> That I don't know.  FBSD_NO_THREADS is defined in freebsd-nthr.h.
> In fact, it's the only thing in that header (except copyright
> broilerplate).  freebsd-nthr.h only appears in config.gcc and
> seems to only get added to the build if someone runs configure
> with --enable-threads=no.  Looking at my last config.log for
> gcc trunk, I see "Thread model: posix", which appears to be
> the default case or if someone does --enable-threads=yes or
> --enable-threads=posix.  So, I suppose it comes down to 
> two questions: (1) is libpthread.* available on all supported
> targets and versions? (2) does anyone build gcc without 
> threads support?
> 

Well, I built and executed gcc testsuite with and without
threads enabled.  Either a few new test failures in the
disable case may unilaterally assume threads are available,
or these are in fact issues (with a rarely used configure
option).



config 1
../gccx/configure --prefix=$HOME/work/x --enable-languages=c,c++,fortran,lto \
  --enable-bootstrap --disable-nls --enable-checking --disable-multilib

config 2
../gccx/configure --prefix=$HOME/work/x --enable-languages=c,c++,fortran,lto \
  --enable-bootstrap --disable-nls --enable-checking --disable-multilib \
  --enable-threads=no --disable-threads

                === g++ Summary ===

                                config 1  config 2
# of expected passes            225442     225348
# of unexpected failures        675        724
# of expected failures          2071       2071
# of unresolved testcases       11         47
# of unsupported tests          10342      10342

                === gcc Summary ===

# of expected passes            175562     175401
# of unexpected failures        1046       1116
# of unexpected successes       20         20
# of expected failures          1459       1459
# of unresolved testcases       10         92
# of unsupported tests          3260       3260

                === gfortran Summary ===

# of expected passes            66124      66046
# of unexpected failures        6          84
# of expected failures          272        272
# of unresolved testcases       2          2
# of unsupported tests          100        100

-- 
Steve