This commit fixes runtime.sigfwd for aix/ppc64. fn is a function
descriptor and not a function. R2 must be saved and restored.
Change-Id: Ie506b0bdde562ca37202d19973ba1d537c3d64e2
Reviewed-on: https://go-review.googlesource.com/c/go/+/164015
Reviewed-by: Ian Lance Taylor <iant@golang.org>
MOVD info+16(FP), R4
MOVD ctx+24(FP), R5
MOVD fn+0(FP), R12
- MOVD R12, CTR
+ // fn is a function descriptor
+ // R2 must be saved on restore
+ MOVD 0(R12), R0
+ MOVD R2, 40(R1)
+ MOVD 8(R12), R2
+ MOVD R0, CTR
BL (CTR)
+ MOVD 40(R1), R2
+ BL runtime·reginit(SB)
RET