diff options
Diffstat (limited to 'src/runtime/sys_openbsd_arm64.s')
-rw-r--r-- | src/runtime/sys_openbsd_arm64.s | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/runtime/sys_openbsd_arm64.s b/src/runtime/sys_openbsd_arm64.s index 97005eac14..87a0b5c4de 100644 --- a/src/runtime/sys_openbsd_arm64.s +++ b/src/runtime/sys_openbsd_arm64.s @@ -306,6 +306,12 @@ TEXT runtime·fcntl_trampoline(SB),NOSPLIT,$0 MOVW 0(R0), R0 // arg 1 - fd MOVD $0, R3 // vararg CALL libc_fcntl(SB) + CMP $-1, R0 + BNE noerr + CALL libc_errno(SB) + MOVW (R0), R0 + NEG R0, R0 // caller expects negative errno value +noerr: RET TEXT runtime·sigaction_trampoline(SB),NOSPLIT,$0 |