File tree Expand file tree Collapse file tree 2 files changed +82
-1
lines changed
Expand file tree Collapse file tree 2 files changed +82
-1
lines changed Original file line number Diff line number Diff line change @@ -311,7 +311,6 @@ RUN(NAME const_03 LABELS cpython llvm c
311311 EXTRAFILES const_03b.c)
312312RUN(NAME const_04 LABELS cpython llvm c)
313313RUN(NAME expr_01 LABELS cpython llvm c wasm wasm_x64)
314- RUN(NAME expr_01u LABELS cpython llvm c)
315314RUN(NAME expr_02 LABELS cpython llvm c wasm wasm_x64)
316315RUN(NAME expr_03 LABELS cpython llvm c wasm wasm_x64)
317316RUN(NAME expr_04 LABELS cpython llvm c wasm)
@@ -327,6 +326,10 @@ RUN(NAME expr_13 LABELS llvm c
327326 EXTRAFILES expr_13b.c)
328327RUN(NAME expr_14 LABELS cpython llvm c)
329328RUN(NAME expr_15 LABELS cpython llvm c)
329+
330+ RUN(NAME expr_01u LABELS cpython llvm c)
331+ RUN(NAME expr_02u LABELS cpython llvm c)
332+
330333RUN(NAME loop_01 LABELS cpython llvm c)
331334RUN(NAME loop_02 LABELS cpython llvm c wasm wasm_x86 wasm_x64)
332335RUN(NAME loop_03 LABELS cpython llvm c wasm wasm_x64)
Original file line number Diff line number Diff line change 1+ from lpython import u8 , u16 , u32 , u64
2+
3+ def add_u8 (x : u8 , y : u8 ) -> u8 :
4+ return x + y
5+
6+ def add_u16 (x : u16 , y : u16 ) -> u16 :
7+ return x + y
8+
9+ def add_u32 (x : u32 , y : u32 ) -> u32 :
10+ return x + y
11+
12+ def add_u64 (x : u64 , y : u64 ) -> u64 :
13+ return x + y
14+
15+ def and_u8 (x : u8 , y : u8 ) -> u8 :
16+ return x & y
17+
18+ def and_u16 (x : u16 , y : u16 ) -> u16 :
19+ return x & y
20+
21+ def and_u32 (x : u32 , y : u32 ) -> u32 :
22+ return x & y
23+
24+ def and_u64 (x : u64 , y : u64 ) -> u64 :
25+ return x & y
26+
27+ def main_u8 ():
28+ x : u8
29+ y : u8
30+ z : u8
31+ x = (u8 (2 )+ u8 (3 ))* u8 (5 )
32+ y = add_u8 (x , u8 (2 ))* u8 (2 )
33+ z = and_u8 (x , y )
34+ assert x == u8 (25 )
35+ assert y == u8 (54 )
36+ assert z == u8 (16 )
37+
38+ def main_u16 ():
39+ x : u16
40+ y : u16
41+ z : u16
42+ x = (u16 (2 )+ u16 (3 ))* u16 (5 )
43+ y = add_u16 (x , u16 (2 ))* u16 (2 )
44+ z = and_u16 (x , y )
45+ assert x == u16 (25 )
46+ assert y == u16 (54 )
47+ assert z == u16 (16 )
48+
49+ def main_u32 ():
50+ x : u32
51+ y : u32
52+ z : u32
53+ x = (u32 (2 )+ u32 (3 ))* u32 (5 )
54+ y = add_u32 (x , u32 (2 ))* u32 (2 )
55+ z = and_u32 (x , y )
56+ assert x == u32 (25 )
57+ assert y == u32 (54 )
58+ assert z == u32 (16 )
59+
60+ def main_u64 ():
61+ x : u64
62+ y : u64
63+ z : u64
64+ x = (u64 (2 )+ u64 (3 ))* u64 (5 )
65+ y = add_u64 (x , u64 (2 ))* u64 (2 )
66+ z = and_u64 (x , y )
67+ assert x == u64 (25 )
68+ assert y == u64 (54 )
69+ assert z == u64 (16 )
70+
71+ main_u8 ()
72+ main_u16 ()
73+ main_u32 ()
74+ main_u64 ()
75+
76+ # Not implemented yet in LPython:
77+ #if __name__ == "__main__":
78+ # main()
You can’t perform that action at this time.
0 commit comments