1#ifndef _STUFF_TARGET_ARCH_H_
2#define _STUFF_TARGET_ARCH_H_
3#include <stdint.h>
4
5#ifdef ARCH64	/* 64-bit architecutres */
6
7typedef struct mach_header_64 mach_header_t;
8#define MH_MAGIC_VALUE MH_MAGIC_64
9#define swap_mach_header_t swap_mach_header_64
10typedef struct segment_command_64 segment_command_t;
11#define	LC_SEGMENT_VALUE LC_SEGMENT_64
12#define swap_segment_command_t swap_segment_command_64
13typedef struct section_64 section_t;
14#define swap_section_t swap_section_64
15typedef struct nlist_64 nlist_t;
16#define swap_nlist_t swap_nlist_64
17
18typedef int64_t signed_target_addr_t;
19#define TA_DFMT "%llu"
20
21#else		/* 32-bit architecutres */
22
23typedef struct mach_header mach_header_t;
24#define MH_MAGIC_VALUE MH_MAGIC
25#define swap_mach_header_t swap_mach_header
26typedef struct segment_command segment_command_t;
27#define	LC_SEGMENT_VALUE LC_SEGMENT
28#define swap_segment_command_t swap_segment_command
29typedef struct section section_t;
30#define swap_section_t swap_section
31typedef struct nlist nlist_t;
32#define swap_nlist_t swap_nlist
33
34typedef int32_t signed_target_addr_t;
35#define TA_DFMT "%u"
36
37#endif
38
39#endif /* _STUFF_TARGET_ARCH_H_ */
40