Skip to content

Commit 90e75a5

Browse files
committed
update it
1 parent 0604390 commit 90e75a5

File tree

6 files changed

+164
-179
lines changed

6 files changed

+164
-179
lines changed

mypyc/test-data/irbuild-basic.test

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1950,7 +1950,6 @@ def f():
19501950
r16 :: i32
19511951
r17 :: bit
19521952
r18 :: native_int
1953-
r19 :: dict
19541953
L0:
19551954
r0 = PyDict_New()
19561955
r1 = PyList_New(3)
@@ -1991,8 +1990,7 @@ L7:
19911990
r6 = r18
19921991
goto L1
19931992
L8:
1994-
r19 = cast(dict, r0)
1995-
return r19
1993+
return r0
19961994

19971995
[case testLoopsMultipleAssign]
19981996
from typing import List, Tuple

mypyc/test-data/irbuild-dict.test

Lines changed: 66 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,10 @@ def f() -> None:
3737
[out]
3838
def f():
3939
r0 :: dict[exact]
40-
r1, d :: dict
40+
d :: dict
4141
L0:
4242
r0 = PyDict_New()
43-
r1 = cast(dict, r0)
44-
d = r1
43+
d = r0
4544
return 1
4645

4746
[case testNewEmptyDictViaFunc]
@@ -52,11 +51,10 @@ def f() -> None:
5251
[out]
5352
def f():
5453
r0 :: dict[exact]
55-
r1, d :: dict
54+
d :: dict
5655
L0:
5756
r0 = PyDict_New()
58-
r1 = cast(dict, r0)
59-
d = r1
57+
d = r0
6058
return 1
6159

6260
[case testNewDictWithValues]
@@ -68,14 +66,13 @@ def f(x):
6866
r0 :: str
6967
r1, r2 :: object
7068
r3 :: dict[exact]
71-
r4, d :: dict
69+
d :: dict
7270
L0:
7371
r0 = ''
7472
r1 = object 1
7573
r2 = object 2
7674
r3 = CPyDict_Build(2, r1, r2, r0, x)
77-
r4 = cast(dict, r3)
78-
d = r4
75+
d = r3
7976
return 1
8077

8178
[case testInDict]
@@ -205,25 +202,21 @@ def f(x, y):
205202
r0 :: str
206203
r1 :: object
207204
r2 :: dict[exact]
208-
r3 :: dict
209-
r4 :: i32
210-
r5 :: bit
211-
r6 :: object
212-
r7 :: i32
213-
r8 :: bit
214-
r9 :: dict
205+
r3 :: i32
206+
r4 :: bit
207+
r5 :: object
208+
r6 :: i32
209+
r7 :: bit
215210
L0:
216211
r0 = 'z'
217212
r1 = object 2
218213
r2 = CPyDict_Build(1, x, r1)
219-
r3 = cast(dict, r2)
220-
r4 = CPyDict_UpdateInDisplay(r3, y)
221-
r5 = r4 >= 0 :: signed
222-
r6 = object 3
223-
r7 = PyDict_SetItem(r2, r0, r6)
224-
r8 = r7 >= 0 :: signed
225-
r9 = cast(dict, r2)
226-
return r9
214+
r3 = CPyDict_UpdateInDisplay(r2, y)
215+
r4 = r3 >= 0 :: signed
216+
r5 = object 3
217+
r6 = PyDict_SetItem(r2, r0, r5)
218+
r7 = r6 >= 0 :: signed
219+
return r2
227220

