File tree 2 files changed +82
-1
lines changed
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
311
311
EXTRAFILES const_03b.c)
312
312
RUN(NAME const_04 LABELS cpython llvm c)
313
313
RUN(NAME expr_01 LABELS cpython llvm c wasm wasm_x64)
314
- RUN(NAME expr_01u LABELS cpython llvm c)
315
314
RUN(NAME expr_02 LABELS cpython llvm c wasm wasm_x64)
316
315
RUN(NAME expr_03 LABELS cpython llvm c wasm wasm_x64)
317
316
RUN(NAME expr_04 LABELS cpython llvm c wasm)
@@ -327,6 +326,10 @@ RUN(NAME expr_13 LABELS llvm c
327
326
EXTRAFILES expr_13b.c)
328
327
RUN(NAME expr_14 LABELS cpython llvm c)
329
328
RUN(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
+
330
333
RUN(NAME loop_01 LABELS cpython llvm c)
331
334
RUN(NAME loop_02 LABELS cpython llvm c wasm wasm_x86 wasm_x64)
332
335
RUN(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