chipsalliance / chipsalliance/synlig

Encountered unhandled typespec in process_typespec_member: 'orv64_access_type_t' of type 'unsupported_typespec'

Open
#689 4 comments 0 reactions 0 assignees View on GitHub
Dominant language
Verilog
Stars
237
Forks
29
PR merge metrics
No merged PRs in 30d

Description

The full error is
`ERROR: /root/yosys-uhdm-plugin-integration/UHDM-integration-tests/tests/orv64/subproj/es1y/rtl_gen/pygmy_intf_typedef.sv:147: Encountered unhandled typespec in process_typespec_member: 'orv64_access_type_t' of type 'unsupported_typespec'`

the source code definition is
```
typedef struct packed {
orv64_vpn_t req_vpn;
orv64_access_type_t req_access_type;
} orv64_tlb_ptw_if_req_t;
```
where orv64_access_type_t is
```
typedef enum logic [1:0] {
ORV64_ACCESS_FETCH = 2'b00,
ORV64_ACCESS_LOAD = 2'b01,
ORV64_ACCESS_STORE = 2'b10,
ORV64_ACCESS_AMO = 2'b11
} orv64_access_type_t;
```
it may because uhdm don't support enum type.
the test case is [https://github.com/hello-eternity/test_orv64_uhdm/tree/typebug](https://github.com/hello-eternity/test_orv64_uhdm/tree/typebug)
this test case is on the typebug branch

Contributor guide

No contributing guide indexed for this repository

Research direction

Reproduce the error using the typebug branch of the linked test_orv64_uhdm repository and inspect the process_typespec_member entry point. Trace how the orv64_access_type_t enum inside the packed struct is classified as unsupported. Done means the reproduction no longer reports this unhandled typespec and the relevant test passes.

Written by the indexing model from the issue text.

Assessment

Domain
compilers
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.