diff options
| author | Dave Cheney <dave@cheney.net> | 2014-11-15 13:27:05 +1100 |
|---|---|---|
| committer | Dave Cheney <dave@cheney.net> | 2014-11-15 13:27:05 +1100 |
| commit | 2ceca80e3fd52706c4c6bc3366844471a349d0be (patch) | |
| tree | b44c2e9be44abc1bf433d8b2504bc9c0241691c6 /src/runtime | |
| parent | 14d23bfd7bd969901f1912131c2a208d34e4b354 (diff) | |
| download | go-2ceca80e3fd52706c4c6bc3366844471a349d0be.tar.xz | |
[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
Diffstat (limited to 'src/runtime')
| -rw-r--r-- | src/runtime/softfloat_arm.go | 5 |
1 files changed, 3 insertions, 2 deletions
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() |
