From owner-p4-projects@FreeBSD.ORG Thu Apr 24 23:06:55 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8E27637B404; Thu, 24 Apr 2003 23:06:54 -0700 (PDT) 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 2DBFD37B401 for ; Thu, 24 Apr 2003 23:06:54 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B1DBF43FAF for ; Thu, 24 Apr 2003 23:06:53 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.6/8.12.6) with ESMTP id h3P66r0U051924 for ; Thu, 24 Apr 2003 23:06:53 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3P66rMA051919 for perforce@freebsd.org; Thu, 24 Apr 2003 23:06:53 -0700 (PDT) Date: Thu, 24 Apr 2003 23:06:53 -0700 (PDT) Message-Id: <200304250606.h3P66rMA051919@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 29673 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: Fri, 25 Apr 2003 06:06:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=29673 Change 29673 by peter@peter_daintree on 2003/04/24 23:06:34 reorder trapframe so that the syscall arguments are at the beginning that is in an order that is suitable to be passed to the syscall dispatch directly. Affected files ... .. //depot/projects/hammer/sys/x86_64/include/frame.h#10 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/include/frame.h#10 (text+ko) ==== @@ -46,24 +46,27 @@ /* * Exception/Trap Stack Frame + * + * The ordering of this is specifically so that we can take first 6 + * the syscall arguments directly from the beginning of the frame. */ struct trapframe { - register_t tf_r15; - register_t tf_r14; - register_t tf_r13; - register_t tf_r12; - register_t tf_r11; - register_t tf_r10; - register_t tf_r9; - register_t tf_r8; register_t tf_rdi; register_t tf_rsi; - register_t tf_rbp; - register_t tf_rbx; register_t tf_rdx; register_t tf_rcx; + register_t tf_r8; + register_t tf_r9; register_t tf_rax; + register_t tf_rbx; + register_t tf_rbp; + register_t tf_r10; + register_t tf_r11; + register_t tf_r12; + register_t tf_r13; + register_t tf_r14; + register_t tf_r15; register_t tf_trapno; /* below portion defined in 386 hardware */ register_t tf_err; @@ -77,21 +80,21 @@ /* Interrupt stack frame */ struct intrframe { - register_t if_r15; - register_t if_r14; - register_t if_r13; - register_t if_r12; - register_t if_r11; - register_t if_r10; - register_t if_r9; - register_t if_r8; register_t if_rdi; register_t if_rsi; - register_t if_rbp; - register_t if_rbx; register_t if_rdx; register_t if_rcx; + register_t if_r8; + register_t if_r9; register_t if_rax; + register_t if_rbx; + register_t if_rbp; + register_t if_r10; + register_t if_r11; + register_t if_r12; + register_t if_r13; + register_t if_r14; + register_t if_r15; register_t :64; /* for compat with trap frame - trapno */ register_t :64; /* for compat with trap frame - err */ /* below portion defined in 386 hardware */ @@ -105,21 +108,21 @@ /* frame of clock (same as interrupt frame) */ struct clockframe { - register_t cf_r15; - register_t cf_r14; - register_t cf_r13; - register_t cf_r12; - register_t cf_r11; - register_t cf_r10; - register_t cf_r9; - register_t cf_r8; register_t cf_rdi; register_t cf_rsi; - register_t cf_rbp; - register_t cf_rbx; register_t cf_rdx; register_t cf_rcx; + register_t cf_r8; + register_t cf_r9; register_t cf_rax; + register_t cf_rbx; + register_t cf_rbp; + register_t cf_r10; + register_t cf_r11; + register_t cf_r12; + register_t cf_r13; + register_t cf_r14; + register_t cf_r15; register_t :64; /* for compat with trap frame - trapno */ register_t :64; /* for compat with trap frame - err */ /* below portion defined in 386 hardware */