[issue38310] Opcode predictions for asserts, class definitions, and some calls.

Brandt Bucher report at bugs.python.org
Sat Sep 28 15:15:08 EDT 2019


New submission from Brandt Bucher <brandtbucher at gmail.com>:

This patch adds four new opcode predictions:

BUILD_MAP_UNPACK_WITH_CALL -> CALL_FUNCTION_EX:
 - Emitted whenever more than one map of **kwargs is unpacked into a call.
 - Pair *always* occurs together.

LOAD_BUILD_CLASS -> LOAD_CONST:
 - Emitted whenever a class is defined *without* the use of cell vars.
 - Occurs ~93% of the time, in my analysis.

LOAD_BUILD_CLASS -> LOAD_CLOSURE:
 - Emitted whenever a class is defined *with* the use of cell vars.
 - Occurs the other ~7% of the time

LOAD_ASSERTION_ERROR -> RAISE_VARARGS:
 - Emitted whenever the one-argument form of "assert" is used.
 - Occurs ~91% of the time.

----------
components: Interpreter Core
messages: 353472
nosy: brandtbucher
priority: normal
severity: normal
status: open
title: Opcode predictions for asserts, class definitions, and some calls.
type: performance
versions: Python 3.9

_______________________________________
Python tracker <report at bugs.python.org>
<https://bugs.python.org/issue38310>
_______________________________________


More information about the Python-bugs-list mailing list