Construct CallUncompiledFunctionPosArgs

Performance Diagrams

Construct CallUncompiledFunctionPosArgs 00100000001000000020000000200000003000000030000000400000004000000050000000500000006000000060000000700000007000000080000000800000009000000090000000100000000100000000110000000110000000CPython 2.7Nuitka (master)Nuitka (develop)Nuitka (factory)11705694388.11538461538461257.0CPython 2.784939336240.03846153846155324.80251220750546Nuitka (master)84939360391.96153846153845324.80246154182873Nuitka (develop)84939360543.8846153846154324.80246154182873Nuitka (factory)Construct CallUncompiledFunctionPosArgsTicks Construct CallUncompiledFunctionPosArgs 00100000001000000020000000200000003000000030000000400000004000000050000000500000006000000060000000700000007000000080000000800000009000000090000000100000000100000000CPython 3.8Nuitka (master)Nuitka (develop)Nuitka (factory)10760511988.11538461538461257.0CPython 3.877884005240.03846153846155325.25460150560025Nuitka (master)77883896391.96153846153845325.25485182433204Nuitka (develop)77883896543.8846153846154325.25485182433204Nuitka (factory)Construct CallUncompiledFunctionPosArgsTicks

Source Code with Construct

from __future__ import print_function

exec("""
def python_func(a,b,c,d,e,f):
    pass
""")

def calledRepeatedly():
    # This is supposed to make a call to a non-compiled function, which is
    # being optimized separately.
    python_f = python_func

# construct_begin
    python_f("some", "random", "values", "to", "check", "call")
    python_f("some", "other", "values", "to", "check", "call")
    python_f("some", "new", "values", "to", "check", "call")
# construct_alternative



    return python_f

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

print("OK.")

Source Code without Construct

from __future__ import print_function

exec("""
def python_func(a,b,c,d,e,f):
    pass
""")

def calledRepeatedly():
    # This is supposed to make a call to a non-compiled function, which is
    # being optimized separately.
    python_f = python_func

# construct_begin



# construct_alternative
    pass
# construct_end

    return python_f

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

print("OK.")

Context Diff of Source Code


