From nobody Fri Sep 9 06:58:30 2022 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4MP6K54rQyz4bwYF for ; Fri, 9 Sep 2022 06:58:33 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: from mail-wr1-f43.google.com (mail-wr1-f43.google.com [209.85.221.43]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1D4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4MP6K504dTz3BxP for ; Fri, 9 Sep 2022 06:58:33 +0000 (UTC) (envelope-from jrtc27@jrtc27.com) Received: by mail-wr1-f43.google.com with SMTP id n12so1150969wru.6 for ; Thu, 08 Sep 2022 23:58:32 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=to:references:message-id:content-transfer-encoding:cc:date :in-reply-to:from:subject:mime-version:x-gm-message-state:from:to:cc :subject:date; bh=3VZlJh+II4JSLmwxw7m+dA012rPQ+bh9ftXzKwGANGs=; b=5buFturOX6jZmnowwkEpUo0tusCYJ/gZeKSWaTZfU45xfiZ1f6DXpzWbxtsDvIfW/C rAWmipmjozFoLSE3UxqPF1IWgGavwioWSJohlE6SGhGJKO82p5zPqZNqAYuMbB6gK6fa DeiiZ77L0xDF+jR4UCHMehnUe8FTipg7gaI3GH5mdI/nqH/LV8OehCZTEmpIh8WLy0Vf JtouUNfNUJaQFZRoIRhVgFFrSJ6JXC2on1TrFewQTGv1RNAjWyXczDHUTQqoZU7bI9sR 9xcKuwAf47O4s37EndtjhIOG4C9dWwnl3GEnqwMOHmexYoatftlVb96nG41yD9qgv8CM 7P7Q== X-Gm-Message-State: ACgBeo12Jb2IgYDkkI26NIg/0AJhzLjnPfPXM/+RXmKncoaurrUkynQ0 ttGnyhggXF48+uJpEQH0nhgr6Q== X-Google-Smtp-Source: AA6agR4dqIdDaFO/jJlnW3j1PrzSlgkeRIsegEgi5Ib8oxHNQR+Pw8QrI5SYaqygO95gS0ow12pn2w== X-Received: by 2002:adf:df03:0:b0:228:892a:4c35 with SMTP id y3-20020adfdf03000000b00228892a4c35mr7270611wrl.382.1662706711619; Thu, 08 Sep 2022 23:58:31 -0700 (PDT) Received: from smtpclient.apple (global-5-141.n-2.net.cam.ac.uk. [131.111.5.141]) by smtp.gmail.com with ESMTPSA id k14-20020adfd84e000000b00228db6b9406sm1348430wrl.45.2022.09.08.23.58.30 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 08 Sep 2022 23:58:30 -0700 (PDT) Content-Type: text/plain; charset=utf-8 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.80.82.1.1\)) Subject: Re: git: 20adba8bc1be - main - src.conf: Introduce WITHOUT_MACHDEP knob. From: Jessica Clarke In-Reply-To: <202209090654.2896sZ0S067358@gitrepo.freebsd.org> Date: Fri, 9 Sep 2022 07:58:30 +0100 Cc: "src-committers@freebsd.org" , "dev-commits-src-all@freebsd.org" , "dev-commits-src-main@freebsd.org" Content-Transfer-Encoding: quoted-printable Message-Id: <9643117A-FF55-4805-AF90-9AB217159447@freebsd.org> References: <202209090654.2896sZ0S067358@gitrepo.freebsd.org> To: Gleb Popov X-Mailer: Apple Mail (2.3696.80.82.1.1) X-Rspamd-Queue-Id: 4MP6K504dTz3BxP X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=pass (mx1.freebsd.org: domain of jrtc27@jrtc27.com designates 209.85.221.43 as permitted sender) smtp.mailfrom=jrtc27@jrtc27.com X-Spamd-Result: default: False [-2.50 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-0.998]; MV_CASE(0.50)[]; FORGED_SENDER(0.30)[jrtc27@freebsd.org,jrtc27@jrtc27.com]; R_SPF_ALLOW(-0.20)[+ip4:209.85.128.0/17]; MIME_GOOD(-0.10)[text/plain]; RCPT_COUNT_THREE(0.00)[4]; PREVIOUSLY_DELIVERED(0.00)[dev-commits-src-all@freebsd.org]; TO_DN_EQ_ADDR_SOME(0.00)[]; DMARC_NA(0.00)[freebsd.org]; FROM_HAS_DN(0.00)[]; RCVD_IN_DNSWL_NONE(0.00)[209.85.221.43:from]; TO_MATCH_ENVRCPT_SOME(0.00)[]; FREEFALL_USER(0.00)[jrtc27]; MIME_TRACE(0.00)[0:+]; MLMMJ_DEST(0.00)[dev-commits-src-all@freebsd.org]; RCVD_COUNT_THREE(0.00)[3]; TO_DN_SOME(0.00)[]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; RCVD_TLS_LAST(0.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; R_DKIM_NA(0.00)[]; FROM_NEQ_ENVFROM(0.00)[jrtc27@freebsd.org,jrtc27@jrtc27.com]; MID_RHS_MATCH_FROM(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[209.85.221.43:from] X-ThisMailContainsUnwantedMimeParts: N On 9 Sept 2022, at 07:54, Gleb Popov wrote: >=20 > The branch main has been updated by arrowd (ports committer): >=20 > URL: = https://cgit.FreeBSD.org/src/commit/?id=3D20adba8bc1beb125d5e5ed8f12e747ae= 79ca6a10 >=20 > commit 20adba8bc1beb125d5e5ed8f12e747ae79ca6a10 > Author: Gleb Popov > AuthorDate: 2022-08-08 15:16:00 +0000 > Commit: Gleb Popov > CommitDate: 2022-09-09 06:54:28 +0000 >=20 > src.conf: Introduce WITHOUT_MACHDEP knob. This differs from what you actually did. > Summary: > This knob can be used to make buildsystem prefer generic C = implentations of > various functions, instead of machine-specific assembler ones. >=20 > Test Plan: `make buildworld` on amd64 >=20 > Reviewed by: imp, emaste >=20 > Differential Revision: https://reviews.freebsd.org/D36076 >=20 > MFC after: 3 days This is not the right format for commit messages. > --- > lib/libc/Makefile | 2 +- > lib/libmd/Makefile | 2 +- > lib/msun/Makefile | 2 +- > share/man/man5/src.conf.5 | 2 ++ > share/mk/src.opts.mk | 1 + > tools/build/options/WITHOUT_MACHDEP_OPTIMIZATIONS | 1 + > 6 files changed, 7 insertions(+), 3 deletions(-) >=20 > diff --git a/lib/libc/Makefile b/lib/libc/Makefile > index 3667eea15307..a221a5a66c19 100644 > --- a/lib/libc/Makefile > +++ b/lib/libc/Makefile > @@ -162,7 +162,7 @@ CFLAGS+=3D -DSYMBOL_VERSIONING >=20 > # If there are no machine dependent sources, append all the > # machine-independent sources: > -.if empty(MDSRCS) > +.if empty(MDSRCS) || ${MK_MACHDEP_OPTIMIZATIONS} =3D=3D no These all have _OPTIMIZATIONS. > SRCS+=3D ${MISRCS} > .else > # Append machine-dependent sources, then append machine-independent = sources > diff --git a/lib/libmd/Makefile b/lib/libmd/Makefile > index c98c33bae3f5..8d3a05279004 100644 > --- a/lib/libmd/Makefile > +++ b/lib/libmd/Makefile > @@ -103,7 +103,7 @@ CFLAGS.skein_block.c+=3D -DSKEIN_LOOP=3D995 > .PATH: ${SRCTOP}/sys/crypto/skein = ${SRCTOP}/sys/crypto/skein/${MACHINE_ARCH} >=20 > USE_ASM_SOURCES?=3D1 > -.if defined(BOOTSTRAPPING) > +.if defined(BOOTSTRAPPING) || ${MK_MACHDEP_OPTIMIZATIONS} =3D=3D no > # Don't build ASM sources when bootstrapping to avoid toolchain = dependencies > USE_ASM_SOURCES:=3D0 > .endif > diff --git a/lib/msun/Makefile b/lib/msun/Makefile > index 2382a9ae3fdb..e65e9401cdbf 100644 > --- a/lib/msun/Makefile > +++ b/lib/msun/Makefile > @@ -151,7 +151,7 @@ COMMON_SRCS+=3D catrig.c catrigf.c \ > #COMMON_SRCS+=3D s_fabs.c s_frexp.c s_isnan.c s_ldexp.c s_modf.c >=20 > # Exclude the generic versions of what we provide in the MD area. > -.if defined(ARCH_SRCS) > +.if defined(ARCH_SRCS) && ${MK_MACHDEP_OPTIMIZATIONS} !=3D no > .for i in ${ARCH_SRCS} > COMMON_SRCS:=3D ${COMMON_SRCS:N${i:R}.c} > .endfor > diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5 > index 36fb474b6597..0ccdfa6cd49c 100644 > --- a/share/man/man5/src.conf.5 > +++ b/share/man/man5/src.conf.5 > @@ -1094,6 +1094,8 @@ and related programs. > Build > .Xr ls 1 > without support for colors to distinguish file types. > +.It Va WITHOUT_MACHDEP > +Prefer machine-independent non-assembler code across the code base. Except this lacks the suffix, and is clearly not generated from what=E2=80= =99s in-tree given that=E2=80=99s a WITHOUT_MACHDEP_OPTIMIZATIONS file. Also the description is different. Jess > .It Va WITHOUT_MAIL > Do not build any mail support (MUA or MTA). > When set, it enforces these options: > diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk > index 4ac61f13cee2..a03b8147ecbb 100644 > --- a/share/mk/src.opts.mk > +++ b/share/mk/src.opts.mk > @@ -142,6 +142,7 @@ __DEFAULT_YES_OPTIONS =3D \ > LOCATE \ > LPR \ > LS_COLORS \ > + MACHDEP_OPTIMIZATIONS \ > MAIL \ > MAILWRAPPER \ > MAKE \ > diff --git a/tools/build/options/WITHOUT_MACHDEP_OPTIMIZATIONS = b/tools/build/options/WITHOUT_MACHDEP_OPTIMIZATIONS > new file mode 100644 > index 000000000000..1c596c998504 > --- /dev/null > +++ b/tools/build/options/WITHOUT_MACHDEP_OPTIMIZATIONS > @@ -0,0 +1 @@ > +Prefer machine-independent non-assembler code in libc and libm.