diff options
| author | Damien Lespiau <damien.lespiau@intel.com> | 2017-04-28 15:20:38 +0100 |
|---|---|---|
| committer | Brad Fitzpatrick <bradfitz@golang.org> | 2017-05-01 18:32:52 +0000 |
| commit | a2da2108ee18a338cdcdea5e319156858031af08 (patch) | |
| tree | 8c5892a166b4831da9e4bb63c55ec01cd3bb2f94 /src/cmd/asm | |
| parent | d1b544c7eb00d54d7298292c1860a965ecc93d41 (diff) | |
| download | go-a2da2108ee18a338cdcdea5e319156858031af08.tar.xz | |
cmd/internal/obj/x86: fix ANDPS encoding
ANDPS, like all others PS (Packed Single precision floats) instructions,
need Ym: they don't use the 0x66 prefix.
From the manual:
NP 0F 54 /r ANDPS xmm1, xmm2/m128
NP meaning, quoting the manual:
NP - Indicates the use of 66/F2/F3 prefixes (beyond those already part
of the instructions opcode) are not allowed with the instruction.
And indeed, the same instruction prefixed by 0x66 is ANDPD.
Updates #14069
Change-Id: If312a6f1e77113ab8c0febe66bdb1b4171e41e0a
Reviewed-on: https://go-review.googlesource.com/42090
Reviewed-by: Keith Randall <khr@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
Diffstat (limited to 'src/cmd/asm')
| -rw-r--r-- | src/cmd/asm/internal/asm/testdata/amd64enc.s | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/src/cmd/asm/internal/asm/testdata/amd64enc.s b/src/cmd/asm/internal/asm/testdata/amd64enc.s index 22c948e165..dbc4023f9f 100644 --- a/src/cmd/asm/internal/asm/testdata/amd64enc.s +++ b/src/cmd/asm/internal/asm/testdata/amd64enc.s @@ -412,14 +412,14 @@ TEXT asmtest(SB),DUPOK|NOSPLIT,$0 ANDPD (R11), X11 // 66450f541b ANDPD X2, X11 // 66440f54da ANDPD X11, X11 // 66450f54db - //TODO: ANDPS (BX), X2 // 0f5413 - //TODO: ANDPS (R11), X2 // 410f5413 - //TODO: ANDPS X2, X2 // 0f54d2 - //TODO: ANDPS X11, X2 // 410f54d3 - //TODO: ANDPS (BX), X11 // 440f541b - //TODO: ANDPS (R11), X11 // 450f541b - //TODO: ANDPS X2, X11 // 440f54da - //TODO: ANDPS X11, X11 // 450f54db + ANDPS (BX), X2 // 0f5413 + ANDPS (R11), X2 // 410f5413 + ANDPS X2, X2 // 0f54d2 + ANDPS X11, X2 // 410f54d3 + ANDPS (BX), X11 // 440f541b + ANDPS (R11), X11 // 450f541b + ANDPS X2, X11 // 440f54da + ANDPS X11, X11 // 450f54db BEXTRL R9, (BX), DX // c4e230f713 BEXTRL R9, (R11), DX // c4c230f713 BEXTRL R9, DX, DX // c4e230f7d2 |
