This is an archive of the discontinued LLVM Phabricator instance.

[LLDB][RISCV] Add RVV registers enums
ClosedPublic

Authored by Emmmer on Jan 17 2023, 12:05 AM.

Details

Summary

RVV stands for "RISC-V V Extension", which adds 32 vector registers, and seven unprivileged CSRs (vstart, vxsat, vxrm, vcsr, vtype, vl, vlenb) to a base scalar RISC-V ISA.

The base vector extension is intended to provide general support for data-parallel execution within the 32-bit instruction encoding space, with later vector extensions supporting richer functionality for certain domains.

Diff Detail

Event Timeline

Emmmer created this revision.Jan 17 2023, 12:05 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 17 2023, 12:05 AM
Emmmer requested review of this revision.Jan 17 2023, 12:05 AM
DavidSpickett accepted this revision.Jan 17 2023, 2:04 AM

Are we going to end up with instruction emulation for RVV also? I think we'll really need another riscv specific reviewer if so. @rogfer01 Do you know anyone who could help with that?

This patch LGTM, I'm assuming it matches the relevant DWARF specs.

lldb/source/Utility/RISCV_DWARF_Registers.h
117

These previous entries were just placeholders I assume?

This revision is now accepted and ready to land.Jan 17 2023, 2:04 AM
Emmmer marked an inline comment as done.Jan 17 2023, 2:31 AM
Emmmer added inline comments.
lldb/source/Utility/RISCV_DWARF_Registers.h
117

Yes, I want them to be named consistently with other registers, that is dwarf_<purpose>_<regnum>

kito-cheng accepted this revision.Jan 17 2023, 5:53 AM

LGTM for the dwarf number part.

This revision was automatically updated to reflect the committed changes.
Emmmer marked an inline comment as done.
Herald added a project: Restricted Project. · View Herald TranscriptJan 29 2023, 2:08 AM