summaryrefslogtreecommitdiff
path: root/src/unistd/x32/lseek.c
blob: 3263642953b76ce7d50064f8ec84bc7271ffc1c7 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <unistd.h>
#include "syscall.h"

off_t __lseek(int fd, off_t offset, int whence)
{
	off_t ret;
	__asm__ __volatile__ ("syscall"
		: "=a"(ret)
		: "a"(SYS_lseek), "D"(fd), "S"(offset), "d"(whence)
		: "rcx", "r11", "memory");
	return ret < 0 ? __syscall_ret(ret) : ret;
}

weak_alias(__lseek, lseek);
weak_alias(__lseek, lseek64);