micropython/tests/inlineasm/asmdata.py

17 wiersze
309 B
Python

# test the "data" directive
@micropython.asm_thumb
def ret_num(r0) -> uint:
lsl(r0, r0, 2)
mov(r1, pc)
add(r0, r0, r1)
ldr(r0, [r0, 4])
b(HERE)
data(4, 0x12345678, 0x20000000, 0x40000000, 0x7FFFFFFF + 1, (1 << 32) - 2)
label(HERE)
for i in range(5):
print(hex(ret_num(i)))