From owner-p4-projects@FreeBSD.ORG Sat May 31 12:30:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 41E6337B404; Sat, 31 May 2003 12:30:20 -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 CE49137B401 for ; Sat, 31 May 2003 12:30:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7271643FB1 for ; Sat, 31 May 2003 12:30:19 -0700 (PDT) (envelope-from marcel@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 h4VJUJ0U018329 for ; Sat, 31 May 2003 12:30:19 -0700 (PDT) (envelope-from marcel@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h4VJUIEG018326 for perforce@freebsd.org; Sat, 31 May 2003 12:30:18 -0700 (PDT) Date: Sat, 31 May 2003 12:30:18 -0700 (PDT) Message-Id: <200305311930.h4VJUIEG018326@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to marcel@freebsd.org using -f From: Marcel Moolenaar To: Perforce Change Reviews Subject: PERFORCE change 32197 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: Sat, 31 May 2003 19:30:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=32197 Change 32197 by marcel@marcel_nfs on 2003/05/31 12:29:23 Don't openly demonstrate my natural tendency towards fickleness. Coerce on using uint64_t in all applicable cases instead of an almost randomly (but not quite) use of long, intptr_t and uint64_t. While here, create a typedef for the threads start function as used by the wrapper (ie internal implementation specific view). Affected files ... .. //depot/projects/ia64/lib/libc/ia64/gen/makecontext.c#2 edit Differences ... ==== //depot/projects/ia64/lib/libc/ia64/gen/makecontext.c#2 (text+ko) ==== @@ -38,8 +38,11 @@ uint64_t gp; }; -static __inline uint64_t* -spill(uint64_t *bsp, intptr_t arg) +typedef void (*func_t)(uint64_t, uint64_t, uint64_t, uint64_t, uint64_t, + uint64_t, uint64_t, uint64_t); + +static __inline uint64_t * +spill(uint64_t *bsp, uint64_t arg) { *bsp++ = arg; if (((intptr_t)bsp & 0x1ff) == 0x1f8) @@ -48,9 +51,7 @@ } static void -ctx_wrapper(ucontext_t *ucp, - void (*func)(long, long, long, long, long, long, long, long), - uint64_t *args) +ctx_wrapper(ucontext_t *ucp, func_t func, uint64_t *args) { (*func)(args[0], args[1], args[2], args[3], args[4], args[5], args[6], @@ -92,7 +93,7 @@ args = (uint64_t*)(ucp->uc_stack.ss_sp + ucp->uc_stack.ss_size) - 8; i = 0; while (i < argc) - args[i++] = va_arg(ap, intptr_t); + args[i++] = va_arg(ap, uint64_t); while (i < 8) args[i++] = 0; va_end(ap);