From owner-p4-projects Sat Apr 27 22:51:53 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 95D9A37B41C; Sat, 27 Apr 2002 22:51:46 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id D540F37B41B for ; Sat, 27 Apr 2002 22:51:45 -0700 (PDT) Received: (from perforce@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g3S5pjb55197 for perforce@freebsd.org; Sat, 27 Apr 2002 22:51:45 -0700 (PDT) (envelope-from marcel@freebsd.org) Date: Sat, 27 Apr 2002 22:51:45 -0700 (PDT) Message-Id: <200204280551.g3S5pjb55197@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar Subject: PERFORCE change 10391 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://people.freebsd.org/~peter/p4db/chv.cgi?CH=10391 Change 10391 by marcel@marcel_vaio on 2002/04/27 22:51:29 Draft implementation of ptrace_set_pc and ptrace_single_step. Affected files ... ... //depot/projects/ia64/sys/ia64/ia64/machdep.c#30 edit Differences ... ==== //depot/projects/ia64/sys/ia64/ia64/machdep.c#30 (text+ko) ==== @@ -1125,15 +1125,33 @@ int ptrace_set_pc(struct thread *td, unsigned long addr) { - /* TODO set pc in trapframe */ - return 0; + uint64_t slot; + + switch (addr & 0xFUL) { + case 0: + slot = IA64_PSR_RI_0; + break; + case 1: + /* XXX we need to deal with MLX bundles here */ + slot = IA64_PSR_RI_1; + break; + case 2: + slot = IA64_PSR_RI_2; + break; + default: + return (EINVAL); + } + + td->td_frame->tf_cr_iip = addr & ~0x0FULL; + td->td_frame->tf_cr_ipsr = (tf_cr_ipsr & ~IA64_PSR_RI) | slot; + return (0); } int ptrace_single_step(struct thread *td) { - /* TODO arrange for user process to single step */ - return 0; + td->td_frame->tf_cr_ipsr |= IA64_PSR_SS; + return (0); } int To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message