[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
RE: [PATCH 01/20] Hexagon HVX (target/hexagon) README
From: |
Brian Cain |
Subject: |
RE: [PATCH 01/20] Hexagon HVX (target/hexagon) README |
Date: |
Mon, 12 Jul 2021 13:42:40 +0000 |
> -----Original Message-----
> From: Rob Landley <rob@landley.net>
> Sent: Monday, July 12, 2021 3:16 AM
...
> Except the LLVM_ENABLE_LLD part breaks with a standard debian/devuan x86-
> 64 host
> toolchain because it ONLY works with host llvm, and apparently only a pretty
> current one at that:
>
> https://github.com/tensorflow/mlir-hlo/issues/4
>
> (Devuan Beowulf only packages lld-7, not lld-10.)
Sorry about that, we did test only with fairly current/recent lld.
> I'm currently building:
>
> cmake -G Ninja -DCMAKE_BUILD_TYPE=Release \
> -DCMAKE_INSTALL_PREFIX=$(readlink -f ../llvm) -
> DLLVM_ENABLE_PROJECTS="lld" \
> $(readlink -f ../llvm-project/llvm)
> ninja all install
>
> On the theory that should give me an lld-git I can play $PATH games and re-run
> the other build with, but my QUESTION is what does the
> LLVM_ENABLE_LLD=potato
> actually accomplish here? Is it a sanitizing step or is there something about
> building with gcc's lld that's known to break the hexagon toolchain? If I just
> omit it (to avoid building lld _twice_) will I (probably) get a working
> hexagon
> toolchain? (Assuming I do the musl and headers-install builds and so on?)
>
> What's the _issue_ here that this config symbol addresses?
lld is not necessary to build the hexagon toolchain. It just happens that the
build process takes an enormous amount of time (and memory) using the gnu BFD
ld. I would expect building with either ld/gold would work fine.
If you don't mind binaries, there are x86_64 linux binary toolchains with lld
on releases.llvm.org and there's also a binary hexagon-linux cross toolchain
that we shared for use by kernel developers. The hexagon linux toolchain is
built on Ubuntu 16.04.
But when building your toolchain, omitting LLVM_ENABLE_LLD should work just
fine.
-Brian
- [PATCH 00/20] Hexagon HVX (target/hexagon) patch series, Taylor Simpson, 2021/07/05
- [PATCH 01/20] Hexagon HVX (target/hexagon) README, Taylor Simpson, 2021/07/05
- Re: [PATCH 01/20] Hexagon HVX (target/hexagon) README, Rob Landley, 2021/07/12
- RE: [PATCH 01/20] Hexagon HVX (target/hexagon) README,
Brian Cain <=
- Re: [PATCH 01/20] Hexagon HVX (target/hexagon) README, Rob Landley, 2021/07/18
- RE: [PATCH 01/20] Hexagon HVX (target/hexagon) README, Brian Cain, 2021/07/19
- RE: [PATCH 01/20] Hexagon HVX (target/hexagon) README, Sid Manning, 2021/07/19
- Re: [PATCH 01/20] Hexagon HVX (target/hexagon) README, Rob Landley, 2021/07/26
- Re: [PATCH 01/20] Hexagon HVX (target/hexagon) README, Rob Landley, 2021/07/26
- RE: [PATCH 01/20] Hexagon HVX (target/hexagon) README, Taylor Simpson, 2021/07/26
- Re: [PATCH 01/20] Hexagon HVX (target/hexagon) README, Rob Landley, 2021/07/28
[PATCH 07/20] Hexagon HVX (target/hexagon) import macro definitions, Taylor Simpson, 2021/07/05
[PATCH 08/20] Hexagon HVX (target/hexagon) semantics generator, Taylor Simpson, 2021/07/05
[PATCH 12/20] Hexagon HVX (target/hexagon) helper functions, Taylor Simpson, 2021/07/05