Commit 2052caa7af288e1ea9739d321c4c9c89e9395666
1 parent
637947f1
GDB stub for MIPS64, by Jason Wessel.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2909 c046a42c-6fe2-441c-8c8c-71466251a162
Showing
1 changed file
with
40 additions
and
40 deletions
gdbstub.c
| @@ -549,41 +549,41 @@ static int cpu_gdb_read_registers(CPUState *env, uint8_t *mem_buf) | @@ -549,41 +549,41 @@ static int cpu_gdb_read_registers(CPUState *env, uint8_t *mem_buf) | ||
| 549 | ptr = mem_buf; | 549 | ptr = mem_buf; |
| 550 | for (i = 0; i < 32; i++) | 550 | for (i = 0; i < 32; i++) |
| 551 | { | 551 | { |
| 552 | - *(uint32_t *)ptr = tswapl(env->gpr[i]); | ||
| 553 | - ptr += 4; | 552 | + *(target_ulong *)ptr = tswapl(env->gpr[i]); |
| 553 | + ptr += sizeof(target_ulong); | ||
| 554 | } | 554 | } |
| 555 | 555 | ||
| 556 | - *(uint32_t *)ptr = tswapl(env->CP0_Status); | ||
| 557 | - ptr += 4; | 556 | + *(target_ulong *)ptr = tswapl(env->CP0_Status); |
| 557 | + ptr += sizeof(target_ulong); | ||
| 558 | 558 | ||
| 559 | - *(uint32_t *)ptr = tswapl(env->LO); | ||
| 560 | - ptr += 4; | 559 | + *(target_ulong *)ptr = tswapl(env->LO); |
| 560 | + ptr += sizeof(target_ulong); | ||
| 561 | 561 | ||
| 562 | - *(uint32_t *)ptr = tswapl(env->HI); | ||
| 563 | - ptr += 4; | 562 | + *(target_ulong *)ptr = tswapl(env->HI); |
| 563 | + ptr += sizeof(target_ulong); | ||
| 564 | 564 | ||
| 565 | - *(uint32_t *)ptr = tswapl(env->CP0_BadVAddr); | ||
| 566 | - ptr += 4; | 565 | + *(target_ulong *)ptr = tswapl(env->CP0_BadVAddr); |
| 566 | + ptr += sizeof(target_ulong); | ||
| 567 | 567 | ||
| 568 | - *(uint32_t *)ptr = tswapl(env->CP0_Cause); | ||
| 569 | - ptr += 4; | 568 | + *(target_ulong *)ptr = tswapl(env->CP0_Cause); |
| 569 | + ptr += sizeof(target_ulong); | ||
| 570 | 570 | ||
| 571 | - *(uint32_t *)ptr = tswapl(env->PC); | ||
| 572 | - ptr += 4; | 571 | + *(target_ulong *)ptr = tswapl(env->PC); |
| 572 | + ptr += sizeof(target_ulong); | ||
| 573 | 573 | ||
| 574 | if (env->CP0_Config1 & (1 << CP0C1_FP)) | 574 | if (env->CP0_Config1 & (1 << CP0C1_FP)) |
| 575 | { | 575 | { |
| 576 | for (i = 0; i < 32; i++) | 576 | for (i = 0; i < 32; i++) |
| 577 | { | 577 | { |
| 578 | - *(uint32_t *)ptr = tswapl(env->fpr[i].fs[FP_ENDIAN_IDX]); | ||
| 579 | - ptr += 4; | 578 | + *(target_ulong *)ptr = tswapl(env->fpr[i].fs[FP_ENDIAN_IDX]); |
| 579 | + ptr += sizeof(target_ulong); | ||
| 580 | } | 580 | } |
| 581 | 581 | ||
| 582 | - *(uint32_t *)ptr = tswapl(env->fcr31); | ||
| 583 | - ptr += 4; | 582 | + *(target_ulong *)ptr = tswapl(env->fcr31); |
| 583 | + ptr += sizeof(target_ulong); | ||
| 584 | 584 | ||
| 585 | - *(uint32_t *)ptr = tswapl(env->fcr0); | ||
| 586 | - ptr += 4; | 585 | + *(target_ulong *)ptr = tswapl(env->fcr0); |
| 586 | + ptr += sizeof(target_ulong); | ||
| 587 | } | 587 | } |
| 588 | 588 | ||
| 589 | /* 32 FP registers, fsr, fir, fp. Not yet implemented. */ | 589 | /* 32 FP registers, fsr, fir, fp. Not yet implemented. */ |
| @@ -611,41 +611,41 @@ static void cpu_gdb_write_registers(CPUState *env, uint8_t *mem_buf, int size) | @@ -611,41 +611,41 @@ static void cpu_gdb_write_registers(CPUState *env, uint8_t *mem_buf, int size) | ||
| 611 | ptr = mem_buf; | 611 | ptr = mem_buf; |
| 612 | for (i = 0; i < 32; i++) | 612 | for (i = 0; i < 32; i++) |
| 613 | { | 613 | { |
| 614 | - env->gpr[i] = tswapl(*(uint32_t *)ptr); | ||
| 615 | - ptr += 4; | 614 | + env->gpr[i] = tswapl(*(target_ulong *)ptr); |
| 615 | + ptr += sizeof(target_ulong); | ||
| 616 | } | 616 | } |
| 617 | 617 | ||
| 618 | - env->CP0_Status = tswapl(*(uint32_t *)ptr); | ||
| 619 | - ptr += 4; | 618 | + env->CP0_Status = tswapl(*(target_ulong *)ptr); |
| 619 | + ptr += sizeof(target_ulong); | ||
| 620 | 620 | ||
| 621 | - env->LO = tswapl(*(uint32_t *)ptr); | ||
| 622 | - ptr += 4; | 621 | + env->LO = tswapl(*(target_ulong *)ptr); |
| 622 | + ptr += sizeof(target_ulong); | ||
| 623 | 623 | ||
| 624 | - env->HI = tswapl(*(uint32_t *)ptr); | ||
| 625 | - ptr += 4; | 624 | + env->HI = tswapl(*(target_ulong *)ptr); |
| 625 | + ptr += sizeof(target_ulong); | ||
| 626 | 626 | ||
| 627 | - env->CP0_BadVAddr = tswapl(*(uint32_t *)ptr); | ||
| 628 | - ptr += 4; | 627 | + env->CP0_BadVAddr = tswapl(*(target_ulong *)ptr); |
| 628 | + ptr += sizeof(target_ulong); | ||
| 629 | 629 | ||
| 630 | - env->CP0_Cause = tswapl(*(uint32_t *)ptr); | ||
| 631 | - ptr += 4; | 630 | + env->CP0_Cause = tswapl(*(target_ulong *)ptr); |
| 631 | + ptr += sizeof(target_ulong); | ||
| 632 | 632 | ||
| 633 | - env->PC = tswapl(*(uint32_t *)ptr); | ||
| 634 | - ptr += 4; | 633 | + env->PC = tswapl(*(target_ulong *)ptr); |
| 634 | + ptr += sizeof(target_ulong); | ||
| 635 | 635 | ||
| 636 | if (env->CP0_Config1 & (1 << CP0C1_FP)) | 636 | if (env->CP0_Config1 & (1 << CP0C1_FP)) |
| 637 | { | 637 | { |
| 638 | for (i = 0; i < 32; i++) | 638 | for (i = 0; i < 32; i++) |
| 639 | { | 639 | { |
| 640 | - env->fpr[i].fs[FP_ENDIAN_IDX] = tswapl(*(uint32_t *)ptr); | ||
| 641 | - ptr += 4; | 640 | + env->fpr[i].fs[FP_ENDIAN_IDX] = tswapl(*(target_ulong *)ptr); |
| 641 | + ptr += sizeof(target_ulong); | ||
| 642 | } | 642 | } |
| 643 | 643 | ||
| 644 | - env->fcr31 = tswapl(*(uint32_t *)ptr) & 0x0183FFFF; | ||
| 645 | - ptr += 4; | 644 | + env->fcr31 = tswapl(*(target_ulong *)ptr) & 0x0183FFFF; |
| 645 | + ptr += sizeof(target_ulong); | ||
| 646 | 646 | ||
| 647 | - env->fcr0 = tswapl(*(uint32_t *)ptr); | ||
| 648 | - ptr += 4; | 647 | + env->fcr0 = tswapl(*(target_ulong *)ptr); |
| 648 | + ptr += sizeof(target_ulong); | ||
| 649 | 649 | ||
| 650 | /* set rounding mode */ | 650 | /* set rounding mode */ |
| 651 | RESTORE_ROUNDING_MODE; | 651 | RESTORE_ROUNDING_MODE; |