Skip to content

Commit 9075bc0

Browse files
alistair23Michael Tokarev
authored andcommitted
disas/riscv: Decode all of the pmpcfg and pmpaddr CSRs
Previously we only listed a single pmpcfg CSR and the first 16 pmpaddr CSRs. This patch fixes this to list all 16 pmpcfg and all 64 pmpaddr CSRs are part of the disassembly. Reported-by: Eric DeVolder <[email protected]> Signed-off-by: Alistair Francis <[email protected]> Fixes: ea10325 ("RISC-V Disassembler") Reviewed-by: Daniel Henrique Barboza <[email protected]> Cc: qemu-stable <[email protected]> Message-ID: <[email protected]> Signed-off-by: Alistair Francis <[email protected]> (cherry picked from commit 915758c) Signed-off-by: Michael Tokarev <[email protected]>
1 parent 8746327 commit 9075bc0

File tree

1 file changed

+64
-1
lines changed

1 file changed

+64
-1
lines changed

disas/riscv.c

Lines changed: 64 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2190,7 +2190,22 @@ static const char *csr_name(int csrno)
21902190
case 0x0383: return "mibound";
21912191
case 0x0384: return "mdbase";
21922192
case 0x0385: return "mdbound";
2193-
case 0x03a0: return "pmpcfg3";
2193+
case 0x03a0: return "pmpcfg0";
2194+
case 0x03a1: return "pmpcfg1";
2195+
case 0x03a2: return "pmpcfg2";
2196+
case 0x03a3: return "pmpcfg3";
2197+
case 0x03a4: return "pmpcfg4";
2198+
case 0x03a5: return "pmpcfg5";
2199+
case 0x03a6: return "pmpcfg6";
2200+
case 0x03a7: return "pmpcfg7";
2201+
case 0x03a8: return "pmpcfg8";
2202+
case 0x03a9: return "pmpcfg9";
2203+
case 0x03aa: return "pmpcfg10";
2204+
case 0x03ab: return "pmpcfg11";
2205+
case 0x03ac: return "pmpcfg12";
2206+
case 0x03ad: return "pmpcfg13";
2207+
case 0x03ae: return "pmpcfg14";
2208+
case 0x03af: return "pmpcfg15";
21942209
case 0x03b0: return "pmpaddr0";
21952210
case 0x03b1: return "pmpaddr1";
21962211
case 0x03b2: return "pmpaddr2";
@@ -2207,6 +2222,54 @@ static const char *csr_name(int csrno)
22072222
case 0x03bd: return "pmpaddr13";
22082223
case 0x03be: return "pmpaddr14";
22092224
case 0x03bf: return "pmpaddr15";
2225+
case 0x03c0: return "pmpaddr16";
2226+
case 0x03c1: return "pmpaddr17";
2227+
case 0x03c2: return "pmpaddr18";
2228+
case 0x03c3: return "pmpaddr19";
2229+
case 0x03c4: return "pmpaddr20";
2230+
case 0x03c5: return "pmpaddr21";
2231+
case 0x03c6: return "pmpaddr22";
2232+
case 0x03c7: return "pmpaddr23";
2233+
case 0x03c8: return "pmpaddr24";
2234+
case 0x03c9: return "pmpaddr25";
2235+
case 0x03ca: return "pmpaddr26";
2236+
case 0x03cb: return "pmpaddr27";
2237+
case 0x03cc: return "pmpaddr28";
2238+
case 0x03cd: return "pmpaddr29";
2239+
case 0x03ce: return "pmpaddr30";
2240+
case 0x03cf: return "pmpaddr31";
2241+
case 0x03d0: return "pmpaddr32";
2242+
case 0x03d1: return "pmpaddr33";
2243+
case 0x03d2: return "pmpaddr34";
2244+
case 0x03d3: return "pmpaddr35";
2245+
case 0x03d4: return "pmpaddr36";
2246+
case 0x03d5: return "pmpaddr37";
2247+
case 0x03d6: return "pmpaddr38";
2248+
case 0x03d7: return "pmpaddr39";
2249+
case 0x03d8: return "pmpaddr40";
2250+
case 0x03d9: return "pmpaddr41";
2251+
case 0x03da: return "pmpaddr42";
2252+
case 0x03db: return "pmpaddr43";
2253+
case 0x03dc: return "pmpaddr44";
2254+
case 0x03dd: return "pmpaddr45";
2255+
case 0x03de: return "pmpaddr46";
2256+
case 0x03df: return "pmpaddr47";
2257+
case 0x03e0: return "pmpaddr48";
2258+
case 0x03e1: return "pmpaddr49";
2259+
case 0x03e2: return "pmpaddr50";
2260+
case 0x03e3: return "pmpaddr51";
2261+
case 0x03e4: return "pmpaddr52";
2262+
case 0x03e5: return "pmpaddr53";
2263+
case 0x03e6: return "pmpaddr54";
2264+
case 0x03e7: return "pmpaddr55";
2265+
case 0x03e8: return "pmpaddr56";
2266+
case 0x03e9: return "pmpaddr57";
2267+
case 0x03ea: return "pmpaddr58";
2268+
case 0x03eb: return "pmpaddr59";
2269+
case 0x03ec: return "pmpaddr60";
2270+
case 0x03ed: return "pmpaddr61";
2271+
case 0x03ee: return "pmpaddr62";
2272+
case 0x03ef: return "pmpaddr63";
22102273
case 0x0780: return "mtohost";
22112274
case 0x0781: return "mfromhost";
22122275
case 0x0782: return "mreset";

0 commit comments

Comments
 (0)