Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 5 Apr 2003 02:37:44 -0800 (PST)
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 28210 for review
Message-ID:  <200304051037.h35AbilM047048@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
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;
+}



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200304051037.h35AbilM047048>