33 #ifndef ARM_TRC_ETMV4_STACK_ELEM_H_INCLUDED 34 #define ARM_TRC_ETMV4_STACK_ELEM_H_INCLUDED 90 m_root_idx(root_index),
136 void setIS(
const uint8_t IS) { m_IS = IS; };
137 const uint8_t
getIS()
const {
return m_IS; };
168 bool m_prev_addr_same;
169 uint16_t m_excep_num;
174 m_prev_addr_same(false)
193 int cancelNewest(
const int nCancel);
194 const bool isEmpty()
const {
return (m_atom.num == 0); };
218 int nRemove = (nCancel <= m_atom.
num) ? nCancel : m_atom.
num;
219 m_atom.
num -= nRemove;
235 void setParam(
const uint32_t param,
const int nParamNum) { m_param[(nParamNum & 0x3)] = param; };
236 const uint32_t &
getParam(
const int nParamNum)
const {
return m_param[(nParamNum & 0x3)]; };
264 void delete_popped();
275 std::deque<TrcStackElem *> m_P0_stack;
276 std::vector<TrcStackElem *> m_popped_elem;
289 m_P0_stack.push_front(pElem);
295 m_P0_stack.push_back(pElem);
301 m_popped_elem.push_back(m_P0_stack.back());
302 m_P0_stack.pop_back();
308 if (m_P0_stack.size() > 0)
312 m_P0_stack.pop_back();
319 return m_P0_stack.back();
325 while (m_P0_stack.size() > 0)
333 while (m_popped_elem.size() > 0)
335 delete m_popped_elem.back();
336 m_popped_elem.pop_back();
338 m_popped_elem.clear();
344 return m_P0_stack.size();
347 #endif // ARM_TRC_ETMV4_STACK_ELEM_H_INCLUDED virtual ~TrcStackElemAtom()
void push_front(TrcStackElem *pElem)
const etmv4_context_t & getContext() const
virtual ~TrcStackElemCtxt()
void push_back(TrcStackElem *pElem)
virtual ~TrcStackElemParam()
enum _ocsd_etmv4_i_pkt_type ocsd_etmv4_i_pkt_type
void setPrevSame(bool bSame)
void setExcepNum(const uint16_t num)
void setAddr(const etmv4_addr_val_t &addr_val)
virtual ~TrcStackElemAddr()
const etmv4_addr_val_t & getAddr() const
enum _ocsd_atm_val ocsd_atm_val
TrcStackElemExcept(const ocsd_etmv4_i_pkt_type root_pkt, const ocsd_trc_index_t root_index)
void setParam(const uint32_t param, const int nParamNum)
TrcStackElemParam(const p0_elem_t p0_type, const bool isP0, const ocsd_etmv4_i_pkt_type root_pkt, const ocsd_trc_index_t root_index)
TrcStackElemAtom(const ocsd_etmv4_i_pkt_type root_pkt, const ocsd_trc_index_t root_index)
void setContext(const etmv4_context_t &ctxt)
const ocsd_etmv4_i_pkt_type getRootPkt() const
TrcStackElemCtxt(const ocsd_etmv4_i_pkt_type root_pkt, const ocsd_trc_index_t root_index)
const bool isEmpty() const
const ocsd_atm_val commitOldest()
const ocsd_trc_index_t getRootIndex() const
TrcStackElemAddr(const ocsd_etmv4_i_pkt_type root_pkt, const ocsd_trc_index_t root_index)
enum _p0_elem_t p0_elem_t
const uint8_t getIS() const
void setAtom(const ocsd_pkt_atom &atom)
uint32_t ocsd_trc_index_t
const uint16_t getExcepNum() const
ocsd_vaddr_t val
Address value.
TrcStackElem(const p0_elem_t p0_type, const bool isP0, const ocsd_etmv4_i_pkt_type root_pkt, const ocsd_trc_index_t root_index)
const p0_elem_t getP0Type() const
const bool getPrevSame() const
uint8_t isa
instruction set.
virtual ~TrcStackElemExcept()
const uint32_t & getParam(const int nParamNum) const
void setIS(const uint8_t IS)
int cancelNewest(const int nCancel)