2 * Copyright (c) 2015-2016 Dmitry V. Levin <ldv@altlinux.org>
3 * Copyright (c) 2016-2019 The strace developers.
6 * SPDX-License-Identifier: LGPL-2.1-or-later
11 #include DEF_MPERS_TYPE(timespec_t)
13 #include "kernel_timespec.h"
15 #if defined MPERS_IS_mx32
16 # define TIMESPEC_IS_32BIT 0
17 #elif defined MPERS_IS_m32
18 # define TIMESPEC_IS_32BIT 1
19 #elif ARCH_TIMESIZE == 4
20 # define TIMESPEC_IS_32BIT 1
22 # define TIMESPEC_IS_32BIT 0
26 typedef kernel_timespec32_t timespec_t;
27 # define PRINT_TIMESPEC_DATA_SIZE print_timespec32_data_size
28 # define PRINT_TIMESPEC_ARRAY_DATA_SIZE print_timespec32_array_data_size
30 typedef kernel_timespec64_t timespec_t;
31 # define PRINT_TIMESPEC_DATA_SIZE print_timespec64_data_size
32 # define PRINT_TIMESPEC_ARRAY_DATA_SIZE print_timespec64_array_data_size
37 MPERS_PRINTER_DECL(bool, print_struct_timespec_data_size,
38 const void *arg, const size_t size)
40 return PRINT_TIMESPEC_DATA_SIZE(arg, size);
43 MPERS_PRINTER_DECL(bool, print_struct_timespec_array_data_size,
44 const void *arg, const unsigned int nmemb,
47 return PRINT_TIMESPEC_ARRAY_DATA_SIZE(arg, nmemb, size);