// Copyright lowRISC contributors.
// Licensed under the Apache License, Version 2.0, see LICENSE for details.
// SPDX-License-Identifier: Apache-2.0
{
  build_cmd:  "vlib work && {job_prefix} vlog"
  run_cmd:    "{job_prefix} vsim"

  build_opts: ["-timescale 1ns/1ps",
               "+incdir+\"{RIVIERA_HOME}/vlib/uvm-1.2/src\"",
               "\"{RIVIERA_HOME}/vlib/uvm-1.2/src/uvm_pkg.sv\"",
               "-f {sv_flist}",
               // List multiple tops for the simulation. Prepend each top level with `-top`.
               "{eval_cmd} echo {sim_tops} | sed -E 's/(\\S+)/-top \\1/g'",
              ]

  run_opts:   ["-sv_seed={seed}",
               "-c",
               "{tb}",
               "-lib {sv_flist_gen_dir}/work",
               "+UVM_TESTNAME={uvm_test}",
               "+UVM_TEST_SEQ={uvm_test_seq}",
               "-sv_lib \"{RIVIERA_HOME}/bin/uvm_1_2_dpi\"",
               "-do {run_script}"]


  // Supported wave dumping formats (in order of preference).
  supported_wave_formats: []

  // Default tcl script used when running the sim. Override if needed.
  run_script: "{dv_root}/tools/riviera/riviera_run.do"

  // Coverage related.
  // TODO: These options have to be filled in.
  cov_db_dir: ""

  // Individual test specific coverage data - this will be deleted if the test fails
  // so that coverage from failiing tests is not included in the final report.
  cov_db_test_dir_name: "{run_dir_name}.{seed}"
  cov_db_test_dir: ""

  // Merging coverage.
  // "cov_db_dirs" is a special variable that appends all build directories in use.
  // It is constructed by the tool itself.
  cov_merge_dir:    "{scratch_path}/cov_merge"
  cov_merge_db_dir: ""
  cov_merge_cmd:    ""
  cov_merge_opts:   []

  // Generate covreage reports in text as well as html.
  cov_report_dir:       "{scratch_path}/cov_report"
  cov_report_cmd:       ""
  cov_report_opts:      []
  cov_report_dashboard: ""

  // Analyzing coverage - this is done by invoking --cov-analyze switch. It opens up the
  // GUI for visual analysis.
  cov_analyze_dir:  "{scratch_path}/cov_analyze"
  cov_analyze_cmd:  ""
  cov_analyze_opts: []

  // pass and fail patterns
  build_fail_patterns: ["\\*E.*$"]
  run_fail_patterns:   ["\\*E.*$"] // Null pointer error

  build_modes: [
    {
      name: riviera_waves
      is_sim_mode: 1
    }
    // TODO support coverage for riviera
    {
      name: riviera_cov
      is_sim_mode: 1
      build_opts: []
      run_opts:   []
    }
    // TODO support profiling for riviera
    {
      name: riviera_profile
      is_sim_mode: 1
      build_opts: []
      run_opts:   []
    }
    {
      name: riviera_xprop
      is_sim_mode: 1
      build_opts: []
    }
    // TODO: Add build and run options to enable zero delay loop detection.
    {
      name: riviera_loopdetect
      is_sim_mode: 1
      build_opts: []
      run_opts:   []
    }
  ]
}
