summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorValery Ushakov <uwe@stderr.spb.ru>2017-08-26 11:01:25 +0300
committerValery Ushakov <uwe@stderr.spb.ru>2017-08-26 11:01:25 +0300
commit887c05cf54e7dbd2381ecc932bd343e73343d1b6 (patch)
tree0912524b7f4dea47d9b03af9394ad45eda8a3f8e
parent4a062f32e3dd93bf371feb27f3ccc28d7930099e (diff)
PowerPC needs segflush()
-rw-r--r--emu/NetBSD/mkfile1
-rw-r--r--emu/NetBSD/os.c8
-rw-r--r--emu/NetBSD/segflush-386.c9
-rw-r--r--emu/NetBSD/segflush-power.c12
4 files changed, 22 insertions, 8 deletions
diff --git a/emu/NetBSD/mkfile b/emu/NetBSD/mkfile
index fcf5a658..5af02362 100644
--- a/emu/NetBSD/mkfile
+++ b/emu/NetBSD/mkfile
@@ -22,6 +22,7 @@ X11LIBS= -L/usr/X11R7/lib -R/usr/X11R7/lib -lXext -lX11
OBJ=\
asm-$OBJTYPE.$O\
os.$O\
+ segflush-$OBJTYPE.$O\
$CONF.root.$O\
lock.$O\
$DEVS\
diff --git a/emu/NetBSD/os.c b/emu/NetBSD/os.c
index e299a188..b6ffab99 100644
--- a/emu/NetBSD/os.c
+++ b/emu/NetBSD/os.c
@@ -527,11 +527,3 @@ stackalloc(Proc *p, void **tos)
*(Proc **)rv = p;
return rv;
}
-
-int
-segflush(void *a, ulong n)
-{
- USED(a);
- USED(n);
- return 0;
-}
diff --git a/emu/NetBSD/segflush-386.c b/emu/NetBSD/segflush-386.c
new file mode 100644
index 00000000..cdf0496b
--- /dev/null
+++ b/emu/NetBSD/segflush-386.c
@@ -0,0 +1,9 @@
+#include "dat.h"
+
+int
+segflush(void *a, ulong n)
+{
+ USED(a);
+ USED(n);
+ return 0;
+}
diff --git a/emu/NetBSD/segflush-power.c b/emu/NetBSD/segflush-power.c
new file mode 100644
index 00000000..845d74f6
--- /dev/null
+++ b/emu/NetBSD/segflush-power.c
@@ -0,0 +1,12 @@
+#include <sys/types.h>
+#include <machine/cpu.h>
+
+#include "dat.h"
+
+
+int
+segflush(void *a, ulong n)
+{
+ __syncicache(a, n);
+ return 0;
+}