Is it a normal user-mode instruction?
No. These instructions are constrained by privilege level and extension support; user-mode legality must follow the privileged rules.
Hypervisor virtual-machine load of a doubleword using VS/VU effective privilege and two-stage translation.
HLV.D is the H-extension virtual-machine load corresponding to LD. It may execute in M-mode or HS-mode, or in U-mode when hstatus.HU=1. The explicit memory access uses effective privilege VU when hstatus.SPVP=0 and VS when hstatus.SPVP=1, with two-stage address translation. HLV.WU and HLV.D are not valid for RV32.
HLV.D is the H-extension virtual-machine doubleword load, loading through VS-stage and G-stage translation using the memory access's VS/VU effective privilege.
Understand this scenario with real code like «hlv.d a0, (a1)».
Understand this scenario with real code like «hlv.d a0, (a1)».
Understand this scenario with real code like «hlv.d a0, (a1)».
No. These instructions are constrained by privilege level and extension support; user-mode legality must follow the privileged rules.
No. Address translation, instruction fetch, and data-memory ordering use different fence/invalidation instructions.