From: Iain Sandoe Date: Fri, 4 Sep 2020 13:05:12 +0000 (+0100) Subject: Darwin, X86 : Implement __cache_clear. X-Git-Tag: upstream/12.2.0~5493 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fc3e9f58ec18154027aadc6aa055490acb8c2920;p=platform%2Fupstream%2Fgcc.git Darwin, X86 : Implement __cache_clear. We had a NOP cache clear, but there is a suitable mechanism provided by a system call. This connects it up. Signed-off-by: Iain Sandoe gcc/ChangeLog: * config/i386/darwin.h (CLEAR_INSN_CACHE): New. --- diff --git a/gcc/config/i386/darwin.h b/gcc/config/i386/darwin.h index 73b06e2..da0ae5b 100644 --- a/gcc/config/i386/darwin.h +++ b/gcc/config/i386/darwin.h @@ -344,3 +344,8 @@ along with GCC; see the file COPYING3. If not see #undef SUBTARGET_SHADOW_OFFSET #define SUBTARGET_SHADOW_OFFSET \ (TARGET_LP64 ? HOST_WIDE_INT_1 << 44 : HOST_WIDE_INT_1 << 29) + +#undef CLEAR_INSN_CACHE +#define CLEAR_INSN_CACHE(beg, end) \ + extern void sys_icache_invalidate(void *start, size_t len); \ + sys_icache_invalidate ((beg), (size_t)((end)-(beg)))