Patch by Bert Belder.
Review URL: http://codereview.chromium.org/7549009
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8793
ce2b1a6d-e550-0410-aec6-
3dcde31c8c00
}
+void OS::ProtectCode(void* address, const size_t size) {
+ DWORD old_protect;
+ VirtualProtect(address, size, PAGE_EXECUTE_READ, &old_protect);
+}
+
+
+void OS::Guard(void* address, const size_t size) {
+ DWORD oldprotect;
+ VirtualProtect(address, size, PAGE_READONLY | PAGE_GUARD, &oldprotect);
+}
+
+
void OS::Sleep(int milliseconds) {
unsigned int ms = static_cast<unsigned int>(milliseconds);
usleep(1000 * ms);
}
+#ifndef __CYGWIN__
// Get rid of writable permission on code allocations.
void OS::ProtectCode(void* address, const size_t size) {
mprotect(address, size, PROT_READ | PROT_EXEC);
void OS::Guard(void* address, const size_t size) {
mprotect(address, size, PROT_NONE);
}
+#endif // __CYGWIN__
// ----------------------------------------------------------------------------