1 /*
2 * Copyright (c) 2015 Elvira Khabirova <lineprinter0@gmail.com>
3 * Copyright (c) 2015 Dmitry V. Levin <ldv@strace.io>
4 * Copyright (c) 2015-2021 The strace developers.
5 * All rights reserved.
6 *
7 * SPDX-License-Identifier: LGPL-2.1-or-later
8 */
9
10 #ifndef STRACE_MPERS_TYPE_H
11 # define STRACE_MPERS_TYPE_H
12
13 # include "macros.h"
14
15 # ifdef IN_MPERS
16 # define DEF_MPERS_TYPE(args) STRINGIFY(args.h)
17 # ifdef MPERS_IS_m32
18 # define MPERS_PREFIX m32_
19 # define MPERS_DEFS "m32_type_defs.h"
20 # elif defined MPERS_IS_mx32
21 # define MPERS_PREFIX mx32_
22 # define MPERS_DEFS "mx32_type_defs.h"
23 # endif
24 # else
25 # define MPERS_PREFIX
26 # define DEF_MPERS_TYPE(args) "empty.h"
27 # ifdef IN_MPERS_BOOTSTRAP
28 # define MPERS_DEFS "empty.h"
29 # else
30 # define MPERS_DEFS "native_defs.h"
31 # endif
32 typedef unsigned long mpers_ptr_t;
33 # endif
34
35 #endif /* !STRACE_MPERS_TYPE_H */