summaryrefslogtreecommitdiffstatshomepage
path: root/docs/esp32/tutorial/intro.rst
diff options
context:
space:
mode:
authorAlessandro Gatti <a.gatti@frob.it>2025-06-08 22:58:33 +0200
committerDamien George <damien@micropython.org>2025-06-10 12:28:29 +1000
commit43f6013294ff1c59fb956b47be5686bab5a389a6 (patch)
tree6f364755b006f2a588c1406cf49fda9d72eb95aa /docs/esp32/tutorial/intro.rst
parent80b823bca15d846de940d08a6e8144290514f8a2 (diff)
downloadmicropython-43f6013294ff1c59fb956b47be5686bab5a389a6.tar.gz
micropython-43f6013294ff1c59fb956b47be5686bab5a389a6.zip
py/asmxtensa: Extend BCC range to 18 bits.
This commit lets the native emitter backend extends the range of the BCC family of opcodes (BALL, BANY, BBC, BBS, BEQ, BGE, BGEU, BLT, BLTU, BNALL, BNE, BNONE) from 8 bits to 18 bits. The test suite contains some test files that, when compiled into native code, would require BCC jumps outside the (signed) 8 bits range. In this case either the MicroPython interpreter or mpy-cross would raise an exception, not running the test when using the "--via-mpy --emit native" command line options with the test runner. This comes with a 3 bytes penalty on each forward jump, bringing the footprint of those jumps to 6 bytes each, as a longer opcode sequence has to be emitted to let jumps access a larger range. However, this is slightly offset by the fact that backward jumps can be emitted with a single opcode if the range is small enough (8-bits offset). Signed-off-by: Alessandro Gatti <a.gatti@frob.it>
Diffstat (limited to 'docs/esp32/tutorial/intro.rst')
0 files changed, 0 insertions, 0 deletions