# Copyright lowRISC contributors (OpenTitan project).
# Licensed under the Apache License, Version 2.0, see LICENSE for details.
# SPDX-License-Identifier: Apache-2.0
#
# comportable IP waiver rules for ascentlint

# auto-generated register files

waive -rules CONST_FF             -location {*_reg_top*} -regexp {rsp_opcode.*is driven by constant zeros} \
      -comment "makes the code more readable"
waive -rules CONST_OUTPUT         -location {*_reg_top*} -regexp {Output 'tl_o.d_(param|size|sink|user)' is driven by constant} \
      -comment "makes the code more readable"
waive -rules INPUT_NOT_READ       -location {*_reg_top*} -regexp {Input port.*a_(address|param|user).*not read from} \
      -comment "several TLUL signals are not used by register file"
waive -rules HIER_NET_NOT_READ    -location {*_reg_top*} -regexp {Net 'tl_reg_h2d.a_(address|param|user).* is not read from} \
      -comment "several TLUL signals are not used by register file"
waive -rules CASE_SEL_CONST       -location {*_reg_top*} \
      -comment "addr_hit is one hot encoded."
waive -rules LINE_LENGTH          -location {*_reg_top*} -regexp {Line length of .* exceeds .* character limit} \
      -comment "These files are one-liners in order to comply with our SV style guide."
waive -rules CONST_FF             -location {*_reg_top*} -regexp {Flip-flop '(shadow_|)rst_done' is driven by constant one} \
      -comment "This flop implements a reset done indication and is therefore driven by a constant 1."
