cmd/internal/obj/riscv: add riscv64 CSR map

The map is automatically generated by running the latest version of
parse.py from github.com/riscv/riscv-opcodes.

Change-Id: I05e00ab27ec583750752c25e1835c2578b339fbf
Reviewed-on: https://go-review.googlesource.com/c/go/+/630518
Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Reviewed-by: Pengcheng Wang <wangpengcheng.pp@bytedance.com>
Reviewed-by: Meng Zhuo <mengzhuo1203@gmail.com>
LUCI-TryBot-Result: Go LUCI <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Reviewed-by: Joel Sing <joel@sing.id.au>
Reviewed-by: Michael Pratt <mpratt@google.com>
This commit is contained in:
Mark Ryan 2024-11-19 16:06:03 +01:00 committed by Meng Zhuo
parent f4750a6cfb
commit 5a7db813a6

View file

@ -1229,3 +1229,335 @@ func encode(a obj.As) *inst {
}
return nil
}
var csrs = map[uint16]string{
0x1: "FFLAGS",
0x2: "FRM",
0x3: "FCSR",
0x7: "UTVT",
0x8: "VSTART",
0x9: "VXSAT",
0xa: "VXRM",
0xf: "VCSR",
0x11: "SSP",
0x15: "SEED",
0x17: "JVT",
0x45: "UNXTI",
0x46: "UINTSTATUS",
0x48: "USCRATCHCSW",
0x49: "USCRATCHCSWL",
0x100: "SSTATUS",
0x102: "SEDELEG",
0x103: "SIDELEG",
0x104: "SIE",
0x105: "STVEC",
0x106: "SCOUNTEREN",
0x107: "STVT",
0x10a: "SENVCFG",
0x10c: "SSTATEEN0",
0x10d: "SSTATEEN1",
0x10e: "SSTATEEN2",
0x10f: "SSTATEEN3",
0x120: "SCOUNTINHIBIT",
0x140: "SSCRATCH",
0x141: "SEPC",
0x142: "SCAUSE",
0x143: "STVAL",
0x144: "SIP",
0x145: "SNXTI",
0x146: "SINTSTATUS",
0x148: "SSCRATCHCSW",
0x149: "SSCRATCHCSWL",
0x14d: "STIMECMP",
0x14e: "SCTRCTL",
0x14f: "SCTRSTATUS",
0x150: "SISELECT",
0x151: "SIREG",
0x152: "SIREG2",
0x153: "SIREG3",
0x155: "SIREG4",
0x156: "SIREG5",
0x157: "SIREG6",
0x15c: "STOPEI",
0x15f: "SCTRDEPTH",
0x180: "SATP",
0x181: "SRMCFG",
0x200: "VSSTATUS",
0x204: "VSIE",
0x205: "VSTVEC",
0x240: "VSSCRATCH",
0x241: "VSEPC",
0x242: "VSCAUSE",
0x243: "VSTVAL",
0x244: "VSIP",
0x24d: "VSTIMECMP",
0x24e: "VSCTRCTL",
0x250: "VSISELECT",
0x251: "VSIREG",
0x252: "VSIREG2",
0x253: "VSIREG3",
0x255: "VSIREG4",
0x256: "VSIREG5",
0x257: "VSIREG6",
0x25c: "VSTOPEI",
0x280: "VSATP",
0x300: "MSTATUS",
0x301: "MISA",
0x302: "MEDELEG",
0x303: "MIDELEG",
0x304: "MIE",
0x305: "MTVEC",
0x306: "MCOUNTEREN",
0x307: "MTVT",
0x308: "MVIEN",
0x309: "MVIP",
0x30a: "MENVCFG",
0x30c: "MSTATEEN0",
0x30d: "MSTATEEN1",
0x30e: "MSTATEEN2",
0x30f: "MSTATEEN3",
0x320: "MCOUNTINHIBIT",
0x321: "MCYCLECFG",
0x322: "MINSTRETCFG",
0x323: "MHPMEVENT3",
0x324: "MHPMEVENT4",
0x325: "MHPMEVENT5",
0x326: "MHPMEVENT6",
0x327: "MHPMEVENT7",
0x328: "MHPMEVENT8",
0x329: "MHPMEVENT9",
0x32a: "MHPMEVENT10",
0x32b: "MHPMEVENT11",
0x32c: "MHPMEVENT12",
0x32d: "MHPMEVENT13",
0x32e: "MHPMEVENT14",
0x32f: "MHPMEVENT15",
0x330: "MHPMEVENT16",
0x331: "MHPMEVENT17",
0x332: "MHPMEVENT18",
0x333: "MHPMEVENT19",
0x334: "MHPMEVENT20",
0x335: "MHPMEVENT21",
0x336: "MHPMEVENT22",
0x337: "MHPMEVENT23",
0x338: "MHPMEVENT24",
0x339: "MHPMEVENT25",
0x33a: "MHPMEVENT26",
0x33b: "MHPMEVENT27",
0x33c: "MHPMEVENT28",
0x33d: "MHPMEVENT29",
0x33e: "MHPMEVENT30",
0x33f: "MHPMEVENT31",
0x340: "MSCRATCH",
0x341: "MEPC",
0x342: "MCAUSE",
0x343: "MTVAL",
0x344: "MIP",
0x345: "MNXTI",
0x346: "MINTSTATUS",
0x348: "MSCRATCHCSW",
0x349: "MSCRATCHCSWL",
0x34a: "MTINST",
0x34b: "MTVAL2",
0x34e: "MCTRCTL",
0x350: "MISELECT",
0x351: "MIREG",
0x352: "MIREG2",
0x353: "MIREG3",
0x355: "MIREG4",
0x356: "MIREG5",
0x357: "MIREG6",
0x35c: "MTOPEI",
0x3a0: "PMPCFG0",
0x3a1: "PMPCFG1",
0x3a2: "PMPCFG2",
0x3a3: "PMPCFG3",
0x3a4: "PMPCFG4",
0x3a5: "PMPCFG5",
0x3a6: "PMPCFG6",
0x3a7: "PMPCFG7",
0x3a8: "PMPCFG8",
0x3a9: "PMPCFG9",
0x3aa: "PMPCFG10",
0x3ab: "PMPCFG11",
0x3ac: "PMPCFG12",
0x3ad: "PMPCFG13",
0x3ae: "PMPCFG14",
0x3af: "PMPCFG15",
0x3b0: "PMPADDR0",
0x3b1: "PMPADDR1",
0x3b2: "PMPADDR2",
0x3b3: "PMPADDR3",
0x3b4: "PMPADDR4",
0x3b5: "PMPADDR5",
0x3b6: "PMPADDR6",
0x3b7: "PMPADDR7",
0x3b8: "PMPADDR8",
0x3b9: "PMPADDR9",
0x3ba: "PMPADDR10",
0x3bb: "PMPADDR11",
0x3bc: "PMPADDR12",
0x3bd: "PMPADDR13",
0x3be: "PMPADDR14",
0x3bf: "PMPADDR15",
0x3c0: "PMPADDR16",
0x3c1: "PMPADDR17",
0x3c2: "PMPADDR18",
0x3c3: "PMPADDR19",
0x3c4: "PMPADDR20",
0x3c5: "PMPADDR21",
0x3c6: "PMPADDR22",
0x3c7: "PMPADDR23",
0x3c8: "PMPADDR24",
0x3c9: "PMPADDR25",
0x3ca: "PMPADDR26",
0x3cb: "PMPADDR27",
0x3cc: "PMPADDR28",
0x3cd: "PMPADDR29",
0x3ce: "PMPADDR30",
0x3cf: "PMPADDR31",
0x3d0: "PMPADDR32",
0x3d1: "PMPADDR33",
0x3d2: "PMPADDR34",
0x3d3: "PMPADDR35",
0x3d4: "PMPADDR36",
0x3d5: "PMPADDR37",
0x3d6: "PMPADDR38",
0x3d7: "PMPADDR39",
0x3d8: "PMPADDR40",
0x3d9: "PMPADDR41",
0x3da: "PMPADDR42",
0x3db: "PMPADDR43",
0x3dc: "PMPADDR44",
0x3dd: "PMPADDR45",
0x3de: "PMPADDR46",
0x3df: "PMPADDR47",
0x3e0: "PMPADDR48",
0x3e1: "PMPADDR49",
0x3e2: "PMPADDR50",
0x3e3: "PMPADDR51",
0x3e4: "PMPADDR52",
0x3e5: "PMPADDR53",
0x3e6: "PMPADDR54",
0x3e7: "PMPADDR55",
0x3e8: "PMPADDR56",
0x3e9: "PMPADDR57",
0x3ea: "PMPADDR58",
0x3eb: "PMPADDR59",
0x3ec: "PMPADDR60",
0x3ed: "PMPADDR61",
0x3ee: "PMPADDR62",
0x3ef: "PMPADDR63",
0x5a8: "SCONTEXT",
0x600: "HSTATUS",
0x602: "HEDELEG",
0x603: "HIDELEG",
0x604: "HIE",
0x605: "HTIMEDELTA",
0x606: "HCOUNTEREN",
0x607: "HGEIE",
0x608: "HVIEN",
0x609: "HVICTL",
0x60a: "HENVCFG",
0x60c: "HSTATEEN0",
0x60d: "HSTATEEN1",
0x60e: "HSTATEEN2",
0x60f: "HSTATEEN3",
0x643: "HTVAL",
0x644: "HIP",
0x645: "HVIP",
0x646: "HVIPRIO1",
0x647: "HVIPRIO2",
0x64a: "HTINST",
0x680: "HGATP",
0x6a8: "HCONTEXT",
0x747: "MSECCFG",
0x7a0: "TSELECT",
0x7a1: "TDATA1",
0x7a2: "TDATA2",
0x7a3: "TDATA3",
0x7a4: "TINFO",
0x7a5: "TCONTROL",
0x7a8: "MCONTEXT",
0x7aa: "MSCONTEXT",
0x7b0: "DCSR",
0x7b1: "DPC",
0x7b2: "DSCRATCH0",
0x7b3: "DSCRATCH1",
0xb00: "MCYCLE",
0xb02: "MINSTRET",
0xb03: "MHPMCOUNTER3",
0xb04: "MHPMCOUNTER4",
0xb05: "MHPMCOUNTER5",
0xb06: "MHPMCOUNTER6",
0xb07: "MHPMCOUNTER7",
0xb08: "MHPMCOUNTER8",
0xb09: "MHPMCOUNTER9",
0xb0a: "MHPMCOUNTER10",
0xb0b: "MHPMCOUNTER11",
0xb0c: "MHPMCOUNTER12",
0xb0d: "MHPMCOUNTER13",
0xb0e: "MHPMCOUNTER14",
0xb0f: "MHPMCOUNTER15",
0xb10: "MHPMCOUNTER16",
0xb11: "MHPMCOUNTER17",
0xb12: "MHPMCOUNTER18",
0xb13: "MHPMCOUNTER19",
0xb14: "MHPMCOUNTER20",
0xb15: "MHPMCOUNTER21",
0xb16: "MHPMCOUNTER22",
0xb17: "MHPMCOUNTER23",
0xb18: "MHPMCOUNTER24",
0xb19: "MHPMCOUNTER25",
0xb1a: "MHPMCOUNTER26",
0xb1b: "MHPMCOUNTER27",
0xb1c: "MHPMCOUNTER28",
0xb1d: "MHPMCOUNTER29",
0xb1e: "MHPMCOUNTER30",
0xb1f: "MHPMCOUNTER31",
0xc00: "CYCLE",
0xc01: "TIME",
0xc02: "INSTRET",
0xc03: "HPMCOUNTER3",
0xc04: "HPMCOUNTER4",
0xc05: "HPMCOUNTER5",
0xc06: "HPMCOUNTER6",
0xc07: "HPMCOUNTER7",
0xc08: "HPMCOUNTER8",
0xc09: "HPMCOUNTER9",
0xc0a: "HPMCOUNTER10",
0xc0b: "HPMCOUNTER11",
0xc0c: "HPMCOUNTER12",
0xc0d: "HPMCOUNTER13",
0xc0e: "HPMCOUNTER14",
0xc0f: "HPMCOUNTER15",
0xc10: "HPMCOUNTER16",
0xc11: "HPMCOUNTER17",
0xc12: "HPMCOUNTER18",
0xc13: "HPMCOUNTER19",
0xc14: "HPMCOUNTER20",
0xc15: "HPMCOUNTER21",
0xc16: "HPMCOUNTER22",
0xc17: "HPMCOUNTER23",
0xc18: "HPMCOUNTER24",
0xc19: "HPMCOUNTER25",
0xc1a: "HPMCOUNTER26",
0xc1b: "HPMCOUNTER27",
0xc1c: "HPMCOUNTER28",
0xc1d: "HPMCOUNTER29",
0xc1e: "HPMCOUNTER30",
0xc1f: "HPMCOUNTER31",
0xc20: "VL",
0xc21: "VTYPE",
0xc22: "VLENB",
0xda0: "SCOUNTOVF",
0xdb0: "STOPI",
0xe12: "HGEIP",
0xeb0: "VSTOPI",
0xf11: "MVENDORID",
0xf12: "MARCHID",
0xf13: "MIMPID",
0xf14: "MHARTID",
0xf15: "MCONFIGPTR",
0xfb0: "MTOPI",
}