blob: ede786e7a85861856b61e0bf42e1582cf5829992 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
diff --git a/include/private/gcconfig.h b/include/private/gcconfig.h
index b342883..174dd88 100644
--- a/include/private/gcconfig.h
+++ b/include/private/gcconfig.h
@@ -109,6 +109,21 @@ EXTERN_C_BEGIN
# define LINUX
# endif
+# if defined(__midipix__)
+# define MIDIPIX
+
+# include <fcntl.h>
+# include <sys/select.h>
+
+# include <psxtypes/psxtypes.h>
+# include <pemagine/pemagine.h>
+# include <ntapi/nt_thread.h>
+
+ int __gc_data_start_mark__[1];
+ int __gc_data_end_mark__[1];
+
+# endif
+
/* And one for NetBSD: */
# if defined(__NetBSD__)
# define NETBSD
@@ -350,6 +359,16 @@ EXTERN_C_BEGIN
# define X86_64
# define mach_type_known
# endif
+# if defined(MIDIPIX)
+# if defined(__i386__)
+# define I386
+# define mach_type_known
+# endif
+# if defined(__x86_64__)
+# define X86_64
+# define mach_type_known
+# endif
+# endif
# if defined(LINUX) && (defined(i386) || defined(__i386__))
# define I386
# define mach_type_known
@@ -1542,6 +1561,13 @@ EXTERN_C_BEGIN
EXTERN_C_BEGIN
# endif
# endif
+# ifdef MIDIPIX
+# define OS_TYPE "MIDIPIX"
+# define DATASTART ((ptr_t)__gc_data_start_mark__)
+# define DATAEND ((ptr_t)__gc_data_end_mark__)
+# define STACKBOTTOM (ptr_t)(((nt_tib *)pe_get_teb_address())->stack_base)
+# define USE_MMAP_ANON
+# endif
# ifdef CYGWIN32
# define OS_TYPE "CYGWIN32"
# define WOW64_THREAD_CONTEXT_WORKAROUND
@@ -2706,6 +2732,13 @@ EXTERN_C_BEGIN
EXTERN_C_BEGIN
# endif
# endif
+# ifdef MIDIPIX
+# define OS_TYPE "MIDIPIX"
+# define DATASTART ((ptr_t)__gc_data_start_mark__)
+# define DATAEND ((ptr_t)__gc_data_end_mark__)
+# define STACKBOTTOM (ptr_t)(((nt_tib *)pe_get_teb_address())->stack_base)
+# define USE_MMAP_ANON
+# endif
# ifdef DARWIN
# define OS_TYPE "DARWIN"
# define DARWIN_DONT_PARSE_STACK 1
@@ -3111,7 +3144,7 @@ EXTERN_C_BEGIN
#if defined(SVR4) || defined(LINUX) || defined(IRIX5) || defined(HPUX) \
|| defined(OPENBSD) || defined(NETBSD) || defined(FREEBSD) \
|| defined(DGUX) || defined(BSD) || defined(HAIKU) || defined(HURD) \
- || defined(AIX) || defined(DARWIN) || defined(OSF1)
+ || defined(AIX) || defined(DARWIN) || defined(OSF1) || defined(MIDIPIX)
# define UNIX_LIKE /* Basic Unix-like system calls work. */
#endif
|