Construct SetCreation

Performance Diagrams

Construct SetCreation 001000000010000000200000002000000030000000300000004000000040000000CPython 2.7Nuitka (master)Nuitka (develop)Nuitka (factory)4335179688.95192307692307257.0CPython 2.734599515242.31730769230768306.890050358627Nuitka (master)34599515395.6826923076923306.890050358627Nuitka (develop)34599515549.0480769230769306.890050358627Nuitka (factory)Construct SetCreationTicks Construct SetCreation 001000000010000000200000002000000030000000300000004000000040000000CPython 3.8Nuitka (master)Nuitka (develop)Nuitka (factory)4480055988.95192307692307257.0CPython 3.835050930242.31730769230768310.77797451572667Nuitka (master)35050939395.6826923076923310.7779248726304Nuitka (develop)35050898549.0480769230769310.77815102451325Nuitka (factory)Construct SetCreationTicks

Source Code with Construct

module_value1 = 1000

def calledRepeatedly(set_value1):
    # Force frame and eliminate forward propagation (currently).
    module_value1

# construct_begin
    l = {
        set_value1,
        set_value1,
        set_value1,
        set_value1,
        set_value1
    }
# construct_alternative



    return l, set_value1

import itertools
for x in itertools.repeat(None, 50000):
    calledRepeatedly(module_value1)

print("OK.")

Source Code without Construct

module_value1 = 1000

def calledRepeatedly(set_value1):
    # Force frame and eliminate forward propagation (currently).
    module_value1

# construct_begin







# construct_alternative
    l = 1
# construct_end

    return l, set_value1

import itertools
for x in itertools.repeat(None, 50000):
    calledRepeatedly(module_value1)

print("OK.")

Context Diff of Source Code


Construct
Baseline
22 def calledRepeatedly(set_value1): 22 def calledRepeatedly(set_value1):
23     # Force frame and eliminate forward propagation (currently). 23     # Force frame and eliminate forward propagation (currently).
24     module_value1 24     module_value1
25 25
26 # construct_begin 26 # construct_begin
n 27     l = { n
28         set_value1,
29         set_value1,
30         set_value1,
31         set_value1,
32         set_value1
33     }
34 # construct_alternative
35 27
36 28
t t 29  
30  
31  
32  
33  
34 # construct_alternative
35     l = 1
36 # construct_end
37 37
38     return l, set_value1 38     return l, set_value1
39 39
40 import itertools 40 import itertools
41 for x in itertools.repeat(None, 50000): 41 for x in itertools.repeat(None, 50000):

Context Diff of Generated Code


