changeset 27ce7490bd3b in /z/repo/m5
details: http://repo.m5sim.org/m5?cmd=changeset;node=27ce7490bd3b
description:
Add m5op to the build process
use quiesceNs on other CPUs
panic rather than spin on an error
console/Makefile:
Add m5op to the build process
console/dbmentry.S:
use quiesceNs on other CPUs
console/printf.c:
panic rather than spin on an error.
diffstat:
system/alpha/console/Makefile | 7 +++++--
system/alpha/console/dbmentry.S | 9 ++++++---
system/alpha/console/printf.c | 4 +++-
3 files changed, 14 insertions(+), 6 deletions(-)
diffs (69 lines):
diff -r 36c59449dc93 -r 27ce7490bd3b system/alpha/console/Makefile
--- a/system/alpha/console/Makefile Thu Feb 23 15:00:04 2006 -0500
+++ b/system/alpha/console/Makefile Tue Feb 28 18:57:34 2006 -0500
@@ -35,8 +35,8 @@
LD=$(CROSS_COMPILE)ld
DBMENTRY= fffffc0000010000
-CFLAGS=-I . -I ../h -I$(M5)/dev -fno-builtin -Wa,-m21164
-OBJS=dbmentry.o printf.o paljtokern.o paljtoslave.o console.o
+CFLAGS=-I . -I ../h -I$(M5)/dev -I$(M5)/util/m5/ -fno-builtin -Wa,-m21164
+OBJS=dbmentry.o printf.o paljtokern.o paljtoslave.o console.o m5op.o
### Make sure that the M5 variable is set ###
ifndef M5
@@ -45,6 +45,9 @@
all: console
+m5op.o: $(M5)/util/m5/m5op.S
+ $(CC) $(CFLAGS) -nostdinc -o $@ -c $<
+
%.o: %.S
$(CC) $(CFLAGS) -nostdinc -o $@ -c $<
diff -r 36c59449dc93 -r 27ce7490bd3b system/alpha/console/dbmentry.S
--- a/system/alpha/console/dbmentry.S Thu Feb 23 15:00:04 2006 -0500
+++ b/system/alpha/console/dbmentry.S Tue Feb 28 18:57:34 2006 -0500
@@ -81,7 +81,9 @@
bis zero,8,t4
mulq t4,v0,t4
addq t3,t4,t3
-cpuwait: ldq t4, 0(t3)
+ ldah a0, 3(zero) # load arg0 with 65536*3
+cpuwait: .long 0x6000002 # jsr quiesceNs
+ ldq t4, 0(t3)
beq t4, cpuwait
bis t4,t4,sp
@@ -220,8 +222,9 @@
mov a0, t0 # cpu number
mov a1, t1 # cpu rpb pointer (virtual)
mov a2, t2 # what to spin on
-
-test: ldl t3, 0(t2)
+ ldah a0, 3(zero) # load arg0 with 65536
+test: .long 0x6000002 # jsr quiesceNs # wait 65us*3
+ ldl t3, 0(t2)
beq t3, test
zapnot t1,0x1f,a0 # make rpb physical
call_pal PAL_SWPCTX_ENTRY # switch to pcb
diff -r 36c59449dc93 -r 27ce7490bd3b system/alpha/console/printf.c
--- a/system/alpha/console/printf.c Thu Feb 23 15:00:04 2006 -0500
+++ b/system/alpha/console/printf.c Tue Feb 28 18:57:34 2006 -0500
@@ -54,6 +54,8 @@
#include <sys/types.h>
#include <stdarg.h>
+#include <stdint.h>
+#include "m5op.h"
/* The string s is terminated by a '\0' */
void
@@ -320,5 +322,5 @@
}
va_end(ap); /* clean up */
- while(1);
+ m5_panic();
}
_______________________________________________
m5-dev mailing list
[email protected]
http://m5sim.org/mailman/listinfo/m5-dev