view mem_win.c @ 760:656b1fded67f

Fix self modifying code checks on platforms like OS X on which guest RAM ends up at an address unreachable with a 32-bit displacement
author Michael Pavone <pavone@retrodev.com>
date Sun, 28 Jun 2015 13:30:17 -0700
parents 80a67be1770b
children bce97fc0bb8a
line wrap: on
line source

/*
 Copyright 2013 Michael Pavone
 This file is part of BlastEm.
 BlastEm is free software distributed under the terms of the GNU General Public License version 3 or greater. See COPYING for full license text.
*/

#include "mem.h"
#include <Windows.h>

void * alloc_code(size_t *size)
{
	*size += PAGE_SIZE - (*size & (PAGE_SIZE - 1));

	return VirtualAlloc(NULL, *size, MEM_COMMIT | MEM_RESERVE, PAGE_EXECUTE_READWRITE);
}