1
2/*--------------------------------------------------------------------*/
3/*--- mips/Linux-specific kernel interface: posix types.           ---*/
4/*---                                vki-posixtypes-mips64-linux.h ---*/
5/*--------------------------------------------------------------------*/
6
7/*
8   This file is part of Valgrind, a dynamic binary instrumentation
9   framework.
10
11   Copyright (C) 2010-2017 RT-RK
12      mips-valgrind@rt-rk.com
13
14   This program is free software; you can redistribute it and/or
15   modify it under the terms of the GNU General Public License as
16   published by the Free Software Foundation; either version 2 of the
17   License, or (at your option) any later version.
18
19   This program is distributed in the hope that it will be useful, but
20   WITHOUT ANY WARRANTY; without even the implied warranty of
21   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
22   General Public License for more details.
23
24   You should have received a copy of the GNU General Public License
25   along with this program; if not, write to the Free Software
26   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
27   02111-1307, USA.
28*/
29
30#ifndef __VKI_POSIXTYPES_MIPS64_LINUX_H
31#define __VKI_POSIXTYPES_MIPS64_LINUX_H
32
33typedef unsigned long   __vki_kernel_ino_t;
34typedef unsigned int    __vki_kernel_mode_t;
35#if (_MIPS_SZLONG == 32)
36typedef unsigned long   __vki_kernel_nlink_t;
37#endif
38#if (_MIPS_SZLONG == 64)
39typedef unsigned int    __vki_kernel_nlink_t;
40#endif
41typedef long            __vki_kernel_off_t;
42typedef int             __vki_kernel_pid_t;
43typedef int             __vki_kernel_ipc_pid_t;
44typedef unsigned int    __vki_kernel_uid_t;
45typedef unsigned int    __vki_kernel_gid_t;
46#if (_MIPS_SZLONG == 32)
47typedef unsigned int    __vki_kernel_size_t;
48typedef int             __vki_kernel_ssize_t;
49typedef int             __vki_kernel_ptrdiff_t;
50#endif
51#if (_MIPS_SZLONG == 64)
52typedef unsigned long   __vki_kernel_size_t;
53typedef long            __vki_kernel_ssize_t;
54typedef long            __vki_kernel_ptrdiff_t;
55#endif
56typedef long            __vki_kernel_time_t;
57typedef long            __vki_kernel_suseconds_t;
58typedef long            __vki_kernel_clock_t;
59typedef int             __vki_kernel_timer_t;
60typedef int             __vki_kernel_clockid_t;
61typedef long            __vki_kernel_daddr_t;
62typedef char *          __vki_kernel_caddr_t;
63
64typedef unsigned short  __vki_kernel_uid16_t;
65typedef unsigned short  __vki_kernel_gid16_t;
66typedef unsigned int    __vki_kernel_uid32_t;
67typedef unsigned int    __vki_kernel_gid32_t;
68typedef __vki_kernel_uid_t  __vki_kernel_old_uid_t;
69typedef __vki_kernel_gid_t  __vki_kernel_old_gid_t;
70typedef unsigned int    __vki_kernel_old_dev_t;
71
72typedef long long      __vki_kernel_loff_t;
73
74typedef struct {
75#if (_MIPS_SZLONG == 32)
76        long    val[2];
77#endif
78#if (_MIPS_SZLONG == 64)
79        int     val[2];
80#endif
81} __vki_kernel_fsid_t;
82
83#endif // __VKI_POSIXTYPES_MIPS64_LINUX_H
84
85/*--------------------------------------------------------------------*/
86/*--- end                              vki-posixtypes-mips-linux.h ---*/
87/*--------------------------------------------------------------------*/
88