test of MmapAllocator
diff --git a/test/mprotect_test.cpp b/test/mprotect_test.cpp
new file mode 100644
index 0000000..df8ea84
--- /dev/null
+++ b/test/mprotect_test.cpp
@@ -0,0 +1,37 @@
+#define XBYAK_NO_OP_NAMES
+#include "xbyak/xbyak.h"
+#include <string.h>
+#include <vector>
+
+struct Code : Xbyak::CodeGenerator {
+	Code(int x)
+	{
+		mov(eax, x);
+		ret();
+	}
+};
+
+int main()
+	try
+{
+#ifdef XBYAK_USE_MMAP_ALLOCATOR
+	puts("use Allocator with mmap");
+#else
+	puts("use Allocator with posix_memalign");
+#endif
+	const int N = 70000;
+	std::vector<Code*> v(N);
+	for (int i = 0; i < N; i++) {
+		v[i] = new Code(i);
+	}
+	long long sum = 0;
+	for (int i = 0; i < N; i++) {
+		sum += v[i]->getCode<int (*)()>()();
+	}
+	for (int i = 0; i < N; i++) {
+		delete v[i];
+	}
+	printf("sum=%lld\n", sum);
+} catch (std::exception& e) {
+	printf("ERR %s\n", e.what());
+}