aboutsummaryrefslogtreecommitdiff
path: root/translate-i386.c
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2003-04-29 21:26:53 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2003-04-29 21:26:53 +0000
commitd014c98c8dce88c3b6cc19bd2e0e558900f5c1d0 (patch)
tree89cb45f50dcf91a6445f6aa312cd8ac24136705c /translate-i386.c
parenta98fd896cdcab506e734de7555304da16e775277 (diff)
sparc support
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@119 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'translate-i386.c')
-rw-r--r--translate-i386.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/translate-i386.c b/translate-i386.c
index e23ff67774..1cdad2d908 100644
--- a/translate-i386.c
+++ b/translate-i386.c
@@ -89,6 +89,21 @@ static inline void flush_icache_range(unsigned long start, unsigned long stop)
}
#endif
+#ifdef __sparc__
+
+static void inline flush_icache_range(unsigned long start, unsigned long stop)
+{
+ unsigned long p;
+
+ p = start & ~(8UL - 1UL);
+ stop = (stop + (8UL - 1UL)) & ~(8UL - 1UL);
+
+ for (; p < stop; p += 8)
+ __asm__ __volatile__("flush\t%0" : : "r" (p));
+}
+
+#endif
+
extern FILE *logfile;
extern int loglevel;