Construct InplaceOperationListAdd

Performance Diagrams

Construct InplaceOperationListAdd 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000CPython 2.7Nuitka (master)Nuitka (develop)Nuitka (factory)17285032688.11538461538461257.00000000000006CPython 2.788852405240.03846153846155377.08758696126324Nuitka (master)91052665391.96153846153845373.94198632089274Nuitka (develop)91052665543.8846153846154373.94198632089274Nuitka (factory)Construct InplaceOperationListAddTicks Construct InplaceOperationListAdd 00100000001000000020000000200000003000000030000000400000004000000050000000500000006000000060000000700000007000000080000000800000009000000090000000100000000100000000110000000110000000120000000120000000CPython 3.8Nuitka (master)Nuitka (develop)Nuitka (factory)12864269488.11538461538461257.0CPython 3.873553083240.03846153846155362.8240463354796Nuitka (master)73552997391.96153846153845362.82421153664586Nuitka (develop)73552997543.8846153846154362.82421153664586Nuitka (factory)Construct InplaceOperationListAddTicks

Source Code with Construct

module_value1 = [5.0]
module_value2 = [3.0]

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

    # Make sure we have a local variable s anyway
    s = [2.0]

    local_value = module_value1

    s += module_value1
# construct_begin
    s += [1000.0]
    s += [1000.0]
    s += [1000.0]
    s += [1000.0]
    s += [1000.0]
# construct_end
    s += module_value2

    return s

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

print("OK.")

Source Code without Construct

module_value1 = [5.0]
module_value2 = [3.0]

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

    # Make sure we have a local variable s anyway
    s = [2.0]

    local_value = module_value1

    s += module_value1
# construct_begin






    s += module_value2

    return s

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

print("OK.")

Context Diff of Source Code


