| plan 9 kernel history: overview | file list | diff list |
1990/0816/gnot/trap.c (diff list | history)
| 1990/08141/sys/src/9/gnot/trap.c:156,163 – 1990/0816/sys/src/9/gnot/trap.c:156,162 (short | long | prev | next) | ||
| 1990/03091 | if(!u->notified){ if(!u->notify) goto Die; | |
| 1990/0816 | sp = ur->usp; | |
| 1990/03091 | sp -= sizeof(Ureg); u->ureg = (void*)sp; memcpy((Ureg*)sp, ur, sizeof(Ureg)); | |
| 1990/08141/sys/src/9/gnot/trap.c:167,179 – 1990/0816/sys/src/9/gnot/trap.c:166,176 | ||
| 1990/03091 | *(ulong*)(sp+2*BY2WD) = sp+3*BY2WD; /* arg 2 is string */ *(ulong*)(sp+1*BY2WD) = (ulong)u->ureg; /* arg 1 is ureg* */ *(ulong*)(sp+0*BY2WD) = 0; /* arg 0 is pc */ | |
| 1990/0816 | ur->usp = sp; | |
| 1990/03091 | ur->pc = (ulong)u->notify; u->notified = 1; u->nnote--; memcpy(&u->note[0], &u->note[1], u->nnote*sizeof(Note)); | |
| 1990/08141/sys/src/9/gnot/trap.c:184,190 – 1990/0816/sys/src/9/gnot/trap.c:181,186 | ||
| 1990/03091 | void noted(Ureg **urp) { | |
| 1990/0619 | if(!u->notified){ unlock(&u->p->debug); | |
| 1990/08141/sys/src/9/gnot/trap.c:195,202 – 1990/0816/sys/src/9/gnot/trap.c:191,196 | ||
| 1990/03091 | unlock(&u->p->debug); splhi(); rfnote(urp); | |