From owner-p4-projects@FreeBSD.ORG Wed Apr 23 16:31:35 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1F11637B404; Wed, 23 Apr 2003 16:31:35 -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 ACFAD37B401 for ; Wed, 23 Apr 2003 16:31:34 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 53CCA43FE1 for ; Wed, 23 Apr 2003 16:31:34 -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 h3NNVY0U075632 for ; Wed, 23 Apr 2003 16:31:34 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h3NNVXYu075624 for perforce@freebsd.org; Wed, 23 Apr 2003 16:31:33 -0700 (PDT) Date: Wed, 23 Apr 2003 16:31:33 -0700 (PDT) Message-Id: <200304232331.h3NNVXYu075624@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 29564 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: Wed, 23 Apr 2003 23:31:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=29564 Change 29564 by peter@peter_daintree on 2003/04/23 16:31:00 _setjmp and _longjmp Affected files ... .. //depot/projects/hammer/lib/libc/x86_64/gen/Makefile.inc#4 edit .. //depot/projects/hammer/lib/libc/x86_64/gen/_setjmp.S#2 edit Differences ... ==== //depot/projects/hammer/lib/libc/x86_64/gen/Makefile.inc#4 (text+ko) ==== @@ -1,4 +1,4 @@ # @(#)Makefile.inc 8.1 (Berkeley) 6/4/93 # $FreeBSD: src/lib/libc/i386/gen/Makefile.inc,v 1.18 2002/11/16 06:39:11 deischen Exp $ -SRCS+= setjmp.S frexp.c infinity.c isinf.c +SRCS+= _setjmp.S setjmp.S frexp.c infinity.c isinf.c ==== //depot/projects/hammer/lib/libc/x86_64/gen/_setjmp.S#2 (text+ko) ==== @@ -51,33 +51,37 @@ */ ENTRY(_setjmp) - movl 4(%esp),%eax - movl 0(%esp),%edx - movl %edx, 0(%eax) /* rta */ - movl %ebx, 4(%eax) - movl %esp, 8(%eax) - movl %ebp,12(%eax) - movl %esi,16(%eax) - movl %edi,20(%eax) - fnstcw 24(%eax) - xorl %eax,%eax + movq %rdi,%rax + movq 0(%rsp),%rdx /* retval */ + movq %rdx, 0(%rax) /* retval */ + movq %rbx, 8(%rax) + movq %rsp,16(%rax) + movq %rbp,24(%rax) + movq %r12,32(%rax) + movq %r13,40(%rax) + movq %r14,48(%rax) + movq %r15,56(%rax) + fnstcw 64(%rax) + xorq %rax,%rax ret - .weak CNAME(_longjmp) - .set CNAME(_longjmp),CNAME(___longjmp) + .weak CNAME(_longjmp) + .set CNAME(_longjmp),CNAME(___longjmp) ENTRY(___longjmp) - movl 4(%esp),%edx - movl 8(%esp),%eax - movl 0(%edx),%ecx - movl 4(%edx),%ebx - movl 8(%edx),%esp - movl 12(%edx),%ebp - movl 16(%edx),%esi - movl 20(%edx),%edi + movq %rdi,%rdx + movq %rsi,%rax /* retval */ + movq 0(%rdx),%rcx + movq 8(%rdx),%rbx + movq 16(%rdx),%rsp + movq 24(%rdx),%rbp + movq 32(%rdx),%r12 + movq 40(%rdx),%r13 + movq 48(%rdx),%r14 + movq 56(%rdx),%r15 fninit - fldcw 24(%edx) - testl %eax,%eax + fldcw 64(%rdx) + testq %rax,%rax jnz 1f - incl %eax -1: movl %ecx,0(%esp) + incq %rax +1: movq %rcx,0(%rsp) ret