mirror of
https://github.com/golang/go.git
synced 2025-05-18 22:04:38 +00:00
cmd/internal/obj/x86: add ADDSUBPS/PD
These are the last instructions missing to complete SSE3 support. For reference what was missing was found by a tool [1]: $ x86db-gogen list --extension SSE3 --not-known ADDSUBPD xmmreg,xmmrm [rm: 66 0f d0 /r] PRESCOTT,SSE3,SO ADDSUBPS xmmreg,xmmrm [rm: f2 0f d0 /r] PRESCOTT,SSE3,SO [1] https://github.com/dlespiau/x86db Fixes #20293 Change-Id: Ib5a91bf64dcc5282cdb60eae740ae52b4db16ebd Reviewed-on: https://go-review.googlesource.com/42990 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ilya Tocar <ilya.tocar@intel.com>
This commit is contained in:
parent
71c9454f99
commit
1e607f225e
32
src/cmd/asm/internal/asm/testdata/amd64enc.s
vendored
32
src/cmd/asm/internal/asm/testdata/amd64enc.s
vendored
@ -212,22 +212,22 @@ TEXT asmtest(SB),DUPOK|NOSPLIT,$0
|
||||
ADDSS (R11), X11 // f3450f581b
|
||||
ADDSS X2, X11 // f3440f58da
|
||||
ADDSS X11, X11 // f3450f58db
|
||||
//TODO: ADDSUBPD (BX), X2 // 660fd013
|
||||
//TODO: ADDSUBPD (R11), X2 // 66410fd013
|
||||
//TODO: ADDSUBPD X2, X2 // 660fd0d2
|
||||
//TODO: ADDSUBPD X11, X2 // 66410fd0d3
|
||||
//TODO: ADDSUBPD (BX), X11 // 66440fd01b
|
||||
//TODO: ADDSUBPD (R11), X11 // 66450fd01b
|
||||
//TODO: ADDSUBPD X2, X11 // 66440fd0da
|
||||
//TODO: ADDSUBPD X11, X11 // 66450fd0db
|
||||
//TODO: ADDSUBPS (BX), X2 // f20fd013
|
||||
//TODO: ADDSUBPS (R11), X2 // f2410fd013
|
||||
//TODO: ADDSUBPS X2, X2 // f20fd0d2
|
||||
//TODO: ADDSUBPS X11, X2 // f2410fd0d3
|
||||
//TODO: ADDSUBPS (BX), X11 // f2440fd01b
|
||||
//TODO: ADDSUBPS (R11), X11 // f2450fd01b
|
||||
//TODO: ADDSUBPS X2, X11 // f2440fd0da
|
||||
//TODO: ADDSUBPS X11, X11 // f2450fd0db
|
||||
ADDSUBPD (BX), X2 // 660fd013
|
||||
ADDSUBPD (R11), X2 // 66410fd013
|
||||
ADDSUBPD X2, X2 // 660fd0d2
|
||||
ADDSUBPD X11, X2 // 66410fd0d3
|
||||
ADDSUBPD (BX), X11 // 66440fd01b
|
||||
ADDSUBPD (R11), X11 // 66450fd01b
|
||||
ADDSUBPD X2, X11 // 66440fd0da
|
||||
ADDSUBPD X11, X11 // 66450fd0db
|
||||
ADDSUBPS (BX), X2 // f20fd013
|
||||
ADDSUBPS (R11), X2 // f2410fd013
|
||||
ADDSUBPS X2, X2 // f20fd0d2
|
||||
ADDSUBPS X11, X2 // f2410fd0d3
|
||||
ADDSUBPS (BX), X11 // f2440fd01b
|
||||
ADDSUBPS (R11), X11 // f2450fd01b
|
||||
ADDSUBPS X2, X11 // f2440fd0da
|
||||
ADDSUBPS X11, X11 // f2450fd0db
|
||||
//TODO: ADOXL (BX), DX // f30f38f613
|
||||
//TODO: ADOXL (R11), DX // f3410f38f613
|
||||
//TODO: ADOXL DX, DX // f30f38f6d2
|
||||
|
@ -524,6 +524,8 @@ const (
|
||||
AADDPS
|
||||
AADDSD
|
||||
AADDSS
|
||||
AADDSUBPD
|
||||
AADDSUBPS
|
||||
AANDNL
|
||||
AANDNQ
|
||||
AANDNPD
|
||||
|
@ -467,6 +467,8 @@ var Anames = []string{
|
||||
"ADDPS",
|
||||
"ADDSD",
|
||||
"ADDSS",
|
||||
"ADDSUBPD",
|
||||
"ADDSUBPS",
|
||||
"ANDNL",
|
||||
"ANDNQ",
|
||||
"ANDNPD",
|
||||
|
@ -969,6 +969,8 @@ var optab =
|
||||
{AADDQ, yaddl, Pw, [23]uint8{0x83, 00, 0x05, 0x81, 00, 0x01, 0x03}},
|
||||
{AADDSD, yxm, Pf2, [23]uint8{0x58}},
|
||||
{AADDSS, yxm, Pf3, [23]uint8{0x58}},
|
||||
{AADDSUBPD, yxm, Pq, [23]uint8{0xd0}},
|
||||
{AADDSUBPS, yxm, Pf2, [23]uint8{0xd0}},
|
||||
{AADDW, yaddl, Pe, [23]uint8{0x83, 00, 0x05, 0x81, 00, 0x01, 0x03}},
|
||||
{AADJSP, nil, 0, [23]uint8{}},
|
||||
{AANDB, yxorb, Pb, [23]uint8{0x24, 0x80, 04, 0x20, 0x22}},
|
||||
|
Loading…
x
Reference in New Issue
Block a user