mirror of https://github.com/python/cpython
GH-125515: Reduce number of compiler warnings in generated code (GH-125697)
This commit is contained in:
parent
19e93e2e26
commit
25441592db
|
@ -242,7 +242,7 @@ int _PyOpcode_num_popped(int opcode, int oparg) {
|
||||||
case INSTRUMENTED_LINE:
|
case INSTRUMENTED_LINE:
|
||||||
return 0;
|
return 0;
|
||||||
case INSTRUMENTED_LOAD_SUPER_ATTR:
|
case INSTRUMENTED_LOAD_SUPER_ATTR:
|
||||||
return 3;
|
return 0;
|
||||||
case INSTRUMENTED_POP_JUMP_IF_FALSE:
|
case INSTRUMENTED_POP_JUMP_IF_FALSE:
|
||||||
return 0;
|
return 0;
|
||||||
case INSTRUMENTED_POP_JUMP_IF_NONE:
|
case INSTRUMENTED_POP_JUMP_IF_NONE:
|
||||||
|
@ -701,7 +701,7 @@ int _PyOpcode_num_pushed(int opcode, int oparg) {
|
||||||
case INSTRUMENTED_LINE:
|
case INSTRUMENTED_LINE:
|
||||||
return 0;
|
return 0;
|
||||||
case INSTRUMENTED_LOAD_SUPER_ATTR:
|
case INSTRUMENTED_LOAD_SUPER_ATTR:
|
||||||
return 1 + (oparg & 1);
|
return 0;
|
||||||
case INSTRUMENTED_POP_JUMP_IF_FALSE:
|
case INSTRUMENTED_POP_JUMP_IF_FALSE:
|
||||||
return 0;
|
return 0;
|
||||||
case INSTRUMENTED_POP_JUMP_IF_NONE:
|
case INSTRUMENTED_POP_JUMP_IF_NONE:
|
||||||
|
@ -1117,7 +1117,7 @@ const struct opcode_metadata _PyOpcode_opcode_metadata[266] = {
|
||||||
[INSTRUMENTED_JUMP_BACKWARD] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },
|
[INSTRUMENTED_JUMP_BACKWARD] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG | HAS_EVAL_BREAK_FLAG | HAS_ERROR_FLAG | HAS_ESCAPES_FLAG },
|
||||||
[INSTRUMENTED_JUMP_FORWARD] = { true, INSTR_FMT_IB, HAS_ARG_FLAG },
|
[INSTRUMENTED_JUMP_FORWARD] = { true, INSTR_FMT_IB, HAS_ARG_FLAG },
|
||||||
[INSTRUMENTED_LINE] = { true, INSTR_FMT_IX, HAS_ESCAPES_FLAG },
|
[INSTRUMENTED_LINE] = { true, INSTR_FMT_IX, HAS_ESCAPES_FLAG },
|
||||||
[INSTRUMENTED_LOAD_SUPER_ATTR] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG },
|
[INSTRUMENTED_LOAD_SUPER_ATTR] = { true, INSTR_FMT_IXC, 0 },
|
||||||
[INSTRUMENTED_POP_JUMP_IF_FALSE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG },
|
[INSTRUMENTED_POP_JUMP_IF_FALSE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG },
|
||||||
[INSTRUMENTED_POP_JUMP_IF_NONE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG },
|
[INSTRUMENTED_POP_JUMP_IF_NONE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG },
|
||||||
[INSTRUMENTED_POP_JUMP_IF_NOT_NONE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG },
|
[INSTRUMENTED_POP_JUMP_IF_NOT_NONE] = { true, INSTR_FMT_IBC, HAS_ARG_FLAG },
|
||||||
|
|
|
@ -974,7 +974,9 @@ dummy_func(
|
||||||
tstate->current_frame = frame->previous;
|
tstate->current_frame = frame->previous;
|
||||||
assert(!_PyErr_Occurred(tstate));
|
assert(!_PyErr_Occurred(tstate));
|
||||||
tstate->c_recursion_remaining += PY_EVAL_C_STACK_UNITS;
|
tstate->c_recursion_remaining += PY_EVAL_C_STACK_UNITS;
|
||||||
return PyStackRef_AsPyObjectSteal(retval);
|
PyObject *result = PyStackRef_AsPyObjectSteal(retval);
|
||||||
|
SYNC_SP(); /* Not strictly necessary, but prevents warnings */
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
// The stack effect here is ambiguous.
|
// The stack effect here is ambiguous.
|
||||||
|
@ -1874,7 +1876,7 @@ dummy_func(
|
||||||
ERROR_IF(err != 0, error);
|
ERROR_IF(err != 0, error);
|
||||||
}
|
}
|
||||||
|
|
||||||
inst(INSTRUMENTED_LOAD_SUPER_ATTR, (unused/1, unused, unused, unused -- unused, unused if (oparg & 1))) {
|
inst(INSTRUMENTED_LOAD_SUPER_ATTR, (unused/1 -- )) {
|
||||||
// cancel out the decrement that will happen in LOAD_SUPER_ATTR; we
|
// cancel out the decrement that will happen in LOAD_SUPER_ATTR; we
|
||||||
// don't want to specialize instrumented instructions
|
// don't want to specialize instrumented instructions
|
||||||
PAUSE_ADAPTIVE_COUNTER(this_instr[1].counter);
|
PAUSE_ADAPTIVE_COUNTER(this_instr[1].counter);
|
||||||
|
|
|
@ -4747,8 +4747,6 @@
|
||||||
// don't want to specialize instrumented instructions
|
// don't want to specialize instrumented instructions
|
||||||
PAUSE_ADAPTIVE_COUNTER(this_instr[1].counter);
|
PAUSE_ADAPTIVE_COUNTER(this_instr[1].counter);
|
||||||
GO_TO_INSTRUCTION(LOAD_SUPER_ATTR);
|
GO_TO_INSTRUCTION(LOAD_SUPER_ATTR);
|
||||||
stack_pointer += -1;
|
|
||||||
assert(WITHIN_STACK_BOUNDS());
|
|
||||||
}
|
}
|
||||||
|
|
||||||
TARGET(INSTRUMENTED_POP_JUMP_IF_FALSE) {
|
TARGET(INSTRUMENTED_POP_JUMP_IF_FALSE) {
|
||||||
|
@ -5060,9 +5058,11 @@
|
||||||
tstate->current_frame = frame->previous;
|
tstate->current_frame = frame->previous;
|
||||||
assert(!_PyErr_Occurred(tstate));
|
assert(!_PyErr_Occurred(tstate));
|
||||||
tstate->c_recursion_remaining += PY_EVAL_C_STACK_UNITS;
|
tstate->c_recursion_remaining += PY_EVAL_C_STACK_UNITS;
|
||||||
return PyStackRef_AsPyObjectSteal(retval);
|
PyObject *result = PyStackRef_AsPyObjectSteal(retval);
|
||||||
stack_pointer += -1;
|
stack_pointer += -1;
|
||||||
assert(WITHIN_STACK_BOUNDS());
|
assert(WITHIN_STACK_BOUNDS());
|
||||||
|
/* Not strictly necessary, but prevents warnings */
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
TARGET(IS_OP) {
|
TARGET(IS_OP) {
|
||||||
|
|
|
@ -64,6 +64,7 @@ def declare_variables(uop: Uop, out: CWriter) -> None:
|
||||||
|
|
||||||
|
|
||||||
class Tier2Emitter(Emitter):
|
class Tier2Emitter(Emitter):
|
||||||
|
|
||||||
def __init__(self, out: CWriter):
|
def __init__(self, out: CWriter):
|
||||||
super().__init__(out)
|
super().__init__(out)
|
||||||
self._replacers["oparg"] = self.oparg
|
self._replacers["oparg"] = self.oparg
|
||||||
|
|
Loading…
Reference in New Issue