Construct CallCompiledFunctionKwArgsVariable

Performance Diagrams

Construct CallCompiledFunctionKwArgsVariable 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000CPython 3.10Nuitka (main)Nuitka (develop)Nuitka (factory)16586802688.11538461538461257.00000000000006CPython 3.1074350020240.03846153846155393.3463941623269Nuitka (main)74350016391.96153846153845393.34640012165227Nuitka (develop)74350016543.8846153846154393.34640012165227Nuitka (factory)Construct CallCompiledFunctionKwArgsVariableTicks Construct CallCompiledFunctionKwArgsVariable 00100000001000000020000000200000003000000030000000400000004000000050000000500000006000000060000000700000007000000080000000800000009000000090000000100000000100000000110000000110000000120000000120000000130000000130000000140000000140000000150000000150000000CPython 3.8Nuitka (main)Nuitka (develop)Nuitka (factory)15906230788.11538461538461257.0CPython 3.871049907240.03846153846155393.7339534244469Nuitka (main)71049907391.96153846153845393.7339534244469Nuitka (develop)71049907543.8846153846154393.7339534244469Nuitka (factory)Construct CallCompiledFunctionKwArgsVariableTicks Construct CallCompiledFunctionKwArgsVariable 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000CPython 2.7Nuitka (main)Nuitka (develop)Nuitka (factory)17200161388.11538461538461257.0CPython 2.762050096240.03846153846155414.96777099119413Nuitka (main)62050067391.96153846153845414.9678126556066Nuitka (develop)62050067543.8846153846154414.9678126556066Nuitka (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_679d47ad7213344ea7e14841c7f03135; 84 static PyCodeObject *codeobj_679d47ad7213344ea7e14841c7f03135;
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_d67b56b3214104f9150d8a81e418e694 = 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_d67b56b3214104f9150d8a81e418e694 = 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_d67b56b3214104f9150d8a81e418e694; 91     codeobj_main = codeobj_d67b56b3214104f9150d8a81e418e694;
n 92     codeobj_17c6910d4a529669681171172e7b4054 = 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_17c6910d4a529669681171172e7b4054 = 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_956228ab2380d284cf49977f648b8a01 = 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_956228ab2380d284cf49977f648b8a01 = 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_679d47ad7213344ea7e14841c7f03135 = 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_679d47ad7213344ea7e14841c7f03135 = 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_17c6910d4a529669681171172e7b4054 = NULL; 174     static struct Nuitka_FrameObject *cache_frame_17c6910d4a529669681171172e7b4054 = 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_17c6910d4a529669681171172e7b4054->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_17c6910d4a529669681171172e7b4054->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_17c6910d4a529669681171172e7b4054->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_17c6910d4a529669681171172e7b4054, 505         codeobj_17c6910d4a529669681171172e7b4054,
608         NULL, 506         NULL,
987 885
988     // Module code. 886     // Module code.
989     { 887     {
990         PyObject *tmp_assign_source_1; 888         PyObject *tmp_assign_source_1;
991         tmp_assign_source_1 = Py_None; 889         tmp_assign_source_1 = Py_None;
n 992         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[3], tmp_assign_source_1); n 890         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[2], tmp_assign_source_1);
993     } 891     }
994     { 892     {
995         PyObject *tmp_assign_source_2; 893         PyObject *tmp_assign_source_2;
n 996         tmp_assign_source_2 = mod_consts[4]; n 894         tmp_assign_source_2 = mod_consts[3];
997         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_2); 895         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_2);
998     } 896     }
999     { 897     {
1000         PyObject *tmp_assign_source_3; 898         PyObject *tmp_assign_source_3;
1001         { 899         {
1002             PyObject *hard_module = IMPORT_HARD___FUTURE__(); 900             PyObject *hard_module = IMPORT_HARD___FUTURE__();
n 1003             tmp_assign_source_3 = LOOKUP_ATTRIBUTE(tstate, hard_module, mod_consts[6]); n 901             tmp_assign_source_3 = LOOKUP_ATTRIBUTE(tstate, hard_module, mod_consts[5]);
1004         } 902         }
1005         assert(!(tmp_assign_source_3 == NULL)); 903         assert(!(tmp_assign_source_3 == NULL));
n 1006         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_3); n 904         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_3);
1007     } 905     }
1008     frame_d67b56b3214104f9150d8a81e418e694 = MAKE_MODULE_FRAME(codeobj_d67b56b3214104f9150d8a81e418e694, module___main__); 906     frame_d67b56b3214104f9150d8a81e418e694 = MAKE_MODULE_FRAME(codeobj_d67b56b3214104f9150d8a81e418e694, module___main__);
1009 907
1010     // Push the new frame as the currently active one, and we should be exclusively 908     // Push the new frame as the currently active one, and we should be exclusively
1011     // owning it. 909     // owning it.
1017         PyObject *tmp_assign_source_4; 915         PyObject *tmp_assign_source_4;
1018         PyObject *tmp_name_value_1; 916         PyObject *tmp_name_value_1;
1019         PyObject *tmp_globals_arg_value_1; 917         PyObject *tmp_globals_arg_value_1;
1020         PyObject *tmp_locals_arg_value_1; 918         PyObject *tmp_locals_arg_value_1;
1021         PyObject *tmp_fromlist_value_1; 919         PyObject *tmp_fromlist_value_1;
n 1022         tmp_name_value_1 = mod_consts[7]; n 920         tmp_name_value_1 = mod_consts[6];
1023         tmp_globals_arg_value_1 = (PyObject *)moduledict___main__; 921         tmp_globals_arg_value_1 = (PyObject *)moduledict___main__;
1024         tmp_locals_arg_value_1 = Py_None; 922         tmp_locals_arg_value_1 = Py_None;
1025         tmp_fromlist_value_1 = Py_None; 923         tmp_fromlist_value_1 = Py_None;
1026         frame_d67b56b3214104f9150d8a81e418e694->m_frame.f_lineno = 6; 924         frame_d67b56b3214104f9150d8a81e418e694->m_frame.f_lineno = 6;
1027         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); 925         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);
1033 931
1034             exception_lineno = 6; 932             exception_lineno = 6;
1035 933
1036             goto frame_exception_exit_1; 934             goto frame_exception_exit_1;
1037         } 935         }
n 1038         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[7], tmp_assign_source_4); n 936         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_4);
1039     } 937     }
1040     { 938     {
1041         PyObject *tmp_assign_source_5; 939         PyObject *tmp_assign_source_5;
1042 940
1043 941
1057         PyObject *tmp_assign_source_7; 955         PyObject *tmp_assign_source_7;
1058 956
1059 957
1060         tmp_assign_source_7 = MAKE_FUNCTION___main__$$$function__3_calledRepeatedly(); 958         tmp_assign_source_7 = MAKE_FUNCTION___main__$$$function__3_calledRepeatedly();
1061 959
n 1062         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[9], tmp_assign_source_7); n 960         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[8], tmp_assign_source_7);
1063     } 961     }
1064     { 962     {
1065         PyObject *tmp_assign_source_8; 963         PyObject *tmp_assign_source_8;
1066         PyObject *tmp_iter_arg_1; 964         PyObject *tmp_iter_arg_1;
1067         PyObject *tmp_called_instance_1; 965         PyObject *tmp_called_instance_1;
n 1068         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[7]); n 966         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[6]);
1069 967
1070         if (unlikely(tmp_called_instance_1 == NULL)) { 968         if (unlikely(tmp_called_instance_1 == NULL)) {
n 1071             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[7]); n 969             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[6]);
1072         } 970         }
1073 971
1074         assert(!(tmp_called_instance_1 == NULL)); 972         assert(!(tmp_called_instance_1 == NULL));
1075         frame_d67b56b3214104f9150d8a81e418e694->m_frame.f_lineno = 37; 973         frame_d67b56b3214104f9150d8a81e418e694->m_frame.f_lineno = 37;
1076         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2( 974         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2(
1077             tstate, 975             tstate,
1078             tmp_called_instance_1, 976             tmp_called_instance_1,
n 1079             mod_consts[10], n 977             mod_consts[9],
1080             &PyTuple_GET_ITEM(mod_consts[11], 0) 978             &PyTuple_GET_ITEM(mod_consts[10], 0)
1081         ); 979         );
1082 980
1083         if (tmp_iter_arg_1 == NULL) { 981         if (tmp_iter_arg_1 == NULL) {
1084             assert(HAS_ERROR_OCCURRED(tstate)); 982             assert(HAS_ERROR_OCCURRED(tstate));
1085 983
1135     } 1033     }
1136     { 1034     {
1137         PyObject *tmp_assign_source_10; 1035         PyObject *tmp_assign_source_10;
1138         CHECK_OBJECT(tmp_for_loop_1__iter_value); 1036         CHECK_OBJECT(tmp_for_loop_1__iter_value);
1139         tmp_assign_source_10 = tmp_for_loop_1__iter_value; 1037         tmp_assign_source_10 = tmp_for_loop_1__iter_value;
n 1140         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[12], tmp_assign_source_10); n 1038         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[11], tmp_assign_source_10);
1141     } 1039     }
1142     { 1040     {
1143         PyObject *tmp_called_value_1; 1041         PyObject *tmp_called_value_1;
1144         PyObject *tmp_call_result_1; 1042         PyObject *tmp_call_result_1;
n 1145         tmp_called_value_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[9]); n 1043         tmp_called_value_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[8]);
1146 1044
1147         if (unlikely(tmp_called_value_1 == NULL)) { 1045         if (unlikely(tmp_called_value_1 == NULL)) {
n 1148             tmp_called_value_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[9]); n 1046             tmp_called_value_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(tstate, mod_consts[8]);
1149         } 1047         }
1150 1048
1151         if (tmp_called_value_1 == NULL) { 1049         if (tmp_called_value_1 == NULL) {
1152             assert(HAS_ERROR_OCCURRED(tstate)); 1050             assert(HAS_ERROR_OCCURRED(tstate));
1153 1051
1216     Py_DECREF(tmp_for_loop_1__for_iterator); 1114     Py_DECREF(tmp_for_loop_1__for_iterator);
1217     tmp_for_loop_1__for_iterator = NULL; 1115     tmp_for_loop_1__for_iterator = NULL;
1218     { 1116     {
1219         PyObject *tmp_called_value_2; 1117         PyObject *tmp_called_value_2;
1220         PyObject *tmp_call_result_2; 1118         PyObject *tmp_call_result_2;
n 1221         tmp_called_value_2 = LOOKUP_BUILTIN(mod_consts[13]); n 1119         tmp_called_value_2 = LOOKUP_BUILTIN(mod_consts[12]);
1222         assert(tmp_called_value_2 != NULL); 1120         assert(tmp_called_value_2 != NULL);
1223         frame_d67b56b3214104f9150d8a81e418e694->m_frame.f_lineno = 40; 1121         frame_d67b56b3214104f9150d8a81e418e694->m_frame.f_lineno = 40;
t 1224         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tstate, tmp_called_value_2, mod_consts[14]); t 1122         tmp_call_result_2 = CALL_FUNCTION_WITH_POSARGS1(tstate, tmp_called_value_2, mod_consts[13]);
1225 1123
1226         if (tmp_call_result_2 == NULL) { 1124         if (tmp_call_result_2 == NULL) {
1227             assert(HAS_ERROR_OCCURRED(tstate)); 1125             assert(HAS_ERROR_OCCURRED(tstate));
1228 1126
1229             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb); 1127             FETCH_ERROR_OCCURRED(tstate, &exception_type, &exception_value, &exception_tb);