hi,the implemention of Context::regs() is like this:

return reinterpret_cast<Entry_frame*>(Cpu::stack_align(reinterpret_cast<Mword>(this + Size)) -1;

how this algorithm came out?i think the memory of the object is allocated by c++ compiler,  but why '(this + Size)' could get Entry_frame of a thread?