From owner-freebsd-arm@FreeBSD.ORG Sat Jul 20 16:00:52 2013 Return-Path: Delivered-To: freebsd-arm@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) by hub.freebsd.org (Postfix) with ESMTP id E5183301 for ; Sat, 20 Jul 2013 16:00:52 +0000 (UTC) (envelope-from andrew@fubar.geek.nz) Received: from nibbler.fubar.geek.nz (nibbler.fubar.geek.nz [199.48.134.198]) by mx1.freebsd.org (Postfix) with ESMTP id CE3129CC for ; Sat, 20 Jul 2013 16:00:52 +0000 (UTC) Received: from bender.Home (97e5e46b.skybroadband.com [151.229.228.107]) by nibbler.fubar.geek.nz (Postfix) with ESMTPSA id E64CB5E200 for ; Sat, 20 Jul 2013 16:00:45 +0000 (UTC) Date: Sat, 20 Jul 2013 17:00:39 +0100 From: Andrew Turner To: freebsd-arm@freebsd.org Subject: Call for Testers: VFP optimised float/double helper functions Message-ID: <20130720170039.72c1e9c5@bender.Home> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting FreeBSD to the StrongARM Processor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 20 Jul 2013 16:00:53 -0000 I have been working on adding VFP versions of the ARM EABI float/double helper functions in libc. The patch [1] is mostly ready to commit. The patch only uses the VFP code when the VFP is enabled in the kernel, otherwise it falls back to the softfloat code. To make use of the VFP version of the functions you need to ensure you are using an EABI world, and add the following to your kernel config (if they are not already there): device vfp options ARM_VFP_SUPPORT I would suggest when testing this to libc in a separate directory and use LD_LIBRARY_PATH to load it as bugs in this code can manifest in strange ways and I have found being able to test against the softfloat code can help track them down. I have minimally tested this on a Raspberry Pi but further testing there would be useful. TODO: - Update libm to get/set the rounding method correctly - Test if it works with < armv6 Andrew [1] http://people.freebsd.org/~andrew/arm_float2.diff