summaryrefslogtreecommitdiffstatshomepage
path: root/py/runtime.c
diff options
context:
space:
mode:
authorAlessandro Gatti <a.gatti@frob.it>2025-04-19 22:36:13 +0200
committerAlessandro Gatti <a.gatti@frob.it>2025-05-21 02:01:22 +0200
commit6b2792a097a841bf1c0a27e4fcffcaacc4968285 (patch)
tree3a2a406c151a0fd29512a52c7224e5ab9a47992f /py/runtime.c
parent2260fe0828a87b511ad69c0314ecdcb36b66a2cf (diff)
downloadmicropython-6b2792a097a841bf1c0a27e4fcffcaacc4968285.tar.gz
micropython-6b2792a097a841bf1c0a27e4fcffcaacc4968285.zip
py/asmthumb: Generate proper sequences for large register offsets.
This commit lets the Thumb native emitter generate a proper opcode sequence when calculating an indexed register offset for load/store operations with said offset beight both greater than 65535 and not able to be represented as a shifted 8-bit bitmask. The original code would assume the scaled index would always fit in 16 bits and silently discard upper bits of the offset. Now an optimised constant loading sequence is emitted instead, and the final offset is also stored in the correct register in all cases. Signed-off-by: Alessandro Gatti <a.gatti@frob.it>
Diffstat (limited to 'py/runtime.c')
0 files changed, 0 insertions, 0 deletions