Skip to content
Snippets Groups Projects
Commit e97df976 authored by Damien George's avatar Damien George
Browse files

py: Shrink mp_arg_t struct by using reduced-size integer members.

qstrs ids are restricted to fit within 2 bytes already (eg in persistent
bytecode) so it's safe to use a uint16_t to store them in mp_arg_t.  And
the flags member only needs a maximum of 2 bytes so can also use uint16_t.

Savings in code size can be significant when many mp_arg_t structs are
used for argument parsing.  Eg, this patch reduces stmhal by 480 bytes.
parent 46ab0422
No related branches found
No related tags found
No related merge requests found
......@@ -52,8 +52,8 @@ typedef union _mp_arg_val_t {
} mp_arg_val_t;
typedef struct _mp_arg_t {
qstr qst;
mp_uint_t flags;
uint16_t qst;
uint16_t flags;
mp_arg_val_t defval;
} mp_arg_t;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment