gem5  v20.1.0.0
Public Member Functions | Protected Member Functions | Private Attributes | Friends | List of all members
ArmISA::BrkPoint Class Reference

#include <self_debug.hh>

Public Member Functions

 BrkPoint (MiscRegIndex ctrl_index, MiscRegIndex val_index, SelfDebug *_conf, bool ctx_aw, bool lva, bool vmid16, bool aarch32)
bool testLinkedBk (ThreadContext *tc, Addr vaddr, ExceptionLevel el)
bool test (ThreadContext *tc, Addr pc, ExceptionLevel el, DBGBCR ctr, bool from_link)
bool testAddrMatch (ThreadContext *tc, Addr pc, uint8_t bas)
bool testAddrMissMatch (ThreadContext *tc, Addr pc, uint8_t bas)
bool testContextMatch (ThreadContext *tc, bool ctx1, bool low_ctx)
bool testContextMatch (ThreadContext *tc, bool ctx1)
bool testVMIDMatch (ThreadContext *tc)
const DBGBCR getControlReg (ThreadContext *tc)
bool isEnabled (ThreadContext *tc, ExceptionLevel el, uint8_t hmc, uint8_t ssc, uint8_t pmc)
bool isActive (Addr vaddr)
void updateControl (DBGBCR val)

Protected Member Functions

Addr getAddrfromReg (ThreadContext *tc) const
RegVal getContextfromReg (ThreadContext *tc, bool ctxid1) const
uint32_t getVMIDfromReg (ThreadContext *tc)

Private Attributes

MiscRegIndex ctrlRegIndex
MiscRegIndex valRegIndex
bool isCntxtAware
bool VMID16enabled
Addr activePc
bool enable
int maxAddrSize
bool onUse


class SelfDebug

Detailed Description

Definition at line 57 of file self_debug.hh.

Constructor & Destructor Documentation

◆ BrkPoint()

ArmISA::BrkPoint::BrkPoint ( MiscRegIndex  ctrl_index,
MiscRegIndex  val_index,
SelfDebug _conf,
bool  ctx_aw,
bool  lva,
bool  vmid16,
bool  aarch32 

Definition at line 73 of file self_debug.hh.

References maxAddrSize, and onUse.

Member Function Documentation

◆ getAddrfromReg()

Addr ArmISA::BrkPoint::getAddrfromReg ( ThreadContext tc) const

Definition at line 91 of file self_debug.hh.

References bits(), maxAddrSize, ThreadContext::readMiscReg(), and valRegIndex.

◆ getContextfromReg()

RegVal ArmISA::BrkPoint::getContextfromReg ( ThreadContext tc,
bool  ctxid1 
) const

Definition at line 97 of file self_debug.hh.

References bits(), ThreadContext::readMiscReg(), and valRegIndex.

◆ getControlReg()

const DBGBCR ArmISA::BrkPoint::getControlReg ( ThreadContext tc)

Definition at line 116 of file self_debug.hh.

References ctrlRegIndex, and ThreadContext::readMiscReg().

◆ getVMIDfromReg()

uint32_t BrkPoint::getVMIDfromReg ( ThreadContext tc)

Definition at line 525 of file

References bits(), and ThreadContext::readMiscReg().

◆ isActive()

bool ArmISA::BrkPoint::isActive ( Addr  vaddr)

Definition at line 125 of file self_debug.hh.

References activePc, and MipsISA::vaddr.

◆ isEnabled()

bool BrkPoint::isEnabled ( ThreadContext tc,
ExceptionLevel  el,
uint8_t  hmc,
uint8_t  ssc,
uint8_t  pmc 

◆ test()

bool BrkPoint::test ( ThreadContext tc,
Addr  pc,
ExceptionLevel  el,
DBGBCR  ctr,
bool  from_link 

◆ testAddrMatch()

bool BrkPoint::testAddrMatch ( ThreadContext tc,
Addr  pc,
uint8_t  bas 

◆ testAddrMissMatch()

bool BrkPoint::testAddrMissMatch ( ThreadContext tc,
Addr  pc,
uint8_t  bas 

◆ testContextMatch() [1/2]

bool BrkPoint::testContextMatch ( ThreadContext tc,
bool  ctx1 

Definition at line 424 of file

◆ testContextMatch() [2/2]

bool BrkPoint::testContextMatch ( ThreadContext tc,
bool  ctx1,
bool  low_ctx 

◆ testLinkedBk()

bool BrkPoint::testLinkedBk ( ThreadContext tc,
Addr  vaddr,
ExceptionLevel  el 

Definition at line 210 of file

References ArmISA::el, X86ISA::enable, and MipsISA::vaddr.

◆ testVMIDMatch()

bool BrkPoint::testVMIDMatch ( ThreadContext tc)

◆ updateControl()

void ArmISA::BrkPoint::updateControl ( DBGBCR  val)

Definition at line 137 of file self_debug.hh.

References enable, and X86ISA::val.

Referenced by ArmISA::SelfDebug::init().

Friends And Related Function Documentation

◆ SelfDebug

friend class SelfDebug

Definition at line 71 of file self_debug.hh.

Member Data Documentation

◆ activePc

Addr ArmISA::BrkPoint::activePc

Definition at line 65 of file self_debug.hh.

Referenced by isActive().

◆ conf

SelfDebug* ArmISA::BrkPoint::conf

Definition at line 62 of file self_debug.hh.

◆ ctrlRegIndex

MiscRegIndex ArmISA::BrkPoint::ctrlRegIndex

Definition at line 60 of file self_debug.hh.

Referenced by getControlReg().

◆ enable

bool ArmISA::BrkPoint::enable

Definition at line 66 of file self_debug.hh.

Referenced by updateControl().

◆ isCntxtAware

bool ArmISA::BrkPoint::isCntxtAware

Definition at line 63 of file self_debug.hh.

◆ maxAddrSize

int ArmISA::BrkPoint::maxAddrSize

Definition at line 67 of file self_debug.hh.

Referenced by BrkPoint(), and getAddrfromReg().

◆ onUse

bool ArmISA::BrkPoint::onUse

Definition at line 68 of file self_debug.hh.

Referenced by BrkPoint().

◆ valRegIndex

MiscRegIndex ArmISA::BrkPoint::valRegIndex

Definition at line 61 of file self_debug.hh.

Referenced by getAddrfromReg(), and getContextfromReg().

◆ VMID16enabled

bool ArmISA::BrkPoint::VMID16enabled

Definition at line 64 of file self_debug.hh.

The documentation for this class was generated from the following files:

Generated on Wed Sep 30 2020 14:02:35 for gem5 by doxygen 1.8.17