Construct CallCompiledObjectMethodPosArgsConstant6

Performance Diagrams

Construct CallCompiledObjectMethodPosArgsConstant6 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000180000000180000000200000000200000000220000000220000000240000000240000000260000000260000000CPython 2.7Nuitka (master)Nuitka (develop)Nuitka (factory)26137817688.11538461538461257.0CPython 2.785555823240.03846153846155423.22814134863705Nuitka (master)85655067391.96153846153845423.1343128599465Nuitka (develop)85605732543.8846153846154423.18095576520574Nuitka (factory)Construct CallCompiledObjectMethodPosArgsConstant6Ticks Construct CallCompiledObjectMethodPosArgsConstant6 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000180000000180000000200000000200000000220000000220000000240000000240000000CPython 3.5Nuitka (master)Nuitka (develop)Nuitka (factory)24203286788.11538461538461257.0CPython 3.587760706240.03846153846155414.51176637081085Nuitka (master)87760152391.96153846153845414.51233200441584Nuitka (develop)87760438543.8846153846154414.5120399986198Nuitka (factory)Construct CallCompiledObjectMethodPosArgsConstant6Ticks

Source Code with Construct

from __future__ import print_function

class C(object):
    def compiled_method(self, a,b,c,d,e,f):
        return a, b, c, d, e, f

def calledRepeatedly():
    inst = C()

    # This is supposed to make a call to a non-compiled function, which is
    # being optimized separately.
# construct_begin
    inst.compiled_method("some", "random", "values", "to", "check", "call")
    inst.compiled_method("some", "other", "values", "to", "check", "call")
    inst.compiled_method("some", "new", "values", "to", "check", "call")

# construct_alternative



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

print("OK.")

Source Code without Construct

from __future__ import print_function

class C(object):
    def compiled_method(self, a,b,c,d,e,f):
        return a, b, c, d, e, f

def calledRepeatedly():
    inst = C()

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




# construct_alternative
    pass
# construct_end

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

print("OK.")

Context Diff of Source Code


Construct
Baseline
27     inst = C() 27     inst = C()
28 28
29     # This is supposed to make a call to a non-compiled function, which is 29     # This is supposed to make a call to a non-compiled function, which is
30     # being optimized separately. 30     # being optimized separately.
31 # construct_begin 31 # construct_begin
n 32     inst.compiled_method("some", "random", "values", "to", "check", "call") n 32  
33     inst.compiled_method("some", "other", "values", "to", "check", "call") 33  
34     inst.compiled_method("some", "new", "values", "to", "check", "call") 34  
35 35
36 # construct_alternative 36 # construct_alternative
t 37   t 37     pass
38   38 # construct_end
39 39
40 import itertools 40 import itertools
41 for x in itertools.repeat(None, 50000): 41 for x in itertools.repeat(None, 50000):
42     calledRepeatedly() 42     calledRepeatedly()
43 43

Context Diff of Generated Code


