runtime: unregister the SIGILL handler after ARM EABI test
Part of issue 3381

R=rsc, minux.ma, dave
CC=golang-dev
https://golang.org/cl/5969064
diff --git a/src/pkg/runtime/rt0_linux_arm.s b/src/pkg/runtime/rt0_linux_arm.s
index e08cf90..54ea860 100644
--- a/src/pkg/runtime/rt0_linux_arm.s
+++ b/src/pkg/runtime/rt0_linux_arm.s
@@ -20,15 +20,23 @@
 	MOVM.DB.W [R0-R3], (R13)
 	MOVW	$4, R0 // SIGILL
 	MOVW	R13, R1 // sa
-	MOVW	$0, R2 // old_sa
+	SUB	$16, R13
+	MOVW	R13, R2 // old_sa
 	MOVW	$8, R3 // c
 	MOVW	$174, R7 // sys_sigaction
 	BL	oabi_syscall<>(SB)
-	ADD 	$16, R13
+
 	// do an EABI syscall
 	MOVW	$20, R7 // sys_getpid
-	SWI 	$0 // this will trigger SIGILL on OABI systems
-
+	SWI	$0 // this will trigger SIGILL on OABI systems
+	
+	MOVW	$4, R0  // SIGILL
+	MOVW	R13, R1 // sa
+	MOVW	$0, R2 // old_sa
+	MOVW	$8, R3 // c
+	MOVW	$174, R7 // sys_sigaction
+	SWI	$0 // restore signal handler
+	ADD	$32, R13
 	B	_rt0_arm(SB)
 
 TEXT bad_abi<>(SB),7,$-4