OpenCSD - CoreSight Trace Decode Library  1.3.3
Public Attributes | List of all members
_ocsd_generic_trace_elem Struct Reference

#include <trc_gen_elem_types.h>

Inheritance diagram for _ocsd_generic_trace_elem:
Inheritance graph
[legend]
Collaboration diagram for _ocsd_generic_trace_elem:
Collaboration graph
[legend]

Public Attributes

ocsd_gen_trc_elem_t elem_type
 
ocsd_isa isa
 
ocsd_vaddr_t st_addr
 
ocsd_vaddr_t en_addr
 
ocsd_pe_context context
 
uint64_t timestamp
 
uint32_t cycle_count
 
ocsd_instr_type last_i_type
 
ocsd_instr_subtype last_i_subtype
 
union {
   struct {
      uint32_t   last_instr_exec:1
 
      uint32_t   last_instr_sz:3
 
      uint32_t   has_cc:1
 
      uint32_t   cpu_freq_change:1
 
      uint32_t   excep_ret_addr:1
 
      uint32_t   excep_data_marker:1
 
      uint32_t   extended_data:1
 
      uint32_t   has_ts:1
 
      uint32_t   last_instr_cond:1
 
      uint32_t   excep_ret_addr_br_tgt:1
 
   } 
 
   uint32_t   flag_bits
 
}; 
 per element flags More...
 
union {
   uint32_t   exception_number
 
   trace_event_t   trace_event
 
   trace_on_reason_t   trace_on_reason
 
   ocsd_swt_info_t   sw_trace_info
 
   uint32_t   num_instr_range
 
   unsync_info_t   unsync_eot_info
 
   trace_marker_payload_t   sync_marker
 
   trace_memtrans_t   mem_trans
 
}; 
 packet specific payloads More...
 
const void * ptr_extended_data
 

Detailed Description

Definition at line 107 of file trc_gen_elem_types.h.

Member Data Documentation

◆ 

union { ... }

per element flags

◆ 

union { ... }

packet specific payloads

◆ context

ocsd_pe_context _ocsd_generic_trace_elem::context

PE Context

Definition at line 112 of file trc_gen_elem_types.h.

◆ cpu_freq_change

uint32_t _ocsd_generic_trace_elem::cpu_freq_change

1 if this packet indicates a change in CPU frequency

Definition at line 124 of file trc_gen_elem_types.h.

◆ cycle_count

uint32_t _ocsd_generic_trace_elem::cycle_count

cycle count for explicit cycle count element, or count for element with associated cycle count

Definition at line 114 of file trc_gen_elem_types.h.

◆ elem_type

ocsd_gen_trc_elem_t _ocsd_generic_trace_elem::elem_type

Element type - remaining data interpreted according to this value

Definition at line 108 of file trc_gen_elem_types.h.

◆ en_addr

ocsd_vaddr_t _ocsd_generic_trace_elem::en_addr

end address (exclusive) for instruction execution range.

Definition at line 111 of file trc_gen_elem_types.h.

◆ excep_data_marker

uint32_t _ocsd_generic_trace_elem::excep_data_marker

1 if the exception entry packet is a data push marker only, with no address information (used typically in v7M trace for marking data pushed onto stack)

Definition at line 126 of file trc_gen_elem_types.h.

◆ excep_ret_addr

uint32_t _ocsd_generic_trace_elem::excep_ret_addr

1 if en_addr is the preferred exception return address on exception packet type

Definition at line 125 of file trc_gen_elem_types.h.

◆ excep_ret_addr_br_tgt

uint32_t _ocsd_generic_trace_elem::excep_ret_addr_br_tgt

1 if exception return address (en_addr) is also the target of a taken branch addr from the previous range.

Definition at line 130 of file trc_gen_elem_types.h.

◆ exception_number

uint32_t _ocsd_generic_trace_elem::exception_number

exception number for exception type packets

Definition at line 137 of file trc_gen_elem_types.h.

◆ extended_data

uint32_t _ocsd_generic_trace_elem::extended_data

