feat(arch): the SVE2.1 narrowing two-to-one family

Assisted-by: GLM 5.3 Flash
This commit is contained in:
petrbalvin committed 2026-10-07 20:35:41 +02:00
1 parent ee2c6d51b3
commit 31ab584eee
4 files changed
+254 -3

No files matched your search

+11 -2
View File
@@ -273,6 +273,15 @@ func TestExtensionNamesARM64(t *testing.T) {
"ZZIP2",
"ZZIPQ1",
"ZZIPQ2",
// The stage-four families: the SVE2.1 narrowing two-to-one set.
"ZADDHNB",
"ZADDHNT",
"ZRADDHNB",
"ZRADDHNT",
"ZRSUBHNB",
"ZRSUBHNT",
"ZSUBHNB",
"ZSUBHNT",
// The stage-three families: the SVE2 crypto group, the predicate
// counters and loop terminators with the 32-bit while compares, and
// the reductions into a SIMD register.
@@ -385,7 +394,7 @@ func TestExtensionNamesARM64(t *testing.T) {
if strings.Join(got, ",") != strings.Join(want, ",") {
t.Errorf("ExtensionNames(ARM64) = %v, want %v", got, want)
}
if n := len(arch.Extensions(arch.ARM64)); n != 381 {
t.Errorf("the family registers %d instructions, want 381", n)
if n := len(arch.Extensions(arch.ARM64)); n != 389 {
t.Errorf("the family registers %d instructions, want 389", n)
}
}