|  | // Copyright lowRISC contributors. | 
|  | // Licensed under the Apache License, Version 2.0, see LICENSE for details. | 
|  | // SPDX-License-Identifier: Apache-2.0 | 
|  |  | 
|  | `verilator_config | 
|  |  | 
|  | // Tell the Verilator scheduler to split up these variables into | 
|  | // separate pieces when it's figuring out process scheduling. This | 
|  | // avoids spurious UNOPTFLAT warnings caused by the fact that the | 
|  | // arrays feed into themselves (with different bits for different | 
|  | // positions in the tree). | 
|  | split_var -module "prim_arbiter_fixed" -var "data_tree" | 
|  | split_var -module "prim_arbiter_fixed" -var "gnt_tree" | 
|  | split_var -module "prim_arbiter_fixed" -var "idx_tree" | 
|  | split_var -module "prim_arbiter_fixed" -var "req_tree" | 
|  |  | 
|  | split_var -module "prim_arbiter_tree" -var "req_tree" | 
|  | split_var -module "prim_arbiter_tree" -var "prio_tree" | 
|  | split_var -module "prim_arbiter_tree" -var "sel_tree" | 
|  | split_var -module "prim_arbiter_tree" -var "mask_tree" | 
|  | split_var -module "prim_arbiter_tree" -var "idx_tree" | 
|  | split_var -module "prim_arbiter_tree" -var "data_tree" | 
|  |  | 
|  | // Waive ALWCOMBORDER warnings about the tree variables. We've got | 
|  | // lines like "req_tree[Pa] = req_tree[C0] | req_tree[C1];" and it | 
|  | // seems that the ALWCOMBORDER warning isn't affected by the split_var | 
|  | // rules above. | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_fixed.sv" -match "*data_tree*" | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_fixed.sv" -match "*gnt_tree*" | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_fixed.sv" -match "*idx_tree*" | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_fixed.sv" -match "*req_tree*" | 
|  |  | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_tree.sv" -match "*req_tree*" | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_tree.sv" -match "*prio_tree*" | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_tree.sv" -match "*sel_tree*" | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_tree.sv" -match "*mask_tree*" | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_tree.sv" -match "*idx_tree*" | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_tree.sv" -match "*data_tree*" | 
|  |  | 
|  | lint_off -rule ALWCOMBORDER -file "*/rtl/prim_arbiter_ppc.sv" -match "*ppc_out*" | 
|  |  | 
|  | // Waive unused clk and reset signals: they're just used for | 
|  | // assertions (which Verilator doesn't see) | 
|  | lint_off -rule UNUSED -file "*/rtl/prim_arbiter_fixed.sv" -match "*clk_i*" | 
|  | lint_off -rule UNUSED -file "*/rtl/prim_arbiter_fixed.sv" -match "*rst_ni*" |