Skip to content

Commit 344e418

Browse files
committed
Add docs for the prilieged instructions
1 parent 8c69b24 commit 344e418

1 file changed

Lines changed: 22 additions & 1 deletion

File tree

docs/instruction_reference.rst

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -243,6 +243,27 @@ RV32 Privileged Instruction Set
243243
=========================== ===========
244244
Instruction Description
245245
=========================== ===========
246-
:code:`mret` return execution from a trap
246+
:code:`sret` return execution from a supervisor-mode trap
247+
:code:`mret` return execution from a machine-mode trap
248+
:code:`mnret` return execution from an RNMI handler
247249
:code:`wfi` wait for interrupt
250+
:code:`sctrclr` clear recorded branch/control transfer history
251+
:code:`sfence.vma rs1, rs2` synchronize updates to in-memory memory-management data structures
252+
:code:`hfence.vvma rs1, rs2` flush local address translation caches
253+
:code:`hfence.gvma rs1, rs2` flush guest address translation caches
254+
:code:`hlv.b rd, rs1` load signed byte from a virtual machine's memory
255+
:code:`hlv.bu rd, rs1` load unsigned byte from a virtual machine's memory
256+
:code:`hlv.h rd, rs1` load signed halfword from a virtual machine's memory
257+
:code:`hlv.hu rd, rs1` load unsigned halfword from a virtual machine's memory
258+
:code:`hlv.w rd, rs1` load signed word from a virtual machine's memory
259+
:code:`hlvx.hu rd, rs1` load unsigned halfword from a virtual machine's memory (executable)
260+
:code:`hlvx.wu rd, rs1` load unsigned word from a virtual machine's memory (executable)
261+
:code:`hsv.b rs1, rs2` store byte to a virtual machine's memory
262+
:code:`hsv.h rs1, rs2` store halfword to a virtual machine's memory
263+
:code:`hsv.w rs1, rs2` store word to a virtual machine's memory
264+
:code:`sinval.vma rs1, rs2` invalidates translation entries for specific virtual addresses and ASIDs
265+
:code:`sfence.w.inval` manages ordering between page table updates and cache invalidation
266+
:code:`sfence.inval.ir` guarantees that TLB invalidations are observed before new page table entries are used
267+
:code:`hinval.vvma` invalidate virtual address translation entries within a hypervisor context
268+
:code:`hinval.gvma` invalidate guest address translation entries within a hypervisor context
248269
=========================== ===========

0 commit comments

Comments
 (0)