summaryrefslogtreecommitdiffstats
path: root/compiler/jit
diff options
context:
space:
mode:
authorMathieu Chartier <mathieuc@google.com>2015-06-01 19:12:36 -0700
committerMathieu Chartier <mathieuc@google.com>2015-06-02 10:27:43 -0700
commit2791d5e66f6c802147e2f9275b94b5ca995c396f (patch)
tree61adeaaad284db1d27b318042a92d9983dfb34d9 /compiler/jit
parent519fd543625da68ef93f0cd5539c949e5e74e04e (diff)
downloadandroid_art-2791d5e66f6c802147e2f9275b94b5ca995c396f.tar.gz
android_art-2791d5e66f6c802147e2f9275b94b5ca995c396f.tar.bz2
android_art-2791d5e66f6c802147e2f9275b94b5ca995c396f.zip
Add clear cache for JIT
(cherry picked from commit 5783a74163878095475596fabc0b9cb04bec467b) Bug: 21572270 Change-Id: I711a9ee2d9688a8e4b59380c401f10f42c6c068e
Diffstat (limited to 'compiler/jit')
-rw-r--r--compiler/jit/jit_compiler.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/jit/jit_compiler.cc b/compiler/jit/jit_compiler.cc
index 55fef9b721..ce277cd1ea 100644
--- a/compiler/jit/jit_compiler.cc
+++ b/compiler/jit/jit_compiler.cc
@@ -244,6 +244,9 @@ bool JitCompiler::AddToCodeCache(ArtMethod* method, const CompiledMethod* compil
compiled_method, code_reserve, code_reserve + reserve_size, mapping_table_ptr,
vmap_table_ptr, gc_map_ptr);
+ __builtin___clear_cache(reinterpret_cast<char*>(code_ptr),
+ reinterpret_cast<char*>(code_ptr + quick_code->size()));
+
const size_t thumb_offset = compiled_method->CodeDelta();
const uint32_t code_offset = code_ptr - base + thumb_offset;
*out_method = OatFile::OatMethod(base, code_offset);