Skip to content

Commit 08ec36f

Browse files
wanda-phiwhitequark
authored andcommitted
tracer: cover more CALL_* opcodes.
1 parent 4af9fed commit 08ec36f

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

amaranth/tracer.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ def get_var_name(depth=2, default=_raise_exception):
2525
else:
2626
break
2727
if call_opc not in ("CALL_FUNCTION", "CALL_FUNCTION_KW", "CALL_FUNCTION_EX",
28-
"CALL_METHOD", "CALL", "CALL_KW"):
28+
"CALL_METHOD", "CALL_METHOD_KW", "CALL", "CALL_KW"):
2929
if default is _raise_exception:
3030
raise NameNotFound
3131
else:

tests/test_tracer.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
from amaranth.hdl.ast import *
2+
from amaranth.hdl import ast
23
from types import SimpleNamespace
34

45
from .utils import *
@@ -10,6 +11,22 @@ def test_fast(self):
1011
s2 = Signal()
1112
self.assertEqual(s2.name, "s2")
1213

14+
def test_call_variants(self):
15+
args = []
16+
kwargs = {}
17+
s1 = Signal()
18+
self.assertEqual(s1.name, "s1")
19+
s2 = Signal(reset=0)
20+
self.assertEqual(s2.name, "s2")
21+
s3 = Signal(*args, **kwargs)
22+
self.assertEqual(s3.name, "s3")
23+
s4 = ast.Signal()
24+
self.assertEqual(s4.name, "s4")
25+
s5 = ast.Signal(reset=0)
26+
self.assertEqual(s5.name, "s5")
27+
s6 = ast.Signal(*args, **kwargs)
28+
self.assertEqual(s6.name, "s6")
29+
1330
def test_name(self):
1431
class Dummy:
1532
s1 = Signal()

0 commit comments

Comments
 (0)