|
From: <sv...@va...> - 2005-11-09 15:14:43
|
Author: sewardj
Date: 2005-11-09 15:14:16 +0000 (Wed, 09 Nov 2005)
New Revision: 5058
Log:
Add casts to stop gcc complaining.
Modified:
trunk/coregrind/m_debugger.c
Modified: trunk/coregrind/m_debugger.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/coregrind/m_debugger.c 2005-11-09 14:51:59 UTC (rev 5057)
+++ trunk/coregrind/m_debugger.c 2005-11-09 15:14:16 UTC (rev 5058)
@@ -44,8 +44,8 @@
=20
static Int ptrace_setregs(Int pid, VexGuestArchState* vex)
{
+#if defined(VGA_x86)
struct vki_user_regs_struct regs;
-#if defined(VGA_x86)
regs.cs =3D vex->guest_CS;
regs.ss =3D vex->guest_SS;
regs.ds =3D vex->guest_DS;
@@ -62,9 +62,10 @@
regs.esp =3D vex->guest_ESP;
regs.eflags =3D LibVEX_GuestX86_get_eflags(vex);
regs.eip =3D vex->guest_EIP;
+ return VG_(ptrace)(VKI_PTRACE_SETREGS, pid, NULL, ®s);
=20
- return VG_(ptrace)(VKI_PTRACE_SETREGS, pid, NULL, ®s);
#elif defined(VGA_amd64)
+ struct vki_user_regs_struct regs;
regs.rax =3D vex->guest_RAX;
regs.rbx =3D vex->guest_RBX;
regs.rcx =3D vex->guest_RCX;
@@ -83,51 +84,52 @@
regs.r15 =3D vex->guest_R15;
regs.eflags =3D LibVEX_GuestAMD64_get_rflags(vex);
regs.rip =3D vex->guest_RIP;
+ return VG_(ptrace)(VKI_PTRACE_SETREGS, pid, NULL, ®s);
=20
- return VG_(ptrace)(VKI_PTRACE_SETREGS, pid, NULL, ®s);
#elif defined(VGA_ppc32)
Int rc =3D 0;
+ /* apparently the casting to void* is the Right Thing To Do */
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R0 * 4),=
(void*)vex->guest_GPR0);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R1 * 4),=
(void*)vex->guest_GPR1);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R2 * 4),=
(void*)vex->guest_GPR2);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R3 * 4),=
(void*)vex->guest_GPR3);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R4 * 4),=
(void*)vex->guest_GPR4);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R5 * 4),=
(void*)vex->guest_GPR5);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R6 * 4),=
(void*)vex->guest_GPR6);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R7 * 4),=
(void*)vex->guest_GPR7);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R8 * 4),=
(void*)vex->guest_GPR8);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R9 * 4),=
(void*)vex->guest_GPR9);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R10 * 4),=
(void*)vex->guest_GPR10);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R11 * 4),=
(void*)vex->guest_GPR11);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R12 * 4),=
(void*)vex->guest_GPR12);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R13 * 4),=
(void*)vex->guest_GPR13);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R14 * 4),=
(void*)vex->guest_GPR14);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R15 * 4),=
(void*)vex->guest_GPR15);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R16 * 4),=
(void*)vex->guest_GPR16);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R17 * 4),=
(void*)vex->guest_GPR17);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R18 * 4),=
(void*)vex->guest_GPR18);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R19 * 4),=
(void*)vex->guest_GPR19);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R20 * 4),=
(void*)vex->guest_GPR20);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R21 * 4),=
(void*)vex->guest_GPR21);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R22 * 4),=
(void*)vex->guest_GPR22);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R23 * 4),=
(void*)vex->guest_GPR23);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R24 * 4),=
(void*)vex->guest_GPR24);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R25 * 4),=
(void*)vex->guest_GPR25);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R26 * 4),=
(void*)vex->guest_GPR26);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R27 * 4),=
(void*)vex->guest_GPR27);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R28 * 4),=
(void*)vex->guest_GPR28);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R29 * 4),=
(void*)vex->guest_GPR29);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R30 * 4),=
(void*)vex->guest_GPR30);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_R31 * 4),=
(void*)vex->guest_GPR31);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_NIP * 4),=
(void*)vex->guest_CIA);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_CCR * 4),
+ (void*)LibVEX_GuestPPC32_get_CR(vex));
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_LNK * 4),=
(void*)vex->guest_LR);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_CTR * 4),=
(void*)vex->guest_CTR);
+ rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, (void*)(VKI_PT_XER * 4),
+ (void*)LibVEX_GuestPPC32_get_XER(vex));
+ return rc;
=20
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R0 * 4, vex->gues=
t_GPR0);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R1 * 4, vex->gues=
t_GPR1);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R2 * 4, vex->gues=
t_GPR2);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R3 * 4, vex->gues=
t_GPR3);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R4 * 4, vex->gues=
t_GPR4);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R5 * 4, vex->gues=
t_GPR5);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R6 * 4, vex->gues=
t_GPR6);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R7 * 4, vex->gues=
t_GPR7);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R8 * 4, vex->gues=
t_GPR8);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R9 * 4, vex->gues=
t_GPR9);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R10 * 4, vex->gue=
st_GPR10);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R11 * 4, vex->gue=
st_GPR11);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R12 * 4, vex->gue=
st_GPR12);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R13 * 4, vex->gue=
st_GPR13);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R14 * 4, vex->gue=
st_GPR14);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R15 * 4, vex->gue=
st_GPR15);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R16 * 4, vex->gue=
st_GPR16);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R17 * 4, vex->gue=
st_GPR17);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R18 * 4, vex->gue=
st_GPR18);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R19 * 4, vex->gue=
st_GPR19);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R20 * 4, vex->gue=
st_GPR20);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R21 * 4, vex->gue=
st_GPR21);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R22 * 4, vex->gue=
st_GPR22);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R23 * 4, vex->gue=
st_GPR23);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R24 * 4, vex->gue=
st_GPR24);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R25 * 4, vex->gue=
st_GPR25);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R26 * 4, vex->gue=
st_GPR26);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R27 * 4, vex->gue=
st_GPR27);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R28 * 4, vex->gue=
st_GPR28);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R29 * 4, vex->gue=
st_GPR29);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R30 * 4, vex->gue=
st_GPR30);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_R31 * 4, vex->gue=
st_GPR31);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_NIP * 4, vex->gue=
st_CIA);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_CCR * 4,
- LibVEX_GuestPPC32_get_CR(vex));
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_LNK * 4, vex->gue=
st_LR);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_CTR * 4, vex->gue=
st_CTR);
- rc |=3D VG_(ptrace)(VKI_PTRACE_POKEUSR, pid, VKI_PT_XER * 4,
- LibVEX_GuestPPC32_get_XER(vex));
- return rc;
#else
# error Unknown arch
#endif
|