Construct CallCompiledFunctionKwArgsConstant

Performance Diagrams

Construct CallCompiledFunctionKwArgsConstant 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000CPython 3.10Nuitka (main)Nuitka (develop)Nuitka (factory)16406897388.11538461538461257.0CPython 3.1073505813240.03846153846155393.403304696645Nuitka (main)73506014391.96153846153845393.40300195694107Nuitka (develop)73506014543.8846153846154393.40300195694107Nuitka (factory)Construct CallCompiledFunctionKwArgsConstantTicks Construct CallCompiledFunctionKwArgsConstant 00100000001000000020000000200000003000000030000000400000004000000050000000500000006000000060000000700000007000000080000000800000009000000090000000100000000100000000110000000110000000120000000120000000130000000130000000140000000140000000150000000150000000CPython 3.8Nuitka (main)Nuitka (develop)Nuitka (factory)15816210688.11538461538461257.0CPython 3.870210724240.03846153846155394.4168575523686Nuitka (main)70212514391.96153846153845394.41406082343235Nuitka (develop)70212514543.8846153846154394.41406082343235Nuitka (factory)Construct CallCompiledFunctionKwArgsConstantTicks Construct CallCompiledFunctionKwArgsConstant 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000CPython 2.7Nuitka (main)Nuitka (develop)Nuitka (factory)17110200988.11538461538461257.0CPython 2.761360131240.03846153846155415.4955463052723Nuitka (main)61360122391.96153846153845415.4955593035911Nuitka (develop)61360122543.8846153846154415.4955593035911Nuitka (factory)Construct CallCompiledFunctionKwArgsConstantTicks

Source Code with Construct

    compiled_f(a="some", b="other", c="values")
    compiled_f(a="some", b="new", c="value set")

    # 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

    # 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
