feat(arch): scale and exponent-extract the scalar FP16 in the extension layer
Assisted-by: GLM 5.3 Flash
This commit is contained in:
1 parent
127e52de69
commit
0354a1f4c1
3 files changed
+20
-4
No files matched your search
+10
-2
@@ -108,6 +108,14 @@ var amd64GoldenRows = []amd64GoldenRow{
|
||||
[]ExtOperand{ExtXmm(29), ExtXmm(28), ExtXmm(30)},
|
||||
"6205160051f4", "62 05 16 00 51 f4 vsqrtsh %xmm28,%xmm29,%xmm30"},
|
||||
|
||||
// The scalar scale and exponent extracts, EVEX.NDS.LIG.66.MAP6.W0.
|
||||
{"vscalefsh", "VSCALEFSH",
|
||||
[]ExtOperand{ExtXmm(29), ExtXmm(28), ExtXmm(30)},
|
||||
"620615002df4", "62 06 15 00 2d f4 vscalefsh %xmm28,%xmm29,%xmm30"},
|
||||
{"vgetexpsh", "VGETEXPSH",
|
||||
[]ExtOperand{ExtXmm(29), ExtXmm(28), ExtXmm(30)},
|
||||
"6206150043f4", "62 06 15 00 43 f4 vgetexpsh %xmm28,%xmm29,%xmm30"},
|
||||
|
||||
// The scalar compares take two operands, EVEX.LIG.MAP5.W0.
|
||||
{"vcomish", "VCOMISH",
|
||||
[]ExtOperand{ExtXmm(29), ExtXmm(30)},
|
||||
@@ -416,7 +424,7 @@ func TestAmd64ExtArchBinding(t *testing.T) {
|
||||
t.Errorf("Extensions(%s) carries %d instructions, want none", a, len(got))
|
||||
}
|
||||
}
|
||||
if got := Extensions(AMD64); len(got) != 46 {
|
||||
t.Errorf("the amd64 layer registers %d instructions, want 46", len(got))
|
||||
if got := Extensions(AMD64); len(got) != 48 {
|
||||
t.Errorf("the amd64 layer registers %d instructions, want 48", len(got))
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user