triton-windows 3.3.0a0.post11__cp312-cp312-win_amd64.whl → 3.3.0a0.post13__cp312-cp312-win_amd64.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of triton-windows might be problematic. Click here for more details.

Files changed (101) hide show
  1. triton/_C/libtriton.pyd +0 -0
  2. triton/__init__.py +0 -12
  3. triton/backends/nvidia/compiler.py +3 -1
  4. triton/backends/nvidia/driver.py +4 -4
  5. triton/compiler/compiler.py +4 -4
  6. triton/runtime/build.py +29 -10
  7. triton/runtime/tcc/include/_mingw.h +170 -0
  8. triton/runtime/tcc/include/assert.h +57 -0
  9. triton/runtime/tcc/include/conio.h +409 -0
  10. triton/runtime/tcc/include/ctype.h +281 -0
  11. triton/runtime/tcc/include/dir.h +31 -0
  12. triton/runtime/tcc/include/direct.h +68 -0
  13. triton/runtime/tcc/include/dirent.h +135 -0
  14. triton/runtime/tcc/include/dos.h +55 -0
  15. triton/runtime/tcc/include/errno.h +75 -0
  16. triton/runtime/tcc/include/excpt.h +123 -0
  17. triton/runtime/tcc/include/fcntl.h +52 -0
  18. triton/runtime/tcc/include/fenv.h +108 -0
  19. triton/runtime/tcc/include/float.h +57 -0
  20. triton/runtime/tcc/include/inttypes.h +297 -0
  21. triton/runtime/tcc/include/io.h +418 -0
  22. triton/runtime/tcc/include/limits.h +111 -0
  23. triton/runtime/tcc/include/locale.h +91 -0
  24. triton/runtime/tcc/include/malloc.h +181 -0
  25. triton/runtime/tcc/include/math.h +737 -0
  26. triton/runtime/tcc/include/mem.h +13 -0
  27. triton/runtime/tcc/include/memory.h +40 -0
  28. triton/runtime/tcc/include/process.h +176 -0
  29. triton/runtime/tcc/include/sec_api/conio_s.h +42 -0
  30. triton/runtime/tcc/include/sec_api/crtdbg_s.h +19 -0
  31. triton/runtime/tcc/include/sec_api/io_s.h +33 -0
  32. triton/runtime/tcc/include/sec_api/mbstring_s.h +52 -0
  33. triton/runtime/tcc/include/sec_api/search_s.h +25 -0
  34. triton/runtime/tcc/include/sec_api/stdio_s.h +145 -0
  35. triton/runtime/tcc/include/sec_api/stdlib_s.h +67 -0
  36. triton/runtime/tcc/include/sec_api/stralign_s.h +30 -0
  37. triton/runtime/tcc/include/sec_api/string_s.h +41 -0
  38. triton/runtime/tcc/include/sec_api/sys/timeb_s.h +34 -0
  39. triton/runtime/tcc/include/sec_api/tchar_s.h +266 -0
  40. triton/runtime/tcc/include/sec_api/time_s.h +61 -0
  41. triton/runtime/tcc/include/sec_api/wchar_s.h +128 -0
  42. triton/runtime/tcc/include/setjmp.h +160 -0
  43. triton/runtime/tcc/include/share.h +28 -0
  44. triton/runtime/tcc/include/signal.h +63 -0
  45. triton/runtime/tcc/include/stdarg.h +79 -0
  46. triton/runtime/tcc/include/stdbool.h +11 -0
  47. triton/runtime/tcc/include/stddef.h +54 -0
  48. triton/runtime/tcc/include/stdint.h +212 -0
  49. triton/runtime/tcc/include/stdio.h +429 -0
  50. triton/runtime/tcc/include/stdlib.h +580 -0
  51. triton/runtime/tcc/include/string.h +164 -0
  52. triton/runtime/tcc/include/sys/fcntl.h +13 -0
  53. triton/runtime/tcc/include/sys/file.h +14 -0
  54. triton/runtime/tcc/include/sys/locking.h +30 -0
  55. triton/runtime/tcc/include/sys/stat.h +290 -0
  56. triton/runtime/tcc/include/sys/time.h +69 -0
  57. triton/runtime/tcc/include/sys/timeb.h +133 -0
  58. triton/runtime/tcc/include/sys/types.h +118 -0
  59. triton/runtime/tcc/include/sys/unistd.h +14 -0
  60. triton/runtime/tcc/include/sys/utime.h +146 -0
  61. triton/runtime/tcc/include/tcc/tcc_libm.h +201 -0
  62. triton/runtime/tcc/include/tcclib.h +80 -0
  63. triton/runtime/tcc/include/tchar.h +1102 -0
  64. triton/runtime/tcc/include/time.h +287 -0
  65. triton/runtime/tcc/include/vadefs.h +11 -0
  66. triton/runtime/tcc/include/values.h +4 -0
  67. triton/runtime/tcc/include/varargs.h +12 -0
  68. triton/runtime/tcc/include/wchar.h +873 -0
  69. triton/runtime/tcc/include/wctype.h +172 -0
  70. triton/runtime/tcc/include/winapi/basetsd.h +149 -0
  71. triton/runtime/tcc/include/winapi/basetyps.h +85 -0
  72. triton/runtime/tcc/include/winapi/guiddef.h +156 -0
  73. triton/runtime/tcc/include/winapi/poppack.h +8 -0
  74. triton/runtime/tcc/include/winapi/pshpack1.h +8 -0
  75. triton/runtime/tcc/include/winapi/pshpack2.h +8 -0
  76. triton/runtime/tcc/include/winapi/pshpack4.h +8 -0
  77. triton/runtime/tcc/include/winapi/pshpack8.h +8 -0
  78. triton/runtime/tcc/include/winapi/winbase.h +2951 -0
  79. triton/runtime/tcc/include/winapi/wincon.h +301 -0
  80. triton/runtime/tcc/include/winapi/windef.h +293 -0
  81. triton/runtime/tcc/include/winapi/windows.h +127 -0
  82. triton/runtime/tcc/include/winapi/winerror.h +3166 -0
  83. triton/runtime/tcc/include/winapi/wingdi.h +4080 -0
  84. triton/runtime/tcc/include/winapi/winnt.h +5835 -0
  85. triton/runtime/tcc/include/winapi/winreg.h +272 -0
  86. triton/runtime/tcc/include/winapi/winuser.h +5651 -0
  87. triton/runtime/tcc/include/winapi/winver.h +160 -0
  88. triton/runtime/tcc/lib/cuda.def +697 -0
  89. triton/runtime/tcc/lib/gdi32.def +337 -0
  90. triton/runtime/tcc/lib/kernel32.def +770 -0
  91. triton/runtime/tcc/lib/libtcc1-64.a +0 -0
  92. triton/runtime/tcc/lib/msvcrt.def +1399 -0
  93. triton/runtime/tcc/lib/python3.def +810 -0
  94. triton/runtime/tcc/lib/user32.def +658 -0
  95. triton/runtime/tcc/libtcc.dll +0 -0
  96. triton/runtime/tcc/tcc.exe +0 -0
  97. triton/windows_utils.py +78 -80
  98. {triton_windows-3.3.0a0.post11.dist-info → triton_windows-3.3.0a0.post13.dist-info}/METADATA +1 -1
  99. {triton_windows-3.3.0a0.post11.dist-info → triton_windows-3.3.0a0.post13.dist-info}/RECORD +101 -11
  100. {triton_windows-3.3.0a0.post11.dist-info → triton_windows-3.3.0a0.post13.dist-info}/WHEEL +0 -0
  101. {triton_windows-3.3.0a0.post11.dist-info → triton_windows-3.3.0a0.post13.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,31 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ /*
7
+ * dir.h
8
+ *
9
+ * This file OBSOLESCENT and only provided for backward compatibility.
10
+ * Please use io.h instead.
11
+ *
12
+ * This file is part of the Mingw32 package.
13
+ *
14
+ * Contributors:
15
+ * Created by Colin Peters <colin@bird.fu.is.saga-u.ac.jp>
16
+ * Mumit Khan <khan@xraylith.wisc.edu>
17
+ *
18
+ * THIS SOFTWARE IS NOT COPYRIGHTED
19
+ *
20
+ * This source code is offered for use in the public domain. You may
21
+ * use, modify or distribute it freely.
22
+ *
23
+ * This code is distributed in the hope that it will be useful but
24
+ * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
25
+ * DISCLAIMED. This includes but is not limited to warranties of
26
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
27
+ *
28
+ */
29
+
30
+ #include <io.h>
31
+
@@ -0,0 +1,68 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ #ifndef _INC_DIRECT
7
+ #define _INC_DIRECT
8
+
9
+ #include <_mingw.h>
10
+ #include <io.h>
11
+
12
+ #pragma pack(push,_CRT_PACKING)
13
+
14
+ #ifdef __cplusplus
15
+ extern "C" {
16
+ #endif
17
+
18
+ #ifndef _DISKFREE_T_DEFINED
19
+ #define _DISKFREE_T_DEFINED
20
+ struct _diskfree_t {
21
+ unsigned total_clusters;
22
+ unsigned avail_clusters;
23
+ unsigned sectors_per_cluster;
24
+ unsigned bytes_per_sector;
25
+ };
26
+ #endif
27
+
28
+ _CRTIMP char *__cdecl _getcwd(char *_DstBuf,int _SizeInBytes);
29
+ _CRTIMP char *__cdecl _getdcwd(int _Drive,char *_DstBuf,int _SizeInBytes);
30
+ char *__cdecl _getdcwd_nolock(int _Drive,char *_DstBuf,int _SizeInBytes);
31
+ _CRTIMP int __cdecl _chdir(const char *_Path);
32
+ _CRTIMP int __cdecl _mkdir(const char *_Path);
33
+ _CRTIMP int __cdecl _rmdir(const char *_Path);
34
+ _CRTIMP int __cdecl _chdrive(int _Drive);
35
+ _CRTIMP int __cdecl _getdrive(void);
36
+ _CRTIMP unsigned long __cdecl _getdrives(void);
37
+
38
+ #ifndef _GETDISKFREE_DEFINED
39
+ #define _GETDISKFREE_DEFINED
40
+ _CRTIMP unsigned __cdecl _getdiskfree(unsigned _Drive,struct _diskfree_t *_DiskFree);
41
+ #endif
42
+
43
+ #ifndef _WDIRECT_DEFINED
44
+ #define _WDIRECT_DEFINED
45
+ _CRTIMP wchar_t *__cdecl _wgetcwd(wchar_t *_DstBuf,int _SizeInWords);
46
+ _CRTIMP wchar_t *__cdecl _wgetdcwd(int _Drive,wchar_t *_DstBuf,int _SizeInWords);
47
+ wchar_t *__cdecl _wgetdcwd_nolock(int _Drive,wchar_t *_DstBuf,int _SizeInWords);
48
+ _CRTIMP int __cdecl _wchdir(const wchar_t *_Path);
49
+ _CRTIMP int __cdecl _wmkdir(const wchar_t *_Path);
50
+ _CRTIMP int __cdecl _wrmdir(const wchar_t *_Path);
51
+ #endif
52
+
53
+ #ifndef NO_OLDNAMES
54
+
55
+ #define diskfree_t _diskfree_t
56
+
57
+ char *__cdecl getcwd(char *_DstBuf,int _SizeInBytes);
58
+ int __cdecl chdir(const char *_Path);
59
+ int __cdecl mkdir(const char *_Path);
60
+ int __cdecl rmdir(const char *_Path);
61
+ #endif
62
+
63
+ #ifdef __cplusplus
64
+ }
65
+ #endif
66
+
67
+ #pragma pack(pop)
68
+ #endif
@@ -0,0 +1,135 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ /* All the headers include this file. */
7
+ #include <_mingw.h>
8
+
9
+ #ifndef __STRICT_ANSI__
10
+
11
+ #ifndef _DIRENT_H_
12
+ #define _DIRENT_H_
13
+
14
+
15
+ #pragma pack(push,_CRT_PACKING)
16
+
17
+ #include <io.h>
18
+
19
+ #ifndef RC_INVOKED
20
+
21
+ #ifdef __cplusplus
22
+ extern "C" {
23
+ #endif
24
+
25
+ struct dirent
26
+ {
27
+ long d_ino; /* Always zero. */
28
+ unsigned short d_reclen; /* Always zero. */
29
+ unsigned short d_namlen; /* Length of name in d_name. */
30
+ char* d_name; /* File name. */
31
+ /* NOTE: The name in the dirent structure points to the name in the
32
+ * finddata_t structure in the DIR. */
33
+ };
34
+
35
+ /*
36
+ * This is an internal data structure. Good programmers will not use it
37
+ * except as an argument to one of the functions below.
38
+ * dd_stat field is now int (was short in older versions).
39
+ */
40
+ typedef struct
41
+ {
42
+ /* disk transfer area for this dir */
43
+ struct _finddata_t dd_dta;
44
+
45
+ /* dirent struct to return from dir (NOTE: this makes this thread
46
+ * safe as long as only one thread uses a particular DIR struct at
47
+ * a time) */
48
+ struct dirent dd_dir;
49
+
50
+ /* _findnext handle */
51
+ long dd_handle;
52
+
53
+ /*
54
+ * Status of search:
55
+ * 0 = not started yet (next entry to read is first entry)
56
+ * -1 = off the end
57
+ * positive = 0 based index of next entry
58
+ */
59
+ int dd_stat;
60
+
61
+ /* given path for dir with search pattern (struct is extended) */
62
+ char dd_name[1];
63
+ } DIR;
64
+
65
+ DIR* __cdecl opendir (const char*);
66
+ struct dirent* __cdecl readdir (DIR*);
67
+ int __cdecl closedir (DIR*);
68
+ void __cdecl rewinddir (DIR*);
69
+ long __cdecl telldir (DIR*);
70
+ void __cdecl seekdir (DIR*, long);
71
+
72
+
73
+ /* wide char versions */
74
+
75
+ struct _wdirent
76
+ {
77
+ long d_ino; /* Always zero. */
78
+ unsigned short d_reclen; /* Always zero. */
79
+ unsigned short d_namlen; /* Length of name in d_name. */
80
+ wchar_t* d_name; /* File name. */
81
+ /* NOTE: The name in the dirent structure points to the name in the * wfinddata_t structure in the _WDIR. */
82
+ };
83
+
84
+ /*
85
+ * This is an internal data structure. Good programmers will not use it
86
+ * except as an argument to one of the functions below.
87
+ */
88
+ typedef struct
89
+ {
90
+ /* disk transfer area for this dir */
91
+ struct _wfinddata_t dd_dta;
92
+
93
+ /* dirent struct to return from dir (NOTE: this makes this thread
94
+ * safe as long as only one thread uses a particular DIR struct at
95
+ * a time) */
96
+ struct _wdirent dd_dir;
97
+
98
+ /* _findnext handle */
99
+ long dd_handle;
100
+
101
+ /*
102
+ * Status of search:
103
+ * 0 = not started yet (next entry to read is first entry)
104
+ * -1 = off the end
105
+ * positive = 0 based index of next entry
106
+ */
107
+ int dd_stat;
108
+
109
+ /* given path for dir with search pattern (struct is extended) */
110
+ wchar_t dd_name[1];
111
+ } _WDIR;
112
+
113
+
114
+
115
+ _WDIR* __cdecl _wopendir (const wchar_t*);
116
+ struct _wdirent* __cdecl _wreaddir (_WDIR*);
117
+ int __cdecl _wclosedir (_WDIR*);
118
+ void __cdecl _wrewinddir (_WDIR*);
119
+ long __cdecl _wtelldir (_WDIR*);
120
+ void __cdecl _wseekdir (_WDIR*, long);
121
+
122
+
123
+ #ifdef __cplusplus
124
+ }
125
+ #endif
126
+
127
+ #endif /* Not RC_INVOKED */
128
+
129
+ #pragma pack(pop)
130
+
131
+ #endif /* Not _DIRENT_H_ */
132
+
133
+
134
+ #endif /* Not __STRICT_ANSI__ */
135
+
@@ -0,0 +1,55 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ #ifndef _INC_DOS
7
+ #define _INC_DOS
8
+
9
+ #include <_mingw.h>
10
+ #include <io.h>
11
+
12
+ #pragma pack(push,_CRT_PACKING)
13
+
14
+ #ifdef __cplusplus
15
+ extern "C" {
16
+ #endif
17
+
18
+ #ifndef _DISKFREE_T_DEFINED
19
+ #define _DISKFREE_T_DEFINED
20
+
21
+ struct _diskfree_t {
22
+ unsigned total_clusters;
23
+ unsigned avail_clusters;
24
+ unsigned sectors_per_cluster;
25
+ unsigned bytes_per_sector;
26
+ };
27
+ #endif
28
+
29
+ #define _A_NORMAL 0x00
30
+ #define _A_RDONLY 0x01
31
+ #define _A_HIDDEN 0x02
32
+ #define _A_SYSTEM 0x04
33
+ #define _A_SUBDIR 0x10
34
+ #define _A_ARCH 0x20
35
+
36
+ #ifndef _GETDISKFREE_DEFINED
37
+ #define _GETDISKFREE_DEFINED
38
+ _CRTIMP unsigned __cdecl _getdiskfree(unsigned _Drive,struct _diskfree_t *_DiskFree);
39
+ #endif
40
+
41
+ #if (defined(_X86_) && !defined(__x86_64))
42
+ void __cdecl _disable(void);
43
+ void __cdecl _enable(void);
44
+ #endif
45
+
46
+ #ifndef NO_OLDNAMES
47
+ #define diskfree_t _diskfree_t
48
+ #endif
49
+
50
+ #ifdef __cplusplus
51
+ }
52
+ #endif
53
+
54
+ #pragma pack(pop)
55
+ #endif
@@ -0,0 +1,75 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ #ifndef _INC_ERRNO
7
+ #define _INC_ERRNO
8
+
9
+ #include <_mingw.h>
10
+
11
+ #ifdef __cplusplus
12
+ extern "C" {
13
+ #endif
14
+
15
+ #ifndef _CRT_ERRNO_DEFINED
16
+ #define _CRT_ERRNO_DEFINED
17
+ _CRTIMP extern int *__cdecl _errno(void);
18
+ #define errno (*_errno())
19
+
20
+ errno_t __cdecl _set_errno(int _Value);
21
+ errno_t __cdecl _get_errno(int *_Value);
22
+ #endif
23
+
24
+ #define EPERM 1
25
+ #define ENOENT 2
26
+ #define ESRCH 3
27
+ #define EINTR 4
28
+ #define EIO 5
29
+ #define ENXIO 6
30
+ #define E2BIG 7
31
+ #define ENOEXEC 8
32
+ #define EBADF 9
33
+ #define ECHILD 10
34
+ #define EAGAIN 11
35
+ #define ENOMEM 12
36
+ #define EACCES 13
37
+ #define EFAULT 14
38
+ #define EBUSY 16
39
+ #define EEXIST 17
40
+ #define EXDEV 18
41
+ #define ENODEV 19
42
+ #define ENOTDIR 20
43
+ #define EISDIR 21
44
+ #define ENFILE 23
45
+ #define EMFILE 24
46
+ #define ENOTTY 25
47
+ #define EFBIG 27
48
+ #define ENOSPC 28
49
+ #define ESPIPE 29
50
+ #define EROFS 30
51
+ #define EMLINK 31
52
+ #define EPIPE 32
53
+ #define EDOM 33
54
+ #define EDEADLK 36
55
+ #define ENAMETOOLONG 38
56
+ #define ENOLCK 39
57
+ #define ENOSYS 40
58
+ #define ENOTEMPTY 41
59
+
60
+ #ifndef RC_INVOKED
61
+ #if !defined(_SECURECRT_ERRCODE_VALUES_DEFINED)
62
+ #define _SECURECRT_ERRCODE_VALUES_DEFINED
63
+ #define EINVAL 22
64
+ #define ERANGE 34
65
+ #define EILSEQ 42
66
+ #define STRUNCATE 80
67
+ #endif
68
+ #endif
69
+
70
+ #define EDEADLOCK EDEADLK
71
+
72
+ #ifdef __cplusplus
73
+ }
74
+ #endif
75
+ #endif
@@ -0,0 +1,123 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ #ifndef _INC_EXCPT
7
+ #define _INC_EXCPT
8
+
9
+ #include <_mingw.h>
10
+
11
+ #pragma pack(push,_CRT_PACKING)
12
+
13
+ #ifdef __cplusplus
14
+ extern "C" {
15
+ #endif
16
+
17
+ struct _EXCEPTION_POINTERS;
18
+
19
+ #ifndef EXCEPTION_DISPOSITION
20
+ #define EXCEPTION_DISPOSITION int
21
+ #endif
22
+ #define ExceptionContinueExecution 0
23
+ #define ExceptionContinueSearch 1
24
+ #define ExceptionNestedException 2
25
+ #define ExceptionCollidedUnwind 3
26
+
27
+ #if (defined(_X86_) && !defined(__x86_64))
28
+ struct _EXCEPTION_RECORD;
29
+ struct _CONTEXT;
30
+
31
+ EXCEPTION_DISPOSITION __cdecl _except_handler(struct _EXCEPTION_RECORD *_ExceptionRecord,void *_EstablisherFrame,struct _CONTEXT *_ContextRecord,void *_DispatcherContext);
32
+ #elif defined(__ia64__)
33
+
34
+ typedef struct _EXCEPTION_POINTERS *Exception_info_ptr;
35
+ struct _EXCEPTION_RECORD;
36
+ struct _CONTEXT;
37
+ struct _DISPATCHER_CONTEXT;
38
+
39
+ _CRTIMP EXCEPTION_DISPOSITION __cdecl __C_specific_handler (struct _EXCEPTION_RECORD *_ExceptionRecord,unsigned __int64 _MemoryStackFp,unsigned __int64 _BackingStoreFp,struct _CONTEXT *_ContextRecord,struct _DISPATCHER_CONTEXT *_DispatcherContext,unsigned __int64 _GlobalPointer);
40
+ #elif defined(__x86_64)
41
+
42
+ struct _EXCEPTION_RECORD;
43
+ struct _CONTEXT;
44
+ #endif
45
+
46
+ #define GetExceptionCode _exception_code
47
+ #define exception_code _exception_code
48
+ #define GetExceptionInformation (struct _EXCEPTION_POINTERS *)_exception_info
49
+ #define exception_info (struct _EXCEPTION_POINTERS *)_exception_info
50
+ #define AbnormalTermination _abnormal_termination
51
+ #define abnormal_termination _abnormal_termination
52
+
53
+ unsigned long __cdecl _exception_code(void);
54
+ void *__cdecl _exception_info(void);
55
+ int __cdecl _abnormal_termination(void);
56
+
57
+ #define EXCEPTION_EXECUTE_HANDLER 1
58
+ #define EXCEPTION_CONTINUE_SEARCH 0
59
+ #define EXCEPTION_CONTINUE_EXECUTION -1
60
+
61
+ /* CRT stuff */
62
+ typedef void (__cdecl * _PHNDLR)(int);
63
+
64
+ struct _XCPT_ACTION {
65
+ unsigned long XcptNum;
66
+ int SigNum;
67
+ _PHNDLR XcptAction;
68
+ };
69
+
70
+ extern struct _XCPT_ACTION _XcptActTab[];
71
+ extern int _XcptActTabCount;
72
+ extern int _XcptActTabSize;
73
+ extern int _First_FPE_Indx;
74
+ extern int _Num_FPE;
75
+
76
+ int __cdecl __CppXcptFilter(unsigned long _ExceptionNum,struct _EXCEPTION_POINTERS * _ExceptionPtr);
77
+ int __cdecl _XcptFilter(unsigned long _ExceptionNum,struct _EXCEPTION_POINTERS * _ExceptionPtr);
78
+
79
+ /*
80
+ * The type of function that is expected as an exception handler to be
81
+ * installed with _try1.
82
+ */
83
+ typedef EXCEPTION_DISPOSITION (*PEXCEPTION_HANDLER)(struct _EXCEPTION_RECORD*, void*, struct _CONTEXT*, void*);
84
+
85
+ #ifndef HAVE_NO_SEH
86
+ /*
87
+ * This is not entirely necessary, but it is the structure installed by
88
+ * the _try1 primitive below.
89
+ */
90
+ typedef struct _EXCEPTION_REGISTRATION {
91
+ struct _EXCEPTION_REGISTRATION *prev;
92
+ EXCEPTION_DISPOSITION (*handler)(struct _EXCEPTION_RECORD*, void*, struct _CONTEXT*, void*);
93
+ } EXCEPTION_REGISTRATION, *PEXCEPTION_REGISTRATION;
94
+
95
+ typedef EXCEPTION_REGISTRATION EXCEPTION_REGISTRATION_RECORD;
96
+ typedef PEXCEPTION_REGISTRATION PEXCEPTION_REGISTRATION_RECORD;
97
+ #endif
98
+
99
+ #if (defined(_X86_) && !defined(__x86_64))
100
+ #define __try1(pHandler) \
101
+ __asm__ ("pushl %0;pushl %%fs:0;movl %%esp,%%fs:0;" : : "g" (pHandler));
102
+
103
+ #define __except1 \
104
+ __asm__ ("movl (%%esp),%%eax;movl %%eax,%%fs:0;addl $8,%%esp;" \
105
+ : : : "%eax");
106
+ #elif defined(__x86_64)
107
+ #define __try1(pHandler) \
108
+ __asm__ ("pushq %0;pushq %%gs:0;movq %%rsp,%%gs:0;" : : "g" (pHandler));
109
+
110
+ #define __except1 \
111
+ __asm__ ("movq (%%rsp),%%rax;movq %%rax,%%gs:0;addq $16,%%rsp;" \
112
+ : : : "%rax");
113
+ #else
114
+ #define __try1(pHandler)
115
+ #define __except1
116
+ #endif
117
+
118
+ #ifdef __cplusplus
119
+ }
120
+ #endif
121
+
122
+ #pragma pack(pop)
123
+ #endif
@@ -0,0 +1,52 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ #include <_mingw.h>
7
+
8
+ #include <io.h>
9
+
10
+ #ifndef _INC_FCNTL
11
+ #define _INC_FCNTL
12
+
13
+ #define _O_RDONLY 0x0000
14
+ #define _O_WRONLY 0x0001
15
+ #define _O_RDWR 0x0002
16
+ #define _O_APPEND 0x0008
17
+ #define _O_CREAT 0x0100
18
+ #define _O_TRUNC 0x0200
19
+ #define _O_EXCL 0x0400
20
+ #define _O_TEXT 0x4000
21
+ #define _O_BINARY 0x8000
22
+ #define _O_WTEXT 0x10000
23
+ #define _O_U16TEXT 0x20000
24
+ #define _O_U8TEXT 0x40000
25
+ #define _O_ACCMODE (_O_RDONLY|_O_WRONLY|_O_RDWR)
26
+
27
+ #define _O_RAW _O_BINARY
28
+ #define _O_NOINHERIT 0x0080
29
+ #define _O_TEMPORARY 0x0040
30
+ #define _O_SHORT_LIVED 0x1000
31
+
32
+ #define _O_SEQUENTIAL 0x0020
33
+ #define _O_RANDOM 0x0010
34
+
35
+ #if !defined(NO_OLDNAMES) || defined(_POSIX)
36
+ #define O_RDONLY _O_RDONLY
37
+ #define O_WRONLY _O_WRONLY
38
+ #define O_RDWR _O_RDWR
39
+ #define O_APPEND _O_APPEND
40
+ #define O_CREAT _O_CREAT
41
+ #define O_TRUNC _O_TRUNC
42
+ #define O_EXCL _O_EXCL
43
+ #define O_TEXT _O_TEXT
44
+ #define O_BINARY _O_BINARY
45
+ #define O_RAW _O_BINARY
46
+ #define O_TEMPORARY _O_TEMPORARY
47
+ #define O_NOINHERIT _O_NOINHERIT
48
+ #define O_SEQUENTIAL _O_SEQUENTIAL
49
+ #define O_RANDOM _O_RANDOM
50
+ #define O_ACCMODE _O_ACCMODE
51
+ #endif
52
+ #endif
@@ -0,0 +1,108 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ #ifndef _FENV_H_
7
+ #define _FENV_H_
8
+
9
+ #include <_mingw.h>
10
+
11
+ /* FPU status word exception flags */
12
+ #define FE_INVALID 0x01
13
+ #define FE_DENORMAL 0x02
14
+ #define FE_DIVBYZERO 0x04
15
+ #define FE_OVERFLOW 0x08
16
+ #define FE_UNDERFLOW 0x10
17
+ #define FE_INEXACT 0x20
18
+ #define FE_ALL_EXCEPT (FE_INVALID | FE_DENORMAL | FE_DIVBYZERO \
19
+ | FE_OVERFLOW | FE_UNDERFLOW | FE_INEXACT)
20
+
21
+ /* FPU control word rounding flags */
22
+ #define FE_TONEAREST 0x0000
23
+ #define FE_DOWNWARD 0x0400
24
+ #define FE_UPWARD 0x0800
25
+ #define FE_TOWARDZERO 0x0c00
26
+
27
+ /* The MXCSR exception flags are the same as the
28
+ FE flags. */
29
+ #define __MXCSR_EXCEPT_FLAG_SHIFT 0
30
+
31
+ /* How much to shift FE status word exception flags
32
+ to get MXCSR rounding flags, */
33
+ #define __MXCSR_ROUND_FLAG_SHIFT 3
34
+
35
+ #ifndef RC_INVOKED
36
+ /*
37
+ For now, support only for the basic abstraction of flags that are
38
+ either set or clear. fexcept_t could be structure that holds more
39
+ info about the fp environment.
40
+ */
41
+ typedef unsigned short fexcept_t;
42
+
43
+ /* This 32-byte struct represents the entire floating point
44
+ environment as stored by fnstenv or fstenv, augmented by
45
+ the contents of the MXCSR register, as stored by stmxcsr
46
+ (if CPU supports it). */
47
+ typedef struct
48
+ {
49
+ unsigned short __control_word;
50
+ unsigned short __unused0;
51
+ unsigned short __status_word;
52
+ unsigned short __unused1;
53
+ unsigned short __tag_word;
54
+ unsigned short __unused2;
55
+ unsigned int __ip_offset; /* instruction pointer offset */
56
+ unsigned short __ip_selector;
57
+ unsigned short __opcode;
58
+ unsigned int __data_offset;
59
+ unsigned short __data_selector;
60
+ unsigned short __unused3;
61
+ unsigned int __mxcsr; /* contents of the MXCSR register */
62
+ } fenv_t;
63
+
64
+
65
+ /*The C99 standard (7.6.9) allows us to define implementation-specific macros for
66
+ different fp environments */
67
+
68
+ /* The default Intel x87 floating point environment (64-bit mantissa) */
69
+ #define FE_PC64_ENV ((const fenv_t *)-1)
70
+
71
+ /* The floating point environment set by MSVCRT _fpreset (53-bit mantissa) */
72
+ #define FE_PC53_ENV ((const fenv_t *)-2)
73
+
74
+ /* The FE_DFL_ENV macro is required by standard.
75
+ fesetenv will use the environment set at app startup.*/
76
+ #define FE_DFL_ENV ((const fenv_t *) 0)
77
+
78
+ #ifdef __cplusplus
79
+ extern "C" {
80
+ #endif
81
+
82
+ /*TODO: Some of these could be inlined */
83
+ /* 7.6.2 Exception */
84
+
85
+ extern int __cdecl feclearexcept (int);
86
+ extern int __cdecl fegetexceptflag (fexcept_t * flagp, int excepts);
87
+ extern int __cdecl feraiseexcept (int excepts );
88
+ extern int __cdecl fesetexceptflag (const fexcept_t *, int);
89
+ extern int __cdecl fetestexcept (int excepts);
90
+
91
+ /* 7.6.3 Rounding */
92
+
93
+ extern int __cdecl fegetround (void);
94
+ extern int __cdecl fesetround (int mode);
95
+
96
+ /* 7.6.4 Environment */
97
+
98
+ extern int __cdecl fegetenv(fenv_t * envp);
99
+ extern int __cdecl fesetenv(const fenv_t * );
100
+ extern int __cdecl feupdateenv(const fenv_t *);
101
+ extern int __cdecl feholdexcept(fenv_t *);
102
+
103
+ #ifdef __cplusplus
104
+ }
105
+ #endif
106
+ #endif /* Not RC_INVOKED */
107
+
108
+ #endif /* ndef _FENV_H */
@@ -0,0 +1,57 @@
1
+ #ifndef _FLOAT_H_
2
+ #define _FLOAT_H_
3
+
4
+ #define FLT_RADIX 2
5
+
6
+ /* IEEE float */
7
+ #define FLT_MANT_DIG 24
8
+ #define FLT_DIG 6
9
+ #define FLT_ROUNDS 1
10
+ #define FLT_EPSILON 1.19209290e-07F
11
+ #define FLT_MIN_EXP (-125)
12
+ #define FLT_MIN 1.17549435e-38F
13
+ #define FLT_MIN_10_EXP (-37)
14
+ #define FLT_MAX_EXP 128
15
+ #define FLT_MAX 3.40282347e+38F
16
+ #define FLT_MAX_10_EXP 38
17
+
18
+ /* IEEE double */
19
+ #define DBL_MANT_DIG 53
20
+ #define DBL_DIG 15
21
+ #define DBL_EPSILON 2.2204460492503131e-16
22
+ #define DBL_MIN_EXP (-1021)
23
+ #define DBL_MIN 2.2250738585072014e-308
24
+ #define DBL_MIN_10_EXP (-307)
25
+ #define DBL_MAX_EXP 1024
26
+ #define DBL_MAX 1.7976931348623157e+308
27
+ #define DBL_MAX_10_EXP 308
28
+
29
+ /* horrible intel long double */
30
+ #if defined __i386__ || defined __x86_64__
31
+
32
+ #define LDBL_MANT_DIG 64
33
+ #define LDBL_DIG 18
34
+ #define LDBL_EPSILON 1.08420217248550443401e-19L
35
+ #define LDBL_MIN_EXP (-16381)
36
+ #define LDBL_MIN 3.36210314311209350626e-4932L
37
+ #define LDBL_MIN_10_EXP (-4931)
38
+ #define LDBL_MAX_EXP 16384
39
+ #define LDBL_MAX 1.18973149535723176502e+4932L
40
+ #define LDBL_MAX_10_EXP 4932
41
+
42
+ #else
43
+
44
+ /* same as IEEE double */
45
+ #define LDBL_MANT_DIG 53
46
+ #define LDBL_DIG 15
47
+ #define LDBL_EPSILON 2.2204460492503131e-16
48
+ #define LDBL_MIN_EXP (-1021)
49
+ #define LDBL_MIN 2.2250738585072014e-308
50
+ #define LDBL_MIN_10_EXP (-307)
51
+ #define LDBL_MAX_EXP 1024
52
+ #define LDBL_MAX 1.7976931348623157e+308
53
+ #define LDBL_MAX_10_EXP 308
54
+
55
+ #endif
56
+
57
+ #endif /* _FLOAT_H_ */