Construct
Baseline
28     # This is supposed to make a call to a non-compiled function, which is 28     # This is supposed to make a call to a non-compiled function, which is
29     # being optimized separately. 29     # being optimized separately.
30     python_f = python_func 30     python_f = python_func
31 31
32 # construct_begin 32 # construct_begin
n 33     python_f("some", "random", "values", "to", "check", "call") n
34     python_f("some", "other", "values", "to", "check", "call")
35     python_f("some", "new", "values", "to", "check", "call")
36 # construct_alternative
37 33
38 34
t t 35  
36 # construct_alternative
37     pass
38 # construct_end
39 39
40     return python_f 40     return python_f
41 41
42 import itertools 42 import itertools
43 for x in itertools.repeat(None, 50000): 43 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[23]; n 36 static PyObject *mod_consts[20];
37 37
38 static PyObject *module_filename_obj = NULL; 38 static PyObject *module_filename_obj = NULL;
39 39
40 /* Indicator if this modules private constants were created yet. */ 40 /* Indicator if this modules private constants were created yet. */
41 static bool constants_created = false; 41 static bool constants_created = false;
70 static PyCodeObject *codeobj_e83c3edc6ec9b8073d4f5bbcbac765dc; 70 static PyCodeObject *codeobj_e83c3edc6ec9b8073d4f5bbcbac765dc;
71 /* For use in "MainProgram.c". */ 71 /* For use in "MainProgram.c". */
72 PyCodeObject *codeobj_main = NULL; 72 PyCodeObject *codeobj_main = NULL;
73 73
74 static void createModuleCodeObjects(void) { 74 static void createModuleCodeObjects(void) {
n 75     module_filename_obj = mod_consts[5]; CHECK_OBJECT(module_filename_obj); n 75     module_filename_obj = mod_consts[2]; CHECK_OBJECT(module_filename_obj);
76     codeobj_4a6d24b9f1cf95c7ad7f1404eaa142f2 = MAKE_CODEOBJECT(module_filename_obj, 1, CO_NOFREE, mod_consts[21], NULL, NULL, 0, 0, 0); 76     codeobj_4a6d24b9f1cf95c7ad7f1404eaa142f2 = MAKE_CODEOBJECT(module_filename_obj, 1, CO_NOFREE, mod_consts[18], NULL, NULL, 0, 0, 0);
77     codeobj_e83c3edc6ec9b8073d4f5bbcbac765dc = MAKE_CODEOBJECT(module_filename_obj, 27, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE, mod_consts[13], mod_consts[22], NULL, 0, 0, 0); 77     codeobj_e83c3edc6ec9b8073d4f5bbcbac765dc = MAKE_CODEOBJECT(module_filename_obj, 27, CO_OPTIMIZED | CO_NEWLOCALS | CO_NOFREE, mod_consts[10], mod_consts[19], NULL, 0, 0, 0);
78 } 78 }
79 79
80 // The module function declarations. 80 // The module function declarations.
81 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly(); 81 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly();
82 82
94     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL; 94     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
95     PyObject *exception_type = NULL; 95     PyObject *exception_type = NULL;
96     PyObject *exception_value = NULL; 96     PyObject *exception_value = NULL;
97     PyTracebackObject *exception_tb = NULL; 97     PyTracebackObject *exception_tb = NULL;
98     NUITKA_MAY_BE_UNUSED int exception_lineno = 0; 98     NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
n 99     NUITKA_MAY_BE_UNUSED nuitka_void tmp_unused; n
100     static struct Nuitka_FrameObject *cache_frame_e83c3edc6ec9b8073d4f5bbcbac765dc = NULL; 99     static struct Nuitka_FrameObject *cache_frame_e83c3edc6ec9b8073d4f5bbcbac765dc = NULL;
101     PyObject *tmp_return_value = NULL; 100     PyObject *tmp_return_value = NULL;
102     PyObject *exception_keeper_type_1; 101     PyObject *exception_keeper_type_1;
103     PyObject *exception_keeper_value_1; 102     PyObject *exception_keeper_value_1;
104     PyTracebackObject *exception_keeper_tb_1; 103     PyTracebackObject *exception_keeper_tb_1;
152             goto frame_exception_exit_1; 151             goto frame_exception_exit_1;
153         } 152         }
154         assert(var_python_f == NULL); 153         assert(var_python_f == NULL);
155         Py_INCREF(tmp_assign_source_1); 154         Py_INCREF(tmp_assign_source_1);
156         var_python_f = tmp_assign_source_1; 155         var_python_f = tmp_assign_source_1;
n 157     } n
158     {
159         PyObject *tmp_called_name_1;
160         PyObject *tmp_call_result_1;
161         CHECK_OBJECT(var_python_f);
162         tmp_called_name_1 = var_python_f;
163         frame_e83c3edc6ec9b8073d4f5bbcbac765dc->m_frame.f_lineno = 33;
164         tmp_call_result_1 = CALL_FUNCTION_WITH_ARGS6(tmp_called_name_1, &PyTuple_GET_ITEM(mod_consts[1], 0));
165  
166         if (tmp_call_result_1 == NULL) {
167             assert(ERROR_OCCURRED());
168  
169             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
170  
171  
172             exception_lineno = 33;
173             type_description_1 = "o";
174             goto frame_exception_exit_1;
175         }
176         Py_DECREF(tmp_call_result_1);
177     }
178     {
179         PyObject *tmp_called_name_2;
180         PyObject *tmp_call_result_2;
181         CHECK_OBJECT(var_python_f);
182         tmp_called_name_2 = var_python_f;
183         frame_e83c3edc6ec9b8073d4f5bbcbac765dc->m_frame.f_lineno = 34;
184         tmp_call_result_2 = CALL_FUNCTION_WITH_ARGS6(tmp_called_name_2, &PyTuple_GET_ITEM(mod_consts[2], 0));
185  
186         if (tmp_call_result_2 == NULL) {
187             assert(ERROR_OCCURRED());
188  
189             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
190  
191  
192             exception_lineno = 34;
193             type_description_1 = "o";
194             goto frame_exception_exit_1;
195         }
196         Py_DECREF(tmp_call_result_2);
197     }
198     {
199         PyObject *tmp_called_name_3;
200         PyObject *tmp_call_result_3;
201         CHECK_OBJECT(var_python_f);
202         tmp_called_name_3 = var_python_f;
203         frame_e83c3edc6ec9b8073d4f5bbcbac765dc->m_frame.f_lineno = 35;
204         tmp_call_result_3 = CALL_FUNCTION_WITH_ARGS6(tmp_called_name_3, &PyTuple_GET_ITEM(mod_consts[3], 0));
205  
206         if (tmp_call_result_3 == NULL) {
207             assert(ERROR_OCCURRED());
208  
209             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
210  
211  
212             exception_lineno = 35;
213             type_description_1 = "o";
214             goto frame_exception_exit_1;
215         }
216         Py_DECREF(tmp_call_result_3);
217     } 156     }
218 157
219 #if 0 158 #if 0
220     RESTORE_FRAME_EXCEPTION(frame_e83c3edc6ec9b8073d4f5bbcbac765dc); 159     RESTORE_FRAME_EXCEPTION(frame_e83c3edc6ec9b8073d4f5bbcbac765dc);
221 #endif 160 #endif
286     exception_type = NULL; 225     exception_type = NULL;
287     exception_value = NULL; 226     exception_value = NULL;
288     exception_tb = NULL; 227     exception_tb = NULL;
289     exception_lineno = 0; 228     exception_lineno = 0;
290 229
n 291     Py_XDECREF(var_python_f); n
292     var_python_f = NULL;
293     // Re-raise. 230     // Re-raise.
294     exception_type = exception_keeper_type_1; 231     exception_type = exception_keeper_type_1;
295     exception_value = exception_keeper_value_1; 232     exception_value = exception_keeper_value_1;
296     exception_tb = exception_keeper_tb_1; 233     exception_tb = exception_keeper_tb_1;
297     exception_lineno = exception_keeper_lineno_1; 234     exception_lineno = exception_keeper_lineno_1;
322 259
323 260
324 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly() { 261 static PyObject *MAKE_FUNCTION___main__$$$function__1_calledRepeatedly() {
325     struct Nuitka_FunctionObject *result = Nuitka_Function_New( 262     struct Nuitka_FunctionObject *result = Nuitka_Function_New(
326         impl___main__$$$function__1_calledRepeatedly, 263         impl___main__$$$function__1_calledRepeatedly,
n 327         mod_consts[13], n 264         mod_consts[10],
328 #if PYTHON_VERSION >= 0x300 265 #if PYTHON_VERSION >= 0x300
329         NULL, 266         NULL,
330 #endif 267 #endif
331         codeobj_e83c3edc6ec9b8073d4f5bbcbac765dc, 268         codeobj_e83c3edc6ec9b8073d4f5bbcbac765dc,
332         NULL, 269         NULL,
710 647
711     // Module code. 648     // Module code.
712     { 649     {
713         PyObject *tmp_assign_source_1; 650         PyObject *tmp_assign_source_1;
714         tmp_assign_source_1 = Py_None; 651         tmp_assign_source_1 = Py_None;
n 715         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_1); n 652         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[1], tmp_assign_source_1);
716     } 653     }
717     { 654     {
718         PyObject *tmp_assign_source_2; 655         PyObject *tmp_assign_source_2;
n 719         tmp_assign_source_2 = mod_consts[5]; n 656         tmp_assign_source_2 = mod_consts[2];
720         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_2); 657         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[3], tmp_assign_source_2);
721     } 658     }
722     { 659     {
723         PyObject *tmp_assign_source_3; 660         PyObject *tmp_assign_source_3;
724         tmp_assign_source_3 = Py_None; 661         tmp_assign_source_3 = Py_None;
n 725         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[7], tmp_assign_source_3); n 662         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[4], tmp_assign_source_3);
726     } 663     }
727     { 664     {
728         PyObject *tmp_assign_source_4; 665         PyObject *tmp_assign_source_4;
729         tmp_assign_source_4 = PyDict_New(); 666         tmp_assign_source_4 = PyDict_New();
n 730         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[8], tmp_assign_source_4); n 667         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[5], tmp_assign_source_4);
731     } 668     }
732     { 669     {
733         PyObject *tmp_assign_source_5; 670         PyObject *tmp_assign_source_5;
734         { 671         {
735             PyObject *hard_module = IMPORT_HARD___FUTURE__(); 672             PyObject *hard_module = IMPORT_HARD___FUTURE__();
n 736             tmp_assign_source_5 = LOOKUP_ATTRIBUTE(hard_module, mod_consts[9]); n 673             tmp_assign_source_5 = LOOKUP_ATTRIBUTE(hard_module, mod_consts[6]);
737         } 674         }
738 675
739         assert(!(tmp_assign_source_5 == NULL)); 676         assert(!(tmp_assign_source_5 == NULL));
n 740         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[9], tmp_assign_source_5); n 677         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[6], tmp_assign_source_5);
741     } 678     }
742     // Frame without reuse. 679     // Frame without reuse.
743     frame_4a6d24b9f1cf95c7ad7f1404eaa142f2 = MAKE_MODULE_FRAME(codeobj_4a6d24b9f1cf95c7ad7f1404eaa142f2, module___main__); 680     frame_4a6d24b9f1cf95c7ad7f1404eaa142f2 = MAKE_MODULE_FRAME(codeobj_4a6d24b9f1cf95c7ad7f1404eaa142f2, module___main__);
744 681
745     // Push the new frame as the currently active one, and we should be exclusively 682     // Push the new frame as the currently active one, and we should be exclusively
842         { 779         {
843             PyObject *tmp_eval_source_1; 780             PyObject *tmp_eval_source_1;
844             PyObject *tmp_eval_globals_1; 781             PyObject *tmp_eval_globals_1;
845             PyObject *tmp_eval_locals_1; 782             PyObject *tmp_eval_locals_1;
846             PyObject *tmp_eval_compiled_1; 783             PyObject *tmp_eval_compiled_1;
n 847             tmp_eval_source_1 = mod_consts[10]; n 784             tmp_eval_source_1 = mod_consts[7];
848             CHECK_OBJECT(tmp_exec_call_1__globals); 785             CHECK_OBJECT(tmp_exec_call_1__globals);
849             tmp_eval_globals_1 = tmp_exec_call_1__globals; 786             tmp_eval_globals_1 = tmp_exec_call_1__globals;
850             CHECK_OBJECT(tmp_exec_call_1__locals); 787             CHECK_OBJECT(tmp_exec_call_1__locals);
851             tmp_eval_locals_1 = tmp_exec_call_1__locals; 788             tmp_eval_locals_1 = tmp_exec_call_1__locals;
n 852             tmp_eval_compiled_1 = COMPILE_CODE(tmp_eval_source_1, mod_consts[11], mod_consts[12], NULL, NULL, NULL); n 789             tmp_eval_compiled_1 = COMPILE_CODE(tmp_eval_source_1, mod_consts[8], mod_consts[9], NULL, NULL, NULL);
853             if (tmp_eval_compiled_1 == NULL) { 790             if (tmp_eval_compiled_1 == NULL) {
854                 assert(ERROR_OCCURRED()); 791                 assert(ERROR_OCCURRED());
855 792
856                 FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb); 793                 FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
857 794
919         PyObject *tmp_assign_source_10; 856         PyObject *tmp_assign_source_10;
920 857
921 858
922         tmp_assign_source_10 = MAKE_FUNCTION___main__$$$function__1_calledRepeatedly(); 859         tmp_assign_source_10 = MAKE_FUNCTION___main__$$$function__1_calledRepeatedly();
923 860
n 924         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[13], tmp_assign_source_10); n 861         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[10], tmp_assign_source_10);
925     } 862     }
926     { 863     {
927         PyObject *tmp_assign_source_11; 864         PyObject *tmp_assign_source_11;
928         PyObject *tmp_name_name_1; 865         PyObject *tmp_name_name_1;
929         PyObject *tmp_globals_arg_name_1; 866         PyObject *tmp_globals_arg_name_1;
930         PyObject *tmp_locals_arg_name_1; 867         PyObject *tmp_locals_arg_name_1;
931         PyObject *tmp_fromlist_name_1; 868         PyObject *tmp_fromlist_name_1;
932         PyObject *tmp_level_name_1; 869         PyObject *tmp_level_name_1;
n 933         tmp_name_name_1 = mod_consts[14]; n 870         tmp_name_name_1 = mod_consts[11];
934         tmp_globals_arg_name_1 = (PyObject *)moduledict___main__; 871         tmp_globals_arg_name_1 = (PyObject *)moduledict___main__;
935         tmp_locals_arg_name_1 = Py_None; 872         tmp_locals_arg_name_1 = Py_None;
936         tmp_fromlist_name_1 = Py_None; 873         tmp_fromlist_name_1 = Py_None;
n 937         tmp_level_name_1 = mod_consts[15]; n 874         tmp_level_name_1 = mod_consts[12];
938         frame_4a6d24b9f1cf95c7ad7f1404eaa142f2->m_frame.f_lineno = 42; 875         frame_4a6d24b9f1cf95c7ad7f1404eaa142f2->m_frame.f_lineno = 42;
939         tmp_assign_source_11 = IMPORT_MODULE5(tmp_name_name_1, tmp_globals_arg_name_1, tmp_locals_arg_name_1, tmp_fromlist_name_1, tmp_level_name_1); 876         tmp_assign_source_11 = IMPORT_MODULE5(tmp_name_name_1, tmp_globals_arg_name_1, tmp_locals_arg_name_1, tmp_fromlist_name_1, tmp_level_name_1);
940         assert(!(tmp_assign_source_11 == NULL)); 877         assert(!(tmp_assign_source_11 == NULL));
n 941         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[14], tmp_assign_source_11); n 878         UPDATE_STRING_DICT1(moduledict___main__, (Nuitka_StringObject *)mod_consts[11], tmp_assign_source_11);
942     } 879     }
943     { 880     {
944         PyObject *tmp_assign_source_12; 881         PyObject *tmp_assign_source_12;
945         PyObject *tmp_iter_arg_1; 882         PyObject *tmp_iter_arg_1;
946         PyObject *tmp_called_instance_1; 883         PyObject *tmp_called_instance_1;
n 947         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[14]); n 884         tmp_called_instance_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[11]);
948 885
949         if (unlikely(tmp_called_instance_1 == NULL)) { 886         if (unlikely(tmp_called_instance_1 == NULL)) {
n 950             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[14]); n 887             tmp_called_instance_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[11]);
951         } 888         }
952 889
953         assert(!(tmp_called_instance_1 == NULL)); 890         assert(!(tmp_called_instance_1 == NULL));
954         frame_4a6d24b9f1cf95c7ad7f1404eaa142f2->m_frame.f_lineno = 43; 891         frame_4a6d24b9f1cf95c7ad7f1404eaa142f2->m_frame.f_lineno = 43;
955         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2( 892         tmp_iter_arg_1 = CALL_METHOD_WITH_ARGS2(
956             tmp_called_instance_1, 893             tmp_called_instance_1,
n 957             mod_consts[16], n 894             mod_consts[13],
958             &PyTuple_GET_ITEM(mod_consts[17], 0) 895             &PyTuple_GET_ITEM(mod_consts[14], 0)
959         ); 896         );
960 897
961         if (tmp_iter_arg_1 == NULL) { 898         if (tmp_iter_arg_1 == NULL) {
962             assert(ERROR_OCCURRED()); 899             assert(ERROR_OCCURRED());
963 900
1013     } 950     }
1014     { 951     {
1015         PyObject *tmp_assign_source_14; 952         PyObject *tmp_assign_source_14;
1016         CHECK_OBJECT(tmp_for_loop_1__iter_value); 953         CHECK_OBJECT(tmp_for_loop_1__iter_value);
1017         tmp_assign_source_14 = tmp_for_loop_1__iter_value; 954         tmp_assign_source_14 = tmp_for_loop_1__iter_value;
n 1018         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[18], tmp_assign_source_14); n 955         UPDATE_STRING_DICT0(moduledict___main__, (Nuitka_StringObject *)mod_consts[15], tmp_assign_source_14);
1019     } 956     }
1020     { 957     {
1021         PyObject *tmp_called_name_1; 958         PyObject *tmp_called_name_1;
1022         PyObject *tmp_call_result_1; 959         PyObject *tmp_call_result_1;
n 1023         tmp_called_name_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[13]); n 960         tmp_called_name_1 = GET_STRING_DICT_VALUE(moduledict___main__, (Nuitka_StringObject *)mod_consts[10]);
1024 961
1025         if (unlikely(tmp_called_name_1 == NULL)) { 962         if (unlikely(tmp_called_name_1 == NULL)) {
n 1026             tmp_called_name_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[13]); n 963             tmp_called_name_1 = GET_MODULE_VARIABLE_VALUE_FALLBACK(mod_consts[10]);
1027         } 964         }
1028 965
1029         if (tmp_called_name_1 == NULL) { 966         if (tmp_called_name_1 == NULL) {
1030             assert(ERROR_OCCURRED()); 967             assert(ERROR_OCCURRED());
1031 968
1092     Py_XDECREF(tmp_for_loop_1__for_iterator); 1029     Py_XDECREF(tmp_for_loop_1__for_iterator);
1093     tmp_for_loop_1__for_iterator = NULL; 1030     tmp_for_loop_1__for_iterator = NULL;
1094     { 1031     {
1095         PyObject *tmp_called_name_2; 1032         PyObject *tmp_called_name_2;
1096         PyObject *tmp_call_result_2; 1033         PyObject *tmp_call_result_2;
n 1097         tmp_called_name_2 = LOOKUP_BUILTIN(mod_consts[19]); n 1034         tmp_called_name_2 = LOOKUP_BUILTIN(mod_consts[16]);
1098         assert(tmp_called_name_2 != NULL); 1035         assert(tmp_called_name_2 != NULL);
1099         frame_4a6d24b9f1cf95c7ad7f1404eaa142f2->m_frame.f_lineno = 46; 1036         frame_4a6d24b9f1cf95c7ad7f1404eaa142f2->m_frame.f_lineno = 46;
t 1100         tmp_call_result_2 = CALL_FUNCTION_WITH_SINGLE_ARG(tmp_called_name_2, mod_consts[20]); t 1037         tmp_call_result_2 = CALL_FUNCTION_WITH_SINGLE_ARG(tmp_called_name_2, mod_consts[17]);
1101         if (tmp_call_result_2 == NULL) { 1038         if (tmp_call_result_2 == NULL) {
1102             assert(ERROR_OCCURRED()); 1039             assert(ERROR_OCCURRED());
1103 1040
1104             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb); 1041             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
1105 1042