diff options
author | Khem Raj <raj.khem@gmail.com> | 2022-04-13 19:52:25 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2022-04-19 14:14:11 +0100 |
commit | 5d55cebe61f93b3b7544f9036b61bd0283097431 (patch) | |
tree | ba574455501a52cfec2bb9c21786e480355382c4 /meta/conf/machine | |
parent | b66928407afbc0144b10648446e42a8cce4d68ae (diff) | |
download | poky-5d55cebe61f93b3b7544f9036b61bd0283097431.tar.gz |
riscv: Add tunes for rv64 without compressed instructions
(From OE-Core rev: 4790eaf98e030ffeecfbde6644137c9d6d1873d7)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/conf/machine')
-rw-r--r-- | meta/conf/machine/include/riscv/arch-riscv.inc | 2 | ||||
-rw-r--r-- | meta/conf/machine/include/riscv/tune-riscv.inc | 8 |
2 files changed, 10 insertions, 0 deletions
diff --git a/meta/conf/machine/include/riscv/arch-riscv.inc b/meta/conf/machine/include/riscv/arch-riscv.inc index e5611a12a6..230a266563 100644 --- a/meta/conf/machine/include/riscv/arch-riscv.inc +++ b/meta/conf/machine/include/riscv/arch-riscv.inc | |||
@@ -7,6 +7,8 @@ TUNE_PKGARCH = "${TUNE_PKGARCH:tune-${DEFAULTTUNE}}" | |||
7 | TUNE_CCARGS:append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv64nf', ' -mabi=lp64', ' ', d)}" | 7 | TUNE_CCARGS:append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv64nf', ' -mabi=lp64', ' ', d)}" |
8 | TUNE_CCARGS:append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv32nf', ' -mabi=ilp32', ' ', d)}" | 8 | TUNE_CCARGS:append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv32nf', ' -mabi=ilp32', ' ', d)}" |
9 | 9 | ||
10 | TUNE_CCARGS:append = "${@bb.utils.contains('TUNE_FEATURES', 'riscv64nc', ' -march=rv64imafd', ' ', d)}" | ||
11 | |||
10 | # Fix: ld: unrecognized option '--hash-style=sysv' | 12 | # Fix: ld: unrecognized option '--hash-style=sysv' |
11 | LINKER_HASH_STYLE:libc-newlib = "" | 13 | LINKER_HASH_STYLE:libc-newlib = "" |
12 | # Fix: ld: unrecognized option '--hash-style=gnu' | 14 | # Fix: ld: unrecognized option '--hash-style=gnu' |
diff --git a/meta/conf/machine/include/riscv/tune-riscv.inc b/meta/conf/machine/include/riscv/tune-riscv.inc index cc2896f277..659801496c 100644 --- a/meta/conf/machine/include/riscv/tune-riscv.inc +++ b/meta/conf/machine/include/riscv/tune-riscv.inc | |||
@@ -6,6 +6,8 @@ TUNEVALID[riscv32] = "Enable 32-bit RISC-V optimizations" | |||
6 | TUNEVALID[riscv64nf] = "Enable 64-bit RISC-V optimizations no floating point" | 6 | TUNEVALID[riscv64nf] = "Enable 64-bit RISC-V optimizations no floating point" |
7 | TUNEVALID[riscv32nf] = "Enable 32-bit RISC-V optimizations no floating point" | 7 | TUNEVALID[riscv32nf] = "Enable 32-bit RISC-V optimizations no floating point" |
8 | 8 | ||
9 | TUNEVALID[riscv64nc] = "Enable 64-bit RISC-V optimizations without compressed instructions" | ||
10 | |||
9 | TUNEVALID[bigendian] = "Big endian mode" | 11 | TUNEVALID[bigendian] = "Big endian mode" |
10 | 12 | ||
11 | AVAILTUNES += "riscv64 riscv32 riscv64nf riscv32nf" | 13 | AVAILTUNES += "riscv64 riscv32 riscv64nf riscv32nf" |
@@ -31,3 +33,9 @@ TUNE_FEATURES:tune-riscv32nf = "${TUNE_FEATURES:tune-riscv32} riscv32nf" | |||
31 | TUNE_ARCH:tune-riscv32nf = "riscv32" | 33 | TUNE_ARCH:tune-riscv32nf = "riscv32" |
32 | TUNE_PKGARCH:tune-riscv32nf = "riscv32nf" | 34 | TUNE_PKGARCH:tune-riscv32nf = "riscv32nf" |
33 | PACKAGE_EXTRA_ARCHS:tune-riscv32nf = "riscv32nf" | 35 | PACKAGE_EXTRA_ARCHS:tune-riscv32nf = "riscv32nf" |
36 | |||
37 | # no compressed | ||
38 | TUNE_FEATURES:tune-riscv64nc = "${TUNE_FEATURES:tune-riscv64} riscv64nc" | ||
39 | TUNE_ARCH:tune-riscv64nc = "riscv64" | ||
40 | TUNE_PKGARCH:tune-riscv64nc = "riscv64nc" | ||
41 | PACKAGE_EXTRA_ARCHS:tune-riscv64nc = "riscv64nc" | ||