[INFO] fetching crate sochdb-index 2.0.2...
[INFO] testing sochdb-index-2.0.2 against 1.95.0 for beta-1.96-2
[INFO] extracting crate sochdb-index 2.0.2 into /workspace/builds/worker-7-tc1/source
[INFO] started tweaking crates.io crate sochdb-index 2.0.2
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate sochdb-index 2.0.2
[INFO] tweaked toml for crates.io crate sochdb-index 2.0.2 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate sochdb-index 2.0.2 on toolchain 1.95.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate sochdb-index 2.0.2 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.95.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded portable-pty v0.8.1
[INFO] [stderr]   Downloaded instability v0.3.12
[INFO] [stderr]   Downloaded aws-smithy-query v0.60.15
[INFO] [stderr]   Downloaded aws-smithy-runtime-api-macros v1.0.0
[INFO] [stderr]   Downloaded rayon-cond v0.4.0
[INFO] [stderr]   Downloaded toon-format v0.4.5
[INFO] [stderr]   Downloaded hf-hub v0.4.3
[INFO] [stderr]   Downloaded aws-credential-types v1.2.14
[INFO] [stderr]   Downloaded flatbuffers v24.12.23
[INFO] [stderr]   Downloaded arrow-ord v54.3.1
[INFO] [stderr]   Downloaded shared_library v0.1.9
[INFO] [stderr]   Downloaded arrow-buffer v54.3.1
[INFO] [stderr]   Downloaded arrow-cast v54.3.1
[INFO] [stderr]   Downloaded arrow v54.3.1
[INFO] [stderr]   Downloaded unicode-normalization-alignments v0.1.12
[INFO] [stderr]   Downloaded esaxx-rs v0.1.10
[INFO] [stderr]   Downloaded tokenizers v0.21.4
[INFO] [stderr]   Downloaded arrow-array v54.3.1
[INFO] [stderr]   Downloaded monostate v0.1.18
[INFO] [stderr]   Downloaded aws-sdk-bedrockruntime v1.130.0
[INFO] [stderr]   Downloaded fastembed v4.9.1
[INFO] [stderr]   Downloaded llm v1.3.8
[INFO] [stderr]   Downloaded spm_precompiled v0.1.4
[INFO] [stderr]   Downloaded monostate-impl v0.1.18
[INFO] [stderr]   Downloaded arrow-string v54.3.1
[INFO] [stderr]   Downloaded ort-sys v2.0.0-rc.9
[INFO] [stderr]   Downloaded aws-smithy-observability v0.2.6
[INFO] [stderr]   Downloaded ratatui v0.28.1
[INFO] [stderr]   Downloaded sochdb-core v2.0.2
[INFO] [stderr]   Downloaded aws-sdk-sts v1.103.0
[INFO] [stderr]   Downloaded actix-http v3.12.1
[INFO] [stderr]   Downloaded aws-config v1.8.16
[INFO] [stderr]   Downloaded flexi_logger v0.29.8
[INFO] [stderr]   Downloaded aws-sdk-ssooidc v1.100.0
[INFO] [stderr]   Downloaded aws-sigv4 v1.4.3
[INFO] [stderr]   Downloaded aws-smithy-http-client v1.1.12
[INFO] [stderr]   Downloaded aws-smithy-runtime v1.11.1
[INFO] [stderr]   Downloaded aws-smithy-types v1.4.7
[INFO] [stderr]   Downloaded arrow-ipc v54.3.1
[INFO] [stderr]   Downloaded ort v2.0.0-rc.9
[INFO] [stderr]   Downloaded awc v3.8.2
[INFO] [stderr]   Downloaded aws-sdk-sso v1.98.0
[INFO] [stderr]   Downloaded aws-runtime v1.7.3
[INFO] [stderr]   Downloaded aws-smithy-runtime-api v1.12.0
[INFO] [stderr]   Downloaded arrow-select v54.3.1
[INFO] [stderr]   Downloaded arrow-schema v54.3.1
[INFO] [stderr]   Downloaded actix-tls v3.5.0
[INFO] [stderr]   Downloaded aws-smithy-eventstream v0.60.20
[INFO] [stderr]   Downloaded aws-smithy-http v0.63.6
[INFO] [stderr]   Downloaded aws-smithy-async v1.2.14
[INFO] [stderr]   Downloaded aws-types v1.3.15
[INFO] [stderr]   Downloaded arrow-row v54.3.1
[INFO] [stderr]   Downloaded arrow-data v54.3.1
[INFO] [stderr]   Downloaded aws-smithy-xml v0.60.15
[INFO] [stderr]   Downloaded aws-smithy-json v0.62.5
[INFO] [stderr]   Downloaded arrow-arith v54.3.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 611928a6de605c1d7c2d637d1eb1a885ae8bbc625e79db62412bc6bad659fd04
[INFO] running `Command { std: "docker" "start" "-a" "611928a6de605c1d7c2d637d1eb1a885ae8bbc625e79db62412bc6bad659fd04", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "611928a6de605c1d7c2d637d1eb1a885ae8bbc625e79db62412bc6bad659fd04", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "611928a6de605c1d7c2d637d1eb1a885ae8bbc625e79db62412bc6bad659fd04", kill_on_drop: false }`
[INFO] [stdout] 611928a6de605c1d7c2d637d1eb1a885ae8bbc625e79db62412bc6bad659fd04
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 9e3be3948521aa9995ab3c79e899229a5723af90cfe01c55fdedc3cdcbdb617e
[INFO] running `Command { std: "docker" "start" "-a" "9e3be3948521aa9995ab3c79e899229a5723af90cfe01c55fdedc3cdcbdb617e", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.185
[INFO] [stderr]    Compiling zerocopy v0.8.48
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling arrow-schema v54.3.1
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling lexical-util v1.0.7
[INFO] [stderr]    Compiling flatbuffers v24.12.23
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling zstd-safe v7.2.4
[INFO] [stderr]    Compiling zerocopy-derive v0.8.48
[INFO] [stderr]    Compiling smallvec v1.15.1
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling portable-atomic v1.13.1
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling prometheus v0.14.0
[INFO] [stderr]    Compiling hashbrown v0.14.5
[INFO] [stderr]    Compiling lexical-parse-integer v1.0.6
[INFO] [stderr]    Compiling lexical-write-integer v1.0.6
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]    Compiling bincode v1.3.3
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling lexical-write-float v1.0.6
[INFO] [stderr]    Compiling lexical-parse-float v1.0.6
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling tagptr v0.2.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]    Compiling flate2 v1.1.9
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]    Compiling getrandom v0.2.17
[INFO] [stderr]    Compiling lexical-core v1.0.6
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling toon-format v0.4.5
[INFO] [stderr]    Compiling uuid v1.23.1
[INFO] [stderr]    Compiling dirs-sys v0.4.1
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling dashmap v5.5.3
[INFO] [stderr]    Compiling ndarray v0.15.6
[INFO] [stderr]    Compiling memmap2 v0.9.10
[INFO] [stderr]    Compiling ordered-float v4.6.0
[INFO] [stderr]    Compiling dirs v5.0.1
[INFO] [stderr]    Compiling moka v0.12.15
[INFO] [stderr]    Compiling array-init v2.1.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling zstd-sys v2.0.16+zstd.1.5.7
[INFO] [stderr]    Compiling lz4-sys v1.11.1+lz4-1.10.0
[INFO] [stderr]    Compiling blake3 v1.8.4
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling zstd v0.13.3
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling arrow-buffer v54.3.1
[INFO] [stderr]    Compiling arrow-data v54.3.1
[INFO] [stderr]    Compiling arrow-array v54.3.1
[INFO] [stderr]    Compiling arrow-select v54.3.1
[INFO] [stderr]    Compiling arrow-arith v54.3.1
[INFO] [stderr]    Compiling arrow-row v54.3.1
[INFO] [stderr]    Compiling arrow-ipc v54.3.1
[INFO] [stderr]    Compiling arrow-ord v54.3.1
[INFO] [stderr]    Compiling arrow-cast v54.3.1
[INFO] [stderr]    Compiling arrow-string v54.3.1
[INFO] [stderr]    Compiling lz4 v1.28.1
[INFO] [stderr]    Compiling sochdb-core v2.0.2
[INFO] [stderr]    Compiling arrow v54.3.1
[INFO] [stderr]    Compiling sochdb-index v2.0.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `PROFILE_COLLECTOR`
[INFO] [stdout]     --> src/hnsw.rs:3429:54
[INFO] [stdout]      |
[INFO] [stdout] 3429 |         use crate::profiling::{is_profiling_enabled, PROFILE_COLLECTOR};
[INFO] [stdout]      |                                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BinaryHeap`
[INFO] [stdout]     --> src/hnsw.rs:4876:13
[INFO] [stdout]      |
[INFO] [stdout] 4876 |         use std::collections::BinaryHeap;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BinaryHeap`
[INFO] [stdout]     --> src/hnsw.rs:5036:13
[INFO] [stdout]      |
[INFO] [stdout] 5036 |         use std::collections::BinaryHeap;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5255:15
[INFO] [stdout]      |
[INFO] [stdout] 5255 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]      = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5257:15
[INFO] [stdout]      |
[INFO] [stdout] 5257 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5260:15
[INFO] [stdout]      |
[INFO] [stdout] 5260 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5491:15
[INFO] [stdout]      |
[INFO] [stdout] 5491 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5495:15
[INFO] [stdout]      |
[INFO] [stdout] 5495 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5264:19
[INFO] [stdout]      |
[INFO] [stdout] 5264 |             #[cfg(feature = "metrics")]
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5366:19
[INFO] [stdout]      |
[INFO] [stdout] 5366 |             #[cfg(feature = "metrics")]
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5369:19
[INFO] [stdout]      |
[INFO] [stdout] 5369 |             #[cfg(feature = "metrics")]
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Reverse`
[INFO] [stdout]     --> src/hnsw.rs:6162:13
[INFO] [stdout]      |
[INFO] [stdout] 6162 |         use std::cmp::Reverse;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |     data: [u8; VECTOR_DIM],
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:140:18
[INFO] [stdout]     |
[INFO] [stdout] 140 | impl Default for QuantizedVector {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:148:6
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl QuantizedVector {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:143:23
[INFO] [stdout]     |
[INFO] [stdout] 143 |             data: [0; VECTOR_DIM],
[INFO] [stdout]     |                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:159:13
[INFO] [stdout]     |
[INFO] [stdout] 159 |             VECTOR_DIM,
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             VECTOR_DIM,
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:166:30
[INFO] [stdout]     |
[INFO] [stdout] 166 |         let mut data = [0u8; VECTOR_DIM];
[INFO] [stdout]     |                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:176:21
[INFO] [stdout]     |
[INFO] [stdout] 176 |         for i in 0..VECTOR_DIM {
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:143:13
[INFO] [stdout]     |
[INFO] [stdout] 143 |             data: [0; VECTOR_DIM],
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:171:16
[INFO] [stdout]     |
[INFO] [stdout] 171 |         Self { data }
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:177:24
[INFO] [stdout]     |
[INFO] [stdout] 177 |             let diff = self.data[i] as i32 - other.data[i] as i32;
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:177:46
[INFO] [stdout]     |
[INFO] [stdout] 177 |             let diff = self.data[i] as i32 - other.data[i] as i32;
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `lockfree_hnsw::AtomicNeighborList::update`: Use update_reclaim() with a UnifiedReclaimer instead — this method leaks memory
[INFO] [stdout]    --> src/lockfree_hnsw.rs:405:21
[INFO] [stdout]     |
[INFO] [stdout] 405 |             if self.update(&mut mutator) {
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]     --> src/hnsw.rs:3631:13
[INFO] [stdout]      |
[INFO] [stdout] 3631 |         use rayon::prelude::*;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:402:25
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let v_vec = _mm_loadu_ps(tile_ptr.add(d * T));
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/aosoa_tiles.rs:384:5
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub unsafe fn tile_l2_squared_avx2(&self, query: &[f32], tile_idx: usize) -> [f32; T] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:402:38
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let v_vec = _mm_loadu_ps(tile_ptr.add(d * T));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to function `std::arch::x86_64::_mm_fmadd_ps` with `#[target_feature]` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:404:19
[INFO] [stdout]     |
[INFO] [stdout] 404 |             acc = _mm_fmadd_ps(diff, diff, acc);
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
[INFO] [stdout]     |
[INFO] [stdout]     = help: in order for the call to be safe, the context requires the following additional target feature: fma
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         _mm_storeu_ps(dists.as_mut_ptr(), acc);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_dense`
[INFO] [stdout]     --> src/hnsw.rs:3209:25
[INFO] [stdout]      |
[INFO] [stdout] 3209 |                     let node_dense = node.dense_index;
[INFO] [stdout]      |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_dense`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_neighbors`
[INFO] [stdout]     --> src/hnsw.rs:5074:29
[INFO] [stdout]      |
[INFO] [stdout] 5074 |                         let n_neighbors = neighbors.len();
[INFO] [stdout]      |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_neighbors`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/hnsw.rs:5076:30
[INFO] [stdout]      |
[INFO] [stdout] 5076 |                         for (i, &neighbor_dense) in neighbors.iter().enumerate() {
[INFO] [stdout]      |                              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:6898:9
[INFO] [stdout]      |
[INFO] [stdout] 6898 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:6918:9
[INFO] [stdout]      |
[INFO] [stdout] 6918 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:7058:9
[INFO] [stdout]      |
[INFO] [stdout] 7058 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:7078:9
[INFO] [stdout]      |
[INFO] [stdout] 7078 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7489:22
[INFO] [stdout]      |
[INFO] [stdout] 7489 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7475:5
[INFO] [stdout]      |
[INFO] [stdout] 7475 |     unsafe fn cosine_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7489:38
[INFO] [stdout]      |
[INFO] [stdout] 7489 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7490:22
[INFO] [stdout]      |
[INFO] [stdout] 7490 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7490:38
[INFO] [stdout]      |
[INFO] [stdout] 7490 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7499:19
[INFO] [stdout]      |
[INFO] [stdout] 7499 |         let dot = Self::horizontal_sum_avx2(dot_sum);
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7500:22
[INFO] [stdout]      |
[INFO] [stdout] 7500 |         let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7501:22
[INFO] [stdout]      |
[INFO] [stdout] 7501 |         let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7533:23
[INFO] [stdout]      |
[INFO] [stdout] 7533 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7514:5
[INFO] [stdout]      |
[INFO] [stdout] 7514 |     unsafe fn cosine_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7533:39
[INFO] [stdout]      |
[INFO] [stdout] 7533 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7534:23
[INFO] [stdout]      |
[INFO] [stdout] 7534 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7534:39
[INFO] [stdout]      |
[INFO] [stdout] 7534 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7535:23
[INFO] [stdout]      |
[INFO] [stdout] 7535 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7535:39
[INFO] [stdout]      |
[INFO] [stdout] 7535 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7536:23
[INFO] [stdout]      |
[INFO] [stdout] 7536 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7536:39
[INFO] [stdout]      |
[INFO] [stdout] 7536 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7554:19
[INFO] [stdout]      |
[INFO] [stdout] 7554 |         let dot = Self::horizontal_sum_avx2(dot_sum);
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7555:22
[INFO] [stdout]      |
[INFO] [stdout] 7555 |         let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7556:22
[INFO] [stdout]      |
[INFO] [stdout] 7556 |         let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7588:23
[INFO] [stdout]      |
[INFO] [stdout] 7588 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7569:5
[INFO] [stdout]      |
[INFO] [stdout] 7569 |     unsafe fn cosine_distance_avx2_unrolled_1536(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7588:39
[INFO] [stdout]      |
[INFO] [stdout] 7588 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7589:23
[INFO] [stdout]      |
[INFO] [stdout] 7589 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7589:39
[INFO] [stdout]      |
[INFO] [stdout] 7589 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7590:23
[INFO] [stdout]      |
[INFO] [stdout] 7590 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7590:39
[INFO] [stdout]      |
[INFO] [stdout] 7590 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7591:23
[INFO] [stdout]      |
[INFO] [stdout] 7591 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7591:39
[INFO] [stdout]      |
[INFO] [stdout] 7591 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7607:19
[INFO] [stdout]      |
[INFO] [stdout] 7607 |         let dot = Self::horizontal_sum_avx2(dot_sum);
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7608:22
[INFO] [stdout]      |
[INFO] [stdout] 7608 |         let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7609:22
[INFO] [stdout]      |
[INFO] [stdout] 7609 |         let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7632:22
[INFO] [stdout]      |
[INFO] [stdout] 7632 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7621:5
[INFO] [stdout]      |
[INFO] [stdout] 7621 |     unsafe fn l2_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7632:38
[INFO] [stdout]      |
[INFO] [stdout] 7632 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7633:22
[INFO] [stdout]      |
[INFO] [stdout] 7633 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7633:38
[INFO] [stdout]      |
[INFO] [stdout] 7633 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7638:9
[INFO] [stdout]      |
[INFO] [stdout] 7638 |         Self::horizontal_sum_avx2(sum).sqrt()
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7654:22
[INFO] [stdout]      |
[INFO] [stdout] 7654 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7644:5
[INFO] [stdout]      |
[INFO] [stdout] 7644 |     unsafe fn l2_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7654:38
[INFO] [stdout]      |
[INFO] [stdout] 7654 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7655:22
[INFO] [stdout]      |
[INFO] [stdout] 7655 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7655:38
[INFO] [stdout]      |
[INFO] [stdout] 7655 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7660:9
[INFO] [stdout]      |
[INFO] [stdout] 7660 |         Self::horizontal_sum_avx2(sum).sqrt()
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7676:22
[INFO] [stdout]      |
[INFO] [stdout] 7676 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7666:5
[INFO] [stdout]      |
[INFO] [stdout] 7666 |     unsafe fn dot_product_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7676:38
[INFO] [stdout]      |
[INFO] [stdout] 7676 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7677:22
[INFO] [stdout]      |
[INFO] [stdout] 7677 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7677:38
[INFO] [stdout]      |
[INFO] [stdout] 7677 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7681:9
[INFO] [stdout]      |
[INFO] [stdout] 7681 |         Self::horizontal_sum_avx2(sum)
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reachable`
[INFO] [stdout]     --> src/hnsw.rs:8490:14
[INFO] [stdout]      |
[INFO] [stdout] 8490 |         let (reachable, total, orphans) = self.diagnose_connectivity();
[INFO] [stdout]      |              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reachable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total`
[INFO] [stdout]     --> src/hnsw.rs:8490:25
[INFO] [stdout]      |
[INFO] [stdout] 8490 |         let (reachable, total, orphans) = self.diagnose_connectivity();
[INFO] [stdout]      |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_total`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:431:22
[INFO] [stdout]     |
[INFO] [stdout] 431 |             let va = _mm256_loadu_ps(a.as_ptr().add(idx));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/optimized_search.rs:420:5
[INFO] [stdout]     |
[INFO] [stdout] 420 |     unsafe fn euclidean_distance_avx2(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:431:38
[INFO] [stdout]     |
[INFO] [stdout] 431 |             let va = _mm256_loadu_ps(a.as_ptr().add(idx));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:432:22
[INFO] [stdout]     |
[INFO] [stdout] 432 |             let vb = _mm256_loadu_ps(b.as_ptr().add(idx));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:432:38
[INFO] [stdout]     |
[INFO] [stdout] 432 |             let vb = _mm256_loadu_ps(b.as_ptr().add(idx));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:389:22
[INFO] [stdout]     |
[INFO] [stdout] 389 |             let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/unified_quant.rs:379:5
[INFO] [stdout]     |
[INFO] [stdout] 379 |     unsafe fn dot_i8_avx2(a: &[i8], b: &[i8]) -> i32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:389:41
[INFO] [stdout]     |
[INFO] [stdout] 389 |             let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:390:22
[INFO] [stdout]     |
[INFO] [stdout] 390 |             let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:390:41
[INFO] [stdout]     |
[INFO] [stdout] 390 |             let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:188:18
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let va = _mm_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     unsafe fn blend_avx2(a: [f32; 4], b: [f32; 4], mask: SimdMask) -> [f32; 4] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:189:18
[INFO] [stdout]     |
[INFO] [stdout] 189 |         let vb = _mm_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_si128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:190:18
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let vm = _mm_loadu_si128(mask_expanded.as_ptr() as *const __m128i);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |         _mm_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:266:18
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let va = _mm_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     unsafe fn min_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:267:18
[INFO] [stdout]     |
[INFO] [stdout] 267 |         let vb = _mm_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:270:9
[INFO] [stdout]     |
[INFO] [stdout] 270 |         _mm_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:313:18
[INFO] [stdout]     |
[INFO] [stdout] 313 |         let va = _mm_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 |     unsafe fn max_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:314:18
[INFO] [stdout]     |
[INFO] [stdout] 314 |         let vb = _mm_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         _mm_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:474:18
[INFO] [stdout]     |
[INFO] [stdout] 474 |         let va = _mm256_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:459:5
[INFO] [stdout]     |
[INFO] [stdout] 459 |     unsafe fn blend_avx2(a: [f32; 8], b: [f32; 8], mask: u8) -> [f32; 8] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:475:18
[INFO] [stdout]     |
[INFO] [stdout] 475 |         let vb = _mm256_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:476:18
[INFO] [stdout]     |
[INFO] [stdout] 476 |         let vm = _mm256_loadu_si256(mask_expanded.as_ptr() as *const __m256i);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:481:9
[INFO] [stdout]     |
[INFO] [stdout] 481 |         _mm256_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:507:18
[INFO] [stdout]     |
[INFO] [stdout] 507 |         let va = _mm256_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:505:5
[INFO] [stdout]     |
[INFO] [stdout] 505 |     unsafe fn min_avx2(a: [f32; 8], b: [f32; 8]) -> [f32; 8] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:508:18
[INFO] [stdout]     |
[INFO] [stdout] 508 |         let vb = _mm256_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:511:9
[INFO] [stdout]     |
[INFO] [stdout] 511 |         _mm256_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:539:18
[INFO] [stdout]     |
[INFO] [stdout] 539 |         let va = _mm256_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:537:5
[INFO] [stdout]     |
[INFO] [stdout] 537 |     unsafe fn cmp_lt_avx2(a: [f32; 8], b: [f32; 8]) -> u8 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:540:18
[INFO] [stdout]     |
[INFO] [stdout] 540 |         let vb = _mm256_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:132:21
[INFO] [stdout]     |
[INFO] [stdout] 132 |                     query_ptr.add(prefetch_d) as *const i8,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_batch_distance.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 104 | /     pub unsafe fn batch_l2_squared_8x(
[INFO] [stdout] 105 | |         query: &[f32],
[INFO] [stdout] 106 | |         candidates: &[&[f32]; 8],
[INFO] [stdout] 107 | |         dimension: usize,
[INFO] [stdout] 108 | |     ) -> [f32; 8] {
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:136:34
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     _mm_prefetch(c.as_ptr().add(prefetch_d) as *const i8, _MM_HINT_T0);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:141:21
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:141:37
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 152 |             process_candidate!(0, acc0);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 152 |             process_candidate!(0, acc0);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 153 |             process_candidate!(1, acc1);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 153 |             process_candidate!(1, acc1);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 154 |             process_candidate!(2, acc2);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 154 |             process_candidate!(2, acc2);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 155 |             process_candidate!(3, acc3);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 155 |             process_candidate!(3, acc3);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 156 |             process_candidate!(4, acc4);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 156 |             process_candidate!(4, acc4);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 157 |             process_candidate!(5, acc5);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 157 |             process_candidate!(5, acc5);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 158 |             process_candidate!(6, acc6);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 158 |             process_candidate!(6, acc6);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 159 |             process_candidate!(7, acc7);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 159 |             process_candidate!(7, acc7);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:166:30
[INFO] [stdout]     |
[INFO] [stdout] 166 |                 let q_val = *query.get_unchecked(d);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:168:34
[INFO] [stdout]     |
[INFO] [stdout] 168 |                     let c_val = *candidate.get_unchecked(d);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:187:13
[INFO] [stdout]     |
[INFO] [stdout] 187 |             hsum_256(acc0),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:188:13
[INFO] [stdout]     |
[INFO] [stdout] 188 |             hsum_256(acc1),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |             hsum_256(acc2),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |             hsum_256(acc3),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:191:13
[INFO] [stdout]     |
[INFO] [stdout] 191 |             hsum_256(acc4),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:192:13
[INFO] [stdout]     |
[INFO] [stdout] 192 |             hsum_256(acc5),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:193:13
[INFO] [stdout]     |
[INFO] [stdout] 193 |             hsum_256(acc6),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:194:13
[INFO] [stdout]     |
[INFO] [stdout] 194 |             hsum_256(acc7),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:241:30
[INFO] [stdout]     |
[INFO] [stdout] 241 |                 _mm_prefetch(query_ptr.add(prefetch_d) as *const i8, _MM_HINT_T0);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_batch_distance.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 | /     pub unsafe fn batch_dot_product_8x(
[INFO] [stdout] 218 | |         query: &[f32],
[INFO] [stdout] 219 | |         candidates: &[&[f32]; 8],
[INFO] [stdout] 220 | |         dimension: usize,
[INFO] [stdout] 221 | |     ) -> [f32; 8] {
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:244:21
[INFO] [stdout]     |
[INFO] [stdout] 244 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:244:37
[INFO] [stdout]     |
[INFO] [stdout] 244 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 253 |             process_dot!(0, acc0);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 253 |             process_dot!(0, acc0);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 254 |             process_dot!(1, acc1);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 254 |             process_dot!(1, acc1);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 255 |             process_dot!(2, acc2);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 255 |             process_dot!(2, acc2);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 256 |             process_dot!(3, acc3);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 256 |             process_dot!(3, acc3);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 257 |             process_dot!(4, acc4);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 257 |             process_dot!(4, acc4);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 258 |             process_dot!(5, acc5);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 258 |             process_dot!(5, acc5);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 259 |             process_dot!(6, acc6);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 259 |             process_dot!(6, acc6);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 260 |             process_dot!(7, acc7);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 260 |             process_dot!(7, acc7);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:266:26
[INFO] [stdout]     |
[INFO] [stdout] 266 |             let q_val = *query.get_unchecked(d);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:268:30
[INFO] [stdout]     |
[INFO] [stdout] 268 |                 let c_val = *candidate.get_unchecked(d);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:284:13
[INFO] [stdout]     |
[INFO] [stdout] 284 |             hsum_256(acc0),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |             hsum_256(acc1),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:286:13
[INFO] [stdout]     |
[INFO] [stdout] 286 |             hsum_256(acc2),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             hsum_256(acc3),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             hsum_256(acc4),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:289:13
[INFO] [stdout]     |
[INFO] [stdout] 289 |             hsum_256(acc5),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:290:13
[INFO] [stdout]     |
[INFO] [stdout] 290 |             hsum_256(acc6),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |             hsum_256(acc7),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:253:19
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let va0 = _mm256_loadu_ps(a_ptr.add(base));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:236:1
[INFO] [stdout]     |
[INFO] [stdout] 236 | pub unsafe fn l2_squared_avx2(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:253:35
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let va0 = _mm256_loadu_ps(a_ptr.add(base));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:254:19
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let vb0 = _mm256_loadu_ps(b_ptr.add(base));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:254:35
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let vb0 = _mm256_loadu_ps(b_ptr.add(base));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:258:19
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let va1 = _mm256_loadu_ps(a_ptr.add(base + 8));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:258:35
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let va1 = _mm256_loadu_ps(a_ptr.add(base + 8));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:259:19
[INFO] [stdout]     |
[INFO] [stdout] 259 |         let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:259:35
[INFO] [stdout]     |
[INFO] [stdout] 259 |         let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:263:19
[INFO] [stdout]     |
[INFO] [stdout] 263 |         let va2 = _mm256_loadu_ps(a_ptr.add(base + 16));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:263:35
[INFO] [stdout]     |
[INFO] [stdout] 263 |         let va2 = _mm256_loadu_ps(a_ptr.add(base + 16));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:264:19
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:264:35
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:268:19
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let va3 = _mm256_loadu_ps(a_ptr.add(base + 24));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:268:35
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let va3 = _mm256_loadu_ps(a_ptr.add(base + 24));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:269:19
[INFO] [stdout]     |
[INFO] [stdout] 269 |         let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:269:35
[INFO] [stdout]     |
[INFO] [stdout] 269 |         let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:276:18
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:276:34
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:277:18
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:277:34
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:297:43
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:319:18
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:307:1
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub unsafe fn dot_product_avx2(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:319:34
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:320:18
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:320:34
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:335:20
[INFO] [stdout]     |
[INFO] [stdout] 335 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:335:42
[INFO] [stdout]     |
[INFO] [stdout] 335 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:360:18
[INFO] [stdout]     |
[INFO] [stdout] 360 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:348:1
[INFO] [stdout]     |
[INFO] [stdout] 348 | pub unsafe fn l2_squared_sse41(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:360:31
[INFO] [stdout]     |
[INFO] [stdout] 360 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:361:18
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:361:31
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:375:21
[INFO] [stdout]     |
[INFO] [stdout] 375 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:375:43
[INFO] [stdout]     |
[INFO] [stdout] 375 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:397:18
[INFO] [stdout]     |
[INFO] [stdout] 397 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:385:1
[INFO] [stdout]     |
[INFO] [stdout] 385 | pub unsafe fn dot_product_sse41(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:397:31
[INFO] [stdout]     |
[INFO] [stdout] 397 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:398:18
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:398:31
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:411:20
[INFO] [stdout]     |
[INFO] [stdout] 411 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:411:42
[INFO] [stdout]     |
[INFO] [stdout] 411 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:436:18
[INFO] [stdout]     |
[INFO] [stdout] 436 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:424:1
[INFO] [stdout]     |
[INFO] [stdout] 424 | pub unsafe fn l2_squared_avx512(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:436:34
[INFO] [stdout]     |
[INFO] [stdout] 436 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:437:18
[INFO] [stdout]     |
[INFO] [stdout] 437 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:437:34
[INFO] [stdout]     |
[INFO] [stdout] 437 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:447:21
[INFO] [stdout]     |
[INFO] [stdout] 447 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:447:43
[INFO] [stdout]     |
[INFO] [stdout] 447 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:469:18
[INFO] [stdout]     |
[INFO] [stdout] 469 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:457:1
[INFO] [stdout]     |
[INFO] [stdout] 457 | pub unsafe fn dot_product_avx512(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:469:34
[INFO] [stdout]     |
[INFO] [stdout] 469 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:470:18
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:470:34
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:479:20
[INFO] [stdout]     |
[INFO] [stdout] 479 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:479:42
[INFO] [stdout]     |
[INFO] [stdout] 479 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/simd_distance.rs:771:26
[INFO] [stdout]     |
[INFO] [stdout] 771 |         let sum_scalar = unsafe {
[INFO] [stdout]     |                          ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/simd_distance.rs:791:22
[INFO] [stdout]     |
[INFO] [stdout] 791 |     let mut result = unsafe {
[INFO] [stdout]     |                      ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `FastCandidate` is more private than the item `ScratchBuffers::fast_candidates`
[INFO] [stdout]    --> src/scratch_buffers.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub fast_candidates: BinaryHeap<FastCandidate>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_candidates` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `FastCandidate` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/hnsw.rs:927:1
[INFO] [stdout]     |
[INFO] [stdout] 927 | pub(crate) struct FastCandidate {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `FastCandidate` is more private than the item `ScratchBuffers::fast_results_heap`
[INFO] [stdout]    --> src/scratch_buffers.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     pub fast_results_heap: BinaryHeap<Reverse<FastCandidate>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_results_heap` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `FastCandidate` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/hnsw.rs:927:1
[INFO] [stdout]     |
[INFO] [stdout] 927 | pub(crate) struct FastCandidate {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `needs_refinement` is never read
[INFO] [stdout]     --> src/hnsw.rs:2198:16
[INFO] [stdout]      |
[INFO] [stdout] 2144 | pub struct HnswIndex {
[INFO] [stdout]      |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 2198 |     pub(crate) needs_refinement: AtomicBool,
[INFO] [stdout]      |                ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_node_by_dense`, `connect_node_fast_profiled`, `search_layer_fast`, and `process_neighbors_with_prefetch` are never used
[INFO] [stdout]     --> src/hnsw.rs:2328:19
[INFO] [stdout]      |
[INFO] [stdout] 2230 | impl HnswIndex {
[INFO] [stdout]      | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 2328 |     pub(crate) fn get_node_by_dense(&self, dense_index: u32) -> Option<Arc<HnswNode>> {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 3764 |     fn connect_node_fast_profiled(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 5149 |     fn search_layer_fast(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 6646 |     fn process_neighbors_with_prefetch(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused arithmetic operation that must be used
[INFO] [stdout]    --> src/simd_distance.rs:784:17
[INFO] [stdout]     |
[INFO] [stdout] 784 |                 sum_scalar + diff * diff;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^ the arithmetic operation produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 784 |                 let _ = sum_scalar + diff * diff;
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Reverse`
[INFO] [stdout]  --> src/bin/micro_bench.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::cmp::Reverse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ordering`
[INFO] [stdout]  --> src/bin/profile_hotpath.rs:8:36
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::atomic::{AtomicU64, Ordering};
[INFO] [stdout]   |                                    ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/profile_hotpath.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let mut times_distance: Vec<Duration> = Vec::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `times_distance`
[INFO] [stdout]    --> src/bin/profile_hotpath.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let mut times_distance: Vec<Duration> = Vec::new();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_times_distance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DISTANCE_CALLS` is never used
[INFO] [stdout]   --> src/bin/profile_hotpath.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | static DISTANCE_CALLS: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEAP_PUSHES` is never used
[INFO] [stdout]   --> src/bin/profile_hotpath.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | static HEAP_PUSHES: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `VISITED_CHECKS` is never used
[INFO] [stdout]   --> src/bin/profile_hotpath.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | static VISITED_CHECKS: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 59.25s
[INFO] running `Command { std: "docker" "inspect" "9e3be3948521aa9995ab3c79e899229a5723af90cfe01c55fdedc3cdcbdb617e", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "9e3be3948521aa9995ab3c79e899229a5723af90cfe01c55fdedc3cdcbdb617e", kill_on_drop: false }`
[INFO] [stdout] 9e3be3948521aa9995ab3c79e899229a5723af90cfe01c55fdedc3cdcbdb617e
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1.95.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 323637c7c0f43939f67e8dc4117a4332c518f60be51e1e08f1b6717558fad1db
[INFO] running `Command { std: "docker" "start" "-a" "323637c7c0f43939f67e8dc4117a4332c518f60be51e1e08f1b6717558fad1db", kill_on_drop: false }`
[INFO] [stderr]    Compiling getrandom v0.3.4
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rayon v1.12.0
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling wait-timeout v0.2.1
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling rand_core v0.9.5
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling rusty-fork v0.3.1
[INFO] [stderr]    Compiling rand v0.8.6
[INFO] [stderr]    Compiling rand_xorshift v0.4.0
[INFO] [stderr]    Compiling rand_chacha v0.9.0
[INFO] [stderr]    Compiling rand v0.9.4
[INFO] [stderr]    Compiling num-integer v0.1.46
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling atoi v2.0.0
[INFO] [stderr]    Compiling ordered-float v4.6.0
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling num-bigint v0.4.6
[INFO] [stderr]    Compiling num-iter v0.1.45
[INFO] [stderr]    Compiling proptest v1.11.0
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling ndarray v0.15.6
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling num v0.4.3
[INFO] [stderr]    Compiling arrow-buffer v54.3.1
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling arrow-data v54.3.1
[INFO] [stderr]    Compiling arrow-array v54.3.1
[INFO] [stderr]    Compiling arrow-select v54.3.1
[INFO] [stderr]    Compiling arrow-row v54.3.1
[INFO] [stderr]    Compiling arrow-ipc v54.3.1
[INFO] [stderr]    Compiling arrow-arith v54.3.1
[INFO] [stderr]    Compiling arrow-ord v54.3.1
[INFO] [stderr]    Compiling arrow-cast v54.3.1
[INFO] [stderr]    Compiling arrow-string v54.3.1
[INFO] [stderr]    Compiling arrow v54.3.1
[INFO] [stderr]    Compiling sochdb-index v2.0.2 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `PROFILE_COLLECTOR`
[INFO] [stdout]     --> src/hnsw.rs:3429:54
[INFO] [stdout]      |
[INFO] [stdout] 3429 |         use crate::profiling::{is_profiling_enabled, PROFILE_COLLECTOR};
[INFO] [stdout]      |                                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BinaryHeap`
[INFO] [stdout]     --> src/hnsw.rs:4876:13
[INFO] [stdout]      |
[INFO] [stdout] 4876 |         use std::collections::BinaryHeap;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BinaryHeap`
[INFO] [stdout]     --> src/hnsw.rs:5036:13
[INFO] [stdout]      |
[INFO] [stdout] 5036 |         use std::collections::BinaryHeap;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5255:15
[INFO] [stdout]      |
[INFO] [stdout] 5255 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]      = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5257:15
[INFO] [stdout]      |
[INFO] [stdout] 5257 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5260:15
[INFO] [stdout]      |
[INFO] [stdout] 5260 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5491:15
[INFO] [stdout]      |
[INFO] [stdout] 5491 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5495:15
[INFO] [stdout]      |
[INFO] [stdout] 5495 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5264:19
[INFO] [stdout]      |
[INFO] [stdout] 5264 |             #[cfg(feature = "metrics")]
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5366:19
[INFO] [stdout]      |
[INFO] [stdout] 5366 |             #[cfg(feature = "metrics")]
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5369:19
[INFO] [stdout]      |
[INFO] [stdout] 5369 |             #[cfg(feature = "metrics")]
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Reverse`
[INFO] [stdout]     --> src/hnsw.rs:6162:13
[INFO] [stdout]      |
[INFO] [stdout] 6162 |         use std::cmp::Reverse;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |     data: [u8; VECTOR_DIM],
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:140:18
[INFO] [stdout]     |
[INFO] [stdout] 140 | impl Default for QuantizedVector {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:148:6
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl QuantizedVector {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:143:23
[INFO] [stdout]     |
[INFO] [stdout] 143 |             data: [0; VECTOR_DIM],
[INFO] [stdout]     |                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:159:13
[INFO] [stdout]     |
[INFO] [stdout] 159 |             VECTOR_DIM,
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             VECTOR_DIM,
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:166:30
[INFO] [stdout]     |
[INFO] [stdout] 166 |         let mut data = [0u8; VECTOR_DIM];
[INFO] [stdout]     |                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:176:21
[INFO] [stdout]     |
[INFO] [stdout] 176 |         for i in 0..VECTOR_DIM {
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ContiguousNodeStorage` and `LayerData`
[INFO] [stdout]    --> src/edge_delta_buffer.rs:451:40
[INFO] [stdout]     |
[INFO] [stdout] 451 |     use crate::storage::node_storage::{ContiguousNodeStorage, LayerData};
[INFO] [stdout]     |                                        ^^^^^^^^^^^^^^^^^^^^^  ^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::vector_quantized::QuantizedVector`
[INFO] [stdout]    --> src/edge_delta_buffer.rs:452:9
[INFO] [stdout]     |
[INFO] [stdout] 452 |     use crate::vector_quantized::QuantizedVector;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PROFILE_COLLECTOR`
[INFO] [stdout]     --> src/hnsw.rs:3429:54
[INFO] [stdout]      |
[INFO] [stdout] 3429 |         use crate::profiling::{is_profiling_enabled, PROFILE_COLLECTOR};
[INFO] [stdout]      |                                                      ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BinaryHeap`
[INFO] [stdout]     --> src/hnsw.rs:4876:13
[INFO] [stdout]      |
[INFO] [stdout] 4876 |         use std::collections::BinaryHeap;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::collections::BinaryHeap`
[INFO] [stdout]     --> src/hnsw.rs:5036:13
[INFO] [stdout]      |
[INFO] [stdout] 5036 |         use std::collections::BinaryHeap;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5255:15
[INFO] [stdout]      |
[INFO] [stdout] 5255 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]      = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5257:15
[INFO] [stdout]      |
[INFO] [stdout] 5257 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5260:15
[INFO] [stdout]      |
[INFO] [stdout] 5260 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5491:15
[INFO] [stdout]      |
[INFO] [stdout] 5491 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5495:15
[INFO] [stdout]      |
[INFO] [stdout] 5495 |         #[cfg(feature = "metrics")]
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5264:19
[INFO] [stdout]      |
[INFO] [stdout] 5264 |             #[cfg(feature = "metrics")]
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5366:19
[INFO] [stdout]      |
[INFO] [stdout] 5366 |             #[cfg(feature = "metrics")]
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition value: `metrics`
[INFO] [stdout]     --> src/hnsw.rs:5369:19
[INFO] [stdout]      |
[INFO] [stdout] 5369 |             #[cfg(feature = "metrics")]
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: expected values for `feature` are: `async`, `default`, `fastembed-embeddings`, `llm-embeddings`, and `local-embeddings`
[INFO] [stdout]      = help: consider adding `metrics` as a feature in `Cargo.toml`
[INFO] [stdout]      = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Reverse`
[INFO] [stdout]     --> src/hnsw.rs:6162:13
[INFO] [stdout]      |
[INFO] [stdout] 6162 |         use std::cmp::Reverse;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dot_product_quantized`
[INFO] [stdout]   --> src/rng_optimization_tests.rs:12:134
[INFO] [stdout]    |
[INFO] [stdout] 12 | ...ized_quantized, cosine_distance_normalized_quantized, dot_product_quantized};
[INFO] [stdout]    |                                                          ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:137:16
[INFO] [stdout]     |
[INFO] [stdout] 137 |     data: [u8; VECTOR_DIM],
[INFO] [stdout]     |                ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:140:18
[INFO] [stdout]     |
[INFO] [stdout] 140 | impl Default for QuantizedVector {
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `lockfree_hnsw::QuantizedVector`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:148:6
[INFO] [stdout]     |
[INFO] [stdout] 148 | impl QuantizedVector {
[INFO] [stdout]     |      ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:143:23
[INFO] [stdout]     |
[INFO] [stdout] 143 |             data: [0; VECTOR_DIM],
[INFO] [stdout]     |                       ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:159:13
[INFO] [stdout]     |
[INFO] [stdout] 159 |             VECTOR_DIM,
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:163:13
[INFO] [stdout]     |
[INFO] [stdout] 163 |             VECTOR_DIM,
[INFO] [stdout]     |             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:166:30
[INFO] [stdout]     |
[INFO] [stdout] 166 |         let mut data = [0u8; VECTOR_DIM];
[INFO] [stdout]     |                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated constant `lockfree_hnsw::VECTOR_DIM`: Use DynamicQuantizedVector instead — VECTOR_DIM is hardcoded to 128.
[INFO] [stdout]    --> src/lockfree_hnsw.rs:176:21
[INFO] [stdout]     |
[INFO] [stdout] 176 |         for i in 0..VECTOR_DIM {
[INFO] [stdout]     |                     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:143:13
[INFO] [stdout]     |
[INFO] [stdout] 143 |             data: [0; VECTOR_DIM],
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:171:16
[INFO] [stdout]     |
[INFO] [stdout] 171 |         Self { data }
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:177:24
[INFO] [stdout]     |
[INFO] [stdout] 177 |             let diff = self.data[i] as i32 - other.data[i] as i32;
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:177:46
[INFO] [stdout]     |
[INFO] [stdout] 177 |             let diff = self.data[i] as i32 - other.data[i] as i32;
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `lockfree_hnsw::AtomicNeighborList::update`: Use update_reclaim() with a UnifiedReclaimer instead — this method leaks memory
[INFO] [stdout]    --> src/lockfree_hnsw.rs:405:21
[INFO] [stdout]     |
[INFO] [stdout] 405 |             if self.update(&mut mutator) {
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:143:13
[INFO] [stdout]     |
[INFO] [stdout] 143 |             data: [0; VECTOR_DIM],
[INFO] [stdout]     |             ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:171:16
[INFO] [stdout]     |
[INFO] [stdout] 171 |         Self { data }
[INFO] [stdout]     |                ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:177:24
[INFO] [stdout]     |
[INFO] [stdout] 177 |             let diff = self.data[i] as i32 - other.data[i] as i32;
[INFO] [stdout]     |                        ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated field `lockfree_hnsw::QuantizedVector::data`: Use DynamicQuantizedVector instead
[INFO] [stdout]    --> src/lockfree_hnsw.rs:177:46
[INFO] [stdout]     |
[INFO] [stdout] 177 |             let diff = self.data[i] as i32 - other.data[i] as i32;
[INFO] [stdout]     |                                              ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `lockfree_hnsw::AtomicNeighborList::update`: Use update_reclaim() with a UnifiedReclaimer instead — this method leaks memory
[INFO] [stdout]    --> src/lockfree_hnsw.rs:405:21
[INFO] [stdout]     |
[INFO] [stdout] 405 |             if self.update(&mut mutator) {
[INFO] [stdout]     |                     ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated method `lockfree_hnsw::AtomicNeighborList::update_with_retry`: Use update_with_retry_reclaim() with a UnifiedReclaimer instead — this method leaks memory
[INFO] [stdout]     --> src/lockfree_hnsw.rs:1024:26
[INFO] [stdout]      |
[INFO] [stdout] 1024 |                     list.update_with_retry(
[INFO] [stdout]      |                          ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]     --> src/hnsw.rs:3631:13
[INFO] [stdout]      |
[INFO] [stdout] 3631 |         use rayon::prelude::*;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:402:25
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let v_vec = _mm_loadu_ps(tile_ptr.add(d * T));
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/aosoa_tiles.rs:384:5
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub unsafe fn tile_l2_squared_avx2(&self, query: &[f32], tile_idx: usize) -> [f32; T] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:402:38
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let v_vec = _mm_loadu_ps(tile_ptr.add(d * T));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to function `std::arch::x86_64::_mm_fmadd_ps` with `#[target_feature]` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:404:19
[INFO] [stdout]     |
[INFO] [stdout] 404 |             acc = _mm_fmadd_ps(diff, diff, acc);
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
[INFO] [stdout]     |
[INFO] [stdout]     = help: in order for the call to be safe, the context requires the following additional target feature: fma
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         _mm_storeu_ps(dists.as_mut_ptr(), acc);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_dense`
[INFO] [stdout]     --> src/hnsw.rs:3209:25
[INFO] [stdout]      |
[INFO] [stdout] 3209 |                     let node_dense = node.dense_index;
[INFO] [stdout]      |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_dense`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_neighbors`
[INFO] [stdout]     --> src/hnsw.rs:5074:29
[INFO] [stdout]      |
[INFO] [stdout] 5074 |                         let n_neighbors = neighbors.len();
[INFO] [stdout]      |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_neighbors`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/hnsw.rs:5076:30
[INFO] [stdout]      |
[INFO] [stdout] 5076 |                         for (i, &neighbor_dense) in neighbors.iter().enumerate() {
[INFO] [stdout]      |                              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:6898:9
[INFO] [stdout]      |
[INFO] [stdout] 6898 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:6918:9
[INFO] [stdout]      |
[INFO] [stdout] 6918 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:7058:9
[INFO] [stdout]      |
[INFO] [stdout] 7058 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:7078:9
[INFO] [stdout]      |
[INFO] [stdout] 7078 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rayon::prelude`
[INFO] [stdout]     --> src/hnsw.rs:3631:13
[INFO] [stdout]      |
[INFO] [stdout] 3631 |         use rayon::prelude::*;
[INFO] [stdout]      |             ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7489:22
[INFO] [stdout]      |
[INFO] [stdout] 7489 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7475:5
[INFO] [stdout]      |
[INFO] [stdout] 7475 |     unsafe fn cosine_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7489:38
[INFO] [stdout]      |
[INFO] [stdout] 7489 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7490:22
[INFO] [stdout]      |
[INFO] [stdout] 7490 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7490:38
[INFO] [stdout]      |
[INFO] [stdout] 7490 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7499:19
[INFO] [stdout]      |
[INFO] [stdout] 7499 |         let dot = Self::horizontal_sum_avx2(dot_sum);
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7500:22
[INFO] [stdout]      |
[INFO] [stdout] 7500 |         let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7501:22
[INFO] [stdout]      |
[INFO] [stdout] 7501 |         let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7533:23
[INFO] [stdout]      |
[INFO] [stdout] 7533 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7514:5
[INFO] [stdout]      |
[INFO] [stdout] 7514 |     unsafe fn cosine_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7533:39
[INFO] [stdout]      |
[INFO] [stdout] 7533 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7534:23
[INFO] [stdout]      |
[INFO] [stdout] 7534 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7534:39
[INFO] [stdout]      |
[INFO] [stdout] 7534 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7535:23
[INFO] [stdout]      |
[INFO] [stdout] 7535 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7535:39
[INFO] [stdout]      |
[INFO] [stdout] 7535 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7536:23
[INFO] [stdout]      |
[INFO] [stdout] 7536 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7536:39
[INFO] [stdout]      |
[INFO] [stdout] 7536 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7554:19
[INFO] [stdout]      |
[INFO] [stdout] 7554 |         let dot = Self::horizontal_sum_avx2(dot_sum);
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7555:22
[INFO] [stdout]      |
[INFO] [stdout] 7555 |         let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7556:22
[INFO] [stdout]      |
[INFO] [stdout] 7556 |         let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7588:23
[INFO] [stdout]      |
[INFO] [stdout] 7588 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7569:5
[INFO] [stdout]      |
[INFO] [stdout] 7569 |     unsafe fn cosine_distance_avx2_unrolled_1536(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7588:39
[INFO] [stdout]      |
[INFO] [stdout] 7588 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7589:23
[INFO] [stdout]      |
[INFO] [stdout] 7589 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7589:39
[INFO] [stdout]      |
[INFO] [stdout] 7589 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7590:23
[INFO] [stdout]      |
[INFO] [stdout] 7590 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7590:39
[INFO] [stdout]      |
[INFO] [stdout] 7590 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7591:23
[INFO] [stdout]      |
[INFO] [stdout] 7591 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7591:39
[INFO] [stdout]      |
[INFO] [stdout] 7591 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7607:19
[INFO] [stdout]      |
[INFO] [stdout] 7607 |         let dot = Self::horizontal_sum_avx2(dot_sum);
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7608:22
[INFO] [stdout]      |
[INFO] [stdout] 7608 |         let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7609:22
[INFO] [stdout]      |
[INFO] [stdout] 7609 |         let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7632:22
[INFO] [stdout]      |
[INFO] [stdout] 7632 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7621:5
[INFO] [stdout]      |
[INFO] [stdout] 7621 |     unsafe fn l2_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7632:38
[INFO] [stdout]      |
[INFO] [stdout] 7632 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7633:22
[INFO] [stdout]      |
[INFO] [stdout] 7633 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7633:38
[INFO] [stdout]      |
[INFO] [stdout] 7633 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7638:9
[INFO] [stdout]      |
[INFO] [stdout] 7638 |         Self::horizontal_sum_avx2(sum).sqrt()
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7654:22
[INFO] [stdout]      |
[INFO] [stdout] 7654 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7644:5
[INFO] [stdout]      |
[INFO] [stdout] 7644 |     unsafe fn l2_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7654:38
[INFO] [stdout]      |
[INFO] [stdout] 7654 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7655:22
[INFO] [stdout]      |
[INFO] [stdout] 7655 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7655:38
[INFO] [stdout]      |
[INFO] [stdout] 7655 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7660:9
[INFO] [stdout]      |
[INFO] [stdout] 7660 |         Self::horizontal_sum_avx2(sum).sqrt()
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7676:22
[INFO] [stdout]      |
[INFO] [stdout] 7676 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7666:5
[INFO] [stdout]      |
[INFO] [stdout] 7666 |     unsafe fn dot_product_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7676:38
[INFO] [stdout]      |
[INFO] [stdout] 7676 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7677:22
[INFO] [stdout]      |
[INFO] [stdout] 7677 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7677:38
[INFO] [stdout]      |
[INFO] [stdout] 7677 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7681:9
[INFO] [stdout]      |
[INFO] [stdout] 7681 |         Self::horizontal_sum_avx2(sum)
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reachable`
[INFO] [stdout]     --> src/hnsw.rs:8490:14
[INFO] [stdout]      |
[INFO] [stdout] 8490 |         let (reachable, total, orphans) = self.diagnose_connectivity();
[INFO] [stdout]      |              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reachable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total`
[INFO] [stdout]     --> src/hnsw.rs:8490:25
[INFO] [stdout]      |
[INFO] [stdout] 8490 |         let (reachable, total, orphans) = self.diagnose_connectivity();
[INFO] [stdout]      |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_total`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:402:25
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let v_vec = _mm_loadu_ps(tile_ptr.add(d * T));
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/aosoa_tiles.rs:384:5
[INFO] [stdout]     |
[INFO] [stdout] 384 |     pub unsafe fn tile_l2_squared_avx2(&self, query: &[f32], tile_idx: usize) -> [f32; T] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: `#[warn(unsafe_op_in_unsafe_fn)]` (part of `#[warn(rust_2024_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:402:38
[INFO] [stdout]     |
[INFO] [stdout] 402 |             let v_vec = _mm_loadu_ps(tile_ptr.add(d * T));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to function `std::arch::x86_64::_mm_fmadd_ps` with `#[target_feature]` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:404:19
[INFO] [stdout]     |
[INFO] [stdout] 404 |             acc = _mm_fmadd_ps(diff, diff, acc);
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to function with `#[target_feature]`
[INFO] [stdout]     |
[INFO] [stdout]     = help: in order for the call to be safe, the context requires the following additional target feature: fma
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/aosoa_tiles.rs:408:9
[INFO] [stdout]     |
[INFO] [stdout] 408 |         _mm_storeu_ps(dists.as_mut_ptr(), acc);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:431:22
[INFO] [stdout]     |
[INFO] [stdout] 431 |             let va = _mm256_loadu_ps(a.as_ptr().add(idx));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/optimized_search.rs:420:5
[INFO] [stdout]     |
[INFO] [stdout] 420 |     unsafe fn euclidean_distance_avx2(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:431:38
[INFO] [stdout]     |
[INFO] [stdout] 431 |             let va = _mm256_loadu_ps(a.as_ptr().add(idx));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:432:22
[INFO] [stdout]     |
[INFO] [stdout] 432 |             let vb = _mm256_loadu_ps(b.as_ptr().add(idx));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:432:38
[INFO] [stdout]     |
[INFO] [stdout] 432 |             let vb = _mm256_loadu_ps(b.as_ptr().add(idx));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:389:22
[INFO] [stdout]     |
[INFO] [stdout] 389 |             let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/unified_quant.rs:379:5
[INFO] [stdout]     |
[INFO] [stdout] 379 |     unsafe fn dot_i8_avx2(a: &[i8], b: &[i8]) -> i32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:389:41
[INFO] [stdout]     |
[INFO] [stdout] 389 |             let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:390:22
[INFO] [stdout]     |
[INFO] [stdout] 390 |             let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:390:41
[INFO] [stdout]     |
[INFO] [stdout] 390 |             let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:188:18
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let va = _mm_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     unsafe fn blend_avx2(a: [f32; 4], b: [f32; 4], mask: SimdMask) -> [f32; 4] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:189:18
[INFO] [stdout]     |
[INFO] [stdout] 189 |         let vb = _mm_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_si128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:190:18
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let vm = _mm_loadu_si128(mask_expanded.as_ptr() as *const __m128i);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |         _mm_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:266:18
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let va = _mm_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     unsafe fn min_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:267:18
[INFO] [stdout]     |
[INFO] [stdout] 267 |         let vb = _mm_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:270:9
[INFO] [stdout]     |
[INFO] [stdout] 270 |         _mm_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:313:18
[INFO] [stdout]     |
[INFO] [stdout] 313 |         let va = _mm_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 |     unsafe fn max_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:314:18
[INFO] [stdout]     |
[INFO] [stdout] 314 |         let vb = _mm_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         _mm_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:474:18
[INFO] [stdout]     |
[INFO] [stdout] 474 |         let va = _mm256_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:459:5
[INFO] [stdout]     |
[INFO] [stdout] 459 |     unsafe fn blend_avx2(a: [f32; 8], b: [f32; 8], mask: u8) -> [f32; 8] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:475:18
[INFO] [stdout]     |
[INFO] [stdout] 475 |         let vb = _mm256_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:476:18
[INFO] [stdout]     |
[INFO] [stdout] 476 |         let vm = _mm256_loadu_si256(mask_expanded.as_ptr() as *const __m256i);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:481:9
[INFO] [stdout]     |
[INFO] [stdout] 481 |         _mm256_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:507:18
[INFO] [stdout]     |
[INFO] [stdout] 507 |         let va = _mm256_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:505:5
[INFO] [stdout]     |
[INFO] [stdout] 505 |     unsafe fn min_avx2(a: [f32; 8], b: [f32; 8]) -> [f32; 8] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:508:18
[INFO] [stdout]     |
[INFO] [stdout] 508 |         let vb = _mm256_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:511:9
[INFO] [stdout]     |
[INFO] [stdout] 511 |         _mm256_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:539:18
[INFO] [stdout]     |
[INFO] [stdout] 539 |         let va = _mm256_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:537:5
[INFO] [stdout]     |
[INFO] [stdout] 537 |     unsafe fn cmp_lt_avx2(a: [f32; 8], b: [f32; 8]) -> u8 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:540:18
[INFO] [stdout]     |
[INFO] [stdout] 540 |         let vb = _mm256_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:132:21
[INFO] [stdout]     |
[INFO] [stdout] 132 |                     query_ptr.add(prefetch_d) as *const i8,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_batch_distance.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 104 | /     pub unsafe fn batch_l2_squared_8x(
[INFO] [stdout] 105 | |         query: &[f32],
[INFO] [stdout] 106 | |         candidates: &[&[f32]; 8],
[INFO] [stdout] 107 | |         dimension: usize,
[INFO] [stdout] 108 | |     ) -> [f32; 8] {
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:136:34
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     _mm_prefetch(c.as_ptr().add(prefetch_d) as *const i8, _MM_HINT_T0);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:141:21
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:141:37
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 152 |             process_candidate!(0, acc0);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 152 |             process_candidate!(0, acc0);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 153 |             process_candidate!(1, acc1);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 153 |             process_candidate!(1, acc1);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 154 |             process_candidate!(2, acc2);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 154 |             process_candidate!(2, acc2);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 155 |             process_candidate!(3, acc3);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 155 |             process_candidate!(3, acc3);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 156 |             process_candidate!(4, acc4);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 156 |             process_candidate!(4, acc4);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 157 |             process_candidate!(5, acc5);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 157 |             process_candidate!(5, acc5);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 158 |             process_candidate!(6, acc6);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 158 |             process_candidate!(6, acc6);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 159 |             process_candidate!(7, acc7);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 159 |             process_candidate!(7, acc7);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:166:30
[INFO] [stdout]     |
[INFO] [stdout] 166 |                 let q_val = *query.get_unchecked(d);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:168:34
[INFO] [stdout]     |
[INFO] [stdout] 168 |                     let c_val = *candidate.get_unchecked(d);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:187:13
[INFO] [stdout]     |
[INFO] [stdout] 187 |             hsum_256(acc0),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:188:13
[INFO] [stdout]     |
[INFO] [stdout] 188 |             hsum_256(acc1),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |             hsum_256(acc2),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |             hsum_256(acc3),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:191:13
[INFO] [stdout]     |
[INFO] [stdout] 191 |             hsum_256(acc4),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:192:13
[INFO] [stdout]     |
[INFO] [stdout] 192 |             hsum_256(acc5),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:193:13
[INFO] [stdout]     |
[INFO] [stdout] 193 |             hsum_256(acc6),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:194:13
[INFO] [stdout]     |
[INFO] [stdout] 194 |             hsum_256(acc7),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:241:30
[INFO] [stdout]     |
[INFO] [stdout] 241 |                 _mm_prefetch(query_ptr.add(prefetch_d) as *const i8, _MM_HINT_T0);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_batch_distance.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 | /     pub unsafe fn batch_dot_product_8x(
[INFO] [stdout] 218 | |         query: &[f32],
[INFO] [stdout] 219 | |         candidates: &[&[f32]; 8],
[INFO] [stdout] 220 | |         dimension: usize,
[INFO] [stdout] 221 | |     ) -> [f32; 8] {
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:244:21
[INFO] [stdout]     |
[INFO] [stdout] 244 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:244:37
[INFO] [stdout]     |
[INFO] [stdout] 244 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 253 |             process_dot!(0, acc0);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 253 |             process_dot!(0, acc0);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 254 |             process_dot!(1, acc1);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 254 |             process_dot!(1, acc1);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 255 |             process_dot!(2, acc2);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 255 |             process_dot!(2, acc2);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 256 |             process_dot!(3, acc3);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 256 |             process_dot!(3, acc3);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 257 |             process_dot!(4, acc4);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 257 |             process_dot!(4, acc4);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 258 |             process_dot!(5, acc5);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 258 |             process_dot!(5, acc5);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 259 |             process_dot!(6, acc6);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 259 |             process_dot!(6, acc6);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 260 |             process_dot!(7, acc7);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 260 |             process_dot!(7, acc7);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:266:26
[INFO] [stdout]     |
[INFO] [stdout] 266 |             let q_val = *query.get_unchecked(d);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:268:30
[INFO] [stdout]     |
[INFO] [stdout] 268 |                 let c_val = *candidate.get_unchecked(d);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:284:13
[INFO] [stdout]     |
[INFO] [stdout] 284 |             hsum_256(acc0),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |             hsum_256(acc1),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:286:13
[INFO] [stdout]     |
[INFO] [stdout] 286 |             hsum_256(acc2),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             hsum_256(acc3),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             hsum_256(acc4),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:289:13
[INFO] [stdout]     |
[INFO] [stdout] 289 |             hsum_256(acc5),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:290:13
[INFO] [stdout]     |
[INFO] [stdout] 290 |             hsum_256(acc6),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |             hsum_256(acc7),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:253:19
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let va0 = _mm256_loadu_ps(a_ptr.add(base));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:236:1
[INFO] [stdout]     |
[INFO] [stdout] 236 | pub unsafe fn l2_squared_avx2(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:253:35
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let va0 = _mm256_loadu_ps(a_ptr.add(base));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:254:19
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let vb0 = _mm256_loadu_ps(b_ptr.add(base));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:254:35
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let vb0 = _mm256_loadu_ps(b_ptr.add(base));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:258:19
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let va1 = _mm256_loadu_ps(a_ptr.add(base + 8));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:258:35
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let va1 = _mm256_loadu_ps(a_ptr.add(base + 8));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:259:19
[INFO] [stdout]     |
[INFO] [stdout] 259 |         let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:259:35
[INFO] [stdout]     |
[INFO] [stdout] 259 |         let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:263:19
[INFO] [stdout]     |
[INFO] [stdout] 263 |         let va2 = _mm256_loadu_ps(a_ptr.add(base + 16));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:263:35
[INFO] [stdout]     |
[INFO] [stdout] 263 |         let va2 = _mm256_loadu_ps(a_ptr.add(base + 16));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:264:19
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:264:35
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:268:19
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let va3 = _mm256_loadu_ps(a_ptr.add(base + 24));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:268:35
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let va3 = _mm256_loadu_ps(a_ptr.add(base + 24));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:269:19
[INFO] [stdout]     |
[INFO] [stdout] 269 |         let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:269:35
[INFO] [stdout]     |
[INFO] [stdout] 269 |         let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:276:18
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:276:34
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:277:18
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:277:34
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:297:43
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:319:18
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:307:1
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub unsafe fn dot_product_avx2(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:319:34
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:320:18
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:320:34
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:335:20
[INFO] [stdout]     |
[INFO] [stdout] 335 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:335:42
[INFO] [stdout]     |
[INFO] [stdout] 335 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:360:18
[INFO] [stdout]     |
[INFO] [stdout] 360 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:348:1
[INFO] [stdout]     |
[INFO] [stdout] 348 | pub unsafe fn l2_squared_sse41(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:360:31
[INFO] [stdout]     |
[INFO] [stdout] 360 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:361:18
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:361:31
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:375:21
[INFO] [stdout]     |
[INFO] [stdout] 375 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:375:43
[INFO] [stdout]     |
[INFO] [stdout] 375 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:397:18
[INFO] [stdout]     |
[INFO] [stdout] 397 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:385:1
[INFO] [stdout]     |
[INFO] [stdout] 385 | pub unsafe fn dot_product_sse41(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:397:31
[INFO] [stdout]     |
[INFO] [stdout] 397 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:398:18
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:398:31
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:411:20
[INFO] [stdout]     |
[INFO] [stdout] 411 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:411:42
[INFO] [stdout]     |
[INFO] [stdout] 411 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:436:18
[INFO] [stdout]     |
[INFO] [stdout] 436 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:424:1
[INFO] [stdout]     |
[INFO] [stdout] 424 | pub unsafe fn l2_squared_avx512(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:436:34
[INFO] [stdout]     |
[INFO] [stdout] 436 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:437:18
[INFO] [stdout]     |
[INFO] [stdout] 437 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:437:34
[INFO] [stdout]     |
[INFO] [stdout] 437 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:447:21
[INFO] [stdout]     |
[INFO] [stdout] 447 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:447:43
[INFO] [stdout]     |
[INFO] [stdout] 447 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:469:18
[INFO] [stdout]     |
[INFO] [stdout] 469 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:457:1
[INFO] [stdout]     |
[INFO] [stdout] 457 | pub unsafe fn dot_product_avx512(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:469:34
[INFO] [stdout]     |
[INFO] [stdout] 469 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:470:18
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:470:34
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:479:20
[INFO] [stdout]     |
[INFO] [stdout] 479 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:479:42
[INFO] [stdout]     |
[INFO] [stdout] 479 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/simd_distance.rs:771:26
[INFO] [stdout]     |
[INFO] [stdout] 771 |         let sum_scalar = unsafe {
[INFO] [stdout]     |                          ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/simd_distance.rs:791:22
[INFO] [stdout]     |
[INFO] [stdout] 791 |     let mut result = unsafe {
[INFO] [stdout]     |                      ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `FastCandidate` is more private than the item `ScratchBuffers::fast_candidates`
[INFO] [stdout]    --> src/scratch_buffers.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub fast_candidates: BinaryHeap<FastCandidate>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_candidates` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `FastCandidate` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/hnsw.rs:927:1
[INFO] [stdout]     |
[INFO] [stdout] 927 | pub(crate) struct FastCandidate {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `FastCandidate` is more private than the item `ScratchBuffers::fast_results_heap`
[INFO] [stdout]    --> src/scratch_buffers.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     pub fast_results_heap: BinaryHeap<Reverse<FastCandidate>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_results_heap` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `FastCandidate` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/hnsw.rs:927:1
[INFO] [stdout]     |
[INFO] [stdout] 927 | pub(crate) struct FastCandidate {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `node_dense`
[INFO] [stdout]     --> src/hnsw.rs:3209:25
[INFO] [stdout]      |
[INFO] [stdout] 3209 |                     let node_dense = node.dense_index;
[INFO] [stdout]      |                         ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_node_dense`
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `needs_refinement` is never read
[INFO] [stdout]     --> src/hnsw.rs:2198:16
[INFO] [stdout]      |
[INFO] [stdout] 2144 | pub struct HnswIndex {
[INFO] [stdout]      |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 2198 |     pub(crate) needs_refinement: AtomicBool,
[INFO] [stdout]      |                ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_node_by_dense`, `connect_node_fast_profiled`, `search_layer_fast`, and `process_neighbors_with_prefetch` are never used
[INFO] [stdout]     --> src/hnsw.rs:2328:19
[INFO] [stdout]      |
[INFO] [stdout] 2230 | impl HnswIndex {
[INFO] [stdout]      | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 2328 |     pub(crate) fn get_node_by_dense(&self, dense_index: u32) -> Option<Arc<HnswNode>> {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 3764 |     fn connect_node_fast_profiled(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 5149 |     fn search_layer_fast(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 6646 |     fn process_neighbors_with_prefetch(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused arithmetic operation that must be used
[INFO] [stdout]    --> src/simd_distance.rs:784:17
[INFO] [stdout]     |
[INFO] [stdout] 784 |                 sum_scalar + diff * diff;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^ the arithmetic operation produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 784 |                 let _ = sum_scalar + diff * diff;
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `n_neighbors`
[INFO] [stdout]     --> src/hnsw.rs:5074:29
[INFO] [stdout]      |
[INFO] [stdout] 5074 |                         let n_neighbors = neighbors.len();
[INFO] [stdout]      |                             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_n_neighbors`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]     --> src/hnsw.rs:5076:30
[INFO] [stdout]      |
[INFO] [stdout] 5076 |                         for (i, &neighbor_dense) in neighbors.iter().enumerate() {
[INFO] [stdout]      |                              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:6898:9
[INFO] [stdout]      |
[INFO] [stdout] 6898 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(unused_unsafe)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:6918:9
[INFO] [stdout]      |
[INFO] [stdout] 6918 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:7058:9
[INFO] [stdout]      |
[INFO] [stdout] 7058 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]     --> src/hnsw.rs:7078:9
[INFO] [stdout]      |
[INFO] [stdout] 7078 |         unsafe {
[INFO] [stdout]      |         ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7489:22
[INFO] [stdout]      |
[INFO] [stdout] 7489 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7475:5
[INFO] [stdout]      |
[INFO] [stdout] 7475 |     unsafe fn cosine_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7489:38
[INFO] [stdout]      |
[INFO] [stdout] 7489 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7490:22
[INFO] [stdout]      |
[INFO] [stdout] 7490 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7490:38
[INFO] [stdout]      |
[INFO] [stdout] 7490 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7499:19
[INFO] [stdout]      |
[INFO] [stdout] 7499 |         let dot = Self::horizontal_sum_avx2(dot_sum);
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7500:22
[INFO] [stdout]      |
[INFO] [stdout] 7500 |         let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7501:22
[INFO] [stdout]      |
[INFO] [stdout] 7501 |         let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7533:23
[INFO] [stdout]      |
[INFO] [stdout] 7533 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7514:5
[INFO] [stdout]      |
[INFO] [stdout] 7514 |     unsafe fn cosine_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7533:39
[INFO] [stdout]      |
[INFO] [stdout] 7533 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7534:23
[INFO] [stdout]      |
[INFO] [stdout] 7534 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7534:39
[INFO] [stdout]      |
[INFO] [stdout] 7534 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7535:23
[INFO] [stdout]      |
[INFO] [stdout] 7535 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7535:39
[INFO] [stdout]      |
[INFO] [stdout] 7535 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7536:23
[INFO] [stdout]      |
[INFO] [stdout] 7536 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7536:39
[INFO] [stdout]      |
[INFO] [stdout] 7536 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7554:19
[INFO] [stdout]      |
[INFO] [stdout] 7554 |         let dot = Self::horizontal_sum_avx2(dot_sum);
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7555:22
[INFO] [stdout]      |
[INFO] [stdout] 7555 |         let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7556:22
[INFO] [stdout]      |
[INFO] [stdout] 7556 |         let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7588:23
[INFO] [stdout]      |
[INFO] [stdout] 7588 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7569:5
[INFO] [stdout]      |
[INFO] [stdout] 7569 |     unsafe fn cosine_distance_avx2_unrolled_1536(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7588:39
[INFO] [stdout]      |
[INFO] [stdout] 7588 |             let va0 = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7589:23
[INFO] [stdout]      |
[INFO] [stdout] 7589 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7589:39
[INFO] [stdout]      |
[INFO] [stdout] 7589 |             let vb0 = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7590:23
[INFO] [stdout]      |
[INFO] [stdout] 7590 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7590:39
[INFO] [stdout]      |
[INFO] [stdout] 7590 |             let va1 = _mm256_loadu_ps(a_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7591:23
[INFO] [stdout]      |
[INFO] [stdout] 7591 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7591:39
[INFO] [stdout]      |
[INFO] [stdout] 7591 |             let vb1 = _mm256_loadu_ps(b_ptr.add(i + 8));
[INFO] [stdout]      |                                       ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7607:19
[INFO] [stdout]      |
[INFO] [stdout] 7607 |         let dot = Self::horizontal_sum_avx2(dot_sum);
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7608:22
[INFO] [stdout]      |
[INFO] [stdout] 7608 |         let norm_a = Self::horizontal_sum_avx2(norm_a_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7609:22
[INFO] [stdout]      |
[INFO] [stdout] 7609 |         let norm_b = Self::horizontal_sum_avx2(norm_b_sum).sqrt();
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7632:22
[INFO] [stdout]      |
[INFO] [stdout] 7632 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7621:5
[INFO] [stdout]      |
[INFO] [stdout] 7621 |     unsafe fn l2_distance_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7632:38
[INFO] [stdout]      |
[INFO] [stdout] 7632 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7633:22
[INFO] [stdout]      |
[INFO] [stdout] 7633 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7633:38
[INFO] [stdout]      |
[INFO] [stdout] 7633 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7638:9
[INFO] [stdout]      |
[INFO] [stdout] 7638 |         Self::horizontal_sum_avx2(sum).sqrt()
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7654:22
[INFO] [stdout]      |
[INFO] [stdout] 7654 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7644:5
[INFO] [stdout]      |
[INFO] [stdout] 7644 |     unsafe fn l2_distance_avx2_unrolled_768(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7654:38
[INFO] [stdout]      |
[INFO] [stdout] 7654 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7655:22
[INFO] [stdout]      |
[INFO] [stdout] 7655 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7655:38
[INFO] [stdout]      |
[INFO] [stdout] 7655 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7660:9
[INFO] [stdout]      |
[INFO] [stdout] 7660 |         Self::horizontal_sum_avx2(sum).sqrt()
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7676:22
[INFO] [stdout]      |
[INFO] [stdout] 7676 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]     --> src/hnsw.rs:7666:5
[INFO] [stdout]      |
[INFO] [stdout] 7666 |     unsafe fn dot_product_avx2_unrolled_128(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]      |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7676:38
[INFO] [stdout]      |
[INFO] [stdout] 7676 |             let va = _mm256_loadu_ps(a_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7677:22
[INFO] [stdout]      |
[INFO] [stdout] 7677 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7677:38
[INFO] [stdout]      |
[INFO] [stdout] 7677 |             let vb = _mm256_loadu_ps(b_ptr.add(i));
[INFO] [stdout]      |                                      ^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `hnsw::HnswIndex::horizontal_sum_avx2` is unsafe and requires unsafe block
[INFO] [stdout]     --> src/hnsw.rs:7681:9
[INFO] [stdout]      |
[INFO] [stdout] 7681 |         Self::horizontal_sum_avx2(sum)
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]      |
[INFO] [stdout]      = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `reachable`
[INFO] [stdout]     --> src/hnsw.rs:8490:14
[INFO] [stdout]      |
[INFO] [stdout] 8490 |         let (reachable, total, orphans) = self.diagnose_connectivity();
[INFO] [stdout]      |              ^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_reachable`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `total`
[INFO] [stdout]     --> src/hnsw.rs:8490:25
[INFO] [stdout]      |
[INFO] [stdout] 8490 |         let (reachable, total, orphans) = self.diagnose_connectivity();
[INFO] [stdout]      |                         ^^^^^ help: if this is intentional, prefix it with an underscore: `_total`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `base_vector`
[INFO] [stdout]     --> src/lockfree_hnsw.rs:1185:13
[INFO] [stdout]      |
[INFO] [stdout] 1185 |         let base_vector = DynamicQuantizedVector::from_f32(&[0.5; TEST_DIM]);
[INFO] [stdout]      |             ^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_base_vector`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:431:22
[INFO] [stdout]     |
[INFO] [stdout] 431 |             let va = _mm256_loadu_ps(a.as_ptr().add(idx));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/optimized_search.rs:420:5
[INFO] [stdout]     |
[INFO] [stdout] 420 |     unsafe fn euclidean_distance_avx2(&self, a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:431:38
[INFO] [stdout]     |
[INFO] [stdout] 431 |             let va = _mm256_loadu_ps(a.as_ptr().add(idx));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:432:22
[INFO] [stdout]     |
[INFO] [stdout] 432 |             let vb = _mm256_loadu_ps(b.as_ptr().add(idx));
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/optimized_search.rs:432:38
[INFO] [stdout]     |
[INFO] [stdout] 432 |             let vb = _mm256_loadu_ps(b.as_ptr().add(idx));
[INFO] [stdout]     |                                      ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/unified_search.rs:650:13
[INFO] [stdout]     |
[INFO] [stdout] 650 |         let mut id_mapper = IdMapper::new();
[INFO] [stdout]     |             ----^^^^^^^^^
[INFO] [stdout]     |             |
[INFO] [stdout]     |             help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:389:22
[INFO] [stdout]     |
[INFO] [stdout] 389 |             let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/unified_quant.rs:379:5
[INFO] [stdout]     |
[INFO] [stdout] 379 |     unsafe fn dot_i8_avx2(a: &[i8], b: &[i8]) -> i32 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:389:41
[INFO] [stdout]     |
[INFO] [stdout] 389 |             let va = _mm256_loadu_si256(a.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:390:22
[INFO] [stdout]     |
[INFO] [stdout] 390 |             let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/unified_quant.rs:390:41
[INFO] [stdout]     |
[INFO] [stdout] 390 |             let vb = _mm256_loadu_si256(b.as_ptr().add(idx) as *const __m256i);
[INFO] [stdout]     |                                         ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:188:18
[INFO] [stdout]     |
[INFO] [stdout] 188 |         let va = _mm_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:177:5
[INFO] [stdout]     |
[INFO] [stdout] 177 |     unsafe fn blend_avx2(a: [f32; 4], b: [f32; 4], mask: SimdMask) -> [f32; 4] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:189:18
[INFO] [stdout]     |
[INFO] [stdout] 189 |         let vb = _mm_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_si128` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:190:18
[INFO] [stdout]     |
[INFO] [stdout] 190 |         let vm = _mm_loadu_si128(mask_expanded.as_ptr() as *const __m128i);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:195:9
[INFO] [stdout]     |
[INFO] [stdout] 195 |         _mm_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:266:18
[INFO] [stdout]     |
[INFO] [stdout] 266 |         let va = _mm_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:264:5
[INFO] [stdout]     |
[INFO] [stdout] 264 |     unsafe fn min_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:267:18
[INFO] [stdout]     |
[INFO] [stdout] 267 |         let vb = _mm_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:270:9
[INFO] [stdout]     |
[INFO] [stdout] 270 |         _mm_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:313:18
[INFO] [stdout]     |
[INFO] [stdout] 313 |         let va = _mm_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:311:5
[INFO] [stdout]     |
[INFO] [stdout] 311 |     unsafe fn max_avx2(a: [f32; 4], b: [f32; 4]) -> [f32; 4] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:314:18
[INFO] [stdout]     |
[INFO] [stdout] 314 |         let vb = _mm_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:317:9
[INFO] [stdout]     |
[INFO] [stdout] 317 |         _mm_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:474:18
[INFO] [stdout]     |
[INFO] [stdout] 474 |         let va = _mm256_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:459:5
[INFO] [stdout]     |
[INFO] [stdout] 459 |     unsafe fn blend_avx2(a: [f32; 8], b: [f32; 8], mask: u8) -> [f32; 8] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:475:18
[INFO] [stdout]     |
[INFO] [stdout] 475 |         let vb = _mm256_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_si256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:476:18
[INFO] [stdout]     |
[INFO] [stdout] 476 |         let vm = _mm256_loadu_si256(mask_expanded.as_ptr() as *const __m256i);
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:481:9
[INFO] [stdout]     |
[INFO] [stdout] 481 |         _mm256_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:507:18
[INFO] [stdout]     |
[INFO] [stdout] 507 |         let va = _mm256_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:505:5
[INFO] [stdout]     |
[INFO] [stdout] 505 |     unsafe fn min_avx2(a: [f32; 8], b: [f32; 8]) -> [f32; 8] {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:508:18
[INFO] [stdout]     |
[INFO] [stdout] 508 |         let vb = _mm256_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_storeu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:511:9
[INFO] [stdout]     |
[INFO] [stdout] 511 |         _mm256_storeu_ps(out.as_mut_ptr(), result);
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:539:18
[INFO] [stdout]     |
[INFO] [stdout] 539 |         let va = _mm256_loadu_ps(a.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/predicated_simd.rs:537:5
[INFO] [stdout]     |
[INFO] [stdout] 537 |     unsafe fn cmp_lt_avx2(a: [f32; 8], b: [f32; 8]) -> u8 {
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/predicated_simd.rs:540:18
[INFO] [stdout]     |
[INFO] [stdout] 540 |         let vb = _mm256_loadu_ps(b.as_ptr());
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:132:21
[INFO] [stdout]     |
[INFO] [stdout] 132 |                     query_ptr.add(prefetch_d) as *const i8,
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_batch_distance.rs:104:5
[INFO] [stdout]     |
[INFO] [stdout] 104 | /     pub unsafe fn batch_l2_squared_8x(
[INFO] [stdout] 105 | |         query: &[f32],
[INFO] [stdout] 106 | |         candidates: &[&[f32]; 8],
[INFO] [stdout] 107 | |         dimension: usize,
[INFO] [stdout] 108 | |     ) -> [f32; 8] {
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:136:34
[INFO] [stdout]     |
[INFO] [stdout] 136 |                     _mm_prefetch(c.as_ptr().add(prefetch_d) as *const i8, _MM_HINT_T0);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:141:21
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:141:37
[INFO] [stdout]     |
[INFO] [stdout] 141 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 152 |             process_candidate!(0, acc0);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 152 |             process_candidate!(0, acc0);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 153 |             process_candidate!(1, acc1);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 153 |             process_candidate!(1, acc1);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 154 |             process_candidate!(2, acc2);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 154 |             process_candidate!(2, acc2);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 155 |             process_candidate!(3, acc3);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 155 |             process_candidate!(3, acc3);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 156 |             process_candidate!(4, acc4);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 156 |             process_candidate!(4, acc4);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 157 |             process_candidate!(5, acc5);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 157 |             process_candidate!(5, acc5);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 158 |             process_candidate!(6, acc6);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 158 |             process_candidate!(6, acc6);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:29
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 159 |             process_candidate!(7, acc7);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:146:45
[INFO] [stdout]     |
[INFO] [stdout] 146 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 159 |             process_candidate!(7, acc7);
[INFO] [stdout]     |             --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_candidate` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:166:30
[INFO] [stdout]     |
[INFO] [stdout] 166 |                 let q_val = *query.get_unchecked(d);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:168:34
[INFO] [stdout]     |
[INFO] [stdout] 168 |                     let c_val = *candidate.get_unchecked(d);
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:187:13
[INFO] [stdout]     |
[INFO] [stdout] 187 |             hsum_256(acc0),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:188:13
[INFO] [stdout]     |
[INFO] [stdout] 188 |             hsum_256(acc1),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:189:13
[INFO] [stdout]     |
[INFO] [stdout] 189 |             hsum_256(acc2),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:190:13
[INFO] [stdout]     |
[INFO] [stdout] 190 |             hsum_256(acc3),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:191:13
[INFO] [stdout]     |
[INFO] [stdout] 191 |             hsum_256(acc4),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:192:13
[INFO] [stdout]     |
[INFO] [stdout] 192 |             hsum_256(acc5),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:193:13
[INFO] [stdout]     |
[INFO] [stdout] 193 |             hsum_256(acc6),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:194:13
[INFO] [stdout]     |
[INFO] [stdout] 194 |             hsum_256(acc7),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:241:30
[INFO] [stdout]     |
[INFO] [stdout] 241 |                 _mm_prefetch(query_ptr.add(prefetch_d) as *const i8, _MM_HINT_T0);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_batch_distance.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 | /     pub unsafe fn batch_dot_product_8x(
[INFO] [stdout] 218 | |         query: &[f32],
[INFO] [stdout] 219 | |         candidates: &[&[f32]; 8],
[INFO] [stdout] 220 | |         dimension: usize,
[INFO] [stdout] 221 | |     ) -> [f32; 8] {
[INFO] [stdout]     | |_________________^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:244:21
[INFO] [stdout]     |
[INFO] [stdout] 244 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:244:37
[INFO] [stdout]     |
[INFO] [stdout] 244 |             let q = _mm256_loadu_ps(query_ptr.add(d));
[INFO] [stdout]     |                                     ^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 253 |             process_dot!(0, acc0);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 253 |             process_dot!(0, acc0);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 254 |             process_dot!(1, acc1);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 254 |             process_dot!(1, acc1);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 255 |             process_dot!(2, acc2);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 255 |             process_dot!(2, acc2);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 256 |             process_dot!(3, acc3);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 256 |             process_dot!(3, acc3);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 257 |             process_dot!(4, acc4);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 257 |             process_dot!(4, acc4);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 258 |             process_dot!(5, acc5);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 258 |             process_dot!(5, acc5);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 259 |             process_dot!(6, acc6);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 259 |             process_dot!(6, acc6);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:29
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 260 |             process_dot!(7, acc7);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:248:45
[INFO] [stdout]     |
[INFO] [stdout] 248 |                     let c = _mm256_loadu_ps(candidates[$idx].as_ptr().add(d));
[INFO] [stdout]     |                                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout] ...
[INFO] [stdout] 260 |             process_dot!(7, acc7);
[INFO] [stdout]     |             --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout]     = note: this warning originates in the macro `process_dot` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:266:26
[INFO] [stdout]     |
[INFO] [stdout] 266 |             let q_val = *query.get_unchecked(d);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:268:30
[INFO] [stdout]     |
[INFO] [stdout] 268 |                 let c_val = *candidate.get_unchecked(d);
[INFO] [stdout]     |                              ^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:284:13
[INFO] [stdout]     |
[INFO] [stdout] 284 |             hsum_256(acc0),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:285:13
[INFO] [stdout]     |
[INFO] [stdout] 285 |             hsum_256(acc1),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:286:13
[INFO] [stdout]     |
[INFO] [stdout] 286 |             hsum_256(acc2),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:287:13
[INFO] [stdout]     |
[INFO] [stdout] 287 |             hsum_256(acc3),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:288:13
[INFO] [stdout]     |
[INFO] [stdout] 288 |             hsum_256(acc4),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:289:13
[INFO] [stdout]     |
[INFO] [stdout] 289 |             hsum_256(acc5),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:290:13
[INFO] [stdout]     |
[INFO] [stdout] 290 |             hsum_256(acc6),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `simd_batch_distance::avx2::hsum_256` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_batch_distance.rs:291:13
[INFO] [stdout]     |
[INFO] [stdout] 291 |             hsum_256(acc7),
[INFO] [stdout]     |             ^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:253:19
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let va0 = _mm256_loadu_ps(a_ptr.add(base));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:236:1
[INFO] [stdout]     |
[INFO] [stdout] 236 | pub unsafe fn l2_squared_avx2(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:253:35
[INFO] [stdout]     |
[INFO] [stdout] 253 |         let va0 = _mm256_loadu_ps(a_ptr.add(base));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:254:19
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let vb0 = _mm256_loadu_ps(b_ptr.add(base));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:254:35
[INFO] [stdout]     |
[INFO] [stdout] 254 |         let vb0 = _mm256_loadu_ps(b_ptr.add(base));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:258:19
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let va1 = _mm256_loadu_ps(a_ptr.add(base + 8));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:258:35
[INFO] [stdout]     |
[INFO] [stdout] 258 |         let va1 = _mm256_loadu_ps(a_ptr.add(base + 8));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:259:19
[INFO] [stdout]     |
[INFO] [stdout] 259 |         let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:259:35
[INFO] [stdout]     |
[INFO] [stdout] 259 |         let vb1 = _mm256_loadu_ps(b_ptr.add(base + 8));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:263:19
[INFO] [stdout]     |
[INFO] [stdout] 263 |         let va2 = _mm256_loadu_ps(a_ptr.add(base + 16));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:263:35
[INFO] [stdout]     |
[INFO] [stdout] 263 |         let va2 = _mm256_loadu_ps(a_ptr.add(base + 16));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:264:19
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:264:35
[INFO] [stdout]     |
[INFO] [stdout] 264 |         let vb2 = _mm256_loadu_ps(b_ptr.add(base + 16));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:268:19
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let va3 = _mm256_loadu_ps(a_ptr.add(base + 24));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:268:35
[INFO] [stdout]     |
[INFO] [stdout] 268 |         let va3 = _mm256_loadu_ps(a_ptr.add(base + 24));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:269:19
[INFO] [stdout]     |
[INFO] [stdout] 269 |         let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24));
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:269:35
[INFO] [stdout]     |
[INFO] [stdout] 269 |         let vb3 = _mm256_loadu_ps(b_ptr.add(base + 24));
[INFO] [stdout]     |                                   ^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:276:18
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:276:34
[INFO] [stdout]     |
[INFO] [stdout] 276 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:277:18
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:277:34
[INFO] [stdout]     |
[INFO] [stdout] 277 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:297:21
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:297:43
[INFO] [stdout]     |
[INFO] [stdout] 297 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:319:18
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:307:1
[INFO] [stdout]     |
[INFO] [stdout] 307 | pub unsafe fn dot_product_avx2(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:319:34
[INFO] [stdout]     |
[INFO] [stdout] 319 |         let va = _mm256_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm256_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:320:18
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:320:34
[INFO] [stdout]     |
[INFO] [stdout] 320 |         let vb = _mm256_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:335:20
[INFO] [stdout]     |
[INFO] [stdout] 335 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:335:42
[INFO] [stdout]     |
[INFO] [stdout] 335 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:360:18
[INFO] [stdout]     |
[INFO] [stdout] 360 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:348:1
[INFO] [stdout]     |
[INFO] [stdout] 348 | pub unsafe fn l2_squared_sse41(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:360:31
[INFO] [stdout]     |
[INFO] [stdout] 360 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:361:18
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:361:31
[INFO] [stdout]     |
[INFO] [stdout] 361 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:375:21
[INFO] [stdout]     |
[INFO] [stdout] 375 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:375:43
[INFO] [stdout]     |
[INFO] [stdout] 375 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:397:18
[INFO] [stdout]     |
[INFO] [stdout] 397 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:385:1
[INFO] [stdout]     |
[INFO] [stdout] 385 | pub unsafe fn dot_product_sse41(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:397:31
[INFO] [stdout]     |
[INFO] [stdout] 397 |         let va = _mm_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:398:18
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:398:31
[INFO] [stdout]     |
[INFO] [stdout] 398 |         let vb = _mm_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                               ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:411:20
[INFO] [stdout]     |
[INFO] [stdout] 411 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:411:42
[INFO] [stdout]     |
[INFO] [stdout] 411 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:436:18
[INFO] [stdout]     |
[INFO] [stdout] 436 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:424:1
[INFO] [stdout]     |
[INFO] [stdout] 424 | pub unsafe fn l2_squared_avx512(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:436:34
[INFO] [stdout]     |
[INFO] [stdout] 436 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:437:18
[INFO] [stdout]     |
[INFO] [stdout] 437 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:437:34
[INFO] [stdout]     |
[INFO] [stdout] 437 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:447:21
[INFO] [stdout]     |
[INFO] [stdout] 447 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                     ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:447:43
[INFO] [stdout]     |
[INFO] [stdout] 447 |         let diff = *a.get_unchecked(i) - *b.get_unchecked(i);
[INFO] [stdout]     |                                           ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:469:18
[INFO] [stdout]     |
[INFO] [stdout] 469 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout] note: an unsafe function restricts its caller, but its body is safe by default
[INFO] [stdout]    --> src/simd_distance.rs:457:1
[INFO] [stdout]     |
[INFO] [stdout] 457 | pub unsafe fn dot_product_avx512(a: &[f32], b: &[f32]) -> f32 {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:469:34
[INFO] [stdout]     |
[INFO] [stdout] 469 |         let va = _mm512_loadu_ps(a_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::arch::x86_64::_mm512_loadu_ps` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:470:18
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `std::ptr::const_ptr::<impl *const T>::add` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:470:34
[INFO] [stdout]     |
[INFO] [stdout] 470 |         let vb = _mm512_loadu_ps(b_ptr.add(offset));
[INFO] [stdout]     |                                  ^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:479:20
[INFO] [stdout]     |
[INFO] [stdout] 479 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning[E0133]: call to unsafe function `core::slice::<impl [T]>::get_unchecked` is unsafe and requires unsafe block
[INFO] [stdout]    --> src/simd_distance.rs:479:42
[INFO] [stdout]     |
[INFO] [stdout] 479 |         result += *a.get_unchecked(i) * *b.get_unchecked(i);
[INFO] [stdout]     |                                          ^^^^^^^^^^^^^^^^^^ call to unsafe function
[INFO] [stdout]     |
[INFO] [stdout]     = note: consult the function's documentation for information on how to avoid undefined behavior
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/unsafe-op-in-unsafe-fn.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/simd_distance.rs:771:26
[INFO] [stdout]     |
[INFO] [stdout] 771 |         let sum_scalar = unsafe {
[INFO] [stdout]     |                          ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary `unsafe` block
[INFO] [stdout]    --> src/simd_distance.rs:791:22
[INFO] [stdout]     |
[INFO] [stdout] 791 |     let mut result = unsafe {
[INFO] [stdout]     |                      ^^^^^^ unnecessary `unsafe` block
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `hnsw::FastCandidate` is more private than the item `ScratchBuffers::fast_candidates`
[INFO] [stdout]    --> src/scratch_buffers.rs:217:5
[INFO] [stdout]     |
[INFO] [stdout] 217 |     pub fast_candidates: BinaryHeap<FastCandidate>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_candidates` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `hnsw::FastCandidate` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/hnsw.rs:927:1
[INFO] [stdout]     |
[INFO] [stdout] 927 | pub(crate) struct FastCandidate {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `hnsw::FastCandidate` is more private than the item `ScratchBuffers::fast_results_heap`
[INFO] [stdout]    --> src/scratch_buffers.rs:221:5
[INFO] [stdout]     |
[INFO] [stdout] 221 |     pub fast_results_heap: BinaryHeap<Reverse<FastCandidate>>,
[INFO] [stdout]     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ field `ScratchBuffers::fast_results_heap` is reachable at visibility `pub`
[INFO] [stdout]     |
[INFO] [stdout] note: but type `hnsw::FastCandidate` is only usable at visibility `pub(crate)`
[INFO] [stdout]    --> src/hnsw.rs:927:1
[INFO] [stdout]     |
[INFO] [stdout] 927 | pub(crate) struct FastCandidate {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `needs_refinement` is never read
[INFO] [stdout]     --> src/hnsw.rs:2198:16
[INFO] [stdout]      |
[INFO] [stdout] 2144 | pub struct HnswIndex {
[INFO] [stdout]      |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 2198 |     pub(crate) needs_refinement: AtomicBool,
[INFO] [stdout]      |                ^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_node_by_dense`, `connect_node_fast_profiled`, `search_layer_fast`, and `process_neighbors_with_prefetch` are never used
[INFO] [stdout]     --> src/hnsw.rs:2328:19
[INFO] [stdout]      |
[INFO] [stdout] 2230 | impl HnswIndex {
[INFO] [stdout]      | -------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 2328 |     pub(crate) fn get_node_by_dense(&self, dense_index: u32) -> Option<Arc<HnswNode>> {
[INFO] [stdout]      |                   ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 3764 |     fn connect_node_fast_profiled(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 5149 |     fn search_layer_fast(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 6646 |     fn process_neighbors_with_prefetch(
[INFO] [stdout]      |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused arithmetic operation that must be used
[INFO] [stdout]    --> src/simd_distance.rs:784:17
[INFO] [stdout]     |
[INFO] [stdout] 784 |                 sum_scalar + diff * diff;
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^^^^^^^^^ the arithmetic operation produces a value
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 784 |                 let _ = sum_scalar + diff * diff;
[INFO] [stdout]     |                 +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] For more information about this error, try `rustc --explain E0133`.
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Reverse`
[INFO] [stdout]  --> src/bin/micro_bench.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::cmp::Reverse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::cmp::Reverse`
[INFO] [stdout]  --> src/bin/micro_bench.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 7 | use std::cmp::Reverse;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ordering`
[INFO] [stdout]  --> src/bin/profile_hotpath.rs:8:36
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::atomic::{AtomicU64, Ordering};
[INFO] [stdout]   |                                    ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ordering`
[INFO] [stdout]  --> src/bin/profile_hotpath.rs:8:36
[INFO] [stdout]   |
[INFO] [stdout] 8 | use std::sync::atomic::{AtomicU64, Ordering};
[INFO] [stdout]   |                                    ^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/profile_hotpath.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let mut times_distance: Vec<Duration> = Vec::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `times_distance`
[INFO] [stdout]    --> src/bin/profile_hotpath.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let mut times_distance: Vec<Duration> = Vec::new();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_times_distance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DISTANCE_CALLS` is never used
[INFO] [stdout]   --> src/bin/profile_hotpath.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | static DISTANCE_CALLS: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEAP_PUSHES` is never used
[INFO] [stdout]   --> src/bin/profile_hotpath.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | static HEAP_PUSHES: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `VISITED_CHECKS` is never used
[INFO] [stdout]   --> src/bin/profile_hotpath.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | static VISITED_CHECKS: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/bin/profile_hotpath.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let mut times_distance: Vec<Duration> = Vec::new();
[INFO] [stdout]     |         ----^^^^^^^^^^^^^^
[INFO] [stdout]     |         |
[INFO] [stdout]     |         help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `times_distance`
[INFO] [stdout]    --> src/bin/profile_hotpath.rs:129:9
[INFO] [stdout]     |
[INFO] [stdout] 129 |     let mut times_distance: Vec<Duration> = Vec::new();
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_times_distance`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `DISTANCE_CALLS` is never used
[INFO] [stdout]   --> src/bin/profile_hotpath.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 18 | static DISTANCE_CALLS: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `HEAP_PUSHES` is never used
[INFO] [stdout]   --> src/bin/profile_hotpath.rs:19:8
[INFO] [stdout]    |
[INFO] [stdout] 19 | static HEAP_PUSHES: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: static `VISITED_CHECKS` is never used
[INFO] [stdout]   --> src/bin/profile_hotpath.rs:20:8
[INFO] [stdout]    |
[INFO] [stdout] 20 | static VISITED_CHECKS: AtomicU64 = AtomicU64::new(0);
[INFO] [stdout]    |        ^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sochdb-index` (lib test); 234 warnings emitted
[INFO] [stderr] 
[INFO] [stderr] Caused by:
[INFO] [stderr]   process didn't exit successfully: `/opt/rustwide/rustup-home/toolchains/1.95.0-x86_64-unknown-linux-gnu/bin/rustc --crate-name sochdb_index --edition=2024 src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts,future-incompat --emit=dep-info,link -C embed-bitcode=no -C debuginfo=2 --test --cfg 'feature="default"' --cfg 'feature="local-embeddings"' --check-cfg 'cfg(docsrs,test)' --check-cfg 'cfg(feature, values("async", "default", "fastembed-embeddings", "llm-embeddings", "local-embeddings"))' -C metadata=e4f0ec9d51929581 -C extra-filename=-3392425a29933c4c --out-dir /opt/rustwide/target/debug/deps -L dependency=/opt/rustwide/target/debug/deps --extern array_init=/opt/rustwide/target/debug/deps/libarray_init-7ccbf31e64677592.rlib --extern arrayvec=/opt/rustwide/target/debug/deps/libarrayvec-76bad465d21dbfa6.rlib --extern arrow=/opt/rustwide/target/debug/deps/libarrow-5f3070dc811f753b.rlib --extern bincode=/opt/rustwide/target/debug/deps/libbincode-b8b28866fb40aedd.rlib --extern blake3=/opt/rustwide/target/debug/deps/libblake3-4d31816dd479e56c.rlib --extern crc32fast=/opt/rustwide/target/debug/deps/libcrc32fast-8fc8aec8e16f6960.rlib --extern criterion=/opt/rustwide/target/debug/deps/libcriterion-9935ca6cd95fde1f.rlib --extern crossbeam_channel=/opt/rustwide/target/debug/deps/libcrossbeam_channel-0e9e2ab5f12b8a4d.rlib --extern dashmap=/opt/rustwide/target/debug/deps/libdashmap-a56c08688d9c8e0d.rlib --extern dirs=/opt/rustwide/target/debug/deps/libdirs-2749a3f8cdf11c8f.rlib --extern flate2=/opt/rustwide/target/debug/deps/libflate2-fdf4995e7867b0ef.rlib --extern half=/opt/rustwide/target/debug/deps/libhalf-7c26c7e7139230b2.rlib --extern lazy_static=/opt/rustwide/target/debug/deps/liblazy_static-206e48a21956b6b1.rlib --extern memmap2=/opt/rustwide/target/debug/deps/libmemmap2-9ed325cd0fd21928.rlib --extern moka=/opt/rustwide/target/debug/deps/libmoka-1913d8dca433df3a.rlib --extern ndarray=/opt/rustwide/target/debug/deps/libndarray-335b30b9cf7ceb8a.rlib --extern ordered_float=/opt/rustwide/target/debug/deps/libordered_float-32904ac94ddae00e.rlib --extern parking_lot=/opt/rustwide/target/debug/deps/libparking_lot-a2bdef4673fd5b3e.rlib --extern prometheus=/opt/rustwide/target/debug/deps/libprometheus-057db2734e3a5ded.rlib --extern proptest=/opt/rustwide/target/debug/deps/libproptest-a1616e1e32a6fb42.rlib --extern rand=/opt/rustwide/target/debug/deps/librand-c2271c64ad003407.rlib --extern rand_chacha=/opt/rustwide/target/debug/deps/librand_chacha-af445c6c1e06648a.rlib --extern rayon=/opt/rustwide/target/debug/deps/librayon-56f0f3acee2bdb32.rlib --extern serde=/opt/rustwide/target/debug/deps/libserde-71599d797d1c0226.rlib --extern serde_json=/opt/rustwide/target/debug/deps/libserde_json-dc3a6d0c98a863bc.rlib --extern sha2=/opt/rustwide/target/debug/deps/libsha2-c9453556c03bedc7.rlib --extern smallvec=/opt/rustwide/target/debug/deps/libsmallvec-686ac330c1f7992b.rlib --extern sochdb_core=/opt/rustwide/target/debug/deps/libsochdb_core-0fc0f191fc38c5c6.rlib --extern tempfile=/opt/rustwide/target/debug/deps/libtempfile-3d60dd7d60157889.rlib --extern thiserror=/opt/rustwide/target/debug/deps/libthiserror-1dc4f64af9730ba3.rlib --extern tracing=/opt/rustwide/target/debug/deps/libtracing-065471902fd08f6b.rlib --cap-lints=warn -L native=/opt/rustwide/target/debug/build/blake3-842d40cbbd5afe74/out -L native=/opt/rustwide/target/debug/build/blake3-842d40cbbd5afe74/out -L native=/opt/rustwide/target/debug/build/lz4-sys-3457583bd4b10eb2/out -L native=/opt/rustwide/target/debug/build/zstd-sys-cfc3130d6805066d/out` (signal: 9, SIGKILL: kill)
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note:  "cc" "-m64" "/opt/rustwide/target/debug/deps/rustchP4nxd/symbols.o" "<2 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libtest-*,libgetopts-*,librustc_std_workspace_std-*}.rlib" "/opt/rustwide/target/debug/deps/{libsochdb_index,libdirs-2749a3f8cdf11c8f,libdirs_sys-e91ed4d5b34968f9,liboption_ext-0e70531fbe2c3ced,libarray_init-7ccbf31e64677592,libtracing-065471902fd08f6b,libpin_project_lite-a495a978f0594be4,libtracing_core-9ff6dae8bc2f2031,libarrow-5f3070dc811f753b,libarrow_row-61dc878e72e4cf7e,libarrow_ipc-11d6ce91a50ea35f,libflatbuffers-ce606961471dd1da,libbitflags-dfd565f85bac9b15,libarrow_string-975388725bfb0c7c,libregex-802bf3bf214594ce,libregex_automata-985d4192535c199a,libaho_corasick-bea7dffeb3a114b4,libregex_syntax-e0c98584ad6a9081,libarrow_cast-1107089d2a8e0f65,libatoi-7f211873130040a7,libryu-e5f8b89e5754c206,libbase64-6d64914d1112fcae,liblexical_core-2e4c2fb438a14c05,liblexical_write_float-a9a879bff841b1f6,liblexical_write_integer-a8e9986cc6c14693,liblexical_parse_float-56bf45560c6abe21,liblexical_parse_integer-48a9c8a66630190e,liblexical_util-7c87a49ad79e2c3b,libarrow_arith-5766aabdc304d26f,libarrow_ord-23bc9ccf659d89a5,libarrow_select-4b1b8ac2f64b1987,libarrow_array-14f81510a809704e,libahash-525da810a37919d9,libgetrandom-0a883a08f6f40ada,libhashbrown-39dd78a00f70042f,libchrono-913e4ee19286cf2a,libiana_time_zone-0ce1c79885be8126,libarrow_data-55e95672d25e3b77,libarrow_schema-03fa05f684885561,libarrow_buffer-4457c957a15d7be2,libbytes-2edb8796c3d48962,libnum-66b95d9e389a14fe,libnum_iter-8b2d96dba77c2341,libnum_rational-e73b768a10e915d6,libnum_bigint-b1defc6a925b2d82,libflate2-fdf4995e7867b0ef,libminiz_oxide-1b040a7174b0bf62,libsimd_adler32-be88438c7178814e,libprometheus-057db2734e3a5ded,libfnv-77106f9ed4748ca6,liblazy_static-206e48a21956b6b1,libndarray-335b30b9cf7ceb8a,libmatrixmultiply-bf90f181f4aadfea,libnum_complex-cda54e48ae008639,libnum_integer-0a3f88501d6d7899,librawpointer-53e32c6b3d33cac1,librand-c2271c64ad003407,librand_chacha-af445c6c1e06648a,libppv_lite86-56de8dbd019dffc2,librand_core-cd0891a6dc115f80,libgetrandom-61878d99fc2cb347,librayon-56f0f3acee2bdb32,librayon_core-d31d0206dffc5426,libcrossbeam_deque-1a19e00b5db0609f,libeither-0fdf45b61f79f227,libordered_float-32904ac94ddae00e,libsha2-c9453556c03bedc7,libcpufeatures-5bf216af22f7e564,libdigest-c843230aeda93fec,libblock_buffer-e0b8500f0d6819b8,libcrypto_common-2e567fa200a9dfa1,libgeneric_array-0af59970456427c8,libtypenum-670aabae270d4e38,libhalf-7c26c7e7139230b2,libnum_traits-3a1d49cc51adfad1,libzerocopy-fbc70ea873e0f355,libmemmap2-9ed325cd0fd21928,libmoka-1913d8dca433df3a,libportable_atomic-a041af5187c1fb82,libtagptr-b985ed2eba2ba853,libcrossbeam_epoch-7f5caaff19204603,libuuid-620420860bf0a772,libgetrandom-2f659ecfcdebb323,libcrossbeam_channel-0e9e2ab5f12b8a4d,libcrossbeam_utils-5d49caf4ce5b571b,libsochdb_core-0fc0f191fc38c5c6,libhex-0b3fae1a86581d8a,libblake3-4d31816dd479e56c,libconstant_time_eq-2e37ce20007631e5,libcpufeatures-a1f83896db876f84,libarrayvec-76bad465d21dbfa6,libarrayref-05ceeb31ba37f0dd,libbincode-b8b28866fb40aedd,libzstd-0f8da39e147b979d,libzstd_safe-7f1291ad8575bf67,libzstd_sys-5e3cf8993ab8f869,liblz4-b1c9b0bb0a88207e,liblz4_sys-b1d740997aad1dc2,libcrc32fast-8fc8aec8e16f6960,libtoon_format-13987376e33c3f4b,libthiserror-4c4021085f7eae8c,libserde_json-dc3a6d0c98a863bc,libmemchr-324148c518a47e11,libitoa-f934f33aadd9150c,libzmij-2f58aa8f05c876ef,libindexmap-bbc58e793fb5f002,libequivalent-da934a6694ab360d,libhashbrown-8e62c1b2281da302,libthiserror-1dc4f64af9730ba3,libdashmap-a56c08688d9c8e0d,libonce_cell-b9d73fa098d83f74,libhashbrown-761ccb082646c9fe,libparking_lot-a2bdef4673fd5b3e,libparking_lot_core-029fe4a90d08a5e4,liblibc-6a16fbd1c255c9d9,libcfg_if-52879664ee908f39,libsmallvec-686ac330c1f7992b,libserde-71599d797d1c0226,libserde_core-2cb176a15b19c416,liblock_api-0d7b154822842c6d,libscopeguard-eb77609449485574,libbyteorder-cb17835726abdeba}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/opt/rustwide/target/debug/deps/rustchP4nxd/raw-dylibs" "-B<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/target/debug/build/blake3-842d40cbbd5afe74/out" "-L" "/opt/rustwide/target/debug/build/lz4-sys-3457583bd4b10eb2/out" "-L" "/opt/rustwide/target/debug/build/zstd-sys-cfc3130d6805066d/out" "-L" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/perf_optimized-16bdb2b6c5943dde" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: some arguments are omitted. use `--verbose` to show all linker arguments
[INFO] [stdout]   = note: collect2: fatal error: ld terminated with signal 9 [Killed]
[INFO] [stdout]           compilation terminated.
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sochdb-index` (bin "perf_optimized" test) due to 1 previous error
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note:  "cc" "-m64" "/opt/rustwide/target/debug/deps/rustcmq9mYT/symbols.o" "<2 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libtest-*,libgetopts-*,librustc_std_workspace_std-*}.rlib" "/opt/rustwide/target/debug/deps/{libsochdb_index,libdirs-2749a3f8cdf11c8f,libdirs_sys-e91ed4d5b34968f9,liboption_ext-0e70531fbe2c3ced,libarray_init-7ccbf31e64677592,libtracing-065471902fd08f6b,libpin_project_lite-a495a978f0594be4,libtracing_core-9ff6dae8bc2f2031,libarrow-5f3070dc811f753b,libarrow_row-61dc878e72e4cf7e,libarrow_ipc-11d6ce91a50ea35f,libflatbuffers-ce606961471dd1da,libbitflags-dfd565f85bac9b15,libarrow_string-975388725bfb0c7c,libregex-802bf3bf214594ce,libregex_automata-985d4192535c199a,libaho_corasick-bea7dffeb3a114b4,libregex_syntax-e0c98584ad6a9081,libarrow_cast-1107089d2a8e0f65,libatoi-7f211873130040a7,libryu-e5f8b89e5754c206,libbase64-6d64914d1112fcae,liblexical_core-2e4c2fb438a14c05,liblexical_write_float-a9a879bff841b1f6,liblexical_write_integer-a8e9986cc6c14693,liblexical_parse_float-56bf45560c6abe21,liblexical_parse_integer-48a9c8a66630190e,liblexical_util-7c87a49ad79e2c3b,libarrow_arith-5766aabdc304d26f,libarrow_ord-23bc9ccf659d89a5,libarrow_select-4b1b8ac2f64b1987,libarrow_array-14f81510a809704e,libahash-525da810a37919d9,libgetrandom-0a883a08f6f40ada,libhashbrown-39dd78a00f70042f,libchrono-913e4ee19286cf2a,libiana_time_zone-0ce1c79885be8126,libarrow_data-55e95672d25e3b77,libarrow_schema-03fa05f684885561,libarrow_buffer-4457c957a15d7be2,libbytes-2edb8796c3d48962,libnum-66b95d9e389a14fe,libnum_iter-8b2d96dba77c2341,libnum_rational-e73b768a10e915d6,libnum_bigint-b1defc6a925b2d82,libflate2-fdf4995e7867b0ef,libminiz_oxide-1b040a7174b0bf62,libsimd_adler32-be88438c7178814e,libprometheus-057db2734e3a5ded,libfnv-77106f9ed4748ca6,liblazy_static-206e48a21956b6b1,libndarray-335b30b9cf7ceb8a,libmatrixmultiply-bf90f181f4aadfea,libnum_complex-cda54e48ae008639,libnum_integer-0a3f88501d6d7899,librawpointer-53e32c6b3d33cac1,librand-c2271c64ad003407,librand_chacha-af445c6c1e06648a,libppv_lite86-56de8dbd019dffc2,librand_core-cd0891a6dc115f80,libgetrandom-61878d99fc2cb347,librayon-56f0f3acee2bdb32,librayon_core-d31d0206dffc5426,libcrossbeam_deque-1a19e00b5db0609f,libeither-0fdf45b61f79f227,libordered_float-32904ac94ddae00e,libsha2-c9453556c03bedc7,libcpufeatures-5bf216af22f7e564,libdigest-c843230aeda93fec,libblock_buffer-e0b8500f0d6819b8,libcrypto_common-2e567fa200a9dfa1,libgeneric_array-0af59970456427c8,libtypenum-670aabae270d4e38,libhalf-7c26c7e7139230b2,libnum_traits-3a1d49cc51adfad1,libzerocopy-fbc70ea873e0f355,libmemmap2-9ed325cd0fd21928,libmoka-1913d8dca433df3a,libportable_atomic-a041af5187c1fb82,libtagptr-b985ed2eba2ba853,libcrossbeam_epoch-7f5caaff19204603,libuuid-620420860bf0a772,libgetrandom-2f659ecfcdebb323,libcrossbeam_channel-0e9e2ab5f12b8a4d,libcrossbeam_utils-5d49caf4ce5b571b,libsochdb_core-0fc0f191fc38c5c6,libhex-0b3fae1a86581d8a,libblake3-4d31816dd479e56c,libconstant_time_eq-2e37ce20007631e5,libcpufeatures-a1f83896db876f84,libarrayvec-76bad465d21dbfa6,libarrayref-05ceeb31ba37f0dd,libbincode-b8b28866fb40aedd,libzstd-0f8da39e147b979d,libzstd_safe-7f1291ad8575bf67,libzstd_sys-5e3cf8993ab8f869,liblz4-b1c9b0bb0a88207e,liblz4_sys-b1d740997aad1dc2,libcrc32fast-8fc8aec8e16f6960,libtoon_format-13987376e33c3f4b,libthiserror-4c4021085f7eae8c,libserde_json-dc3a6d0c98a863bc,libmemchr-324148c518a47e11,libitoa-f934f33aadd9150c,libzmij-2f58aa8f05c876ef,libindexmap-bbc58e793fb5f002,libequivalent-da934a6694ab360d,libhashbrown-8e62c1b2281da302,libthiserror-1dc4f64af9730ba3,libdashmap-a56c08688d9c8e0d,libonce_cell-b9d73fa098d83f74,libhashbrown-761ccb082646c9fe,libparking_lot-a2bdef4673fd5b3e,libparking_lot_core-029fe4a90d08a5e4,liblibc-6a16fbd1c255c9d9,libcfg_if-52879664ee908f39,libsmallvec-686ac330c1f7992b,libserde-71599d797d1c0226,libserde_core-2cb176a15b19c416,liblock_api-0d7b154822842c6d,libscopeguard-eb77609449485574,libbyteorder-cb17835726abdeba}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/opt/rustwide/target/debug/deps/rustcmq9mYT/raw-dylibs" "-B<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/target/debug/build/blake3-842d40cbbd5afe74/out" "-L" "/opt/rustwide/target/debug/build/lz4-sys-3457583bd4b10eb2/out" "-L" "/opt/rustwide/target/debug/build/zstd-sys-cfc3130d6805066d/out" "-L" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/profile_hotpath-7a50ad3ae3ce22c8" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: some arguments are omitted. use `--verbose` to show all linker arguments
[INFO] [stdout]   = note: collect2: fatal error: ld terminated with signal 9 [Killed]
[INFO] [stdout]           compilation terminated.
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sochdb-index` (bin "profile_hotpath" test) due to 1 previous error; 6 warnings emitted
[INFO] [stdout] error: linking with `cc` failed: exit status: 1
[INFO] [stdout]   |
[INFO] [stdout]   = note:  "cc" "-m64" "/opt/rustwide/target/debug/deps/rustcQEdD6U/symbols.o" "<3 object files omitted>" "-Wl,--as-needed" "-Wl,-Bstatic" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libtest-*,libgetopts-*,librustc_std_workspace_std-*}.rlib" "/opt/rustwide/target/debug/deps/{libsochdb_index,libdirs-2749a3f8cdf11c8f,libdirs_sys-e91ed4d5b34968f9,liboption_ext-0e70531fbe2c3ced,libarray_init-7ccbf31e64677592,libtracing-065471902fd08f6b,libpin_project_lite-a495a978f0594be4,libtracing_core-9ff6dae8bc2f2031,libarrow-5f3070dc811f753b,libarrow_row-61dc878e72e4cf7e,libarrow_ipc-11d6ce91a50ea35f,libflatbuffers-ce606961471dd1da,libbitflags-dfd565f85bac9b15,libarrow_string-975388725bfb0c7c,libregex-802bf3bf214594ce,libregex_automata-985d4192535c199a,libaho_corasick-bea7dffeb3a114b4,libregex_syntax-e0c98584ad6a9081,libarrow_cast-1107089d2a8e0f65,libatoi-7f211873130040a7,libryu-e5f8b89e5754c206,libbase64-6d64914d1112fcae,liblexical_core-2e4c2fb438a14c05,liblexical_write_float-a9a879bff841b1f6,liblexical_write_integer-a8e9986cc6c14693,liblexical_parse_float-56bf45560c6abe21,liblexical_parse_integer-48a9c8a66630190e,liblexical_util-7c87a49ad79e2c3b,libarrow_arith-5766aabdc304d26f,libarrow_ord-23bc9ccf659d89a5,libarrow_select-4b1b8ac2f64b1987,libarrow_array-14f81510a809704e,libahash-525da810a37919d9,libgetrandom-0a883a08f6f40ada,libhashbrown-39dd78a00f70042f,libchrono-913e4ee19286cf2a,libiana_time_zone-0ce1c79885be8126,libarrow_data-55e95672d25e3b77,libarrow_schema-03fa05f684885561,libarrow_buffer-4457c957a15d7be2,libbytes-2edb8796c3d48962,libnum-66b95d9e389a14fe,libnum_iter-8b2d96dba77c2341,libnum_rational-e73b768a10e915d6,libnum_bigint-b1defc6a925b2d82,libflate2-fdf4995e7867b0ef,libminiz_oxide-1b040a7174b0bf62,libsimd_adler32-be88438c7178814e,libprometheus-057db2734e3a5ded,libfnv-77106f9ed4748ca6,liblazy_static-206e48a21956b6b1,libndarray-335b30b9cf7ceb8a,libmatrixmultiply-bf90f181f4aadfea,libnum_complex-cda54e48ae008639,libnum_integer-0a3f88501d6d7899,librawpointer-53e32c6b3d33cac1,librand-c2271c64ad003407,librand_chacha-af445c6c1e06648a,libppv_lite86-56de8dbd019dffc2,librand_core-cd0891a6dc115f80,libgetrandom-61878d99fc2cb347,librayon-56f0f3acee2bdb32,librayon_core-d31d0206dffc5426,libcrossbeam_deque-1a19e00b5db0609f,libeither-0fdf45b61f79f227,libordered_float-32904ac94ddae00e,libsha2-c9453556c03bedc7,libcpufeatures-5bf216af22f7e564,libdigest-c843230aeda93fec,libblock_buffer-e0b8500f0d6819b8,libcrypto_common-2e567fa200a9dfa1,libgeneric_array-0af59970456427c8,libtypenum-670aabae270d4e38,libhalf-7c26c7e7139230b2,libnum_traits-3a1d49cc51adfad1,libzerocopy-fbc70ea873e0f355,libmemmap2-9ed325cd0fd21928,libmoka-1913d8dca433df3a,libportable_atomic-a041af5187c1fb82,libtagptr-b985ed2eba2ba853,libcrossbeam_epoch-7f5caaff19204603,libuuid-620420860bf0a772,libgetrandom-2f659ecfcdebb323,libcrossbeam_channel-0e9e2ab5f12b8a4d,libcrossbeam_utils-5d49caf4ce5b571b,libsochdb_core-0fc0f191fc38c5c6,libhex-0b3fae1a86581d8a,libblake3-4d31816dd479e56c,libconstant_time_eq-2e37ce20007631e5,libcpufeatures-a1f83896db876f84,libarrayvec-76bad465d21dbfa6,libarrayref-05ceeb31ba37f0dd,libbincode-b8b28866fb40aedd,libzstd-0f8da39e147b979d,libzstd_safe-7f1291ad8575bf67,libzstd_sys-5e3cf8993ab8f869,liblz4-b1c9b0bb0a88207e,liblz4_sys-b1d740997aad1dc2,libcrc32fast-8fc8aec8e16f6960,libtoon_format-13987376e33c3f4b,libthiserror-4c4021085f7eae8c,libserde_json-dc3a6d0c98a863bc,libmemchr-324148c518a47e11,libitoa-f934f33aadd9150c,libzmij-2f58aa8f05c876ef,libindexmap-bbc58e793fb5f002,libequivalent-da934a6694ab360d,libhashbrown-8e62c1b2281da302,libthiserror-1dc4f64af9730ba3,libdashmap-a56c08688d9c8e0d,libonce_cell-b9d73fa098d83f74,libhashbrown-761ccb082646c9fe,libparking_lot-a2bdef4673fd5b3e,libparking_lot_core-029fe4a90d08a5e4,liblibc-6a16fbd1c255c9d9,libcfg_if-52879664ee908f39,libsmallvec-686ac330c1f7992b,libserde-71599d797d1c0226,libserde_core-2cb176a15b19c416,liblock_api-0d7b154822842c6d,libscopeguard-eb77609449485574,libbyteorder-cb17835726abdeba}.rlib" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib/{libstd-*,libpanic_unwind-*,libobject-*,libmemchr-*,libaddr2line-*,libgimli-*,libcfg_if-*,librustc_demangle-*,libstd_detect-*,libhashbrown-*,librustc_std_workspace_alloc-*,libminiz_oxide-*,libadler2-*,libunwind-*,liblibc-*,librustc_std_workspace_core-*,liballoc-*,libcore-*,libcompiler_builtins-*}.rlib" "-Wl,-Bdynamic" "-lgcc_s" "-lutil" "-lrt" "-lpthread" "-lm" "-ldl" "-lc" "-L" "/opt/rustwide/target/debug/deps/rustcQEdD6U/raw-dylibs" "-B<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/bin/gcc-ld" "-fuse-ld=lld" "-Wl,--eh-frame-hdr" "-Wl,-z,noexecstack" "-L" "/opt/rustwide/target/debug/build/blake3-842d40cbbd5afe74/out" "-L" "/opt/rustwide/target/debug/build/lz4-sys-3457583bd4b10eb2/out" "-L" "/opt/rustwide/target/debug/build/zstd-sys-cfc3130d6805066d/out" "-L" "<sysroot>/lib/rustlib/x86_64-unknown-linux-gnu/lib" "-o" "/opt/rustwide/target/debug/deps/integration_tests-ed6b593242cbdac2" "-Wl,--gc-sections" "-pie" "-Wl,-z,relro,-z,now" "-nodefaultlibs"
[INFO] [stdout]   = note: some arguments are omitted. use `--verbose` to show all linker arguments
[INFO] [stdout]   = note: collect2: fatal error: ld terminated with signal 9 [Killed]
[INFO] [stdout]           compilation terminated.
[INFO] [stdout]           
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `sochdb-index` (test "integration_tests") due to 1 previous error
[INFO] running `Command { std: "docker" "inspect" "323637c7c0f43939f67e8dc4117a4332c518f60be51e1e08f1b6717558fad1db", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "323637c7c0f43939f67e8dc4117a4332c518f60be51e1e08f1b6717558fad1db", kill_on_drop: false }`
[INFO] [stdout] 323637c7c0f43939f67e8dc4117a4332c518f60be51e1e08f1b6717558fad1db
