# picking a magic number is a mess. So far it works because we
-# have only one extra opcode, which bumps the magic number by +2, and CPython
-# leaves a gap of 10 when it increases
-# its own magic number. To avoid assigning exactly the same numbers
-# as CPython we always add a +2. We'll have to think again when we
-# get three more new opcodes
+# have only one extra opcode which might or might not be present.
+# CPython leaves a gap of 10 when it increases its own magic number.
+# To avoid assigning exactly the same numbers as CPython, we can pick
+# any number between CPython + 2 and CPython + 9. Right now,
+# default_magic = CPython + 6.
-# default_magic -- used by CPython without the -U option
-# default_magic + 1 -- used by CPython with the -U option
-# default_magic + 2 -- used by PyPy without any extra opcode
-# default_magic + 5 -- used by PyPy with both extra opcodes
+# default_magic - 6 -- used by CPython without the -U option
+# default_magic - 5 -- used by CPython with the -U option
+# default_magic -- used by PyPy without the CALL_METHOD opcode
+# default_magic + 2 -- used by PyPy with the CALL_METHOD opcode
from pypy.interpreter.pycode import default_magic
MARSHAL_VERSION_FOR_PYC = 2