View | Details | Raw Unified | Return to bug 40278
Collapse All | Expand All

(-)a/Python/ceval.c (+50 lines)
Lines 873-881 _PyEval_EvalFrameDefault(PyFrameObject *f, int throwflag) Link Here
873
873
874
#else
874
#else
875
#define TARGET(op) op
875
#define TARGET(op) op
876
#ifdef __e2k__
877
#ifdef LLTRACE
878
#define NO_LLTRACE !lltrace &&
879
#else
880
#define NO_LLTRACE 1
881
#endif
882
883
#define FAST_DISPATCH() \
884
    { \
885
        if (NO_LLTRACE && !_Py_TracingPossible(ceval) && !PyDTrace_LINE_ENABLED()) { \
886
            f->f_lasti = INSTR_OFFSET(); \
887
            NEXTOPARG(); \
888
            goto switch_loop; \
889
        } \
890
        goto fast_next_opcode; \
891
    }
892
893
#define DISPATCH() \
894
    { \
895
        if (!_Py_atomic_load_relaxed(eval_breaker)) { \
896
            FAST_DISPATCH(); \
897
        } \
898
        continue; \
899
    }
900
901
#else
876
#define FAST_DISPATCH() goto fast_next_opcode
902
#define FAST_DISPATCH() goto fast_next_opcode
877
#define DISPATCH() continue
903
#define DISPATCH() continue
878
#endif
904
#endif
905
#endif
879
906
880
907
881
/* Tuple access macros */
908
/* Tuple access macros */
Lines 1320-1325 main_loop: Link Here
1320
        }
1347
        }
1321
#endif
1348
#endif
1322
1349
1350
#ifdef __e2k__
1351
switch_loop:
1352
#endif
1323
        switch (opcode) {
1353
        switch (opcode) {
1324
1354
1325
        /* BEWARE!
1355
        /* BEWARE!
Lines 3691-3696 main_loop: Link Here
3691
        _unknown_opcode:
3721
        _unknown_opcode:
3692
#endif
3722
#endif
3693
        default:
3723
        default:
3724
#ifdef __e2k__
3725
            Py_UNREACHABLE();
3726
        /* $ awk '/unknown_opcode/{print "X(" NR-2 ")"}' opcode_targets.h */
3727
#define X(i) case i:
3728
        X(0) X(7) X(8) X(13) X(14) X(18) X(21) X(30) X(31) X(32) X(33) X(34)
3729
        X(35) X(36) X(37) X(38) X(39) X(40) X(41) X(42) X(43) X(44) X(45) X(46)
3730
        X(47) X(48) X(49) X(58) X(74) X(80) X(99) X(117) X(118) X(119) X(120)
3731
        X(121) X(123) X(127) X(128) X(129) X(134) X(139) X(140) X(159) X(164)
3732
        X(165) X(166) X(167) X(168) X(169) X(170) X(171) X(172) X(173) X(174)
3733
        X(175) X(176) X(177) X(178) X(179) X(180) X(181) X(182) X(183) X(184)
3734
        X(185) X(186) X(187) X(188) X(189) X(190) X(191) X(192) X(193) X(194)
3735
        X(195) X(196) X(197) X(198) X(199) X(200) X(201) X(202) X(203) X(204)
3736
        X(205) X(206) X(207) X(208) X(209) X(210) X(211) X(212) X(213) X(214)
3737
        X(215) X(216) X(217) X(218) X(219) X(220) X(221) X(222) X(223) X(224)
3738
        X(225) X(226) X(227) X(228) X(229) X(230) X(231) X(232) X(233) X(234)
3739
        X(235) X(236) X(237) X(238) X(239) X(240) X(241) X(242) X(243) X(244)
3740
        X(245) X(246) X(247) X(248) X(249) X(250) X(251) X(252) X(253) X(254)
3741
        X(255) 
3742
#undef X
3743
#endif
3694
            fprintf(stderr,
3744
            fprintf(stderr,
3695
                "XXX lineno: %d, opcode: %d\n",
3745
                "XXX lineno: %d, opcode: %d\n",
3696
                PyFrame_GetLineNumber(f),
3746
                PyFrame_GetLineNumber(f),

Return to bug 40278