OpenCSD - CoreSight Trace Decode Library
1.3.3
|
#include <trc_gen_elem_types.h>
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 |
Definition at line 107 of file trc_gen_elem_types.h.
union { ... } |
per element flags
union { ... } |
packet specific payloads
ocsd_pe_context _ocsd_generic_trace_elem::context |
PE Context
Definition at line 112 of file trc_gen_elem_types.h.
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.
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.
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.
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.
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.
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.
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.
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.
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.
uint32_t _ocsd_generic_trace_elem::flag_bits |
Definition at line 132 of file trc_gen_elem_types.h.
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.
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.
ocsd_isa _ocsd_generic_trace_elem::isa |
instruction set for executed instructions
Definition at line 109 of file trc_gen_elem_types.h.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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.
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_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_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_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.