Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
sv2v
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
lvzhengyang
sv2v
Commits
05cafc3d
Commit
05cafc3d
authored
Apr 16, 2024
by
Zachary Snow
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
scope bit-indexed modport binding
parent
7a7482c9
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
14 additions
and
2 deletions
+14
-2
.github/workflows/main.yaml
+1
-1
CHANGELOG.md
+1
-0
src/Convert/Interface.hs
+4
-1
src/Convert/Scoper.hs
+8
-0
No files found.
.github/workflows/main.yaml
View file @
05cafc3d
...
...
@@ -44,7 +44,7 @@ jobs:
-
macOS-13
needs
:
build
env
:
IVERILOG_REF
:
f31d0dcbc5ddcd97e1e2e6f7bc7eb0f5a547fe16
IVERILOG_REF
:
ef7f0a8f38782dfc0872b1e352ccf32343c10bb8
steps
:
-
uses
:
actions/checkout@v4
-
name
:
Install Dependencies (macOS)
...
...
CHANGELOG.md
View file @
05cafc3d
...
...
@@ -26,6 +26,7 @@
*
Fixed unconverted multidimensional struct fields within dimension queries
*
Fixed non-typenames (e.g., from packages or subsequent declarations)
improperly shadowing the names of
`struct`
pattern fields
*
Fixed shadowing of interface array indices passed to port connections
*
Fixed failure to resolve typenames suffixed with dimensions in contexts
permitting both types and expressions, e.g.,
`$bits(T[W-1:0])`
*
Fixed errant constant folding of shadowed non-trivial localparams
...
...
src/Convert/Interface.hs
View file @
05cafc3d
...
...
@@ -222,7 +222,10 @@ convertDescription tops parts (Part att ext Module lif name ports items) =
then
Nothing
else
Just
(
portName
,
modportBinding
)
where
modportBinding
=
(
substitutions
,
replaceBit
modportE
)
modportBinding
=
(
substitutions
,
scopeExprWithScopes
modports
$
replaceBit
modportE
)
substitutions
=
genSubstitutions
modports
base
instanceE
modportE
maybeInfo
=
...
...
src/Convert/Scoper.hs
View file @
05cafc3d
...
...
@@ -38,6 +38,8 @@ module Convert.Scoper
,
replaceInExpr
,
scopeExpr
,
scopeType
,
scopeExprWithScopes
,
scopeTypeWithScopes
,
insertElem
,
removeElem
,
injectItem
...
...
@@ -209,6 +211,12 @@ scopeType = traverseNestedTypesM $ traverseTypeExprsM scopeExpr
{-# INLINABLE scopeExpr #-}
{-# INLINABLE scopeType #-}
scopeExprWithScopes
::
Scopes
a
->
Expr
->
Expr
scopeExprWithScopes
scopes
=
flip
evalState
scopes
.
scopeExpr
scopeTypeWithScopes
::
Scopes
a
->
Type
->
Type
scopeTypeWithScopes
scopes
=
flip
evalState
scopes
.
scopeType
class
ScopePath
k
where
toTiers
::
Scopes
a
->
k
->
[
Tier
]
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment