diff options
Diffstat (limited to 'src/runtime/sys_darwin_amd64.s')
-rw-r--r-- | src/runtime/sys_darwin_amd64.s | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/runtime/sys_darwin_amd64.s b/src/runtime/sys_darwin_amd64.s index bd397d72a7..8f845e5503 100644 --- a/src/runtime/sys_darwin_amd64.s +++ b/src/runtime/sys_darwin_amd64.s @@ -141,10 +141,15 @@ timeloop: systime: // Fall back to system call (usually first call in this thread). - MOVQ SP, DI // must be non-nil, unused + MOVQ SP, DI MOVQ $0, SI MOVL $(0x2000000+116), AX SYSCALL + CMPQ AX, $0 + JNE inreg + MOVQ 0(SP), AX + MOVL 8(SP), DX +inreg: // sec is in AX, usec in DX // return nsec in AX IMULQ $1000000000, AX |