228221
[case testDictIterationMethods]
229222
from typing import Dict, TypedDict, Union
@@ -335,60 +328,59 @@ L12:
335328
def union_of_dicts(d):
336329
d :: dict
337330
r0 :: dict[exact]
338-
r1, new :: dict
339-
r2 :: short_int
340-
r3 :: native_int
341-
r4 :: object
342-
r5 :: tuple[bool, short_int, object, object]
343-
r6 :: short_int
344-
r7 :: bool
345-
r8, r9 :: object
346-
r10 :: str
347-
r11 :: union[int, str]
331+
new :: dict
332+
r1 :: short_int
333+
r2 :: native_int
334+
r3 :: object
335+
r4 :: tuple[bool, short_int, object, object]
336+
r5 :: short_int
337+
r6 :: bool
338+
r7, r8 :: object
339+
r9 :: str
340+
r10 :: union[int, str]
348341
k :: str
349342
v :: union[int, str]
350-
r12 :: object
351-
r13 :: object[1]
352-
r14 :: object_ptr
353-
r15 :: object
354-
r16 :: int
355-
r17 :: object
356-
r18 :: i32
357-
r19, r20, r21 :: bit
343+
r11 :: object
344+
r12 :: object[1]
345+
r13 :: object_ptr
346+
r14 :: object
347+
r15 :: int
348+
r16 :: object
349+
r17 :: i32
350+
r18, r19, r20 :: bit
358351
L0:
359352
r0 = PyDict_New()
360-
r1 = cast(dict, r0)
361-
new = r1
362-
r2 = 0
363-
r3 = PyDict_Size(d)
364-
r4 = CPyDict_GetItemsIter(d)
353+
new = r0
354+
r1 = 0
355+
r2 = PyDict_Size(d)
356+
r3 = CPyDict_GetItemsIter(d)
365357
L1:
366-
r5 = CPyDict_NextItem(r4, r2)
367-
r6 = r5[1]
368-
r2 = r6
369-
r7 = r5[0]
370-
if r7 goto L2 else goto L4 :: bool
358+
r4 = CPyDict_NextItem(r3, r1)
359+
r5 = r4[1]
360+
r1 = r5
361+
r6 = r4[0]
362+
if r6 goto L2 else goto L4 :: bool
371363
L2:
372-
r8 = r5[2]
373-
r9 = r5[3]
374-
r10 = cast(str, r8)
375-
r11 = cast(union[int, str], r9)
376-
k = r10
377-
v = r11
378-
r12 = load_address PyLong_Type
379-
r13 = [v]
380-
r14 = load_address r13
381-
r15 = PyObject_Vectorcall(r12, r14, 1, 0)
364+
r7 = r4[2]
365+
r8 = r4[3]
366+
r9 = cast(str, r7)
367+
r10 = cast(union[int, str], r8)
368+
k = r9
369+
v = r10
370+
r11 = load_address PyLong_Type
371+
r12 = [v]
372+
r13 = load_address r12
373+
r14 = PyObject_Vectorcall(r11, r13, 1, 0)
382374
keep_alive v
383-
r16 = unbox(int, r15)
384-
r17 = box(int, r16)
385-
r18 = CPyDict_SetItem(new, k, r17)
386-
r19 = r18 >= 0 :: signed
375+
r15 = unbox(int, r14)
376+
r16 = box(int, r15)
377+
r17 = CPyDict_SetItem(new, k, r16)
378+
r18 = r17 >= 0 :: signed
387379
L3:
388-
r20 = CPyDict_CheckSize(d, r3)
380+
r19 = CPyDict_CheckSize(d, r2)
389381
goto L1
390382
L4:
391-
r21 = CPy_NoErrOccurred()
383+
r20 = CPy_NoErrOccurred()
392384
L5:
393385
return 1
394386
def typeddict(d):
@@ -561,8 +553,7 @@ def f4(d, flag):
561553
r2, r3 :: str
562554
r4 :: object
563555
r5 :: dict[exact]
564-
r6 :: dict
565-
r7, r8 :: object
556+
r6, r7 :: object
566557
L0:
567558
if flag goto L1 else goto L2 :: bool
568559
L1:
@@ -574,9 +565,9 @@ L2:
574565
r3 = 'c'
575566
r4 = object 1
576567
r5 = CPyDict_Build(1, r3, r4)
577-
r6 = cast(dict, r5)
578-
r7 = CPyDict_SetDefault(d, r2, r6)
579-
return r7
568+
r6 = CPyDict_SetDefault(d, r2, r5)
569+
return r6
580570
L3:
581-
r8 = box(None, 1)
582-
return r8
571+
r7 = box(None, 1)
572+
return r7
573+

mypyc/test-data/irbuild-generics.test

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -773,3 +773,4 @@ def f(x):
773773
x :: int
774774
L0:
775775
return x
776+

mypyc/test-data/irbuild-match.test

