summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2024-03-18 23:01:43 -0700
committerKhem Raj <raj.khem@gmail.com>2024-03-19 09:52:16 -0700
commit2c1ac866f5338d7e4b085e5f6c7a2ab353ed3015 (patch)
tree99973df492d8fb4a8e37059335bc3c65a7e42e22
parent606a21be6318950021ae2143ae6349a09124222a (diff)
downloadmeta-clang-2c1ac866f5338d7e4b085e5f6c7a2ab353ed3015.tar.gz
clang.bbclass: Do not lose TUNE_CCARGS_MARCH_OPTS when rewriting big.LITTLE mcpu
Currently, clang options lose the qualifiers like +crc+crypto which are in TUNE_CCARGS_MARCH_OPTS when options like -mcpu=big.little are transformed to -mcpu=little as clang does not understand -mcpu=big.little while gcc does. Here we append TUNE_CCARGS_MARCH_OPTS after the rewrite Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--classes/clang.bbclass18
1 files changed, 13 insertions, 5 deletions
diff --git a/classes/clang.bbclass b/classes/clang.bbclass
index 5cdae4f..d5fa67a 100644
--- a/classes/clang.bbclass
+++ b/classes/clang.bbclass
@@ -37,11 +37,19 @@ TUNE_CCARGS:remove:toolchain-clang = "-mel"
37TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mbig-endian", " -mlittle-endian", d)}" 37TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains("TUNE_FEATURES", "bigendian", " -mbig-endian", " -mlittle-endian", d)}"
38 38
39# Clang does not yet support big.LITTLE performance tunes, so use the LITTLE for tunes 39# Clang does not yet support big.LITTLE performance tunes, so use the LITTLE for tunes
40TUNE_CCARGS:remove:toolchain-clang = "-mcpu=cortex-a57.cortex-a53 -mcpu=cortex-a72.cortex-a53 -mcpu=cortex-a15.cortex-a7 -mcpu=cortex-a17.cortex-a7 -mcpu=cortex-a72.cortex-a35 -mcpu=cortex-a73.cortex-a53 -mcpu=cortex-a75.cortex-a55 -mcpu=cortex-a76.cortex-a55" 40TUNE_CCARGS:remove:toolchain-clang = "\
41TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa72-cortexa53 cortexa57-cortexa53 cortexa73-cortexa53", " -mcpu=cortex-a53", "", d)}" 41 -mcpu=cortex-a57.cortex-a53${TUNE_CCARGS_MARCH_OPTS} \
42TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa15-cortexa7 cortexa17-cortexa7", " -mcpu=cortex-a7", "", d)}" 42 -mcpu=cortex-a72.cortex-a53${TUNE_CCARGS_MARCH_OPTS} \
43TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa72-cortexa35", " -mcpu=cortex-a35", "", d)}" 43 -mcpu=cortex-a15.cortex-a7${TUNE_CCARGS_MARCH_OPTS} \
44TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa75-cortexa55 cortexa76-cortexa55", " -mcpu=cortex-a55", "", d)}" 44 -mcpu=cortex-a17.cortex-a7${TUNE_CCARGS_MARCH_OPTS} \
45 -mcpu=cortex-a72.cortex-a35${TUNE_CCARGS_MARCH_OPTS} \
46 -mcpu=cortex-a73.cortex-a53${TUNE_CCARGS_MARCH_OPTS} \
47 -mcpu=cortex-a75.cortex-a55${TUNE_CCARGS_MARCH_OPTS} \
48 -mcpu=cortex-a76.cortex-a55${TUNE_CCARGS_MARCH_OPTS}"
49TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa72-cortexa53 cortexa57-cortexa53 cortexa73-cortexa53", " -mcpu=cortex-a53${TUNE_CCARGS_MARCH_OPTS}", "", d)}"
50TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa15-cortexa7 cortexa17-cortexa7", " -mcpu=cortex-a7${TUNE_CCARGS_MARCH_OPTS}", "", d)}"
51TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa72-cortexa35", " -mcpu=cortex-a35${TUNE_CCARGS_MARCH_OPTS}", "", d)}"
52TUNE_CCARGS:append:toolchain-clang = "${@bb.utils.contains_any("TUNE_FEATURES", "cortexa75-cortexa55 cortexa76-cortexa55", " -mcpu=cortex-a55${TUNE_CCARGS_MARCH_OPTS}", "", d)}"
45 53
46# Workaround for https://github.com/llvm/llvm-project/issues/85699 54# Workaround for https://github.com/llvm/llvm-project/issues/85699
47# needed for 64bit rpi3/rpi4 machines 55# needed for 64bit rpi3/rpi4 machines