feat(arch): the rest of the SVE2 BFloat16 wall

Assisted-by: GLM 5.3 Flash
This commit is contained in:
petrbalvin committed 2026-10-07 20:35:41 +02:00
1 parent cdc3a75c88
commit 12a5cfff52
4 files changed
+229 -7

No files matched your search

+13
View File
@@ -822,6 +822,19 @@ func TestArm64AssembleExtensionStage4Golden(t *testing.T) {
{"ZBFMUL Z7.H, Z6.H, Z23.H", 0x650708d7},
{"ZBFSUB Z23.H, Z13.H, P1.M, Z13.H", 0x650186ed},
{"ZBFSUB Z7.H, Z6.H, Z23.H", 0x650704d7},
// The rest of the BFloat16 wall.
{"ZBFCVT Z13.S, P1.M, Z22.H", 0x658aa5b6},
{"ZBFCVT Z13.S, P1.Z, Z22.H", 0x649ac5b6},
{"ZBFCVTNT Z13.S, P1.M, Z22.H", 0x648aa5b6},
{"ZBFDOT Z7.H, Z6.H, Z23.S", 0x646780d7},
{"ZBFMLA Z23.H, Z13.H, P1.M, Z22.H", 0x653705b6},
{"ZBFMLALB Z7.H, Z6.H, Z23.S", 0x64e780d7},
{"ZBFMLALT Z7.H, Z6.H, Z23.S", 0x64e784d7},
{"ZBFMLS Z23.H, Z13.H, P1.M, Z22.H", 0x653725b6},
{"ZBFMLSLB Z7.H, Z6.H, Z23.S", 0x64e7a0d7},
{"ZBFMLSLT Z7.H, Z6.H, Z23.S", 0x64e7a4d7},
{"ZBFMMLA Z7.H, Z6.H, Z23.S", 0x6467e4d7},
{"ZBFSCALE Z23.H, Z13.H, P1.M, Z13.H", 0x650986ed},
// The multiple-structure loads and stores.
{"ZLD2B (R6)(R14), P4.Z, [Z13.B, Z14.B]", 0xa426d1cd},
{"ZLD2H (R6<<1)(R14), P4.Z, [Z13.H, Z14.H]", 0xa4a6d1cd},
+13 -2
View File
@@ -327,6 +327,17 @@ func TestExtensionNamesARM64(t *testing.T) {
"ZBFMINNM",
"ZBFMUL",
"ZBFSUB",
"ZBFCVT",
"ZBFCVTNT",
"ZBFDOT",
"ZBFMLA",
"ZBFMLALB",
"ZBFMLALT",
"ZBFMLS",
"ZBFMLSLB",
"ZBFMLSLT",
"ZBFMMLA",
"ZBFSCALE",
"ZLD2B",
"ZLD2D",
"ZLD2H",
@@ -469,7 +480,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 != 470 {
t.Errorf("the family registers %d instructions, want 470", n)
if n := len(arch.Extensions(arch.ARM64)); n != 483 {
t.Errorf("the family registers %d instructions, want 483", n)
}
}