runtime: unbreak linux/riscv64 following regabi merge
runtime: unbreak linux/riscv64 following regabi merge

Unbreak the linux/riscv64 port by storing the zero value register to memory,
rather than the current code that is moving a zero intermediate to the stack
pointer register (ideally this should be caught by the assembler). This was
broken in CL#272568.

On riscv64 a zero immediate value cannot be moved directly to memory, rather
a register needs to be loaded with zero and then stored. Alternatively, the
the zero value register (aka X0) can be used directly.

Change-Id: Id57121541d50c9993cec5c2270b638b184ab9bc1
Reviewed-on: https://go-review.googlesource.com/c/go/+/292894
Trust: Joel Sing <4816dabf8db1bc6cac35b3a24cab2ff844b5b0c7@sing.id.au>
Reviewed-by: Michael Knyszek <4473450dc5c88f06e1fb787f303d7805ec2aee65@google.com>
Reviewed-by: Cherry Zhang <d62e63aa42ce272d7b6a5055d97e942b33a34679@google.com>
Run-TryBot: Michael Knyszek <4473450dc5c88f06e1fb787f303d7805ec2aee65@google.com>
TryBot-Result: Go Bot <66cb808b70d30c07676d5e946fee83fd561249e5@golang.org>

CAFxX/go,golang/go,golang/go,nawawi/go,cloudflare/go,cloudflare/go,CAFxX/go,golang/go,cloudflare/go,cloudflare/go,nawawi/go,nawawi/go,cloudflare/go,CAFxX/go,CAFxX/go,nawawi/go,CAFxX/go,nawawi/go,CAFxX/go,golang/go,golang/go,golang/go,nawawi/go,nawawi/go,cloudflare/go,CAFxX/go,golang/go,CAFxX/go,golang/go,nawawi/go,cloudflare/go,cloudflare/go