Construct CallCompiledObjectMethodPosArgsVariable

Performance Diagrams

Construct CallCompiledObjectMethodPosArgsVariable 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000180000000180000000200000000200000000220000000220000000240000000240000000260000000260000000CPython 2.7Nuitka (master)Nuitka (develop)Nuitka (factory)27697148688.11538461538461257.0CPython 2.789501114240.03846153846155424.26203028989505Nuitka (master)89501186391.96153846153845424.26196605112466Nuitka (develop)89500982543.8846153846154424.2621480609741Nuitka (factory)Construct CallCompiledObjectMethodPosArgsVariableTicks Construct CallCompiledObjectMethodPosArgsVariable 002000000020000000400000004000000060000000600000008000000080000000100000000100000000120000000120000000140000000140000000160000000160000000180000000180000000200000000200000000220000000220000000240000000240000000CPython 3.5Nuitka (master)Nuitka (develop)Nuitka (factory)25731202788.11538461538461257.0CPython 3.598907573240.03846153846155409.1272753216467Nuitka (master)98902646391.96153846153845409.1320070767621Nuitka (develop)98907486543.8846153846154409.12735887405086Nuitka (factory)Construct CallCompiledObjectMethodPosArgsVariableTicks

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 getUnknownValue():
    return 8

def calledRepeatedly():
    a = getUnknownValue()
    b = getUnknownValue()
    c = getUnknownValue()
    d = getUnknownValue()
    e = getUnknownValue()
    f = getUnknownValue()

    inst = C()

    # This is supposed to make a call to a non-compiled function, which is
    # being optimized separately.
# construct_begin
    inst.compiled_method(a, b, c, d, e, f)
    inst.compiled_method(a, c, b, d, e, f)
    inst.compiled_method(a, b, c, d, f, e)
# 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 getUnknownValue():
    return 8

def calledRepeatedly():
    a = getUnknownValue()
    b = getUnknownValue()
    c = getUnknownValue()
    d = getUnknownValue()
    e = getUnknownValue()
    f = getUnknownValue()

    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
37     inst = C() 37     inst = C()
38 38
39     # This is supposed to make a call to a non-compiled function, which is 39     # This is supposed to make a call to a non-compiled function, which is
40     # being optimized separately. 40     # being optimized separately.
41 # construct_begin 41 # construct_begin
n 42     inst.compiled_method(a, b, c, d, e, f) n
43     inst.compiled_method(a, c, b, d, e, f)
44     inst.compiled_method(a, b, c, d, f, e)
45 # construct_alternative
46 42
47 43
t t 44  
45 # construct_alternative
46     pass
47 # construct_end
48 48
49 import itertools 49 import itertools
50 for x in itertools.repeat(None, 50000): 50 for x in itertools.repeat(None, 50000):
51     calledRepeatedly() 51     calledRepeatedly()
52 52

Context Diff of Generated Code


