a language for fast, portable data-parallel computation
This report summarizes scanner evidence for halide/Halide, a C++ project with 6,631 GitHub stars. SynthScan examined 526,058 lines of code across 2370 source files, recording 1195 pattern matches distributed across 20 syntactic categories. The legacy adjusted pattern signal is 2.8 (Low 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? 1075 finding(s).
Are imports declared and package/API names verified? 49 finding(s).
Are wrappers, guards, and repeated structures necessary? 119 finding(s).
Which changes need focused human review? 1195 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 1195 distinct pattern matches across 20 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 | run-clang-format.sh | 1 | #!/bin/bash | COMMENT |
| LOW | pyproject.toml | 81 | conflicts = [ | COMMENT |
| LOW | run-clang-tidy.sh | 21 | # | COMMENT |
| LOW | tutorial/lesson_18_parallel_associative_reductions.cpp | 1 | // Halide tutorial lesson 18: Factoring an associative reduction using rfactor | COMMENT |
| LOW | tutorial/lesson_18_parallel_associative_reductions.cpp | 61 | COMMENT | |
| LOW | tutorial/lesson_18_parallel_associative_reductions.cpp | 101 | // This manual factorization of an associative reduction can | COMMENT |
| LOW | tutorial/lesson_18_parallel_associative_reductions.cpp | 121 | // The task of factoring of associative reduction is moved | COMMENT |
| LOW | tutorial/lesson_18_parallel_associative_reductions.cpp | 141 | // In the case where you are only slicing up the domain across | COMMENT |
| LOW | tutorial/lesson_15_generators_usage.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | tutorial/lesson_15_generators_usage.sh | 101 | # -o directory : Specifies which directory to create the outputs | COMMENT |
| LOW | tutorial/lesson_15_generators_usage.sh | 181 | exit 1 | COMMENT |
| LOW | tutorial/lesson_06_realizing_over_shifted_domains.cpp | 1 | // Halide tutorial lesson 6: Realizing Funcs over arbitrary domains | COMMENT |
| LOW | tutorial/lesson_06_realizing_over_shifted_domains.cpp | 21 | // The last lesson was quite involved, and scheduling complex | COMMENT |
| LOW | tutorial/lesson_17_predicated_rdom.cpp | 1 | // Halide tutorial lesson 17: Reductions over non-rectangular domains | COMMENT |
| LOW | tutorial/lesson_17_predicated_rdom.cpp | 21 | // In lesson 9, we learned how to use RDom to define a "reduction | COMMENT |
| LOW | tutorial/lesson_17_predicated_rdom.cpp | 41 | // The bounding box does not have to be minimal. In fact, the | COMMENT |
| LOW | tutorial/lesson_14_types.cpp | 1 | // Halide tutorial lesson 14: The Halide type system | COMMENT |
| LOW | tutorial/lesson_14_types.cpp | 121 | assert((f64 + s32).type() == Float(64)); | COMMENT |
| LOW | tutorial/lesson_14_types.cpp | 141 | // 6) If both types are unsigned integers, or both types are | COMMENT |
| LOW | tutorial/lesson_14_types.cpp | 181 | COMMENT | |
| LOW | tutorial/lesson_11_cross_compilation.cpp | 1 | // Halide tutorial lesson 11: Cross-compilation | COMMENT |
| LOW | tutorial/lesson_11_cross_compilation.cpp | 141 | // of this tutorial. For a real application you'd then need to | COMMENT |
| LOW | tutorial/lesson_05_scheduling_1.cpp | 1 | // Halide tutorial lesson 5: Vectorize, parallelize, unroll and tile your code | COMMENT |
| LOW | tutorial/lesson_05_scheduling_1.cpp | 61 | // compute gradient: | COMMENT |
| LOW | tutorial/lesson_05_scheduling_1.cpp | 141 | gradient.print_loop_nest(); | COMMENT |
| LOW | tutorial/lesson_05_scheduling_1.cpp | 241 | // 4-wide vectors. | COMMENT |
| LOW | tutorial/lesson_05_scheduling_1.cpp | 381 | COMMENT | |
| LOW | tutorial/lesson_05_scheduling_1.cpp | 401 | // In our example, x_min was 0, x_extent was 7, and factor was 3. | COMMENT |
| LOW | tutorial/lesson_23_serialization.cpp | 1 | // Halide tutorial lesson 23: Serialization | COMMENT |
| LOW | tutorial/lesson_20_cloning_funcs.cpp | 1 | // Halide tutorial lesson 20: Cloning Funcs | COMMENT |
| LOW | tutorial/lesson_20_cloning_funcs.cpp | 41 | // for x: | COMMENT |
| LOW | tutorial/lesson_20_cloning_funcs.cpp | 61 | // f(x, y) = x + y | COMMENT |
| LOW | tutorial/lesson_20_cloning_funcs.cpp | 121 | // f_clone(x, y) = x + y | COMMENT |
| LOW | tutorial/lesson_20_cloning_funcs.cpp | 141 | g(x) = 2 * f(0); | COMMENT |
| LOW | tutorial/lesson_10_aot_compilation_generate.cpp | 1 | // Halide tutorial lesson 10: AOT compilation: compiling the pipeline | COMMENT |
| LOW | tutorial/lesson_10_aot_compilation_generate.cpp | 41 | // And take one grayscale 8-bit input buffer. The first | COMMENT |
| LOW | tutorial/lesson_24_async.cpp | 1 | // Halide tutorial lesson 24: Async execution | COMMENT |
| LOW | tutorial/lesson_24_async.cpp | 41 | // ... | COMMENT |
| LOW | tutorial/lesson_24_async.cpp | 81 | // allocate producer1[...] | COMMENT |
| LOW | tutorial/lesson_24_async.cpp | 101 | // ... | COMMENT |
| LOW | tutorial/lesson_24_async.cpp | 121 | consumer(x, y, c) = producer(x - 1, y - 1, c) + producer(x, y, c) + producer(x + 1, y + 1, c); | COMMENT |
| LOW | tutorial/lesson_24_async.cpp | 141 | COMMENT | |
| LOW | tutorial/lesson_24_async.cpp | 161 | // // acquire this semaphore in the other thread. | COMMENT |
| LOW | tutorial/lesson_24_async.cpp | 241 | // // This semaphore indicates how much producer has produced. | COMMENT |
| LOW | tutorial/lesson_24_async.cpp | 261 | // release(producer1.semaphore) | COMMENT |
| LOW | tutorial/lesson_02_input_image.cpp | 1 | // Halide tutorial lesson 2: Processing images | COMMENT |
| LOW | tutorial/lesson_02_input_image.cpp | 61 | COMMENT | |
| LOW | tutorial/lesson_12_using_the_gpu.cpp | 1 | // Halide tutorial lesson 12: Using the GPU | COMMENT |
| LOW | tutorial/lesson_12_using_the_gpu.cpp | 121 | // Func independently. If you have one Func computed on the | COMMENT |
| LOW | tutorial/lesson_12_using_the_gpu.cpp | 161 | COMMENT | |
| LOW | tutorial/lesson_07_multi_stage_pipelines.cpp | 1 | // Halide tutorial lesson 7: Multi-stage pipelines | COMMENT |
| LOW | tutorial/lesson_07_multi_stage_pipelines.cpp | 61 | COMMENT | |
| LOW | tutorial/lesson_07_multi_stage_pipelines.cpp | 101 | Func clamped("clamped"); | COMMENT |
| LOW | tutorial/lesson_07_multi_stage_pipelines.cpp | 121 | // clamped = BoundaryConditions::repeat_edge(input); | COMMENT |
| LOW | tutorial/lesson_13_tuples.cpp | 1 | // Halide tutorial lesson 13: Tuples | COMMENT |
| LOW | tutorial/lesson_13_tuples.cpp | 41 | // color_image(x, y, c) = mux(c, {245, 42, 132}); | COMMENT |
| LOW | tutorial/lesson_13_tuples.cpp | 61 | // this one is a hard limitation that makes it impossible to | COMMENT |
| LOW | tutorial/lesson_13_tuples.cpp | 181 | Buffer<int> r0 = r[0]; | COMMENT |
| LOW | tutorial/lesson_13_tuples.cpp | 261 | mandelbrot(x, y, r) = current * current + initial; | COMMENT |
| LOW | tutorial/lesson_22_jit_performance.cpp | 1 | // Halide tutorial lesson 22: JIT compilation performance | COMMENT |
| 903 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | tools/run-coverage.sh | 39 | # ── Configure + Build ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tools/run-coverage.sh | 43 | # ── Run 1: host — all tests ────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tools/run-coverage.sh | 46 | # ── Reconfigure + rebuild for host-metal ───────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tools/run-coverage.sh | 50 | # ── Run 2: host-metal — GPU tests only ─────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tools/run-coverage.sh | 53 | # ── Reconfigure + rebuild for host-opencl ──────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tools/run-coverage.sh | 57 | # ── Run 3: host-opencl — GPU and OpenCL-specific tests ─────────────────────── | COMMENT |
| MEDIUM⚡ | tools/run-coverage.sh | 60 | # ── Reconfigure + rebuild for wasm-32-wasmrt-wasm_simd128 ──────────────────── | COMMENT |
| MEDIUM⚡ | tools/run-coverage.sh | 64 | # ── Run 4: wasm — all tests (exercises WasmExecutor for JIT compilation) ───── | COMMENT |
| MEDIUM⚡ | tools/run-coverage.sh | 69 | # ── Merge profiles ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | tools/run-coverage.sh | 74 | # ── Generate coverage reports ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/render.rs | 105 | // ── Value rendering (Grayscale / RGB) ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/render.rs | 430 | // ── Store frequency rendering ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/render.rs | 575 | // ── Load frequency rendering ───────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/render.rs | 719 | // ── Redundant store rendering ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/render.rs | 917 | // ── Reuse distance rendering ───────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/render.rs | 1129 | // ── Thread Rendering ───────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 5 | // ── Type system ────────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 51 | // ── Event codes ────────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 94 | // ── Packet view ────────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 247 | // ── Per-Func statistics ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 359 | // ── Complete trace ─────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 383 | // ── Binary parsing helpers ─────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 410 | // ── Stats helpers called during packet parsing ──────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 536 | // ── func_type_and_dim tag parsing ───────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 592 | // ── Trace loading ──────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 1327 | // ── Render-path accessors ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/trace.rs | 1371 | // ── Shared geometry helpers ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/commands.rs | 142 | // ── Tauri-managed state ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/commands.rs | 187 | // ── Commands ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | tools/halidoscope/src-tauri/src/commands.rs | 750 | // ── Profiler ───────────────────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | test/autoschedulers/anderson2021/CMakeLists.txt | 7 | # ================================================================= | COMMENT |
| MEDIUM | test/autoschedulers/anderson2021/CMakeLists.txt | 37 | # ================================================================= | COMMENT |
| MEDIUM | test/autoschedulers/anderson2021/CMakeLists.txt | 70 | # ================================================================= | COMMENT |
| MEDIUM | test/autoschedulers/anderson2021/CMakeLists.txt | 93 | # ================================================================= | COMMENT |
| MEDIUM | test/autoschedulers/adams2019/CMakeLists.txt | 5 | # ================================================================= | COMMENT |
| MEDIUM | test/autoschedulers/adams2019/CMakeLists.txt | 30 | # ================================================================= | COMMENT |
| MEDIUM | test/autoschedulers/adams2019/CMakeLists.txt | 61 | # ================================================================= | COMMENT |
| MEDIUM | python_bindings/halide/tutorial/lesson_15_runtime.py | 149 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | python_bindings/halide/tutorial/lesson_15_runtime.py | 153 | # ------------------------------------------------------------------ | COMMENT |
| MEDIUM | apps/hannk/CMakeLists.txt | 9 | # ---------------------------- | COMMENT |
| MEDIUM | apps/hannk/CMakeLists.txt | 36 | # ---------------------------- | COMMENT |
| MEDIUM | apps/hannk/CMakeLists.txt | 43 | # ---------------------------- | COMMENT |
| MEDIUM | apps/hannk/CMakeLists.txt | 55 | # ---------------------------- | COMMENT |
| MEDIUM | apps/hannk/CMakeLists.txt | 71 | # ---------------------------- | COMMENT |
| MEDIUM | apps/hannk/halide/CMakeLists.txt | 59 | # --------------------------- | COMMENT |
| MEDIUM | src/autoschedulers/anderson2021/CMakeLists.txt | 92 | ## ==================================================== | COMMENT |
| MEDIUM | src/autoschedulers/adams2019/CMakeLists.txt | 7 | # ================================================================= | COMMENT |
| MEDIUM | src/autoschedulers/adams2019/CMakeLists.txt | 63 | # ================================================================= | COMMENT |
| MEDIUM | src/autoschedulers/adams2019/CMakeLists.txt | 87 | # ==================================================== | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tutorial/lesson_20_cloning_funcs.cpp | 76 | // Essentially, it rewrites the original pipeline above into the | COMMENT |
| MEDIUM | tutorial/lesson_19_wrapper_funcs.cpp | 70 | // wrapper. Essentially, it rewrites the original pipeline | COMMENT |
| MEDIUM | tools/RunGen.h | 839 | // Definitely chunky, so make extent[2] match the chunk size | COMMENT |
| LOW | tools/makelib.sh | 23 | # Output equals input; just return | COMMENT |
| MEDIUM | test/debugger/debugger_fixture.cpp | 7 | // Break on the symbol `halide_debugger_test_breakpoint` (robust across | COMMENT |
| MEDIUM | test/correctness/intrinsics.cpp | 16 | // Make sure the pattern is robust to CSE. We only enforce this | COMMENT |
| MEDIUM | …on_bindings/halide/tutorial/lesson_19_wrapper_funcs.py | 67 | # wrapper. Essentially, it rewrites the original pipeline | COMMENT |
| MEDIUM | …on_bindings/halide/tutorial/lesson_20_cloning_funcs.py | 65 | # Essentially, it rewrites the original pipeline above into the | COMMENT |
| MEDIUM | …thon_bindings/halide/apps/local_laplacian_generator.py | 143 | # (This can be useful in conjunction with RunGen and benchmarks as well | COMMENT |
| MEDIUM | python_bindings/halide/apps/bilateral_grid_generator.py | 98 | # (This can be useful in conjunction with RunGen and benchmarks as well | COMMENT |
| LOW | apps/hannk/run_benchmark_on_device.sh | 48 | # assume it's a flag (or flag argument) and just pass thru | COMMENT |
| LOW | apps/hannk/run_compare_on_device.sh | 51 | # assume it's a flag (or flag argument) and just pass thru | COMMENT |
| LOW | apps/blur/adb_run_on_device.sh | 13 | #TODO: It would be nice to just use HL_TARGET, but that means one | COMMENT |
| MEDIUM | apps/gaussian_blur/filter.cpp | 40 | // very robust to things like big.little systems. However, it's good for | COMMENT |
| LOW | apps/hexagon_benchmarks/adb_run_on_device.sh | 13 | #TODO: It would be nice to just use HL_TARGET, but that means one | COMMENT |
| MEDIUM | apps/camera_pipe/camera_pipe_generator.cpp | 464 | // D3D12 SM 5.1 can only utilize a limited amount of | COMMENT |
| MEDIUM | src/BoundaryConditions.cpp | 119 | // hold. To be more robust, we make condition 2 hold, by introducing | COMMENT |
| MEDIUM | src/IREquality.cpp | 59 | // avoid too many collisions, while being robust to weird things like | COMMENT |
| MEDIUM | src/HexagonOptimize.cpp | 680 | // particular order. It should be more robust... but | COMMENT |
| MEDIUM | src/StageStridedLoads.cpp | 295 | // Definitely not a strided load | COMMENT |
| MEDIUM | src/runtime/metal.cpp | 324 | // this can be refactored to something more robust/general. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …hon_bindings/halide/test/correctness/profiler_scope.py | 46 | except RuntimeError: | CODE |
| HIGH | python_bindings/halide/test/correctness/rdom.py | 33 | except KeyError: | CODE |
| HIGH | python_bindings/halide/test/correctness/rdom.py | 38 | except KeyError: | CODE |
| HIGH | python_bindings/halide/test/correctness/rdom.py | 43 | except TypeError: | CODE |
| HIGH | python_bindings/halide/test/correctness/buffer.py | 666 | except ValueError: | CODE |
| HIGH | python_bindings/halide/test/correctness/buffer.py | 706 | except BufferError: | CODE |
| HIGH | python_bindings/halide/test/correctness/buffer.py | 753 | except BufferError: | CODE |
| HIGH | python_bindings/halide/test/correctness/buffer.py | 794 | except exc: | CODE |
| HIGH | …ings/halide/test/correctness/thread_pool_keep_awake.py | 51 | except ValueError: | CODE |
| HIGH | …ndings/halide/test/correctness/float_precision_test.py | 64 | except RuntimeWarning: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/RunGenMain.cpp | 537 | typedef halide_device_interface_t_ptr (*GetDeviceInterfaceFn)(); | CODE |
| LOW | python_bindings/halide/_dynamic_metadata.py | 11 | def get_requires_for_dynamic_metadata(settings: Mapping[str, Any]) -> list[str]: | CODE |
| LOW | python_bindings/halide/test/correctness/callable.py | 172 | def test_callable_buffer_conventions(): | CODE |
| LOW⚡ | python_bindings/halide/test/correctness/struct_type.py | 97 | def test_struct_pack_and_field_inlined(): | CODE |
| LOW⚡ | python_bindings/halide/test/correctness/struct_type.py | 102 | def test_struct_pack_and_field_compute_root(): | CODE |
| LOW⚡ | python_bindings/halide/test/correctness/struct_type.py | 109 | def test_field_ref_array_indexing(): | CODE |
| LOW | python_bindings/halide/test/correctness/struct_type.py | 134 | def test_pack_struct_field_copy(): | CODE |
| LOW | …gs/halide/test/correctness/multi_method_module_test.py | 34 | def test_aot_call_failure_throws_exception(): | CODE |
| LOW | …dings/halide/test/correctness/multipass_constraints.py | 4 | def test_multipass_constraints(): | CODE |
| LOW | …dings/halide/test/correctness/multipass_constraints.py | 61 | def test_infer_input_bounds_preserves_halide_error(): | CODE |
| LOW | python_bindings/halide/test/correctness/rdom.py | 59 | def test_implicit_pure_definition(): | CODE |
| LOW | python_bindings/halide/test/correctness/buffer.py | 589 | def test_buffer_copy_no_reverse(): | CODE |
| LOW | python_bindings/halide/test/correctness/buffer.py | 610 | def test_ndarray_negative_strides(): | CODE |
| LOW | python_bindings/halide/test/correctness/buffer.py | 620 | def test_runtime_buffer_is_distinct(): | CODE |
| LOW | python_bindings/halide/test/correctness/buffer.py | 677 | def test_buffer_export_lifetime(): | CODE |
| LOW | python_bindings/halide/test/correctness/buffer.py | 712 | def test_buffer_ndarray_dtypes(): | CODE |
| LOW | python_bindings/halide/test/correctness/buffer.py | 744 | def test_buffer_contiguous_requests(): | CODE |
| LOW | python_bindings/halide/test/correctness/buffer.py | 759 | def test_copy_from_mismatched_buffers(): | CODE |
| LOW | python_bindings/halide/test/correctness/buffer.py | 785 | def test_dimension_out_of_range(): | CODE |
| LOW | python_bindings/halide/test/correctness/basics.py | 582 | def test_implicit_update_by_int(): | CODE |
| LOW | python_bindings/halide/test/correctness/basics.py | 606 | def test_implicit_update_by_float(): | CODE |
| LOW | …thon_bindings/halide/test/correctness/serialization.py | 8 | def test_serialize_deserialize_pipeline_file(): | CODE |
| LOW | …thon_bindings/halide/test/correctness/serialization.py | 38 | def test_serialize_deserialize_pipeline_bytes(): | CODE |
| LOW | …thon_bindings/halide/test/correctness/serialization.py | 57 | def test_serialize_deserialize_with_parameters(): | CODE |
| LOW | …thon_bindings/halide/test/correctness/serialization.py | 85 | def test_serialize_deserialize_with_parameters_bytes(): | CODE |
| LOW | …thon_bindings/halide/test/correctness/serialization.py | 106 | def test_deserialize_parameters_file(): | CODE |
| LOW | …thon_bindings/halide/test/correctness/serialization.py | 134 | def test_deserialize_parameters_bytes(): | CODE |
| LOW | …thon_bindings/halide/test/correctness/serialization.py | 153 | def test_pipeline_with_multiple_outputs(): | CODE |
| LOW | python_bindings/halide/test/correctness/negate_test.py | 4 | def test_free_logical_not_function(): | CODE |
| LOW | python_bindings/halide/test/correctness/negate_test.py | 21 | def test_member_logical_not_function(): | CODE |
| LOW | python_bindings/halide/apps/identity_app.py | 41 | def _get_halide_buffer_t_capsule(self): | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 141 | def _check_types_and_dimensions(self, types: list[Type], dimensions: int): | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 208 | def _get_types_and_dimensions(self) -> tuple[list[Type], int]: | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 220 | def _get_types_and_dimensions(self) -> tuple[list[Type], int]: | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 252 | def _get_types_and_dimensions(self) -> tuple[list[Type], int]: | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 289 | def _get_types_and_dimensions(self) -> tuple[list[Type], int]: | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 509 | def allow_out_of_order_inputs_and_outputs(self): | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 642 | def _set_io_types_and_dimensions_from_gp( | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 668 | def _advance_to_configure_called(self): | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 709 | def _set_generatorparam_value(self, name: str, value: Any): | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 800 | def _get_python_generator_names() -> list[str]: | CODE |
| LOW | python_bindings/halide/src/_generator_helpers.py | 831 | def _check_generator_name_in_use(n: str): | CODE |
| LOW | python_bindings/halide-runtime/_dynamic_metadata.py | 11 | def get_requires_for_dynamic_metadata(settings: Mapping[str, Any]) -> list[str]: | CODE |
| LOW | python_bindings/halide-runtime/test/load_aot.py | 67 | def _get_halide_buffer_t_capsule(self): | CODE |
| LOW | doc/generate_api_reference.py | 104 | def _is_excluded_runtime_file(file: str) -> bool: | CODE |
| LOW | doc/tutorial_website/capture.py | 307 | def capture_python_env_output( | CODE |
| LOW | apps/onnx/model_test.py | 75 | def test_model_with_initializer(self): | CODE |
| LOW | apps/gaussian_blur/impulse_viewer.html | 1358 | function updateParetoIRDisplayMode() { | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | …/tutorial/lesson_18_parallel_associative_reductions.py | 23 | # Create an input with random values. | COMMENT |
| MEDIUM | …on_bindings/halide/tutorial/lesson_19_wrapper_funcs.py | 298 | # Create an interesting input image to use. | COMMENT |
| MEDIUM | …indings/halide/tutorial/lesson_11_cross_compilation.py | 21 | # Define the hl.Func. | COMMENT |
| MEDIUM | …ngs/halide/tutorial/lesson_07_multi_stage_pipelines.py | 104 | # Define an expression that clamps x to lie within the the | COMMENT |
| MEDIUM | …/halide/tutorial/lesson_10_aot_compilation_generate.py | 43 | # Define the hl.Func. | COMMENT |
| MEDIUM | python_bindings/halide/tutorial/lesson_15_generators.py | 100 | # Define the Func. We'll use the compile-time scale factor as | COMMENT |
| MEDIUM | python_bindings/halide/tutorial/lesson_13_tuples.py | 41 | # This method is often convenient because it makes it easy to | COMMENT |
| MEDIUM | …ndings/halide/tutorial/lesson_09_update_definitions.py | 175 | # Define a multi-dimensional reduction domain over the input image: | COMMENT |
| MEDIUM | …ndings/halide/tutorial/lesson_09_update_definitions.py | 569 | # Define a 5x5 box that starts at (-2, -2) | COMMENT |
| MEDIUM | …thon_bindings/halide/tutorial/lesson_02_input_image.py | 56 | # Define the function. | COMMENT |
| MEDIUM | …hon_bindings/halide/tutorial/lesson_16_rgb_generate.py | 57 | # Define the Func. | COMMENT |
| MEDIUM | apps/onnx/model_test.py | 26 | # Create a node | COMMENT |
| MEDIUM | apps/onnx/model_test.py | 29 | # Create the model | COMMENT |
| MEDIUM | apps/onnx/model_test.py | 53 | # Create a node | COMMENT |
| MEDIUM | apps/onnx/model_test.py | 56 | # Create the model | COMMENT |
| MEDIUM | apps/HelloPyTorch/modules.py | 55 | # Create an output tensor with the proper dimensions | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| CRITICAL | test/correctness/simd_op_check_sve2.cpp | 893 | // <vscale x 8 x i1> @llvm.aarch64.sve.whilelt.nxv8i1.i32(i32 0, i32 4) | COMMENT |
| CRITICAL | test/correctness/simd_op_check_sve2.cpp | 1219 | // <vscale x 8 x i1> @llvm.aarch64.sve.whilelt.nxv8i1.i32(i32 0, i32 4) | COMMENT |
| CRITICAL | src/CodeGen_ARM.cpp | 2489 | // -> @llvm.aarch64.sve.whilelt.nxv8i1.i32(i32 0, i32 3) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python_bindings/halide/_dynamic_metadata.py | 3 | CODE | |
| LOW | python_bindings/halide/test/correctness/callable.py | 3 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 6 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 11 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 12 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 20 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/__init__.py | 21 | CODE | |
| LOW | python_bindings/halide/src/_generator_helpers.py | 1 | CODE | |
| LOW | python_bindings/halide-runtime/_dynamic_metadata.py | 3 | CODE | |
| LOW | …bindings/halide-runtime/src/halide/runtime/__init__.py | 13 | CODE | |
| LOW | …bindings/halide-runtime/src/halide/runtime/__init__.py | 13 | CODE | |
| LOW | …bindings/halide-runtime/src/halide/runtime/__init__.py | 13 | CODE | |
| LOW | …bindings/halide-runtime/src/halide/runtime/__init__.py | 13 | CODE | |
| LOW | …bindings/halide-runtime/src/halide/runtime/__init__.py | 13 | CODE | |
| LOW | doc/tutorial_website/manifest.py | 11 | CODE | |
| LOW | doc/tutorial_website/render.py | 17 | CODE | |
| LOW | doc/tutorial_website/sitemap.py | 10 | CODE | |
| LOW | doc/tutorial_website/lesson.py | 13 | CODE | |
| LOW | doc/tutorial_website/capture.py | 27 | CODE | |
| LOW | doc/tutorial_website/cli.py | 1 | CODE | |
| LOW | doc/tutorial_website/py_capture_runner.py | 28 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python_bindings/halide/tutorial/lesson_24_async.py | 17 | # In this example we simply tell Halide to run `producer` in a | COMMENT |
| HIGH | python_bindings/halide/tutorial/lesson_24_async.py | 133 | # In this example the planes are processed separately, so producer | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …ndings/halide/tutorial/lesson_21_auto_scheduler_run.py | 0 | a minimal stand-in for halide::tools::benchmark(): runs `op` `iterations` times per sample, and returns the minimum time | STRING |
| HIGH | …_bindings/halide/tutorial/lesson_22_jit_performance.py | 0 | a minimal stand-in for halide::tools::benchmark(): runs `op` `iterations` times per sample, and returns the minimum time | STRING |
| HIGH | python_bindings/halide/tutorial/lesson_16_rgb_run.py | 0 | a minimal stand-in for halide::tools::benchmark(): runs `op` `iterations` times per sample, and returns the minimum time | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | test/integration/python_abi3/check.py | 16 | CODE | |
| LOW | …/tutorial/lesson_18_parallel_associative_reductions.py | 13 | CODE | |
| LOW | python_bindings/halide/tutorial/lesson_13_tuples.py | 14 | CODE | |
| LOW | …ndings/halide/tutorial/lesson_09_update_definitions.py | 15 | CODE | |
| LOW | …hon_bindings/halide/tutorial/lesson_08_scheduling_2.py | 12 | CODE | |
| LOW | …hon_bindings/halide/tutorial/lesson_05_scheduling_1.py | 12 | CODE | |
| LOW | …hon_bindings/halide/tutorial/lesson_16_rgb_generate.py | 53 | CODE | |
| LOW | …_bindings/halide/tutorial/lesson_17_predicated_rdom.py | 11 | CODE | |
| LOW | python_bindings/halide/apps/blur_generator.py | 40 | CODE | |
| LOW | …thon_bindings/halide/apps/local_laplacian_generator.py | 59 | CODE | |
| LOW | python_bindings/halide/src/_generator_helpers.py | 73 | CODE | |
| LOW | python_bindings/halide/src/_generator_helpers.py | 177 | CODE | |
| LOW | doc/generate_api_reference.py | 119 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | test/correctness/non_nesting_extern_bounds_query.cpp | 52 | // was indeed shifted inwards, as requested by the | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …hon_bindings/halide/tutorial/lesson_05_scheduling_1.py | 353 | # your responsibility to make sure you can handle the same point | COMMENT |
| MEDIUM | src/runtime/hexagon_remote/qurt/sim_remote.cpp | 52 | // This is a basic implementation of the Halide runtime for Hexagon. | COMMENT |
| MEDIUM | src/runtime/hexagon_remote/qurt/halide_remote.cpp | 27 | // This is a basic implementation of the Halide runtime for Hexagon. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tools/gdbhalide.py | 101 | except Exception: | CODE |
| LOW | tools/lldbhalide.py | 94 | except Exception as e: | CODE |
| LOW | …gs/halide/test/correctness/multi_method_module_test.py | 43 | except Exception as e: | CODE |
| LOW | python_bindings/halide/test/correctness/basics.py | 12 | except Exception as e: | CODE |
| MEDIUM | python_bindings/halide/test/correctness/basics.py | 9 | def assert_throws(exn, msg): | CODE |
| LOW | python_bindings/halide-runtime/test/gpu.py | 42 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | apps/HelloWasm/CMakeLists.txt | 37 | # Step 1: build the generator (and the native benchmark) with the host compiler. | COMMENT |
| LOW | apps/HelloWasm/CMakeLists.txt | 47 | # Step 2: cross-compile the app with Emscripten, importing the generator | COMMENT |
| LOW | src/runtime/cpu_features.h | 48 | // NOTE: This method is not part of the public API, but we push it into extern "C" to | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python_bindings/halide/_dynamic_metadata.py | 8 | __all__ = ["dynamic_metadata", "get_requires_for_dynamic_metadata"] | CODE |
| LOW | python_bindings/halide-runtime/_dynamic_metadata.py | 8 | __all__ = ["dynamic_metadata", "get_requires_for_dynamic_metadata"] | CODE |
| LOW | …bindings/halide-runtime/src/halide/runtime/__init__.py | 15 | __all__ = ["Buffer", "BufferDimension", "Kernel", "Type", "load"] | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | python_bindings/halide/tutorial/CMakeLists.txt | 107 | # The fixture "py_lesson_10" orchestrates running the generator part of the lesson first, then the build for the | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | apps/hannk/run_benchmark_on_hexagon_sim.sh | 4 | # Usage: | COMMENT |
| LOW | src/irvisualizer/html_template_StmtToHTML.js | 57 | // Example usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/CMakeLists.txt | 633 | ## TODO: implement something similar for Windows/link.exe | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | src/runtime/hexagon_dma.cpp | 609 | // TODO We need to check if any DMA specific action is required here | COMMENT |