google / google/xls

Verilog codegen for tuple outputs should retain their structure

Open
#394 4 comments 0 reactions 0 assignees View on GitHub
codegen enhancement
Dominant language
C++
Stars
1.9k
Forks
283
Avg merge
2d 10h
Merged PRs (30d)
135

Description

I have a DSLX function that returns a tuple of type `(u1, u8)`. The tuple fields are called `(result, state)`. I would expect the emitted verilog to look like this:

```
output wire result,
output wire [7:0] state
```

Instead, I get a packed bit vector called `output wire [8:0] out`.

This is still usable, but generally it would be easier to integrate the generated code if the fields were unpacked into separate output ports.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.