Remove dangerous usage of non-public parts of the systemrdl-compiler API

This commit is contained in:
Alex Mykyta
2025-11-15 12:23:39 -08:00
parent 610351d169
commit 7f572e05a4
4 changed files with 5 additions and 9 deletions

View File

@@ -7,7 +7,7 @@ name = "peakrdl-regblock"
dynamic = ["version"] dynamic = ["version"]
requires-python = ">=3.7" requires-python = ">=3.7"
dependencies = [ dependencies = [
"systemrdl-compiler ~= 1.30", "systemrdl-compiler ~= 1.31",
"Jinja2 >= 2.11", "Jinja2 >= 2.11",
] ]

View File

@@ -1,6 +1,5 @@
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from systemrdl.component import Reg
from systemrdl.node import RegNode from systemrdl.node import RegNode
from ..forloop_generator import RDLForLoopGenerator from ..forloop_generator import RDLForLoopGenerator
@@ -20,7 +19,6 @@ class RBufLogicGenerator(RDLForLoopGenerator):
def enter_Reg(self, node: RegNode) -> None: def enter_Reg(self, node: RegNode) -> None:
super().enter_Reg(node) super().enter_Reg(node)
assert isinstance(node.inst, Reg)
if not node.get_property('buffer_reads') or node.external: if not node.get_property('buffer_reads') or node.external:
return return

View File

@@ -25,8 +25,8 @@ class xBufferTrigger(UDPDefinition):
self.msg.error( self.msg.error(
"%s '%s' references %s '%s' but its width is not 1" "%s '%s' references %s '%s' but its width is not 1"
% ( % (
type(node.inst).__name__.lower(), node.inst_name, node.component_type_name, node.inst_name,
type(value.inst).__name__.lower(), value.inst_name value.component_type_name, value.inst_name
), ),
self.get_src_ref(node) self.get_src_ref(node)
) )
@@ -44,7 +44,7 @@ class xBufferTrigger(UDPDefinition):
self.msg.error( self.msg.error(
"%s '%s' references property '%s->%s' but its width is not 1" "%s '%s' references property '%s->%s' but its width is not 1"
% ( % (
type(node.inst).__name__.lower(), node.inst_name, node.component_type_name, node.inst_name,
value.node.inst_name, value.name, value.node.inst_name, value.name,
), ),
self.get_src_ref(node) self.get_src_ref(node)
@@ -59,7 +59,7 @@ class xBufferTrigger(UDPDefinition):
# All other reference types are invalid # All other reference types are invalid
self.msg.error( self.msg.error(
"Reference to a %s component is incompatible with the '%s' property." "Reference to a %s component is incompatible with the '%s' property."
% (type(node.inst).__name__.lower(), self.name), % (node.component_type_name, self.name),
self.get_src_ref(node) self.get_src_ref(node)
) )

View File

@@ -1,7 +1,6 @@
from typing import TYPE_CHECKING from typing import TYPE_CHECKING
from collections import namedtuple from collections import namedtuple
from systemrdl.component import Reg
from systemrdl.node import RegNode from systemrdl.node import RegNode
from ..forloop_generator import RDLForLoopGenerator from ..forloop_generator import RDLForLoopGenerator
@@ -21,7 +20,6 @@ class WBufLogicGenerator(RDLForLoopGenerator):
def enter_Reg(self, node: 'RegNode') -> None: def enter_Reg(self, node: 'RegNode') -> None:
super().enter_Reg(node) super().enter_Reg(node)
assert isinstance(node.inst, Reg)
if not node.get_property('buffer_writes') or node.external: if not node.get_property('buffer_writes') or node.external:
return return