From owner-p4-projects@FreeBSD.ORG Sat Apr 5 02:37:46 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AB2E937B407; Sat, 5 Apr 2003 02:37:45 -0800 (PST) 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 1D8DA37B41A for ; Sat, 5 Apr 2003 02:37:45 -0800 (PST) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 981BB43FB1 for ; Sat, 5 Apr 2003 02:37:44 -0800 (PST) (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 h35Abi0U047051 for ; Sat, 5 Apr 2003 02:37:44 -0800 (PST) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.6/8.12.6/Submit) id h35AbilM047048 for perforce@freebsd.org; Sat, 5 Apr 2003 02:37:44 -0800 (PST) Date: Sat, 5 Apr 2003 02:37:44 -0800 (PST) Message-Id: <200304051037.h35AbilM047048@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 28210 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, 05 Apr 2003 10:37:46 -0000 http://perforce.freebsd.org/chv.cgi?CH=28210 Change 28210 by peter@peter_overcee on 2003/04/05 02:37:28 stub out cpu identification, there's nothing to identify yet. trivial b*, mem* implementations Affected files ... .. //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#39 edit Differences ... ==== //depot/projects/hammer/sys/x86_64/x86_64/machdep.c#39 (text+ko) ==== @@ -115,10 +115,12 @@ extern void dblfault_handler(void); #endif +#if 0 extern void printcpuinfo(void); /* XXX header file */ extern void finishidentcpu(void); extern void panicifcpuunsupported(void); extern void initializecpu(void); +#endif #define CS_SECURE(cs) (ISPL(cs) == SEL_UPL) #define EFL_SECURE(ef, oef) ((((ef) ^ (oef)) & ~PSL_USERCHANGE) == 0) @@ -164,8 +166,10 @@ * Good {morning,afternoon,evening,night}. */ startrtclock(); +#if 0 printcpuinfo(); panicifcpuunsupported(); +#endif #ifdef PERFMON perfmon_init(); #endif @@ -1163,12 +1167,16 @@ Debugger("Boot flags requested debugger"); #endif +#if 0 finishidentcpu(); /* Final stage of CPU initialization */ +#endif setidt(6, &IDTVEC(ill), SDT_SYSTGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL)); setidt(13, &IDTVEC(prot), SDT_SYSTGT, SEL_KPL, GSEL(GCODE_SEL, SEL_KPL)); +#if 0 initializecpu(); /* Initialize CPU registers */ +#endif /* make an initial tss so cpu can get interrupt stack on syscall! */ #if 0 @@ -1587,3 +1595,64 @@ } #endif /* DDB */ + +void +bcopy(const void *src, void *dest, size_t len) +{ + const char *csrc; + char *cdest; + size_t i; + + csrc = (const char *)src; + cdest = (char *)dest; + if (src > dest) { + for (i = len - 1; i >= 0; i--) + cdest[i] = csrc[i]; + } else { + for (i = 0; i < len; i++) + cdest[i] = csrc[i]; + } +} + +void * +memcpy(void *dest, const void *src, size_t len) +{ + + bcopy(src, dest, len); + return dest; +} + +void +bzero(void *buf, size_t len) +{ + char *cbuf; + size_t i; + + cbuf = (char *)buf; + for (i = len - 1; i >= 0; i--) + cbuf[i] = 0; +} + +void +pagezero(void *buf) +{ + + bzero(buf, PAGE_SIZE); +} + +int +bcmp(const void *s1, const void *s2, size_t len) +{ + const char *cs1, *cs2; + int diff; + size_t i; + + cs1 = (const char *)s1; + cs2 = (const char *)s2; + for (i = 0; i < len; i++) { + diff = *cs2 - *cs1; + if (diff) + return diff; + } + return 0; +}