llvm / llvm/circt

[MooreToCore] Support for Unsized Array Type

Open
#8,292 5 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
2.2k
Forks
524
Avg merge
3d 2h
Merged PRs (30d)
46

Description

Unsized array type in systemverilog like `OpenArrayType`, `QueueType` can't be lower to Arc Dialect, because Arc only has sized array type.

Common programming language like `Cpp` can directly call `mmap` provided by OS to get dynamic size array. I can't see this kind of ability in systemverilog.

So how to achieve that if we want to solve #8276? Can you give me some advice?

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reading issue #8276 and tracing how OpenArrayType and QueueType are lowered into the Arc Dialect. The issue names no files or tests, so first identify the relevant lowering entry points and existing sized-array handling. Done means an agreed design for representing unsized SystemVerilog arrays in Arc, with the required implementation scope identified.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
compilers
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.