Construct
Baseline
328     NUITKA_MAY_BE_UNUSED int exception_lineno = 0; 328     NUITKA_MAY_BE_UNUSED int exception_lineno = 0;
329     PyObject *exception_keeper_type_1; 329     PyObject *exception_keeper_type_1;
330     PyObject *exception_keeper_value_1; 330     PyObject *exception_keeper_value_1;
331     PyTracebackObject *exception_keeper_tb_1; 331     PyTracebackObject *exception_keeper_tb_1;
332     NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1; 332     NUITKA_MAY_BE_UNUSED int exception_keeper_lineno_1;
n 333     PyObject *tmp_args_element_name_1; n
334     PyObject *tmp_args_element_name_2;
335     PyObject *tmp_args_element_name_3;
336     PyObject *tmp_args_element_name_4;
337     PyObject *tmp_args_element_name_5;
338     PyObject *tmp_args_element_name_6;
339     PyObject *tmp_args_element_name_7;
340     PyObject *tmp_args_element_name_8;
341     PyObject *tmp_args_element_name_9;
342     PyObject *tmp_args_element_name_10;
343     PyObject *tmp_args_element_name_11;
344     PyObject *tmp_args_element_name_12;
345     PyObject *tmp_args_element_name_13;
346     PyObject *tmp_args_element_name_14;
347     PyObject *tmp_args_element_name_15;
348     PyObject *tmp_args_element_name_16;
349     PyObject *tmp_args_element_name_17;
350     PyObject *tmp_args_element_name_18;
351     PyObject *tmp_assign_source_1; 333     PyObject *tmp_assign_source_1;
352     PyObject *tmp_assign_source_2; 334     PyObject *tmp_assign_source_2;
353     PyObject *tmp_assign_source_3; 335     PyObject *tmp_assign_source_3;
354     PyObject *tmp_assign_source_4; 336     PyObject *tmp_assign_source_4;
355     PyObject *tmp_assign_source_5; 337     PyObject *tmp_assign_source_5;
360     PyObject *tmp_called_name_3; 342     PyObject *tmp_called_name_3;
361     PyObject *tmp_called_name_4; 343     PyObject *tmp_called_name_4;
362     PyObject *tmp_called_name_5; 344     PyObject *tmp_called_name_5;
363     PyObject *tmp_called_name_6; 345     PyObject *tmp_called_name_6;
364     PyObject *tmp_called_name_7; 346     PyObject *tmp_called_name_7;
n 365     PyObject *tmp_called_name_8; n
366     PyObject *tmp_called_name_9;
367     PyObject *tmp_called_name_10;
368     PyObject *tmp_return_value; 347     PyObject *tmp_return_value;
n 369     PyObject *tmp_source_name_1; n
370     PyObject *tmp_source_name_2;
371     PyObject *tmp_source_name_3;
372     NUITKA_MAY_BE_UNUSED PyObject *tmp_unused;
373     static struct Nuitka_FrameObject *cache_frame_b4b67b644d397a3a2daa7fbbf9cd6ad1 = NULL; 348     static struct Nuitka_FrameObject *cache_frame_b4b67b644d397a3a2daa7fbbf9cd6ad1 = NULL;
374 349
375     struct Nuitka_FrameObject *frame_b4b67b644d397a3a2daa7fbbf9cd6ad1; 350     struct Nuitka_FrameObject *frame_b4b67b644d397a3a2daa7fbbf9cd6ad1;
376 351
377     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL; 352     NUITKA_MAY_BE_UNUSED char const *type_description_1 = NULL;
653         goto frame_exception_exit_1; 628         goto frame_exception_exit_1;
654     } 629     }
655     assert( var_inst == NULL ); 630     assert( var_inst == NULL );
656     var_inst = tmp_assign_source_7; 631     var_inst = tmp_assign_source_7;
657 632
n 658     tmp_source_name_1 = var_inst; n
659  
660     CHECK_OBJECT( tmp_source_name_1 );
661     tmp_called_name_8 = LOOKUP_ATTRIBUTE( tmp_source_name_1, const_str_plain_compiled_method );
662     if ( tmp_called_name_8 == NULL )
663     {
664         assert( ERROR_OCCURRED() );
665  
666         FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
667  
668  
669         exception_lineno = 42;
670         type_description_1 = "ooooooo";
671         goto frame_exception_exit_1;
672     }
673     tmp_args_element_name_1 = var_a;
674  
675     if ( tmp_args_element_name_1 == NULL )
676     {
677         Py_DECREF( tmp_called_name_8 );
678         exception_type = PyExc_UnboundLocalError;
679         Py_INCREF( exception_type );
680         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "a" );
681         exception_tb = NULL;
682         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
683         CHAIN_EXCEPTION( exception_value );
684  
685         exception_lineno = 42;
686         type_description_1 = "ooooooo";
687         goto frame_exception_exit_1;
688     }
689  
690     tmp_args_element_name_2 = var_b;
691  
692     if ( tmp_args_element_name_2 == NULL )
693     {
694         Py_DECREF( tmp_called_name_8 );
695         exception_type = PyExc_UnboundLocalError;
696         Py_INCREF( exception_type );
697         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "b" );
698         exception_tb = NULL;
699         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
700         CHAIN_EXCEPTION( exception_value );
701  
702         exception_lineno = 42;
703         type_description_1 = "ooooooo";
704         goto frame_exception_exit_1;
705     }
706  
707     tmp_args_element_name_3 = var_c;
708  
709     if ( tmp_args_element_name_3 == NULL )
710     {
711         Py_DECREF( tmp_called_name_8 );
712         exception_type = PyExc_UnboundLocalError;
713         Py_INCREF( exception_type );
714         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "c" );
715         exception_tb = NULL;
716         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
717         CHAIN_EXCEPTION( exception_value );
718  
719         exception_lineno = 42;
720         type_description_1 = "ooooooo";
721         goto frame_exception_exit_1;
722     }
723  
724     tmp_args_element_name_4 = var_d;
725  
726     if ( tmp_args_element_name_4 == NULL )
727     {
728         Py_DECREF( tmp_called_name_8 );
729         exception_type = PyExc_UnboundLocalError;
730         Py_INCREF( exception_type );
731         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "d" );
732         exception_tb = NULL;
733         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
734         CHAIN_EXCEPTION( exception_value );
735  
736         exception_lineno = 42;
737         type_description_1 = "ooooooo";
738         goto frame_exception_exit_1;
739     }
740  
741     tmp_args_element_name_5 = var_e;
742  
743     if ( tmp_args_element_name_5 == NULL )
744     {
745         Py_DECREF( tmp_called_name_8 );
746         exception_type = PyExc_UnboundLocalError;
747         Py_INCREF( exception_type );
748         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "e" );
749         exception_tb = NULL;
750         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
751         CHAIN_EXCEPTION( exception_value );
752  
753         exception_lineno = 42;
754         type_description_1 = "ooooooo";
755         goto frame_exception_exit_1;
756     }
757  
758     tmp_args_element_name_6 = var_f;
759  
760     if ( tmp_args_element_name_6 == NULL )
761     {
762         Py_DECREF( tmp_called_name_8 );
763         exception_type = PyExc_UnboundLocalError;
764         Py_INCREF( exception_type );
765         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "f" );
766         exception_tb = NULL;
767         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
768         CHAIN_EXCEPTION( exception_value );
769  
770         exception_lineno = 42;
771         type_description_1 = "ooooooo";
772         goto frame_exception_exit_1;
773     }
774  
775     frame_b4b67b644d397a3a2daa7fbbf9cd6ad1->m_frame.f_lineno = 42;
776     {
777         PyObject *call_args[] = { tmp_args_element_name_1, tmp_args_element_name_2, tmp_args_element_name_3, tmp_args_element_name_4, tmp_args_element_name_5, tmp_args_element_name_6 };
778         tmp_unused = CALL_FUNCTION_WITH_ARGS6( tmp_called_name_8, call_args );
779     }
780  
781     Py_DECREF( tmp_called_name_8 );
782     if ( tmp_unused == NULL )
783     {
784         assert( ERROR_OCCURRED() );
785  
786         FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
787  
788  
789         exception_lineno = 42;
790         type_description_1 = "ooooooo";
791         goto frame_exception_exit_1;
792     }
793     Py_DECREF( tmp_unused );
794     tmp_source_name_2 = var_inst;
795  
796     if ( tmp_source_name_2 == NULL )
797     {
798  
799         exception_type = PyExc_UnboundLocalError;
800         Py_INCREF( exception_type );
801         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "inst" );
802         exception_tb = NULL;
803         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
804         CHAIN_EXCEPTION( exception_value );
805  
806         exception_lineno = 43;
807         type_description_1 = "ooooooo";
808         goto frame_exception_exit_1;
809     }
810  
811     tmp_called_name_9 = LOOKUP_ATTRIBUTE( tmp_source_name_2, const_str_plain_compiled_method );
812     if ( tmp_called_name_9 == NULL )
813     {
814         assert( ERROR_OCCURRED() );
815  
816         FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
817  
818  
819         exception_lineno = 43;
820         type_description_1 = "ooooooo";
821         goto frame_exception_exit_1;
822     }
823     tmp_args_element_name_7 = var_a;
824  
825     if ( tmp_args_element_name_7 == NULL )
826     {
827         Py_DECREF( tmp_called_name_9 );
828         exception_type = PyExc_UnboundLocalError;
829         Py_INCREF( exception_type );
830         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "a" );
831         exception_tb = NULL;
832         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
833         CHAIN_EXCEPTION( exception_value );
834  
835         exception_lineno = 43;
836         type_description_1 = "ooooooo";
837         goto frame_exception_exit_1;
838     }
839  
840     tmp_args_element_name_8 = var_c;
841  
842     if ( tmp_args_element_name_8 == NULL )
843     {
844         Py_DECREF( tmp_called_name_9 );
845         exception_type = PyExc_UnboundLocalError;
846         Py_INCREF( exception_type );
847         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "c" );
848         exception_tb = NULL;
849         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
850         CHAIN_EXCEPTION( exception_value );
851  
852         exception_lineno = 43;
853         type_description_1 = "ooooooo";
854         goto frame_exception_exit_1;
855     }
856  
857     tmp_args_element_name_9 = var_b;
858  
859     if ( tmp_args_element_name_9 == NULL )
860     {
861         Py_DECREF( tmp_called_name_9 );
862         exception_type = PyExc_UnboundLocalError;
863         Py_INCREF( exception_type );
864         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "b" );
865         exception_tb = NULL;
866         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
867         CHAIN_EXCEPTION( exception_value );
868  
869         exception_lineno = 43;
870         type_description_1 = "ooooooo";
871         goto frame_exception_exit_1;
872     }
873  
874     tmp_args_element_name_10 = var_d;
875  
876     if ( tmp_args_element_name_10 == NULL )
877     {
878         Py_DECREF( tmp_called_name_9 );
879         exception_type = PyExc_UnboundLocalError;
880         Py_INCREF( exception_type );
881         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "d" );
882         exception_tb = NULL;
883         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
884         CHAIN_EXCEPTION( exception_value );
885  
886         exception_lineno = 43;
887         type_description_1 = "ooooooo";
888         goto frame_exception_exit_1;
889     }
890  
891     tmp_args_element_name_11 = var_e;
892  
893     if ( tmp_args_element_name_11 == NULL )
894     {
895         Py_DECREF( tmp_called_name_9 );
896         exception_type = PyExc_UnboundLocalError;
897         Py_INCREF( exception_type );
898         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "e" );
899         exception_tb = NULL;
900         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
901         CHAIN_EXCEPTION( exception_value );
902  
903         exception_lineno = 43;
904         type_description_1 = "ooooooo";
905         goto frame_exception_exit_1;
906     }
907  
908     tmp_args_element_name_12 = var_f;
909  
910     if ( tmp_args_element_name_12 == NULL )
911     {
912         Py_DECREF( tmp_called_name_9 );
913         exception_type = PyExc_UnboundLocalError;
914         Py_INCREF( exception_type );
915         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "f" );
916         exception_tb = NULL;
917         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
918         CHAIN_EXCEPTION( exception_value );
919  
920         exception_lineno = 43;
921         type_description_1 = "ooooooo";
922         goto frame_exception_exit_1;
923     }
924  
925     frame_b4b67b644d397a3a2daa7fbbf9cd6ad1->m_frame.f_lineno = 43;
926     {
927         PyObject *call_args[] = { tmp_args_element_name_7, tmp_args_element_name_8, tmp_args_element_name_9, tmp_args_element_name_10, tmp_args_element_name_11, tmp_args_element_name_12 };
928         tmp_unused = CALL_FUNCTION_WITH_ARGS6( tmp_called_name_9, call_args );
929     }
930  
931     Py_DECREF( tmp_called_name_9 );
932     if ( tmp_unused == NULL )
933     {
934         assert( ERROR_OCCURRED() );
935  
936         FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
937  
938  
939         exception_lineno = 43;
940         type_description_1 = "ooooooo";
941         goto frame_exception_exit_1;
942     }
943     Py_DECREF( tmp_unused );
944     tmp_source_name_3 = var_inst;
945  
946     if ( tmp_source_name_3 == NULL )
947     {
948  
949         exception_type = PyExc_UnboundLocalError;
950         Py_INCREF( exception_type );
951         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "inst" );
952         exception_tb = NULL;
953         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
954         CHAIN_EXCEPTION( exception_value );
955  
956         exception_lineno = 44;
957         type_description_1 = "ooooooo";
958         goto frame_exception_exit_1;
959     }
960  
961     tmp_called_name_10 = LOOKUP_ATTRIBUTE( tmp_source_name_3, const_str_plain_compiled_method );
962     if ( tmp_called_name_10 == NULL )
963     {
964         assert( ERROR_OCCURRED() );
965  
966         FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
967  
968  
969         exception_lineno = 44;
970         type_description_1 = "ooooooo";
971         goto frame_exception_exit_1;
972     }
973     tmp_args_element_name_13 = var_a;
974  
975     if ( tmp_args_element_name_13 == NULL )
976     {
977         Py_DECREF( tmp_called_name_10 );
978         exception_type = PyExc_UnboundLocalError;
979         Py_INCREF( exception_type );
980         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "a" );
981         exception_tb = NULL;
982         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
983         CHAIN_EXCEPTION( exception_value );
984  
985         exception_lineno = 44;
986         type_description_1 = "ooooooo";
987         goto frame_exception_exit_1;
988     }
989  
990     tmp_args_element_name_14 = var_b;
991  
992     if ( tmp_args_element_name_14 == NULL )
993     {
994         Py_DECREF( tmp_called_name_10 );
995         exception_type = PyExc_UnboundLocalError;
996         Py_INCREF( exception_type );
997         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "b" );
998         exception_tb = NULL;
999         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
1000         CHAIN_EXCEPTION( exception_value );
1001  
1002         exception_lineno = 44;
1003         type_description_1 = "ooooooo";
1004         goto frame_exception_exit_1;
1005     }
1006  
1007     tmp_args_element_name_15 = var_c;
1008  
1009     if ( tmp_args_element_name_15 == NULL )
1010     {
1011         Py_DECREF( tmp_called_name_10 );
1012         exception_type = PyExc_UnboundLocalError;
1013         Py_INCREF( exception_type );
1014         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "c" );
1015         exception_tb = NULL;
1016         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
1017         CHAIN_EXCEPTION( exception_value );
1018  
1019         exception_lineno = 44;
1020         type_description_1 = "ooooooo";
1021         goto frame_exception_exit_1;
1022     }
1023  
1024     tmp_args_element_name_16 = var_d;
1025  
1026     if ( tmp_args_element_name_16 == NULL )
1027     {
1028         Py_DECREF( tmp_called_name_10 );
1029         exception_type = PyExc_UnboundLocalError;
1030         Py_INCREF( exception_type );
1031         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "d" );
1032         exception_tb = NULL;
1033         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
1034         CHAIN_EXCEPTION( exception_value );
1035  
1036         exception_lineno = 44;
1037         type_description_1 = "ooooooo";
1038         goto frame_exception_exit_1;
1039     }
1040  
1041     tmp_args_element_name_17 = var_f;
1042  
1043     if ( tmp_args_element_name_17 == NULL )
1044     {
1045         Py_DECREF( tmp_called_name_10 );
1046         exception_type = PyExc_UnboundLocalError;
1047         Py_INCREF( exception_type );
1048         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "f" );
1049         exception_tb = NULL;
1050         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
1051         CHAIN_EXCEPTION( exception_value );
1052  
1053         exception_lineno = 44;
1054         type_description_1 = "ooooooo";
1055         goto frame_exception_exit_1;
1056     }
1057  
1058     tmp_args_element_name_18 = var_e;
1059  
1060     if ( tmp_args_element_name_18 == NULL )
1061     {
1062         Py_DECREF( tmp_called_name_10 );
1063         exception_type = PyExc_UnboundLocalError;
1064         Py_INCREF( exception_type );
1065         exception_value = PyUnicode_FromFormat( "local variable '%s' referenced before assignment", "e" );
1066         exception_tb = NULL;
1067         NORMALIZE_EXCEPTION( &exception_type, &exception_value, &exception_tb );
1068         CHAIN_EXCEPTION( exception_value );
1069  
1070         exception_lineno = 44;
1071         type_description_1 = "ooooooo";
1072         goto frame_exception_exit_1;
1073     }
1074  
1075     frame_b4b67b644d397a3a2daa7fbbf9cd6ad1->m_frame.f_lineno = 44;
1076     {
1077         PyObject *call_args[] = { tmp_args_element_name_13, tmp_args_element_name_14, tmp_args_element_name_15, tmp_args_element_name_16, tmp_args_element_name_17, tmp_args_element_name_18 };
1078         tmp_unused = CALL_FUNCTION_WITH_ARGS6( tmp_called_name_10, call_args );
1079     }
1080  
1081     Py_DECREF( tmp_called_name_10 );
1082     if ( tmp_unused == NULL )
1083     {
1084         assert( ERROR_OCCURRED() );
1085  
1086         FETCH_ERROR_OCCURRED( &exception_type, &exception_value, &exception_tb );
1087  
1088  
1089         exception_lineno = 44;
1090         type_description_1 = "ooooooo";
1091         goto frame_exception_exit_1;
1092     }
1093     Py_DECREF( tmp_unused );
1094 633
1095 #if 0 634 #if 0
1096     RESTORE_FRAME_EXCEPTION( frame_b4b67b644d397a3a2daa7fbbf9cd6ad1 ); 635     RESTORE_FRAME_EXCEPTION( frame_b4b67b644d397a3a2daa7fbbf9cd6ad1 );
1097 #endif 636 #endif
1098 637
1203     Py_XDECREF( var_e ); 742     Py_XDECREF( var_e );
1204     var_e = NULL; 743     var_e = NULL;
1205 744
1206     Py_XDECREF( var_f ); 745     Py_XDECREF( var_f );
1207     var_f = NULL; 746     var_f = NULL;
t 1208   t
1209     Py_XDECREF( var_inst );
1210     var_inst = NULL;
1211 747
1212     // Re-raise. 748     // Re-raise.
1213     exception_type = exception_keeper_type_1; 749     exception_type = exception_keeper_type_1;
1214     exception_value = exception_keeper_value_1; 750     exception_value = exception_keeper_value_1;
1215     exception_tb = exception_keeper_tb_1; 751     exception_tb = exception_keeper_tb_1;