mirror of
https://github.com/golang/go
synced 2024-11-23 18:20:04 -07:00
cmd/asm: add amd64 PDEP, PEXT, and related integer VEX instructions
Requested off-list. Trivial to add and more importantly trivial to test. ANDNL ANDNQ BEXTRL BEXTRQ BZHIL BZHIQ MULXL MULXQ PDEPL PDEPQ PEXTL PEXTQ SARXL SARXQ SHRXL SHRXQ Change-Id: I3d46a0f653b81dd003ff6d2a394d8ce96a573b63 Reviewed-on: https://go-review.googlesource.com/18857 Reviewed-by: Rob Pike <r@golang.org>
This commit is contained in:
parent
863d9b66f8
commit
0bae38e094
312
src/cmd/asm/internal/asm/testdata/amd64enc.s
vendored
312
src/cmd/asm/internal/asm/testdata/amd64enc.s
vendored
@ -370,22 +370,22 @@ TEXT asmtest(SB),7,$0
|
||||
ANDB (R11), DL // 412213
|
||||
ANDB (BX), R11 // 44221b
|
||||
ANDB (R11), R11 // 45221b
|
||||
//TODO: ANDNL (BX), R9D, DX // c4e230f213
|
||||
//TODO: ANDNL (R11), R9D, DX // c4c230f213
|
||||
//TODO: ANDNL DX, R9D, DX // c4e230f2d2
|
||||
//TODO: ANDNL R11, R9D, DX // c4c230f2d3
|
||||
//TODO: ANDNL (BX), R9D, R11 // c46230f21b
|
||||
//TODO: ANDNL (R11), R9D, R11 // c44230f21b
|
||||
//TODO: ANDNL DX, R9D, R11 // c46230f2da
|
||||
//TODO: ANDNL R11, R9D, R11 // c44230f2db
|
||||
//TODO: ANDNQ (BX), R14, DX // c4e288f213
|
||||
//TODO: ANDNQ (R11), R14, DX // c4c288f213
|
||||
//TODO: ANDNQ DX, R14, DX // c4e288f2d2
|
||||
//TODO: ANDNQ R11, R14, DX // c4c288f2d3
|
||||
//TODO: ANDNQ (BX), R14, R11 // c46288f21b
|
||||
//TODO: ANDNQ (R11), R14, R11 // c44288f21b
|
||||
//TODO: ANDNQ DX, R14, R11 // c46288f2da
|
||||
//TODO: ANDNQ R11, R14, R11 // c44288f2db
|
||||
ANDNL (BX), R9, DX // c4e230f213
|
||||
ANDNL (R11), R9, DX // c4c230f213
|
||||
ANDNL DX, R9, DX // c4e230f2d2
|
||||
ANDNL R11, R9, DX // c4c230f2d3
|
||||
ANDNL (BX), R9, R11 // c46230f21b
|
||||
ANDNL (R11), R9, R11 // c44230f21b
|
||||
ANDNL DX, R9, R11 // c46230f2da
|
||||
ANDNL R11, R9, R11 // c44230f2db
|
||||
ANDNQ (BX), R14, DX // c4e288f213
|
||||
ANDNQ (R11), R14, DX // c4c288f213
|
||||
ANDNQ DX, R14, DX // c4e288f2d2
|
||||
ANDNQ R11, R14, DX // c4c288f2d3
|
||||
ANDNQ (BX), R14, R11 // c46288f21b
|
||||
ANDNQ (R11), R14, R11 // c44288f21b
|
||||
ANDNQ DX, R14, R11 // c46288f2da
|
||||
ANDNQ R11, R14, R11 // c44288f2db
|
||||
ANDNPD (BX), X2 // 660f5513
|
||||
ANDNPD (R11), X2 // 66410f5513
|
||||
ANDNPD X2, X2 // 660f55d2
|
||||
@ -418,22 +418,22 @@ TEXT asmtest(SB),7,$0
|
||||
//TODO: ANDPS (R11), X11 // 450f541b
|
||||
//TODO: ANDPS X2, X11 // 440f54da
|
||||
//TODO: ANDPS X11, X11 // 450f54db
|
||||
//TODO: BEXTRL R9D, (BX), DX // c4e230f713
|
||||
//TODO: BEXTRL R9D, (R11), DX // c4c230f713
|
||||
//TODO: BEXTRL R9D, DX, DX // c4e230f7d2
|
||||
//TODO: BEXTRL R9D, R11, DX // c4c230f7d3
|
||||
//TODO: BEXTRL R9D, (BX), R11 // c46230f71b
|
||||
//TODO: BEXTRL R9D, (R11), R11 // c44230f71b
|
||||
//TODO: BEXTRL R9D, DX, R11 // c46230f7da
|
||||
//TODO: BEXTRL R9D, R11, R11 // c44230f7db
|
||||
//TODO: BEXTRQ R14, (BX), DX // c4e288f713
|
||||
//TODO: BEXTRQ R14, (R11), DX // c4c288f713
|
||||
//TODO: BEXTRQ R14, DX, DX // c4e288f7d2
|
||||
//TODO: BEXTRQ R14, R11, DX // c4c288f7d3
|
||||
//TODO: BEXTRQ R14, (BX), R11 // c46288f71b
|
||||
//TODO: BEXTRQ R14, (R11), R11 // c44288f71b
|
||||
//TODO: BEXTRQ R14, DX, R11 // c46288f7da
|
||||
//TODO: BEXTRQ R14, R11, R11 // c44288f7db
|
||||
BEXTRL R9, (BX), DX // c4e230f713
|
||||
BEXTRL R9, (R11), DX // c4c230f713
|
||||
BEXTRL R9, DX, DX // c4e230f7d2
|
||||
BEXTRL R9, R11, DX // c4c230f7d3
|
||||
BEXTRL R9, (BX), R11 // c46230f71b
|
||||
BEXTRL R9, (R11), R11 // c44230f71b
|
||||
BEXTRL R9, DX, R11 // c46230f7da
|
||||
BEXTRL R9, R11, R11 // c44230f7db
|
||||
BEXTRQ R14, (BX), DX // c4e288f713
|
||||
BEXTRQ R14, (R11), DX // c4c288f713
|
||||
BEXTRQ R14, DX, DX // c4e288f7d2
|
||||
BEXTRQ R14, R11, DX // c4c288f7d3
|
||||
BEXTRQ R14, (BX), R11 // c46288f71b
|
||||
BEXTRQ R14, (R11), R11 // c44288f71b
|
||||
BEXTRQ R14, DX, R11 // c46288f7da
|
||||
BEXTRQ R14, R11, R11 // c44288f7db
|
||||
//TODO: BLENDPD $7, (BX), X2 // 660f3a0d1307
|
||||
//TODO: BLENDPD $7, (R11), X2 // 66410f3a0d1307
|
||||
//TODO: BLENDPD $7, X2, X2 // 660f3a0dd207
|
||||
@ -466,26 +466,26 @@ TEXT asmtest(SB),7,$0
|
||||
//TODO: BLENDVPS XMM0, (R11), X11 // 66450f38141b
|
||||
//TODO: BLENDVPS XMM0, X2, X11 // 66440f3814da
|
||||
//TODO: BLENDVPS XMM0, X11, X11 // 66450f3814db
|
||||
//TODO: BLSIL (BX), R9D // c4e230f31b
|
||||
//TODO: BLSIL (R11), R9D // c4c230f31b
|
||||
//TODO: BLSIL DX, R9D // c4e230f3da
|
||||
//TODO: BLSIL R11, R9D // c4c230f3db
|
||||
//TODO: BLSIL (BX), R9 // c4e230f31b
|
||||
//TODO: BLSIL (R11), R9 // c4c230f31b
|
||||
//TODO: BLSIL DX, R9 // c4e230f3da
|
||||
//TODO: BLSIL R11, R9 // c4c230f3db
|
||||
//TODO: BLSIQ (BX), R14 // c4e288f31b
|
||||
//TODO: BLSIQ (R11), R14 // c4c288f31b
|
||||
//TODO: BLSIQ DX, R14 // c4e288f3da
|
||||
//TODO: BLSIQ R11, R14 // c4c288f3db
|
||||
//TODO: BLSMSKL (BX), R9D // c4e230f313
|
||||
//TODO: BLSMSKL (R11), R9D // c4c230f313
|
||||
//TODO: BLSMSKL DX, R9D // c4e230f3d2
|
||||
//TODO: BLSMSKL R11, R9D // c4c230f3d3
|
||||
//TODO: BLSMSKL (BX), R9 // c4e230f313
|
||||
//TODO: BLSMSKL (R11), R9 // c4c230f313
|
||||
//TODO: BLSMSKL DX, R9 // c4e230f3d2
|
||||
//TODO: BLSMSKL R11, R9 // c4c230f3d3
|
||||
//TODO: BLSMSKQ (BX), R14 // c4e288f313
|
||||
//TODO: BLSMSKQ (R11), R14 // c4c288f313
|
||||
//TODO: BLSMSKQ DX, R14 // c4e288f3d2
|
||||
//TODO: BLSMSKQ R11, R14 // c4c288f3d3
|
||||
//TODO: BLSRL (BX), R9D // c4e230f30b
|
||||
//TODO: BLSRL (R11), R9D // c4c230f30b
|
||||
//TODO: BLSRL DX, R9D // c4e230f3ca
|
||||
//TODO: BLSRL R11, R9D // c4c230f3cb
|
||||
//TODO: BLSRL (BX), R9 // c4e230f30b
|
||||
//TODO: BLSRL (R11), R9 // c4c230f30b
|
||||
//TODO: BLSRL DX, R9 // c4e230f3ca
|
||||
//TODO: BLSRL R11, R9 // c4c230f3cb
|
||||
//TODO: BLSRQ (BX), R14 // c4e288f30b
|
||||
//TODO: BLSRQ (R11), R14 // c4c288f30b
|
||||
//TODO: BLSRQ DX, R14 // c4e288f3ca
|
||||
@ -736,22 +736,22 @@ TEXT asmtest(SB),7,$0
|
||||
BTSQ R11, DX // 4c0fabda
|
||||
BTSQ DX, R11 // 490fabd3
|
||||
BTSQ R11, R11 // 4d0fabdb
|
||||
//TODO: BZHIL R9D, (BX), DX // c4e230f513
|
||||
//TODO: BZHIL R9D, (R11), DX // c4c230f513
|
||||
//TODO: BZHIL R9D, DX, DX // c4e230f5d2
|
||||
//TODO: BZHIL R9D, R11, DX // c4c230f5d3
|
||||
//TODO: BZHIL R9D, (BX), R11 // c46230f51b
|
||||
//TODO: BZHIL R9D, (R11), R11 // c44230f51b
|
||||
//TODO: BZHIL R9D, DX, R11 // c46230f5da
|
||||
//TODO: BZHIL R9D, R11, R11 // c44230f5db
|
||||
//TODO: BZHIQ R14, (BX), DX // c4e288f513
|
||||
//TODO: BZHIQ R14, (R11), DX // c4c288f513
|
||||
//TODO: BZHIQ R14, DX, DX // c4e288f5d2
|
||||
//TODO: BZHIQ R14, R11, DX // c4c288f5d3
|
||||
//TODO: BZHIQ R14, (BX), R11 // c46288f51b
|
||||
//TODO: BZHIQ R14, (R11), R11 // c44288f51b
|
||||
//TODO: BZHIQ R14, DX, R11 // c46288f5da
|
||||
//TODO: BZHIQ R14, R11, R11 // c44288f5db
|
||||
BZHIL R9, (BX), DX // c4e230f513
|
||||
BZHIL R9, (R11), DX // c4c230f513
|
||||
BZHIL R9, DX, DX // c4e230f5d2
|
||||
BZHIL R9, R11, DX // c4c230f5d3
|
||||
BZHIL R9, (BX), R11 // c46230f51b
|
||||
BZHIL R9, (R11), R11 // c44230f51b
|
||||
BZHIL R9, DX, R11 // c46230f5da
|
||||
BZHIL R9, R11, R11 // c44230f5db
|
||||
BZHIQ R14, (BX), DX // c4e288f513
|
||||
BZHIQ R14, (R11), DX // c4c288f513
|
||||
BZHIQ R14, DX, DX // c4e288f5d2
|
||||
BZHIQ R14, R11, DX // c4c288f5d3
|
||||
BZHIQ R14, (BX), R11 // c46288f51b
|
||||
BZHIQ R14, (R11), R11 // c44288f51b
|
||||
BZHIQ R14, DX, R11 // c46288f5da
|
||||
BZHIQ R14, R11, R11 // c44288f5db
|
||||
//TODO: CALLQ* (BX) // ff13
|
||||
//TODO: CALLQ* (R11) // 41ff13
|
||||
//TODO: CALLQ* DX // ffd2
|
||||
@ -2911,22 +2911,22 @@ TEXT asmtest(SB),7,$0
|
||||
MULSS (R11), X11 // f3450f591b
|
||||
MULSS X2, X11 // f3440f59da
|
||||
MULSS X11, X11 // f3450f59db
|
||||
//TODO: MULXL (BX), R9D, DX // c4e233f613
|
||||
//TODO: MULXL (R11), R9D, DX // c4c233f613
|
||||
//TODO: MULXL DX, R9D, DX // c4e233f6d2
|
||||
//TODO: MULXL R11, R9D, DX // c4c233f6d3
|
||||
//TODO: MULXL (BX), R9D, R11 // c46233f61b
|
||||
//TODO: MULXL (R11), R9D, R11 // c44233f61b
|
||||
//TODO: MULXL DX, R9D, R11 // c46233f6da
|
||||
//TODO: MULXL R11, R9D, R11 // c44233f6db
|
||||
//TODO: MULXQ (BX), R14, DX // c4e28bf613
|
||||
//TODO: MULXQ (R11), R14, DX // c4c28bf613
|
||||
//TODO: MULXQ DX, R14, DX // c4e28bf6d2
|
||||
//TODO: MULXQ R11, R14, DX // c4c28bf6d3
|
||||
//TODO: MULXQ (BX), R14, R11 // c4628bf61b
|
||||
//TODO: MULXQ (R11), R14, R11 // c4428bf61b
|
||||
//TODO: MULXQ DX, R14, R11 // c4628bf6da
|
||||
//TODO: MULXQ R11, R14, R11 // c4428bf6db
|
||||
MULXL (BX), R9, DX // c4e233f613
|
||||
MULXL (R11), R9, DX // c4c233f613
|
||||
MULXL DX, R9, DX // c4e233f6d2
|
||||
MULXL R11, R9, DX // c4c233f6d3
|
||||
MULXL (BX), R9, R11 // c46233f61b
|
||||
MULXL (R11), R9, R11 // c44233f61b
|
||||
MULXL DX, R9, R11 // c46233f6da
|
||||
MULXL R11, R9, R11 // c44233f6db
|
||||
MULXQ (BX), R14, DX // c4e28bf613
|
||||
MULXQ (R11), R14, DX // c4c28bf613
|
||||
MULXQ DX, R14, DX // c4e28bf6d2
|
||||
MULXQ R11, R14, DX // c4c28bf6d3
|
||||
MULXQ (BX), R14, R11 // c4628bf61b
|
||||
MULXQ (R11), R14, R11 // c4428bf61b
|
||||
MULXQ DX, R14, R11 // c4628bf6da
|
||||
MULXQ R11, R14, R11 // c4428bf6db
|
||||
//TODO: MWAIT // 0f01c9
|
||||
NEGW (BX) // 66f71b
|
||||
NEGW (R11) // 6641f71b
|
||||
@ -3553,38 +3553,38 @@ TEXT asmtest(SB),7,$0
|
||||
//TODO: PCMPISTRM $7, (R11), X11 // 66450f3a621b07
|
||||
//TODO: PCMPISTRM $7, X2, X11 // 66440f3a62da07
|
||||
//TODO: PCMPISTRM $7, X11, X11 // 66450f3a62db07
|
||||
//TODO: PDEPL (BX), R9D, DX // c4e233f513
|
||||
//TODO: PDEPL (R11), R9D, DX // c4c233f513
|
||||
//TODO: PDEPL DX, R9D, DX // c4e233f5d2
|
||||
//TODO: PDEPL R11, R9D, DX // c4c233f5d3
|
||||
//TODO: PDEPL (BX), R9D, R11 // c46233f51b
|
||||
//TODO: PDEPL (R11), R9D, R11 // c44233f51b
|
||||
//TODO: PDEPL DX, R9D, R11 // c46233f5da
|
||||
//TODO: PDEPL R11, R9D, R11 // c44233f5db
|
||||
//TODO: PDEPQ (BX), R14, DX // c4e28bf513
|
||||
//TODO: PDEPQ (R11), R14, DX // c4c28bf513
|
||||
//TODO: PDEPQ DX, R14, DX // c4e28bf5d2
|
||||
//TODO: PDEPQ R11, R14, DX // c4c28bf5d3
|
||||
//TODO: PDEPQ (BX), R14, R11 // c4628bf51b
|
||||
//TODO: PDEPQ (R11), R14, R11 // c4428bf51b
|
||||
//TODO: PDEPQ DX, R14, R11 // c4628bf5da
|
||||
//TODO: PDEPQ R11, R14, R11 // c4428bf5db
|
||||
//TODO: PEXTL (BX), R9D, DX // c4e232f513
|
||||
//TODO: PEXTL (R11), R9D, DX // c4c232f513
|
||||
//TODO: PEXTL DX, R9D, DX // c4e232f5d2
|
||||
//TODO: PEXTL R11, R9D, DX // c4c232f5d3
|
||||
//TODO: PEXTL (BX), R9D, R11 // c46232f51b
|
||||
//TODO: PEXTL (R11), R9D, R11 // c44232f51b
|
||||
//TODO: PEXTL DX, R9D, R11 // c46232f5da
|
||||
//TODO: PEXTL R11, R9D, R11 // c44232f5db
|
||||
//TODO: PEXTQ (BX), R14, DX // c4e28af513
|
||||
//TODO: PEXTQ (R11), R14, DX // c4c28af513
|
||||
//TODO: PEXTQ DX, R14, DX // c4e28af5d2
|
||||
//TODO: PEXTQ R11, R14, DX // c4c28af5d3
|
||||
//TODO: PEXTQ (BX), R14, R11 // c4628af51b
|
||||
//TODO: PEXTQ (R11), R14, R11 // c4428af51b
|
||||
//TODO: PEXTQ DX, R14, R11 // c4628af5da
|
||||
//TODO: PEXTQ R11, R14, R11 // c4428af5db
|
||||
PDEPL (BX), R9, DX // c4e233f513
|
||||
PDEPL (R11), R9, DX // c4c233f513
|
||||
PDEPL DX, R9, DX // c4e233f5d2
|
||||
PDEPL R11, R9, DX // c4c233f5d3
|
||||
PDEPL (BX), R9, R11 // c46233f51b
|
||||
PDEPL (R11), R9, R11 // c44233f51b
|
||||
PDEPL DX, R9, R11 // c46233f5da
|
||||
PDEPL R11, R9, R11 // c44233f5db
|
||||
PDEPQ (BX), R14, DX // c4e28bf513
|
||||
PDEPQ (R11), R14, DX // c4c28bf513
|
||||
PDEPQ DX, R14, DX // c4e28bf5d2
|
||||
PDEPQ R11, R14, DX // c4c28bf5d3
|
||||
PDEPQ (BX), R14, R11 // c4628bf51b
|
||||
PDEPQ (R11), R14, R11 // c4428bf51b
|
||||
PDEPQ DX, R14, R11 // c4628bf5da
|
||||
PDEPQ R11, R14, R11 // c4428bf5db
|
||||
PEXTL (BX), R9, DX // c4e232f513
|
||||
PEXTL (R11), R9, DX // c4c232f513
|
||||
PEXTL DX, R9, DX // c4e232f5d2
|
||||
PEXTL R11, R9, DX // c4c232f5d3
|
||||
PEXTL (BX), R9, R11 // c46232f51b
|
||||
PEXTL (R11), R9, R11 // c44232f51b
|
||||
PEXTL DX, R9, R11 // c46232f5da
|
||||
PEXTL R11, R9, R11 // c44232f5db
|
||||
PEXTQ (BX), R14, DX // c4e28af513
|
||||
PEXTQ (R11), R14, DX // c4c28af513
|
||||
PEXTQ DX, R14, DX // c4e28af5d2
|
||||
PEXTQ R11, R14, DX // c4c28af5d3
|
||||
PEXTQ (BX), R14, R11 // c4628af51b
|
||||
PEXTQ (R11), R14, R11 // c4428af51b
|
||||
PEXTQ DX, R14, R11 // c4628af5da
|
||||
PEXTQ R11, R14, R11 // c4428af5db
|
||||
PEXTRB $7, X2, (BX) // 660f3a141307
|
||||
PEXTRB $7, X11, (BX) // 66440f3a141b07
|
||||
PEXTRB $7, X2, (R11) // 66410f3a141307
|
||||
@ -5122,22 +5122,22 @@ TEXT asmtest(SB),7,$0
|
||||
SARB $7, (R11) // 41c03b07
|
||||
SARB $7, DL // c0fa07
|
||||
SARB $7, R11 // 41c0fb07
|
||||
//TODO: SARXL R9D, (BX), DX // c4e232f713
|
||||
//TODO: SARXL R9D, (R11), DX // c4c232f713
|
||||
//TODO: SARXL R9D, DX, DX // c4e232f7d2
|
||||
//TODO: SARXL R9D, R11, DX // c4c232f7d3
|
||||
//TODO: SARXL R9D, (BX), R11 // c46232f71b
|
||||
//TODO: SARXL R9D, (R11), R11 // c44232f71b
|
||||
//TODO: SARXL R9D, DX, R11 // c46232f7da
|
||||
//TODO: SARXL R9D, R11, R11 // c44232f7db
|
||||
//TODO: SARXQ R14, (BX), DX // c4e28af713
|
||||
//TODO: SARXQ R14, (R11), DX // c4c28af713
|
||||
//TODO: SARXQ R14, DX, DX // c4e28af7d2
|
||||
//TODO: SARXQ R14, R11, DX // c4c28af7d3
|
||||
//TODO: SARXQ R14, (BX), R11 // c4628af71b
|
||||
//TODO: SARXQ R14, (R11), R11 // c4428af71b
|
||||
//TODO: SARXQ R14, DX, R11 // c4628af7da
|
||||
//TODO: SARXQ R14, R11, R11 // c4428af7db
|
||||
SARXL R9, (BX), DX // c4e232f713
|
||||
SARXL R9, (R11), DX // c4c232f713
|
||||
SARXL R9, DX, DX // c4e232f7d2
|
||||
SARXL R9, R11, DX // c4c232f7d3
|
||||
SARXL R9, (BX), R11 // c46232f71b
|
||||
SARXL R9, (R11), R11 // c44232f71b
|
||||
SARXL R9, DX, R11 // c46232f7da
|
||||
SARXL R9, R11, R11 // c44232f7db
|
||||
SARXQ R14, (BX), DX // c4e28af713
|
||||
SARXQ R14, (R11), DX // c4c28af713
|
||||
SARXQ R14, DX, DX // c4e28af7d2
|
||||
SARXQ R14, R11, DX // c4c28af7d3
|
||||
SARXQ R14, (BX), R11 // c4628af71b
|
||||
SARXQ R14, (R11), R11 // c4428af71b
|
||||
SARXQ R14, DX, R11 // c4628af7da
|
||||
SARXQ R14, R11, R11 // c4428af7db
|
||||
SBBB $7, AL // 1c07
|
||||
SBBW $61731, AX // 661d23f1
|
||||
SBBL $4045620583, AX // 1d674523f1
|
||||
@ -5385,22 +5385,22 @@ TEXT asmtest(SB),7,$0
|
||||
SHLQ $7, R11, DX // 4c0fa4da07
|
||||
SHLQ $7, DX, R11 // 490fa4d307
|
||||
SHLQ $7, R11, R11 // 4d0fa4db07
|
||||
//TODO: SHLXL R9D, (BX), DX // c4e231f713
|
||||
//TODO: SHLXL R9D, (R11), DX // c4c231f713
|
||||
//TODO: SHLXL R9D, DX, DX // c4e231f7d2
|
||||
//TODO: SHLXL R9D, R11, DX // c4c231f7d3
|
||||
//TODO: SHLXL R9D, (BX), R11 // c46231f71b
|
||||
//TODO: SHLXL R9D, (R11), R11 // c44231f71b
|
||||
//TODO: SHLXL R9D, DX, R11 // c46231f7da
|
||||
//TODO: SHLXL R9D, R11, R11 // c44231f7db
|
||||
//TODO: SHLXQ R14, (BX), DX // c4e289f713
|
||||
//TODO: SHLXQ R14, (R11), DX // c4c289f713
|
||||
//TODO: SHLXQ R14, DX, DX // c4e289f7d2
|
||||
//TODO: SHLXQ R14, R11, DX // c4c289f7d3
|
||||
//TODO: SHLXQ R14, (BX), R11 // c46289f71b
|
||||
//TODO: SHLXQ R14, (R11), R11 // c44289f71b
|
||||
//TODO: SHLXQ R14, DX, R11 // c46289f7da
|
||||
//TODO: SHLXQ R14, R11, R11 // c44289f7db
|
||||
SHLXL R9, (BX), DX // c4e231f713
|
||||
SHLXL R9, (R11), DX // c4c231f713
|
||||
SHLXL R9, DX, DX // c4e231f7d2
|
||||
SHLXL R9, R11, DX // c4c231f7d3
|
||||
SHLXL R9, (BX), R11 // c46231f71b
|
||||
SHLXL R9, (R11), R11 // c44231f71b
|
||||
SHLXL R9, DX, R11 // c46231f7da
|
||||
SHLXL R9, R11, R11 // c44231f7db
|
||||
SHLXQ R14, (BX), DX // c4e289f713
|
||||
SHLXQ R14, (R11), DX // c4c289f713
|
||||
SHLXQ R14, DX, DX // c4e289f7d2
|
||||
SHLXQ R14, R11, DX // c4c289f7d3
|
||||
SHLXQ R14, (BX), R11 // c46289f71b
|
||||
SHLXQ R14, (R11), R11 // c44289f71b
|
||||
SHLXQ R14, DX, R11 // c46289f7da
|
||||
SHLXQ R14, R11, R11 // c44289f7db
|
||||
SHRW $1, (BX) // 66d12b
|
||||
SHRW $1, (R11) // 6641d12b
|
||||
SHRW $1, DX // 66d1ea
|
||||
@ -5497,22 +5497,22 @@ TEXT asmtest(SB),7,$0
|
||||
SHRQ $7, R11, DX // 4c0facda07
|
||||
SHRQ $7, DX, R11 // 490facd307
|
||||
SHRQ $7, R11, R11 // 4d0facdb07
|
||||
//TODO: SHRXL R9D, (BX), DX // c4e233f713
|
||||
//TODO: SHRXL R9D, (R11), DX // c4c233f713
|
||||
//TODO: SHRXL R9D, DX, DX // c4e233f7d2
|
||||
//TODO: SHRXL R9D, R11, DX // c4c233f7d3
|
||||
//TODO: SHRXL R9D, (BX), R11 // c46233f71b
|
||||
//TODO: SHRXL R9D, (R11), R11 // c44233f71b
|
||||
//TODO: SHRXL R9D, DX, R11 // c46233f7da
|
||||
//TODO: SHRXL R9D, R11, R11 // c44233f7db
|
||||
//TODO: SHRXQ R14, (BX), DX // c4e28bf713
|
||||
//TODO: SHRXQ R14, (R11), DX // c4c28bf713
|
||||
//TODO: SHRXQ R14, DX, DX // c4e28bf7d2
|
||||
//TODO: SHRXQ R14, R11, DX // c4c28bf7d3
|
||||
//TODO: SHRXQ R14, (BX), R11 // c4628bf71b
|
||||
//TODO: SHRXQ R14, (R11), R11 // c4428bf71b
|
||||
//TODO: SHRXQ R14, DX, R11 // c4628bf7da
|
||||
//TODO: SHRXQ R14, R11, R11 // c4428bf7db
|
||||
SHRXL R9, (BX), DX // c4e233f713
|
||||
SHRXL R9, (R11), DX // c4c233f713
|
||||
SHRXL R9, DX, DX // c4e233f7d2
|
||||
SHRXL R9, R11, DX // c4c233f7d3
|
||||
SHRXL R9, (BX), R11 // c46233f71b
|
||||
SHRXL R9, (R11), R11 // c44233f71b
|
||||
SHRXL R9, DX, R11 // c46233f7da
|
||||
SHRXL R9, R11, R11 // c44233f7db
|
||||
SHRXQ R14, (BX), DX // c4e28bf713
|
||||
SHRXQ R14, (R11), DX // c4c28bf713
|
||||
SHRXQ R14, DX, DX // c4e28bf7d2
|
||||
SHRXQ R14, R11, DX // c4c28bf7d3
|
||||
SHRXQ R14, (BX), R11 // c4628bf71b
|
||||
SHRXQ R14, (R11), R11 // c4428bf71b
|
||||
SHRXQ R14, DX, R11 // c4628bf7da
|
||||
SHRXQ R14, R11, R11 // c4428bf7db
|
||||
SHUFPD $7, (BX), X2 // 660fc61307
|
||||
SHUFPD $7, (R11), X2 // 66410fc61307
|
||||
SHUFPD $7, X2, X2 // 660fc6d207
|
||||
|
@ -510,10 +510,22 @@ const (
|
||||
AADDPS
|
||||
AADDSD
|
||||
AADDSS
|
||||
AANDNL
|
||||
AANDNQ
|
||||
AANDNPD
|
||||
AANDNPS
|
||||
AANDPD
|
||||
AANDPS
|
||||
ABEXTRL
|
||||
ABEXTRQ
|
||||
ABLSIL
|
||||
ABLSIQ
|
||||
ABLSMSKL
|
||||
ABLSMSKQ
|
||||
ABLSRL
|
||||
ABLSRQ
|
||||
ABZHIL
|
||||
ABZHIQ
|
||||
ACMPPD
|
||||
ACMPPS
|
||||
ACMPSD
|
||||
@ -588,6 +600,8 @@ const (
|
||||
AMULPS
|
||||
AMULSD
|
||||
AMULSS
|
||||
AMULXL
|
||||
AMULXQ
|
||||
AORPD
|
||||
AORPS
|
||||
APACKSSLW
|
||||
@ -618,6 +632,10 @@ const (
|
||||
APCMPGTB
|
||||
APCMPGTL
|
||||
APCMPGTW
|
||||
APDEPL
|
||||
APDEPQ
|
||||
APEXTL
|
||||
APEXTQ
|
||||
APEXTRB
|
||||
APEXTRD
|
||||
APEXTRQ
|
||||
@ -714,6 +732,12 @@ const (
|
||||
ARCPSS
|
||||
ARSQRTPS
|
||||
ARSQRTSS
|
||||
ASARXL
|
||||
ASARXQ
|
||||
ASHLXL
|
||||
ASHLXQ
|
||||
ASHRXL
|
||||
ASHRXQ
|
||||
ASHUFPD
|
||||
ASHUFPS
|
||||
ASQRTPD
|
||||
|
@ -459,10 +459,22 @@ var Anames = []string{
|
||||
"ADDPS",
|
||||
"ADDSD",
|
||||
"ADDSS",
|
||||
"ANDNL",
|
||||
"ANDNQ",
|
||||
"ANDNPD",
|
||||
"ANDNPS",
|
||||
"ANDPD",
|
||||
"ANDPS",
|
||||
"BEXTRL",
|
||||
"BEXTRQ",
|
||||
"BLSIL",
|
||||
"BLSIQ",
|
||||
"BLSMSKL",
|
||||
"BLSMSKQ",
|
||||
"BLSRL",
|
||||
"BLSRQ",
|
||||
"BZHIL",
|
||||
"BZHIQ",
|
||||
"CMPPD",
|
||||
"CMPPS",
|
||||
"CMPSD",
|
||||
@ -537,6 +549,8 @@ var Anames = []string{
|
||||
"MULPS",
|
||||
"MULSD",
|
||||
"MULSS",
|
||||
"MULXL",
|
||||
"MULXQ",
|
||||
"ORPD",
|
||||
"ORPS",
|
||||
"PACKSSLW",
|
||||
@ -567,6 +581,10 @@ var Anames = []string{
|
||||
"PCMPGTB",
|
||||
"PCMPGTL",
|
||||
"PCMPGTW",
|
||||
"PDEPL",
|
||||
"PDEPQ",
|
||||
"PEXTL",
|
||||
"PEXTQ",
|
||||
"PEXTRB",
|
||||
"PEXTRD",
|
||||
"PEXTRQ",
|
||||
@ -663,6 +681,12 @@ var Anames = []string{
|
||||
"RCPSS",
|
||||
"RSQRTPS",
|
||||
"RSQRTSS",
|
||||
"SARXL",
|
||||
"SARXQ",
|
||||
"SHLXL",
|
||||
"SHLXQ",
|
||||
"SHRXL",
|
||||
"SHRXQ",
|
||||
"SHUFPD",
|
||||
"SHUFPS",
|
||||
"SQRTPD",
|
||||
|
@ -207,6 +207,7 @@ const (
|
||||
Zbyte
|
||||
Zvex_rm_v_r
|
||||
Zvex_r_v_rm
|
||||
Zvex_v_rm_r
|
||||
Zmax
|
||||
)
|
||||
|
||||
@ -850,6 +851,16 @@ var yvex_xy3 = []ytab{
|
||||
{Yym, Yyr, Yyr, Zvex_rm_v_r, 2},
|
||||
}
|
||||
|
||||
var yvex_r3 = []ytab{
|
||||
{Yml, Yrl, Yrl, Zvex_rm_v_r, 2},
|
||||
{Yml, Yrl, Yrl, Zvex_rm_v_r, 2},
|
||||
}
|
||||
|
||||
var yvex_vmr3 = []ytab{
|
||||
{Yrl, Yml, Yrl, Zvex_v_rm_r, 2},
|
||||
{Yrl, Yml, Yrl, Zvex_v_rm_r, 2},
|
||||
}
|
||||
|
||||
var yvex_xy2 = []ytab{
|
||||
{Yxm, Ynone, Yxr, Zvex_rm_v_r, 2},
|
||||
{Yym, Ynone, Yyr, Zvex_rm_v_r, 2},
|
||||
@ -1669,6 +1680,25 @@ var optab =
|
||||
{APSHUFD, yxshuf, Pq, [23]uint8{0x70, 0}},
|
||||
{APCLMULQDQ, yxshuf, Pq, [23]uint8{0x3a, 0x44, 0}},
|
||||
|
||||
{AANDNL, yvex_r3, Pvex, [23]uint8{VEX_LZ_0F38_W0, 0xF2}},
|
||||
{AANDNQ, yvex_r3, Pvex, [23]uint8{VEX_LZ_0F38_W1, 0xF2}},
|
||||
{ABEXTRL, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_0F38_W0, 0xF7}},
|
||||
{ABEXTRQ, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_0F38_W1, 0xF7}},
|
||||
{ABZHIL, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_0F38_W0, 0xF5}},
|
||||
{ABZHIQ, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_0F38_W1, 0xF5}},
|
||||
{AMULXL, yvex_r3, Pvex, [23]uint8{VEX_LZ_F2_0F38_W0, 0xF6}},
|
||||
{AMULXQ, yvex_r3, Pvex, [23]uint8{VEX_LZ_F2_0F38_W1, 0xF6}},
|
||||
{APDEPL, yvex_r3, Pvex, [23]uint8{VEX_LZ_F2_0F38_W0, 0xF5}},
|
||||
{APDEPQ, yvex_r3, Pvex, [23]uint8{VEX_LZ_F2_0F38_W1, 0xF5}},
|
||||
{APEXTL, yvex_r3, Pvex, [23]uint8{VEX_LZ_F3_0F38_W0, 0xF5}},
|
||||
{APEXTQ, yvex_r3, Pvex, [23]uint8{VEX_LZ_F3_0F38_W1, 0xF5}},
|
||||
{ASARXL, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_F3_0F38_W0, 0xF7}},
|
||||
{ASARXQ, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_F3_0F38_W1, 0xF7}},
|
||||
{ASHLXL, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_66_0F38_W0, 0xF7}},
|
||||
{ASHLXQ, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_66_0F38_W1, 0xF7}},
|
||||
{ASHRXL, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_F2_0F38_W0, 0xF7}},
|
||||
{ASHRXQ, yvex_vmr3, Pvex, [23]uint8{VEX_LZ_F2_0F38_W1, 0xF7}},
|
||||
|
||||
{AVZEROUPPER, ynone, Px, [23]uint8{0xc5, 0xf8, 0x77}},
|
||||
{AVMOVDQU, yvex_vmovdqa, Pvex, [23]uint8{VEX_128_F3_0F_WIG, 0x6F, VEX_128_F3_0F_WIG, 0x7F, VEX_256_F3_0F_WIG, 0x6F, VEX_256_F3_0F_WIG, 0x7F}},
|
||||
{AVMOVDQA, yvex_vmovdqa, Pvex, [23]uint8{VEX_128_66_0F_WIG, 0x6F, VEX_128_66_0F_WIG, 0x7F, VEX_256_66_0F_WIG, 0x6F, VEX_256_66_0F_WIG, 0x7F}},
|
||||
@ -3542,6 +3572,10 @@ func doasm(ctxt *obj.Link, p *obj.Prog) {
|
||||
asmvex(ctxt, &p.From, p.From3, &p.To, o.op[z], o.op[z+1])
|
||||
asmand(ctxt, p, &p.From, &p.To)
|
||||
|
||||
case Zvex_v_rm_r:
|
||||
asmvex(ctxt, p.From3, &p.From, &p.To, o.op[z], o.op[z+1])
|
||||
asmand(ctxt, p, p.From3, &p.To)
|
||||
|
||||
case Zvex_r_v_rm:
|
||||
asmvex(ctxt, &p.To, p.From3, &p.From, o.op[z], o.op[z+1])
|
||||
asmand(ctxt, p, &p.To, &p.From)
|
||||
|
Loading…
Reference in New Issue
Block a user