From: Dave Cheney Date: Sat, 15 Nov 2014 02:27:05 +0000 (+1100) Subject: [dev.cc] runtime: fix _sfloat thunk X-Git-Tag: go1.5beta1~2684^2~9^2 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=2ceca80e3fd52706c4c6bc3366844471a349d0be;p=gostls13.git [dev.cc] runtime: fix _sfloat thunk * _sfloat dispatches to runtime._sfloat2 with the Go calling convention, so the seecond argument is a [15]uint32, not a *[15]uint32. * adjust _sfloat2 to return the new pc in 68(R13) as expected. LGTM=rsc R=minux, austin, rsc CC=golang-codereviews https://golang.org/cl/174160043 --- diff --git a/src/runtime/softfloat_arm.go b/src/runtime/softfloat_arm.go index 746b9ea216..efee31c4c7 100644 --- a/src/runtime/softfloat_arm.go +++ b/src/runtime/softfloat_arm.go @@ -605,10 +605,11 @@ done: } //go:nosplit -func _sfloat2(pc uint32, regs *[15]uint32) { +func _sfloat2(pc uint32, regs [15]uint32) (newpc uint32) { systemstack(func() { - pc = sfloat2(pc, regs) + newpc = sfloat2(pc, ®s) }) + return } func _sfloatpanic()