From aedc028b2ca53e76d9632cd4bd4f22a93b9aa77d Mon Sep 17 00:00:00 2001 From: Matthew Flatt Date: Wed, 8 Oct 2008 15:12:44 +0000 Subject: [PATCH] fix PPC instruct-cache flush to not walk past the end of an allocated page svn: r11973 --- src/mzscheme/src/jit.c | 3 +-- src/mzscheme/src/lightning/ppc/funcs.h | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/mzscheme/src/jit.c b/src/mzscheme/src/jit.c index 2d51bcf606..002049abba 100644 --- a/src/mzscheme/src/jit.c +++ b/src/mzscheme/src/jit.c @@ -48,8 +48,7 @@ # define _CALL_DARWIN #endif -/* Separate JIT_PRECISE_GC lets us test some 3m support - in non-3m mode: */ +/* Separate JIT_PRECISE_GC lets us test some 3m support in non-3m mode: */ #ifdef MZ_PRECISE_GC # define JIT_PRECISE_GC #endif diff --git a/src/mzscheme/src/lightning/ppc/funcs.h b/src/mzscheme/src/lightning/ppc/funcs.h index f19a05bf9a..82e235a3df 100644 --- a/src/mzscheme/src/lightning/ppc/funcs.h +++ b/src/mzscheme/src/lightning/ppc/funcs.h @@ -71,7 +71,7 @@ jit_flush_code(void *start, void *end) } start -= ((long) start) & (cache_line_size - 1); - end -= ((long) end) & (cache_line_size - 1); + end -= ((long) end - sizeof(long)) & (cache_line_size - 1); /* Force data cache write-backs */ for (ddest = (char *) start; ddest <= (char *) end; ddest += cache_line_size) {