From b4213c9c920afb8da5d3d123b26527e26dceb877 Mon Sep 17 00:00:00 2001 From: Yoctopuce Date: Wed, 26 Jun 2024 10:10:32 +0200 Subject: [PATCH] tools/mpy-tool.py: Implement freezing of long-long ints. Allow inclusion of large integer constants in frozen files using long-long representation (mpy-cross option -mlongint-impl=longlong). Signed-off-by: Yoctopuce --- tools/mpy-tool.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/mpy-tool.py b/tools/mpy-tool.py index 3b06572c3..5007bbbac 100755 --- a/tools/mpy-tool.py +++ b/tools/mpy-tool.py @@ -735,8 +735,8 @@ class CompiledModule: elif config.MICROPY_LONGINT_IMPL == config.MICROPY_LONGINT_IMPL_NONE: raise FreezeError(self, "target does not support long int") elif config.MICROPY_LONGINT_IMPL == config.MICROPY_LONGINT_IMPL_LONGLONG: - # TODO - raise FreezeError(self, "freezing int to long-long is not implemented") + print("static const mp_obj_int_t %s = {{&mp_type_int}, %d};" % (obj_name, obj)) + return "MP_ROM_PTR(&%s)" % obj_name elif config.MICROPY_LONGINT_IMPL == config.MICROPY_LONGINT_IMPL_MPZ: neg = 0 if obj < 0: