mirror of
https://github.com/golang/go.git
synced 2025-05-29 03:11:26 +00:00
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
This commit is contained in:
parent
e530d6a1e0
commit
e133ee9538
@ -20,15 +20,23 @@ TEXT _rt0_arm_linux(SB),7,$-4
|
|||||||
MOVM.DB.W [R0-R3], (R13)
|
MOVM.DB.W [R0-R3], (R13)
|
||||||
MOVW $4, R0 // SIGILL
|
MOVW $4, R0 // SIGILL
|
||||||
MOVW R13, R1 // sa
|
MOVW R13, R1 // sa
|
||||||
MOVW $0, R2 // old_sa
|
SUB $16, R13
|
||||||
|
MOVW R13, R2 // old_sa
|
||||||
MOVW $8, R3 // c
|
MOVW $8, R3 // c
|
||||||
MOVW $174, R7 // sys_sigaction
|
MOVW $174, R7 // sys_sigaction
|
||||||
BL oabi_syscall<>(SB)
|
BL oabi_syscall<>(SB)
|
||||||
ADD $16, R13
|
|
||||||
// do an EABI syscall
|
// do an EABI syscall
|
||||||
MOVW $20, R7 // sys_getpid
|
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)
|
B _rt0_arm(SB)
|
||||||
|
|
||||||
TEXT bad_abi<>(SB),7,$-4
|
TEXT bad_abi<>(SB),7,$-4
|
||||||
|
Loading…
x
Reference in New Issue
Block a user