and make sure multi_(en|de)code always uses functions with pointer arguments. This is to avoid problems with register alignment or other issues in the calling conventions of pointer arguments vs. other arguments. E.g. on cortex-m a uint64 as the 2nd argument will be aligned to registers R2 and R3 instead of R1, while a uint32 or a pointer will use R1.
Add test that fails on the previous implementation and is fixed by this change.
and make sure multi_(en|de)code always uses functions with pointer arguments. This is to avoid problems with register alignment or other issues in the calling conventions of pointer arguments vs. other arguments. E.g. on cortex-m a uint64 as the 2nd argument will be aligned to registers R2 and R3 instead of R1, while a uint32 or a pointer will use R1.
Add test that fails on the previous implementation and is fixed by this change.