Damien | c025ebb | 2013-10-12 14:30:21 +0100 | [diff] [blame] | 1 | // options to control how Micro Python is built |
| 2 | |
Paul Sokolovsky | d674bd5 | 2014-01-04 19:38:19 +0200 | [diff] [blame] | 3 | // Linking with GNU readline causes binary to be licensed under GPL |
| 4 | #ifndef MICROPY_USE_READLINE |
| 5 | #define MICROPY_USE_READLINE (1) |
| 6 | #endif |
| 7 | |
Damien | d2755ec | 2013-10-16 23:58:48 +0100 | [diff] [blame] | 8 | #define MICROPY_EMIT_X64 (1) |
Damien | 3ef4abb | 2013-10-12 16:53:13 +0100 | [diff] [blame] | 9 | #define MICROPY_EMIT_THUMB (0) |
| 10 | #define MICROPY_EMIT_INLINE_THUMB (0) |
Damien George | 136f675 | 2014-01-07 14:54:15 +0000 | [diff] [blame] | 11 | #define MICROPY_MEM_STATS (1) |
Damien George | cbd2f74 | 2014-01-19 11:48:48 +0000 | [diff] [blame^] | 12 | #define MICROPY_DEBUG_PRINTERS (1) |
Damien George | 136f675 | 2014-01-07 14:54:15 +0000 | [diff] [blame] | 13 | #define MICROPY_ENABLE_REPL_HELPERS (1) |
Damien George | d3ebe48 | 2014-01-07 15:20:33 +0000 | [diff] [blame] | 14 | #define MICROPY_ENABLE_LEXER_UNIX (1) |
Damien George | 136f675 | 2014-01-07 14:54:15 +0000 | [diff] [blame] | 15 | #define MICROPY_ENABLE_FLOAT (1) |
Paul Sokolovsky | 966879c | 2014-01-17 20:01:36 +0200 | [diff] [blame] | 16 | #define MICROPY_LONGINT_IMPL (MICROPY_LONGINT_IMPL_LONGLONG) |
Damien | c025ebb | 2013-10-12 14:30:21 +0100 | [diff] [blame] | 17 | |
| 18 | // type definitions for the specific machine |
| 19 | |
Paul Sokolovsky | e85c389 | 2013-12-30 03:38:32 +0200 | [diff] [blame] | 20 | #ifdef __LP64__ |
| 21 | typedef long machine_int_t; // must be pointer size |
| 22 | typedef unsigned long machine_uint_t; // must be pointer size |
Paul Sokolovsky | e85c389 | 2013-12-30 03:38:32 +0200 | [diff] [blame] | 23 | #else |
| 24 | // These are definitions for machines where sizeof(int) == sizeof(void*), |
| 25 | // regardless for actual size. |
| 26 | typedef int machine_int_t; // must be pointer size |
| 27 | typedef unsigned int machine_uint_t; // must be pointer size |
Paul Sokolovsky | e85c389 | 2013-12-30 03:38:32 +0200 | [diff] [blame] | 28 | #endif |
Damien | d276f63 | 2013-10-22 16:05:47 +0100 | [diff] [blame] | 29 | |
Paul Sokolovsky | e85c389 | 2013-12-30 03:38:32 +0200 | [diff] [blame] | 30 | #define BYTES_PER_WORD sizeof(machine_int_t) |
| 31 | |
Damien | c025ebb | 2013-10-12 14:30:21 +0100 | [diff] [blame] | 32 | typedef void *machine_ptr_t; // must be of pointer size |
Damien | d99b052 | 2013-12-21 18:17:45 +0000 | [diff] [blame] | 33 | typedef const void *machine_const_ptr_t; // must be of pointer size |
Damien | c025ebb | 2013-10-12 14:30:21 +0100 | [diff] [blame] | 34 | typedef double machine_float_t; |
Damien | 087d218 | 2013-11-09 20:14:30 +0000 | [diff] [blame] | 35 | |
| 36 | machine_float_t machine_sqrt(machine_float_t x); |