Files
gasm-sdk/asm/amd64_sse_test.go
T

1497 lines
59 KiB
Go
Raw Normal View History

// Copyright (c) 2026 Petr Balvín <opensource@petrbalvin.org> (https://petrbalvin.org)
// SPDX-License-Identifier: BSD-3-Clause
package asm
import "testing"
// amd64SseCorpus holds every line the Go toolchain's own
// amd64enc.s carries for the legacy SSE and MMX families and the MOVQ bank crossings, with the bytes go
// tool asm emits for each: the differential ground truth the layer is
// proven against, line for line.
var amd64SseCorpus = []struct {
line string
want string
}{
{"ADDSUBPD (BX), X11", "66 44 0f d0 1b"},
{"ADDSUBPD (BX), X2", "66 0f d0 13"},
{"ADDSUBPD (R11), X11", "66 45 0f d0 1b"},
{"ADDSUBPD (R11), X2", "66 41 0f d0 13"},
{"ADDSUBPD X11, X11", "66 45 0f d0 db"},
{"ADDSUBPD X11, X2", "66 41 0f d0 d3"},
{"ADDSUBPD X2, X11", "66 44 0f d0 da"},
{"ADDSUBPD X2, X2", "66 0f d0 d2"},
{"ADDSUBPS (BX), X11", "f2 44 0f d0 1b"},
{"ADDSUBPS (BX), X2", "f2 0f d0 13"},
{"ADDSUBPS (R11), X11", "f2 45 0f d0 1b"},
{"ADDSUBPS (R11), X2", "f2 41 0f d0 13"},
{"ADDSUBPS X11, X11", "f2 45 0f d0 db"},
{"ADDSUBPS X11, X2", "f2 41 0f d0 d3"},
{"ADDSUBPS X2, X11", "f2 44 0f d0 da"},
{"ADDSUBPS X2, X2", "f2 0f d0 d2"},
{"BLENDPD $7, (BX), X11", "66 44 0f 3a 0d 1b 07"},
{"BLENDPD $7, (BX), X2", "66 0f 3a 0d 13 07"},
{"BLENDPD $7, (R11), X11", "66 45 0f 3a 0d 1b 07"},
{"BLENDPD $7, (R11), X2", "66 41 0f 3a 0d 13 07"},
{"BLENDPD $7, X11, X11", "66 45 0f 3a 0d db 07"},
{"BLENDPD $7, X11, X2", "66 41 0f 3a 0d d3 07"},
{"BLENDPD $7, X2, X11", "66 44 0f 3a 0d da 07"},
{"BLENDPD $7, X2, X2", "66 0f 3a 0d d2 07"},
{"BLENDPS $7, (BX), X11", "66 44 0f 3a 0c 1b 07"},
{"BLENDPS $7, (BX), X2", "66 0f 3a 0c 13 07"},
{"BLENDPS $7, (R11), X11", "66 45 0f 3a 0c 1b 07"},
{"BLENDPS $7, (R11), X2", "66 41 0f 3a 0c 13 07"},
{"BLENDPS $7, X11, X11", "66 45 0f 3a 0c db 07"},
{"BLENDPS $7, X11, X2", "66 41 0f 3a 0c d3 07"},
{"BLENDPS $7, X2, X11", "66 44 0f 3a 0c da 07"},
{"BLENDPS $7, X2, X2", "66 0f 3a 0c d2 07"},
{"BLENDVPD X0, (BX), X11", "66 44 0f 38 15 1b"},
{"BLENDVPD X0, (BX), X2", "66 0f 38 15 13"},
{"BLENDVPD X0, (R11), X11", "66 45 0f 38 15 1b"},
{"BLENDVPD X0, (R11), X2", "66 41 0f 38 15 13"},
{"BLENDVPD X0, X11, X11", "66 45 0f 38 15 db"},
{"BLENDVPD X0, X11, X2", "66 41 0f 38 15 d3"},
{"BLENDVPD X0, X2, X11", "66 44 0f 38 15 da"},
{"BLENDVPD X0, X2, X2", "66 0f 38 15 d2"},
{"BLENDVPS X0, (BX), X11", "66 44 0f 38 14 1b"},
{"BLENDVPS X0, (BX), X2", "66 0f 38 14 13"},
{"BLENDVPS X0, (R11), X11", "66 45 0f 38 14 1b"},
{"BLENDVPS X0, (R11), X2", "66 41 0f 38 14 13"},
{"BLENDVPS X0, X11, X11", "66 45 0f 38 14 db"},
{"BLENDVPS X0, X11, X2", "66 41 0f 38 14 d3"},
{"BLENDVPS X0, X2, X11", "66 44 0f 38 14 da"},
{"BLENDVPS X0, X2, X2", "66 0f 38 14 d2"},
{"COMISS (BX), X11", "44 0f 2f 1b"},
{"COMISS (BX), X2", "0f 2f 13"},
{"COMISS (R11), X11", "45 0f 2f 1b"},
{"COMISS (R11), X2", "41 0f 2f 13"},
{"COMISS X11, X11", "45 0f 2f db"},
{"COMISS X11, X2", "41 0f 2f d3"},
{"COMISS X2, X11", "44 0f 2f da"},
{"COMISS X2, X2", "0f 2f d2"},
{"CVTPD2PL (BX), X11", "f2 44 0f e6 1b"},
{"CVTPD2PL (BX), X2", "f2 0f e6 13"},
{"CVTPD2PL (R11), X11", "f2 45 0f e6 1b"},
{"CVTPD2PL (R11), X2", "f2 41 0f e6 13"},
{"CVTPD2PL X11, X11", "f2 45 0f e6 db"},
{"CVTPD2PL X11, X2", "f2 41 0f e6 d3"},
{"CVTPD2PL X2, X11", "f2 44 0f e6 da"},
{"CVTPD2PL X2, X2", "f2 0f e6 d2"},
{"CVTPL2PD (BX), X11", "f3 44 0f e6 1b"},
{"CVTPL2PD (BX), X2", "f3 0f e6 13"},
{"CVTPL2PD (R11), X11", "f3 45 0f e6 1b"},
{"CVTPL2PD (R11), X2", "f3 41 0f e6 13"},
{"CVTPL2PD X11, X11", "f3 45 0f e6 db"},
{"CVTPL2PD X11, X2", "f3 41 0f e6 d3"},
{"CVTPL2PD X2, X11", "f3 44 0f e6 da"},
{"CVTPL2PD X2, X2", "f3 0f e6 d2"},
{"CVTPL2PS (BX), X11", "44 0f 5b 1b"},
{"CVTPL2PS (BX), X2", "0f 5b 13"},
{"CVTPL2PS (R11), X11", "45 0f 5b 1b"},
{"CVTPL2PS (R11), X2", "41 0f 5b 13"},
{"CVTPL2PS X11, X11", "45 0f 5b db"},
{"CVTPL2PS X11, X2", "41 0f 5b d3"},
{"CVTPL2PS X2, X11", "44 0f 5b da"},
{"CVTPL2PS X2, X2", "0f 5b d2"},
{"CVTPS2PL (BX), X11", "66 44 0f 5b 1b"},
{"CVTPS2PL (BX), X2", "66 0f 5b 13"},
{"CVTPS2PL (R11), X11", "66 45 0f 5b 1b"},
{"CVTPS2PL (R11), X2", "66 41 0f 5b 13"},
{"CVTPS2PL X11, X11", "66 45 0f 5b db"},
{"CVTPS2PL X11, X2", "66 41 0f 5b d3"},
{"CVTPS2PL X2, X11", "66 44 0f 5b da"},
{"CVTPS2PL X2, X2", "66 0f 5b d2"},
{"CVTSL2SS (BX), X11", "f3 44 0f 2a 1b"},
{"CVTSL2SS (BX), X2", "f3 0f 2a 13"},
{"CVTSL2SS (R11), X11", "f3 45 0f 2a 1b"},
{"CVTSL2SS (R11), X2", "f3 41 0f 2a 13"},
{"CVTSL2SS DX, X11", "f3 44 0f 2a da"},
{"CVTSL2SS DX, X2", "f3 0f 2a d2"},
{"CVTSL2SS R11, X11", "f3 45 0f 2a db"},
{"CVTSL2SS R11, X2", "f3 41 0f 2a d3"},
{"CVTSQ2SS (BX), X11", "f3 4c 0f 2a 1b"},
{"CVTSQ2SS (BX), X2", "f3 48 0f 2a 13"},
{"CVTSQ2SS (R11), X11", "f3 4d 0f 2a 1b"},
{"CVTSQ2SS (R11), X2", "f3 49 0f 2a 13"},
{"CVTSQ2SS DX, X11", "f3 4c 0f 2a da"},
{"CVTSQ2SS DX, X2", "f3 48 0f 2a d2"},
{"CVTSQ2SS R11, X11", "f3 4d 0f 2a db"},
{"CVTSQ2SS R11, X2", "f3 49 0f 2a d3"},
{"CVTTPD2PL (BX), X11", "66 44 0f e6 1b"},
{"CVTTPD2PL (BX), X2", "66 0f e6 13"},
{"CVTTPD2PL (R11), X11", "66 45 0f e6 1b"},
{"CVTTPD2PL (R11), X2", "66 41 0f e6 13"},
{"CVTTPD2PL X11, X11", "66 45 0f e6 db"},
{"CVTTPD2PL X11, X2", "66 41 0f e6 d3"},
{"CVTTPD2PL X2, X11", "66 44 0f e6 da"},
{"CVTTPD2PL X2, X2", "66 0f e6 d2"},
{"CVTTPS2PL (BX), X11", "f3 44 0f 5b 1b"},
{"CVTTPS2PL (BX), X2", "f3 0f 5b 13"},
{"CVTTPS2PL (R11), X11", "f3 45 0f 5b 1b"},
{"CVTTPS2PL (R11), X2", "f3 41 0f 5b 13"},
{"CVTTPS2PL X11, X11", "f3 45 0f 5b db"},
{"CVTTPS2PL X11, X2", "f3 41 0f 5b d3"},
{"CVTTPS2PL X2, X11", "f3 44 0f 5b da"},
{"CVTTPS2PL X2, X2", "f3 0f 5b d2"},
{"DPPD $7, (BX), X11", "66 44 0f 3a 41 1b 07"},
{"DPPD $7, (BX), X2", "66 0f 3a 41 13 07"},
{"DPPD $7, (R11), X11", "66 45 0f 3a 41 1b 07"},
{"DPPD $7, (R11), X2", "66 41 0f 3a 41 13 07"},
{"DPPD $7, X11, X11", "66 45 0f 3a 41 db 07"},
{"DPPD $7, X11, X2", "66 41 0f 3a 41 d3 07"},
{"DPPD $7, X2, X11", "66 44 0f 3a 41 da 07"},
{"DPPD $7, X2, X2", "66 0f 3a 41 d2 07"},
{"DPPS $7, (BX), X11", "66 44 0f 3a 40 1b 07"},
{"DPPS $7, (BX), X2", "66 0f 3a 40 13 07"},
{"DPPS $7, (R11), X11", "66 45 0f 3a 40 1b 07"},
{"DPPS $7, (R11), X2", "66 41 0f 3a 40 13 07"},
{"DPPS $7, X11, X11", "66 45 0f 3a 40 db 07"},
{"DPPS $7, X11, X2", "66 41 0f 3a 40 d3 07"},
{"DPPS $7, X2, X11", "66 44 0f 3a 40 da 07"},
{"DPPS $7, X2, X2", "66 0f 3a 40 d2 07"},
{"EMMS", "0f 77"},
{"EXTRACTPS $0, X11, R11", "66 45 0f 3a 17 db 00"},
{"EXTRACTPS $0, X2, (BX)", "66 0f 3a 17 13 00"},
{"EXTRACTPS $1, X11, (BX)", "66 44 0f 3a 17 1b 01"},
{"EXTRACTPS $1, X2, R11", "66 41 0f 3a 17 d3 01"},
{"EXTRACTPS $2, X11, DX", "66 44 0f 3a 17 da 02"},
{"EXTRACTPS $2, X2, (R11)", "66 41 0f 3a 17 13 02"},
{"EXTRACTPS $3, X11, (R11)", "66 45 0f 3a 17 1b 03"},
{"EXTRACTPS $3, X2, DX", "66 0f 3a 17 d2 03"},
{"HADDPD (BX), X11", "66 44 0f 7c 1b"},
{"HADDPD (BX), X2", "66 0f 7c 13"},
{"HADDPD (R11), X11", "66 45 0f 7c 1b"},
{"HADDPD (R11), X2", "66 41 0f 7c 13"},
{"HADDPD X11, X11", "66 45 0f 7c db"},
{"HADDPD X11, X2", "66 41 0f 7c d3"},
{"HADDPD X2, X11", "66 44 0f 7c da"},
{"HADDPD X2, X2", "66 0f 7c d2"},
{"HADDPS (BX), X11", "f2 44 0f 7c 1b"},
{"HADDPS (BX), X2", "f2 0f 7c 13"},
{"HADDPS (R11), X11", "f2 45 0f 7c 1b"},
{"HADDPS (R11), X2", "f2 41 0f 7c 13"},
{"HADDPS X11, X11", "f2 45 0f 7c db"},
{"HADDPS X11, X2", "f2 41 0f 7c d3"},
{"HADDPS X2, X11", "f2 44 0f 7c da"},
{"HADDPS X2, X2", "f2 0f 7c d2"},
{"HSUBPD (BX), X11", "66 44 0f 7d 1b"},
{"HSUBPD (BX), X2", "66 0f 7d 13"},
{"HSUBPD (R11), X11", "66 45 0f 7d 1b"},
{"HSUBPD (R11), X2", "66 41 0f 7d 13"},
{"HSUBPD X11, X11", "66 45 0f 7d db"},
{"HSUBPD X11, X2", "66 41 0f 7d d3"},
{"HSUBPD X2, X11", "66 44 0f 7d da"},
{"HSUBPD X2, X2", "66 0f 7d d2"},
{"HSUBPS (BX), X11", "f2 44 0f 7d 1b"},
{"HSUBPS (BX), X2", "f2 0f 7d 13"},
{"HSUBPS (R11), X11", "f2 45 0f 7d 1b"},
{"HSUBPS (R11), X2", "f2 41 0f 7d 13"},
{"HSUBPS X11, X11", "f2 45 0f 7d db"},
{"HSUBPS X11, X2", "f2 41 0f 7d d3"},
{"HSUBPS X2, X11", "f2 44 0f 7d da"},
{"HSUBPS X2, X2", "f2 0f 7d d2"},
{"INSERTPS $7, (BX), X11", "66 44 0f 3a 21 1b 07"},
{"INSERTPS $7, (BX), X2", "66 0f 3a 21 13 07"},
{"INSERTPS $7, (R11), X11", "66 45 0f 3a 21 1b 07"},
{"INSERTPS $7, (R11), X2", "66 41 0f 3a 21 13 07"},
{"INSERTPS $7, X11, X11", "66 45 0f 3a 21 db 07"},
{"INSERTPS $7, X11, X2", "66 41 0f 3a 21 d3 07"},
{"INSERTPS $7, X2, X11", "66 44 0f 3a 21 da 07"},
{"INSERTPS $7, X2, X2", "66 0f 3a 21 d2 07"},
{"LDDQU (BX), X11", "f2 44 0f f0 1b"},
{"LDDQU (BX), X2", "f2 0f f0 13"},
{"LDDQU (R11), X11", "f2 45 0f f0 1b"},
{"LDDQU (R11), X2", "f2 41 0f f0 13"},
{"MASKMOVOU X11, X11", "66 45 0f f7 db"},
{"MASKMOVOU X11, X2", "66 41 0f f7 d3"},
{"MASKMOVOU X2, X11", "66 44 0f f7 da"},
{"MASKMOVOU X2, X2", "66 0f f7 d2"},
{"MASKMOVQ M2, M2", "0f f7 d2"},
{"MASKMOVQ M2, M3", "0f f7 da"},
{"MASKMOVQ M3, M2", "0f f7 d3"},
{"MASKMOVQ M3, M3", "0f f7 db"},
{"MOVDDUP (BX), X11", "f2 44 0f 12 1b"},
{"MOVDDUP (BX), X2", "f2 0f 12 13"},
{"MOVDDUP (R11), X11", "f2 45 0f 12 1b"},
{"MOVDDUP (R11), X2", "f2 41 0f 12 13"},
{"MOVDDUP X11, X11", "f2 45 0f 12 db"},
{"MOVDDUP X11, X2", "f2 41 0f 12 d3"},
{"MOVDDUP X2, X11", "f2 44 0f 12 da"},
{"MOVDDUP X2, X2", "f2 0f 12 d2"},
{"MOVHLPS X11, X11", "45 0f 12 db"},
{"MOVHLPS X11, X2", "41 0f 12 d3"},
{"MOVHLPS X2, X11", "44 0f 12 da"},
{"MOVHLPS X2, X2", "0f 12 d2"},
{"MOVHPD (BX), X11", "66 44 0f 16 1b"},
{"MOVHPD (BX), X2", "66 0f 16 13"},
{"MOVHPD (R11), X11", "66 45 0f 16 1b"},
{"MOVHPD (R11), X2", "66 41 0f 16 13"},
{"MOVHPD X11, (BX)", "66 44 0f 17 1b"},
{"MOVHPD X11, (R11)", "66 45 0f 17 1b"},
{"MOVHPD X2, (BX)", "66 0f 17 13"},
{"MOVHPD X2, (R11)", "66 41 0f 17 13"},
{"MOVHPS (BX), X11", "44 0f 16 1b"},
{"MOVHPS (BX), X2", "0f 16 13"},
{"MOVHPS (R11), X11", "45 0f 16 1b"},
{"MOVHPS (R11), X2", "41 0f 16 13"},
{"MOVHPS X11, (BX)", "44 0f 17 1b"},
{"MOVHPS X11, (R11)", "45 0f 17 1b"},
{"MOVHPS X2, (BX)", "0f 17 13"},
{"MOVHPS X2, (R11)", "41 0f 17 13"},
{"MOVLHPS X11, X11", "45 0f 16 db"},
{"MOVLHPS X11, X2", "41 0f 16 d3"},
{"MOVLHPS X2, X11", "44 0f 16 da"},
{"MOVLHPS X2, X2", "0f 16 d2"},
{"MOVLPD (BX), X11", "66 44 0f 12 1b"},
{"MOVLPD (BX), X2", "66 0f 12 13"},
{"MOVLPD (R11), X11", "66 45 0f 12 1b"},
{"MOVLPD (R11), X2", "66 41 0f 12 13"},
{"MOVLPD X11, (BX)", "66 44 0f 13 1b"},
{"MOVLPD X11, (R11)", "66 45 0f 13 1b"},
{"MOVLPD X2, (BX)", "66 0f 13 13"},
{"MOVLPD X2, (R11)", "66 41 0f 13 13"},
{"MOVLPS (BX), X11", "44 0f 12 1b"},
{"MOVLPS (BX), X2", "0f 12 13"},
{"MOVLPS (R11), X11", "45 0f 12 1b"},
{"MOVLPS (R11), X2", "41 0f 12 13"},
{"MOVLPS X11, (BX)", "44 0f 13 1b"},
{"MOVLPS X11, (R11)", "45 0f 13 1b"},
{"MOVLPS X2, (BX)", "0f 13 13"},
{"MOVLPS X2, (R11)", "41 0f 13 13"},
{"MOVMSKPD X11, DX", "66 41 0f 50 d3"},
{"MOVMSKPD X11, R11", "66 45 0f 50 db"},
{"MOVMSKPD X2, DX", "66 0f 50 d2"},
{"MOVMSKPD X2, R11", "66 44 0f 50 da"},
{"MOVMSKPS X11, DX", "41 0f 50 d3"},
{"MOVMSKPS X11, R11", "45 0f 50 db"},
{"MOVMSKPS X2, DX", "0f 50 d2"},
{"MOVMSKPS X2, R11", "44 0f 50 da"},
{"MOVNTDQA (BX), X11", "66 44 0f 38 2a 1b"},
{"MOVNTDQA (BX), X2", "66 0f 38 2a 13"},
{"MOVNTDQA (R11), X11", "66 45 0f 38 2a 1b"},
{"MOVNTDQA (R11), X2", "66 41 0f 38 2a 13"},
{"MOVNTIL DX, (BX)", "0f c3 13"},
{"MOVNTIL DX, (R11)", "41 0f c3 13"},
{"MOVNTIL R11, (BX)", "44 0f c3 1b"},
{"MOVNTIL R11, (R11)", "45 0f c3 1b"},
{"MOVNTIQ DX, (BX)", "48 0f c3 13"},
{"MOVNTIQ DX, (R11)", "49 0f c3 13"},
{"MOVNTIQ R11, (BX)", "4c 0f c3 1b"},
{"MOVNTIQ R11, (R11)", "4d 0f c3 1b"},
{"MOVNTO X11, (BX)", "66 44 0f e7 1b"},
{"MOVNTO X11, (R11)", "66 45 0f e7 1b"},
{"MOVNTO X2, (BX)", "66 0f e7 13"},
{"MOVNTO X2, (R11)", "66 41 0f e7 13"},
{"MOVNTPD X11, (BX)", "66 44 0f 2b 1b"},
{"MOVNTPD X11, (R11)", "66 45 0f 2b 1b"},
{"MOVNTPD X2, (BX)", "66 0f 2b 13"},
{"MOVNTPD X2, (R11)", "66 41 0f 2b 13"},
{"MOVNTPS X11, (BX)", "44 0f 2b 1b"},
{"MOVNTPS X11, (R11)", "45 0f 2b 1b"},
{"MOVNTPS X2, (BX)", "0f 2b 13"},
{"MOVNTPS X2, (R11)", "41 0f 2b 13"},
{"MOVNTQ M2, (BX)", "0f e7 13"},
{"MOVNTQ M2, (R11)", "41 0f e7 13"},
{"MOVNTQ M3, (BX)", "0f e7 1b"},
{"MOVNTQ M3, (R11)", "41 0f e7 1b"},
{"MOVQ $-1070935975390360081, DX", "48 ba ef cd ab 89 67 45 23 f1"},
{"MOVQ $-1070935975390360081, R11", "49 bb ef cd ab 89 67 45 23 f1"},
{"MOVQ $-249346713, (BX)", "48 c7 03 67 45 23 f1"},
{"MOVQ $-249346713, (R11)", "49 c7 03 67 45 23 f1"},
{"MOVQ $-249346713, DX", "48 c7 c2 67 45 23 f1"},
{"MOVQ $-249346713, R11", "49 c7 c3 67 45 23 f1"},
{"MOVQ $2147483648, DX", "ba 00 00 00 80"},
{"MOVQ $2147483648, R11", "41 bb 00 00 00 80"},
{"MOVQ $305419896, DX", "ba 78 56 34 12"},
{"MOVQ $305419896, R11", "41 bb 78 56 34 12"},
{"MOVQ $4294967295, DX", "ba ff ff ff ff"},
{"MOVQ $4294967295, R11", "41 bb ff ff ff ff"},
{"MOVQ (BX), DX", "48 8b 13"},
{"MOVQ (BX), M2", "0f 6f 13"},
{"MOVQ (BX), M3", "0f 6f 1b"},
{"MOVQ (BX), R11", "4c 8b 1b"},
{"MOVQ (BX), X11", "f3 44 0f 7e 1b"},
{"MOVQ (BX), X2", "f3 0f 7e 13"},
{"MOVQ (R11), DX", "49 8b 13"},
{"MOVQ (R11), M2", "41 0f 6f 13"},
{"MOVQ (R11), M3", "41 0f 6f 1b"},
{"MOVQ (R11), R11", "4d 8b 1b"},
{"MOVQ (R11), X11", "f3 45 0f 7e 1b"},
{"MOVQ (R11), X2", "f3 41 0f 7e 13"},
{"MOVQ CR2, DX", "0f 20 d2"},
{"MOVQ CR2, R11", "41 0f 20 d3"},
{"MOVQ CR3, DX", "0f 20 da"},
{"MOVQ CR3, R11", "41 0f 20 db"},
{"MOVQ DR2, DX", "0f 21 d2"},
{"MOVQ DR2, R11", "41 0f 21 d3"},
{"MOVQ DR3, DX", "0f 21 da"},
{"MOVQ DR3, R11", "41 0f 21 db"},
{"MOVQ DX, (BX)", "48 89 13"},
{"MOVQ DX, (R11)", "49 89 13"},
{"MOVQ DX, CR2", "0f 22 d2"},
{"MOVQ DX, CR3", "0f 22 da"},
{"MOVQ DX, DR2", "0f 23 d2"},
{"MOVQ DX, DR3", "0f 23 da"},
{"MOVQ DX, DX", "48 89 d2"},
{"MOVQ DX, M2", "48 0f 6e d2"},
{"MOVQ DX, M3", "48 0f 6e da"},
{"MOVQ DX, R11", "49 89 d3"},
{"MOVQ DX, X11", "66 4c 0f 6e da"},
{"MOVQ DX, X2", "66 48 0f 6e d2"},
{"MOVQ M2, (BX)", "0f 7f 13"},
{"MOVQ M2, (R11)", "41 0f 7f 13"},
{"MOVQ M2, DX", "48 0f 7e d2"},
{"MOVQ M2, R11", "49 0f 7e d3"},
{"MOVQ M3, (BX)", "0f 7f 1b"},
{"MOVQ M3, (R11)", "41 0f 7f 1b"},
{"MOVQ M3, DX", "48 0f 7e da"},
{"MOVQ M3, R11", "49 0f 7e db"},
{"MOVQ R11, (BX)", "4c 89 1b"},
{"MOVQ R11, (R11)", "4d 89 1b"},
{"MOVQ R11, CR2", "41 0f 22 d3"},
{"MOVQ R11, CR3", "41 0f 22 db"},
{"MOVQ R11, DR2", "41 0f 23 d3"},
{"MOVQ R11, DR3", "41 0f 23 db"},
{"MOVQ R11, DX", "4c 89 da"},
{"MOVQ R11, M2", "49 0f 6e d3"},
{"MOVQ R11, M3", "49 0f 6e db"},
{"MOVQ R11, R11", "4d 89 db"},
{"MOVQ R11, X11", "66 4d 0f 6e db"},
{"MOVQ R11, X2", "66 49 0f 6e d3"},
{"MOVQ X11, (BX)", "66 44 0f d6 1b"},
{"MOVQ X11, (R11)", "66 45 0f d6 1b"},
{"MOVQ X11, DX", "66 4c 0f 7e da"},
{"MOVQ X11, M2", "f2 41 0f d6 d3"},
{"MOVQ X11, M3", "f2 41 0f d6 db"},
{"MOVQ X11, R11", "66 4d 0f 7e db"},
{"MOVQ X11, X11", "f3 45 0f 7e db"},
{"MOVQ X11, X2", "f3 41 0f 7e d3"},
{"MOVQ X2, (BX)", "66 0f d6 13"},
{"MOVQ X2, (R11)", "66 41 0f d6 13"},
{"MOVQ X2, DX", "66 48 0f 7e d2"},
{"MOVQ X2, M2", "f2 0f d6 d2"},
{"MOVQ X2, M3", "f2 0f d6 da"},
{"MOVQ X2, R11", "66 49 0f 7e d3"},
{"MOVQ X2, X11", "f3 44 0f 7e da"},
{"MOVQ X2, X2", "f3 0f 7e d2"},
{"MOVQOZX M2, X11", "f3 44 0f d6 da"},
{"MOVQOZX M2, X2", "f3 0f d6 d2"},
{"MOVQOZX M3, X11", "f3 44 0f d6 db"},
{"MOVQOZX M3, X2", "f3 0f d6 d3"},
{"MOVSHDUP (BX), X11", "f3 44 0f 16 1b"},
{"MOVSHDUP (BX), X2", "f3 0f 16 13"},
{"MOVSHDUP (R11), X11", "f3 45 0f 16 1b"},
{"MOVSHDUP (R11), X2", "f3 41 0f 16 13"},
{"MOVSHDUP X11, X11", "f3 45 0f 16 db"},
{"MOVSHDUP X11, X2", "f3 41 0f 16 d3"},
{"MOVSHDUP X2, X11", "f3 44 0f 16 da"},
{"MOVSHDUP X2, X2", "f3 0f 16 d2"},
{"MOVSLDUP (BX), X11", "f3 44 0f 12 1b"},
{"MOVSLDUP (BX), X2", "f3 0f 12 13"},
{"MOVSLDUP (R11), X11", "f3 45 0f 12 1b"},
{"MOVSLDUP (R11), X2", "f3 41 0f 12 13"},
{"MOVSLDUP X11, X11", "f3 45 0f 12 db"},
{"MOVSLDUP X11, X2", "f3 41 0f 12 d3"},
{"MOVSLDUP X2, X11", "f3 44 0f 12 da"},
{"MOVSLDUP X2, X2", "f3 0f 12 d2"},
{"MOVSWW (BX), DX", "66 0f bf 13"},
{"MOVSWW (BX), R11", "66 44 0f bf 1b"},
{"MOVSWW (R11), DX", "66 41 0f bf 13"},
{"MOVSWW (R11), R11", "66 45 0f bf 1b"},
{"MOVSWW DX, DX", "66 0f bf d2"},
{"MOVSWW DX, R11", "66 44 0f bf da"},
{"MOVSWW R11, DX", "66 41 0f bf d3"},
{"MOVSWW R11, R11", "66 45 0f bf db"},
{"MOVZWW (BX), DX", "66 0f b7 13"},
{"MOVZWW (BX), R11", "66 44 0f b7 1b"},
{"MOVZWW (R11), DX", "66 41 0f b7 13"},
{"MOVZWW (R11), R11", "66 45 0f b7 1b"},
{"MOVZWW DX, DX", "66 0f b7 d2"},
{"MOVZWW DX, R11", "66 44 0f b7 da"},
{"MOVZWW R11, DX", "66 41 0f b7 d3"},
{"MOVZWW R11, R11", "66 45 0f b7 db"},
{"MPSADBW $7, (BX), X11", "66 44 0f 3a 42 1b 07"},
{"MPSADBW $7, (BX), X2", "66 0f 3a 42 13 07"},
{"MPSADBW $7, (R11), X11", "66 45 0f 3a 42 1b 07"},
{"MPSADBW $7, (R11), X2", "66 41 0f 3a 42 13 07"},
{"MPSADBW $7, X11, X11", "66 45 0f 3a 42 db 07"},
{"MPSADBW $7, X11, X2", "66 41 0f 3a 42 d3 07"},
{"MPSADBW $7, X2, X11", "66 44 0f 3a 42 da 07"},
{"MPSADBW $7, X2, X2", "66 0f 3a 42 d2 07"},
{"PABSB (BX), X11", "66 44 0f 38 1c 1b"},
{"PABSB (BX), X2", "66 0f 38 1c 13"},
{"PABSB (R11), X11", "66 45 0f 38 1c 1b"},
{"PABSB (R11), X2", "66 41 0f 38 1c 13"},
{"PABSB X11, X11", "66 45 0f 38 1c db"},
{"PABSB X11, X2", "66 41 0f 38 1c d3"},
{"PABSB X2, X11", "66 44 0f 38 1c da"},
{"PABSB X2, X2", "66 0f 38 1c d2"},
{"PABSD (BX), X11", "66 44 0f 38 1e 1b"},
{"PABSD (BX), X2", "66 0f 38 1e 13"},
{"PABSD (R11), X11", "66 45 0f 38 1e 1b"},
{"PABSD (R11), X2", "66 41 0f 38 1e 13"},
{"PABSD X11, X11", "66 45 0f 38 1e db"},
{"PABSD X11, X2", "66 41 0f 38 1e d3"},
{"PABSD X2, X11", "66 44 0f 38 1e da"},
{"PABSD X2, X2", "66 0f 38 1e d2"},
{"PABSW (BX), X11", "66 44 0f 38 1d 1b"},
{"PABSW (BX), X2", "66 0f 38 1d 13"},
{"PABSW (R11), X11", "66 45 0f 38 1d 1b"},
{"PABSW (R11), X2", "66 41 0f 38 1d 13"},
{"PABSW X11, X11", "66 45 0f 38 1d db"},
{"PABSW X11, X2", "66 41 0f 38 1d d3"},
{"PABSW X2, X11", "66 44 0f 38 1d da"},
{"PABSW X2, X2", "66 0f 38 1d d2"},
{"PACKSSLW (BX), M2", "0f 6b 13"},
{"PACKSSLW (BX), M3", "0f 6b 1b"},
{"PACKSSLW (BX), X11", "66 44 0f 6b 1b"},
{"PACKSSLW (BX), X2", "66 0f 6b 13"},
{"PACKSSLW (R11), M2", "41 0f 6b 13"},
{"PACKSSLW (R11), M3", "41 0f 6b 1b"},
{"PACKSSLW (R11), X11", "66 45 0f 6b 1b"},
{"PACKSSLW (R11), X2", "66 41 0f 6b 13"},
{"PACKSSLW M2, M2", "0f 6b d2"},
{"PACKSSLW M2, M3", "0f 6b da"},
{"PACKSSLW M3, M2", "0f 6b d3"},
{"PACKSSLW M3, M3", "0f 6b db"},
{"PACKSSLW X11, X11", "66 45 0f 6b db"},
{"PACKSSLW X11, X2", "66 41 0f 6b d3"},
{"PACKSSLW X2, X11", "66 44 0f 6b da"},
{"PACKSSLW X2, X2", "66 0f 6b d2"},
{"PACKSSWB (BX), M2", "0f 63 13"},
{"PACKSSWB (BX), M3", "0f 63 1b"},
{"PACKSSWB (BX), X11", "66 44 0f 63 1b"},
{"PACKSSWB (BX), X2", "66 0f 63 13"},
{"PACKSSWB (R11), M2", "41 0f 63 13"},
{"PACKSSWB (R11), M3", "41 0f 63 1b"},
{"PACKSSWB (R11), X11", "66 45 0f 63 1b"},
{"PACKSSWB (R11), X2", "66 41 0f 63 13"},
{"PACKSSWB M2, M2", "0f 63 d2"},
{"PACKSSWB M2, M3", "0f 63 da"},
{"PACKSSWB M3, M2", "0f 63 d3"},
{"PACKSSWB M3, M3", "0f 63 db"},
{"PACKSSWB X11, X11", "66 45 0f 63 db"},
{"PACKSSWB X11, X2", "66 41 0f 63 d3"},
{"PACKSSWB X2, X11", "66 44 0f 63 da"},
{"PACKSSWB X2, X2", "66 0f 63 d2"},
{"PACKUSDW (BX), X11", "66 44 0f 38 2b 1b"},
{"PACKUSDW (BX), X2", "66 0f 38 2b 13"},
{"PACKUSDW (R11), X11", "66 45 0f 38 2b 1b"},
{"PACKUSDW (R11), X2", "66 41 0f 38 2b 13"},
{"PACKUSDW X11, X11", "66 45 0f 38 2b db"},
{"PACKUSDW X11, X2", "66 41 0f 38 2b d3"},
{"PACKUSDW X2, X11", "66 44 0f 38 2b da"},
{"PACKUSDW X2, X2", "66 0f 38 2b d2"},
{"PACKUSWB (BX), M2", "0f 67 13"},
{"PACKUSWB (BX), M3", "0f 67 1b"},
{"PACKUSWB (BX), X11", "66 44 0f 67 1b"},
{"PACKUSWB (BX), X2", "66 0f 67 13"},
{"PACKUSWB (R11), M2", "41 0f 67 13"},
{"PACKUSWB (R11), M3", "41 0f 67 1b"},
{"PACKUSWB (R11), X11", "66 45 0f 67 1b"},
{"PACKUSWB (R11), X2", "66 41 0f 67 13"},
{"PACKUSWB M2, M2", "0f 67 d2"},
{"PACKUSWB M2, M3", "0f 67 da"},
{"PACKUSWB M3, M2", "0f 67 d3"},
{"PACKUSWB M3, M3", "0f 67 db"},
{"PACKUSWB X11, X11", "66 45 0f 67 db"},
{"PACKUSWB X11, X2", "66 41 0f 67 d3"},
{"PACKUSWB X2, X11", "66 44 0f 67 da"},
{"PACKUSWB X2, X2", "66 0f 67 d2"},
{"PADDSB (BX), M2", "0f ec 13"},
{"PADDSB (BX), M3", "0f ec 1b"},
{"PADDSB (BX), X11", "66 44 0f ec 1b"},
{"PADDSB (BX), X2", "66 0f ec 13"},
{"PADDSB (R11), M2", "41 0f ec 13"},
{"PADDSB (R11), M3", "41 0f ec 1b"},
{"PADDSB (R11), X11", "66 45 0f ec 1b"},
{"PADDSB (R11), X2", "66 41 0f ec 13"},
{"PADDSB M2, M2", "0f ec d2"},
{"PADDSB M2, M3", "0f ec da"},
{"PADDSB M3, M2", "0f ec d3"},
{"PADDSB M3, M3", "0f ec db"},
{"PADDSB X11, X11", "66 45 0f ec db"},
{"PADDSB X11, X2", "66 41 0f ec d3"},
{"PADDSB X2, X11", "66 44 0f ec da"},
{"PADDSB X2, X2", "66 0f ec d2"},
{"PADDSW (BX), M2", "0f ed 13"},
{"PADDSW (BX), M3", "0f ed 1b"},
{"PADDSW (BX), X11", "66 44 0f ed 1b"},
{"PADDSW (BX), X2", "66 0f ed 13"},
{"PADDSW (R11), M2", "41 0f ed 13"},
{"PADDSW (R11), M3", "41 0f ed 1b"},
{"PADDSW (R11), X11", "66 45 0f ed 1b"},
{"PADDSW (R11), X2", "66 41 0f ed 13"},
{"PADDSW M2, M2", "0f ed d2"},
{"PADDSW M2, M3", "0f ed da"},
{"PADDSW M3, M2", "0f ed d3"},
{"PADDSW M3, M3", "0f ed db"},
{"PADDSW X11, X11", "66 45 0f ed db"},
{"PADDSW X11, X2", "66 41 0f ed d3"},
{"PADDSW X2, X11", "66 44 0f ed da"},
{"PADDSW X2, X2", "66 0f ed d2"},
{"PADDUSB (BX), M2", "0f dc 13"},
{"PADDUSB (BX), M3", "0f dc 1b"},
{"PADDUSB (BX), X11", "66 44 0f dc 1b"},
{"PADDUSB (BX), X2", "66 0f dc 13"},
{"PADDUSB (R11), M2", "41 0f dc 13"},
{"PADDUSB (R11), M3", "41 0f dc 1b"},
{"PADDUSB (R11), X11", "66 45 0f dc 1b"},
{"PADDUSB (R11), X2", "66 41 0f dc 13"},
{"PADDUSB M2, M2", "0f dc d2"},
{"PADDUSB M2, M3", "0f dc da"},
{"PADDUSB M3, M2", "0f dc d3"},
{"PADDUSB M3, M3", "0f dc db"},
{"PADDUSB X11, X11", "66 45 0f dc db"},
{"PADDUSB X11, X2", "66 41 0f dc d3"},
{"PADDUSB X2, X11", "66 44 0f dc da"},
{"PADDUSB X2, X2", "66 0f dc d2"},
{"PADDUSW (BX), M2", "0f dd 13"},
{"PADDUSW (BX), M3", "0f dd 1b"},
{"PADDUSW (BX), X11", "66 44 0f dd 1b"},
{"PADDUSW (BX), X2", "66 0f dd 13"},
{"PADDUSW (R11), M2", "41 0f dd 13"},
{"PADDUSW (R11), M3", "41 0f dd 1b"},
{"PADDUSW (R11), X11", "66 45 0f dd 1b"},
{"PADDUSW (R11), X2", "66 41 0f dd 13"},
{"PADDUSW M2, M2", "0f dd d2"},
{"PADDUSW M2, M3", "0f dd da"},
{"PADDUSW M3, M2", "0f dd d3"},
{"PADDUSW M3, M3", "0f dd db"},
{"PADDUSW X11, X11", "66 45 0f dd db"},
{"PADDUSW X11, X2", "66 41 0f dd d3"},
{"PADDUSW X2, X11", "66 44 0f dd da"},
{"PADDUSW X2, X2", "66 0f dd d2"},
{"PAVGB (BX), M2", "0f e0 13"},
{"PAVGB (BX), M3", "0f e0 1b"},
{"PAVGB (BX), X11", "66 44 0f e0 1b"},
{"PAVGB (BX), X2", "66 0f e0 13"},
{"PAVGB (R11), M2", "41 0f e0 13"},
{"PAVGB (R11), M3", "41 0f e0 1b"},
{"PAVGB (R11), X11", "66 45 0f e0 1b"},
{"PAVGB (R11), X2", "66 41 0f e0 13"},
{"PAVGB M2, M2", "0f e0 d2"},
{"PAVGB M2, M3", "0f e0 da"},
{"PAVGB M3, M2", "0f e0 d3"},
{"PAVGB M3, M3", "0f e0 db"},
{"PAVGB X11, X11", "66 45 0f e0 db"},
{"PAVGB X11, X2", "66 41 0f e0 d3"},
{"PAVGB X2, X11", "66 44 0f e0 da"},
{"PAVGB X2, X2", "66 0f e0 d2"},
{"PAVGW (BX), M2", "0f e3 13"},
{"PAVGW (BX), M3", "0f e3 1b"},
{"PAVGW (BX), X11", "66 44 0f e3 1b"},
{"PAVGW (BX), X2", "66 0f e3 13"},
{"PAVGW (R11), M2", "41 0f e3 13"},
{"PAVGW (R11), M3", "41 0f e3 1b"},
{"PAVGW (R11), X11", "66 45 0f e3 1b"},
{"PAVGW (R11), X2", "66 41 0f e3 13"},
{"PAVGW M2, M2", "0f e3 d2"},
{"PAVGW M2, M3", "0f e3 da"},
{"PAVGW M3, M2", "0f e3 d3"},
{"PAVGW M3, M3", "0f e3 db"},
{"PAVGW X11, X11", "66 45 0f e3 db"},
{"PAVGW X11, X2", "66 41 0f e3 d3"},
{"PAVGW X2, X11", "66 44 0f e3 da"},
{"PAVGW X2, X2", "66 0f e3 d2"},
{"PBLENDVB X0, (BX), X11", "66 44 0f 38 10 1b"},
{"PBLENDVB X0, (BX), X2", "66 0f 38 10 13"},
{"PBLENDVB X0, (R11), X11", "66 45 0f 38 10 1b"},
{"PBLENDVB X0, (R11), X2", "66 41 0f 38 10 13"},
{"PBLENDVB X0, X11, X11", "66 45 0f 38 10 db"},
{"PBLENDVB X0, X11, X2", "66 41 0f 38 10 d3"},
{"PBLENDVB X0, X2, X11", "66 44 0f 38 10 da"},
{"PBLENDVB X0, X2, X2", "66 0f 38 10 d2"},
{"PCMPEQQ (BX), X11", "66 44 0f 38 29 1b"},
{"PCMPEQQ (BX), X2", "66 0f 38 29 13"},
{"PCMPEQQ (R11), X11", "66 45 0f 38 29 1b"},
{"PCMPEQQ (R11), X2", "66 41 0f 38 29 13"},
{"PCMPEQQ X11, X11", "66 45 0f 38 29 db"},
{"PCMPEQQ X11, X2", "66 41 0f 38 29 d3"},
{"PCMPEQQ X2, X11", "66 44 0f 38 29 da"},
{"PCMPEQQ X2, X2", "66 0f 38 29 d2"},
{"PCMPESTRM $7, (BX), X11", "66 44 0f 3a 60 1b 07"},
{"PCMPESTRM $7, (BX), X2", "66 0f 3a 60 13 07"},
{"PCMPESTRM $7, (R11), X11", "66 45 0f 3a 60 1b 07"},
{"PCMPESTRM $7, (R11), X2", "66 41 0f 3a 60 13 07"},
{"PCMPESTRM $7, X11, X11", "66 45 0f 3a 60 db 07"},
{"PCMPESTRM $7, X11, X2", "66 41 0f 3a 60 d3 07"},
{"PCMPESTRM $7, X2, X11", "66 44 0f 3a 60 da 07"},
{"PCMPESTRM $7, X2, X2", "66 0f 3a 60 d2 07"},
{"PCMPGTL (BX), M2", "0f 66 13"},
{"PCMPGTL (BX), M3", "0f 66 1b"},
{"PCMPGTL (BX), X11", "66 44 0f 66 1b"},
{"PCMPGTL (BX), X2", "66 0f 66 13"},
{"PCMPGTL (R11), M2", "41 0f 66 13"},
{"PCMPGTL (R11), M3", "41 0f 66 1b"},
{"PCMPGTL (R11), X11", "66 45 0f 66 1b"},
{"PCMPGTL (R11), X2", "66 41 0f 66 13"},
{"PCMPGTL M2, M2", "0f 66 d2"},
{"PCMPGTL M2, M3", "0f 66 da"},
{"PCMPGTL M3, M2", "0f 66 d3"},
{"PCMPGTL M3, M3", "0f 66 db"},
{"PCMPGTL X11, X11", "66 45 0f 66 db"},
{"PCMPGTL X11, X2", "66 41 0f 66 d3"},
{"PCMPGTL X2, X11", "66 44 0f 66 da"},
{"PCMPGTL X2, X2", "66 0f 66 d2"},
{"PCMPGTQ (BX), X11", "66 44 0f 38 37 1b"},
{"PCMPGTQ (BX), X2", "66 0f 38 37 13"},
{"PCMPGTQ (R11), X11", "66 45 0f 38 37 1b"},
{"PCMPGTQ (R11), X2", "66 41 0f 38 37 13"},
{"PCMPGTQ X11, X11", "66 45 0f 38 37 db"},
{"PCMPGTQ X11, X2", "66 41 0f 38 37 d3"},
{"PCMPGTQ X2, X11", "66 44 0f 38 37 da"},
{"PCMPGTQ X2, X2", "66 0f 38 37 d2"},
{"PCMPISTRI $7, (BX), X11", "66 44 0f 3a 63 1b 07"},
{"PCMPISTRI $7, (BX), X2", "66 0f 3a 63 13 07"},
{"PCMPISTRI $7, (R11), X11", "66 45 0f 3a 63 1b 07"},
{"PCMPISTRI $7, (R11), X2", "66 41 0f 3a 63 13 07"},
{"PCMPISTRI $7, X11, X11", "66 45 0f 3a 63 db 07"},
{"PCMPISTRI $7, X11, X2", "66 41 0f 3a 63 d3 07"},
{"PCMPISTRI $7, X2, X11", "66 44 0f 3a 63 da 07"},
{"PCMPISTRI $7, X2, X2", "66 0f 3a 63 d2 07"},
{"PCMPISTRM $7, (BX), X11", "66 44 0f 3a 62 1b 07"},
{"PCMPISTRM $7, (BX), X2", "66 0f 3a 62 13 07"},
{"PCMPISTRM $7, (R11), X11", "66 45 0f 3a 62 1b 07"},
{"PCMPISTRM $7, (R11), X2", "66 41 0f 3a 62 13 07"},
{"PCMPISTRM $7, X11, X11", "66 45 0f 3a 62 db 07"},
{"PCMPISTRM $7, X11, X2", "66 41 0f 3a 62 d3 07"},
{"PCMPISTRM $7, X2, X11", "66 44 0f 3a 62 da 07"},
{"PCMPISTRM $7, X2, X2", "66 0f 3a 62 d2 07"},
{"PHADDD (BX), M2", "0f 38 02 13"},
{"PHADDD (BX), M3", "0f 38 02 1b"},
{"PHADDD (BX), X11", "66 44 0f 38 02 1b"},
{"PHADDD (BX), X2", "66 0f 38 02 13"},
{"PHADDD (R11), M2", "41 0f 38 02 13"},
{"PHADDD (R11), M3", "41 0f 38 02 1b"},
{"PHADDD (R11), X11", "66 45 0f 38 02 1b"},
{"PHADDD (R11), X2", "66 41 0f 38 02 13"},
{"PHADDD M2, M2", "0f 38 02 d2"},
{"PHADDD M2, M3", "0f 38 02 da"},
{"PHADDD M3, M2", "0f 38 02 d3"},
{"PHADDD M3, M3", "0f 38 02 db"},
{"PHADDD X11, X11", "66 45 0f 38 02 db"},
{"PHADDD X11, X2", "66 41 0f 38 02 d3"},
{"PHADDD X2, X11", "66 44 0f 38 02 da"},
{"PHADDD X2, X2", "66 0f 38 02 d2"},
{"PHADDSW (BX), X11", "66 44 0f 38 03 1b"},
{"PHADDSW (BX), X2", "66 0f 38 03 13"},
{"PHADDSW (R11), X11", "66 45 0f 38 03 1b"},
{"PHADDSW (R11), X2", "66 41 0f 38 03 13"},
{"PHADDSW X11, X11", "66 45 0f 38 03 db"},
{"PHADDSW X11, X2", "66 41 0f 38 03 d3"},
{"PHADDSW X2, X11", "66 44 0f 38 03 da"},
{"PHADDSW X2, X2", "66 0f 38 03 d2"},
{"PHADDW (BX), X11", "66 44 0f 38 01 1b"},
{"PHADDW (BX), X2", "66 0f 38 01 13"},
{"PHADDW (R11), X11", "66 45 0f 38 01 1b"},
{"PHADDW (R11), X2", "66 41 0f 38 01 13"},
{"PHADDW X11, X11", "66 45 0f 38 01 db"},
{"PHADDW X11, X2", "66 41 0f 38 01 d3"},
{"PHADDW X2, X11", "66 44 0f 38 01 da"},
{"PHADDW X2, X2", "66 0f 38 01 d2"},
{"PHMINPOSUW (BX), X11", "66 44 0f 38 41 1b"},
{"PHMINPOSUW (BX), X2", "66 0f 38 41 13"},
{"PHMINPOSUW (R11), X11", "66 45 0f 38 41 1b"},
{"PHMINPOSUW (R11), X2", "66 41 0f 38 41 13"},
{"PHMINPOSUW X11, X11", "66 45 0f 38 41 db"},
{"PHMINPOSUW X11, X2", "66 41 0f 38 41 d3"},
{"PHMINPOSUW X2, X11", "66 44 0f 38 41 da"},
{"PHMINPOSUW X2, X2", "66 0f 38 41 d2"},
{"PHSUBD (BX), X11", "66 44 0f 38 06 1b"},
{"PHSUBD (BX), X2", "66 0f 38 06 13"},
{"PHSUBD (R11), X11", "66 45 0f 38 06 1b"},
{"PHSUBD (R11), X2", "66 41 0f 38 06 13"},
{"PHSUBD X11, X11", "66 45 0f 38 06 db"},
{"PHSUBD X11, X2", "66 41 0f 38 06 d3"},
{"PHSUBD X2, X11", "66 44 0f 38 06 da"},
{"PHSUBD X2, X2", "66 0f 38 06 d2"},
{"PHSUBSW (BX), X11", "66 44 0f 38 07 1b"},
{"PHSUBSW (BX), X2", "66 0f 38 07 13"},
{"PHSUBSW (R11), X11", "66 45 0f 38 07 1b"},
{"PHSUBSW (R11), X2", "66 41 0f 38 07 13"},
{"PHSUBSW X11, X11", "66 45 0f 38 07 db"},
{"PHSUBSW X11, X2", "66 41 0f 38 07 d3"},
{"PHSUBSW X2, X11", "66 44 0f 38 07 da"},
{"PHSUBSW X2, X2", "66 0f 38 07 d2"},
{"PHSUBW (BX), X11", "66 44 0f 38 05 1b"},
{"PHSUBW (BX), X2", "66 0f 38 05 13"},
{"PHSUBW (R11), X11", "66 45 0f 38 05 1b"},
{"PHSUBW (R11), X2", "66 41 0f 38 05 13"},
{"PHSUBW X11, X11", "66 45 0f 38 05 db"},
{"PHSUBW X11, X2", "66 41 0f 38 05 d3"},
{"PHSUBW X2, X11", "66 44 0f 38 05 da"},
{"PHSUBW X2, X2", "66 0f 38 05 d2"},
{"PMADDUBSW (BX), X11", "66 44 0f 38 04 1b"},
{"PMADDUBSW (BX), X2", "66 0f 38 04 13"},
{"PMADDUBSW (R11), X11", "66 45 0f 38 04 1b"},
{"PMADDUBSW (R11), X2", "66 41 0f 38 04 13"},
{"PMADDUBSW X11, X11", "66 45 0f 38 04 db"},
{"PMADDUBSW X11, X2", "66 41 0f 38 04 d3"},
{"PMADDUBSW X2, X11", "66 44 0f 38 04 da"},
{"PMADDUBSW X2, X2", "66 0f 38 04 d2"},
{"PMADDWL (BX), M2", "0f f5 13"},
{"PMADDWL (BX), M3", "0f f5 1b"},
{"PMADDWL (BX), X11", "66 44 0f f5 1b"},
{"PMADDWL (BX), X2", "66 0f f5 13"},
{"PMADDWL (R11), M2", "41 0f f5 13"},
{"PMADDWL (R11), M3", "41 0f f5 1b"},
{"PMADDWL (R11), X11", "66 45 0f f5 1b"},
{"PMADDWL (R11), X2", "66 41 0f f5 13"},
{"PMADDWL M2, M2", "0f f5 d2"},
{"PMADDWL M2, M3", "0f f5 da"},
{"PMADDWL M3, M2", "0f f5 d3"},
{"PMADDWL M3, M3", "0f f5 db"},
{"PMADDWL X11, X11", "66 45 0f f5 db"},
{"PMADDWL X11, X2", "66 41 0f f5 d3"},
{"PMADDWL X2, X11", "66 44 0f f5 da"},
{"PMADDWL X2, X2", "66 0f f5 d2"},
{"PMAXSB (BX), X11", "66 44 0f 38 3c 1b"},
{"PMAXSB (BX), X2", "66 0f 38 3c 13"},
{"PMAXSB (R11), X11", "66 45 0f 38 3c 1b"},
{"PMAXSB (R11), X2", "66 41 0f 38 3c 13"},
{"PMAXSB X11, X11", "66 45 0f 38 3c db"},
{"PMAXSB X11, X2", "66 41 0f 38 3c d3"},
{"PMAXSB X2, X11", "66 44 0f 38 3c da"},
{"PMAXSB X2, X2", "66 0f 38 3c d2"},
{"PMAXSD (BX), X11", "66 44 0f 38 3d 1b"},
{"PMAXSD (BX), X2", "66 0f 38 3d 13"},
{"PMAXSD (R11), X11", "66 45 0f 38 3d 1b"},
{"PMAXSD (R11), X2", "66 41 0f 38 3d 13"},
{"PMAXSD X11, X11", "66 45 0f 38 3d db"},
{"PMAXSD X11, X2", "66 41 0f 38 3d d3"},
{"PMAXSD X2, X11", "66 44 0f 38 3d da"},
{"PMAXSD X2, X2", "66 0f 38 3d d2"},
{"PMAXSW (BX), X11", "66 44 0f ee 1b"},
{"PMAXSW (BX), X2", "66 0f ee 13"},
{"PMAXSW (R11), X11", "66 45 0f ee 1b"},
{"PMAXSW (R11), X2", "66 41 0f ee 13"},
{"PMAXSW X11, X11", "66 45 0f ee db"},
{"PMAXSW X11, X2", "66 41 0f ee d3"},
{"PMAXSW X2, X11", "66 44 0f ee da"},
{"PMAXSW X2, X2", "66 0f ee d2"},
{"PMAXUB (BX), X11", "66 44 0f de 1b"},
{"PMAXUB (BX), X2", "66 0f de 13"},
{"PMAXUB (R11), X11", "66 45 0f de 1b"},
{"PMAXUB (R11), X2", "66 41 0f de 13"},
{"PMAXUB X11, X11", "66 45 0f de db"},
{"PMAXUB X11, X2", "66 41 0f de d3"},
{"PMAXUB X2, X11", "66 44 0f de da"},
{"PMAXUB X2, X2", "66 0f de d2"},
{"PMAXUD (BX), X11", "66 44 0f 38 3f 1b"},
{"PMAXUD (BX), X2", "66 0f 38 3f 13"},
{"PMAXUD (R11), X11", "66 45 0f 38 3f 1b"},
{"PMAXUD (R11), X2", "66 41 0f 38 3f 13"},
{"PMAXUD X11, X11", "66 45 0f 38 3f db"},
{"PMAXUD X11, X2", "66 41 0f 38 3f d3"},
{"PMAXUD X2, X11", "66 44 0f 38 3f da"},
{"PMAXUD X2, X2", "66 0f 38 3f d2"},
{"PMAXUW (BX), X11", "66 44 0f 38 3e 1b"},
{"PMAXUW (BX), X2", "66 0f 38 3e 13"},
{"PMAXUW (R11), X11", "66 45 0f 38 3e 1b"},
{"PMAXUW (R11), X2", "66 41 0f 38 3e 13"},
{"PMAXUW X11, X11", "66 45 0f 38 3e db"},
{"PMAXUW X11, X2", "66 41 0f 38 3e d3"},
{"PMAXUW X2, X11", "66 44 0f 38 3e da"},
{"PMAXUW X2, X2", "66 0f 38 3e d2"},
{"PMINSB (BX), X11", "66 44 0f 38 38 1b"},
{"PMINSB (BX), X2", "66 0f 38 38 13"},
{"PMINSB (R11), X11", "66 45 0f 38 38 1b"},
{"PMINSB (R11), X2", "66 41 0f 38 38 13"},
{"PMINSB X11, X11", "66 45 0f 38 38 db"},
{"PMINSB X11, X2", "66 41 0f 38 38 d3"},
{"PMINSB X2, X11", "66 44 0f 38 38 da"},
{"PMINSB X2, X2", "66 0f 38 38 d2"},
{"PMINSD (BX), X11", "66 44 0f 38 39 1b"},
{"PMINSD (BX), X2", "66 0f 38 39 13"},
{"PMINSD (R11), X11", "66 45 0f 38 39 1b"},
{"PMINSD (R11), X2", "66 41 0f 38 39 13"},
{"PMINSD X11, X11", "66 45 0f 38 39 db"},
{"PMINSD X11, X2", "66 41 0f 38 39 d3"},
{"PMINSD X2, X11", "66 44 0f 38 39 da"},
{"PMINSD X2, X2", "66 0f 38 39 d2"},
{"PMINSW (BX), X11", "66 44 0f ea 1b"},
{"PMINSW (BX), X2", "66 0f ea 13"},
{"PMINSW (R11), X11", "66 45 0f ea 1b"},
{"PMINSW (R11), X2", "66 41 0f ea 13"},
{"PMINSW X11, X11", "66 45 0f ea db"},
{"PMINSW X11, X2", "66 41 0f ea d3"},
{"PMINSW X2, X11", "66 44 0f ea da"},
{"PMINSW X2, X2", "66 0f ea d2"},
{"PMINUB (BX), X11", "66 44 0f da 1b"},
{"PMINUB (BX), X2", "66 0f da 13"},
{"PMINUB (R11), X11", "66 45 0f da 1b"},
{"PMINUB (R11), X2", "66 41 0f da 13"},
{"PMINUB X11, X11", "66 45 0f da db"},
{"PMINUB X11, X2", "66 41 0f da d3"},
{"PMINUB X2, X11", "66 44 0f da da"},
{"PMINUB X2, X2", "66 0f da d2"},
{"PMINUD (BX), X11", "66 44 0f 38 3b 1b"},
{"PMINUD (BX), X2", "66 0f 38 3b 13"},
{"PMINUD (R11), X11", "66 45 0f 38 3b 1b"},
{"PMINUD (R11), X2", "66 41 0f 38 3b 13"},
{"PMINUD X11, X11", "66 45 0f 38 3b db"},
{"PMINUD X11, X2", "66 41 0f 38 3b d3"},
{"PMINUD X2, X11", "66 44 0f 38 3b da"},
{"PMINUD X2, X2", "66 0f 38 3b d2"},
{"PMINUW (BX), X11", "66 44 0f 38 3a 1b"},
{"PMINUW (BX), X2", "66 0f 38 3a 13"},
{"PMINUW (R11), X11", "66 45 0f 38 3a 1b"},
{"PMINUW (R11), X2", "66 41 0f 38 3a 13"},
{"PMINUW X11, X11", "66 45 0f 38 3a db"},
{"PMINUW X11, X2", "66 41 0f 38 3a d3"},
{"PMINUW X2, X11", "66 44 0f 38 3a da"},
{"PMINUW X2, X2", "66 0f 38 3a d2"},
{"PMOVMSKB M2, DX", "0f d7 d2"},
{"PMOVMSKB M2, R11", "44 0f d7 da"},
{"PMOVMSKB M3, DX", "0f d7 d3"},
{"PMOVMSKB M3, R11", "44 0f d7 db"},
{"PMOVMSKB X11, DX", "66 41 0f d7 d3"},
{"PMOVMSKB X11, R11", "66 45 0f d7 db"},
{"PMOVMSKB X2, DX", "66 0f d7 d2"},
{"PMOVMSKB X2, R11", "66 44 0f d7 da"},
{"PMOVSXBD (BX), X11", "66 44 0f 38 21 1b"},
{"PMOVSXBD (BX), X2", "66 0f 38 21 13"},
{"PMOVSXBD (R11), X11", "66 45 0f 38 21 1b"},
{"PMOVSXBD (R11), X2", "66 41 0f 38 21 13"},
{"PMOVSXBD X11, X11", "66 45 0f 38 21 db"},
{"PMOVSXBD X11, X2", "66 41 0f 38 21 d3"},
{"PMOVSXBD X2, X11", "66 44 0f 38 21 da"},
{"PMOVSXBD X2, X2", "66 0f 38 21 d2"},
{"PMOVSXBQ (BX), X11", "66 44 0f 38 22 1b"},
{"PMOVSXBQ (BX), X2", "66 0f 38 22 13"},
{"PMOVSXBQ (R11), X11", "66 45 0f 38 22 1b"},
{"PMOVSXBQ (R11), X2", "66 41 0f 38 22 13"},
{"PMOVSXBQ X11, X11", "66 45 0f 38 22 db"},
{"PMOVSXBQ X11, X2", "66 41 0f 38 22 d3"},
{"PMOVSXBQ X2, X11", "66 44 0f 38 22 da"},
{"PMOVSXBQ X2, X2", "66 0f 38 22 d2"},
{"PMOVSXBW (BX), X11", "66 44 0f 38 20 1b"},
{"PMOVSXBW (BX), X2", "66 0f 38 20 13"},
{"PMOVSXBW (R11), X11", "66 45 0f 38 20 1b"},
{"PMOVSXBW (R11), X2", "66 41 0f 38 20 13"},
{"PMOVSXBW X11, X11", "66 45 0f 38 20 db"},
{"PMOVSXBW X11, X2", "66 41 0f 38 20 d3"},
{"PMOVSXBW X2, X11", "66 44 0f 38 20 da"},
{"PMOVSXBW X2, X2", "66 0f 38 20 d2"},
{"PMOVSXDQ (BX), X11", "66 44 0f 38 25 1b"},
{"PMOVSXDQ (BX), X2", "66 0f 38 25 13"},
{"PMOVSXDQ (R11), X11", "66 45 0f 38 25 1b"},
{"PMOVSXDQ (R11), X2", "66 41 0f 38 25 13"},
{"PMOVSXDQ X11, X11", "66 45 0f 38 25 db"},
{"PMOVSXDQ X11, X2", "66 41 0f 38 25 d3"},
{"PMOVSXDQ X2, X11", "66 44 0f 38 25 da"},
{"PMOVSXDQ X2, X2", "66 0f 38 25 d2"},
{"PMOVSXWD (BX), X11", "66 44 0f 38 23 1b"},
{"PMOVSXWD (BX), X2", "66 0f 38 23 13"},
{"PMOVSXWD (R11), X11", "66 45 0f 38 23 1b"},
{"PMOVSXWD (R11), X2", "66 41 0f 38 23 13"},
{"PMOVSXWD X11, X11", "66 45 0f 38 23 db"},
{"PMOVSXWD X11, X2", "66 41 0f 38 23 d3"},
{"PMOVSXWD X2, X11", "66 44 0f 38 23 da"},
{"PMOVSXWD X2, X2", "66 0f 38 23 d2"},
{"PMOVSXWQ (BX), X11", "66 44 0f 38 24 1b"},
{"PMOVSXWQ (BX), X2", "66 0f 38 24 13"},
{"PMOVSXWQ (R11), X11", "66 45 0f 38 24 1b"},
{"PMOVSXWQ (R11), X2", "66 41 0f 38 24 13"},
{"PMOVSXWQ X11, X11", "66 45 0f 38 24 db"},
{"PMOVSXWQ X11, X2", "66 41 0f 38 24 d3"},
{"PMOVSXWQ X2, X11", "66 44 0f 38 24 da"},
{"PMOVSXWQ X2, X2", "66 0f 38 24 d2"},
{"PMOVZXBD (BX), X11", "66 44 0f 38 31 1b"},
{"PMOVZXBD (BX), X2", "66 0f 38 31 13"},
{"PMOVZXBD (R11), X11", "66 45 0f 38 31 1b"},
{"PMOVZXBD (R11), X2", "66 41 0f 38 31 13"},
{"PMOVZXBD X11, X11", "66 45 0f 38 31 db"},
{"PMOVZXBD X11, X2", "66 41 0f 38 31 d3"},
{"PMOVZXBD X2, X11", "66 44 0f 38 31 da"},
{"PMOVZXBD X2, X2", "66 0f 38 31 d2"},
{"PMOVZXBQ (BX), X11", "66 44 0f 38 32 1b"},
{"PMOVZXBQ (BX), X2", "66 0f 38 32 13"},
{"PMOVZXBQ (R11), X11", "66 45 0f 38 32 1b"},
{"PMOVZXBQ (R11), X2", "66 41 0f 38 32 13"},
{"PMOVZXBQ X11, X11", "66 45 0f 38 32 db"},
{"PMOVZXBQ X11, X2", "66 41 0f 38 32 d3"},
{"PMOVZXBQ X2, X11", "66 44 0f 38 32 da"},
{"PMOVZXBQ X2, X2", "66 0f 38 32 d2"},
{"PMOVZXBW (BX), X11", "66 44 0f 38 30 1b"},
{"PMOVZXBW (BX), X2", "66 0f 38 30 13"},
{"PMOVZXBW (R11), X11", "66 45 0f 38 30 1b"},
{"PMOVZXBW (R11), X2", "66 41 0f 38 30 13"},
{"PMOVZXBW X11, X11", "66 45 0f 38 30 db"},
{"PMOVZXBW X11, X2", "66 41 0f 38 30 d3"},
{"PMOVZXBW X2, X11", "66 44 0f 38 30 da"},
{"PMOVZXBW X2, X2", "66 0f 38 30 d2"},
{"PMOVZXDQ (BX), X11", "66 44 0f 38 35 1b"},
{"PMOVZXDQ (BX), X2", "66 0f 38 35 13"},
{"PMOVZXDQ (R11), X11", "66 45 0f 38 35 1b"},
{"PMOVZXDQ (R11), X2", "66 41 0f 38 35 13"},
{"PMOVZXDQ X11, X11", "66 45 0f 38 35 db"},
{"PMOVZXDQ X11, X2", "66 41 0f 38 35 d3"},
{"PMOVZXDQ X2, X11", "66 44 0f 38 35 da"},
{"PMOVZXDQ X2, X2", "66 0f 38 35 d2"},
{"PMOVZXWD (BX), X11", "66 44 0f 38 33 1b"},
{"PMOVZXWD (BX), X2", "66 0f 38 33 13"},
{"PMOVZXWD (R11), X11", "66 45 0f 38 33 1b"},
{"PMOVZXWD (R11), X2", "66 41 0f 38 33 13"},
{"PMOVZXWD X11, X11", "66 45 0f 38 33 db"},
{"PMOVZXWD X11, X2", "66 41 0f 38 33 d3"},
{"PMOVZXWD X2, X11", "66 44 0f 38 33 da"},
{"PMOVZXWD X2, X2", "66 0f 38 33 d2"},
{"PMOVZXWQ (BX), X11", "66 44 0f 38 34 1b"},
{"PMOVZXWQ (BX), X2", "66 0f 38 34 13"},
{"PMOVZXWQ (R11), X11", "66 45 0f 38 34 1b"},
{"PMOVZXWQ (R11), X2", "66 41 0f 38 34 13"},
{"PMOVZXWQ X11, X11", "66 45 0f 38 34 db"},
{"PMOVZXWQ X11, X2", "66 41 0f 38 34 d3"},
{"PMOVZXWQ X2, X11", "66 44 0f 38 34 da"},
{"PMOVZXWQ X2, X2", "66 0f 38 34 d2"},
{"PMULDQ (BX), X11", "66 44 0f 38 28 1b"},
{"PMULDQ (BX), X2", "66 0f 38 28 13"},
{"PMULDQ (R11), X11", "66 45 0f 38 28 1b"},
{"PMULDQ (R11), X2", "66 41 0f 38 28 13"},
{"PMULDQ X11, X11", "66 45 0f 38 28 db"},
{"PMULDQ X11, X2", "66 41 0f 38 28 d3"},
{"PMULDQ X2, X11", "66 44 0f 38 28 da"},
{"PMULDQ X2, X2", "66 0f 38 28 d2"},
{"PMULHRSW (BX), X11", "66 44 0f 38 0b 1b"},
{"PMULHRSW (BX), X2", "66 0f 38 0b 13"},
{"PMULHRSW (R11), X11", "66 45 0f 38 0b 1b"},
{"PMULHRSW (R11), X2", "66 41 0f 38 0b 13"},
{"PMULHRSW X11, X11", "66 45 0f 38 0b db"},
{"PMULHRSW X11, X2", "66 41 0f 38 0b d3"},
{"PMULHRSW X2, X11", "66 44 0f 38 0b da"},
{"PMULHRSW X2, X2", "66 0f 38 0b d2"},
{"PMULHUW (BX), M2", "0f e4 13"},
{"PMULHUW (BX), M3", "0f e4 1b"},
{"PMULHUW (BX), X11", "66 44 0f e4 1b"},
{"PMULHUW (BX), X2", "66 0f e4 13"},
{"PMULHUW (R11), M2", "41 0f e4 13"},
{"PMULHUW (R11), M3", "41 0f e4 1b"},
{"PMULHUW (R11), X11", "66 45 0f e4 1b"},
{"PMULHUW (R11), X2", "66 41 0f e4 13"},
{"PMULHUW M2, M2", "0f e4 d2"},
{"PMULHUW M2, M3", "0f e4 da"},
{"PMULHUW M3, M2", "0f e4 d3"},
{"PMULHUW M3, M3", "0f e4 db"},
{"PMULHUW X11, X11", "66 45 0f e4 db"},
{"PMULHUW X11, X2", "66 41 0f e4 d3"},
{"PMULHUW X2, X11", "66 44 0f e4 da"},
{"PMULHUW X2, X2", "66 0f e4 d2"},
{"PMULHW (BX), M2", "0f e5 13"},
{"PMULHW (BX), M3", "0f e5 1b"},
{"PMULHW (BX), X11", "66 44 0f e5 1b"},
{"PMULHW (BX), X2", "66 0f e5 13"},
{"PMULHW (R11), M2", "41 0f e5 13"},
{"PMULHW (R11), M3", "41 0f e5 1b"},
{"PMULHW (R11), X11", "66 45 0f e5 1b"},
{"PMULHW (R11), X2", "66 41 0f e5 13"},
{"PMULHW M2, M2", "0f e5 d2"},
{"PMULHW M2, M3", "0f e5 da"},
{"PMULHW M3, M2", "0f e5 d3"},
{"PMULHW M3, M3", "0f e5 db"},
{"PMULHW X11, X11", "66 45 0f e5 db"},
{"PMULHW X11, X2", "66 41 0f e5 d3"},
{"PMULHW X2, X11", "66 44 0f e5 da"},
{"PMULHW X2, X2", "66 0f e5 d2"},
{"PMULLD (BX), X11", "66 44 0f 38 40 1b"},
{"PMULLD (BX), X2", "66 0f 38 40 13"},
{"PMULLD (R11), X11", "66 45 0f 38 40 1b"},
{"PMULLD (R11), X2", "66 41 0f 38 40 13"},
{"PMULLD X11, X11", "66 45 0f 38 40 db"},
{"PMULLD X11, X2", "66 41 0f 38 40 d3"},
{"PMULLD X2, X11", "66 44 0f 38 40 da"},
{"PMULLD X2, X2", "66 0f 38 40 d2"},
{"PMULLW (BX), M2", "0f d5 13"},
{"PMULLW (BX), M3", "0f d5 1b"},
{"PMULLW (BX), X11", "66 44 0f d5 1b"},
{"PMULLW (BX), X2", "66 0f d5 13"},
{"PMULLW (R11), M2", "41 0f d5 13"},
{"PMULLW (R11), M3", "41 0f d5 1b"},
{"PMULLW (R11), X11", "66 45 0f d5 1b"},
{"PMULLW (R11), X2", "66 41 0f d5 13"},
{"PMULLW M2, M2", "0f d5 d2"},
{"PMULLW M2, M3", "0f d5 da"},
{"PMULLW M3, M2", "0f d5 d3"},
{"PMULLW M3, M3", "0f d5 db"},
{"PMULLW X11, X11", "66 45 0f d5 db"},
{"PMULLW X11, X2", "66 41 0f d5 d3"},
{"PMULLW X2, X11", "66 44 0f d5 da"},
{"PMULLW X2, X2", "66 0f d5 d2"},
{"PMULULQ (BX), M2", "0f f4 13"},
{"PMULULQ (BX), M3", "0f f4 1b"},
{"PMULULQ (BX), X11", "66 44 0f f4 1b"},
{"PMULULQ (BX), X2", "66 0f f4 13"},
{"PMULULQ (R11), M2", "41 0f f4 13"},
{"PMULULQ (R11), M3", "41 0f f4 1b"},
{"PMULULQ (R11), X11", "66 45 0f f4 1b"},
{"PMULULQ (R11), X2", "66 41 0f f4 13"},
{"PMULULQ M2, M2", "0f f4 d2"},
{"PMULULQ M2, M3", "0f f4 da"},
{"PMULULQ M3, M2", "0f f4 d3"},
{"PMULULQ M3, M3", "0f f4 db"},
{"PMULULQ X11, X11", "66 45 0f f4 db"},
{"PMULULQ X11, X2", "66 41 0f f4 d3"},
{"PMULULQ X2, X11", "66 44 0f f4 da"},
{"PMULULQ X2, X2", "66 0f f4 d2"},
{"PSADBW (BX), X11", "66 44 0f f6 1b"},
{"PSADBW (BX), X2", "66 0f f6 13"},
{"PSADBW (R11), X11", "66 45 0f f6 1b"},
{"PSADBW (R11), X2", "66 41 0f f6 13"},
{"PSADBW X11, X11", "66 45 0f f6 db"},
{"PSADBW X11, X2", "66 41 0f f6 d3"},
{"PSADBW X2, X11", "66 44 0f f6 da"},
{"PSADBW X2, X2", "66 0f f6 d2"},
{"PSHUFW $7, (BX), M2", "0f 70 13 07"},
{"PSHUFW $7, (BX), M3", "0f 70 1b 07"},
{"PSHUFW $7, (R11), M2", "41 0f 70 13 07"},
{"PSHUFW $7, (R11), M3", "41 0f 70 1b 07"},
{"PSHUFW $7, M2, M2", "0f 70 d2 07"},
{"PSHUFW $7, M2, M3", "0f 70 da 07"},
{"PSHUFW $7, M3, M2", "0f 70 d3 07"},
{"PSHUFW $7, M3, M3", "0f 70 db 07"},
{"PSIGNB (BX), X11", "66 44 0f 38 08 1b"},
{"PSIGNB (BX), X2", "66 0f 38 08 13"},
{"PSIGNB (R11), X11", "66 45 0f 38 08 1b"},
{"PSIGNB (R11), X2", "66 41 0f 38 08 13"},
{"PSIGNB X11, X11", "66 45 0f 38 08 db"},
{"PSIGNB X11, X2", "66 41 0f 38 08 d3"},
{"PSIGNB X2, X11", "66 44 0f 38 08 da"},
{"PSIGNB X2, X2", "66 0f 38 08 d2"},
{"PSIGND (BX), X11", "66 44 0f 38 0a 1b"},
{"PSIGND (BX), X2", "66 0f 38 0a 13"},
{"PSIGND (R11), X11", "66 45 0f 38 0a 1b"},
{"PSIGND (R11), X2", "66 41 0f 38 0a 13"},
{"PSIGND X11, X11", "66 45 0f 38 0a db"},
{"PSIGND X11, X2", "66 41 0f 38 0a d3"},
{"PSIGND X2, X11", "66 44 0f 38 0a da"},
{"PSIGND X2, X2", "66 0f 38 0a d2"},
{"PSIGNW (BX), X11", "66 44 0f 38 09 1b"},
{"PSIGNW (BX), X2", "66 0f 38 09 13"},
{"PSIGNW (R11), X11", "66 45 0f 38 09 1b"},
{"PSIGNW (R11), X2", "66 41 0f 38 09 13"},
{"PSIGNW X11, X11", "66 45 0f 38 09 db"},
{"PSIGNW X11, X2", "66 41 0f 38 09 d3"},
{"PSIGNW X2, X11", "66 44 0f 38 09 da"},
{"PSIGNW X2, X2", "66 0f 38 09 d2"},
{"PSLLL $7, M2", "0f 72 f2 07"},
{"PSLLL $7, M3", "0f 72 f3 07"},
{"PSLLL $7, X11", "66 41 0f 72 f3 07"},
{"PSLLL $7, X2", "66 0f 72 f2 07"},
{"PSLLL (BX), M2", "0f f2 13"},
{"PSLLL (BX), M3", "0f f2 1b"},
{"PSLLL (BX), X11", "66 44 0f f2 1b"},
{"PSLLL (BX), X2", "66 0f f2 13"},
{"PSLLL (R11), M2", "41 0f f2 13"},
{"PSLLL (R11), M3", "41 0f f2 1b"},
{"PSLLL (R11), X11", "66 45 0f f2 1b"},
{"PSLLL (R11), X2", "66 41 0f f2 13"},
{"PSLLL M2, M2", "0f f2 d2"},
{"PSLLL M2, M3", "0f f2 da"},
{"PSLLL M3, M2", "0f f2 d3"},
{"PSLLL M3, M3", "0f f2 db"},
{"PSLLL X11, X11", "66 45 0f f2 db"},
{"PSLLL X11, X2", "66 41 0f f2 d3"},
{"PSLLL X2, X11", "66 44 0f f2 da"},
{"PSLLL X2, X2", "66 0f f2 d2"},
{"PSLLO $7, X11", "66 41 0f 73 fb 07"},
{"PSLLO $7, X2", "66 0f 73 fa 07"},
{"PSLLQ $7, M2", "0f 73 f2 07"},
{"PSLLQ $7, M3", "0f 73 f3 07"},
{"PSLLQ $7, X11", "66 41 0f 73 f3 07"},
{"PSLLQ $7, X2", "66 0f 73 f2 07"},
{"PSLLQ (BX), M2", "0f f3 13"},
{"PSLLQ (BX), M3", "0f f3 1b"},
{"PSLLQ (BX), X11", "66 44 0f f3 1b"},
{"PSLLQ (BX), X2", "66 0f f3 13"},
{"PSLLQ (R11), M2", "41 0f f3 13"},
{"PSLLQ (R11), M3", "41 0f f3 1b"},
{"PSLLQ (R11), X11", "66 45 0f f3 1b"},
{"PSLLQ (R11), X2", "66 41 0f f3 13"},
{"PSLLQ M2, M2", "0f f3 d2"},
{"PSLLQ M2, M3", "0f f3 da"},
{"PSLLQ M3, M2", "0f f3 d3"},
{"PSLLQ M3, M3", "0f f3 db"},
{"PSLLQ X11, X11", "66 45 0f f3 db"},
{"PSLLQ X11, X2", "66 41 0f f3 d3"},
{"PSLLQ X2, X11", "66 44 0f f3 da"},
{"PSLLQ X2, X2", "66 0f f3 d2"},
{"PSLLW $7, M2", "0f 71 f2 07"},
{"PSLLW $7, M3", "0f 71 f3 07"},
{"PSLLW $7, X11", "66 41 0f 71 f3 07"},
{"PSLLW $7, X2", "66 0f 71 f2 07"},
{"PSLLW (BX), M2", "0f f1 13"},
{"PSLLW (BX), M3", "0f f1 1b"},
{"PSLLW (BX), X11", "66 44 0f f1 1b"},
{"PSLLW (BX), X2", "66 0f f1 13"},
{"PSLLW (R11), M2", "41 0f f1 13"},
{"PSLLW (R11), M3", "41 0f f1 1b"},
{"PSLLW (R11), X11", "66 45 0f f1 1b"},
{"PSLLW (R11), X2", "66 41 0f f1 13"},
{"PSLLW M2, M2", "0f f1 d2"},
{"PSLLW M2, M3", "0f f1 da"},
{"PSLLW M3, M2", "0f f1 d3"},
{"PSLLW M3, M3", "0f f1 db"},
{"PSLLW X11, X11", "66 45 0f f1 db"},
{"PSLLW X11, X2", "66 41 0f f1 d3"},
{"PSLLW X2, X11", "66 44 0f f1 da"},
{"PSLLW X2, X2", "66 0f f1 d2"},
{"PSRAL $7, M2", "0f 72 e2 07"},
{"PSRAL $7, M3", "0f 72 e3 07"},
{"PSRAL $7, X11", "66 41 0f 72 e3 07"},
{"PSRAL $7, X2", "66 0f 72 e2 07"},
{"PSRAL (BX), M2", "0f e2 13"},
{"PSRAL (BX), M3", "0f e2 1b"},
{"PSRAL (BX), X11", "66 44 0f e2 1b"},
{"PSRAL (BX), X2", "66 0f e2 13"},
{"PSRAL (R11), M2", "41 0f e2 13"},
{"PSRAL (R11), M3", "41 0f e2 1b"},
{"PSRAL (R11), X11", "66 45 0f e2 1b"},
{"PSRAL (R11), X2", "66 41 0f e2 13"},
{"PSRAL M2, M2", "0f e2 d2"},
{"PSRAL M2, M3", "0f e2 da"},
{"PSRAL M3, M2", "0f e2 d3"},
{"PSRAL M3, M3", "0f e2 db"},
{"PSRAL X11, X11", "66 45 0f e2 db"},
{"PSRAL X11, X2", "66 41 0f e2 d3"},
{"PSRAL X2, X11", "66 44 0f e2 da"},
{"PSRAL X2, X2", "66 0f e2 d2"},
{"PSRAW $7, M2", "0f 71 e2 07"},
{"PSRAW $7, M3", "0f 71 e3 07"},
{"PSRAW $7, X11", "66 41 0f 71 e3 07"},
{"PSRAW $7, X2", "66 0f 71 e2 07"},
{"PSRAW (BX), M2", "0f e1 13"},
{"PSRAW (BX), M3", "0f e1 1b"},
{"PSRAW (BX), X11", "66 44 0f e1 1b"},
{"PSRAW (BX), X2", "66 0f e1 13"},
{"PSRAW (R11), M2", "41 0f e1 13"},
{"PSRAW (R11), M3", "41 0f e1 1b"},
{"PSRAW (R11), X11", "66 45 0f e1 1b"},
{"PSRAW (R11), X2", "66 41 0f e1 13"},
{"PSRAW M2, M2", "0f e1 d2"},
{"PSRAW M2, M3", "0f e1 da"},
{"PSRAW M3, M2", "0f e1 d3"},
{"PSRAW M3, M3", "0f e1 db"},
{"PSRAW X11, X11", "66 45 0f e1 db"},
{"PSRAW X11, X2", "66 41 0f e1 d3"},
{"PSRAW X2, X11", "66 44 0f e1 da"},
{"PSRAW X2, X2", "66 0f e1 d2"},
{"PSRLL $7, M2", "0f 72 d2 07"},
{"PSRLL $7, M3", "0f 72 d3 07"},
{"PSRLL $7, X11", "66 41 0f 72 d3 07"},
{"PSRLL $7, X2", "66 0f 72 d2 07"},
{"PSRLL (BX), M2", "0f d2 13"},
{"PSRLL (BX), M3", "0f d2 1b"},
{"PSRLL (BX), X11", "66 44 0f d2 1b"},
{"PSRLL (BX), X2", "66 0f d2 13"},
{"PSRLL (R11), M2", "41 0f d2 13"},
{"PSRLL (R11), M3", "41 0f d2 1b"},
{"PSRLL (R11), X11", "66 45 0f d2 1b"},
{"PSRLL (R11), X2", "66 41 0f d2 13"},
{"PSRLL M2, M2", "0f d2 d2"},
{"PSRLL M2, M3", "0f d2 da"},
{"PSRLL M3, M2", "0f d2 d3"},
{"PSRLL M3, M3", "0f d2 db"},
{"PSRLL X11, X11", "66 45 0f d2 db"},
{"PSRLL X11, X2", "66 41 0f d2 d3"},
{"PSRLL X2, X11", "66 44 0f d2 da"},
{"PSRLL X2, X2", "66 0f d2 d2"},
{"PSRLO $7, X11", "66 41 0f 73 db 07"},
{"PSRLO $7, X2", "66 0f 73 da 07"},
{"PSRLQ $7, M2", "0f 73 d2 07"},
{"PSRLQ $7, M3", "0f 73 d3 07"},
{"PSRLQ $7, X11", "66 41 0f 73 d3 07"},
{"PSRLQ $7, X2", "66 0f 73 d2 07"},
{"PSRLQ (BX), M2", "0f d3 13"},
{"PSRLQ (BX), M3", "0f d3 1b"},
{"PSRLQ (BX), X11", "66 44 0f d3 1b"},
{"PSRLQ (BX), X2", "66 0f d3 13"},
{"PSRLQ (R11), M2", "41 0f d3 13"},
{"PSRLQ (R11), M3", "41 0f d3 1b"},
{"PSRLQ (R11), X11", "66 45 0f d3 1b"},
{"PSRLQ (R11), X2", "66 41 0f d3 13"},
{"PSRLQ M2, M2", "0f d3 d2"},
{"PSRLQ M2, M3", "0f d3 da"},
{"PSRLQ M3, M2", "0f d3 d3"},
{"PSRLQ M3, M3", "0f d3 db"},
{"PSRLQ X11, X11", "66 45 0f d3 db"},
{"PSRLQ X11, X2", "66 41 0f d3 d3"},
{"PSRLQ X2, X11", "66 44 0f d3 da"},
{"PSRLQ X2, X2", "66 0f d3 d2"},
{"PSRLW $7, M2", "0f 71 d2 07"},
{"PSRLW $7, M3", "0f 71 d3 07"},
{"PSRLW $7, X11", "66 41 0f 71 d3 07"},
{"PSRLW $7, X2", "66 0f 71 d2 07"},
{"PSRLW (BX), M2", "0f d1 13"},
{"PSRLW (BX), M3", "0f d1 1b"},
{"PSRLW (BX), X11", "66 44 0f d1 1b"},
{"PSRLW (BX), X2", "66 0f d1 13"},
{"PSRLW (R11), M2", "41 0f d1 13"},
{"PSRLW (R11), M3", "41 0f d1 1b"},
{"PSRLW (R11), X11", "66 45 0f d1 1b"},
{"PSRLW (R11), X2", "66 41 0f d1 13"},
{"PSRLW M2, M2", "0f d1 d2"},
{"PSRLW M2, M3", "0f d1 da"},
{"PSRLW M3, M2", "0f d1 d3"},
{"PSRLW M3, M3", "0f d1 db"},
{"PSRLW X11, X11", "66 45 0f d1 db"},
{"PSRLW X11, X2", "66 41 0f d1 d3"},
{"PSRLW X2, X11", "66 44 0f d1 da"},
{"PSRLW X2, X2", "66 0f d1 d2"},
{"PSUBSB (BX), X11", "66 44 0f e8 1b"},
{"PSUBSB (BX), X2", "66 0f e8 13"},
{"PSUBSB (R11), X11", "66 45 0f e8 1b"},
{"PSUBSB (R11), X2", "66 41 0f e8 13"},
{"PSUBSB X11, X11", "66 45 0f e8 db"},
{"PSUBSB X11, X2", "66 41 0f e8 d3"},
{"PSUBSB X2, X11", "66 44 0f e8 da"},
{"PSUBSB X2, X2", "66 0f e8 d2"},
{"PSUBSW (BX), X11", "66 44 0f e9 1b"},
{"PSUBSW (BX), X2", "66 0f e9 13"},
{"PSUBSW (R11), X11", "66 45 0f e9 1b"},
{"PSUBSW (R11), X2", "66 41 0f e9 13"},
{"PSUBSW X11, X11", "66 45 0f e9 db"},
{"PSUBSW X11, X2", "66 41 0f e9 d3"},
{"PSUBSW X2, X11", "66 44 0f e9 da"},
{"PSUBSW X2, X2", "66 0f e9 d2"},
{"PSUBUSB (BX), X11", "66 44 0f d8 1b"},
{"PSUBUSB (BX), X2", "66 0f d8 13"},
{"PSUBUSB (R11), X11", "66 45 0f d8 1b"},
{"PSUBUSB (R11), X2", "66 41 0f d8 13"},
{"PSUBUSB X11, X11", "66 45 0f d8 db"},
{"PSUBUSB X11, X2", "66 41 0f d8 d3"},
{"PSUBUSB X2, X11", "66 44 0f d8 da"},
{"PSUBUSB X2, X2", "66 0f d8 d2"},
{"PSUBUSW (BX), X11", "66 44 0f d9 1b"},
{"PSUBUSW (BX), X2", "66 0f d9 13"},
{"PSUBUSW (R11), X11", "66 45 0f d9 1b"},
{"PSUBUSW (R11), X2", "66 41 0f d9 13"},
{"PSUBUSW X11, X11", "66 45 0f d9 db"},
{"PSUBUSW X11, X2", "66 41 0f d9 d3"},
{"PSUBUSW X2, X11", "66 44 0f d9 da"},
{"PSUBUSW X2, X2", "66 0f d9 d2"},
{"PTEST (BX), X11", "66 44 0f 38 17 1b"},
{"PTEST (BX), X2", "66 0f 38 17 13"},
{"PTEST (R11), X11", "66 45 0f 38 17 1b"},
{"PTEST (R11), X2", "66 41 0f 38 17 13"},
{"PTEST X11, X11", "66 45 0f 38 17 db"},
{"PTEST X11, X2", "66 41 0f 38 17 d3"},
{"PTEST X2, X11", "66 44 0f 38 17 da"},
{"PTEST X2, X2", "66 0f 38 17 d2"},
{"PUNPCKHBW (BX), M2", "0f 68 13"},
{"PUNPCKHBW (BX), M3", "0f 68 1b"},
{"PUNPCKHBW (BX), X11", "66 44 0f 68 1b"},
{"PUNPCKHBW (BX), X2", "66 0f 68 13"},
{"PUNPCKHBW (R11), M2", "41 0f 68 13"},
{"PUNPCKHBW (R11), M3", "41 0f 68 1b"},
{"PUNPCKHBW (R11), X11", "66 45 0f 68 1b"},
{"PUNPCKHBW (R11), X2", "66 41 0f 68 13"},
{"PUNPCKHBW M2, M2", "0f 68 d2"},
{"PUNPCKHBW M2, M3", "0f 68 da"},
{"PUNPCKHBW M3, M2", "0f 68 d3"},
{"PUNPCKHBW M3, M3", "0f 68 db"},
{"PUNPCKHBW X11, X11", "66 45 0f 68 db"},
{"PUNPCKHBW X11, X2", "66 41 0f 68 d3"},
{"PUNPCKHBW X2, X11", "66 44 0f 68 da"},
{"PUNPCKHBW X2, X2", "66 0f 68 d2"},
{"PUNPCKHLQ (BX), M2", "0f 6a 13"},
{"PUNPCKHLQ (BX), M3", "0f 6a 1b"},
{"PUNPCKHLQ (BX), X11", "66 44 0f 6a 1b"},
{"PUNPCKHLQ (BX), X2", "66 0f 6a 13"},
{"PUNPCKHLQ (R11), M2", "41 0f 6a 13"},
{"PUNPCKHLQ (R11), M3", "41 0f 6a 1b"},
{"PUNPCKHLQ (R11), X11", "66 45 0f 6a 1b"},
{"PUNPCKHLQ (R11), X2", "66 41 0f 6a 13"},
{"PUNPCKHLQ M2, M2", "0f 6a d2"},
{"PUNPCKHLQ M2, M3", "0f 6a da"},
{"PUNPCKHLQ M3, M2", "0f 6a d3"},
{"PUNPCKHLQ M3, M3", "0f 6a db"},
{"PUNPCKHLQ X11, X11", "66 45 0f 6a db"},
{"PUNPCKHLQ X11, X2", "66 41 0f 6a d3"},
{"PUNPCKHLQ X2, X11", "66 44 0f 6a da"},
{"PUNPCKHLQ X2, X2", "66 0f 6a d2"},
{"PUNPCKHQDQ (BX), X11", "66 44 0f 6d 1b"},
{"PUNPCKHQDQ (BX), X2", "66 0f 6d 13"},
{"PUNPCKHQDQ (R11), X11", "66 45 0f 6d 1b"},
{"PUNPCKHQDQ (R11), X2", "66 41 0f 6d 13"},
{"PUNPCKHQDQ X11, X11", "66 45 0f 6d db"},
{"PUNPCKHQDQ X11, X2", "66 41 0f 6d d3"},
{"PUNPCKHQDQ X2, X11", "66 44 0f 6d da"},
{"PUNPCKHQDQ X2, X2", "66 0f 6d d2"},
{"PUNPCKHWL (BX), M2", "0f 69 13"},
{"PUNPCKHWL (BX), M3", "0f 69 1b"},
{"PUNPCKHWL (BX), X11", "66 44 0f 69 1b"},
{"PUNPCKHWL (BX), X2", "66 0f 69 13"},
{"PUNPCKHWL (R11), M2", "41 0f 69 13"},
{"PUNPCKHWL (R11), M3", "41 0f 69 1b"},
{"PUNPCKHWL (R11), X11", "66 45 0f 69 1b"},
{"PUNPCKHWL (R11), X2", "66 41 0f 69 13"},
{"PUNPCKHWL M2, M2", "0f 69 d2"},
{"PUNPCKHWL M2, M3", "0f 69 da"},
{"PUNPCKHWL M3, M2", "0f 69 d3"},
{"PUNPCKHWL M3, M3", "0f 69 db"},
{"PUNPCKHWL X11, X11", "66 45 0f 69 db"},
{"PUNPCKHWL X11, X2", "66 41 0f 69 d3"},
{"PUNPCKHWL X2, X11", "66 44 0f 69 da"},
{"PUNPCKHWL X2, X2", "66 0f 69 d2"},
{"PUNPCKLLQ (BX), M2", "0f 62 13"},
{"PUNPCKLLQ (BX), M3", "0f 62 1b"},
{"PUNPCKLLQ (BX), X11", "66 44 0f 62 1b"},
{"PUNPCKLLQ (BX), X2", "66 0f 62 13"},
{"PUNPCKLLQ (R11), M2", "41 0f 62 13"},
{"PUNPCKLLQ (R11), M3", "41 0f 62 1b"},
{"PUNPCKLLQ (R11), X11", "66 45 0f 62 1b"},
{"PUNPCKLLQ (R11), X2", "66 41 0f 62 13"},
{"PUNPCKLLQ M2, M2", "0f 62 d2"},
{"PUNPCKLLQ M2, M3", "0f 62 da"},
{"PUNPCKLLQ M3, M2", "0f 62 d3"},
{"PUNPCKLLQ M3, M3", "0f 62 db"},
{"PUNPCKLLQ X11, X11", "66 45 0f 62 db"},
{"PUNPCKLLQ X11, X2", "66 41 0f 62 d3"},
{"PUNPCKLLQ X2, X11", "66 44 0f 62 da"},
{"PUNPCKLLQ X2, X2", "66 0f 62 d2"},
{"PUNPCKLQDQ (BX), X11", "66 44 0f 6c 1b"},
{"PUNPCKLQDQ (BX), X2", "66 0f 6c 13"},
{"PUNPCKLQDQ (R11), X11", "66 45 0f 6c 1b"},
{"PUNPCKLQDQ (R11), X2", "66 41 0f 6c 13"},
{"PUNPCKLQDQ X11, X11", "66 45 0f 6c db"},
{"PUNPCKLQDQ X11, X2", "66 41 0f 6c d3"},
{"PUNPCKLQDQ X2, X11", "66 44 0f 6c da"},
{"PUNPCKLQDQ X2, X2", "66 0f 6c d2"},
{"PUNPCKLWL (BX), M2", "0f 61 13"},
{"PUNPCKLWL (BX), M3", "0f 61 1b"},
{"PUNPCKLWL (BX), X11", "66 44 0f 61 1b"},
{"PUNPCKLWL (BX), X2", "66 0f 61 13"},
{"PUNPCKLWL (R11), M2", "41 0f 61 13"},
{"PUNPCKLWL (R11), M3", "41 0f 61 1b"},
{"PUNPCKLWL (R11), X11", "66 45 0f 61 1b"},
{"PUNPCKLWL (R11), X2", "66 41 0f 61 13"},
{"PUNPCKLWL M2, M2", "0f 61 d2"},
{"PUNPCKLWL M2, M3", "0f 61 da"},
{"PUNPCKLWL M3, M2", "0f 61 d3"},
{"PUNPCKLWL M3, M3", "0f 61 db"},
{"PUNPCKLWL X11, X11", "66 45 0f 61 db"},
{"PUNPCKLWL X11, X2", "66 41 0f 61 d3"},
{"PUNPCKLWL X2, X11", "66 44 0f 61 da"},
{"PUNPCKLWL X2, X2", "66 0f 61 d2"},
{"RCPPS (BX), X11", "44 0f 53 1b"},
{"RCPPS (BX), X2", "0f 53 13"},
{"RCPPS (R11), X11", "45 0f 53 1b"},
{"RCPPS (R11), X2", "41 0f 53 13"},
{"RCPPS X11, X11", "45 0f 53 db"},
{"RCPPS X11, X2", "41 0f 53 d3"},
{"RCPPS X2, X11", "44 0f 53 da"},
{"RCPPS X2, X2", "0f 53 d2"},
{"RCPSS (BX), X11", "f3 44 0f 53 1b"},
{"RCPSS (BX), X2", "f3 0f 53 13"},
{"RCPSS (R11), X11", "f3 45 0f 53 1b"},
{"RCPSS (R11), X2", "f3 41 0f 53 13"},
{"RCPSS X11, X11", "f3 45 0f 53 db"},
{"RCPSS X11, X2", "f3 41 0f 53 d3"},
{"RCPSS X2, X11", "f3 44 0f 53 da"},
{"RCPSS X2, X2", "f3 0f 53 d2"},
{"ROUNDPD $7, (BX), X11", "66 44 0f 3a 09 1b 07"},
{"ROUNDPD $7, (BX), X2", "66 0f 3a 09 13 07"},
{"ROUNDPD $7, (R11), X11", "66 45 0f 3a 09 1b 07"},
{"ROUNDPD $7, (R11), X2", "66 41 0f 3a 09 13 07"},
{"ROUNDPD $7, X11, X11", "66 45 0f 3a 09 db 07"},
{"ROUNDPD $7, X11, X2", "66 41 0f 3a 09 d3 07"},
{"ROUNDPD $7, X2, X11", "66 44 0f 3a 09 da 07"},
{"ROUNDPD $7, X2, X2", "66 0f 3a 09 d2 07"},
{"ROUNDPS $7, (BX), X11", "66 44 0f 3a 08 1b 07"},
{"ROUNDPS $7, (BX), X2", "66 0f 3a 08 13 07"},
{"ROUNDPS $7, (R11), X11", "66 45 0f 3a 08 1b 07"},
{"ROUNDPS $7, (R11), X2", "66 41 0f 3a 08 13 07"},
{"ROUNDPS $7, X11, X11", "66 45 0f 3a 08 db 07"},
{"ROUNDPS $7, X11, X2", "66 41 0f 3a 08 d3 07"},
{"ROUNDPS $7, X2, X11", "66 44 0f 3a 08 da 07"},
{"ROUNDPS $7, X2, X2", "66 0f 3a 08 d2 07"},
{"ROUNDSD $7, (BX), X11", "66 44 0f 3a 0b 1b 07"},
{"ROUNDSD $7, (BX), X2", "66 0f 3a 0b 13 07"},
{"ROUNDSD $7, (R11), X11", "66 45 0f 3a 0b 1b 07"},
{"ROUNDSD $7, (R11), X2", "66 41 0f 3a 0b 13 07"},
{"ROUNDSD $7, X11, X11", "66 45 0f 3a 0b db 07"},
{"ROUNDSD $7, X11, X2", "66 41 0f 3a 0b d3 07"},
{"ROUNDSD $7, X2, X11", "66 44 0f 3a 0b da 07"},
{"ROUNDSD $7, X2, X2", "66 0f 3a 0b d2 07"},
{"ROUNDSS $7, (BX), X11", "66 44 0f 3a 0a 1b 07"},
{"ROUNDSS $7, (BX), X2", "66 0f 3a 0a 13 07"},
{"ROUNDSS $7, (R11), X11", "66 45 0f 3a 0a 1b 07"},
{"ROUNDSS $7, (R11), X2", "66 41 0f 3a 0a 13 07"},
{"ROUNDSS $7, X11, X11", "66 45 0f 3a 0a db 07"},
{"ROUNDSS $7, X11, X2", "66 41 0f 3a 0a d3 07"},
{"ROUNDSS $7, X2, X11", "66 44 0f 3a 0a da 07"},
{"ROUNDSS $7, X2, X2", "66 0f 3a 0a d2 07"},
{"RSQRTPS (BX), X11", "44 0f 52 1b"},
{"RSQRTPS (BX), X2", "0f 52 13"},
{"RSQRTPS (R11), X11", "45 0f 52 1b"},
{"RSQRTPS (R11), X2", "41 0f 52 13"},
{"RSQRTPS X11, X11", "45 0f 52 db"},
{"RSQRTPS X11, X2", "41 0f 52 d3"},
{"RSQRTPS X2, X11", "44 0f 52 da"},
{"RSQRTPS X2, X2", "0f 52 d2"},
{"RSQRTSS (BX), X11", "f3 44 0f 52 1b"},
{"RSQRTSS (BX), X2", "f3 0f 52 13"},
{"RSQRTSS (R11), X11", "f3 45 0f 52 1b"},
{"RSQRTSS (R11), X2", "f3 41 0f 52 13"},
{"RSQRTSS X11, X11", "f3 45 0f 52 db"},
{"RSQRTSS X11, X2", "f3 41 0f 52 d3"},
{"RSQRTSS X2, X11", "f3 44 0f 52 da"},
{"RSQRTSS X2, X2", "f3 0f 52 d2"},
{"SQRTPD (BX), X11", "66 44 0f 51 1b"},
{"SQRTPD (BX), X2", "66 0f 51 13"},
{"SQRTPD (R11), X11", "66 45 0f 51 1b"},
{"SQRTPD (R11), X2", "66 41 0f 51 13"},
{"SQRTPD X11, X11", "66 45 0f 51 db"},
{"SQRTPD X11, X2", "66 41 0f 51 d3"},
{"SQRTPD X2, X11", "66 44 0f 51 da"},
{"SQRTPD X2, X2", "66 0f 51 d2"},
{"SQRTPS (BX), X11", "44 0f 51 1b"},
{"SQRTPS (BX), X2", "0f 51 13"},
{"SQRTPS (R11), X11", "45 0f 51 1b"},
{"SQRTPS (R11), X2", "41 0f 51 13"},
{"SQRTPS X11, X11", "45 0f 51 db"},
{"SQRTPS X11, X2", "41 0f 51 d3"},
{"SQRTPS X2, X11", "44 0f 51 da"},
{"SQRTPS X2, X2", "0f 51 d2"},
{"SQRTSS (BX), X11", "f3 44 0f 51 1b"},
{"SQRTSS (BX), X2", "f3 0f 51 13"},
{"SQRTSS (R11), X11", "f3 45 0f 51 1b"},
{"SQRTSS (R11), X2", "f3 41 0f 51 13"},
{"SQRTSS X11, X11", "f3 45 0f 51 db"},
{"SQRTSS X11, X2", "f3 41 0f 51 d3"},
{"SQRTSS X2, X11", "f3 44 0f 51 da"},
{"SQRTSS X2, X2", "f3 0f 51 d2"},
{"UCOMISD (BX), X11", "66 44 0f 2e 1b"},
{"UCOMISD (BX), X2", "66 0f 2e 13"},
{"UCOMISD (R11), X11", "66 45 0f 2e 1b"},
{"UCOMISD (R11), X2", "66 41 0f 2e 13"},
{"UCOMISD X11, X11", "66 45 0f 2e db"},
{"UCOMISD X11, X2", "66 41 0f 2e d3"},
{"UCOMISD X2, X11", "66 44 0f 2e da"},
{"UCOMISD X2, X2", "66 0f 2e d2"},
{"UCOMISS (BX), X11", "44 0f 2e 1b"},
{"UCOMISS (BX), X2", "0f 2e 13"},
{"UCOMISS (R11), X11", "45 0f 2e 1b"},
{"UCOMISS (R11), X2", "41 0f 2e 13"},
{"UCOMISS X11, X11", "45 0f 2e db"},
{"UCOMISS X11, X2", "41 0f 2e d3"},
{"UCOMISS X2, X11", "44 0f 2e da"},
{"UCOMISS X2, X2", "0f 2e d2"},
}
// TestAmd64SseCorpus assembles every corpus line and requires the same bytes
// go tool asm emits for it.
func TestAmd64SseCorpus(t *testing.T) {
for _, tc := range amd64SseCorpus {
fn := firstText(t, "TEXT ·p(SB), 4, $0\n\t"+tc.line+"\n")
code, _, err := Assemble(fn)
if err != nil {
t.Errorf("%s: %v", tc.line, err)
continue
}
if got := hexBytes(code); got != tc.want {
t.Errorf("%s: got %s, want %s", tc.line, got, tc.want)
}
}
}