Building an ARM/RPI-B release (hacked) on CURRENT/AMD64.

Ian Lepore ian at FreeBSD.org
Thu Apr 17 20:50:18 UTC 2014


On Thu, 2014-04-17 at 20:54 +0100, Mark R V Murray wrote:
> On 17 Apr 2014, at 20:14, Warner Losh <imp at bsdimp.com> wrote:
> 
> > 
> > On Apr 17, 2014, at 1:07 PM, Ian Lepore <ian at FreeBSD.org> wrote:
> >> 
> >> 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.  
> > 
> > what’s the other part? Global register variables like this?
> 
> Yah. U-boot/Arm is heavily dependant on using R9 (previously R8) as a
> global register variable.
> 
> >> 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.
> > 
> > Is that a poke in the eye of uboot, or is it more of a contention that
> > uboot is moving away from that need?
> 
> It means that for now I guess we are stuck with using GCC to compile u-boot.
> 
> I’d mind a lot less if this was done as a port.
> 
> <thinking mode=“aloud”>
> Hmm. A port to do what crochet does, without all the FreeBSD/ARM (build|install)(world|kernel) stuff?
> 
> Something that makes an empty <mumble>.img (with only the weird boot bits in it) as its “product” for later use by the release process might be nice.
> 
> I’m guessing (more like hoping) that once the boot bits work, they’ll be pretty stable for a given platform for a while, and the .img file could be kept under src/release/… somewhere. This way, it doesn’t matter if some humongous GCC port is used for cross-building; this would be only needed when the boot-bits change.
> <thinking>

I'm not very familiar with crochet, but I'm confused now... Tim K. is
the creator of crochet, and he's the maintainer of the
u-boot-beaglebone-eabi port, which uses the gcc cross-compiler from
ports.  So did Tim not use his own excellent port in crochet?

-- Ian




More information about the freebsd-arm mailing list