* [2SF] Used more up-to-date asmjit, despite the ugly looking code.
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,49 @@ |
| 1 |
+// [AsmJit] |
|
| 2 |
+// Complete x86/x64 JIT and Remote Assembler for C++. |
|
| 3 |
+// |
|
| 4 |
+// [License] |
|
| 5 |
+// Zlib - See LICENSE.md file in the package. |
|
| 6 |
+ |
|
| 7 |
+#ifndef _ASMJIT_BUILD_H |
|
| 8 |
+# include "build.h" |
|
| 9 |
+#endif // !_ASMJIT_BUILD_H |
|
| 10 |
+ |
|
| 11 |
+// ============================================================================ |
|
| 12 |
+// [MSVC] |
|
| 13 |
+// ============================================================================ |
|
| 14 |
+ |
|
| 15 |
+#ifdef _MSC_VER |
|
| 16 |
+// Disable some warnings we know about |
|
| 17 |
+# pragma warning(push) |
|
| 18 |
+# pragma warning(disable: 4127) // conditional expression is constant |
|
| 19 |
+# pragma warning(disable: 4201) // nameless struct/union |
|
| 20 |
+# pragma warning(disable: 4244) // '+=' : conversion from 'int' to 'x', possible |
|
| 21 |
+ // loss of data |
|
| 22 |
+# pragma warning(disable: 4251) // struct needs to have dll-interface to be used |
|
| 23 |
+ // by clients of struct ... |
|
| 24 |
+# pragma warning(disable: 4275) // non dll-interface struct ... used as base for |
|
| 25 |
+ // dll-interface struct |
|
| 26 |
+# pragma warning(disable: 4355) // this used in base member initializer list |
|
| 27 |
+# pragma warning(disable: 4480) // specifying underlying type for enum |
|
| 28 |
+# pragma warning(disable: 4800) // forcing value to bool 'true' or 'false' |
|
| 29 |
+ |
|
| 30 |
+// Rename symbols. |
|
| 31 |
+# ifndef vsnprintf |
|
| 32 |
+# define ASMJIT_DEFINED_VSNPRINTF |
|
| 33 |
+# define vsnprintf _vsnprintf |
|
| 34 |
+# endif // !vsnprintf |
|
| 35 |
+# ifndef snprintf |
|
| 36 |
+# define ASMJIT_DEFINED_SNPRINTF |
|
| 37 |
+# define snprintf _snprintf |
|
| 38 |
+# endif // !snprintf |
|
| 39 |
+#endif // _MSC_VER |
|
| 40 |
+ |
|
| 41 |
+// ============================================================================ |
|
| 42 |
+// [GNUC] |
|
| 43 |
+// ============================================================================ |
|
| 44 |
+ |
|
| 45 |
+#if defined(__GNUC__) && !defined(__clang__) |
|
| 46 |
+# if __GNUC__ >= 4 && !defined(__MINGW32__) |
|
| 47 |
+# pragma GCC visibility push(hidden) |
|
| 48 |
+# endif // __GNUC__ >= 4 |
|
| 49 |
+#endif // __GNUC__ |