asmargs.py 483 B

1234567891011121314151617181920212223242526272829
  1. # test passing arguments
  2. @micropython.asm_thumb
  3. def arg0():
  4. mov(r0, 1)
  5. print(arg0())
  6. @micropython.asm_thumb
  7. def arg1(r0):
  8. add(r0, r0, 1)
  9. print(arg1(1))
  10. @micropython.asm_thumb
  11. def arg2(r0, r1):
  12. add(r0, r0, r1)
  13. print(arg2(1, 2))
  14. @micropython.asm_thumb
  15. def arg3(r0, r1, r2):
  16. add(r0, r0, r1)
  17. add(r0, r0, r2)
  18. print(arg3(1, 2, 3))
  19. @micropython.asm_thumb
  20. def arg4(r0, r1, r2, r3):
  21. add(r0, r0, r1)
  22. add(r0, r0, r2)
  23. add(r0, r0, r3)
  24. print(arg4(1, 2, 3, 4))