2015-02-16 13:17:07 -05:00
|
|
|
# test bl and bx instructions
|
|
|
|
|
2020-03-22 22:26:08 -04:00
|
|
|
|
2015-02-16 13:17:07 -05:00
|
|
|
@micropython.asm_thumb
|
|
|
|
def f(r0):
|
|
|
|
# jump over the internal functions
|
|
|
|
b(entry)
|
|
|
|
|
|
|
|
label(func1)
|
|
|
|
add(r0, 2)
|
|
|
|
bx(lr)
|
|
|
|
|
|
|
|
label(func2)
|
|
|
|
sub(r0, 1)
|
|
|
|
bx(lr)
|
|
|
|
|
|
|
|
label(entry)
|
|
|
|
bl(func1)
|
|
|
|
bl(func2)
|
|
|
|
|
2020-03-22 22:26:08 -04:00
|
|
|
|
2015-02-16 13:17:07 -05:00
|
|
|
print(f(0))
|
|
|
|
print(f(1))
|