summaryrefslogtreecommitdiff
path: root/deps/v8/test/cctest/test-icache.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/test/cctest/test-icache.cc')
-rw-r--r--deps/v8/test/cctest/test-icache.cc24
1 files changed, 16 insertions, 8 deletions
diff --git a/deps/v8/test/cctest/test-icache.cc b/deps/v8/test/cctest/test-icache.cc
index 529701c227..f68789df2c 100644
--- a/deps/v8/test/cctest/test-icache.cc
+++ b/deps/v8/test/cctest/test-icache.cc
@@ -189,15 +189,23 @@ TEST(TestFlushICacheOfWritableAndExecutable) {
CHECK(SetPermissions(GetPlatformPageAllocator(), buffer->start(),
buffer->size(), v8::PageAllocator::kReadWriteExecute));
- SwitchMemoryPermissionsToWritable();
- FloodWithInc(isolate, buffer.get());
- FlushInstructionCache(buffer->start(), buffer->size());
- SwitchMemoryPermissionsToExecutable();
+ {
+#if defined(V8_OS_MACOSX) && defined(V8_HOST_ARCH_ARM64)
+ // Make sure to switch memory to writable on M1 hardware.
+ wasm::CodeSpaceWriteScope code_space_write_scope(nullptr);
+#endif
+ FloodWithInc(isolate, buffer.get());
+ FlushInstructionCache(buffer->start(), buffer->size());
+ }
CHECK_EQ(23 + kNumInstr, f.Call(23)); // Call into generated code.
- SwitchMemoryPermissionsToWritable();
- FloodWithNop(isolate, buffer.get());
- FlushInstructionCache(buffer->start(), buffer->size());
- SwitchMemoryPermissionsToExecutable();
+ {
+#if defined(V8_OS_MACOSX) && defined(V8_HOST_ARCH_ARM64)
+ // Make sure to switch memory to writable on M1 hardware.
+ wasm::CodeSpaceWriteScope code_space_write_scope(nullptr);
+#endif
+ FloodWithNop(isolate, buffer.get());
+ FlushInstructionCache(buffer->start(), buffer->size());
+ }
CHECK_EQ(23, f.Call(23)); // Call into generated code.
}
}