From owner-p4-projects@FreeBSD.ORG Mon Nov 29 20:59:11 2004 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0E24516A4D0; Mon, 29 Nov 2004 20:59:11 +0000 (GMT) Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D7B5E16A4CE for ; Mon, 29 Nov 2004 20:59:10 +0000 (GMT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AC70143D49 for ; Mon, 29 Nov 2004 20:59:10 +0000 (GMT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id iATKxAQT031693 for ; Mon, 29 Nov 2004 20:59:10 GMT (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id iATKxAoL031690 for perforce@freebsd.org; Mon, 29 Nov 2004 20:59:10 GMT (envelope-from peter@freebsd.org) Date: Mon, 29 Nov 2004 20:59:10 GMT Message-Id: <200411292059.iATKxAoL031690@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 66056 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 29 Nov 2004 20:59:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=66056 Change 66056 by peter@peter_daintree on 2004/11/29 20:58:09 finish off gdb_machdep.c based on my understanding to date. We can only get the scratch registers from the trapframe since we do not save them in the pcb at context switch. Note to self: the register numbers are defined in gdb/amd64-tdep.c Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/gdb_machdep.c#5 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/gdb_machdep.c#5 (text+ko) ==== @@ -54,39 +54,28 @@ if (kdb_thread == curthread) { switch (regnum) { case 0: return (&kdb_frame->tf_rax); - case 1: return (&kdb_frame->tf_rcx); - case 2: return (&kdb_frame->tf_rdx); + case 2: return (&kdb_frame->tf_rcx); + case 3: return (&kdb_frame->tf_rdx); + case 4: return (&kdb_frame->tf_rsi); + case 5: return (&kdb_frame->tf_rdi); + case 8: return (&kdb_frame->tf_r8); + case 9: return (&kdb_frame->tf_r9); + case 10: return (&kdb_frame->tf_r10); + case 11: return (&kdb_frame->tf_r11); + case 18: return (&kdb_frame->tf_cs); + case 19: return (&kdb_frame->tf_ss); } } switch (regnum) { -#if 0 - case 0: return (&kdb_thrctx->pcb_rax); -#endif case 1: return (&kdb_thrctx->pcb_rbx); -#if 0 - case 2: return (&kdb_thrctx->pcb_rcx); - case 3: return (&kdb_thrctx->pcb_rdx); - case 4: return (&kdb_thrctx->pcb_rsi); - case 5: return (&kdb_thrctx->pcb_rdi); -#endif case 6: return (&kdb_thrctx->pcb_rbp); case 7: return (&kdb_thrctx->pcb_rsp); -#if 0 - case 8: return (&kdb_thrctx->pcb_r8); - case 9: return (&kdb_thrctx->pcb_r9); - case 10: return (&kdb_thrctx->pcb_r10); - case 11: return (&kdb_thrctx->pcb_r11); -#endif case 12: return (&kdb_thrctx->pcb_r12); case 13: return (&kdb_thrctx->pcb_r13); case 14: return (&kdb_thrctx->pcb_r14); case 15: return (&kdb_thrctx->pcb_r15); case 16: return (&kdb_thrctx->pcb_rip); case 17: return (&kdb_thrctx->pcb_rflags); -#if 0 - case 18: return (&kdb_thrctx->pcb_cs); - case 19: return (&kdb_thrctx->pcb_ss); -#endif } return (NULL); }