From 64db2ec915f7d3a7ea515ac3050afd4063cd7438 Mon Sep 17 00:00:00 2001 From: Dmitriy Vyukov Date: Mon, 29 Jul 2013 23:41:12 +0400 Subject: [PATCH] runtime: fix arm build The current failure is: fatal error: runtime: stack split during syscall goroutine 2 [stack split]: _addv(0xb6fa0f28, 0xd0a5112e, 0x13156d6e, 0xf8475800, 0xd) /usr/local/go/src/pkg/runtime/vlrt_arm.c:66 fp=0xb6fa0ef8 notetsleep(0xb6fa0f9c, 0xf8475800, 0xd, 0x0, 0x0, ...) /usr/local/go/src/pkg/runtime/lock_futex.c:156 +0xd0 fp=0xb6fa0f18 runtime.notetsleepg(0xb6fa0f9c, 0xf8475800, 0xd) /usr/local/go/src/pkg/runtime/lock_futex.c:197 +0x74 fp=0xb6fa0f3c R=golang-dev, rsc CC=golang-dev https://golang.org/cl/12052043 --- src/pkg/runtime/vlop_arm.s | 2 +- src/pkg/runtime/vlrt_arm.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/src/pkg/runtime/vlop_arm.s b/src/pkg/runtime/vlop_arm.s index 3a9cac9448..bbd42230c9 100644 --- a/src/pkg/runtime/vlop_arm.s +++ b/src/pkg/runtime/vlop_arm.s @@ -27,7 +27,7 @@ arg=0 /* replaced use of R10 by R11 because the former can be the data segment base register */ -TEXT _mulv(SB), $0 +TEXT _mulv(SB), 7, $0 MOVW 0(FP), R0 MOVW 4(FP), R2 /* l0 */ MOVW 8(FP), R11 /* h0 */ diff --git a/src/pkg/runtime/vlrt_arm.c b/src/pkg/runtime/vlrt_arm.c index ab80501775..614f35ad26 100644 --- a/src/pkg/runtime/vlrt_arm.c +++ b/src/pkg/runtime/vlrt_arm.c @@ -62,6 +62,7 @@ struct Vlong void runtime·abort(void); +#pragma textflag 7 void _addv(Vlong *r, Vlong a, Vlong b) { -- 2.48.1