1
0
mirror of https://git.yoctoproject.org/poky synced 2026-05-30 00:20:08 +00:00

llvm: Update to 9.0.0

libOptRemarks has been renamed as libRemarks
RISC-V backend is now supported

(From OE-Core rev: 7f4870132ece9efa7f1404e2620a2e05055bca12)

Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Khem Raj
2019-09-29 11:13:28 -07:00
committed by Richard Purdie
parent 52e5e97ab4
commit 1144b124f3
4 changed files with 17 additions and 25 deletions
+1 -1
View File
@@ -26,7 +26,7 @@ QEMUVERSION ?= "4.1%"
GOVERSION ?= "1.12%" GOVERSION ?= "1.12%"
# This can not use wildcards like 8.0.% since it is also used in mesa to denote # This can not use wildcards like 8.0.% since it is also used in mesa to denote
# llvm version being used, so always bump it with llvm recipe version bump # llvm version being used, so always bump it with llvm recipe version bump
LLVMVERSION ?= "8.0.1" LLVMVERSION ?= "9.0.0"
PREFERRED_VERSION_gcc ?= "${GCCVERSION}" PREFERRED_VERSION_gcc ?= "${GCCVERSION}"
PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} ?= "${GCCVERSION}" PREFERRED_VERSION_gcc-cross-${TARGET_ARCH} ?= "${GCCVERSION}"
@@ -1,13 +1,11 @@
From 4c08879d2dfbe7face4e679ac8499dc7bff2dd20 Mon Sep 17 00:00:00 2001 From dbeecdb307be8b783b42cbc89dcb9c5e7f528989 Mon Sep 17 00:00:00 2001
From: Khem Raj <raj.khem@gmail.com> From: Khem Raj <raj.khem@gmail.com>
Date: Sat, 21 May 2016 00:33:20 +0000 Date: Sat, 21 May 2016 00:33:20 +0000
Subject: [PATCH 06/19] llvm: TargetLibraryInfo: Undefine libc functions if Subject: [PATCH] llvm: TargetLibraryInfo: Undefine libc functions if they are macros
they are macros
musl defines some functions as macros and not inline functions musl defines some functions as macros and not inline functions
if this is the case then make sure to undefine them if this is the case then make sure to undefine them
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- ---
.../llvm/Analysis/TargetLibraryInfo.def | 21 +++++++++++++++++++ .../llvm/Analysis/TargetLibraryInfo.def | 21 +++++++++++++++++++
@@ -87,6 +85,3 @@ index afed404f04c..876888656f2 100644
TLI_DEFINE_ENUM_INTERNAL(tmpfile64) TLI_DEFINE_ENUM_INTERNAL(tmpfile64)
TLI_DEFINE_STRING_INTERNAL("tmpfile64") TLI_DEFINE_STRING_INTERNAL("tmpfile64")
/// int toascii(int c); /// int toascii(int c);
--
2.22.0
@@ -1,14 +1,13 @@
From b66d6f39a374b8df41e7235351e5dee2e81f440c Mon Sep 17 00:00:00 2001 From 61b00e1e051e367f5483d7b5253b6c85a9e8a90f Mon Sep 17 00:00:00 2001
From: Martin Kelly <mkelly@xevo.com> From: Martin Kelly <mkelly@xevo.com>
Date: Fri, 19 May 2017 00:22:57 -0700 Date: Fri, 19 May 2017 00:22:57 -0700
Subject: [PATCH 07/19] llvm: allow env override of exe path Subject: [PATCH] llvm: allow env override of exe path
When using a native llvm-config from inside a sysroot, we need llvm-config to When using a native llvm-config from inside a sysroot, we need llvm-config to
return the libraries, include directories, etc. from inside the sysroot rather return the libraries, include directories, etc. from inside the sysroot rather
than from the native sysroot. Thus provide an env override for calling than from the native sysroot. Thus provide an env override for calling
llvm-config from a target sysroot. llvm-config from a target sysroot.
Upstream-Status: Pending
Signed-off-by: Martin Kelly <mkelly@xevo.com> Signed-off-by: Martin Kelly <mkelly@xevo.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
--- ---
@@ -33,6 +32,3 @@ index 7ef7c46a262..a4f7ed82c7b 100644
// This just needs to be some symbol in the binary; C++ doesn't // This just needs to be some symbol in the binary; C++ doesn't
// allow taking the address of ::main however. // allow taking the address of ::main however.
void *P = (void *)(intptr_t)GetExecutablePath; void *P = (void *)(intptr_t)GetExecutablePath;
--
2.22.0
+12 -11
View File
@@ -3,10 +3,10 @@
DESCRIPTION = "The LLVM Compiler Infrastructure" DESCRIPTION = "The LLVM Compiler Infrastructure"
HOMEPAGE = "http://llvm.org" HOMEPAGE = "http://llvm.org"
LICENSE = "NCSA" LICENSE = "Apache-2.0-with-LLVM-exception"
SECTION = "devel" SECTION = "devel"
LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=c6b766a4e85dd28301eeed54a6684648" LIC_FILES_CHKSUM = "file://LICENSE.TXT;md5=8a15a0759ef07f2682d2ba4b893c9afe"
DEPENDS = "libffi libxml2 zlib libedit ninja-native llvm-native" DEPENDS = "libffi libxml2 zlib libedit ninja-native llvm-native"
@@ -16,17 +16,17 @@ inherit cmake pkgconfig
PROVIDES += "llvm${PV}" PROVIDES += "llvm${PV}"
MAJOR_VERSION = "9"
MINOR_VERSION = "0"
PATCH_VERSION = "0"
PV = "${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}"
LLVM_RELEASE = "${PV}" LLVM_RELEASE = "${PV}"
LLVM_DIR = "llvm${LLVM_RELEASE}" LLVM_DIR = "llvm${LLVM_RELEASE}"
SRCREV = "19a71f6bdf2dddb10764939e7f0ec2b98dba76c9"
BRANCH = "release/${MAJOR_VERSION}.x" BRANCH = "release/${MAJOR_VERSION}.x"
MAJOR_VERSION = "8" SRCREV = "0399d5a9682b3cef71c653373e38890c63c4c365"
MINOR_VERSION = "0"
PATCH_VERSION = "1"
SOLIBVER = "1"
PV = "${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}"
SRC_URI = "git://github.com/llvm/llvm-project.git;branch=${BRANCH} \ SRC_URI = "git://github.com/llvm/llvm-project.git;branch=${BRANCH} \
file://0006-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch;striplevel=2 \ file://0006-llvm-TargetLibraryInfo-Undefine-libc-functions-if-th.patch;striplevel=2 \
file://0007-llvm-allow-env-override-of-exe-path.patch;striplevel=2 \ file://0007-llvm-allow-env-override-of-exe-path.patch;striplevel=2 \
@@ -45,6 +45,7 @@ def get_llvm_arch(bb, d, arch_var):
elif re.match(r'aarch64$', a): return 'AArch64' elif re.match(r'aarch64$', a): return 'AArch64'
elif re.match(r'aarch64_be$', a): return 'AArch64' elif re.match(r'aarch64_be$', a): return 'AArch64'
elif re.match(r'mips(isa|)(32|64|)(r6|)(el|)$', a): return 'Mips' elif re.match(r'mips(isa|)(32|64|)(r6|)(el|)$', a): return 'Mips'
elif re.match(r'riscv(32|64)(eb|)$', a): return 'RISCV'
elif re.match(r'p(pc|owerpc)(|64)', a): return 'PowerPC' elif re.match(r'p(pc|owerpc)(|64)', a): return 'PowerPC'
else: else:
raise bb.parse.SkipRecipe("Cannot map '%s' to a supported LLVM architecture" % a) raise bb.parse.SkipRecipe("Cannot map '%s' to a supported LLVM architecture" % a)
@@ -156,7 +157,7 @@ FILES_${PN}-liblto += "\
" "
FILES_${PN}-liboptremarks += "\ FILES_${PN}-liboptremarks += "\
${libdir}/${LLVM_DIR}/libOptRemarks.so.* \ ${libdir}/${LLVM_DIR}/libRemarks.so.* \
" "
FILES_${PN}-llvmhello = "\ FILES_${PN}-llvmhello = "\
@@ -165,7 +166,7 @@ FILES_${PN}-llvmhello = "\
FILES_${PN}-dev += " \ FILES_${PN}-dev += " \
${libdir}/${LLVM_DIR}/llvm-config \ ${libdir}/${LLVM_DIR}/llvm-config \
${libdir}/${LLVM_DIR}/libOptRemarks.so \ ${libdir}/${LLVM_DIR}/libRemarks.so \
${libdir}/${LLVM_DIR}/libLLVM-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}.so \ ${libdir}/${LLVM_DIR}/libLLVM-${MAJOR_VERSION}.${MINOR_VERSION}.${PATCH_VERSION}.so \
" "