cmd/asm: restrict x86 shift ops to 8bit args
cmd/asm: restrict x86 shift ops to 8bit args

Change "yshl" and "yshb" immediate oclass from Yi32 to Yu8.
This forbids:
- negative shift counts
- shift counts that not fit into 8bit

Affects:
  RCL{B,L,Q,W}
  RCR{B,L,Q,W}
  ROL{B,L,Q,W}
  ROR{B,L,Q,W}
  SAL{B,L,Q,W}
  SAR{B,L,Q,W}
  SHL{B,L,Q,W}
  SHR{B,L,Q,W}

Issue #21528 has some additional context about this change.

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

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