14     compiled_f = compiled_func 14     compiled_f = compiled_func
15 15
16     # This is supposed to make a call to a compiled function, which is 16     # This is supposed to make a call to a compiled function, which is
17     # being optimized separately. 17     # being optimized separately.
18     # construct_begin 18     # construct_begin
n 19     compiled_f(a="some", b="random", c="values") n 19  
20     compiled_f(a="some", b="other", c="values") 20  
21     compiled_f(a="some", b="new", c="value set") 21  
22 22
23     # construct_alternative 23     # construct_alternative
t 24   t 24     pass
25   25     # construct_end
26 26
27     return compiled_f 27     return compiled_f
28 28
29 29
30 for x in itertools.repeat(None, 50000): 30 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[19]; n 36 static PyObject *mod_consts[15];
37 #ifndef __NUITKA_NO_ASSERT__ 37 #ifndef __NUITKA_NO_ASSERT__
n 38 static Py_hash_t mod_consts_hash[19]; n 38 static Py_hash_t mod_consts_hash[15];
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(tstate, &mod_consts[0], UNTRANSLATE("__main__")); 49         loadConstantsBlob(tstate, &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 < 19; i++) { n 53         for (int i = 0; i < 15; i++) {
54             mod_consts_hash[i] = DEEP_HASH(tstate, mod_consts[i]); 54             mod_consts_hash[i] = DEEP_HASH(tstate, 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__(PyThreadState *tstate) { 69 void checkModuleConstants___main__(PyThreadState *tstate) {
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 < 19; i++) { n 73     for (int i = 0; i < 15; i++) {
74         assert(mod_consts_hash[i] == DEEP_HASH(tstate, mod_consts[i])); 74         assert(mod_consts_hash[i] == DEEP_HASH(tstate, 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
83 static PyCodeObject *codeobj_6a2aef9136bc45b1f14706d05276734e; 83 static PyCodeObject *codeobj_6a2aef9136bc45b1f14706d05276734e;
84 /* For use in "MainProgram.c". */ 84 /* For use in "MainProgram.c". */
85 PyCodeObject *codeobj_main = NULL; 85 PyCodeObject *codeobj_main = NULL;
86 86
87 static void createModuleCodeObjects(void) { 87 static void createModuleCodeObjects(void) {
n 88     module_filename_obj = mod_consts[6]; CHECK_OBJECT(module_filename_obj); n 88     module_filename_obj = mod_consts[2]; CHECK_OBJECT(module_filename_obj);
89     codeobj_9d60b6787dd186575d37b6c5ce5987d0 = MAKE_CODE_OBJECT(module_filename_obj, 1, CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[16], mod_consts[16], NULL, NULL, 0, 0, 0); 89     codeobj_9d60b6787dd186575d37b6c5ce5987d0 = MAKE_CODE_OBJECT(module_filename_obj, 1, CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[12], mod_consts[12], NULL, NULL, 0, 0, 0);
90     codeobj_main = codeobj_9d60b6787dd186575d37b6c5ce5987d0; 90     codeobj_main = codeobj_9d60b6787dd186575d37b6c5ce5987d0;
n 91     codeobj_db0392ae704eb70462cc808e6ad865ea = MAKE_CODE_OBJECT(module_filename_obj, 13, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[10], mod_consts[10], mod_consts[17], NULL, 0, 0, 0); n 91     codeobj_db0392ae704eb70462cc808e6ad865ea = MAKE_CODE_OBJECT(module_filename_obj, 13, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[6], mod_consts[6], mod_consts[13], NULL, 0, 0, 0);
92     codeobj_6a2aef9136bc45b1f14706d05276734e = MAKE_CODE_OBJECT(module_filename_obj, 9, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[0], mod_consts[0], mod_consts[18], NULL, 3, 0, 0); 92     codeobj_6a2aef9136bc45b1f14706d05276734e = MAKE_CODE_OBJECT(module_filename_obj, 9, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE | CO_FUTURE_PRINT_FUNCTION, mod_consts[0], mod_consts[0], mod_consts[14], NULL, 3, 0, 0);
93 } 93 }
94 94
95 // The module function declarations. 95 // The module function declarations.
96 static PyObject *MAKE_FUNCTION___main__$$$function__1_compiled_func(); 96 static PyObject *MAKE_FUNCTION___main__$$$function__1_compiled_func();
97 97
161     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL; 161     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
162     PyObject *exception_type = NULL; 162     PyObject *exception_type = NULL;
163     PyObject *exception_value = NULL; 163     PyObject *exception_value = NULL;
164     PyTracebackObject *exception_tb = NULL; 164     PyTracebackObject *exception_tb = NULL;
165     NUITKA_MAY_BE_UNUSED int exception_lineno = 0; 165     NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
n 166     NUITKA_MAY_BE_UNUSED nuitka_void tmp_unused; n
167     static struct Nuitka_FrameObject *cache_frame_db0392ae704eb70462cc808e6ad865ea = NULL; 166     static struct Nuitka_FrameObject *cache_frame_db0392ae704eb70462cc808e6ad865ea = NULL;
168     PyObject *tmp_return_value = NULL; 167     PyObject *tmp_return_value = NULL;
169     PyObject *exception_keeper_type_1; 168     PyObject *exception_keeper_type_1;
170     PyObject *exception_keeper_value_1; 169     PyObject *exception_keeper_value_1;
171     PyTracebackObject *exception_keeper_tb_1; 170     PyTracebackObject *exception_keeper_tb_1;
219             goto frame_exception_exit_1; 218             goto frame_exception_exit_1;
220         } 219         }
221         assert(var_compiled_f == NULL); 220         assert(var_compiled_f == NULL);
222         Py_INCREF(tmp_assign_source_1); 221         Py_INCREF(tmp_assign_source_1);
223         var_compiled_f = tmp_assign_source_1; 222         var_compiled_f = tmp_assign_source_1;
n 224     } n
225     {
226         PyObject *tmp_called_value_1;
227         PyObject *tmp_call_result_1;
228         CHECK_OBJECT(var_compiled_f);
229         tmp_called_value_1 = var_compiled_f;
230         frame_db0392ae704eb70462cc808e6ad865ea->m_frame.f_lineno = 19;
231         tmp_call_result_1 = CALL_FUNCTION_WITH_NO_ARGS_KWSPLIT(tstate, tmp_called_value_1, &PyTuple_GET_ITEM(mod_consts[1], 0), mod_consts[2]);
232         if (tmp_call_result_1 == NULL) {
233             assert(HAS_ERROR_OCCURRED(tstate));
234  
235             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb);
236  
237  
238             exception_lineno = 19;
239             type_description_1 = "o";
240             goto frame_exception_exit_1;
241         }
242         Py_DECREF(tmp_call_result_1);
243     }
244     {
245         PyObject *tmp_called_value_2;
246         PyObject *tmp_call_result_2;
247         CHECK_OBJECT(var_compiled_f);
248         tmp_called_value_2 = var_compiled_f;
249         frame_db0392ae704eb70462cc808e6ad865ea->m_frame.f_lineno = 20;
250         tmp_call_result_2 = CALL_FUNCTION_WITH_NO_ARGS_KWSPLIT(tstate, tmp_called_value_2, &PyTuple_GET_ITEM(mod_consts[3], 0), mod_consts[2]);
251         if (tmp_call_result_2 == NULL) {
252             assert(HAS_ERROR_OCCURRED(tstate));
253  
254             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb);
255  
256  
257             exception_lineno = 20;
258             type_description_1 = "o";
259             goto frame_exception_exit_1;
260         }
261         Py_DECREF(tmp_call_result_2);
262     }
263     {
264         PyObject *tmp_called_value_3;
265         PyObject *tmp_call_result_3;
266         CHECK_OBJECT(var_compiled_f);
267         tmp_called_value_3 = var_compiled_f;
268         frame_db0392ae704eb70462cc808e6ad865ea->m_frame.f_lineno = 21;
269         tmp_call_result_3 = CALL_FUNCTION_WITH_NO_ARGS_KWSPLIT(tstate, tmp_called_value_3, &PyTuple_GET_ITEM(mod_consts[4], 0), mod_consts[2]);
270         if (tmp_call_result_3 == NULL) {
271             assert(HAS_ERROR_OCCURRED(tstate));
272  
273             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb);
274  
275  
276             exception_lineno = 21;
277             type_description_1 = "o";
278             goto frame_exception_exit_1;
279         }
280         Py_DECREF(tmp_call_result_3);
281     } 223     }
282 224
283 225
284     // Put the previous frame back on top. 226     // Put the previous frame back on top.
285     popFrameStack(tstate); 227     popFrameStack(tstate);
341     exception_type = NULL; 283     exception_type = NULL;
342     exception_value = NULL; 284     exception_value = NULL;
343     exception_tb = NULL; 285     exception_tb = NULL;
344     exception_lineno = 0; 286     exception_lineno = 0;
345 287
n 346     Py_XDECREF(var_compiled_f); n
347     var_compiled_f = NULL;
348     // Re-raise. 288     // Re-raise.
349     exception_type = exception_keeper_type_1; 289     exception_type = exception_keeper_type_1;
350     exception_value = exception_keeper_value_1; 290     exception_value = exception_keeper_value_1;
351     exception_tb = exception_keeper_tb_1; 291     exception_tb = exception_keeper_tb_1;
352     exception_lineno = exception_keeper_lineno_1; 292     exception_lineno = exception_keeper_lineno_1;
403 343
404 344
405 static PyObject *MAKE_FUNCTION___main__$$$function__2_calledRepeatedly() { 345 static PyObject *MAKE_FUNCTION___main__$$$function__2_calledRepeatedly() {
406     struct Nuitka_FunctionObject *result = Nuitka_Function_New( 346     struct Nuitka_FunctionObject *result = Nuitka_Function_New(
407         impl___main__$$$function__2_calledRepeatedly, 347         impl___main__$$$function__2_calledRepeatedly,
n 408         mod_consts[10], n 348         mod_consts[6],
409 #if PYTHON_VERSION >= 0x300 349 #if PYTHON_VERSION >= 0x300
410         NULL, 350         NULL,
411 #endif 351 #endif
412         codeobj_db0392ae704eb70462cc808e6ad865ea, 352         codeobj_db0392ae704eb70462cc808e6ad865ea,
413         NULL, 353         NULL,
794 734
795     // Module code. 735     // Module code.
796     { 736     {
797         PyObject *tmp_assign_source_1; 737         PyObject *tmp_assign_source_1;
798         tmp_assign_source_1 = Py_None; 738         tmp_assign_source_1 = Py_None;
n 799         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_1); n 739         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[1], tmp_assign_source_1);
800     } 740     }
801     { 741     {
802         PyObject *tmp_assign_source_2; 742         PyObject *tmp_assign_source_2;
n 803         tmp_assign_source_2 = mod_consts[6]; n 743         tmp_assign_source_2 = mod_consts[2];
804         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[7], tmp_assign_source_2); 744         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[3], tmp_assign_source_2);
805     } 745     }
806     { 746     {
807         PyObject *tmp_assign_source_3; 747         PyObject *tmp_assign_source_3;
808         { 748         {
809             PyObject *hard_module = IMPORT_HARD___FUTURE__(); 749             PyObject *hard_module = IMPORT_HARD___FUTURE__();
n 810             tmp_assign_source_3 = LOOKUP_ATTRIBUTE(tstate, hard_module, mod_consts[8]); n 750             tmp_assign_source_3 = LOOKUP_ATTRIBUTE(tstate, hard_module, mod_consts[4]);
811         } 751         }
812         assert(!(tmp_assign_source_3 == NULL)); 752         assert(!(tmp_assign_source_3 == NULL));
n 813         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[8], tmp_assign_source_3); n 753         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_3);
814     } 754     }
815     frame_9d60b6787dd186575d37b6c5ce5987d0 = MAKE_MODULE_FRAME(codeobj_9d60b6787dd186575d37b6c5ce5987d0, module___main__); 755     frame_9d60b6787dd186575d37b6c5ce5987d0 = MAKE_MODULE_FRAME(codeobj_9d60b6787dd186575d37b6c5ce5987d0, module___main__);
816 756
817     // Push the new frame as the currently active one, and we should be exclusively 757     // Push the new frame as the currently active one, and we should be exclusively
818     // owning it. 758     // owning it.
824         PyObject *tmp_assign_source_4; 764         PyObject *tmp_assign_source_4;
825         PyObject *tmp_name_value_1; 765         PyObject *tmp_name_value_1;
826         PyObject *tmp_globals_arg_value_1; 766         PyObject *tmp_globals_arg_value_1;
827         PyObject *tmp_locals_arg_value_1; 767         PyObject *tmp_locals_arg_value_1;
828         PyObject *tmp_fromlist_value_1; 768         PyObject *tmp_fromlist_value_1;
n 829         tmp_name_value_1 = mod_consts[9]; n 769         tmp_name_value_1 = mod_consts[5];
830         tmp_globals_arg_value_1 = (PyObject *)moduledict___main__; 770         tmp_globals_arg_value_1 = (PyObject *)moduledict___main__;
831         tmp_locals_arg_value_1 = Py_None; 771         tmp_locals_arg_value_1 = Py_None;
832         tmp_fromlist_value_1 = Py_None; 772         tmp_fromlist_value_1 = Py_None;
833         frame_9d60b6787dd186575d37b6c5ce5987d0->m_frame.f_lineno = 6; 773         frame_9d60b6787dd186575d37b6c5ce5987d0->m_frame.f_lineno = 6;
834         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); 774         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);
840 780
841             exception_lineno = 6; 781             exception_lineno = 6;
842 782
843             goto frame_exception_exit_1; 783             goto frame_exception_exit_1;
844         } 784         }
n 845         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[9], tmp_assign_source_4); n 785         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_4);
846     } 786     }
847     { 787     {
848         PyObject *tmp_assign_source_5; 788         PyObject *tmp_assign_source_5;
849 789
850 790
856         PyObject *tmp_assign_source_6; 796         PyObject *tmp_assign_source_6;
857 797
858 798
859         tmp_assign_source_6 = MAKE_FUNCTION___main__$$$function__2_calledRepeatedly(); 799         tmp_assign_source_6 = MAKE_FUNCTION___main__$$$function__2_calledRepeatedly();
860 800
n 861         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[10], tmp_assign_source_6); n 801         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_6);
862     } 802     }
863     { 803     {
864         PyObject *tmp_assign_source_7; 804         PyObject *tmp_assign_source_7;
865         PyObject *tmp_iter_arg_1; 805         PyObject *tmp_iter_arg_1;
866         PyObject *tmp_called_instance_1; 806         PyObject *tmp_called_instance_1;
n 867         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[9]); n 807         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[5]);
868 808
869         if (unlikely(tmp_called_instance_1 == NULL)) { 809         if (unlikely(tmp_called_instance_1 == NULL)) {
n 870             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[9]); n 810             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[5]);
871         } 811         }
872 812
873         assert(!(tmp_called_instance_1 == NULL)); 813         assert(!(tmp_called_instance_1 == NULL));
874         frame_9d60b6787dd186575d37b6c5ce5987d0->m_frame.f_lineno = 30; 814         frame_9d60b6787dd186575d37b6c5ce5987d0->m_frame.f_lineno = 30;
875         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2( 815         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2(
876             tstate, 816             tstate,
877             tmp_called_instance_1, 817             tmp_called_instance_1,
n 878             mod_consts[11], n 818             mod_consts[7],
879             &PyTuple_GET_ITEM(mod_consts[12], 0) 819             &PyTuple_GET_ITEM(mod_consts[8], 0)
880         ); 820         );
881 821
882         if (tmp_iter_arg_1 == NULL) { 822         if (tmp_iter_arg_1 == NULL) {
883             assert(HAS_ERROR_OCCURRED(tstate)); 823             assert(HAS_ERROR_OCCURRED(tstate));
884 824
934     } 874     }
935     { 875     {
936         PyObject *tmp_assign_source_9; 876         PyObject *tmp_assign_source_9;
937         CHECK_OBJECT(tmp_for_loop_1__iter_value); 877         CHECK_OBJECT(tmp_for_loop_1__iter_value);
938         tmp_assign_source_9 = tmp_for_loop_1__iter_value; 878         tmp_assign_source_9 = tmp_for_loop_1__iter_value;
n 939         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[13], tmp_assign_source_9); n 879         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[9], tmp_assign_source_9);
940     } 880     }
941     { 881     {
942         PyObject *tmp_called_value_1; 882         PyObject *tmp_called_value_1;
943         PyObject *tmp_call_result_1; 883         PyObject *tmp_call_result_1;
n 944         tmp_called_value_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[10]); n 884         tmp_called_value_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[6]);
945 885
946         if (unlikely(tmp_called_value_1 == NULL)) { 886         if (unlikely(tmp_called_value_1 == NULL)) {
n 947             tmp_called_value_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[10]); n 887             tmp_called_value_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[6]);
948         } 888         }
949 889
950         if (tmp_called_value_1 == NULL) { 890         if (tmp_called_value_1 == NULL) {
951             assert(HAS_ERROR_OCCURRED(tstate)); 891             assert(HAS_ERROR_OCCURRED(tstate));
952 892
1015     Py_DECREF(tmp_for_loop_1__for_iterator); 955     Py_DECREF(tmp_for_loop_1__for_iterator);
1016     tmp_for_loop_1__for_iterator = NULL; 956     tmp_for_loop_1__for_iterator = NULL;
1017     { 957     {
1018         PyObject *tmp_called_value_2; 958         PyObject *tmp_called_value_2;
1019         PyObject *tmp_call_result_2; 959         PyObject *tmp_call_result_2;
n 1020         tmp_called_value_2 = LOOKUP_BUILTIN(mod_consts[14]); n 960         tmp_called_value_2 = LOOKUP_BUILTIN(mod_consts[10]);
1021         assert(tmp_called_value_2 != NULL); 961         assert(tmp_called_value_2 != NULL);
1022         frame_9d60b6787dd186575d37b6c5ce5987d0->m_frame.f_lineno = 33; 962         frame_9d60b6787dd186575d37b6c5ce5987d0->m_frame.f_lineno = 33;
t 1023         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tstate, tmp_called_value_2, mod_consts[15]); t 963         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tstate, tmp_called_value_2, mod_consts[11]);
1024 964
1025         if (tmp_call_result_2 == NULL) { 965         if (tmp_call_result_2 == NULL) {
1026             assert(HAS_ERROR_OCCURRED(tstate)); 966             assert(HAS_ERROR_OCCURRED(tstate));
1027 967
1028             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb); 968             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb);