cva6
cva6 copied to clipboard
[TASK] Enforce CVA6 Spyglass lint rules
Is there an existing CVA6 task for this?
- [X] I have searched the existing task issues
Task Description
Use verible to lint RTL located in cva6/core directory and enforce results with GitHub action running on each PR.
As verible is open-source, every CVA6 contributor can use it contrary to proprietary tools.
Required Changes
Remove lint warnings identified by verible rules
Current Status
Number of verible lint warnings on cva6/core directory on 2023-12-05 (commit https://github.com/openhwgroup/cva6/commit/3720295bd3b3b72f581451ee4412a04cbf5f37ad)
verible-v0.0-3430-g060bde0f/bin/verible-verilog-lint *.sv */*.sv */*/*.sv
total: 1585 [always-ff-non-blocking]: 4 [case-missing-default]: 16 [enum-name-style]: 1 [explicit-function-lifetime]: 4 [explicit-parameter-storage-type]: 849 [forbid-line-continuations]: 1 [generate-label-prefix]: 22 [generate-label]: 50 [invalid-system-task-function]: 1 [line-length]: 318 [module-filename]: 3 [no-trailing-spaces]: 19 [package-filename]: 13 [parameter-name-style]: 177 [suggest-parentheses]: 1 [truncated-numeric-literal]: 9 [typedef-enums]: 14 [typedef-structs-unions]: 13 [undersized-binary-literal]: 13 [unpacked-dimensions-range-ordering]: 57
Risks
No response
Prerequisites
- Task https://github.com/openhwgroup/cva6/issues/1377 completed
- Define which verible lint warnings to fix
KPI (KEY Performance Indicators)
No response
Description of Done
- Resolution of
cva6/coredirectory lint warnings - For the unsolved warnings, related lint waivers in place
- GitHub action enforcing verible lint on each pull request
Associated PRs
No response
Spyglass has been preferred to Verible to execute LINT on CVA6.