diff options
Diffstat (limited to 'tests/micropython')
| -rw-r--r-- | tests/micropython/viper_ptr16_load.py | 18 | ||||
| -rw-r--r-- | tests/micropython/viper_ptr16_load.py.exp | 3 | ||||
| -rw-r--r-- | tests/micropython/viper_ptr8_load.py | 27 | ||||
| -rw-r--r-- | tests/micropython/viper_ptr8_load.py.exp | 4 |
4 files changed, 52 insertions, 0 deletions
diff --git a/tests/micropython/viper_ptr16_load.py b/tests/micropython/viper_ptr16_load.py new file mode 100644 index 000000000..06ce7db15 --- /dev/null +++ b/tests/micropython/viper_ptr16_load.py @@ -0,0 +1,18 @@ +# test loading from ptr16 type +# only works on little endian machines + +@micropython.viper +def get(src:ptr16) -> int: + return src[0] + +@micropython.viper +def memadd(src:ptr16, n:int) -> int: + sum = 0 + for i in range(n): + sum += src[i] + return sum + +b = bytearray(b'1234') +print(b) +print(get(b)) +print(memadd(b, 2)) diff --git a/tests/micropython/viper_ptr16_load.py.exp b/tests/micropython/viper_ptr16_load.py.exp new file mode 100644 index 000000000..68fd9e80c --- /dev/null +++ b/tests/micropython/viper_ptr16_load.py.exp @@ -0,0 +1,3 @@ +bytearray(b'1234') +12849 +26212 diff --git a/tests/micropython/viper_ptr8_load.py b/tests/micropython/viper_ptr8_load.py new file mode 100644 index 000000000..98c163f8e --- /dev/null +++ b/tests/micropython/viper_ptr8_load.py @@ -0,0 +1,27 @@ +# test loading from ptr8 type + +@micropython.viper +def get(src:ptr8) -> int: + return src[0] + +@micropython.viper +def memadd(src:ptr8, n:int) -> int: + sum = 0 + for i in range(n): + sum += src[i] + return sum + +@micropython.viper +def memadd2(src_in) -> int: + src = ptr8(src_in) + n = int(len(src_in)) + sum = 0 + for i in range(n): + sum += src[i] + return sum + +b = bytearray(b'1234') +print(b) +print(get(b)) +print(memadd(b, 4)) +print(memadd2(b)) diff --git a/tests/micropython/viper_ptr8_load.py.exp b/tests/micropython/viper_ptr8_load.py.exp new file mode 100644 index 000000000..aeab88da1 --- /dev/null +++ b/tests/micropython/viper_ptr8_load.py.exp @@ -0,0 +1,4 @@ +bytearray(b'1234') +49 +202 +202 |
