]> Cypherpunks repositories - gostls13.git/commit
cmd/asm: reject avx512 .Z instructions without a mask register
authorKeith Randall <khr@golang.org>
Fri, 27 Jan 2023 01:25:44 +0000 (17:25 -0800)
committerGopher Robot <gobot@golang.org>
Mon, 30 Jan 2023 14:56:56 +0000 (14:56 +0000)
commitee5ce77c62483933ae4d5dbdbcbadf6f82dd3f6c
tree6c7c429a14a56a5a6703e701da5b2b5cb5138d39
parent49520907394c0a1060b51dc4a5d5ce1ac470a5f1
cmd/asm: reject avx512 .Z instructions without a mask register

Zeroing requires a non-K0 mask register be specified.
(gcc enforces this when assembling.)

The non-K0 restriction is already handled by the Yknot0 restriction.
But if the mask register is missing altogether, we misassemble the
instruction.

Fixes #57952

Not sure if this is really worth mentioning in the release notes,
but just in case I'll mark it.
RELNOTE=yes

Change-Id: I8f05d3155503f1f16d1b5ab9d67686fe5b64dfea
Reviewed-on: https://go-review.googlesource.com/c/go/+/463229
Auto-Submit: Keith Randall <khr@golang.org>
Reviewed-by: Keith Randall <khr@google.com>
Run-TryBot: Keith Randall <khr@golang.org>
Reviewed-by: Cherry Mui <cherryyz@google.com>
TryBot-Result: Gopher Robot <gobot@golang.org>
Reviewed-by: Илья Токарь <tocarip@gmail.com>
Reviewed-by: Iskander Sharipov <quasilyte@gmail.com>
src/cmd/asm/internal/asm/testdata/amd64enc_extra.s
src/cmd/asm/internal/asm/testdata/amd64error.s
src/cmd/internal/obj/x86/asm6.go