Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 4 Mar 2012 00:40:06 -0800
From:      Tim Kientzle <tim@kientzle.com>
To:        Stanislav Sedov <stas@freebsd.org>
Cc:        "arm@freebsd.org" <arm@freebsd.org>
Subject:   Re: native toolchain for freestanding apps
Message-ID:  <EE178EB5-3469-405A-9938-9ADE3B771F02@kientzle.com>
In-Reply-To: <3206B98F-E9F1-4758-9741-AF29FE7CCBFA@kientzle.com>
References:  <23CB6C35-9450-40BA-9FA3-37C44B328CA8@freebsd.org> <CABt%2Bj0mB4w==h_SQ4YyDM24_wGOjcdZDK9T1N3DqjSkap0VkQw@mail.gmail.com> <E8A24EBE-967D-44F8-A884-3207B3C6F0FE@bsdimp.com> <8042D895-3B3D-431E-ADCC-A150BDC838ED@kientzle.com> <890D6B89-8031-496C-A5A2-A2836369F765@FreeBSD.org> <A68B207A-2754-4222-A30B-FDBD143A03D5@kientzle.com> <88338819-70CF-4BA7-92AE-95864F159FF4@FreeBSD.org> <3206B98F-E9F1-4758-9741-AF29FE7CCBFA@kientzle.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mar 3, 2012, at 7:23 PM, Tim Kientzle wrote:
> On Mar 3, 2012, at 5:29 PM, Stanislav Sedov wrote:
>> On Mar 3, 2012, at 11:03 AM, Tim Kientzle <tim@kientzle.com> wrote:
>>> 
>>> 2) Missing div/mod functions in ARM libgcc.
>>> 
>> 
>> Hmm, maybe they are disabled because libc supplies them?
> 
> If I copy the various div/mod object files from libc.a into
> libgcc.a, then u-boot compiles ...
> 
> Is there any compelling reason they can't be in both places?

Here's the patch for libcompiler_rt (aka libgcc.a) that just includes
an extra copy of the numeric routines (duplicating the ones in libc).

With this, I'm now able to build u-boot (and other freestanding
programs) using the FreeBSD xdev tools on ARM.

Any comments?

Index: lib/libcompiler_rt/Makefile
===================================================================
--- lib/libcompiler_rt/Makefile	(revision 232481)
+++ lib/libcompiler_rt/Makefile	(working copy)
@@ -126,8 +126,8 @@
 	umoddi3 \
 	umodti3
 
-# These are already shipped by libc.a on arm and mips
-.if ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips"
+# These are already shipped by libc.a on mips
+.if ${MACHINE_CPUARCH} != "mips"
 SRCF+=	adddf3 \
 	addsf3 \
 	divdf3 \




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?EE178EB5-3469-405A-9938-9ADE3B771F02>