Lines Matching defs:tc
47 ISA::checkSoftInt(ThreadContext *tc)
49 BaseCPU *cpu = tc->getCpuPtr();
92 ISA::setFSReg(int miscReg, RegVal val, ThreadContext *tc)
94 BaseCPU *cpu = tc->getCpuPtr();
101 checkSoftInt(tc);
104 return setMiscReg(MISCREG_SOFTINT, ~val & softint, tc);
106 return setMiscReg(MISCREG_SOFTINT, val | softint, tc);
110 tickCompare = new TickCompareEvent(this, tc);
125 sTickCompare = new STickCompareEvent(this, tc);
145 checkSoftInt(tc);
196 hSTickCompare = new HSTickCompareEvent(this, tc);
234 tc->suspend();
235 if (FullSystem && tc->getKernelStats())
236 tc->getKernelStats()->quiesce();
247 ISA::readFSReg(int miscReg, ThreadContext * tc)
285 sys = tc->getSystemPtr();
290 assert(sys->numContexts() > tc->contextId());
292 temp |= tc->contextId() << STS::shft_id;
294 for (x = tc->contextId() & ~3; x < sys->threadContexts.size(); x++) {
321 ISA::processTickCompare(ThreadContext *tc)
327 ISA::processSTickCompare(ThreadContext *tc)
329 BaseCPU *cpu = tc->getCpuPtr();
339 if (delay == 0 || tc->status() == ThreadContext::Suspended) {
342 if (!(tc->readMiscRegNoEffect(MISCREG_STICK_CMPR) & (ULL(1) << 63))) {
343 setMiscReg(MISCREG_SOFTINT, softint | (ULL(1) << 16), tc);
351 ISA::processHSTickCompare(ThreadContext *tc)
353 BaseCPU *cpu = tc->getCpuPtr();
359 if ( tc->status() == ThreadContext::Halted)
366 if (delay == 0 || tc->status() == ThreadContext::Suspended) {
369 if (!(tc->readMiscRegNoEffect(MISCREG_HSTICK_CMPR) & (ULL(1) << 63))) {
370 setMiscReg(MISCREG_HINTP, 1, tc);