py: Add support for 64-bit NaN-boxing object model, on 32-bit machine.
To use, put the following in mpconfigport.h:
#define MICROPY_OBJ_REPR (MICROPY_OBJ_REPR_D)
#define MICROPY_FLOAT_IMPL (MICROPY_FLOAT_IMPL_DOUBLE)
typedef int64_t mp_int_t;
typedef uint64_t mp_uint_t;
#define UINT_FMT "%llu"
#define INT_FMT "%lld"
Currently does not work with native emitter enabled.
This commit is contained in:
@@ -39,7 +39,7 @@
|
||||
#include <math.h>
|
||||
#include "py/formatfloat.h"
|
||||
|
||||
#if MICROPY_OBJ_REPR != MICROPY_OBJ_REPR_C
|
||||
#if MICROPY_OBJ_REPR != MICROPY_OBJ_REPR_C && MICROPY_OBJ_REPR != MICROPY_OBJ_REPR_D
|
||||
|
||||
typedef struct _mp_obj_float_t {
|
||||
mp_obj_base_t base;
|
||||
@@ -125,7 +125,7 @@ const mp_obj_type_t mp_type_float = {
|
||||
.binary_op = float_binary_op,
|
||||
};
|
||||
|
||||
#if MICROPY_OBJ_REPR != MICROPY_OBJ_REPR_C
|
||||
#if MICROPY_OBJ_REPR != MICROPY_OBJ_REPR_C && MICROPY_OBJ_REPR != MICROPY_OBJ_REPR_D
|
||||
|
||||
mp_obj_t mp_obj_new_float(mp_float_t value) {
|
||||
mp_obj_float_t *o = m_new(mp_obj_float_t, 1);
|
||||
|
||||
Reference in New Issue
Block a user