obj/x86: make VEX-specified-register explicit
obj/x86: make VEX-specified-register explicit

"VEX.vvvv" field (VSR, VEX-specified-register) made explicit
in Optab encoding.

vexNDS, vexNDD, vexDDS and vexNOVSR do nothing,
this change does not produce any noticeable effect.

Rationale behind this change:
- keep more information inside optab entries
- make encodings match SDM more closely
- one less special rule to keep in mind

Pvex optabs are updated based on the Intel SDM descriptions.

Unused VEX combinations are removed;
it is problematic to choose VSR combinations for them
without actual Optabs that use them.

The origin of this idea can be found in:
https://go-review.googlesource.com/#/c/arch/+/66972/

Change-Id: I54634a72b44d61f4b924a1e45f2240aab7384dc2
Reviewed-on: https://go-review.googlesource.com/67890
Run-TryBot: Iskander Sharipov <a698043bc2fd5ebc21d5b6bbc66ee53917362fef@intel.com>
TryBot-Result: Gobot Gobot <66cb808b70d30c07676d5e946fee83fd561249e5@golang.org>
Reviewed-by: Russ Cox <5ad239cb8a44f659eaaee0aa1ea5b94947abe557@golang.org>

polyverse-security/go,golang/go,akutz/go,golang/go,cloudflare/go,Cofyc/go,josharian/go,CAFxX/go,golang/go,golang/go,Cofyc/go,nawawi/go,nawawi/go,golang/go,polyverse-security/go,josharian/go,codestation/go,nawawi/go,cloudflare/go,akutz/go,Cofyc/go,akutz/go,akutz/go,CAFxX/go,codestation/go,josharian/go,nawawi/go,josharian/go,CAFxX/go,nawawi/go,polyverse-security/go,golang/go,Cofyc/go,akutz/go,Cofyc/go,CAFxX/go,CAFxX/go,CAFxX/go,akutz/go,josharian/go,cloudflare/go,nawawi/go,codestation/go,codestation/go,nawawi/go,cloudflare/go,polyverse-security/go,christopher-henderson/Go,Cofyc/go,akutz/go,codestation/go,polyverse-security/go,josharian/go,golang/go,Cofyc/go,josharian/go,polyverse-security/go,Cofyc/go,codestation/go,codestation/go,nawawi/go,golang/go,cloudflare/go,cloudflare/go,josharian/go,codestation/go,polyverse-security/go,cloudflare/go,CAFxX/go,akutz/go,polyverse-security/go,CAFxX/go,cloudflare/go