| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -4149,9 +4149,7 @@ dummy_func( | |||
| 4149 | 4149 | } | |
| 4150 | 4150 | ||
| 4151 | 4151 | op(_JUMP_TO_TOP, (--)) { | |
| 4152 | - #ifndef _Py_JIT | ||
| 4153 | - next_uop = ¤t_executor->trace[1]; | ||
| 4154 | - #endif | ||
| 4152 | + JUMP_TO_JUMP_TARGET(); | ||
| 4155 | 4153 | } | |
| 4156 | 4154 | ||
| 4157 | 4155 | tier2 op(_SET_IP, (instr_ptr/4 --)) { | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -1059,6 +1059,11 @@ prepare_for_execution(_PyUOpInstruction *buffer, int length) | |||
| 1059 | 1059 | buffer[i].jump_target = 0; | |
| 1060 | 1060 | } | |
| 1061 | 1061 | } | |
| 1062 | + if (opcode == _JUMP_TO_TOP) { | ||
| 1063 | + assert(buffer[0].opcode == _START_EXECUTOR); | ||
| 1064 | + buffer[i].format = UOP_FORMAT_JUMP; | ||
| 1065 | + buffer[i].jump_target = 1; | ||
| 1066 | + } | ||
| 1062 | 1067 | } | |
| 1063 | 1068 | return next_spare; | |
| 1064 | 1069 | } | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -42,8 +42,6 @@ class HoleValue(enum.Enum): | |||
| 42 | 42 | ERROR_TARGET = enum.auto() | |
| 43 | 43 | # The index of the exit to be jumped through (exposed as _JIT_EXIT_INDEX): | |
| 44 | 44 | EXIT_INDEX = enum.auto() | |
| 45 | - # The base address of the machine code for the first uop (exposed as _JIT_TOP): | ||
| 46 | - TOP = enum.auto() | ||
| 47 | 45 | # A hardcoded value of zero (used for symbol lookups): | |
| 48 | 46 | ZERO = enum.auto() | |
| 49 | 47 | ||
@@ -110,7 +108,6 @@ class HoleValue(enum.Enum): | |||
| 110 | 108 | HoleValue.JUMP_TARGET: "instruction_starts[instruction->jump_target]", | |
| 111 | 109 | HoleValue.ERROR_TARGET: "instruction_starts[instruction->error_target]", | |
| 112 | 110 | HoleValue.EXIT_INDEX: "instruction->exit_index", | |
| 113 | - HoleValue.TOP: "instruction_starts[1]", | ||
| 114 | 111 | HoleValue.ZERO: "", | |
| 115 | 112 | } | |
| 116 | 113 | ||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -105,9 +105,6 @@ _JIT_ENTRY(_PyInterpreterFrame *frame, PyObject **stack_pointer, PyThreadState * | |||
| 105 | 105 | UOP_STAT_INC(uopcode, execution_count); | |
| 106 | 106 | ||
| 107 | 107 | // The actual instruction definitions (only one will be used): | |
| 108 | - if (uopcode == _JUMP_TO_TOP) { | ||
| 109 | - PATCH_JUMP(_JIT_TOP); | ||
| 110 | - } | ||
| 111 | 108 | switch (uopcode) { | |
| 112 | 109 | #include "executor_cases.c.h" | |
| 113 | 110 | default: | |
| Back | FazBrowse Home | New Git URL |
0 commit comments