VCS编译进阶-lint

lint 是一个代码静态检查工具。vcs 中 -lint 可以在编译期间查找部分代码问题,辅助完成一些代码clean工作,例如长度不匹配,未初始化就使用等问题,利用它能在早期纠正代码中的问题。

通过 vcs -h 查看它的基本参数,其中all包括所有的 ID 选项检查,而 none 是排除所有的 ID 选项检查。

+lint=[no]ID|none|all,...

几种基本的使用组合:

+lint=ID1, ID2             //主动打开某些 ID 选项检查
+lint=all,noID1,noID2      //打开除了 ID1, ID2 之外所有 ID 选项检查
+lint=all                  //打开所有 ID 选项检查
+lint=none                 //关闭所有 ID 选项检查,这是默认选项

目前可用的 ID 选项检查:

Lint-[IRIMW] Illegal range in memory word

Lint-[NCEID} Non-constant expression in delay

Lint-[GCWM] Gate connection width mismatch

Lint-[CAWM] Continuous Assignment width mismatch

Lint-[IGSFPG] Illegal gate strength for pull gate

Lint-[TFIPC] Too few instance port connections

lint-[IPDP] Identifier previously declared as port

lint-[PCWM] Port connect width mismatch

其他选项:

  1. 可以通过 -error=all 来强制解决所有的 lint warning
  2. -warn=ID 可以达到和 -lint=ID 相同的效果; -supress=ID 可以达到和 -lint=noID 相同的效果
  3. vcs manual 文档中没有完整的 ID 列表,可以先使用 -lint=all 打开所有的检查,然后将认为不需要报警的 ID 检查屏蔽掉。
  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值