native toolchain for freestanding apps

Tim Kientzle tim at kientzle.com
Sun Mar 4 08:40:13 UTC 2012


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 at 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 \



More information about the freebsd-arm mailing list