From c1884ed17f3386e5f1f8a2d1939e46b77e7a6d1a Mon Sep 17 00:00:00 2001 From: keunyoung Date: Thu, 7 Mar 2013 12:50:38 -0800 Subject: Android uses cacheflush(long, long, long) for MIPS. Change-Id: Ia2902dd3521ff310e2261c8f627c95b3e7c9fdad --- lib/Support/Unix/Memory.inc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/Support/Unix/Memory.inc b/lib/Support/Unix/Memory.inc index e00394e..2686ba6 100644 --- a/lib/Support/Unix/Memory.inc +++ b/lib/Support/Unix/Memory.inc @@ -331,8 +331,13 @@ void Memory::InvalidateInstructionCache(const void *Addr, const char *End = Start + Len; __clear_cache(const_cast(Start), const_cast(End)); # elif defined(__mips__) +# if defined(ANDROID) + // Android uses cacheflush(long, long, long) instead. + cacheflush(reinterpret_cast(Addr), Len, BCACHE); +# else const char *Start = static_cast(Addr); cacheflush(const_cast(Start), Len, BCACHE); +# endif # endif #endif // end apple -- cgit v1.1