Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 4 Mar 2012 12:32:29 -0800
From:      Tim Kientzle <tim@kientzle.com>
To:        Warner Losh <imp@bsdimp.com>
Cc:        "arm@freebsd.org" <arm@freebsd.org>
Subject:   Re: native toolchain for freestanding apps
Message-ID:  <070DCE47-0AE4-48B4-9300-1A361AE0557A@kientzle.com>
In-Reply-To: <7BF42BF4-547A-424D-A0F0-99075BE86C15@bsdimp.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> <EE178EB5-3469-405A-9938-9ADE3B771F02@kientzle.com> <20120304221219.434706ca@fubar.geek.nz> <7BF42BF4-547A-424D-A0F0-99075BE86C15@bsdimp.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On Mar 4, 2012, at 11:56 AM, Warner Losh wrote:

>=20
> On Mar 4, 2012, at 2:12 AM, Andrew Turner wrote:
>=20
>> On Sun, 4 Mar 2012 00:40:06 -0800
>> Tim Kientzle <tim@kientzle.com> wrote:
>>=20
>>> 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:
>>>>>>=20
>>>>>> 2) Missing div/mod functions in ARM libgcc.
>>>>>>=20
>>>>>=20
>>>>> Hmm, maybe they are disabled because libc supplies them?
>>>>=20
>>>> If I copy the various div/mod object files from libc.a into
>>>> libgcc.a, then u-boot compiles ...
>>>>=20
>>>> Is there any compelling reason they can't be in both places?
>> Have you tried to build a FreeBSD binary when both lots of symbols =
are
>> provided? If it links properly then I can't think of any reason we
>> couldn't provide both. The compiler-rt versions are hidden so =
shouldn't
>> be exposed.
>>=20
>>> 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).
>>>=20
>>> With this, I'm now able to build u-boot (and other freestanding
>>> programs) using the FreeBSD xdev tools on ARM.
>>>=20
>>> Any comments?
>> I have done the same with the ARM EABI support as compiler-rt =
provides
>> the required __aeabi_* symbols. This will mean with it's support the
>> libc versions are unneeded.
>=20
> I'd say 'commit it unless it gets in the way of something' then :)  =
The patch looks good to my eye.

I'm running a "make universe" with those symbols duplicated
in libc and libcompiler_rt (aka libgcc.a) for both ARM and MIPS.
If that passes, I'll commit and see who yells. ;-)

Thanks for the feedback.  I'm still feeling my way around
the ARM stuff.

Tim




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?070DCE47-0AE4-48B4-9300-1A361AE0557A>