Lines changed: 42 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -1090,36 +1090,35 @@ def f(x):
10901090
r0 :: i32
10911091
r1 :: bit
10921092
r2 :: dict[exact]
1093-
r3, rest :: dict
1094-
r4 :: str
1095-
r5 :: object
1096-
r6 :: str
1097-
r7 :: object
1098-
r8 :: object[1]
1099-
r9 :: object_ptr
1100-
r10, r11 :: object
1093+
rest :: dict
1094+
r3 :: str
1095+
r4 :: object
1096+
r5 :: str
1097+
r6 :: object
1098+
r7 :: object[1]
1099+
r8 :: object_ptr
1100+
r9, r10 :: object
11011101
L0:
11021102
r0 = CPyMapping_Check(x)
11031103
r1 = r0 != 0
11041104
if r1 goto L1 else goto L3 :: bool
11051105
L1:
11061106
r2 = CPyDict_FromAny(x)
1107-
r3 = cast(dict, r2)
1108-
rest = r3
1107+
rest = r2
11091108
L2:
1110-
r4 = 'matched'
1111-
r5 = builtins :: module
1112-
r6 = 'print'
1113-
r7 = CPyObject_GetAttr(r5, r6)
1114-
r8 = [r4]
1115-
r9 = load_address r8
1116-
r10 = PyObject_Vectorcall(r7, r9, 1, 0)
1117-
keep_alive r4
1109+
r3 = 'matched'
1110+
r4 = builtins :: module
1111+
r5 = 'print'
1112+
r6 = CPyObject_GetAttr(r4, r5)
1113+
r7 = [r3]
1114+
r8 = load_address r7
1115+
r9 = PyObject_Vectorcall(r6, r8, 1, 0)
1116+
keep_alive r3
11181117
goto L4
11191118
L3:
11201119
L4:
1121-
r11 = box(None, 1)
1122-
return r11
1120+
r10 = box(None, 1)
1121+
return r10
11231122

11241123
[case testMatchMappingPatternWithRestPopKeys_python3_10]
11251124
def f(x):
@@ -1141,16 +1140,16 @@ def f(x):
11411140
r9 :: bit
11421141
r10 :: bool
11431142
r11 :: dict[exact]
1144-
r12, rest :: dict
1145-
r13 :: i32
1146-
r14 :: bit
1147-
r15 :: str
1148-
r16 :: object
1149-
r17 :: str
1150-
r18 :: object
1151-
r19 :: object[1]
1152-
r20 :: object_ptr
1153-
r21, r22 :: object
1143+
rest :: dict
1144+
r12 :: i32
1145+
r13 :: bit
1146+
r14 :: str
1147+
r15 :: object
1148+
r16 :: str
1149+
r17 :: object
1150+
r18 :: object[1]
1151+
r19 :: object_ptr
1152+
r20, r21 :: object
11541153
L0:
11551154
r0 = CPyMapping_Check(x)
11561155
r1 = r0 != 0
@@ -1170,24 +1169,23 @@ L2:
11701169
if r10 goto L3 else goto L5 :: bool
11711170
L3:
11721171
r11 = CPyDict_FromAny(x)
1173-
r12 = cast(dict, r11)
1174-
rest = r12
1175-
r13 = PyDict_DelItem(r11, r2)
1176-
r14 = r13 >= 0 :: signed
1172+
rest = r11
1173+
r12 = PyDict_DelItem(r11, r2)
1174+
r13 = r12 >= 0 :: signed
11771175
L4:
1178-
r15 = 'matched'
1179-
r16 = builtins :: module
1180-
r17 = 'print'
1181-
r18 = CPyObject_GetAttr(r16, r17)
1182-
r19 = [r15]
1183-
r20 = load_address r19
1184-
r21 = PyObject_Vectorcall(r18, r20, 1, 0)
1185-
keep_alive r15
1176+
r14 = 'matched'
1177+
r15 = builtins :: module
1178+
r16 = 'print'
1179+
r17 = CPyObject_GetAttr(r15, r16)
1180+
r18 = [r14]
1181+
r19 = load_address r18
1182+
r20 = PyObject_Vectorcall(r17, r19, 1, 0)
1183+
keep_alive r14
11861184
goto L6
11871185
L5:
11881186
L6:
1189-
r22 = box(None, 1)
1190-
return r22
1187+
r21 = box(None, 1)
1188+
return r21
11911189

11921190
[case testMatchEmptySequencePattern_python3_10]
11931191
def f(x):

0 commit comments

Comments
 (0)