os: request appropriate access rights before calling windows TerminateProcess

Fixes issue 5615.

R=golang-dev, rsc
CC=golang-dev
https://codereview.appspot.com/9651047
cmd/gc: move genembedtramp into portable code

Requires adding new linker instruction
        RET	f(SB)
meaning return but then immediately call f.
This is what you'd use to implement a tail call after
fiddling with the arguments, but the compiler only
uses it in genwrapper.

This CL eliminates the copy-and-paste genembedtramp
functions from 5g/8g/6g and makes the code run on ARM
for the first time. It removes a small special case for function
generation, which should help Carl a bit, but at the same time
it does not bother to implement general tail call optimization,
which we do not want anyway.

Fixes issue 5627.

R=ken2
CC=golang-dev
https://codereview.appspot.com/10057044