Skip to content

Conversation

towoe
Copy link
Contributor

@towoe towoe commented Jul 7, 2025

Support 'sequence' and 'property' declarations.
Slang already handles the references and variable ports. Make visiting of 'AssertionInstance' legal.
Those are part of 'Expressions' of the 'Simple' case. Adapt the visitor to handle the different return types.

Support 'sequence' and 'property' declarations.
Slang already handles the references and variable ports. Make visiting
of 'AssertionInstance' legal.
Those are part of 'Expressions' of the 'Simple' case. Adapt this visitor
to handle the varied return types.
@towoe
Copy link
Contributor Author

towoe commented Jul 7, 2025

One benefit of supporting the symbols would be that the named properties are then inlined.
If there is a proper path back to SV, this could provide a way to convert the named properties for other tools, e.g. Verilator.

Copy link
Contributor

@fabianschuiki fabianschuiki left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🥳 This is really cool! Great idea to just inline the sequence/property definitions for now. We can always come back later and think about how you would define and reuse sequences/properties in the IR. Love this! 🥳

Co-authored-by: Fabian Schuiki <fabian@schuiki.ch>
@towoe
Copy link
Contributor Author

towoe commented Jul 9, 2025

Thanks for the feedback @fabianschuiki!
Yeah, doing more optimization in the IR could be quite useful. Hopefully that is not too much technical debt to get to later :)
If you could push it, that would be great. Thanks!

@fabianschuiki fabianschuiki merged commit f91e77c into llvm:main Jul 9, 2025
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants