libnexus-rv
Public Attributes | List of all members
nexusrv_trace_indirect Struct Reference

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
 
}; 
 

Detailed Description

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

Member Data Documentation

◆ context

uint64_t nexusrv_trace_indirect::context

PROCESS.CONTEXT from OWNERSHIP Message, valid if ownership=1

◆ interrupt

uint8_t nexusrv_trace_indirect::interrupt

Is Interrupt

◆ ownership

uint8_t nexusrv_trace_indirect::ownership

< Is Exception OWNERSHIP Message present

◆ ownership_fmt

uint8_t nexusrv_trace_indirect::ownership_fmt

PROCESS.FORMAT from OWNERSHIP

◆ ownership_priv

uint8_t nexusrv_trace_indirect::ownership_priv

PROCESS.PRV from OWNERSHIP

◆ ownership_v

uint8_t nexusrv_trace_indirect::ownership_v

PROCESS.V from OWNERSHIP

◆ target

uint64_t nexusrv_trace_indirect::target

Target Address


The documentation for this struct was generated from the following file: