Aspect-based implementation of fast breakpoints added (optional).
git-svn-id: https://www4.informatik.uni-erlangen.de/i4svn/danceos/trunk/devel/fail@1685 8c4709b5-6ec9-48aa-a5cd-a96041d1645a
This commit is contained in:
23
src/core/sal/perf/BreakpointBuffer.cc
Normal file
23
src/core/sal/perf/BreakpointBuffer.cc
Normal file
@ -0,0 +1,23 @@
|
||||
#include "BreakpointBuffer.hpp"
|
||||
#include "../SALInst.hpp"
|
||||
|
||||
namespace fail {
|
||||
|
||||
// FIXME: not inlined
|
||||
ResultSet& PerfVectorBreakpoints::gather(BPEvent* pData)
|
||||
{
|
||||
static ResultSet res;
|
||||
res.clear();
|
||||
// Search for all indices of matching listener objects:
|
||||
for(std::vector<index_t>::iterator it = m_BufList.begin(); it != m_BufList.end(); ++it) {
|
||||
BPListener* pLi = static_cast<BPListener*>(simulator.dereference(*it));
|
||||
if (pLi->isMatching(pData)) {
|
||||
// Update trigger IPtr:
|
||||
pLi->setTriggerInstructionPointer(pData->getTriggerInstructionPointer());
|
||||
res.add(*it);
|
||||
}
|
||||
}
|
||||
return res;
|
||||
}
|
||||
|
||||
} // end-of-namespace: fail
|
||||
Reference in New Issue
Block a user