1 if the packet extended data pointer is valid. Allows packet extensions for custom decoders, or additional data payloads for data trace.

Definition at line 127 of file trc_gen_elem_types.h.

◆ flag_bits

uint32_t _ocsd_generic_trace_elem::flag_bits

Definition at line 132 of file trc_gen_elem_types.h.

◆ has_cc

uint32_t _ocsd_generic_trace_elem::has_cc

1 if this packet has a valid cycle count included (e.g. cycle count included as part of instruction range packet, always 1 for pure cycle count packet.

Definition at line 123 of file trc_gen_elem_types.h.

◆ has_ts

uint32_t _ocsd_generic_trace_elem::has_ts

1 if the packet has an associated timestamp - e.g. SW/STM trace TS+Payload as a single packet

Definition at line 128 of file trc_gen_elem_types.h.

◆ isa

ocsd_isa _ocsd_generic_trace_elem::isa

instruction set for executed instructions

Definition at line 109 of file trc_gen_elem_types.h.

◆ last_i_subtype

ocsd_instr_subtype _ocsd_generic_trace_elem::last_i_subtype

sub type for last instruction in range

Definition at line 116 of file trc_gen_elem_types.h.

◆ last_i_type

ocsd_instr_type _ocsd_generic_trace_elem::last_i_type

Last instruction type if instruction execution range

Definition at line 115 of file trc_gen_elem_types.h.

◆ last_instr_cond

uint32_t _ocsd_generic_trace_elem::last_instr_cond

1 if the last instruction was conditional

Definition at line 129 of file trc_gen_elem_types.h.

◆ last_instr_exec

uint32_t _ocsd_generic_trace_elem::last_instr_exec

1 if last instruction in range was executed;

Definition at line 121 of file trc_gen_elem_types.h.

◆ last_instr_sz

uint32_t _ocsd_generic_trace_elem::last_instr_sz

size of last instruction in bytes (2/4)

Definition at line 122 of file trc_gen_elem_types.h.

◆ mem_trans

trace_memtrans_t _ocsd_generic_trace_elem::mem_trans

memory transaction packet - transaction event

Definition at line 144 of file trc_gen_elem_types.h.

◆ num_instr_range

uint32_t _ocsd_generic_trace_elem::num_instr_range

number of instructions covered by range packet (for T32 this cannot be calculated from en-st/i_size)

Definition at line 141 of file trc_gen_elem_types.h.

◆ ptr_extended_data

const void* _ocsd_generic_trace_elem::ptr_extended_data

pointer to extended data buffer (data trace, sw trace payload) / custom structure

Definition at line 147 of file trc_gen_elem_types.h.

◆ st_addr

ocsd_vaddr_t _ocsd_generic_trace_elem::st_addr

start address for instruction execution range / inaccessible code address / data address

Definition at line 110 of file trc_gen_elem_types.h.

◆ sw_trace_info

ocsd_swt_info_t _ocsd_generic_trace_elem::sw_trace_info

software trace packet info

Definition at line 140 of file trc_gen_elem_types.h.

◆ sync_marker

trace_marker_payload_t _ocsd_generic_trace_elem::sync_marker

marker element - sync later element to position in stream

Definition at line 143 of file trc_gen_elem_types.h.

◆ timestamp

uint64_t _ocsd_generic_trace_elem::timestamp

timestamp value for TS element type

Definition at line 113 of file trc_gen_elem_types.h.

◆ trace_event

trace_event_t _ocsd_generic_trace_elem::trace_event

Trace event - trigger etc

Definition at line 138 of file trc_gen_elem_types.h.

◆ trace_on_reason

trace_on_reason_t _ocsd_generic_trace_elem::trace_on_reason

reason for the trace on packet

Definition at line 139 of file trc_gen_elem_types.h.

◆ unsync_eot_info

unsync_info_t _ocsd_generic_trace_elem::unsync_eot_info

additional information for unsync / end-of-trace packets.

Definition at line 142 of file trc_gen_elem_types.h.


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