Construct
Baseline
29 29
30 PyObject *module___main__; 30 PyObject *module___main__;
31 PyDictObject *moduledict___main__; 31 PyDictObject *moduledict___main__;
32 32
33 /* The declarations of module constants used, if any. */ 33 /* The declarations of module constants used, if any. */
n 34 static PyObject *const_str_plain_to; n
35 static PyObject *const_str_plain_b; 34 static PyObject *const_str_plain_b;
36 static PyObject *const_str_plain_itertools; 35 static PyObject *const_str_plain_itertools;
37 static PyObject *const_tuple_type_object_tuple; 36 static PyObject *const_tuple_type_object_tuple;
38 static PyObject *const_str_plain_metaclass; 37 static PyObject *const_str_plain_metaclass;
39 extern PyObject *const_str_plain___module__; 38 extern PyObject *const_str_plain___module__;
40 static PyObject *const_str_plain_compiled_method; 39 static PyObject *const_str_plain_compiled_method;
41 extern PyObject *const_str_plain___class__; 40 extern PyObject *const_str_plain___class__;
42 static PyObject *const_str_digest_757227af6dac5c01686d3bbc7671f8bf; 41 static PyObject *const_str_digest_757227af6dac5c01686d3bbc7671f8bf;
n 43 static PyObject *const_tuple_4cee4124c8df2995a8a82b981e580f5e_tuple; n
44 static PyObject *const_tuple_str_plain___class___tuple; 42 static PyObject *const_tuple_str_plain___class___tuple;
45 static PyObject *const_str_plain___qualname__; 43 static PyObject *const_str_plain___qualname__;
46 static PyObject *const_str_plain_f; 44 static PyObject *const_str_plain_f;
n 47 static PyObject *const_str_plain_values; n
48 static PyObject *const_str_plain_object; 45 static PyObject *const_str_plain_object;
49 extern PyObject *const_str_plain___file__; 46 extern PyObject *const_str_plain___file__;
50 static PyObject *const_str_digest_db0439a49f4cdb7311faa7e005b712d8; 47 static PyObject *const_str_digest_db0439a49f4cdb7311faa7e005b712d8;
n 51 static PyObject *const_str_plain_other; n
52 extern PyObject *const_int_0; 48 extern PyObject *const_int_0;
n 53 static PyObject *const_str_plain_check; n
54 static PyObject *const_tuple_str_plain_C_tuple_type_object_tuple_tuple; 49 static PyObject *const_tuple_str_plain_C_tuple_type_object_tuple_tuple;
55 extern PyObject *const_str_plain_print; 50 extern PyObject *const_str_plain_print;
56 static PyObject *const_str_plain___prepare__; 51 static PyObject *const_str_plain___prepare__;
n 57 static PyObject *const_str_plain_call; n
58 static PyObject *const_str_plain_a; 52 static PyObject *const_str_plain_a;
59 static PyObject *const_int_pos_50000; 53 static PyObject *const_int_pos_50000;
60 static PyObject *const_tuple_str_digest_5ed1392909ad16e6227b8230f4582352_tuple; 54 static PyObject *const_tuple_str_digest_5ed1392909ad16e6227b8230f4582352_tuple;
n 61 static PyObject *const_str_plain_random; n
62 static PyObject *const_str_plain_self; 55 static PyObject *const_str_plain_self;
63 static PyObject *const_str_plain_inst; 56 static PyObject *const_str_plain_inst;
64 static PyObject *const_str_plain_e; 57 static PyObject *const_str_plain_e;
65 static PyObject *const_str_plain_calledRepeatedly; 58 static PyObject *const_str_plain_calledRepeatedly;
66 static PyObject *const_str_angle_module; 59 static PyObject *const_str_angle_module;
67 static PyObject *const_str_plain_None; 60 static PyObject *const_str_plain_None;
68 static PyObject *const_tuple_ba58284e993f645f647ff630deb3d552_tuple; 61 static PyObject *const_tuple_ba58284e993f645f647ff630deb3d552_tuple;
69 static PyObject *const_str_plain_x; 62 static PyObject *const_str_plain_x;
70 static PyObject *const_str_plain_C; 63 static PyObject *const_str_plain_C;
71 extern PyObject *const_tuple_empty; 64 extern PyObject *const_tuple_empty;
n n 65 static PyObject *const_str_plain_c;
72 static PyObject *const_str_digest_5ed1392909ad16e6227b8230f4582352; 66 static PyObject *const_str_digest_5ed1392909ad16e6227b8230f4582352;
n 73 static PyObject *const_str_plain_c; n
74 static PyObject *const_tuple_str_plain_inst_tuple; 67 static PyObject *const_tuple_str_plain_inst_tuple;
75 static PyObject *const_str_plain_repeat; 68 static PyObject *const_str_plain_repeat;
n 76 static PyObject *const_str_plain_some; n
77 static PyObject *const_str_plain_new;
78 static PyObject *const_tuple_none_int_pos_50000_tuple; 69 static PyObject *const_tuple_none_int_pos_50000_tuple;
79 extern PyObject *const_str_plain___main__; 70 extern PyObject *const_str_plain___main__;
n 80 static PyObject *const_tuple_78e2f1ad354bdb7db1a0fda186168ee0_tuple; n
81 extern PyObject *const_str_plain_type; 71 extern PyObject *const_str_plain_type;
n 82 static PyObject *const_tuple_ca2f155a28955fc472d4376e2721d689_tuple; n
83 static PyObject *const_str_plain_d; 72 static PyObject *const_str_plain_d;
84 extern PyObject *const_str_plain___doc__; 73 extern PyObject *const_str_plain___doc__;
85 extern PyObject *const_str_plain___cached__; 74 extern PyObject *const_str_plain___cached__;
86 static PyObject *const_str_plain_print_function; 75 static PyObject *const_str_plain_print_function;
87 static PyObject *module_filename_obj; 76 static PyObject *module_filename_obj;
90 static bool constants_created = false; 79 static bool constants_created = false;
91 80
92 /* Function to create module private constants. */ 81 /* Function to create module private constants. */
93 static void createModuleConstants( void ) 82 static void createModuleConstants( void )
94 { 83 {
n 95     const_str_plain_to = UNSTREAM_STRING_ASCII( &constant_bin[ 61 ], 2, 1 ); n
96     const_str_plain_b = UNSTREAM_STRING_ASCII( &constant_bin[ 63 ], 1, 1 ); 84     const_str_plain_b = UNSTREAM_STRING_ASCII( &constant_bin[ 61 ], 1, 1 );
97     const_str_plain_itertools = UNSTREAM_STRING_ASCII( &constant_bin[ 64 ], 9, 1 ); 85     const_str_plain_itertools = UNSTREAM_STRING_ASCII( &constant_bin[ 62 ], 9, 1 );
98     const_tuple_type_object_tuple = PyTuple_New( 1 ); 86     const_tuple_type_object_tuple = PyTuple_New( 1 );
99     PyTuple_SET_ITEM( const_tuple_type_object_tuple, 0, (PyObject *)&PyBaseObject_Type ); Py_INCREF((PyObject *)&PyBaseObject_Type); 87     PyTuple_SET_ITEM( const_tuple_type_object_tuple, 0, (PyObject *)&PyBaseObject_Type ); Py_INCREF((PyObject *)&PyBaseObject_Type);
n 100     const_str_plain_metaclass = UNSTREAM_STRING_ASCII( &constant_bin[ 73 ], 9, 1 ); n 88     const_str_plain_metaclass = UNSTREAM_STRING_ASCII( &constant_bin[ 71 ], 9, 1 );
101     const_str_plain_compiled_method = UNSTREAM_STRING_ASCII( &constant_bin[ 82 ], 15, 1 ); 89     const_str_plain_compiled_method = UNSTREAM_STRING_ASCII( &constant_bin[ 80 ], 15, 1 );
102     const_str_digest_757227af6dac5c01686d3bbc7671f8bf = UNSTREAM_STRING_ASCII( &constant_bin[ 97 ], 17, 0 ); 90     const_str_digest_757227af6dac5c01686d3bbc7671f8bf = UNSTREAM_STRING_ASCII( &constant_bin[ 95 ], 17, 0 );
103     const_tuple_4cee4124c8df2995a8a82b981e580f5e_tuple = PyTuple_New( 6 );
104     const_str_plain_some = UNSTREAM_STRING_ASCII( &constant_bin[ 114 ], 4, 1 );
105     PyTuple_SET_ITEM( const_tuple_4cee4124c8df2995a8a82b981e580f5e_tuple, 0, const_str_plain_some ); Py_INCREF(const_str_plain_some);
106     const_str_plain_new = UNSTREAM_STRING_ASCII( &constant_bin[ 118 ], 3, 1 );
107     PyTuple_SET_ITEM( const_tuple_4cee4124c8df2995a8a82b981e580f5e_tuple, 1, const_str_plain_new ); Py_INCREF(const_str_plain_new);
108     const_str_plain_values = UNSTREAM_STRING_ASCII( &constant_bin[ 121 ], 6, 1 );
109     PyTuple_SET_ITEM( const_tuple_4cee4124c8df2995a8a82b981e580f5e_tuple, 2, const_str_plain_values ); Py_INCREF(const_str_plain_values);
110     PyTuple_SET_ITEM( const_tuple_4cee4124c8df2995a8a82b981e580f5e_tuple, 3, const_str_plain_to ); Py_INCREF(const_str_plain_to);
111     const_str_plain_check = UNSTREAM_STRING_ASCII( &constant_bin[ 127 ], 5, 1 );
112     PyTuple_SET_ITEM( const_tuple_4cee4124c8df2995a8a82b981e580f5e_tuple, 4, const_str_plain_check ); Py_INCREF(const_str_plain_check);
113     const_str_plain_call = UNSTREAM_STRING_ASCII( &constant_bin[ 29 ], 4, 1 );
114     PyTuple_SET_ITEM( const_tuple_4cee4124c8df2995a8a82b981e580f5e_tuple, 5, const_str_plain_call ); Py_INCREF(const_str_plain_call);
115     const_tuple_str_plain___class___tuple = PyTuple_New( 1 ); 91     const_tuple_str_plain___class___tuple = PyTuple_New( 1 );
116     PyTuple_SET_ITEM( const_tuple_str_plain___class___tuple, 0, const_str_plain___class__ ); Py_INCREF(const_str_plain___class__); 92     PyTuple_SET_ITEM( const_tuple_str_plain___class___tuple, 0, const_str_plain___class__ ); Py_INCREF(const_str_plain___class__);
n 117     const_str_plain___qualname__ = UNSTREAM_STRING_ASCII( &constant_bin[ 132 ], 12, 1 ); n 93     const_str_plain___qualname__ = UNSTREAM_STRING_ASCII( &constant_bin[ 112 ], 12, 1 );
118     const_str_plain_f = UNSTREAM_STRING_ASCII( &constant_bin[ 18 ], 1, 1 ); 94     const_str_plain_f = UNSTREAM_STRING_ASCII( &constant_bin[ 18 ], 1, 1 );
n 119     const_str_plain_object = UNSTREAM_STRING_ASCII( &constant_bin[ 144 ], 6, 1 ); n 95     const_str_plain_object = UNSTREAM_STRING_ASCII( &constant_bin[ 124 ], 6, 1 );
120     const_str_digest_db0439a49f4cdb7311faa7e005b712d8 = UNSTREAM_STRING_ASCII( &constant_bin[ 150 ], 65, 0 ); 96     const_str_digest_db0439a49f4cdb7311faa7e005b712d8 = UNSTREAM_STRING_ASCII( &constant_bin[ 130 ], 65, 0 );
121     const_str_plain_other = UNSTREAM_STRING_ASCII( &constant_bin[ 215 ], 5, 1 );
122     const_tuple_str_plain_C_tuple_type_object_tuple_tuple = PyTuple_New( 2 ); 97     const_tuple_str_plain_C_tuple_type_object_tuple_tuple = PyTuple_New( 2 );
123     const_str_plain_C = UNSTREAM_STRING_ASCII( &constant_bin[ 6 ], 1, 1 ); 98     const_str_plain_C = UNSTREAM_STRING_ASCII( &constant_bin[ 6 ], 1, 1 );
124     PyTuple_SET_ITEM( const_tuple_str_plain_C_tuple_type_object_tuple_tuple, 0, const_str_plain_C ); Py_INCREF(const_str_plain_C); 99     PyTuple_SET_ITEM( const_tuple_str_plain_C_tuple_type_object_tuple_tuple, 0, const_str_plain_C ); Py_INCREF(const_str_plain_C);
125     PyTuple_SET_ITEM( const_tuple_str_plain_C_tuple_type_object_tuple_tuple, 1, const_tuple_type_object_tuple ); Py_INCREF(const_tuple_type_object_tuple); 100     PyTuple_SET_ITEM( const_tuple_str_plain_C_tuple_type_object_tuple_tuple, 1, const_tuple_type_object_tuple ); Py_INCREF(const_tuple_type_object_tuple);
n 126     const_str_plain___prepare__ = UNSTREAM_STRING_ASCII( &constant_bin[ 220 ], 11, 1 ); n 101     const_str_plain___prepare__ = UNSTREAM_STRING_ASCII( &constant_bin[ 195 ], 11, 1 );
127     const_str_plain_a = UNSTREAM_STRING_ASCII( &constant_bin[ 1 ], 1, 1 ); 102     const_str_plain_a = UNSTREAM_STRING_ASCII( &constant_bin[ 1 ], 1, 1 );
128     const_int_pos_50000 = PyLong_FromUnsignedLong(50000ul); 103     const_int_pos_50000 = PyLong_FromUnsignedLong(50000ul);
129     const_tuple_str_digest_5ed1392909ad16e6227b8230f4582352_tuple = PyTuple_New( 1 ); 104     const_tuple_str_digest_5ed1392909ad16e6227b8230f4582352_tuple = PyTuple_New( 1 );
n 130     const_str_digest_5ed1392909ad16e6227b8230f4582352 = UNSTREAM_STRING_ASCII( &constant_bin[ 231 ], 3, 0 ); n 105     const_str_digest_5ed1392909ad16e6227b8230f4582352 = UNSTREAM_STRING_ASCII( &constant_bin[ 206 ], 3, 0 );
131     PyTuple_SET_ITEM( const_tuple_str_digest_5ed1392909ad16e6227b8230f4582352_tuple, 0, const_str_digest_5ed1392909ad16e6227b8230f4582352 ); Py_INCREF(const_str_digest_5ed1392909ad16e6227b8230f4582352); 106     PyTuple_SET_ITEM( const_tuple_str_digest_5ed1392909ad16e6227b8230f4582352_tuple, 0, const_str_digest_5ed1392909ad16e6227b8230f4582352 ); Py_INCREF(const_str_digest_5ed1392909ad16e6227b8230f4582352);
n 132     const_str_plain_random = UNSTREAM_STRING_ASCII( &constant_bin[ 234 ], 6, 1 ); n
133     const_str_plain_self = UNSTREAM_STRING_ASCII( &constant_bin[ 240 ], 4, 1 ); 107     const_str_plain_self = UNSTREAM_STRING_ASCII( &constant_bin[ 209 ], 4, 1 );
134     const_str_plain_inst = UNSTREAM_STRING_ASCII( &constant_bin[ 244 ], 4, 1 ); 108     const_str_plain_inst = UNSTREAM_STRING_ASCII( &constant_bin[ 213 ], 4, 1 );
135     const_str_plain_e = UNSTREAM_STRING_ASCII( &constant_bin[ 3 ], 1, 1 ); 109     const_str_plain_e = UNSTREAM_STRING_ASCII( &constant_bin[ 3 ], 1, 1 );
136     const_str_plain_calledRepeatedly = UNSTREAM_STRING_ASCII( &constant_bin[ 29 ], 16, 1 ); 110     const_str_plain_calledRepeatedly = UNSTREAM_STRING_ASCII( &constant_bin[ 29 ], 16, 1 );
n 137     const_str_angle_module = UNSTREAM_STRING_ASCII( &constant_bin[ 248 ], 8, 0 ); n 111     const_str_angle_module = UNSTREAM_STRING_ASCII( &constant_bin[ 217 ], 8, 0 );
138     const_str_plain_None = UNSTREAM_STRING_ASCII( &constant_bin[ 256 ], 4, 1 ); 112     const_str_plain_None = UNSTREAM_STRING_ASCII( &constant_bin[ 225 ], 4, 1 );
139     const_tuple_ba58284e993f645f647ff630deb3d552_tuple = PyTuple_New( 7 ); 113     const_tuple_ba58284e993f645f647ff630deb3d552_tuple = PyTuple_New( 7 );
140     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 0, const_str_plain_self ); Py_INCREF(const_str_plain_self); 114     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 0, const_str_plain_self ); Py_INCREF(const_str_plain_self);
141     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 1, const_str_plain_a ); Py_INCREF(const_str_plain_a); 115     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 1, const_str_plain_a ); Py_INCREF(const_str_plain_a);
142     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 2, const_str_plain_b ); Py_INCREF(const_str_plain_b); 116     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 2, const_str_plain_b ); Py_INCREF(const_str_plain_b);
143     const_str_plain_c = UNSTREAM_STRING_ASCII( &constant_bin[ 29 ], 1, 1 ); 117     const_str_plain_c = UNSTREAM_STRING_ASCII( &constant_bin[ 29 ], 1, 1 );
144     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 3, const_str_plain_c ); Py_INCREF(const_str_plain_c); 118     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 3, const_str_plain_c ); Py_INCREF(const_str_plain_c);
145     const_str_plain_d = UNSTREAM_STRING_ASCII( &constant_bin[ 16 ], 1, 1 ); 119     const_str_plain_d = UNSTREAM_STRING_ASCII( &constant_bin[ 16 ], 1, 1 );
146     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 4, const_str_plain_d ); Py_INCREF(const_str_plain_d); 120     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 4, const_str_plain_d ); Py_INCREF(const_str_plain_d);
147     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 5, const_str_plain_e ); Py_INCREF(const_str_plain_e); 121     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 5, const_str_plain_e ); Py_INCREF(const_str_plain_e);
148     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 6, const_str_plain_f ); Py_INCREF(const_str_plain_f); 122     PyTuple_SET_ITEM( const_tuple_ba58284e993f645f647ff630deb3d552_tuple, 6, const_str_plain_f ); Py_INCREF(const_str_plain_f);
n 149     const_str_plain_x = UNSTREAM_STRING_ASCII( &constant_bin[ 260 ], 1, 1 ); n 123     const_str_plain_x = UNSTREAM_STRING_ASCII( &constant_bin[ 229 ], 1, 1 );
150     const_tuple_str_plain_inst_tuple = PyTuple_New( 1 ); 124     const_tuple_str_plain_inst_tuple = PyTuple_New( 1 );
151     PyTuple_SET_ITEM( const_tuple_str_plain_inst_tuple, 0, const_str_plain_inst ); Py_INCREF(const_str_plain_inst); 125     PyTuple_SET_ITEM( const_tuple_str_plain_inst_tuple, 0, const_str_plain_inst ); Py_INCREF(const_str_plain_inst);
n 152     const_str_plain_repeat = UNSTREAM_STRING_ASCII( &constant_bin[ 261 ], 6, 1 ); n 126     const_str_plain_repeat = UNSTREAM_STRING_ASCII( &constant_bin[ 230 ], 6, 1 );
153     const_tuple_none_int_pos_50000_tuple = PyTuple_New( 2 ); 127     const_tuple_none_int_pos_50000_tuple = PyTuple_New( 2 );
154     PyTuple_SET_ITEM( const_tuple_none_int_pos_50000_tuple, 0, Py_None ); Py_INCREF(Py_None); 128     PyTuple_SET_ITEM( const_tuple_none_int_pos_50000_tuple, 0, Py_None ); Py_INCREF(Py_None);
155     PyTuple_SET_ITEM( const_tuple_none_int_pos_50000_tuple, 1, const_int_pos_50000 ); Py_INCREF(const_int_pos_50000); 129     PyTuple_SET_ITEM( const_tuple_none_int_pos_50000_tuple, 1, const_int_pos_50000 ); Py_INCREF(const_int_pos_50000);
n 156     const_tuple_78e2f1ad354bdb7db1a0fda186168ee0_tuple = PyTuple_New( 6 ); n
157     PyTuple_SET_ITEM( const_tuple_78e2f1ad354bdb7db1a0fda186168ee0_tuple, 0, const_str_plain_some ); Py_INCREF(const_str_plain_some);
158     PyTuple_SET_ITEM( const_tuple_78e2f1ad354bdb7db1a0fda186168ee0_tuple, 1, const_str_plain_random ); Py_INCREF(const_str_plain_random);
159     PyTuple_SET_ITEM( const_tuple_78e2f1ad354bdb7db1a0fda186168ee0_tuple, 2, const_str_plain_values ); Py_INCREF(const_str_plain_values);
160     PyTuple_SET_ITEM( const_tuple_78e2f1ad354bdb7db1a0fda186168ee0_tuple, 3, const_str_plain_to ); Py_INCREF(const_str_plain_to);
161     PyTuple_SET_ITEM( const_tuple_78e2f1ad354bdb7db1a0fda186168ee0_tuple, 4, const_str_plain_check ); Py_INCREF(const_str_plain_check);
162     PyTuple_SET_ITEM( const_tuple_78e2f1ad354bdb7db1a0fda186168ee0_tuple, 5, const_str_plain_call ); Py_INCREF(const_str_plain_call);
163     const_tuple_ca2f155a28955fc472d4376e2721d689_tuple = PyTuple_New( 6 );
164     PyTuple_SET_ITEM( const_tuple_ca2f155a28955fc472d4376e2721d689_tuple, 0, const_str_plain_some ); Py_INCREF(const_str_plain_some);
165     PyTuple_SET_ITEM( const_tuple_ca2f155a28955fc472d4376e2721d689_tuple, 1, const_str_plain_other ); Py_INCREF(const_str_plain_other);
166     PyTuple_SET_ITEM( const_tuple_ca2f155a28955fc472d4376e2721d689_tuple, 2, const_str_plain_values ); Py_INCREF(const_str_plain_values);
167     PyTuple_SET_ITEM( const_tuple_ca2f155a28955fc472d4376e2721d689_tuple, 3, const_str_plain_to ); Py_INCREF(const_str_plain_to);
168     PyTuple_SET_ITEM( const_tuple_ca2f155a28955fc472d4376e2721d689_tuple, 4, const_str_plain_check ); Py_INCREF(const_str_plain_check);
169     PyTuple_SET_ITEM( const_tuple_ca2f155a28955fc472d4376e2721d689_tuple, 5, const_str_plain_call ); Py_INCREF(const_str_plain_call);
170     const_str_plain_print_function = UNSTREAM_STRING_ASCII( &constant_bin[ 267 ], 14, 1 ); 130     const_str_plain_print_function = UNSTREAM_STRING_ASCII( &constant_bin[ 236 ], 14, 1 );
171 131
172     constants_created = true; 132     constants_created = true;
173 } 133 }
174 134
175 /* Function to verify module private constants for non-corruption. */ 135 /* Function to verify module private constants for non-corruption. */
360             goto frame_exception_exit_1; 320             goto frame_exception_exit_1;
361         } 321         }
362         assert(var_inst == NULL); 322         assert(var_inst == NULL);
363         var_inst = tmp_assign_source_1; 323         var_inst = tmp_assign_source_1;
364     } 324     }
n 365     { n
366         PyObject *tmp_called_instance_1;
367         PyObject *tmp_call_result_1;
368         CHECK_OBJECT(var_inst);
369         tmp_called_instance_1 = var_inst;
370         frame_8326acc5ffb2d8ce113ec0265822e2f5->m_frame.f_lineno = 32;
371         tmp_call_result_1 = CALL_METHOD_WITH_ARGS6( tmp_called_instance_1, const_str_plain_compiled_method, &PyTuple_GET_ITEM( const_tuple_78e2f1ad354bdb7db1a0fda186168ee0_tuple, 0 ) );
372  
373         if ( tmp_call_result_1 == NULL )
374         {
375             assert(ERROR_OCCURRED());
376  
377             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
378  
379  
380             exception_lineno = 32;
381             type_description_1 = "o";
382             goto frame_exception_exit_1;
383         }
384         Py_DECREF(tmp_call_result_1);
385     }
386     {
387         PyObject *tmp_called_instance_2;
388         PyObject *tmp_call_result_2;
389         CHECK_OBJECT(var_inst);
390         tmp_called_instance_2 = var_inst;
391         frame_8326acc5ffb2d8ce113ec0265822e2f5->m_frame.f_lineno = 33;
392         tmp_call_result_2 = CALL_METHOD_WITH_ARGS6( tmp_called_instance_2, const_str_plain_compiled_method, &PyTuple_GET_ITEM( const_tuple_ca2f155a28955fc472d4376e2721d689_tuple, 0 ) );
393  
394         if ( tmp_call_result_2 == NULL )
395         {
396             assert(ERROR_OCCURRED());
397  
398             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
399  
400  
401             exception_lineno = 33;
402             type_description_1 = "o";
403             goto frame_exception_exit_1;
404         }
405         Py_DECREF(tmp_call_result_2);
406     }
407     {
408         PyObject *tmp_called_instance_3;
409         PyObject *tmp_call_result_3;
410         CHECK_OBJECT(var_inst);
411         tmp_called_instance_3 = var_inst;
412         frame_8326acc5ffb2d8ce113ec0265822e2f5->m_frame.f_lineno = 34;
413         tmp_call_result_3 = CALL_METHOD_WITH_ARGS6( tmp_called_instance_3, const_str_plain_compiled_method, &PyTuple_GET_ITEM( const_tuple_4cee4124c8df2995a8a82b981e580f5e_tuple, 0 ) );
414  
415         if ( tmp_call_result_3 == NULL )
416         {
417             assert(ERROR_OCCURRED());
418  
419             FETCH_ERROR_OCCURRED(&exception_type, &exception_value, &exception_tb);
420  
421  
422             exception_lineno = 34;
423             type_description_1 = "o";
424             goto frame_exception_exit_1;
425         }
426         Py_DECREF(tmp_call_result_3);
427     }
428 325
429 #if 0 326 #if 0
430     RESTORE_FRAME_EXCEPTION(frame_8326acc5ffb2d8ce113ec0265822e2f5); 327     RESTORE_FRAME_EXCEPTION(frame_8326acc5ffb2d8ce113ec0265822e2f5);
431 #endif 328 #endif
432 329
492     exception_keeper_lineno_1 = exception_lineno; 389     exception_keeper_lineno_1 = exception_lineno;
493     exception_type = NULL; 390     exception_type = NULL;
494     exception_value = NULL; 391     exception_value = NULL;
495     exception_tb = NULL; 392     exception_tb = NULL;
496     exception_lineno = 0; 393     exception_lineno = 0;
t 497   t
498     Py_XDECREF(var_inst);
499     var_inst = NULL;
500 394
501     // Re-raise. 395     // Re-raise.
502     exception_type = exception_keeper_type_1; 396     exception_type = exception_keeper_type_1;
503     exception_value = exception_keeper_value_1; 397     exception_value = exception_keeper_value_1;
504     exception_tb = exception_keeper_tb_1; 398     exception_tb = exception_keeper_tb_1;