The RISC-V open source ecosystem logged 300 commits across 9 projects in June 2024. The most active projects were LLVM (RISC-V) (125), QEMU (RISC-V) (62), Linux Kernel (RISC-V) (56). The extension landscape saw work on Svadu, Zacas, Zbkb, Zmmul, Zvbb, Zve32x, Zve64x, Zvfhmin. Virtualisation saw 17 KVM-related patches.
RISC-V International
The spec repos saw 80 commits this month, led by ISA Manual with 67 commits.
Spec Repository Activity
Repository
Commits
Contributors
ISA Manual
67
8
Profiles
5
2
Debug Spec
3
3
SBI Spec
3
2
ELF psABI
2
2
Linux Kernel (RISC-V)
56
Commits
28
Contributors
1411
Lines Added
390
Lines Removed
Linux Kernel (RISC-V) had a solid month with 56 commits from 28 contributors. Björn Töpel was the most active contributor with 10 commits. New feature work included 20 commits: "riscv: Enable DAX VMEMMAP optimization"; "riscv: mm: Add support for ZONE_DEVICE". Virtualisation work accounted for 9 patches, continuing to mature RISC-V KVM support. Platform and DT work accounted for 7 commits.
20 New features & support10 ISA extensions9 KVM / Virtualisation7 Device tree / platform support6 Interrupt controllers (AIA/APLIC/PLIC)2 Bug fixes2 Cleanup & refactoring2 Performance optimisations1 Security & memory safety fixes1 Vector extension (RVV)
OpenSBI saw moderate activity with 22 commits from 9 contributors. Xiang W was the most active contributor with 8 commits. Device tree and platform support saw 9 commits. Bug fixes accounted for 6 commits (27%). New feature work included 6 commits: "lib: sbi: implement SBI FWFT extension"; "lib: sbi: fwft: add support for SBI_FWFT_PTE_AD_HW_UPDATING". ISA extension work spanned 3 commits, touching Svadu.
9 Device tree / platform support6 Bug fixes6 New features & support3 ISA extensions2 Interrupt controllers (AIA/APLIC/PLIC)
Notable Changes
lib: sbi: Add support for Svade and Svadu extensions (53844c98d0, Yong-Xuan Wang)
platform: generic: andes: Add support for RV32 to set up PMA (52dcf351cd, Ben Zong-You Xie)
lib: utils/irqchip: Skip initialize irqchip when dt is not enabled (b1c7c750f7, Xiang W)
lib: utils/serial: Skip initialize serial when dt is not enabled (179e00a320, Xiang W)
lib: utils/timer: Skip initialize timer when dt is not enabled (5e3ad7d577, Xiang W)
lib: utils/ipi: Skip initialize ipi when dt is not enabled (c5be0e1ed1, Xiang W)
QEMU (RISC-V) had a solid month with 62 commits from 24 contributors. Leading the charge was Daniel Henrique Barboza with 14 commits. New feature work included 21 commits: "target/riscv: Add functions for common matching conditions of trigger"; "target/riscv: Add Zc extension implied rule". ISA extension work spanned 14 commits, touching Zvbb, Zve32x, Zve64x, Zvfhmin, Zvkb. Virtualisation work accounted for 8 patches, continuing to mature RISC-V KVM support. Bug fixes accounted for 8 commits (12%).
21 New features & support14 ISA extensions8 KVM / Virtualisation8 Bug fixes7 Interrupt controllers (AIA/APLIC/PLIC)5 Vector extension (RVV)4 Device tree / platform support3 Cleanup & refactoring
Notable Changes
target/riscv/kvm: add software breakpoints support (80b605056d, Chao Du)
target/riscv: rvv: Remove redudant SEW checking for vector fp narrow/widen instructions (and 3 more) (93cb52b7a3, Max Chou)
hw/riscv/boot.c: Support 64-bit address for initrd (0390039950, Cheng Yang)
It was a busy month in LLVM (RISC-V) land, with 125 commits from 32 contributors. That's +18,103/-5,805 lines of churn. Leading the charge was Craig Topper with 53 commits. New feature work included 46 commits: "[IR] Add getDataLayout() helpers to Function and GlobalValue (#96919)"; "[RISCV] Add test for extending AVL live range across blocks. NFC". The compiler backend saw heavy activity with 42 commits touching code generation. Cleanup and refactoring made up 40 commits (32%). ISA extension work spanned 18 commits, touching Zbkb, Zmmul, Zvfhmin.
46 New features & support42 Compiler backend / code generation40 Cleanup & refactoring18 ISA extensions16 Vector extension (RVV)5 Bug fixes
Notable Changes
[RISCV] Unify all the code that adds unaligned-scalar/vector-mem to Features vector. (#94660) (2d65097b4f, Craig Topper)
Reland "[RISCV] Support select/merge like ops for bf16 vectors when have Zvfbfmin" (#94565)" (be18daad06, Jianjian GUAN)
Revert "[RISCV] Support select/merge like ops for bf16 vectors when have Zvfbfmin" (#94565) (8c452d0cc5, Mehdi Amini)
[clang] Reland Add tanf16 builtin and support for tan constrained intrinsic (#94559) (189d471191, Farzon Lotfi)
[RISCV] Support select/merge like ops for bf16 vectors when have Zvfbfmin (#91936) (d5ab38f69c, Jianjian Guan)
[RISCV] Make the vsll->vadd intrinsic pattern support tail undisturbed intrinsics. (a3d9ca9297, Craig Topper)
[RISCV][GISel] Add calling convention support for half (#94110) (643e4718af, Yingwei Zheng)
[RISCV][NFC] Add UnsupportedSched multiclasses (#95948) (1a364b4eef, Anton Sidorenko)
[CodeGen] Support vectors across all backends (#95518) (6355fb45a5, Farzon Lotfi)
[RISCV] Codegen support for XCVmem extension (#76916) (2afea72968, Liao Chunyu)
[RISCV] Add Smcsrind and Sscsrind extension (#93952) (2fe72385a4, Monad)
[RISCV] Add smcdeleg and ssccfg extensions (#95163) (307d91ee62, Monad)
Recommit "[RISCV] Use vadd.vi for tail undisturbe vsub intrinsic with small immediate." (baa6609fad, Craig Topper)
[CodeGen][NewPM] Split `MachineDominatorTree` into a concrete analysis result (#94571) (837dc542b1, paperchalice)
Revert "[RISCV] Use vadd.vi for tail undisturbe vsub intrinsic with small immediate." (16aef9ec52, Craig Topper)
Top Contributors
Author
Commits
Craig Topper
53
Luke Lau
8
Philip Reames
8
Simon Pilgrim
6
paperchalice
5
Nikita Popov
4
Anton Sidorenko
4
Yingwei Zheng
4
Gábor Spaits
3
Pengcheng Wang
3
glibc (RISC-V)
6
Commits
4
Contributors
249
Lines Added
67
Lines Removed
A quieter month for glibc (RISC-V), with 6 commits from 4 contributors.
3 New features & support
Notable Changes
Implement C23 exp2m1, exp10m1 (7ec903e028, Joseph Myers)
Implement C23 log10p1 (55eb99e9a9, Joseph Myers)
Implement C23 logp1 (bb014f50c4, Joseph Myers)
Convert to autoconf 2.72 (vanilla release, no distribution patches) (98ffc1bfeb, Andreas K. Hüttel)
RISC-V: Execute a PAUSE hint in spin loops (81c7f6193c, Christoph Müllner)
RISC-V: Update ulps (9f2bf0e23a, Julian Zhu)
Top Contributors
Author
Commits
Joseph Myers
3
Christoph Müllner
1
Julian Zhu
1
Andreas K. Hüttel
1
Binutils (RISC-V)
16
Commits
8
Contributors
558
Lines Added
201
Lines Removed
Binutils (RISC-V) saw moderate activity with 16 commits from 8 contributors. ISA extension work spanned 12 commits, touching Zacas, Zvkn, Zvknha. New feature work included 11 commits: "RISC-V: Add Zabha extension CAS instructions."; "RISC-V: Add SiFive cease extension v1.0".
12 ISA extensions11 New features & support
Notable Changes
RISC-V: Add support for XCVmem extension in CV32E40P (and 2 more) (29de80758f, Mary Bennett)
RISC-V: Add support for Zvfbfwma extension (and 2 more) (0b4595be3f, Xiao Zeng)
opcodes/riscv: add styling support to print_reg_list (47277edc32, Andrew Burgess)
RISC-V: Add Zabha extension CAS instructions. (805df5e4a8, Jiawei)
RISC-V: Support S[sm]csrind extension csrs. (b7641ae1af, Jiawei)
RISC-V: Add SiFive cease extension v1.0 (7003edc383, Hau Hsu)
RISC-V: Support Zacas extension. (88729e9616, Gianluca Guida)
RISC-V: Remove implicit enablement of Zvknha from Zvkn. (da16a23481, Feng Wang)
opcodes/riscv: prevent future use of disassemble_info::fprintf_func (5ccd31931e, Andrew Burgess)
RISC-V: Shrink the riscv_implicit_subsets table. (and 2 more) (685dcd295a, Nelson Chu)
A quieter month for OpenOCD (RISC-V), with 5 commits from 4 contributors.
2 New features & support1 ISA extensions
Notable Changes
flash/nor/nrf5: add basic nRF53 and nRF91 support (d94daf776c, Tomas Vanek)
target/riscv: support for smp group manipulation (d382c95d57, Parshintsev Anatoly)
doc: Minimally describe the BSCAN tunnel interface. (2f8bb252ff, Tim Newsome)
pld/intel: remove idcodes from intel.c (9bc7a381b2, Daniel Anselmi)
pld: small documentation fixes. (bf4be566a7, Daniel Anselmi)
Top Contributors
Author
Commits
Daniel Anselmi
2
Tomas Vanek
1
Parshintsev Anatoly
1
Tim Newsome
1
OpenBLAS (RISC-V)
2
Commits
1
Contributors
11
Lines Added
8
Lines Removed
A light month for OpenBLAS (RISC-V) with 2 commits. Martin Kroeker was the driving force, authoring 2 of 2 commits (100%).
Notable Changes
Drop the -static Fortran flag from generic builds as it breaks OpenMP (df87aeb5a2, Martin Kroeker)
Handle INF and NAN in inputs (c1019d5832, Martin Kroeker)
Top Contributors
Author
Commits
Martin Kroeker
2
Linux Kernel Docs & DT (RISC-V)
6
Commits
4
Contributors
98
Lines Added
20
Lines Removed
Linux Kernel Docs & DT (RISC-V) saw lighter activity with 6 commits from 4 contributors. Board and device tree support got 6 commits. The interrupt subsystem got 1 patch of attention this month.
6 Device tree / platform support5 New features & support3 ISA extensions1 Interrupt controllers (AIA/APLIC/PLIC)