File: 0012-implement-new-Python-3.11-opcode-RESUME.patch

package info (click to toggle)
numba 0.56.4%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 23,672 kB
  • sloc: python: 183,651; ansic: 15,370; cpp: 2,259; javascript: 424; sh: 308; makefile: 174
file content (47 lines) | stat: -rw-r--r-- 1,472 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
From: esc <esc@users.noreply.github.com>
Origin: https://github.com/numba/numba/pull/8545
Date: Mon, 22 Aug 2022 15:24:29 +0200
Subject: implement new Python 3.11 opcode: RESUME

With Python 3.11 a new Bytecode has been introduced: `RESUME`.

The documentation states that:

```
RESUME has been added. It is a no-op. Performs internal tracing, debugging and optimization checks.
```

And so, this is implemented as a `NOP` (no-operation) in Numba.
---
 numba/core/byteflow.py    | 3 +++
 numba/core/interpreter.py | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/numba/core/byteflow.py b/numba/core/byteflow.py
index 19b5959..5c7ebfd 100644
--- a/numba/core/byteflow.py
+++ b/numba/core/byteflow.py
@@ -287,6 +287,9 @@ class TraceRunner(object):
     def op_NOP(self, state, inst):
         state.append(inst)
 
+    def op_RESUME(self, state, inst):
+        state.append(inst)
+
     def op_FORMAT_VALUE(self, state, inst):
         """
         FORMAT_VALUE(flags): flags argument specifies format spec which is
diff --git a/numba/core/interpreter.py b/numba/core/interpreter.py
index 71ea498..0df5dbf 100644
--- a/numba/core/interpreter.py
+++ b/numba/core/interpreter.py
@@ -1709,6 +1709,9 @@ class Interpreter(object):
     def op_NOP(self, inst):
         pass
 
+    def op_RESUME(self, inst):
+        pass
+
     def op_PRINT_ITEM(self, inst, item, printvar, res):
         item = self.get(item)
         printgv = ir.Global("print", print, loc=self.loc)