chipsalliance / chipsalliance/Surelog
Inconsistent use of typespecs with parameters
- Dominant language
- C++
- Stars
- 475
- Forks
- 90
- Avg merge
- 1h 39m
- Merged PRs (30d)
- 37
Description
Test: ArianeElab
https://github.com/chipsalliance/Surelog/blob/b3db4c695d0007fe9350906cfda276ae6c5563a7/tests/ArianeElab/dut.sv#L15-L20
```
|vpiParameter:
\_parameter: (riscv::XLEN), line:15:16, endln:15:20, parent:riscv::
|UINT:64
|vpiTypespec:
\_int_typespec:
|vpiLocalParam:1
|vpiName:XLEN
|vpiFullName:riscv::XLEN
|vpiParameter:
\_parameter: (riscv::VLEN), line:19:16, endln:19:20, parent:riscv::
|vpiLocalParam:1
|vpiName:VLEN
|vpiFullName:riscv::VLEN
|vpiParameter:
\_parameter: (riscv::PLEN), line:20:16, endln:20:20, parent:riscv::
|vpiLocalParam:1
|vpiName:PLEN
|vpiFullName:riscv::PLEN
```
The statement on line 15 has `int_typespec` but the others have none.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with tests/ArianeElab/dut.sv at lines 15–20 and compare the generated VPI output for XLEN, VLEN, and PLEN. Trace how the elaborator represents these parameters and determine the intended consistent typespec behavior. Done means the three parameter results follow the same documented convention and the ArianeElab test confirms it.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- compilers
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100