[binutils-gdb] RISC-V: Ssnpm, smnpm and smmpm imply zicsr.

Nelson Chu nelsonc1225@sourceware.org
Fri Mar 21 02:59:53 GMT 2025


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=bc965121b5f02eeb52e2fc6acc94c042bb3ace02

commit bc965121b5f02eeb52e2fc6acc94c042bb3ace02
Author: Dongyan Chen <chendongyan@isrc.iscas.ac.cn>
Date:   Thu Mar 20 12:51:02 2025 +0800

    RISC-V: Ssnpm, smnpm and smmpm imply zicsr.
    
    According to the spec[1], imply zicsr for ssnpm, smnpm and smmpm.
    
    [1] https://github.com/riscv/riscv-j-extension/blob/master/zjpm/instructions.adoc
    
    bfd/ChangeLog:
    
            * elfxx-riscv.c: imply zicsr.

Diff:
---
 bfd/elfxx-riscv.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/bfd/elfxx-riscv.c b/bfd/elfxx-riscv.c
index 481bac91d73..92e024bbe35 100644
--- a/bfd/elfxx-riscv.c
+++ b/bfd/elfxx-riscv.c
@@ -1266,6 +1266,8 @@ static struct riscv_implicit_subset riscv_implicit_subsets[] =
   {"smstateen", "+ssstateen", check_implicit_always},
   {"smepmp", "+zicsr", check_implicit_always},
   {"smdbltrp", "+zicsr", check_implicit_always},
+  {"smnpm", "+zicsr", check_implicit_always},
+  {"smmpm", "+zicsr", check_implicit_always},
 
   {"ssaia", "+zicsr", check_implicit_always},
   {"sscsrind", "+zicsr", check_implicit_always},
@@ -1278,6 +1280,7 @@ static struct riscv_implicit_subset riscv_implicit_subsets[] =
   {"sstvecd", "+zicsr", check_implicit_always},
   {"ssu64xl", "+zicsr", check_implicit_always},
   {"ssdbltrp", "+zicsr", check_implicit_always},
+  {"ssnpm", "+zicsr", check_implicit_always},
 
   {"svade", "+zicsr", check_implicit_always},
   {"svadu", "+zicsr", check_implicit_always},


More information about the Binutils-cvs mailing list