CR_CURCPU
mtctl(&cpus[0], CR_CURCPU);
#define GET_CURCPU(r) mfctl CR_CURCPU, r
#define GET_CURLWP(r) mfctl CR_CURCPU, r ! ldw CI_CURLWP(r), r
#define GET_CURLWP_SPACE(s, r) mfctl CR_CURCPU, r ! ldw CI_CURLWP(s, r), r
sync ! mfctl CR_CURCPU, t ! stw r, CI_CURLWP(t) ! sync
__asm volatile("mfctl %1, %0" : "=r" (ci): "i" (CR_CURCPU));