| 368 |
case EXCP_INTERRUPT: |
case EXCP_INTERRUPT: |
| 369 |
/* just indicate that signals should be handled asap */ |
/* just indicate that signals should be handled asap */ |
| 370 |
break; |
break; |
| 371 |
|
case EXCP_PREFETCH_ABORT: |
| 372 |
|
case EXCP_DATA_ABORT: |
| 373 |
|
{ |
| 374 |
|
info.si_signo = SIGSEGV; |
| 375 |
|
info.si_errno = 0; |
| 376 |
|
/* XXX: check env->error_code */ |
| 377 |
|
info.si_code = TARGET_SEGV_MAPERR; |
| 378 |
|
info._sifields._sigfault._addr = env->cp15_6; |
| 379 |
|
queue_signal(info.si_signo, &info); |
| 380 |
|
} |
| 381 |
|
break; |
| 382 |
default: |
default: |
| 383 |
error: |
error: |
| 384 |
fprintf(stderr, "qemu: unhandled CPU exception 0x%x - aborting\n", |
fprintf(stderr, "qemu: unhandled CPU exception 0x%x - aborting\n", |