Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 17 Apr 2014 14:06:02 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Mark R V Murray <mark@grondar.org>
Cc:        Tim Kientzle <tim@kientzle.com>, freebsd-arm <freebsd-arm@FreeBSD.org>, ticso@cicely.de, Ian Lepore <ian@FreeBSD.org>
Subject:   Re: Building an ARM/RPI-B release (hacked) on CURRENT/AMD64.
Message-ID:  <E0A43FC9-CBC9-4E6F-BDF1-B72C57145B3F@bsdimp.com>
In-Reply-To: <54D788B2-BD68-4F75-86FF-0C4E71D9B75A@grondar.org>
References:  <9FDD6F0E-B2A9-48D9-A3E4-181868995FDA@grondar.org> <EC41E53F-96EF-4652-9A02-D49448D104BE@kientzle.com> <20140417103117.GE44138@cicely7.cicely.de> <1397738961.1124.157.camel@revolution.hippie.lan> <ED243420-AC33-4D90-A23D-0266C142F3C1@grondar.org> <1397761628.1124.245.camel@revolution.hippie.lan> <7196A020-54E1-42FA-B8A0-25B145B0E412@bsdimp.com> <54D788B2-BD68-4F75-86FF-0C4E71D9B75A@grondar.org>

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

On Apr 17, 2014, at 1:54 PM, Mark R V Murray <mark@grondar.org> wrote:

>=20
> On 17 Apr 2014, at 20:14, Warner Losh <imp@bsdimp.com> wrote:
>=20
>>=20
>> On Apr 17, 2014, at 1:07 PM, Ian Lepore <ian@FreeBSD.org> wrote:
>>>=20
>>> Hmmm.  After a bit of poking around in the llvm code, it looks like =
the
>>> full extent of the support for -ffixed-r9 is that it doesn't =
consider
>>> that register available for use by the code generator; that's only =
part
>>> of what u-boot needs. =20
>>=20
>> what=92s the other part? Global register variables like this?
>=20
> Yah. U-boot/Arm is heavily dependant on using R9 (previously R8) as a
> global register variable.
>=20
>>> Some online notes I found for clang 3.5 claim that global register
>>> variables aren't supported, and aren't likely to be any time soon.
>>=20
>> Is that a poke in the eye of uboot, or is it more of a contention =
that
>> uboot is moving away from that need?
>=20
> It means that for now I guess we are stuck with using GCC to compile =
u-boot.
>=20
> I=92d mind a lot less if this was done as a port.
>=20
> <thinking mode=3D=93aloud=94>
> Hmm. A port to do what crochet does, without all the FreeBSD/ARM =
(build|install)(world|kernel) stuff?
>=20
> Something that makes an empty <mumble>.img (with only the weird boot =
bits in it) as its =93product=94 for later use by the release process =
might be nice.
>=20
> I=92m guessing (more like hoping) that once the boot bits work, =
they=92ll be pretty stable for a given platform for a while, and the =
.img file could be kept under src/release/=85 somewhere. This way, it =
doesn=92t matter if some humongous GCC port is used for cross-building; =
this would be only needed when the boot-bits change.
> <thinking>

Ideally we=92d have it as a package which crochet could grab and use =
rather than build from scratch. And the package should build with =
whatever arm gcc we provide it with. Then crochet wouldn=92t need to =
build xdev. It is really kinda abusing it as it is because xdev is =
intended to be a fully functional cross compiler for FreeBSD/arm, not =
just an arm cross compiler=85

Warner=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?E0A43FC9-CBC9-4E6F-BDF1-B72C57145B3F>