Construct
Baseline
30 30
31     local_value = module_value1 31     local_value = module_value1
32 32
33     s += module_value1 33     s += module_value1
34 # construct_begin 34 # construct_begin
t 35     s += [1000.0] t 35  
36     s += [1000.0] 36  
37     s += [1000.0] 37  
38     s += [1000.0] 38  
39     s += [1000.0] 39  
40 # construct_end 40  
41     s += module_value2 41     s += module_value2
42 42
43     return s 43     return s
44 44
45 import itertools 45 import itertools

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[21]; n 36 static PyObject *mod_consts[20];
37 #ifndef __NUITKA_NO_ASSERT__ 37 #ifndef __NUITKA_NO_ASSERT__
n 38 static Py_hash_t mod_consts_hash[21]; n 38 static Py_hash_t mod_consts_hash[20];
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 < 21; i++) { n 53         for(int i = 0; i < 20; 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 < 21; i++) { n 73     for(int i = 0; i < 20; 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_2c11ebe2aed07f10f7e15f3e240bb669; 82 static PyCodeObject *codeobj_2c11ebe2aed07f10f7e15f3e240bb669;
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[5]; CHECK_OBJECT(module_filename_obj); n 87     module_filename_obj = mod_consts[4]; CHECK_OBJECT(module_filename_obj);
88     codeobj_92b1f974da187e176a5b1439cf777160 = MAKE_CODEOBJECT(module_filename_obj, 1, CO_NOFREE, mod_consts[19], NULL, NULL, 0, 0, 0); 88     codeobj_92b1f974da187e176a5b1439cf777160 = MAKE_CODEOBJECT(module_filename_obj, 1, CO_NOFREE, mod_consts[18], NULL, NULL, 0, 0, 0);
89     codeobj_2c11ebe2aed07f10f7e15f3e240bb669 = MAKE_CODEOBJECT(module_filename_obj, 24, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE, mod_consts[11], mod_consts[20], NULL, 0, 0, 0); 89     codeobj_2c11ebe2aed07f10f7e15f3e240bb669 = MAKE_CODEOBJECT(module_filename_obj, 24, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE, mod_consts[10], mod_consts[19], NULL, 0, 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
235         PyObject *tmp_assign_source_4; 235         PyObject *tmp_assign_source_4;
236         PyObject *tmp_left_name_2; 236         PyObject *tmp_left_name_2;
237         PyObject *tmp_right_name_2; 237         PyObject *tmp_right_name_2;
238         CHECK_OBJECT(var_s); 238         CHECK_OBJECT(var_s);
239         tmp_left_name_2 = var_s; 239         tmp_left_name_2 = var_s;
n 240         tmp_right_name_2 = LIST_COPY(mod_consts[2]); n
241         tmp_result = BINARY_OPERATION_ADD_OBJECT_LIST_INPLACE(&tmp_left_name_2, tmp_right_name_2);
242         Py_DECREF(tmp_right_name_2);
243         if (tmp_result == false) {
244             assert(ERROR_OCCURRED());
245  
246             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
247  
248  
249             exception_lineno = 35;
250             type_description_1 = "oo";
251             goto frame_exception_exit_1;
252         }
253         tmp_assign_source_4 = tmp_left_name_2;
254         var_s = tmp_assign_source_4;
255  
256     }
257     {
258         PyObject *tmp_assign_source_5;
259         PyObject *tmp_left_name_3;
260         PyObject *tmp_right_name_3;
261         CHECK_OBJECT(var_s);
262         tmp_left_name_3 = var_s;
263         tmp_right_name_3 = LIST_COPY(mod_consts[2]);
264         tmp_result = BINARY_OPERATION_ADD_OBJECT_LIST_INPLACE(&tmp_left_name_3, tmp_right_name_3);
265         Py_DECREF(tmp_right_name_3);
266         if (tmp_result == false) {
267             assert(ERROR_OCCURRED());
268  
269             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
270  
271  
272             exception_lineno = 36;
273             type_description_1 = "oo";
274             goto frame_exception_exit_1;
275         }
276         tmp_assign_source_5 = tmp_left_name_3;
277         var_s = tmp_assign_source_5;
278  
279     }
280     {
281         PyObject *tmp_assign_source_6;
282         PyObject *tmp_left_name_4;
283         PyObject *tmp_right_name_4;
284         CHECK_OBJECT(var_s);
285         tmp_left_name_4 = var_s;
286         tmp_right_name_4 = LIST_COPY(mod_consts[2]);
287         tmp_result = BINARY_OPERATION_ADD_OBJECT_LIST_INPLACE(&tmp_left_name_4, tmp_right_name_4);
288         Py_DECREF(tmp_right_name_4);
289         if (tmp_result == false) {
290             assert(ERROR_OCCURRED());
291  
292             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
293  
294  
295             exception_lineno = 37;
296             type_description_1 = "oo";
297             goto frame_exception_exit_1;
298         }
299         tmp_assign_source_6 = tmp_left_name_4;
300         var_s = tmp_assign_source_6;
301  
302     }
303     {
304         PyObject *tmp_assign_source_7;
305         PyObject *tmp_left_name_5;
306         PyObject *tmp_right_name_5;
307         CHECK_OBJECT(var_s);
308         tmp_left_name_5 = var_s;
309         tmp_right_name_5 = LIST_COPY(mod_consts[2]);
310         tmp_result = BINARY_OPERATION_ADD_OBJECT_LIST_INPLACE(&tmp_left_name_5, tmp_right_name_5);
311         Py_DECREF(tmp_right_name_5);
312         if (tmp_result == false) {
313             assert(ERROR_OCCURRED());
314  
315             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
316  
317  
318             exception_lineno = 38;
319             type_description_1 = "oo";
320             goto frame_exception_exit_1;
321         }
322         tmp_assign_source_7 = tmp_left_name_5;
323         var_s = tmp_assign_source_7;
324  
325     }
326     {
327         PyObject *tmp_assign_source_8;
328         PyObject *tmp_left_name_6;
329         PyObject *tmp_right_name_6;
330         CHECK_OBJECT(var_s);
331         tmp_left_name_6 = var_s;
332         tmp_right_name_6 = LIST_COPY(mod_consts[2]);
333         tmp_result = BINARY_OPERATION_ADD_OBJECT_LIST_INPLACE(&tmp_left_name_6, tmp_right_name_6);
334         Py_DECREF(tmp_right_name_6);
335         if (tmp_result == false) {
336             assert(ERROR_OCCURRED());
337  
338             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
339  
340  
341             exception_lineno = 39;
342             type_description_1 = "oo";
343             goto frame_exception_exit_1;
344         }
345         tmp_assign_source_8 = tmp_left_name_6;
346         var_s = tmp_assign_source_8;
347  
348     }
349     {
350         PyObject *tmp_assign_source_9;
351         PyObject *tmp_left_name_7;
352         PyObject *tmp_right_name_7;
353         CHECK_OBJECT(var_s);
354         tmp_left_name_7 = var_s;
355         tmp_right_name_7 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[3]); 240         tmp_right_name_2 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[2]);
356 241
n 357         if (unlikely(tmp_right_name_7 == NULL)) { n 242         if (unlikely(tmp_right_name_2 == NULL)) {
358             tmp_right_name_7 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[3]); 243             tmp_right_name_2 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[2]);
359         } 244         }
360 245
n 361         if (tmp_right_name_7 == NULL) { n 246         if (tmp_right_name_2 == NULL) {
362             assert(ERROR_OCCURRED()); 247             assert(ERROR_OCCURRED());
363 248
364             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb); 249             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
365 250
366 251
367             exception_lineno = 41; 252             exception_lineno = 41;
368             type_description_1 = "oo"; 253             type_description_1 = "oo";
369             goto frame_exception_exit_1; 254             goto frame_exception_exit_1;
370         } 255         }
n 371         tmp_result = BINARY_OPERATION_ADD_OBJECT_OBJECT_INPLACE(&tmp_left_name_7, tmp_right_name_7); n 256         tmp_result = BINARY_OPERATION_ADD_OBJECT_OBJECT_INPLACE(&tmp_left_name_2, tmp_right_name_2);
372         if (tmp_result == false) { 257         if (tmp_result == false) {
373             assert(ERROR_OCCURRED()); 258             assert(ERROR_OCCURRED());
374 259
375             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb); 260             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
376 261
377 262
378             exception_lineno = 41; 263             exception_lineno = 41;
379             type_description_1 = "oo"; 264             type_description_1 = "oo";
380             goto frame_exception_exit_1; 265             goto frame_exception_exit_1;
381         } 266         }
n 382         tmp_assign_source_9 = tmp_left_name_7; n 267         tmp_assign_source_4 = tmp_left_name_2;
383         var_s = tmp_assign_source_9; 268         var_s = tmp_assign_source_4;
384 269
385     } 270     }
386 271
387 #if 0 272 #if 0
388     RESTORE_FRAME_EXCEPTION(frame_2c11ebe2aed07f10f7e15f3e240bb669); 273     RESTORE_FRAME_EXCEPTION(frame_2c11ebe2aed07f10f7e15f3e240bb669);
496 381
497 382
498 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly() { 383 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly() {
499     struct Nuitka_FunctionObject *result = Nuitka_Function_New( 384     struct Nuitka_FunctionObject *result = Nuitka_Function_New(
500         impl___main__$$$function__1_calledRepeatedly, 385         impl___main__$$$function__1_calledRepeatedly,
n 501         mod_consts[11], n 386         mod_consts[10],
502 #if PYTHON_VERSION >= 0x300 387 #if PYTHON_VERSION >= 0x300
503         NULL, 388         NULL,
504 #endif 389 #endif
505         codeobj_2c11ebe2aed07f10f7e15f3e240bb669, 390         codeobj_2c11ebe2aed07f10f7e15f3e240bb669,
506         NULL, 391         NULL,
876 761
877     // Module code. 762     // Module code.
878     { 763     {
879         PyObject *tmp_assign_source_1; 764         PyObject *tmp_assign_source_1;
880         tmp_assign_source_1 = Py_None; 765         tmp_assign_source_1 = Py_None;
n 881         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_1); n 766         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[3], tmp_assign_source_1);
882     } 767     }
883     { 768     {
884         PyObject *tmp_assign_source_2; 769         PyObject *tmp_assign_source_2;
n 885         tmp_assign_source_2 = mod_consts[5]; n 770         tmp_assign_source_2 = mod_consts[4];
886         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_2); 771         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_2);
887     } 772     }
888     { 773     {
889         PyObject *tmp_assign_source_3; 774         PyObject *tmp_assign_source_3;
890         tmp_assign_source_3 = Py_None; 775         tmp_assign_source_3 = Py_None;
n 891         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[7], tmp_assign_source_3); n 776         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_3);
892     } 777     }
893     { 778     {
894         PyObject *tmp_assign_source_4; 779         PyObject *tmp_assign_source_4;
895         tmp_assign_source_4 = PyDict_New(); 780         tmp_assign_source_4 = PyDict_New();
n 896         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[8], tmp_assign_source_4); n 781         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[7], tmp_assign_source_4);
897     } 782     }
898     { 783     {
899         PyObject *tmp_assign_source_5; 784         PyObject *tmp_assign_source_5;
n 900         tmp_assign_source_5 = LIST_COPY(mod_consts[9]); n 785         tmp_assign_source_5 = LIST_COPY(mod_consts[8]);
901         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[0], tmp_assign_source_5); 786         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[0], tmp_assign_source_5);
902     } 787     }
903     { 788     {
904         PyObject *tmp_assign_source_6; 789         PyObject *tmp_assign_source_6;
n 905         tmp_assign_source_6 = LIST_COPY(mod_consts[10]); n 790         tmp_assign_source_6 = LIST_COPY(mod_consts[9]);
906         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[3], tmp_assign_source_6); 791         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[2], tmp_assign_source_6);
907     } 792     }
908     { 793     {
909         PyObject *tmp_assign_source_7; 794         PyObject *tmp_assign_source_7;
910 795
911 796
912         tmp_assign_source_7 = MAKE_FUNCTION___main__$$$function__1_calledRepeatedly(); 797         tmp_assign_source_7 = MAKE_FUNCTION___main__$$$function__1_calledRepeatedly();
913 798
n 914         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[11], tmp_assign_source_7); n 799         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[10], tmp_assign_source_7);
915     } 800     }
916     { 801     {
917         PyObject *tmp_assign_source_8; 802         PyObject *tmp_assign_source_8;
918         PyObject *tmp_name_name_1; 803         PyObject *tmp_name_name_1;
919         PyObject *tmp_globals_arg_name_1; 804         PyObject *tmp_globals_arg_name_1;
920         PyObject *tmp_locals_arg_name_1; 805         PyObject *tmp_locals_arg_name_1;
921         PyObject *tmp_fromlist_name_1; 806         PyObject *tmp_fromlist_name_1;
922         PyObject *tmp_level_name_1; 807         PyObject *tmp_level_name_1;
n 923         tmp_name_name_1 = mod_consts[12]; n 808         tmp_name_name_1 = mod_consts[11];
924         tmp_globals_arg_name_1 = (PyObject *)moduledict___main__; 809         tmp_globals_arg_name_1 = (PyObject *)moduledict___main__;
925         tmp_locals_arg_name_1 = Py_None; 810         tmp_locals_arg_name_1 = Py_None;
926         tmp_fromlist_name_1 = Py_None; 811         tmp_fromlist_name_1 = Py_None;
n 927         tmp_level_name_1 = mod_consts[13]; n 812         tmp_level_name_1 = mod_consts[12];
928         tmp_assign_source_8 = IMPORT_MODULE5(tmp_name_name_1, tmp_globals_arg_name_1, tmp_locals_arg_name_1, tmp_fromlist_name_1, tmp_level_name_1); 813         tmp_assign_source_8 = IMPORT_MODULE5(tmp_name_name_1, tmp_globals_arg_name_1, tmp_locals_arg_name_1, tmp_fromlist_name_1, tmp_level_name_1);
929         assert(!(tmp_assign_source_8 == NULL)); 814         assert(!(tmp_assign_source_8 == NULL));
n 930         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[12], tmp_assign_source_8); n 815         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[11], tmp_assign_source_8);
931     } 816     }
932     // Frame without reuse. 817     // Frame without reuse.
933     frame_92b1f974da187e176a5b1439cf777160 = MAKE_MODULE_FRAME(codeobj_92b1f974da187e176a5b1439cf777160, module___main__); 818     frame_92b1f974da187e176a5b1439cf777160 = MAKE_MODULE_FRAME(codeobj_92b1f974da187e176a5b1439cf777160, module___main__);
934 819
935     // Push the new frame as the currently active one, and we should be exclusively 820     // Push the new frame as the currently active one, and we should be exclusively
940     // Framed code: 825     // Framed code:
941     { 826     {
942         PyObject *tmp_assign_source_9; 827         PyObject *tmp_assign_source_9;
943         PyObject *tmp_iter_arg_1; 828         PyObject *tmp_iter_arg_1;
944         PyObject *tmp_called_instance_1; 829         PyObject *tmp_called_instance_1;
n 945         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[12]); n 830         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[11]);
946 831
947         if (unlikely(tmp_called_instance_1 == NULL)) { 832         if (unlikely(tmp_called_instance_1 == NULL)) {
n 948             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[12]); n 833             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[11]);
949         } 834         }
950 835
951         assert(!(tmp_called_instance_1 == NULL)); 836         assert(!(tmp_called_instance_1 == NULL));
952         frame_92b1f974da187e176a5b1439cf777160->m_frame.f_lineno = 46; 837         frame_92b1f974da187e176a5b1439cf777160->m_frame.f_lineno = 46;
953         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2( 838         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2(
954             tmp_called_instance_1, 839             tmp_called_instance_1,
n 955             mod_consts[14], n 840             mod_consts[13],
956             &PyTuple_GET_ITEM(mod_consts[15], 0) 841             &PyTuple_GET_ITEM(mod_consts[14], 0)
957         ); 842         );
958 843
959         if (tmp_iter_arg_1 == NULL) { 844         if (tmp_iter_arg_1 == NULL) {
960             assert(ERROR_OCCURRED()); 845             assert(ERROR_OCCURRED());
961 846
1011     } 896     }
1012     { 897     {
1013         PyObject *tmp_assign_source_11; 898         PyObject *tmp_assign_source_11;
1014         CHECK_OBJECT(tmp_for_loop_1__iter_value); 899         CHECK_OBJECT(tmp_for_loop_1__iter_value);
1015         tmp_assign_source_11 = tmp_for_loop_1__iter_value; 900         tmp_assign_source_11 = tmp_for_loop_1__iter_value;
n 1016         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[16], tmp_assign_source_11); n 901         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[15], tmp_assign_source_11);
1017     } 902     }
1018     { 903     {
1019         PyObject *tmp_called_name_1; 904         PyObject *tmp_called_name_1;
1020         PyObject *tmp_call_result_1; 905         PyObject *tmp_call_result_1;
n 1021         tmp_called_name_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[11]); n 906         tmp_called_name_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[10]);
1022 907
1023         if (unlikely(tmp_called_name_1 == NULL)) { 908         if (unlikely(tmp_called_name_1 == NULL)) {
n 1024             tmp_called_name_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[11]); n 909             tmp_called_name_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[10]);
1025         } 910         }
1026 911
1027         if (tmp_called_name_1 == NULL) { 912         if (tmp_called_name_1 == NULL) {
1028             assert(ERROR_OCCURRED()); 913             assert(ERROR_OCCURRED());
1029 914
1092     Py_DECREF(tmp_for_loop_1__for_iterator); 977     Py_DECREF(tmp_for_loop_1__for_iterator);
1093     tmp_for_loop_1__for_iterator = NULL; 978     tmp_for_loop_1__for_iterator = NULL;
1094     { 979     {
1095         PyObject *tmp_called_name_2; 980         PyObject *tmp_called_name_2;
1096         PyObject *tmp_call_result_2; 981         PyObject *tmp_call_result_2;
n 1097         tmp_called_name_2 = LOOKUP_BUILTIN(mod_consts[17]); n 982         tmp_called_name_2 = LOOKUP_BUILTIN(mod_consts[16]);
1098         assert(tmp_called_name_2 != NULL); 983         assert(tmp_called_name_2 != NULL);
1099         frame_92b1f974da187e176a5b1439cf777160->m_frame.f_lineno = 49; 984         frame_92b1f974da187e176a5b1439cf777160->m_frame.f_lineno = 49;
t 1100         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tmp_called_name_2, mod_consts[18]); t 985         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tmp_called_name_2, mod_consts[17]);
1101 986
1102         if (tmp_call_result_2 == NULL) { 987         if (tmp_call_result_2 == NULL) {
1103             assert(ERROR_OCCURRED()); 988             assert(ERROR_OCCURRED());
1104 989
1105             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb); 990             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);