Skip to content

Conversation

nachumg
Copy link
Contributor

@nachumg nachumg commented Sep 30, 2025

We have a working implementation, with many tests.

I plan to upstream the functionality in stages along with the relevant tests.

This change adds a guard flag that can be easily enabled when running any tool that embeds the compiler.

We have a working implementation, with many tests.

I plan to upstream the functionality in stages along with the relevant
tests.

This change adds a guard flag that can be easily enabled when
running any tool that embeds the compiler.
@amykyta3
Copy link
Member

amykyta3 commented Oct 3, 2025

Before merging this change, I would like to better understand the actual approach you took for implementing heterogeneous arrays and whether it fits safely within all the known use-cases. There are numerous possible approaches for this feature so I'd like to know how you did it.
I also have some architectural ideas on how to implement this, but was planning on deferring it to v2 of the compiler to allow better flexibility in making the API sensible. Ideally this would not be something gated by a feature flag since that creates excess maintenance complexity.

Please feel free to reach out to me either on the Matrix chat (https://matrix.to/#/#systemrdl:gitter.im) or via email (amykyta3 at gmail)

HETERO_ARRAYS = flags.DEFINE_bool(
'experimental_hetero_arrays',
False,
'Support heterogeneous arrays.')
Copy link
Member

Choose a reason for hiding this comment

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

This introduces a new package dependency to Google's Abseil library, but with seemingly no benefit. None of the other PeakRDL utilities use Abseil for command line processing, nor is this systemrdl-compiler package a command-line tool.

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