libnexus-rv
|
NexusRV Trace Indirect Branch Event. More...
#include <trace-decoder.h>
Public Attributes | |
uint64_t | target |
uint64_t | context |
struct { | |
uint8_t interrupt: 1 | |
uint8_t ownership: 1 | |
uint8_t ownership_fmt: 2 | |
uint8_t ownership_priv: 2 | |
uint8_t ownership_v: 1 | |
}; | |
NexusRV Trace Indirect Branch Event.
If neither interrupt or exception is set, is a synchronous branch If both are set, it can be either but NexusRV Message doesn't report the exact type due to HW limitation
uint64_t nexusrv_trace_indirect::context |
PROCESS.CONTEXT from OWNERSHIP Message, valid if ownership=1
uint8_t nexusrv_trace_indirect::interrupt |
Is Interrupt
uint8_t nexusrv_trace_indirect::ownership |
< Is Exception OWNERSHIP Message present
uint8_t nexusrv_trace_indirect::ownership_fmt |
PROCESS.FORMAT from OWNERSHIP
uint8_t nexusrv_trace_indirect::ownership_priv |
PROCESS.PRV from OWNERSHIP
uint8_t nexusrv_trace_indirect::ownership_v |
PROCESS.V from OWNERSHIP
uint64_t nexusrv_trace_indirect::target |
Target Address