Construct
Baseline
31 31
32 PyObject *module___main__; 32 PyObject *module___main__;
33 PyDictObject *moduledict___main__; 33 PyDictObject *moduledict___main__;
34 34
35 /* The declarations of module constants used, if any. */ 35 /* The declarations of module constants used, if any. */
n 36 static PyObject *mod_consts[17]; n 36 static PyObject *mod_consts[18];
37 #ifndef __NUITKA_NO_ASSERT__ 37 #ifndef __NUITKA_NO_ASSERT__
n 38 static Py_hash_t mod_consts_hash[17]; n 38 static Py_hash_t mod_consts_hash[18];
39 #endif 39 #endif
40 40
41 static PyObject *module_filename_obj = NULL; 41 static PyObject *module_filename_obj = NULL;
42 42
43 /* Indicator if this modules private constants were created yet. */ 43 /* Indicator if this modules private constants were created yet. */
48     if (constants_created == false) { 48     if (constants_created == false) {
49         loadConstantsBlob(&mod_consts[0], UNTRANSLATE("__main__")); 49         loadConstantsBlob(&mod_consts[0], UNTRANSLATE("__main__"));
50         constants_created = true; 50         constants_created = true;
51 51
52 #ifndef __NUITKA_NO_ASSERT__ 52 #ifndef __NUITKA_NO_ASSERT__
n 53         for(int i = 0; i < 17; i++) { n 53         for(int i = 0; i < 18; i++) {
54             mod_consts_hash[i] = DEEP_HASH(mod_consts[i]); 54             mod_consts_hash[i] = DEEP_HASH(mod_consts[i]);
55         } 55         }
56 #endif 56 #endif
57     } 57     }
58 } 58 }
68 #ifndef __NUITKA_NO_ASSERT__ 68 #ifndef __NUITKA_NO_ASSERT__
69 void checkModuleConstants___main__(void) { 69 void checkModuleConstants___main__(void) {
70     // The module may not have been used at all, then ignore this. 70     // The module may not have been used at all, then ignore this.
71     if (constants_created == false) return; 71     if (constants_created == false) return;
72 72
n 73     for(int i = 0; i < 17; i++) { n 73     for(int i = 0; i < 18; i++) {
74         assert(mod_consts_hash[i] == DEEP_HASH(mod_consts[i])); 74         assert(mod_consts_hash[i] == DEEP_HASH(mod_consts[i]));
75         CHECK_OBJECT_DEEP(mod_consts[i]); 75         CHECK_OBJECT_DEEP(mod_consts[i]);
76     } 76     }
77 } 77 }
78 #endif 78 #endif
82 static PyCodeObject *codeobj_551533a45ea4d65c4d164e9c4cff747f; 82 static PyCodeObject *codeobj_551533a45ea4d65c4d164e9c4cff747f;
83 /* For use in "MainProgram.c". */ 83 /* For use in "MainProgram.c". */
84 PyCodeObject *codeobj_main = NULL; 84 PyCodeObject *codeobj_main = NULL;
85 85
86 static void createModuleCodeObjects(void) { 86 static void createModuleCodeObjects(void) {
n 87     module_filename_obj = mod_consts[2]; CHECK_OBJECT(module_filename_obj); n 87     module_filename_obj = mod_consts[3]; CHECK_OBJECT(module_filename_obj);
88     codeobj_03d3cf42d60dde1884899f86b63b8a9a = MAKE_CODEOBJECT(module_filename_obj, 1, CO_NOFREE, mod_consts[15], NULL, NULL, 0, 0, 0); 88     codeobj_03d3cf42d60dde1884899f86b63b8a9a = MAKE_CODEOBJECT(module_filename_obj, 1, CO_NOFREE, mod_consts[16], NULL, NULL, 0, 0, 0);
89     codeobj_551533a45ea4d65c4d164e9c4cff747f = MAKE_CODEOBJECT(module_filename_obj, 22, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE, mod_consts[7], mod_consts[16], NULL, 1, 0, 0); 89     codeobj_551533a45ea4d65c4d164e9c4cff747f = MAKE_CODEOBJECT(module_filename_obj, 22, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE, mod_consts[8], mod_consts[17], NULL, 1, 0, 0);
90 } 90 }
91 91
92 // The module function declarations. 92 // The module function declarations.
93 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly(); 93 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly();
94 94
100     NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED(); 100     NUITKA_MAY_BE_UNUSED bool had_error = ERROR_OCCURRED();
101 #endif 101 #endif
102 102
103     // Local variable declarations. 103     // Local variable declarations.
104     PyObject *par_set_value1 = python_pars[0]; 104     PyObject *par_set_value1 = python_pars[0];
n 105     PyObject *var_l = NULL; n
106     struct Nuitka_FrameObject *frame_551533a45ea4d65c4d164e9c4cff747f; 105     struct Nuitka_FrameObject *frame_551533a45ea4d65c4d164e9c4cff747f;
107     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL; 106     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
108     NUITKA_MAY_BE_UNUSED nuitka_void tmp_unused; 107     NUITKA_MAY_BE_UNUSED nuitka_void tmp_unused;
109     PyObject *exception_type = NULL; 108     PyObject *exception_type = NULL;
110     PyObject *exception_value = NULL; 109     PyObject *exception_value = NULL;
111     PyTracebackObject *exception_tb = NULL; 110     PyTracebackObject *exception_tb = NULL;
112     NUITKA_MAY_BE_UNUSED int exception_lineno = 0; 111     NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
n 113     int tmp_res; n
114     static struct Nuitka_FrameObject *cache_frame_551533a45ea4d65c4d164e9c4cff747f = NULL; 112     static struct Nuitka_FrameObject *cache_frame_551533a45ea4d65c4d164e9c4cff747f = NULL;
115     PyObject *tmp_return_value = NULL; 113     PyObject *tmp_return_value = NULL;
n 116     PyObject *exception_keeper_type_1; n
117     PyObject *exception_keeper_value_1;
118     PyTracebackObject *exception_keeper_tb_1;
119     NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;
120 114
121     // Actual function body. 115     // Actual function body.
n 122     // Tried code: n
123     if (isFrameUnusable(cache_frame_551533a45ea4d65c4d164e9c4cff747f)) { 116     if (isFrameUnusable(cache_frame_551533a45ea4d65c4d164e9c4cff747f)) {
124         Py_XDECREF(cache_frame_551533a45ea4d65c4d164e9c4cff747f); 117         Py_XDECREF(cache_frame_551533a45ea4d65c4d164e9c4cff747f);
125 118
126 #if _DEBUG_REFCOUNTS 119 #if _DEBUG_REFCOUNTS
127         if (cache_frame_551533a45ea4d65c4d164e9c4cff747f == NULL) { 120         if (cache_frame_551533a45ea4d65c4d164e9c4cff747f == NULL) {
160 153
161             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb); 154             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
162 155
163 156
164             exception_lineno = 24; 157             exception_lineno = 24;
n 165             type_description_1 = "oo"; n 158             type_description_1 = "oN";
166             goto frame_exception_exit_1; 159             goto frame_exception_exit_1;
167         } 160         }
n 168     } n
169     {
170         PyObject *tmp_assign_source_1;
171         PyObject *tmp_set_element_1;
172         CHECK_OBJECT(par_set_value1);
173         tmp_set_element_1 = par_set_value1;
174         tmp_assign_source_1 = PySet_New(NULL);
175         assert(tmp_assign_source_1);
176         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
177         if (tmp_res != 0) {
178             assert(ERROR_OCCURRED());
179  
180             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
181             Py_DECREF(tmp_assign_source_1);
182  
183             exception_lineno = 28;
184             type_description_1 = "oo";
185             goto frame_exception_exit_1;
186         }
187         CHECK_OBJECT(par_set_value1);
188         tmp_set_element_1 = par_set_value1;
189         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
190         if (tmp_res != 0) {
191             assert(ERROR_OCCURRED());
192  
193             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
194             Py_DECREF(tmp_assign_source_1);
195  
196             exception_lineno = 29;
197             type_description_1 = "oo";
198             goto frame_exception_exit_1;
199         }
200         CHECK_OBJECT(par_set_value1);
201         tmp_set_element_1 = par_set_value1;
202         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
203         if (tmp_res != 0) {
204             assert(ERROR_OCCURRED());
205  
206             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
207             Py_DECREF(tmp_assign_source_1);
208  
209             exception_lineno = 30;
210             type_description_1 = "oo";
211             goto frame_exception_exit_1;
212         }
213         CHECK_OBJECT(par_set_value1);
214         tmp_set_element_1 = par_set_value1;
215         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
216         if (tmp_res != 0) {
217             assert(ERROR_OCCURRED());
218  
219             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
220             Py_DECREF(tmp_assign_source_1);
221  
222             exception_lineno = 31;
223             type_description_1 = "oo";
224             goto frame_exception_exit_1;
225         }
226         CHECK_OBJECT(par_set_value1);
227         tmp_set_element_1 = par_set_value1;
228         tmp_res = PySet_Add(tmp_assign_source_1, tmp_set_element_1);
229         if (tmp_res != 0) {
230             assert(ERROR_OCCURRED());
231  
232             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
233             Py_DECREF(tmp_assign_source_1);
234  
235             exception_lineno = 32;
236             type_description_1 = "oo";
237             goto frame_exception_exit_1;
238         }
239         assert(var_l == NULL);
240         var_l = tmp_assign_source_1;
241     } 161     }
242 162
243 #if 0 163 #if 0
244     RESTORE_FRAME_EXCEPTION(frame_551533a45ea4d65c4d164e9c4cff747f); 164     RESTORE_FRAME_EXCEPTION(frame_551533a45ea4d65c4d164e9c4cff747f);
245 #endif 165 #endif
264     // Attaches locals to frame if any. 184     // Attaches locals to frame if any.
265     Nuitka_Frame_AttachLocals( 185     Nuitka_Frame_AttachLocals(
266         frame_551533a45ea4d65c4d164e9c4cff747f, 186         frame_551533a45ea4d65c4d164e9c4cff747f,
267         type_description_1, 187         type_description_1,
268         par_set_value1, 188         par_set_value1,
n 269         var_l n 189         NULL
270     ); 190     );
271 191
272 192
273     // Release cached frame if used for exception. 193     // Release cached frame if used for exception.
274     if (frame_551533a45ea4d65c4d164e9c4cff747f == cache_frame_551533a45ea4d65c4d164e9c4cff747f) { 194     if (frame_551533a45ea4d65c4d164e9c4cff747f == cache_frame_551533a45ea4d65c4d164e9c4cff747f) {
285 205
286     // Put the previous frame back on top. 206     // Put the previous frame back on top.
287     popFrameStack(); 207     popFrameStack();
288 208
289     // Return the error. 209     // Return the error.
n 290     goto try_except_handler_1; n 210     goto function_exception_exit;
291 211
292     frame_no_exception_1:; 212     frame_no_exception_1:;
293     { 213     {
294         PyObject *tmp_tuple_element_1; 214         PyObject *tmp_tuple_element_1;
n 295         CHECK_OBJECT(var_l); n
296         tmp_tuple_element_1 = var_l; 215         tmp_tuple_element_1 = mod_consts[1];
297         tmp_return_value = PyTuple_New(2); 216         tmp_return_value = PyTuple_New(2);
298         PyTuple_SET_ITEM0(tmp_return_value, 0, tmp_tuple_element_1); 217         PyTuple_SET_ITEM0(tmp_return_value, 0, tmp_tuple_element_1);
299         CHECK_OBJECT(par_set_value1); 218         CHECK_OBJECT(par_set_value1);
300         tmp_tuple_element_1 = par_set_value1; 219         tmp_tuple_element_1 = par_set_value1;
301         PyTuple_SET_ITEM0(tmp_return_value, 1, tmp_tuple_element_1); 220         PyTuple_SET_ITEM0(tmp_return_value, 1, tmp_tuple_element_1);
n 302         goto try_return_handler_1; n
303     }
304     NUITKA_CANNOT_GET_HERE("tried codes exits in all cases");
305     return NULL;
306     // Return handler code:
307     try_return_handler_1:;
308     CHECK_OBJECT(var_l);
309     Py_DECREF(var_l);
310     var_l = NULL;
311     goto function_return_exit; 221         goto function_return_exit;
312     // Exception handler code: 222     }
313     try_except_handler_1:;
314     exception_keeper_type_1 = exception_type;
315     exception_keeper_value_1 = exception_value;
316     exception_keeper_tb_1 = exception_tb;
317     exception_keeper_lineno_1 = exception_lineno;
318     exception_type = NULL;
319     exception_value = NULL;
320     exception_tb = NULL;
321     exception_lineno = 0;
322  
323     // Re-raise.
324     exception_type = exception_keeper_type_1;
325     exception_value = exception_keeper_value_1;
326     exception_tb = exception_keeper_tb_1;
327     exception_lineno = exception_keeper_lineno_1;
328  
329     goto function_exception_exit;
330     // End of try:
331 223
332     NUITKA_CANNOT_GET_HERE("Return statement must have exited already."); 224     NUITKA_CANNOT_GET_HERE("Return statement must have exited already.");
333     return NULL; 225     return NULL;
334 226
335 function_exception_exit: 227 function_exception_exit:
354 246
355 247
356 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly() { 248 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly() {
357     struct Nuitka_FunctionObject *result = Nuitka_Function_New( 249     struct Nuitka_FunctionObject *result = Nuitka_Function_New(
358         impl___main__$$$function__1_calledRepeatedly, 250         impl___main__$$$function__1_calledRepeatedly,
n 359         mod_consts[7], n 251         mod_consts[8],
360 #if PYTHON_VERSION >= 0x300 252 #if PYTHON_VERSION >= 0x300
361         NULL, 253         NULL,
362 #endif 254 #endif
363         codeobj_551533a45ea4d65c4d164e9c4cff747f, 255         codeobj_551533a45ea4d65c4d164e9c4cff747f,
364         NULL, 256         NULL,
734 626
735     // Module code. 627     // Module code.
736     { 628     {
737         PyObject *tmp_assign_source_1; 629         PyObject *tmp_assign_source_1;
738         tmp_assign_source_1 = Py_None; 630         tmp_assign_source_1 = Py_None;
n 739         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[1], tmp_assign_source_1); n 631         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[2], tmp_assign_source_1);
740     } 632     }
741     { 633     {
742         PyObject *tmp_assign_source_2; 634         PyObject *tmp_assign_source_2;
n 743         tmp_assign_source_2 = mod_consts[2]; n 635         tmp_assign_source_2 = mod_consts[3];
744         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[3], tmp_assign_source_2); 636         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_2);
745     } 637     }
746     { 638     {
747         PyObject *tmp_assign_source_3; 639         PyObject *tmp_assign_source_3;
748         tmp_assign_source_3 = Py_None; 640         tmp_assign_source_3 = Py_None;
n 749         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_3); n 641         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_3);
750     } 642     }
751     { 643     {
752         PyObject *tmp_assign_source_4; 644         PyObject *tmp_assign_source_4;
753         tmp_assign_source_4 = PyDict_New(); 645         tmp_assign_source_4 = PyDict_New();
n 754         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_4); n 646         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_4);
755     } 647     }
756     { 648     {
757         PyObject *tmp_assign_source_5; 649         PyObject *tmp_assign_source_5;
n 758         tmp_assign_source_5 = mod_consts[6]; n 650         tmp_assign_source_5 = mod_consts[7];
759         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[0], tmp_assign_source_5); 651         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[0], tmp_assign_source_5);
760     } 652     }
761     { 653     {
762         PyObject *tmp_assign_source_6; 654         PyObject *tmp_assign_source_6;
763 655
764 656
765         tmp_assign_source_6 = MAKE_FUNCTION___main__$$$function__1_calledRepeatedly(); 657         tmp_assign_source_6 = MAKE_FUNCTION___main__$$$function__1_calledRepeatedly();
766 658
n 767         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[7], tmp_assign_source_6); n 659         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[8], tmp_assign_source_6);
768     } 660     }
769     { 661     {
770         PyObject *tmp_assign_source_7; 662         PyObject *tmp_assign_source_7;
771         PyObject *tmp_name_name_1; 663         PyObject *tmp_name_name_1;
772         PyObject *tmp_globals_arg_name_1; 664         PyObject *tmp_globals_arg_name_1;
773         PyObject *tmp_locals_arg_name_1; 665         PyObject *tmp_locals_arg_name_1;
774         PyObject *tmp_fromlist_name_1; 666         PyObject *tmp_fromlist_name_1;
775         PyObject *tmp_level_name_1; 667         PyObject *tmp_level_name_1;
n 776         tmp_name_name_1 = mod_consts[8]; n 668         tmp_name_name_1 = mod_consts[9];
777         tmp_globals_arg_name_1 = (PyObject *)moduledict___main__; 669         tmp_globals_arg_name_1 = (PyObject *)moduledict___main__;
778         tmp_locals_arg_name_1 = Py_None; 670         tmp_locals_arg_name_1 = Py_None;
779         tmp_fromlist_name_1 = Py_None; 671         tmp_fromlist_name_1 = Py_None;
n 780         tmp_level_name_1 = mod_consts[9]; n 672         tmp_level_name_1 = mod_consts[10];
781         tmp_assign_source_7 = IMPORT_MODULE5(tmp_name_name_1, tmp_globals_arg_name_1, tmp_locals_arg_name_1, tmp_fromlist_name_1, tmp_level_name_1); 673         tmp_assign_source_7 = IMPORT_MODULE5(tmp_name_name_1, tmp_globals_arg_name_1, tmp_locals_arg_name_1, tmp_fromlist_name_1, tmp_level_name_1);
782         assert(!(tmp_assign_source_7 == NULL)); 674         assert(!(tmp_assign_source_7 == NULL));
n 783         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[8], tmp_assign_source_7); n 675         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[9], tmp_assign_source_7);
784     } 676     }
785     // Frame without reuse. 677     // Frame without reuse.
786     frame_03d3cf42d60dde1884899f86b63b8a9a = MAKE_MODULE_FRAME(codeobj_03d3cf42d60dde1884899f86b63b8a9a, module___main__); 678     frame_03d3cf42d60dde1884899f86b63b8a9a = MAKE_MODULE_FRAME(codeobj_03d3cf42d60dde1884899f86b63b8a9a, module___main__);
787 679
788     // Push the new frame as the currently active one, and we should be exclusively 680     // Push the new frame as the currently active one, and we should be exclusively
793     // Framed code: 685     // Framed code:
794     { 686     {
795         PyObject *tmp_assign_source_8; 687         PyObject *tmp_assign_source_8;
796         PyObject *tmp_iter_arg_1; 688         PyObject *tmp_iter_arg_1;
797         PyObject *tmp_called_instance_1; 689         PyObject *tmp_called_instance_1;
n 798         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[8]); n 690         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[9]);
799 691
800         if (unlikely(tmp_called_instance_1 == NULL)) { 692         if (unlikely(tmp_called_instance_1 == NULL)) {
n 801             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[8]); n 693             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[9]);
802         } 694         }
803 695
804         assert(!(tmp_called_instance_1 == NULL)); 696         assert(!(tmp_called_instance_1 == NULL));
805         frame_03d3cf42d60dde1884899f86b63b8a9a->m_frame.f_lineno = 41; 697         frame_03d3cf42d60dde1884899f86b63b8a9a->m_frame.f_lineno = 41;
806         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2( 698         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2(
807             tmp_called_instance_1, 699             tmp_called_instance_1,
n 808             mod_consts[10], n 700             mod_consts[11],
809             &PyTuple_GET_ITEM(mod_consts[11], 0) 701             &PyTuple_GET_ITEM(mod_consts[12], 0)
810         ); 702         );
811 703
812         if (tmp_iter_arg_1 == NULL) { 704         if (tmp_iter_arg_1 == NULL) {
813             assert(ERROR_OCCURRED()); 705             assert(ERROR_OCCURRED());
814 706
864     } 756     }
865     { 757     {
866         PyObject *tmp_assign_source_10; 758         PyObject *tmp_assign_source_10;
867         CHECK_OBJECT(tmp_for_loop_1__iter_value); 759         CHECK_OBJECT(tmp_for_loop_1__iter_value);
868         tmp_assign_source_10 = tmp_for_loop_1__iter_value; 760         tmp_assign_source_10 = tmp_for_loop_1__iter_value;
n 869         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[12], tmp_assign_source_10); n 761         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[13], tmp_assign_source_10);
870     } 762     }
871     { 763     {
872         PyObject *tmp_called_name_1; 764         PyObject *tmp_called_name_1;
873         PyObject *tmp_call_result_1; 765         PyObject *tmp_call_result_1;
874         PyObject *tmp_args_element_name_1; 766         PyObject *tmp_args_element_name_1;
n 875         tmp_called_name_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[7]); n 767         tmp_called_name_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[8]);
876 768
877         if (unlikely(tmp_called_name_1 == NULL)) { 769         if (unlikely(tmp_called_name_1 == NULL)) {
n 878             tmp_called_name_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[7]); n 770             tmp_called_name_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[8]);
879         } 771         }
880 772
881         if (tmp_called_name_1 == NULL) { 773         if (tmp_called_name_1 == NULL) {
882             assert(ERROR_OCCURRED()); 774             assert(ERROR_OCCURRED());
883 775
962     Py_DECREF(tmp_for_loop_1__for_iterator); 854     Py_DECREF(tmp_for_loop_1__for_iterator);
963     tmp_for_loop_1__for_iterator = NULL; 855     tmp_for_loop_1__for_iterator = NULL;
964     { 856     {
965         PyObject *tmp_called_name_2; 857         PyObject *tmp_called_name_2;
966         PyObject *tmp_call_result_2; 858         PyObject *tmp_call_result_2;
n 967         tmp_called_name_2 = LOOKUP_BUILTIN(mod_consts[13]); n 859         tmp_called_name_2 = LOOKUP_BUILTIN(mod_consts[14]);
968         assert(tmp_called_name_2 != NULL); 860         assert(tmp_called_name_2 != NULL);
969         frame_03d3cf42d60dde1884899f86b63b8a9a->m_frame.f_lineno = 44; 861         frame_03d3cf42d60dde1884899f86b63b8a9a->m_frame.f_lineno = 44;
t 970         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tmp_called_name_2, mod_consts[14]); t 862         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tmp_called_name_2, mod_consts[15]);
971 863
972         if (tmp_call_result_2 == NULL) { 864         if (tmp_call_result_2 == NULL) {
973             assert(ERROR_OCCURRED()); 865             assert(ERROR_OCCURRED());
974 866
975             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb); 867             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);