#include "ThreadContext.h" #include #include ThreadContext::ThreadContext() { _cpsr=int2bf(0); memset(&_regs, 0, sizeof(_regs)); } void ThreadContext::setreg(int nr, uint32_t value) { _regs[nr]= value; printf("setreg(%d, %08lx)\n", nr, value); } uint32_t ThreadContext::getreg(int nr) { return _regs[nr]; } void ThreadContext::setcpsr(uint32_t value) { printf("setcpsr: %08lx\n", value); _cpsr=int2bf(value); } uint32_t ThreadContext::getcpsr() { return bf2int(_cpsr); } int ThreadContext::pc_offset() { return _cpsr.t ? 4 : 8; }