svn commit: r336299 - in head: include lib/msun lib/msun/ld128 lib/msun/ld80 lib/msun/man lib/msun/src

Mark Millard marklmi at yahoo.com
Fri Sep 21 01:05:56 UTC 2018


Li-Wen Hsu lwhsu at freebsd.org wrote on
Thu Sep 20 22:10:19 UTC 2018 :

> On Thu, Sep 20, 2018 at 10:06 PM Mark Johnston <markj at freebsd.org> wrote:
> >
> > On Thu, Sep 20, 2018 at 09:39:24AM -0700, John Baldwin wrote:
> > > On 9/20/18 8:54 AM, Mark Johnston wrote:
> > > > On Sun, Jul 15, 2018 at 12:23:11AM +0000, Matt Macy wrote:
> > > >> Author: mmacy
> > > >> Date: Sun Jul 15 00:23:10 2018
> > > >> New Revision: 336299
> > > >> URL: https://svnweb.freebsd.org/changeset/base/336299
> > > >>
> > > >> Log:
> > > >>   msun: add ld80/ld128 powl, cpow, cpowf, cpowl from openbsd
> > > >>
> > > >>   This corresponds to the latest status (hasn't changed in 9+
> > > >>   years) from openbsd of ld80/ld128 powl, and source cpowf, cpow,
> > > >>   cpowl (the complex power functions for float complex, double
> > > >>   complex, and long double complex) which are required for C99
> > > >>   compliance and were missing from FreeBSD. Also required for
> > > >>   some numerical codes using complex numbered Hamiltonians.
> > > >>
> > > >>   Thanks to jhb for tracking down the issue with making
> > > >>   weak_reference compile on powerpc.
> > > >>
> > > >>   When asked to review, bde said "I don't like it" - but
> > > >>   provided no actionable feedback or superior implementations.
> > > >>
> > > >>   Discussed with: jhb
> > > >>   Submitted by: jmd
> > > >>   Differential Revision: https://reviews.freebsd.org/D15919
> > > >
> > > > This seems to have broken the gcc build:
> > > > https://ci.freebsd.org/job/FreeBSD-head-amd64-gcc/
> > > >
> > > > /workspace/src/lib/msun/ld80/e_powl.c:275:1: error: floating constant exceeds range of 'long double' [-Werror=overflow]
> > > >   if( y >= LDBL_MAX )
> > > >   ^~
> > >
> > > Which architecture?  i386 doesn't get build with i386-xtoolchain-gcc pending
> > > some patches I haven't yet posted for review related to the weirdness we do
> > > with floating point on i386.
> >
> > This is the -m32 build on amd64.  I haven't tested it myself, but Mark
> > Millard noted that the issue might be fixed by a gcc update.
> >
> 
> I suspect this.  Each build is in a fresh created jail with the latest
> branch of packages from pkg.freebsd.org.
> 
> At the beginning of (warning: 56MB file)
> https://ci.freebsd.org/job/FreeBSD-head-amd64-gcc/7262/consoleText
> 
> There is:
> 
> New packages to be INSTALLED:
>         amd64-xtoolchain-gcc: 0.4_1
>         amd64-gcc: 6.4.0_2
>         mpfr: 4.0.1
>         gmp: 6.1.2
>         mpc: 1.1.0_1
>         amd64-binutils: 2.30_5,1
> 
> Number of packages to be installed: 6
> 
> Or is there a newer version of devel/amd64-gcc I am not aware?

I wonder when ci.freebsd.org started using "amd64-gcc: 6.4.0_2".
Looking: https://ci.freebsd.org/job/FreeBSD-head-amd64-gcc/6665/consoleText
from back on 2018-Jul-26. This suggests being based on
-r475319 (2018-Jul-25) for devel/powerpc-gcc (the master
port).

Looks like -r475290 (the float.h removal) is the first version
with PORT_REVISION being 2, as are all later versions at
this point. Technically -r476273 (2018-Aug-2) removed a typo from
-r475290 but at the time the typo seemed to not make an operational
difference. Still, ci.freebsd.org seems to not be
using the version with the typo fixed.

Looks like system head being built was -r338831. (I'm only at
-r338675 so far.)

I've started a buildworld buildkernel based -on head -r3338675
and based on master port:

# svnlite diff /usr/ports/devel/powerpc64-gcc/ | more
Index: /usr/ports/devel/powerpc64-gcc/Makefile
===================================================================
--- /usr/ports/devel/powerpc64-gcc/Makefile     (revision 480180)
+++ /usr/ports/devel/powerpc64-gcc/Makefile     (working copy)
@@ -16,7 +16,8 @@
 LIB_DEPENDS=   libgmp.so:math/gmp \
                libmpfr.so:math/mpfr \
                libmpc.so:math/mpc
-BUILD_DEPENDS= ${BU_PREFIX}-as:devel/${PKGNAMEPREFIX}binutils
+BUILD_DEPENDS= ${BU_PREFIX}-as:devel/${PKGNAMEPREFIX}binutils \
+               objdump:devel/binutils
 RUN_DEPENDS=   ${BU_PREFIX}-as:devel/${PKGNAMEPREFIX}binutils
 
 USES=  gmake iconv libtool tar:xz makeinfo compiler

which does not have -r478209 involved ( un-breaking
devel/aarch64-none-elf-gcc ).

# svnlite diff /usr/ports/devel/amd64-gcc/ | more
#

So no differences there (relative to -r480180).


(The objdump is from having built systems based on
WITHOUT_BINUTILS and WITHOUT_BINUTILS_BOOTSTRAP at times
but some devel/*-gcc builds trying to use objdump in the
configuration part of gcc's build.)

My past builds using at or after -r475290 for various system
head revisions have completed without being stopped by an
error but it has been a while. I will see for this one, but
it is only into building lib32 so far.

(Note: My port builds are via devel/poudriere-devel tied to
my /usr/ports/ and to my
/usr/obj/DESTDIRs/clang-amd64-installworld-poud/ that is installed
from the same build that I install and boot from, just with
distrib-dirs distribution DB_FROM_SRC=1 also involved with the
installworld .)


===
Mark Millard
marklmi at yahoo.com
( dsl-only.net went
away in early 2018-Mar)



More information about the svn-src-head mailing list