30 #include <sys/syscall.h>
35 #if defined(V8_TARGET_ARCH_ARM)
60 #if defined (USE_SIMULATOR)
66 Simulator::FlushICache(Isolate::Current()->simulator_i_cache(), start, size);
74 register uint32_t beg
asm(
"a1") = reinterpret_cast<uint32_t>(start);
75 register uint32_t end
asm(
"a2") =
76 reinterpret_cast<uint32_t>(start) + size;
77 register uint32_t flg
asm(
"a3") = 0;
78 #if defined (__arm__) && !defined(__thumb__)
80 register uint32_t scno
asm(
"r7") = __ARM_NR_cacheflush;
84 :
"0" (beg),
"r" (end),
"r" (flg),
"r" (scno));
88 "@ Enter ARM Mode \n\t"
97 "@ Enter THUMB Mode\n\t"
103 :
"0" (beg),
"r" (end),
"r" (flg),
"r" (__ARM_NR_cacheflush)
111 #if !defined (__arm__) || !defined(CAN_USE_ARMV5_INSTRUCTIONS)
114 asm volatile(
"bkpt 0");
120 #endif // V8_TARGET_ARCH_ARM
static bool IsSupported(CpuFeature f)
static bool SupportsCrankshaft()
static void FlushICache(void *start, size_t size)