[LLVMdev] Cross-compiling Compiler-RT builtins

Vadim Chugunov vadimcn at gmail.com
Tue Mar 4 01:14:38 PST 2014


I've implemented something like this in Rust's fork of
compiler-rt<https://github.com/rust-lang/compiler-rt/commits/rust-2014-02-17-do-not-delete>.

Note that this can only be built via makefile, and, I suspect, my change
does not do a good job at figuring out appropriate gcc flags for each
platform, because I expect CFLAGS to be passed along from the parent
project's build script.
On the plus side, it seems to work on all platforms that Rust currently
supports (Linux, Windows, OSX, FreeBSD, Android), so Rust (almost) doesn't
need libgcc anymore.  ("almost" because there's still no replacement for
stack unwinding routines).



On Mon, Mar 3, 2014 at 12:00 PM, Kev Kitchens <kitchens.sync at me.com> wrote:

> I am attempting to port an operating system project to use Clang/LLVM
> instead of GCC, but I'm having issues with Compiler-RT. Right now, the OS
> is being cross-compiled on an x86_64 host targeting ARMv7a. I built the
> LLVM toolchain according to the instructions, though I limited the
> supported targets to arm, x86, and x86_64 to reduce compilation time. I'm
> finding that compilation proceeds fine but fails at the linking stage due
> to missing compiler builtins. When I examined the build log for the LLVM
> toolchain, I found that Compiler-RT was only being built for x86_64. So, as
> a stopgap, I've started linking against the existing cross-compiled libgcc
> to fill in the gaps. However, I'm trying to find out what I need to do to
> cross-compile Compiler-RT's builtins library for ARMv7 so I can use it to
> replace libgcc. Any help here would be appreciated.
>
>
>
> Thanks,
>
> Kev Kitchens
>
> _______________________________________________
> LLVM Developers mailing list
> LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20140304/b7cc44b1/attachment.html>


More information about the llvm-dev mailing list