Files
nixpkgs/pkgs/servers/sql/postgresql/ext/vectorchord/0001-disable-avx512vnni.patch
Diogo Correia 1ed61918a9 postgresqlPackages.vectorchord: disable avx512vnni support
Due to a bug in LLVM 21, build fails on x86_64 with:
`rustc-LLVM ERROR: Cannot select: intrinsic %llvm.x86.avx512.vpdpbusd.512`.
This has been fixed in Rust's build of LLVM and LLVM 22 [1]
but this is not reflected in nixpkgs' packaging of rustc.
For this reason, we temporarily disable avx512vnni support until this is fixed in nixpkgs.
This might cause a performance penalty, but should not affect correctness.

See https://github.com/NixOS/nixpkgs/pull/537113#issuecomment-4846239887

[1]: 94e2c19f86
2026-07-06 17:19:23 +01:00

30 lines
1.2 KiB
Diff

diff --git a/crates/simd/src/byte.rs b/crates/simd/src/byte.rs
index 0c7c4be..87737d4 100644
--- a/crates/simd/src/byte.rs
+++ b/crates/simd/src/byte.rs
@@ -389,7 +389,7 @@ mod reduce_sum_of_xy {
}
}
- #[crate::multiversion(@"v4:avx512vnni", @"v4", @"v3", @"v2", @"a2:dotprod", @"a2", "z17", "z16", "z15", "z14", "z13", "p9", "p8", "p7", "r1")]
+ #[crate::multiversion(@"v4", @"v3", @"v2", @"a2:dotprod", @"a2", "z17", "z16", "z15", "z14", "z13", "p9", "p8", "p7", "r1")]
pub fn reduce_sum_of_xy(s: &[u8], t: &[u8]) -> u32 {
assert_eq!(s.len(), t.len());
let n = s.len();
diff --git a/crates/simd/src/halfbyte.rs b/crates/simd/src/halfbyte.rs
index e1aa016..f7dc3dc 100644
--- a/crates/simd/src/halfbyte.rs
+++ b/crates/simd/src/halfbyte.rs
@@ -411,7 +411,7 @@ mod reduce_sum_of_xy {
}
}
- #[crate::multiversion(@"v4:avx512vnni", @"v4", @"v3", @"v2", @"a2:dotprod", @"a2", "z17", "z16", "z15", "z14", "z13", "p9", "p8", "p7", "r1")]
+ #[crate::multiversion(@"v4", @"v3", @"v2", @"a2:dotprod", @"a2", "z17", "z16", "z15", "z14", "z13", "p9", "p8", "p7", "r1")]
pub fn reduce_sum_of_xy(s: &[u8], t: &[u8]) -> u32 {
assert_eq!(s.len(), t.len());
let n = s.len();
--
2.54.0