Я пишу JIT на ARM Linux, который выполняет систему команд, которая содержит код самоизменения. Система команд не имеет никаких инструкций по очистке кэша (подобными x86 в этом отношении).
Если я выписываю некоторый код к странице и затем звоню mprotect
на той странице, которая достаточна для лишения законной силы кэша инструкции? Или сделайте я также должен использовать cacheflush
syscall на тех страницах?
Я считаю, что вам не нужно явно очищать кэш.
Какой это процессор? ARMv5? ARMv7?
.