From 664f03f4664807ca6e441b0af1b280cf42d96714 Mon Sep 17 00:00:00 2001 From: Damien George Date: Wed, 16 Mar 2016 08:24:07 +0000 Subject: [PATCH] tests: Add a test for argument passing to inline-asm functions. --- tests/inlineasm/asmargs.py | 29 +++++++++++++++++++++++++++++ tests/inlineasm/asmargs.py.exp | 5 +++++ 2 files changed, 34 insertions(+) create mode 100644 tests/inlineasm/asmargs.py create mode 100644 tests/inlineasm/asmargs.py.exp diff --git a/tests/inlineasm/asmargs.py b/tests/inlineasm/asmargs.py new file mode 100644 index 0000000000..047d9ed420 --- /dev/null +++ b/tests/inlineasm/asmargs.py @@ -0,0 +1,29 @@ +# test passing arguments + +@micropython.asm_thumb +def arg0(): + mov(r0, 1) +print(arg0()) + +@micropython.asm_thumb +def arg1(r0): + add(r0, r0, 1) +print(arg1(1)) + +@micropython.asm_thumb +def arg2(r0, r1): + add(r0, r0, r1) +print(arg2(1, 2)) + +@micropython.asm_thumb +def arg3(r0, r1, r2): + add(r0, r0, r1) + add(r0, r0, r2) +print(arg3(1, 2, 3)) + +@micropython.asm_thumb +def arg4(r0, r1, r2, r3): + add(r0, r0, r1) + add(r0, r0, r2) + add(r0, r0, r3) +print(arg4(1, 2, 3, 4)) diff --git a/tests/inlineasm/asmargs.py.exp b/tests/inlineasm/asmargs.py.exp new file mode 100644 index 0000000000..e33a6964f4 --- /dev/null +++ b/tests/inlineasm/asmargs.py.exp @@ -0,0 +1,5 @@ +1 +2 +3 +6 +10