@@ -3602,79 +3602,7 @@ L4:
36023602L5:
36033603 return s
36043604
3605- [case testForMapMultiple]
3606- from typing import Any
3607- def f(x: int, y: int) -> int:
3608- return x * y
3609- def g(a: list[int], b: list[int]) -> int:
3610- s = 0
3611- for x in map(f, a, b):
3612- s += x
3613- return s
3614- [out]
3615- def f(x, y):
3616- x, y, r0 :: int
3617- L0:
3618- r0 = CPyTagged_Multiply(x, y)
3619- return r0
3620- def g(a, b):
3621- a, b :: list
3622- s :: int
3623- r0 :: dict
3624- r1 :: str
3625- r2 :: object
3626- r3, r4, r5 :: native_int
3627- r6 :: bit
3628- r7 :: native_int
3629- r8 :: bit
3630- r9 :: object
3631- r10, _mypyc_map_arg_0 :: int
3632- r11 :: object
3633- r12, _mypyc_map_arg_1 :: int
3634- r13, r14 :: object
3635- r15, r16, r17, x, r18 :: int
3636- r19, r20 :: native_int
3637- L0:
3638- s = 0
3639- r0 = __main__.globals :: static
3640- r1 = 'f'
3641- r2 = CPyDict_GetItem(r0, r1)
3642- r3 = 0
3643- r4 = 0
3644- L1:
3645- r5 = var_object_size a
3646- r6 = r3 < r5 :: signed
3647- if r6 goto L2 else goto L5 :: bool
3648- L2:
3649- r7 = var_object_size b
3650- r8 = r4 < r7 :: signed
3651- if r8 goto L3 else goto L5 :: bool
3652- L3:
3653- r9 = list_get_item_unsafe a, r3
3654- r10 = unbox(int, r9)
3655- _mypyc_map_arg_0 = r10
3656- r11 = list_get_item_unsafe b, r4
3657- r12 = unbox(int, r11)
3658- _mypyc_map_arg_1 = r12
3659- r13 = box(int, _mypyc_map_arg_0)
3660- r14 = box(int, _mypyc_map_arg_1)
3661- r15 = unbox(int, r13)
3662- r16 = unbox(int, r14)
3663- r17 = f(r15, r16)
3664- x = r17
3665- r18 = CPyTagged_Add(s, x)
3666- s = r18
3667- L4:
3668- r19 = r3 + 1
3669- r3 = r19
3670- r20 = r4 + 1
3671- r4 = r20
3672- goto L1
3673- L5:
3674- L6:
3675- return s
3676-
3677- [case testForMapThreeArgs]
3605+ [case testForMapComplex]
36783606def f(x: int, y: int, z: int) -> int:
36793607 return x + y + z
36803608def g(a: list[int], b: list[int], c: list[int]) -> int:
@@ -3762,137 +3690,6 @@ L6:
37623690L7:
37633691 return s
37643692
3765- [case testForMapEmpty]
3766- def f(x: int) -> int:
3767- return x + 1
3768- def g(a: list[int]) -> int:
3769- s = 0
3770- for x in map(f, []):
3771- s += x
3772- return s
3773- [out]
3774- def f(x):
3775- x, r0 :: int
3776- L0:
3777- r0 = CPyTagged_Add(x, 2)
3778- return r0
3779- def g(a):
3780- a :: list
3781- s :: int
3782- r0 :: dict
3783- r1 :: str
3784- r2 :: object
3785- r3 :: list
3786- r4, r5 :: native_int
3787- r6 :: bit
3788- r7, _mypyc_map_arg_0 :: object
3789- r8, r9, x, r10 :: int
3790- r11 :: native_int
3791- L0:
3792- s = 0
3793- r0 = __main__.globals :: static
3794- r1 = 'f'
3795- r2 = CPyDict_GetItem(r0, r1)
3796- r3 = PyList_New(0)
3797- r4 = 0
3798- L1:
3799- r5 = var_object_size r3
3800- r6 = r4 < r5 :: signed
3801- if r6 goto L2 else goto L4 :: bool
3802- L2:
3803- r7 = list_get_item_unsafe r3, r4
3804- _mypyc_map_arg_0 = r7
3805- r8 = unbox(int, _mypyc_map_arg_0)
3806- r9 = f(r8)
3807- x = r9
3808- r10 = CPyTagged_Add(s, x)
3809- s = r10
3810- L3:
3811- r11 = r4 + 1
3812- r4 = r11
3813- goto L1
3814- L4:
3815- L5:
3816- return s
3817-
3818- [case testForMapUnpack]
3819- def f(x: int, y: int) -> tuple[int, int]:
3820- return (x, y)
3821- def g(a: list[int], b: list[int]) -> int:
3822- s = 0
3823- for x, y in map(f, a, b):
3824- s += x + y
3825- return s
3826- [out]
3827- def f(x, y):
3828- x, y :: int
3829- r0 :: tuple[int, int]
3830- L0:
3831- r0 = (x, y)
3832- return r0
3833- def g(a, b):
3834- a, b :: list
3835- s :: int
3836- r0 :: dict
3837- r1 :: str
3838- r2 :: object
3839- r3, r4, r5 :: native_int
3840- r6 :: bit
3841- r7 :: native_int
3842- r8 :: bit
3843- r9 :: object
3844- r10, _mypyc_map_arg_0 :: int
3845- r11 :: object
3846- r12, _mypyc_map_arg_1 :: int
3847- r13, r14 :: object
3848- r15, r16 :: int
3849- r17 :: tuple[int, int]
3850- r18, x, r19, y, r20, r21 :: int
3851- r22, r23 :: native_int
3852- L0:
3853- s = 0
3854- r0 = __main__.globals :: static
3855- r1 = 'f'
3856- r2 = CPyDict_GetItem(r0, r1)
3857- r3 = 0
3858- r4 = 0
3859- L1:
3860- r5 = var_object_size a
3861- r6 = r3 < r5 :: signed
3862- if r6 goto L2 else goto L5 :: bool
3863- L2:
3864- r7 = var_object_size b
3865- r8 = r4 < r7 :: signed
3866- if r8 goto L3 else goto L5 :: bool
3867- L3:
3868- r9 = list_get_item_unsafe a, r3
3869- r10 = unbox(int, r9)
3870- _mypyc_map_arg_0 = r10
3871- r11 = list_get_item_unsafe b, r4
3872- r12 = unbox(int, r11)
3873- _mypyc_map_arg_1 = r12
3874- r13 = box(int, _mypyc_map_arg_0)
3875- r14 = box(int, _mypyc_map_arg_1)
3876- r15 = unbox(int, r13)
3877- r16 = unbox(int, r14)
3878- r17 = f(r15, r16)
3879- r18 = r17[0]
3880- x = r18
3881- r19 = r17[1]
3882- y = r19
3883- r20 = CPyTagged_Add(x, y)
3884- r21 = CPyTagged_Add(s, r20)
3885- s = r21
3886- L4:
3887- r22 = r3 + 1
3888- r3 = r22
3889- r23 = r4 + 1
3890- r4 = r23
3891- goto L1
3892- L5:
3893- L6:
3894- return s
3895-
38963693[case testForMapComprehension]
38973694def f(x: int, y: int) -> int:
38983695 return x * y
0 commit comments