Up till now, sum_arm.s was working only because of luck. It was written assuming that it had stack space below the current stack pointer, but Go decrements the stack pointer in the function prelude, so it was just writing off the end of the stack. This change fixes the stack manipulation so that it only writes within the bounds. Fixes golang/go#17499. Change-Id: I1951b3344c21f6bd6ade79da8b96dd1bb68180db Reviewed-on: https://go-review.googlesource.com/31443 Reviewed-by: Cherry Zhang <cherryyz@google.com> Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>