Skip to content

Commit 4cddf67

Browse files
committed
scripts: llvm: Add RV32E multi-libs
This commit adds the following "common" RV32E multi-lib variants, based on the list of the GCC RV32E multi-libs (gcc/config/riscv/t-zephyr): rv32e_zicsr_zifencei/ilp32e rv32em_zicsr_zifencei/ilp32e rv32emc_zicsr_zifencei/ilp32e rv32emc_zicsr_zifencei_zba_zbb_zbc_zbs/ilp32e rv32emc_zicsr/ilp32e rv32emc_zicsr_zba_zbb_zbc_zbs/ilp32e Signed-off-by: Stephanos Ioannidis <[email protected]>
1 parent 0410d15 commit 4cddf67

File tree

2 files changed

+104
-1
lines changed

2 files changed

+104
-1
lines changed

scripts/llvm/CMakeLists.txt

Lines changed: 81 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1900,7 +1900,87 @@ add_library_variants_for_cpu(
19001900
add_library_variants_for_cpu(
19011901
rv32e_zicsr_zifencei
19021902
COMPILE_FLAGS "-march=rv32e_zicsr_zifencei -mabi=ilp32e"
1903-
MULTILIB_FLAGS "--target=riscv32-unknown-none-elf"
1903+
MULTILIB_FLAGS "--target=riscv32-unknown-none-elf -march=rv32e2p0_zicsr2p0_zifencei2p0 -mabi=ilp32e"
1904+
PICOLIBC_BUILD_TYPE "release"
1905+
QEMU_MACHINE "none"
1906+
QEMU_CPU "rv32"
1907+
QEMU_PARAMS "-m 1G"
1908+
BOOT_FLASH_ADDRESS 0x00000000
1909+
BOOT_FLASH_SIZE 0x1000
1910+
FLASH_ADDRESS 0x20000000
1911+
FLASH_SIZE 0x1000000
1912+
RAM_ADDRESS 0x21000000
1913+
RAM_SIZE 0x1000000
1914+
STACK_SIZE 4K
1915+
)
1916+
add_library_variants_for_cpu(
1917+
rv32em_zicsr_zifencei
1918+
COMPILE_FLAGS "-march=rv32em_zicsr_zifencei -mabi=ilp32e"
1919+
MULTILIB_FLAGS "--target=riscv32-unknown-none-elf -march=rv32e2p0_m2p0_zicsr2p0_zifencei2p0_zmmul1p0 -mabi=ilp32e"
1920+
PICOLIBC_BUILD_TYPE "release"
1921+
QEMU_MACHINE "none"
1922+
QEMU_CPU "rv32"
1923+
QEMU_PARAMS "-m 1G"
1924+
BOOT_FLASH_ADDRESS 0x00000000
1925+
BOOT_FLASH_SIZE 0x1000
1926+
FLASH_ADDRESS 0x20000000
1927+
FLASH_SIZE 0x1000000
1928+
RAM_ADDRESS 0x21000000
1929+
RAM_SIZE 0x1000000
1930+
STACK_SIZE 4K
1931+
)
1932+
add_library_variants_for_cpu(
1933+
rv32emc_zicsr_zifencei
1934+
COMPILE_FLAGS "-march=rv32emc_zicsr_zifencei -mabi=ilp32e"
1935+
MULTILIB_FLAGS "--target=riscv32-unknown-none-elf -march=rv32e2p0_m2p0_c2p0_zicsr2p0_zifencei2p0_zmmul1p0 -mabi=ilp32e"
1936+
PICOLIBC_BUILD_TYPE "release"
1937+
QEMU_MACHINE "none"
1938+
QEMU_CPU "rv32"
1939+
QEMU_PARAMS "-m 1G"
1940+
BOOT_FLASH_ADDRESS 0x00000000
1941+
BOOT_FLASH_SIZE 0x1000
1942+
FLASH_ADDRESS 0x20000000
1943+
FLASH_SIZE 0x1000000
1944+
RAM_ADDRESS 0x21000000
1945+
RAM_SIZE 0x1000000
1946+
STACK_SIZE 4K
1947+
)
1948+
add_library_variants_for_cpu(
1949+
rv32emc_zicsr_zifencei_zba_zbb_zbc_zbs
1950+
COMPILE_FLAGS "-march=rv32emc_zicsr_zifencei_zba_zbb_zbc_zbs -mabi=ilp32e"
1951+
MULTILIB_FLAGS "--target=riscv32-unknown-none-elf -march=rv32e2p0_m2p0_c2p0_zicsr2p0_zifencei2p0_zmmul1p0_zba1p0_zbb1p0_zbc1p0_zbs1p0 -mabi=ilp32e"
1952+
PICOLIBC_BUILD_TYPE "release"
1953+
QEMU_MACHINE "none"
1954+
QEMU_CPU "rv32"
1955+
QEMU_PARAMS "-m 1G"
1956+
BOOT_FLASH_ADDRESS 0x00000000
1957+
BOOT_FLASH_SIZE 0x1000
1958+
FLASH_ADDRESS 0x20000000
1959+
FLASH_SIZE 0x1000000
1960+
RAM_ADDRESS 0x21000000
1961+
RAM_SIZE 0x1000000
1962+
STACK_SIZE 4K
1963+
)
1964+
add_library_variants_for_cpu(
1965+
rv32emc_zicsr
1966+
COMPILE_FLAGS "-march=rv32emc_zicsr -mabi=ilp32e"
1967+
MULTILIB_FLAGS "--target=riscv32-unknown-none-elf -march=rv32e2p0_m2p0_c2p0_zicsr2p0_zmmul1p0 -mabi=ilp32e"
1968+
PICOLIBC_BUILD_TYPE "release"
1969+
QEMU_MACHINE "none"
1970+
QEMU_CPU "rv32"
1971+
QEMU_PARAMS "-m 1G"
1972+
BOOT_FLASH_ADDRESS 0x00000000
1973+
BOOT_FLASH_SIZE 0x1000
1974+
FLASH_ADDRESS 0x20000000
1975+
FLASH_SIZE 0x1000000
1976+
RAM_ADDRESS 0x21000000
1977+
RAM_SIZE 0x1000000
1978+
STACK_SIZE 4K
1979+
)
1980+
add_library_variants_for_cpu(
1981+
rv32emc_zicsr_zba_zbb_zbc_zbs
1982+
COMPILE_FLAGS "-march=rv32emc_zicsr_zba_zbb_zbc_zbs -mabi=ilp32e"
1983+
MULTILIB_FLAGS "--target=riscv32-unknown-none-elf -march=rv32e2p0_m2p0_c2p0_zicsr2p0_zmmul1p0_zba1p0_zbb1p0_zbc1p0_zbs1p0 -mabi=ilp32e"
19041984
PICOLIBC_BUILD_TYPE "release"
19051985
QEMU_MACHINE "none"
19061986
QEMU_CPU "rv32"
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
# RUN: %clang -print-multi-directory --target=riscv32-none-elf -march=rv32e_zicsr_zifencei -mabi=ilp32e | FileCheck %s --check-prefix=RV32E_ZICSR_ZIFENCEI
2+
# RV32E_ZICSR_ZIFENCEI: riscv32-none-elf/rv32e_zicsr_zifencei_exn_rtti{{$}}
3+
# RV32E_ZICSR_ZIFENCEI-EMPTY:
4+
5+
# RUN: %clang -print-multi-directory --target=riscv32-none-elf -march=rv32em_zicsr_zifencei -mabi=ilp32e | FileCheck %s --check-prefix=RV32EM_ZICSR_ZIFENCEI
6+
# RV32EM_ZICSR_ZIFENCEI: riscv32-none-elf/rv32em_zicsr_zifencei_exn_rtti{{$}}
7+
# RV32EM_ZICSR_ZIFENCEI-EMPTY:
8+
9+
# RUN: %clang -print-multi-directory --target=riscv32-none-elf -march=rv32emc_zicsr_zifencei -mabi=ilp32e | FileCheck %s --check-prefix=RV32EMC_ZICSR_ZIFENCEI
10+
# RV32EMC_ZICSR_ZIFENCEI: riscv32-none-elf/rv32emc_zicsr_zifencei_exn_rtti{{$}}
11+
# RV32EMC_ZICSR_ZIFENCEI-EMPTY:
12+
13+
# RUN: %clang -print-multi-directory --target=riscv32-none-elf -march=rv32emc_zicsr_zifencei_zba_zbb_zbc_zbs -mabi=ilp32e | FileCheck %s --check-prefix=RV32EMC_ZICSR_ZIFENCEI_ZBA_ZBB_ZBC_ZBS
14+
# RV32EMC_ZICSR_ZIFENCEI_ZBA_ZBB_ZBC_ZBS: riscv32-none-elf/rv32emc_zicsr_zifencei_zba_zbb_zbc_zbs_exn_rtti{{$}}
15+
# RV32EMC_ZICSR_ZIFENCEI_ZBA_ZBB_ZBC_ZBS-EMPTY:
16+
17+
# RUN: %clang -print-multi-directory --target=riscv32-none-elf -march=rv32emc_zicsr -mabi=ilp32e | FileCheck %s --check-prefix=RV32EMC_ZICSR
18+
# RV32EMC_ZICSR: riscv32-none-elf/rv32emc_zicsr_exn_rtti{{$}}
19+
# RV32EMC_ZICSR-EMPTY:
20+
21+
# RUN: %clang -print-multi-directory --target=riscv32-none-elf -march=rv32emc_zicsr_zba_zbb_zbc_zbs -mabi=ilp32e | FileCheck %s --check-prefix=RV32EMC_ZICSR_ZBA_ZBB_ZBC_ZBS
22+
# RV32EMC_ZICSR_ZBA_ZBB_ZBC_ZBS: riscv32-none-elf/rv32emc_zicsr_zba_zbb_zbc_zbs_exn_rtti{{$}}
23+
# RV32EMC_ZICSR_ZBA_ZBB_ZBC_ZBS-EMPTY:

0 commit comments

Comments
 (0)