diff options
Diffstat (limited to 'libc')
| -rw-r--r-- | libc/sysdeps/linux/x86_64/sched_getcpu.S | 19 | 
1 files changed, 7 insertions, 12 deletions
diff --git a/libc/sysdeps/linux/x86_64/sched_getcpu.S b/libc/sysdeps/linux/x86_64/sched_getcpu.S index 1e0a344c7..3964bf1d3 100644 --- a/libc/sysdeps/linux/x86_64/sched_getcpu.S +++ b/libc/sysdeps/linux/x86_64/sched_getcpu.S @@ -35,26 +35,21 @@ ENTRY (sched_getcpu)  	movl	$VGETCPU_CACHE_OFFSET, %edx  	addq	%fs:0, %rdx -#ifdef SHARED -	movq	__vdso_getcpu(%rip), %rax -	callq	*%rax -#else -# ifdef __NR_getcpu +#ifdef __NR_getcpu  	movl	$__NR_getcpu, %eax  	syscall -#  ifndef __ASSUME_GETCPU_SYSCALL +# ifndef __ASSUME_GETCPU_SYSCALL  	cmpq	$-ENOSYS, %rax  	jne	1f -#  endif  # endif -# ifndef __ASSUME_GETCPU_SYSCALL +#endif +#ifndef __ASSUME_GETCPU_SYSCALL  	movq	$VSYSCALL_ADDR_vgetcpu, %rax  	callq	*%rax  1: -# else -#  ifndef __NR_getcpu -#   error "cannot happen" -#  endif +#else +# ifndef __NR_getcpu +#  error "cannot happen"  # endif  #endif  | 
