From owner-svn-doc-head@freebsd.org Mon Jul 20 18:14:55 2015 Return-Path: Delivered-To: svn-doc-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 231769A6057; Mon, 20 Jul 2015 18:14:55 +0000 (UTC) (envelope-from wblock@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 133DD1954; Mon, 20 Jul 2015 18:14:55 +0000 (UTC) (envelope-from wblock@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.14.9/8.14.9) with ESMTP id t6KIEsFm088749; Mon, 20 Jul 2015 18:14:54 GMT (envelope-from wblock@FreeBSD.org) Received: (from wblock@localhost) by repo.freebsd.org (8.14.9/8.14.9/Submit) id t6KIEsdC088748; Mon, 20 Jul 2015 18:14:54 GMT (envelope-from wblock@FreeBSD.org) Message-Id: <201507201814.t6KIEsdC088748@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: wblock set sender to wblock@FreeBSD.org using -f From: Warren Block Date: Mon, 20 Jul 2015 18:14:54 +0000 (UTC) To: doc-committers@freebsd.org, svn-doc-all@freebsd.org, svn-doc-head@freebsd.org Subject: svn commit: r47024 - head/en_US.ISO8859-1/htdocs/news/status X-SVN-Group: doc-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-doc-head@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the doc tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Jul 2015 18:14:55 -0000 Author: wblock Date: Mon Jul 20 18:14:54 2015 New Revision: 47024 URL: https://svnweb.freebsd.org/changeset/doc/47024 Log: Add Warner Losh 's soft float to hard float report. Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2015-04-2015-06.xml Modified: head/en_US.ISO8859-1/htdocs/news/status/report-2015-04-2015-06.xml ============================================================================== --- head/en_US.ISO8859-1/htdocs/news/status/report-2015-04-2015-06.xml Mon Jul 20 01:43:40 2015 (r47023) +++ head/en_US.ISO8859-1/htdocs/news/status/report-2015-04-2015-06.xml Mon Jul 20 18:14:54 2015 (r47024) @@ -2760,4 +2760,88 @@ + + + Warner's ARMv6 Hard Float Experiment + + + + + Warner + Losh + + imp@FreeBSD.org + + + + + Moving + armv6 from Soft Float to Hard Float + + + +

The plan for the transition to hard float on ARMv6 involved + having a new MACHINE_ARCH. That seemed expedient, + but inelegant to me. The kernel can easily run both soft and + hard floating point binaries, assuming that the proper + libraries are available.

+ +

As an experiment, I have been investigating how hard it would + be to just start generating hard float binaries starting with + &os; 11.0 and what issues this causes. I am most interested + in the source, the effects on ports, and any binary/package + upgrade issues from &os; 10.X to 11.

+ +

If successful, this will allow the project to move more + quickly away from a soft-floating point default. Users + upgrading from &os; 10 will automatically be upgraded to hard + float. All supported ARMv6 and ARMv7 processors have hardware + floating point, so this will not be a problem for the vast + majority of users. In addition, many of the build scripts + know about all values of MACHINE_ARCH, and not + changing the MACHINE_ARCH will allow those scripts to + continue to function without additional changes.

+ +

I am about three fourths of the way through investigating + this possibility and coding up solutions to the problems + encountered so far.

+ +

The risks from this experiment are that it will encounter + unforseen dependencies. This could force us to go with the + original plan for migration to hard floating point.

+ +

The hope for this experiment is to pave the way for using the + superior hard floating point in &os; 11 with minimal impact to + our users and their current build scripts and processes. + Backwards compatibility will be ensured with the libsoft tasks + if users need to run &os; 10.X ARMv6 softfloat binaries on + &os; 11.0 with its new hardfloat libraries. Packages should + automatically update once the new hardfloat packages are put + into place.

+ + + + +

Building seat belts into ld.so to not cross-thread + libraries of differing floating point implementations.

+
+ + +

Clang should properly mark hard versus soft floating point + .os. This is a minor issue, since ld + handles things correctly.

+
+ + +

libsoft, the analog of lib32, needs to be + completed.

+
+ + +

Patches to flip the switch from soft to hard for builds for + armv6. Some additional code needed to build soft + float may be needed for the prior task.

+
+
+