Construct CallCompiledFunctionKwArgsVariable

Performance Diagrams

Construct CallCompiledFunctionKwArgsVariable 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000CPython 3.10Nuitka (main)Nuitka (develop)Nuitka (factory)16586802688.11538461538461257.00000000000006CPython 3.1074350086240.03846153846155393.34629583345793Nuitka (main)74349946391.96153846153845393.34650440984655Nuitka (develop)74349946543.8846153846154393.34650440984655Nuitka (factory)Construct CallCompiledFunctionKwArgsVariableTicks Construct CallCompiledFunctionKwArgsVariable 00100000001000000020000000200000003000000030000000400000004000000050000000500000006000000060000000700000007000000080000000800000009000000090000000100000000100000000110000000110000000120000000120000000130000000130000000140000000140000000150000000150000000CPython 3.8Nuitka (main)Nuitka (develop)Nuitka (factory)15906230788.11538461538461257.0CPython 3.871049985240.03846153846155393.733832245518Nuitka (main)71049989391.96153846153845393.7338260312139Nuitka (develop)71049976543.8846153846154393.7338462277021Nuitka (factory)Construct CallCompiledFunctionKwArgsVariableTicks Construct CallCompiledFunctionKwArgsVariable 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000CPython 2.7Nuitka (main)Nuitka (develop)Nuitka (factory)17200161388.11538461538461257.0CPython 2.762050066240.03846153846155414.9678140923105Nuitka (main)62050058391.96153846153845414.96782558594157Nuitka (develop)62050058543.8846153846154414.96782558594157Nuitka (factory)Construct CallCompiledFunctionKwArgsVariableTicks

Source Code with Construct

    c = getUnknownValue()

    compiled_f = compiled_func

    # This is supposed to make a call to a compiled function, which is
    # being optimized separately.
    # construct_begin
    compiled_f(a=a, b=b, c=c)
    compiled_f(a=a, b=b, c=c)
    compiled_f(a=a, b=b, c=c)
    # construct_alternative



    return compiled_f


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

print("OK.")

#     Python test originally created or extracted from other peoples work. The
#     parts from me are licensed as below. It is at least Free Software where
#     it's copied from other people. In these cases, that will normally be
#     indicated.
#
#     Licensed under the Apache License, Version 2.0 (the "License");
#     you may not use this file except in compliance with the License.
#     You may obtain a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#     Unless required by applicable law or agreed to in writing, software
#     distributed under the License is distributed on an "AS IS" BASIS,
#     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#     See the License for the specific language governing permissions and
#     limitations under the License.

Source Code without Construct

    c = getUnknownValue()

    compiled_f = compiled_func

    # This is supposed to make a call to a compiled function, which is
    # being optimized separately.
    # construct_begin



    # construct_alternative
    pass
    # construct_end

    return compiled_f


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

print("OK.")

#     Python test originally created or extracted from other peoples work. The
#     parts from me are licensed as below. It is at least Free Software where
#     it's copied from other people. In these cases, that will normally be
#     indicated.
#
#     Licensed under the Apache License, Version 2.0 (the "License");
#     you may not use this file except in compliance with the License.
#     You may obtain a copy of the License at
#
#         http://www.apache.org/licenses/LICENSE-2.0
#
#     Unless required by applicable law or agreed to in writing, software
#     distributed under the License is distributed on an "AS IS" BASIS,
#     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
#     See the License for the specific language governing permissions and
#     limitations under the License.

Context Diff of Source Code


Construct
Baseline
22     compiled_f = compiled_func 22     compiled_f = compiled_func
23 23
24     # This is supposed to make a call to a compiled function, which is 24     # This is supposed to make a call to a compiled function, which is
25     # being optimized separately. 25     # being optimized separately.
26     # construct_begin 26     # construct_begin
n 27     compiled_f(a=a, b=b, c=c) n
28     compiled_f(a=a, b=b, c=c)
29     compiled_f(a=a, b=b, c=c)
30     # construct_alternative
31 27
32 28
t t 29  
30     # construct_alternative
31     pass
32     # construct_end
33 33
34     return compiled_f 34     return compiled_f
35 35
36 36
37 for x in itertools.repeat(None, 50000): 37 for x in itertools.repeat(None, 50000):

