chipsalliance / chipsalliance/Surelog
"this" statement is not stored properly
- Dominant language
- C++
- Stars
- 475
- Forks
- 90
- Avg merge
- 1h 39m
- Merged PRs (30d)
- 37
Description
For the test case https://github.com/alainmarcel/uhdm-integration/blob/master/tests/OneThis/top.sv#L5, UHDM seems to be incomplete:
```
|vpiStmt:
\_named_begin: (work@foo::set::body), line:4, parent:work@foo::set
|vpiName:body
|vpiFullName:work@foo::set::body
|vpiStmt:
\_assignment: , line:5, parent:work@foo::set::body
|vpiOpType:82
|vpiBlocking:1
|vpiLhs:
\_constant: , line:5
|vpiDecompile:this
|STRING:this
|vpiRhs:
\_ref_obj: (work@foo::set::body::addr), line:5, parent:work@foo::set::body
|vpiName:addr
|vpiFullName:work@foo::set::body::addr
```
Reference to `addr` is missing in the LHS.
Contributor guide
No contributing guide indexed for this repository
Research direction
Start with the linked tests/OneThis/top.sv test case at line 5 and reproduce the UHDM output shown in the issue. Trace how the `this` assignment is represented, then verify that the left-hand side includes the `addr` reference and that the generated output no longer omits 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