Verilator open-source SystemVerilog simulator and lint system
This report summarizes scanner evidence for verilator/verilator, a SystemVerilog project with 4,047 GitHub stars. SynthScan examined 393,637 lines of code across 5395 source files, recording 6100 pattern matches distributed across 18 syntactic categories. The legacy adjusted pattern signal is 15.7 (Elevated pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 1438 finding(s).
Are imports declared and package/API names verified? 4641 finding(s).
Are wrappers, guards, and repeated structures necessary? 26 finding(s).
Which changes need focused human review? 6100 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 6100 distinct pattern matches across 18 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | nodist/fastcov.py | 30 | CODE | |
| LOW | test_regress/test_diff.py | 31 | CODE | |
| LOW | test_regress/t/t_gantt_numa_default_threads.py | 12 | CODE | |
| LOW | test_regress/t/t_lint_paramnodefault_top_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_cover_sequence_unsup.py | 10 | CODE | |
| LOW | test_regress/t/t_tri_compass_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_array_non_blocking_loop.py | 10 | CODE | |
| LOW | test_regress/t/t_param_array_order.py | 10 | CODE | |
| LOW | test_regress/t/t_lint_unused_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_interface_virtual_func_wait.py | 10 | CODE | |
| LOW | test_regress/t/t_math_red_noexpand.py | 10 | CODE | |
| LOW | test_regress/t/t_enum_bad_cell.py | 10 | CODE | |
| LOW | test_regress/t/t_stream_bitqueue.py | 10 | CODE | |
| LOW | test_regress/t/t_debug_sigsegv_bt_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_sys_fstrobe.py | 10 | CODE | |
| LOW | test_regress/t/t_assign_deassign_concat.py | 10 | CODE | |
| LOW | test_regress/t/t_process.py | 10 | CODE | |
| LOW | test_regress/t/t_param_default.py | 10 | CODE | |
| LOW | test_regress/t/t_display_enum_protect_ids.py | 10 | CODE | |
| LOW | test_regress/t/t_flag_csplit_off.py | 10 | CODE | |
| LOW | test_regress/t/t_var_static.py | 10 | CODE | |
| LOW | test_regress/t/t_func_const2_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_display_impure.py | 10 | CODE | |
| LOW | test_regress/t/t_randomize_dist_foreach.py | 10 | CODE | |
| LOW | test_regress/t/t_dpi_import_mix_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_flag_make_gmake.py | 10 | CODE | |
| LOW | test_regress/t/t_concat_assign_wide.py | 10 | CODE | |
| LOW | test_regress/t/t_var_types.py | 10 | CODE | |
| LOW | test_regress/t/t_clk_concat4.py | 10 | CODE | |
| LOW | test_regress/t/t_covergroup_with_lint.py | 10 | CODE | |
| LOW | test_regress/t/t_inside_queue_elem.py | 10 | CODE | |
| LOW | test_regress/t/t_nba_partial_late.py | 10 | CODE | |
| LOW | test_regress/t/t_constraint_countones.py | 10 | CODE | |
| LOW | test_regress/t/t_dpi_struct_unpacked.py | 10 | CODE | |
| LOW | test_regress/t/t_constraint_real_array_eq_unsup.py | 10 | CODE | |
| LOW | test_regress/t/t_altera_lpm_compare.py | 10 | CODE | |
| LOW | test_regress/t/t_opt_dedupe_clk_gate.py | 10 | CODE | |
| LOW | test_regress/t/t_trace_wide_struct.py | 10 | CODE | |
| LOW | test_regress/t/t_interface_array_loop_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_sys_readmem_dyn.py | 10 | CODE | |
| LOW | test_regress/t/t_interface_down_inlab.py | 10 | CODE | |
| LOW | test_regress/t/t_dpi_display_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_package_export_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_trace_var_kind_cc_saif.py | 10 | CODE | |
| LOW | test_regress/t/t_case_huge.py | 10 | CODE | |
| LOW | test_regress/t/t_queue_var_slice.py | 10 | CODE | |
| LOW | test_regress/t/t_module_input_default_value_3_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_vpi_get.py | 10 | CODE | |
| LOW | test_regress/t/t_union_unpacked.py | 10 | CODE | |
| LOW | test_regress/t/t_assert_disable_iff.py | 10 | CODE | |
| LOW | test_regress/t/t_debug_gate.py | 10 | CODE | |
| LOW | test_regress/t/t_interface_modport_inl.py | 10 | CODE | |
| LOW | test_regress/t/t_static_task_args_bad.py | 10 | CODE | |
| LOW | test_regress/t/t_enum_param_xref_with.py | 10 | CODE | |
| LOW | test_regress/t/t_bitsel_struct3.py | 10 | CODE | |
| LOW | test_regress/t/t_func_void.py | 10 | CODE | |
| LOW | test_regress/t/t_vpi_public_depthn_3.py | 10 | CODE | |
| LOW | test_regress/t/t_always_ff_never.py | 10 | CODE | |
| LOW | test_regress/t/t_lint_unused_werror_bad.py | 10 | CODE | |
| LOW | …t_class_param_extends_static_member_function_access.py | 10 | CODE | |
| 4576 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | CMakeLists.txt | 1 | #***************************************************************************** | COMMENT |
| LOW | .codecov.yml | 1 | --- | COMMENT |
| LOW | python-dev-requirements.txt | 1 | # This program is free software; you can redistribute it and/or modify it | COMMENT |
| LOW | nodist/fuzzer/wrapper.cpp | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | ci/ci-rtlmeter-report.bash | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | ci/ci-install.bash | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | ci/ci-rtlmeter-cases.py | 1 | #!/usr/bin/env python3 | COMMENT |
| LOW | ci/ci-pages-notify.bash | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | ci/ci-pages-notify.bash | 61 | # action. Move on if this artifact was not made by it, e.g. it is left over | COMMENT |
| LOW | ci/ci-claude-post-review.bash | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | ci/ci-pages.bash | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | ci/ci-coverage-report.bash | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | include/verilated_saif_c.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_saif_c.h | 21 | #ifndef VERILATOR_VERILATED_SAIF_C_H_ | COMMENT |
| LOW | include/verilated_cov_model.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_cov_model.h | 61 | public: | COMMENT |
| LOW | include/verilated_cov_model.h | 81 | /// IEEE 1800-2023 19.11) | COMMENT |
| LOW | include/verilated_threads.cpp | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_threads.cpp | 21 | /// | COMMENT |
| LOW | include/verilated.cpp | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated.cpp | 21 | /// | COMMENT |
| LOW | include/verilated.cpp | 41 | // * Or, use types that are multi-constructor safe. | COMMENT |
| LOW | include/verilated.cpp | 61 | #include <chrono> | COMMENT |
| LOW | include/verilated.cpp | 81 | #ifdef __GLIBC__ | COMMENT |
| LOW | include/verilated.cpp | 101 | COMMENT | |
| LOW | include/verilated_fst_sc.cpp | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_fst_sc.cpp | 21 | COMMENT | |
| LOW | include/verilated_intrinsics.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_intrinsics.h | 21 | /// the target-specific headers. We provide macros to check for availability | COMMENT |
| LOW | include/verilated_threads.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_threads.h | 21 | //============================================================================= | COMMENT |
| LOW | include/verilated_threads.h | 41 | COMMENT | |
| LOW | include/verilated_covergroup.cpp | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_covergroup.cpp | 21 | COMMENT | |
| LOW | include/verilated_covergroup.cpp | 2321 | // The same weighted average of the items as get_inst_coverage(), so that a live | COMMENT |
| LOW | include/verilated_cov.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_cov.h | 21 | /// coverage information. | COMMENT |
| LOW | include/verilated_cov.h | 41 | /// The remaining arguments occur in pairs: A string key, and a value. | COMMENT |
| LOW | include/verilated_cov.h | 141 | COMMENT | |
| LOW | include/verilated_cov.h | 161 | void write(const std::string& filename) VL_MT_SAFE; | COMMENT |
| LOW | include/verilated_cov.h | 181 | // We could have just the maximum argument version, but this compiles | COMMENT |
| LOW | include/verilated_cov.h | 221 | COMMENT | |
| LOW | include/verilated_vpi.cpp | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_vpi.cpp | 21 | /// | COMMENT |
| LOW | include/verilated_vpi.cpp | 41 | #include <cstring> | COMMENT |
| LOW | include/verilated_timing.cpp | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_cov_key.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_cov_key.h | 61 | #define VL_CIK_COLUMN "n" | COMMENT |
| LOW | include/verilated_trace.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_trace.h | 21 | COMMENT | |
| LOW | include/verilated_trace.h | 361 | EData* const m_sigs_enabledp; // Bit vector of enabled codes (nullptr = all on) | COMMENT |
| LOW | include/verilated_vcd_c.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_vcd_c.h | 301 | bool isOpen() const override VL_MT_SAFE { return m_sptrace.isOpen(); } | COMMENT |
| LOW | include/verilated_vcd_c.h | 321 | /// Flush dump | COMMENT |
| LOW | include/verilated_vcd_sc.cpp | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated_vcd_sc.cpp | 21 | COMMENT | |
| LOW | include/verilated_fst_c.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated.h | 1 | // -*- mode: C++; c-file-style: "cc-mode" -*- | COMMENT |
| LOW | include/verilated.h | 21 | /// User wrapper code may need to include this to get appropriate | COMMENT |
| LOW | include/verilated.h | 41 | // clang-format off | COMMENT |
| 1263 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | nodist/fastcov.py | 450 | CODE | |
| LOW | nodist/fastcov.py | 509 | CODE | |
| LOW | nodist/fastcov.py | 756 | CODE | |
| LOW | nodist/fastcov.py | 789 | CODE | |
| LOW | nodist/fastcov.py | 108 | CODE | |
| LOW | nodist/fastcov.py | 165 | CODE | |
| LOW | test_regress/test_diff.py | 122 | CODE | |
| LOW | test_regress/driver.py | 2963 | CODE | |
| LOW | test_regress/driver.py | 2983 | CODE | |
| LOW | test_regress/driver.py | 231 | CODE | |
| LOW | test_regress/driver.py | 519 | CODE | |
| LOW | test_regress/driver.py | 682 | CODE | |
| LOW | test_regress/driver.py | 1003 | CODE | |
| LOW | test_regress/driver.py | 1026 | CODE | |
| LOW | test_regress/driver.py | 1263 | CODE | |
| LOW | test_regress/driver.py | 1560 | CODE | |
| LOW | test_regress/driver.py | 1942 | CODE | |
| LOW | test_regress/driver.py | 2157 | CODE | |
| LOW | test_regress/driver.py | 2477 | CODE | |
| LOW | test_regress/driver.py | 2547 | CODE | |
| LOW | test_regress/driver.py | 2711 | CODE | |
| LOW | test_regress/driver.py | 2860 | CODE | |
| LOW | test_regress/t/trace_struct_alias_common.py | 10 | CODE | |
| LOW | test_regress/t/t_dist_docs_warnings.py | 24 | CODE | |
| LOW | test_regress/t/t_dist_docs_warnings.py | 50 | CODE | |
| LOW | test_regress/t/t_preproc.py | 16 | CODE | |
| LOW | test_regress/t/t_flag_csplit_groups.py | 62 | CODE | |
| LOW | test_regress/t/trace_hier_block_common.py | 13 | CODE | |
| LOW | test_regress/t/t_dist_cpp_members.py | 17 | CODE | |
| LOW | test_regress/t/randomize_solver_tamper.py | 137 | CODE | |
| LOW | test_regress/t/t_dist_docs_options.py | 46 | CODE | |
| LOW | test_regress/t/t_dist_docs_options.py | 74 | CODE | |
| LOW | test_regress/t/t_dist_docs_options.py | 119 | CODE | |
| LOW | test_regress/t/t_dist_ast_style.py | 15 | CODE | |
| LOW | test_regress/t/t_dump_inputs_rerun.py | 15 | CODE | |
| LOW | test_regress/t/t_flag_output_groups_max_size.py | 24 | CODE | |
| LOW | test_regress/t/t_dist_error_format.py | 18 | CODE | |
| LOW | test_regress/t/trace_struct_array_multi_inst_common.py | 12 | CODE | |
| LOW | test_regress/t/trace_struct_array_multi_inst_common.py | 34 | CODE | |
| LOW | test_regress/t/t_flag_csplit.py | 15 | CODE | |
| LOW | test_regress/t/t_flag_csplit.py | 80 | CODE | |
| LOW | test_regress/t/trace_lib_common.py | 14 | CODE | |
| LOW | test_regress/t/t_dist_warn_coverage.py | 126 | CODE | |
| LOW | test_regress/t/t_dist_warn_coverage.py | 201 | CODE | |
| LOW | test_regress/t/t_flag_prefix.py | 27 | CODE | |
| LOW | test_regress/t/t_dist_ast_dump.py | 28 | CODE | |
| LOW | test_regress/t/t_dist_ast_dump.py | 74 | CODE | |
| LOW | test_regress/t/t_dist_ast_dump.py | 118 | CODE | |
| LOW | test_regress/t/t_dist_docs_style.py | 39 | CODE | |
| LOW | test_regress/t/t_gate_tree.py | 23 | CODE | |
| LOW | docs/guide/conf.py | 22 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | test_regress/driver.py | 1105 | #---------------------------------------------------------------------- | COMMENT |
| MEDIUM | test_regress/driver.py | 1769 | #--------------------------------------------------------------- | COMMENT |
| MEDIUM | test_regress/driver.py | 1843 | #--------------------------------------------------------------- | COMMENT |
| MEDIUM | test_regress/driver.py | 1905 | #--------------------------------------------------------------- | COMMENT |
| MEDIUM | test_regress/driver.py | 1940 | #---------------------------------------------------------------------- | COMMENT |
| MEDIUM | test_regress/driver.py | 3098 | #--------------------------------------------------------------------- | COMMENT |
| MEDIUM | docs/guide/conf.py | 10 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | docs/guide/conf.py | 43 | # ---------------------------------------------------------------------- | COMMENT |
| MEDIUM | docs/guide/conf.py | 60 | # ---------------------------------------------------------------------- | STRING |
| MEDIUM | docs/guide/conf.py | 110 | # ---------------------------------------------------------------------- | STRING |
| MEDIUM | docs/guide/conf.py | 164 | # ---------------------------------------------------------------------- | STRING |
| MEDIUM⚡ | docs/guide/conf.py | 195 | # ---------------------------------------------------------------------- | STRING |
| MEDIUM⚡ | docs/guide/conf.py | 205 | # ---------------------------------------------------------------------- | STRING |
| MEDIUM⚡ | docs/guide/conf.py | 211 | # ---------------------------------------------------------------------- | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | nodist/fastcov.py | 495 | except UnicodeDecodeError: | CODE |
| HIGH | test_regress/driver.py | 119 | except FileExistsError: | CODE |
| HIGH | test_regress/driver.py | 127 | except FileExistsError: | CODE |
| HIGH | test_regress/driver.py | 150 | except OSError: | CODE |
| HIGH | test_regress/driver.py | 1062 | except (VtErrorException, VtSkipException): | CODE |
| HIGH | test_regress/driver.py | 3015 | except FileNotFoundError: # Removed by another concurrent driver.py | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | src/V3Sched.cpp | 793 | // Step 2: Prepare external domains for timing and virtual interfaces | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 802 | // Step 3: Gather and classify all logic in the design | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 812 | // Step 4: Schedule static, initial and final logic classes in source order | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 822 | // Step 5: Break combinational cycles by introducing hybrid logic | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 838 | // Step 6: Create 'settle' region that restores the combinational invariant | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 842 | // Step 7: Partition the clocked and combinational (including hybrid) logic into pre/act/nba. | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 869 | // Step 9: Create the input combinational logic | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 874 | // Step 10: Create the triggers | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 978 | // Step 13: Create the 'obs' region evaluation function | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 981 | // Step 14: Create the 'react' region evaluation function | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 985 | // Step 15: Create the 'postponed' region evaluation function | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 988 | // Step 16: Populate the eval entry point function of each region of a time step | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 991 | // Step 17: Add neccessary evaluation before awaits | COMMENT |
| LOW | src/V3Sched.cpp | 858 | // Step 8: Replicate combinational logic | COMMENT |
| LOW | src/V3Sched.cpp | 914 | // Step 11: Create the 'act' region evaluation function | COMMENT |
| LOW | src/V3Sched.cpp | 962 | // Step 12: Create the 'nba' region evaluation function | COMMENT |
| LOW | src/V3Sched.cpp | 1028 | // Step 18: Clean up | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | src/V3Sched.cpp | 793 | // Step 2: Prepare external domains for timing and virtual interfaces | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 802 | // Step 3: Gather and classify all logic in the design | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 812 | // Step 4: Schedule static, initial and final logic classes in source order | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 822 | // Step 5: Break combinational cycles by introducing hybrid logic | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 838 | // Step 6: Create 'settle' region that restores the combinational invariant | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 842 | // Step 7: Partition the clocked and combinational (including hybrid) logic into pre/act/nba. | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 869 | // Step 9: Create the input combinational logic | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 874 | // Step 10: Create the triggers | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 978 | // Step 13: Create the 'obs' region evaluation function | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 981 | // Step 14: Create the 'react' region evaluation function | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 985 | // Step 15: Create the 'postponed' region evaluation function | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 988 | // Step 16: Populate the eval entry point function of each region of a time step | COMMENT |
| LOW⚡ | src/V3Sched.cpp | 991 | // Step 17: Add neccessary evaluation before awaits | COMMENT |
| LOW | src/V3Sched.cpp | 858 | // Step 8: Replicate combinational logic | COMMENT |
| LOW | src/V3Sched.cpp | 914 | // Step 11: Create the 'act' region evaluation function | COMMENT |
| LOW | src/V3Sched.cpp | 962 | // Step 12: Create the 'nba' region evaluation function | COMMENT |
| LOW | src/V3Sched.cpp | 1028 | // Step 18: Clean up | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | ci/ci-rtlmeter-report.bash | 94 | # Create the PR notification | COMMENT |
| MEDIUM | ci/ci-coverage-report.bash | 37 | # Create the report. For a pull request, report patch coverage against the | COMMENT |
| MEDIUM | ci/ci-coverage-report.bash | 69 | # Create the PR notification | COMMENT |
| MEDIUM | ci/ci-coverage-report.bash | 101 | # Create the coverage status | COMMENT |
| MEDIUM | test_regress/t/trace_two_common.py | 67 | # Create the ALL.cpp for 'b' | COMMENT |
| MEDIUM | .github/workflows/coverage.yml | 194 | # Create the report artifact. Note there is no report if the patch is empty. | COMMENT |
| MEDIUM | .github/workflows/rtlmeter.yml | 412 | # Create the report artifact | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ci/ci-rtlmeter-report.py | 90 | # for wall clock and CPU time, ignore small values that just add noise | COMMENT |
| LOW | ci/ci-rtlmeter-cases.py | 226 | # Filter out hello tests on pull requests, these just add measurement noise | COMMENT |
| MEDIUM | test_regress/t/t_covergroup_inst_handle.py | 14 | # Hand-written harness: neither property is reachable from SystemVerilog -- an | COMMENT |
| MEDIUM | test_regress/t/t_covergroup_inst_handle.py | 38 | # may not free, the harness leaks the model it must not delete. Both are the | COMMENT |
| MEDIUM | src/V3ExecGraph.cpp | 414 | // To support scheduling tasks that utilize more than one thread, we introduce a wide | COMMENT |
| MEDIUM | src/V3EmitCBase.cpp | 282 | // This isn't very robust and may need cleanup for other data types | COMMENT |
| MEDIUM | src/V3Ast.h | 454 | // VNType is 2 bytes, so we can stick another 6 bytes after it to utilize what would | COMMENT |
| MEDIUM | src/V3EmitCModel.cpp | 390 | // This isn't very robust and may need cleanup for other data types | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | test_regress/driver.py | 247 | out = VtOs.run_capture('(z3 --help || cvc5 --help || cvc4 --help) 2>/dev/null', | CODE |
| HIGH | test_regress/driver.py | 819 | self.pli_flags += ["-Wl,-undefined,dynamic_lookup"] | CODE |
| HIGH | test_regress/t/t_flag_main_vpi_multi.py | 31 | pli2_cmd += (["-Wl,-undefined,dynamic_lookup"] if platform.system() == 'Darwin' else ["-rdynamic"]) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | src/V3Decompose.cpp | 450 | // Warn on the variable only, a component is split as far as possible, as requested | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | nodist/fastcov.py | 529 | # Check if branch coverage should be deleted based on CLI options | COMMENT |
| LOW | ci/ci-rtlmeter-report.py | 122 | # Print results | COMMENT |
| LOW | ci/ci-pages.bash | 279 | # Set output to all affected unique PR run IDs (comma separated, no trailing comma) | COMMENT |
| LOW | ci/docker/run/verilator-wrap.sh | 17 | # Check if user set an obj_dir | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | include/fstcpp/fstcpp_assertion.h | 115 | // TODO: implement MSVC version | COMMENT |
| LOW | include/fstcpp/fstcpp_stream_write_helper.h | 41 | // TODO: implement MSVC version | COMMENT |
| LOW | include/fstcpp/fstcpp_variable_info.h | 34 | // TODO: implement MSVC version | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test_regress/driver.py | 1796 | def get_default_vltmt_threads(self) -> int: | CODE |
| LOW | test_regress/driver.py | 1837 | def wno_unopthreads_for_few_cores(self) -> str: | CODE |
| LOW | test_regress/t/coverage_covergroup_common.py | 12 | def covergroup_coverage_report(test, outfile=None): | CODE |
| LOW | test_regress/t/randomize_uniform_common.py | 19 | def jensen_shannon_divergence_pct(observed_counts, solutions): | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test_regress/t/t_a2_first_sc.py | 11 | # after building so we make sure to run with --gdbbt, so if it dumps we'll | COMMENT |
| LOW | test_regress/t/t_a1_first_cc.py | 11 | # after building so we make sure to run with --gdbbt, so if it dumps we'll | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test_regress/t/t_vpi_var.cpp | 1771 | {"text", "Verilog Test module", "lorem ipsum"}, | CODE |
| LOW | test_regress/t/t_vpi_force.cpp | 301 | {.str = "lorem ipsum"}, | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docs/guide/conf.py | 33 | except Exception: # pylint: disable=broad-except | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test_regress/driver.py | 1942 | CODE |