Context Diff of Generated Code


Construct
Baseline
84 static PyCodeObject *codeobj_7ab8c90273d7aea3f98cc2ab8f0e8a10; 84 static PyCodeObject *codeobj_7ab8c90273d7aea3f98cc2ab8f0e8a10;
85 /* For use in "MainProgram.c". */ 85 /* For use in "MainProgram.c". */
86 PyCodeObject *codeobj_main = NULL; 86 PyCodeObject *codeobj_main = NULL;
87 87
88 static void createModuleCodeObjects(void) { 88 static void createModuleCodeObjects(void) {
n 89     module_filename_obj = mod_consts[4]; CHECK_OBJECT(module_filename_obj); n 89     module_filename_obj = mod_consts[3]; CHECK_OBJECT(module_filename_obj);
90     codeobj_c6270e5daf315eff3ef31c48ce7cfdf8 = MAKE_CODE_OBJECT(module_filename_obj, 1, CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[15], mod_consts[15], NULL, NULL, 0, 0, 0); 90     codeobj_c6270e5daf315eff3ef31c48ce7cfdf8 = MAKE_CODE_OBJECT(module_filename_obj, 1, CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[14], mod_consts[14], NULL, NULL, 0, 0, 0);
91     codeobj_main = codeobj_c6270e5daf315eff3ef31c48ce7cfdf8; 91     codeobj_main = codeobj_c6270e5daf315eff3ef31c48ce7cfdf8;
n 92     codeobj_bbf8d4ea3a54148735f3fe3dd963b111 = MAKE_CODE_OBJECT(module_filename_obj, 17, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[9], mod_consts[9], mod_consts[16], NULL, 0, 0, 0); n 92     codeobj_bbf8d4ea3a54148735f3fe3dd963b111 = MAKE_CODE_OBJECT(module_filename_obj, 17, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[8], mod_consts[8], mod_consts[15], NULL, 0, 0, 0);
93     codeobj_925f6816ddecb2625f7acf058f40e53e = MAKE_CODE_OBJECT(module_filename_obj, 9, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[1], mod_consts[1], mod_consts[2], NULL, 3, 0, 0); 93     codeobj_925f6816ddecb2625f7acf058f40e53e = MAKE_CODE_OBJECT(module_filename_obj, 9, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[1], mod_consts[1], mod_consts[16], NULL, 3, 0, 0);
94     codeobj_7ab8c90273d7aea3f98cc2ab8f0e8a10 = MAKE_CODE_OBJECT(module_filename_obj, 13, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[0], mod_consts[0], NULL, NULL, 0, 0, 0); 94     codeobj_7ab8c90273d7aea3f98cc2ab8f0e8a10 = MAKE_CODE_OBJECT(module_filename_obj, 13, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[0], mod_consts[0], NULL, NULL, 0, 0, 0);
95 } 95 }
96 96
97 // The module function declarations. 97 // The module function declarations.
98 static PyObject *MAKE_FUNCTION___main__$$$function__1_compiled_func(); 98 static PyObject *MAKE_FUNCTION___main__$$$function__1_compiled_func();
169     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL; 169     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
170     PyObject *exception_type = NULL; 170     PyObject *exception_type = NULL;
171     PyObject *exception_value = NULL; 171     PyObject *exception_value = NULL;
172     PyTracebackObject *exception_tb = NULL; 172     PyTracebackObject *exception_tb = NULL;
173     NUITKA_MAY_BE_UNUSED int exception_lineno = 0; 173     NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
n 174     NUITKA_MAY_BE_UNUSED nuitka_void tmp_unused; n
175     static struct Nuitka_FrameObject *cache_frame_bbf8d4ea3a54148735f3fe3dd963b111 = NULL; 174     static struct Nuitka_FrameObject *cache_frame_bbf8d4ea3a54148735f3fe3dd963b111 = NULL;
176     PyObject *tmp_return_value = NULL; 175     PyObject *tmp_return_value = NULL;
177     PyObject *exception_keeper_type_1; 176     PyObject *exception_keeper_type_1;
178     PyObject *exception_keeper_value_1; 177     PyObject *exception_keeper_value_1;
179     PyTracebackObject *exception_keeper_tb_1; 178     PyTracebackObject *exception_keeper_tb_1;
329             goto frame_exception_exit_1; 328             goto frame_exception_exit_1;
330         } 329         }
331         assert(var_compiled_f == NULL); 330         assert(var_compiled_f == NULL);
332         Py_INCREF(tmp_assign_source_4); 331         Py_INCREF(tmp_assign_source_4);
333         var_compiled_f = tmp_assign_source_4; 332         var_compiled_f = tmp_assign_source_4;
n 334     } n
335     {
336         PyObject *tmp_called_value_4;
337         PyObject *tmp_call_result_1;
338         PyObject *tmp_kw_call_value_0_1;
339         PyObject *tmp_kw_call_value_1_1;
340         PyObject *tmp_kw_call_value_2_1;
341         CHECK_OBJECT(var_compiled_f);
342         tmp_called_value_4 = var_compiled_f;
343         CHECK_OBJECT(var_a);
344         tmp_kw_call_value_0_1 = var_a;
345         CHECK_OBJECT(var_b);
346         tmp_kw_call_value_1_1 = var_b;
347         CHECK_OBJECT(var_c);
348         tmp_kw_call_value_2_1 = var_c;
349         frame_bbf8d4ea3a54148735f3fe3dd963b111->m_frame.f_lineno = 27;
350         {
351             PyObject *kw_values[3] = {tmp_kw_call_value_0_1, tmp_kw_call_value_1_1, tmp_kw_call_value_2_1};
352  
353             tmp_call_result_1 = CALL_FUNCTION_WITH_NO_ARGS_KWSPLIT(tstate, tmp_called_value_4, kw_values, mod_consts[2]);
354         }
355  
356         if (tmp_call_result_1 == NULL) {
357             assert(HAS_ERROR_OCCURRED(tstate));
358  
359             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb);
360  
361  
362             exception_lineno = 27;
363             type_description_1 = "oooo";
364             goto frame_exception_exit_1;
365         }
366         Py_DECREF(tmp_call_result_1);
367     }
368     {
369         PyObject *tmp_called_value_5;
370         PyObject *tmp_call_result_2;
371         PyObject *tmp_kw_call_value_0_2;
372         PyObject *tmp_kw_call_value_1_2;
373         PyObject *tmp_kw_call_value_2_2;
374         CHECK_OBJECT(var_compiled_f);
375         tmp_called_value_5 = var_compiled_f;
376         CHECK_OBJECT(var_a);
377         tmp_kw_call_value_0_2 = var_a;
378         CHECK_OBJECT(var_b);
379         tmp_kw_call_value_1_2 = var_b;
380         CHECK_OBJECT(var_c);
381         tmp_kw_call_value_2_2 = var_c;
382         frame_bbf8d4ea3a54148735f3fe3dd963b111->m_frame.f_lineno = 28;
383         {
384             PyObject *kw_values[3] = {tmp_kw_call_value_0_2, tmp_kw_call_value_1_2, tmp_kw_call_value_2_2};
385  
386             tmp_call_result_2 = CALL_FUNCTION_WITH_NO_ARGS_KWSPLIT(tstate, tmp_called_value_5, kw_values, mod_consts[2]);
387         }
388  
389         if (tmp_call_result_2 == NULL) {
390             assert(HAS_ERROR_OCCURRED(tstate));
391  
392             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb);
393  
394  
395             exception_lineno = 28;
396             type_description_1 = "oooo";
397             goto frame_exception_exit_1;
398         }
399         Py_DECREF(tmp_call_result_2);
400     }
401     {
402         PyObject *tmp_called_value_6;
403         PyObject *tmp_call_result_3;
404         PyObject *tmp_kw_call_value_0_3;
405         PyObject *tmp_kw_call_value_1_3;
406         PyObject *tmp_kw_call_value_2_3;
407         CHECK_OBJECT(var_compiled_f);
408         tmp_called_value_6 = var_compiled_f;
409         CHECK_OBJECT(var_a);
410         tmp_kw_call_value_0_3 = var_a;
411         CHECK_OBJECT(var_b);
412         tmp_kw_call_value_1_3 = var_b;
413         CHECK_OBJECT(var_c);
414         tmp_kw_call_value_2_3 = var_c;
415         frame_bbf8d4ea3a54148735f3fe3dd963b111->m_frame.f_lineno = 29;
416         {
417             PyObject *kw_values[3] = {tmp_kw_call_value_0_3, tmp_kw_call_value_1_3, tmp_kw_call_value_2_3};
418  
419             tmp_call_result_3 = CALL_FUNCTION_WITH_NO_ARGS_KWSPLIT(tstate, tmp_called_value_6, kw_values, mod_consts[2]);
420         }
421  
422         if (tmp_call_result_3 == NULL) {
423             assert(HAS_ERROR_OCCURRED(tstate));
424  
425             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb);
426  
427  
428             exception_lineno = 29;
429             type_description_1 = "oooo";
430             goto frame_exception_exit_1;
431         }
432         Py_DECREF(tmp_call_result_3);
433     } 333     }
434 334
435 335
436     // Put the previous frame back on top. 336     // Put the previous frame back on top.
437     popFrameStack(tstate); 337     popFrameStack(tstate);
511     var_a = NULL; 411     var_a = NULL;
512     Py_XDECREF(var_b); 412     Py_XDECREF(var_b);
513     var_b = NULL; 413     var_b = NULL;
514     Py_XDECREF(var_c); 414     Py_XDECREF(var_c);
515     var_c = NULL; 415     var_c = NULL;
n 516     Py_XDECREF(var_compiled_f); n
517     var_compiled_f = NULL;
518     // Re-raise. 416     // Re-raise.
519     exception_type = exception_keeper_type_1; 417     exception_type = exception_keeper_type_1;
520     exception_value = exception_keeper_value_1; 418     exception_value = exception_keeper_value_1;
521     exception_tb = exception_keeper_tb_1; 419     exception_tb = exception_keeper_tb_1;
522     exception_lineno = exception_keeper_lineno_1; 420     exception_lineno = exception_keeper_lineno_1;
588         module___main__, 486         module___main__,
589         NULL, 487         NULL,
590         NULL, 488         NULL,
591         0 489         0
592     ); 490     );
n 593     Nuitka_Function_EnableConstReturnGeneric(result, mod_consts[8]); n 491     Nuitka_Function_EnableConstReturnGeneric(result, mod_consts[7]);
594 492
595     return (PyObject *)result; 493     return (PyObject *)result;
596 } 494 }
597 495
598 496
599 497
600 static PyObject *MAKE_FUNCTION___main__$$$function__3_calledRepeatedly() { 498 static PyObject *MAKE_FUNCTION___main__$$$function__3_calledRepeatedly() {
601     struct Nuitka_FunctionObject *result = Nuitka_Function_New( 499     struct Nuitka_FunctionObject *result = Nuitka_Function_New(
602         impl___main__$$$function__3_calledRepeatedly, 500         impl___main__$$$function__3_calledRepeatedly,
n 603         mod_consts[9], n 501         mod_consts[8],
604 #if PYTHON_VERSION >= 0x300 502 #if PYTHON_VERSION >= 0x300
605         NULL, 503         NULL,
606 #endif 504 #endif
607         codeobj_bbf8d4ea3a54148735f3fe3dd963b111, 505         codeobj_bbf8d4ea3a54148735f3fe3dd963b111,
608         NULL, 506         NULL,
979 877
980     // Module code. 878     // Module code.
981     { 879     {
982         PyObject *tmp_assign_source_1; 880         PyObject *tmp_assign_source_1;
983         tmp_assign_source_1 = Py_None; 881         tmp_assign_source_1 = Py_None;
n 984         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[3], tmp_assign_source_1); n 882         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[2], tmp_assign_source_1);
985     } 883     }
986     { 884     {
987         PyObject *tmp_assign_source_2; 885         PyObject *tmp_assign_source_2;
n 988         tmp_assign_source_2 = mod_consts[4]; n 886         tmp_assign_source_2 = mod_consts[3];
989         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_2); 887         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_2);
990     } 888     }
991     { 889     {
992         PyObject *tmp_assign_source_3; 890         PyObject *tmp_assign_source_3;
993         { 891         {
994             PyObject *hard_module = IMPORT_HARD___FUTURE__(); 892             PyObject *hard_module = IMPORT_HARD___FUTURE__();
n 995             tmp_assign_source_3 = LOOKUP_ATTRIBUTE(tstate, hard_module, mod_consts[6]); n 893             tmp_assign_source_3 = LOOKUP_ATTRIBUTE(tstate, hard_module, mod_consts[5]);
996         } 894         }
997         assert(!(tmp_assign_source_3 == NULL)); 895         assert(!(tmp_assign_source_3 == NULL));
n 998         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_3); n 896         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_3);
999     } 897     }
1000     frame_c6270e5daf315eff3ef31c48ce7cfdf8 = MAKE_MODULE_FRAME(codeobj_c6270e5daf315eff3ef31c48ce7cfdf8, module___main__); 898     frame_c6270e5daf315eff3ef31c48ce7cfdf8 = MAKE_MODULE_FRAME(codeobj_c6270e5daf315eff3ef31c48ce7cfdf8, module___main__);
1001 899
1002     // Push the new frame as the currently active one, and we should be exclusively 900     // Push the new frame as the currently active one, and we should be exclusively
1003     // owning it. 901     // owning it.
1009         PyObject *tmp_assign_source_4; 907         PyObject *tmp_assign_source_4;
1010         PyObject *tmp_name_value_1; 908         PyObject *tmp_name_value_1;
1011         PyObject *tmp_globals_arg_value_1; 909         PyObject *tmp_globals_arg_value_1;
1012         PyObject *tmp_locals_arg_value_1; 910         PyObject *tmp_locals_arg_value_1;
1013         PyObject *tmp_fromlist_value_1; 911         PyObject *tmp_fromlist_value_1;
n 1014         tmp_name_value_1 = mod_consts[7]; n 912         tmp_name_value_1 = mod_consts[6];
1015         tmp_globals_arg_value_1 = (PyObject *)moduledict___main__; 913         tmp_globals_arg_value_1 = (PyObject *)moduledict___main__;
1016         tmp_locals_arg_value_1 = Py_None; 914         tmp_locals_arg_value_1 = Py_None;
1017         tmp_fromlist_value_1 = Py_None; 915         tmp_fromlist_value_1 = Py_None;
1018         frame_c6270e5daf315eff3ef31c48ce7cfdf8->m_frame.f_lineno = 6; 916         frame_c6270e5daf315eff3ef31c48ce7cfdf8->m_frame.f_lineno = 6;
1019         tmp_assign_source_4 = IMPORT_MODULE4(tstate, tmp_name_value_1, tmp_globals_arg_value_1, tmp_locals_arg_value_1, tmp_fromlist_value_1); 917         tmp_assign_source_4 = IMPORT_MODULE4(tstate, tmp_name_value_1, tmp_globals_arg_value_1, tmp_locals_arg_value_1, tmp_fromlist_value_1);
1025 923
1026             exception_lineno = 6; 924             exception_lineno = 6;
1027 925
1028             goto frame_exception_exit_1; 926             goto frame_exception_exit_1;
1029         } 927         }
n 1030         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[7], tmp_assign_source_4); n 928         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_4);
1031     } 929     }
1032     { 930     {
1033         PyObject *tmp_assign_source_5; 931         PyObject *tmp_assign_source_5;
1034 932
1035 933
1049         PyObject *tmp_assign_source_7; 947         PyObject *tmp_assign_source_7;
1050 948
1051 949
1052         tmp_assign_source_7 = MAKE_FUNCTION___main__$$$function__3_calledRepeatedly(); 950         tmp_assign_source_7 = MAKE_FUNCTION___main__$$$function__3_calledRepeatedly();
1053 951
n 1054         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[9], tmp_assign_source_7); n 952         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[8], tmp_assign_source_7);
1055     } 953     }
1056     { 954     {
1057         PyObject *tmp_assign_source_8; 955         PyObject *tmp_assign_source_8;
1058         PyObject *tmp_iter_arg_1; 956         PyObject *tmp_iter_arg_1;
1059         PyObject *tmp_called_instance_1; 957         PyObject *tmp_called_instance_1;
n 1060         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[7]); n 958         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[6]);
1061 959
1062         if (unlikely(tmp_called_instance_1 == NULL)) { 960         if (unlikely(tmp_called_instance_1 == NULL)) {
n 1063             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[7]); n 961             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[6]);
1064         } 962         }
1065 963
1066         assert(!(tmp_called_instance_1 == NULL)); 964         assert(!(tmp_called_instance_1 == NULL));
1067         frame_c6270e5daf315eff3ef31c48ce7cfdf8->m_frame.f_lineno = 37; 965         frame_c6270e5daf315eff3ef31c48ce7cfdf8->m_frame.f_lineno = 37;
1068         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2( 966         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2(
1069             tstate, 967             tstate,
1070             tmp_called_instance_1, 968             tmp_called_instance_1,
n 1071             mod_consts[10], n 969             mod_consts[9],
1072             &PyTuple_GET_ITEM(mod_consts[11], 0) 970             &PyTuple_GET_ITEM(mod_consts[10], 0)
1073         ); 971         );
1074 972
1075         if (tmp_iter_arg_1 == NULL) { 973         if (tmp_iter_arg_1 == NULL) {
1076             assert(HAS_ERROR_OCCURRED(tstate)); 974             assert(HAS_ERROR_OCCURRED(tstate));
1077 975
1127     } 1025     }
1128     { 1026     {
1129         PyObject *tmp_assign_source_10; 1027         PyObject *tmp_assign_source_10;
1130         CHECK_OBJECT(tmp_for_loop_1__iter_value); 1028         CHECK_OBJECT(tmp_for_loop_1__iter_value);
1131         tmp_assign_source_10 = tmp_for_loop_1__iter_value; 1029         tmp_assign_source_10 = tmp_for_loop_1__iter_value;
n 1132         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[12], tmp_assign_source_10); n 1030         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[11], tmp_assign_source_10);
1133     } 1031     }
1134     { 1032     {
1135         PyObject *tmp_called_value_1; 1033         PyObject *tmp_called_value_1;
1136         PyObject *tmp_call_result_1; 1034         PyObject *tmp_call_result_1;
n 1137         tmp_called_value_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[9]); n 1035         tmp_called_value_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[8]);
1138 1036
1139         if (unlikely(tmp_called_value_1 == NULL)) { 1037         if (unlikely(tmp_called_value_1 == NULL)) {
n 1140             tmp_called_value_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[9]); n 1038             tmp_called_value_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[8]);
1141         } 1039         }
1142 1040
1143         if (tmp_called_value_1 == NULL) { 1041         if (tmp_called_value_1 == NULL) {
1144             assert(HAS_ERROR_OCCURRED(tstate)); 1042             assert(HAS_ERROR_OCCURRED(tstate));
1145 1043
1208     Py_DECREF(tmp_for_loop_1__for_iterator); 1106     Py_DECREF(tmp_for_loop_1__for_iterator);
1209     tmp_for_loop_1__for_iterator = NULL; 1107     tmp_for_loop_1__for_iterator = NULL;
1210     { 1108     {
1211         PyObject *tmp_called_value_2; 1109         PyObject *tmp_called_value_2;
1212         PyObject *tmp_call_result_2; 1110         PyObject *tmp_call_result_2;
n 1213         tmp_called_value_2 = LOOKUP_BUILTIN(mod_consts[13]); n 1111         tmp_called_value_2 = LOOKUP_BUILTIN(mod_consts[12]);
1214         assert(tmp_called_value_2 != NULL); 1112         assert(tmp_called_value_2 != NULL);
1215         frame_c6270e5daf315eff3ef31c48ce7cfdf8->m_frame.f_lineno = 40; 1113         frame_c6270e5daf315eff3ef31c48ce7cfdf8->m_frame.f_lineno = 40;
t 1216         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tstate, tmp_called_value_2, mod_consts[14]); t 1114         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tstate, tmp_called_value_2, mod_consts[13]);
1217 1115
1218         if (tmp_call_result_2 == NULL) { 1116         if (tmp_call_result_2 == NULL) {
1219             assert(HAS_ERROR_OCCURRED(tstate)); 1117             assert(HAS_ERROR_OCCURRED(tstate));
1220 1118
1221             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb); 1119             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb);