History log of /seL4-test-master/kernel/llvm.cmake
Revision Date Author Comments
# 53ab30a4 01-Aug-2020 Stefan O'Rear <sorear@fastmail.com>

riscv: Enable clang

Signed-off-by: Stefan O'Rear <sorear@fastmail.com>


# a91e979c 01-Aug-2020 Stefan O'Rear <sorear@fastmail.com>

clang: Fix errors on zero kernel devices

"const TYPE *ptr" creates a non-const pointer to const data; for the
pointer itself to be rodata requires "TYPE *const ptr".

Taking the size of the pointer is caught by -Werror by default; suppress
that.

Signed-off-by: Stefan O'Rear <sorear@fastmail.com>


# aa33f87c 01-Aug-2020 Stefan O'Rear <sorear@fastmail.com>

riscv/clang: Use integrated as

When not using integrated as, clang generates %got_pcrel_hi relocs which
are not supported by any currently released version of binutils.

Signed-off-by: Stefan O'Rear <sorear@fastmail.com>


# 79fe0d91 01-Aug-2020 Stefan O'Rear <sorear@fastmail.com>

Add workaround for llvm 11 inline asm regression

Without this an -O0 aarch64 build causes an assertion failure when
compiling inline asm in sel4runtime. See the linked phabricator
comments for analysis.

Signed-off-by: Stefan O'Rear <sorear@fastmail.com>


# f16fbbf9 16-Mar-2020 Kent McLeod <Kent.Mcleod@data61.csiro.au>

gcc.cmake: Don't use CACHE when setting variables

The toolchain file is invoked in many different CACHE contexts and
shouldn't assume any behavior about the cache. Variables set in the file
will also be inherited by any scope that calls project() and so it is
not necessary to write any variables into the CACHE.


# 79da0792 01-Mar-2020 Gerwin Klein <gerwin.klein@data61.csiro.au>

Convert license tags to SPDX identifiers

This commit also converts our own copyright headers to directly use
SPDX, but leaves all other copyright header intact, only adding the
SPDX ident. As far as possible this commit also merges multiple
Data61 copyright statements/headers into one for consistency.


# 1224e15f 20-Feb-2020 Matthew <matt.phillips121@gmail.com>

Set the cross compiler prefix to the triple

By default, clang looks for tools prefixed with the target triple.
Explicitly setting the target triple in the toolchain file allows seL4
tools to do the same.


# 62fcb7c9 10-Feb-2020 Matthew <matt.phillips121@gmail.com>

Error if clang is used with riscv

Riscv is not yet supported with clang so error in
the llvm toolchain file and exit early.


# b043dbde 09-Feb-2020 Matthew <matt.phillips121@gmail.com>

Add ccache to the clang builds

Ccache increases compilation speeds dramatically
Add this to the clang toolchain


# faaef077 04-Feb-2020 Matthew <matt.phillips121@gmail.com>

Do not use clangs builtin assembler

The builtin assembler in clang is not intended for
hand written assembly. Only that generated by clang.
Disable this and use the default one


# 0e8a2cf0 15-Dec-2019 Matthew <matt.phillips121@gmail.com>

Remove unnecessary variables in toolchain files

Setting `-target` flag explicitly is unnecessary. Whenever this needs to
be explicitly passed through, the coompiler id should be checked.

Changes to the musl build system makes the explicit `C_COMPILER`
variable useless.


# 1d8b5d4a 11-Dec-2019 Matthew <matt.phillips121@gmail.com>

Specify the C compiler in a variable for user lvl

Having the basic compiler name in a variable lets us pass it around to
any other user level project (e.g musllibc)


# 895726d4 11-Mar-2019 Jasper Lowell <jasper.lowell@data61.csiro.au>

Add initial LLVM toolchain support