mirror of
https://github.com/YosysHQ/sby.git
synced 2025-04-15 09:48:43 +00:00
sby: core: Started on the initial stages setup script generation
This commit is contained in:
parent
81ee5fdd5a
commit
eb90f08086
|
@ -443,7 +443,7 @@ class SbyConfig:
|
|||
|
||||
if mode == "setup":
|
||||
_valid_options = (
|
||||
"cutpoint", "disable", "enable", "assume", "define"
|
||||
"cutpoint", "disable", "enable", "assume", "define", "invoke"
|
||||
)
|
||||
|
||||
args = line.strip().split(maxsplit = 1)
|
||||
|
@ -546,6 +546,41 @@ class SbyConfig:
|
|||
def error(self, logmessage):
|
||||
raise SbyAbort(logmessage)
|
||||
|
||||
def gen_setup_script(self):
|
||||
script = '# Autogenerated by SBY stage setup\n'
|
||||
|
||||
def cutpoint(v):
|
||||
return f"cutpoint {v}"
|
||||
|
||||
def disable(v):
|
||||
return f"select -del {v}"
|
||||
|
||||
def enable(v):
|
||||
return f"select -add {v}"
|
||||
|
||||
def assume(v):
|
||||
return f"chformal -assert2assume {v}"
|
||||
|
||||
def define(v):
|
||||
return f"select -set {v}"
|
||||
|
||||
def invoke(v):
|
||||
return f"{v}"
|
||||
|
||||
for k, v in self.setup.items():
|
||||
script += {
|
||||
'cutpoint': cutpoint(v),
|
||||
'disable': disable(v),
|
||||
'enable': enable(v),
|
||||
'assume': assume(v),
|
||||
'define': define(v),
|
||||
'invoke': invoke(v)
|
||||
}.get(k, '') + '\n'
|
||||
|
||||
# TODO: Invert selection, then `chformal -assert -remove`
|
||||
|
||||
return script
|
||||
|
||||
|
||||
class SbyTaskloop:
|
||||
def __init__(self, jobclient=None):
|
||||
|
|
Loading…
Reference in a new issue