| 298 | } |
| 299 | |
| 300 | void |
| 301 | cpu_thread_exit(struct thread *td) |
| 302 | { |
| 303 | struct pcb *pcb; |
| 304 | |
| 305 | critical_enter(); |
| 306 | if (td == PCPU_GET(fpcurthread)) |
| 307 | fpudrop(); |
| 308 | critical_exit(); |
| 309 | |
| 310 | pcb = td->td_pcb; |
| 311 | |
| 312 | /* Disable any hardware breakpoints. */ |
| 313 | if (pcb->pcb_flags & PCB_DBREGS) { |
| 314 | reset_dbregs(); |
| 315 | clear_pcb_flags(pcb, PCB_DBREGS); |
| 316 | } |
| 317 | } |
| 318 | |
| 319 | void |
| 320 | cpu_thread_clean(struct thread *td) |
nothing calls this directly
no test coverage detected