libc/unix/linux_like/linux/
align.rs1macro_rules! expand_align {
2 () => {
3 s! {
4 #[cfg_attr(any(target_pointer_width = "32",
5 target_arch = "x86_64",
6 target_arch = "powerpc64",
7 target_arch = "mips64",
8 target_arch = "s390x",
9 target_arch = "sparc64",
10 target_arch = "aarch64"),
11 repr(align(4)))]
12 #[cfg_attr(not(any(target_pointer_width = "32",
13 target_arch = "x86_64",
14 target_arch = "powerpc64",
15 target_arch = "mips64",
16 target_arch = "s390x",
17 target_arch = "sparc64",
18 target_arch = "aarch64")),
19 repr(align(8)))]
20 pub struct pthread_mutexattr_t {
21 #[doc(hidden)]
22 size: [u8; ::__SIZEOF_PTHREAD_MUTEXATTR_T],
23 }
24
25 #[cfg_attr(any(target_env = "musl", target_pointer_width = "32"),
26 repr(align(4)))]
27 #[cfg_attr(all(not(target_env = "musl"),
28 target_pointer_width = "64"),
29 repr(align(8)))]
30 pub struct pthread_rwlockattr_t {
31 #[doc(hidden)]
32 size: [u8; ::__SIZEOF_PTHREAD_RWLOCKATTR_T],
33 }
34
35 #[repr(align(4))]
36 pub struct pthread_condattr_t {
37 #[doc(hidden)]
38 size: [u8; ::__SIZEOF_PTHREAD_CONDATTR_T],
39 }
40 }
41
42 s_no_extra_traits! {
43 #[cfg_attr(all(target_env = "musl",
44 target_pointer_width = "32"),
45 repr(align(4)))]
46 #[cfg_attr(all(target_env = "musl",
47 target_pointer_width = "64"),
48 repr(align(8)))]
49 #[cfg_attr(all(not(target_env = "musl"),
50 target_arch = "x86"),
51 repr(align(4)))]
52 #[cfg_attr(all(not(target_env = "musl"),
53 not(target_arch = "x86")),
54 repr(align(8)))]
55 pub struct pthread_cond_t {
56 #[doc(hidden)]
57 size: [u8; ::__SIZEOF_PTHREAD_COND_T],
58 }
59
60 #[cfg_attr(all(target_pointer_width = "32",
61 any(target_arch = "mips",
62 target_arch = "arm",
63 target_arch = "hexagon",
64 target_arch = "powerpc",
65 target_arch = "sparc",
66 target_arch = "x86_64",
67 target_arch = "x86")),
68 repr(align(4)))]
69 #[cfg_attr(any(target_pointer_width = "64",
70 not(any(target_arch = "mips",
71 target_arch = "arm",
72 target_arch = "hexagon",
73 target_arch = "powerpc",
74 target_arch = "sparc",
75 target_arch = "x86_64",
76 target_arch = "x86"))),
77 repr(align(8)))]
78 pub struct pthread_mutex_t {
79 #[doc(hidden)]
80 size: [u8; ::__SIZEOF_PTHREAD_MUTEX_T],
81 }
82
83 #[cfg_attr(all(target_pointer_width = "32",
84 any(target_arch = "mips",
85 target_arch = "arm",
86 target_arch = "hexagon",
87 target_arch = "powerpc",
88 target_arch = "sparc",
89 target_arch = "x86_64",
90 target_arch = "x86")),
91 repr(align(4)))]
92 #[cfg_attr(any(target_pointer_width = "64",
93 not(any(target_arch = "mips",
94 target_arch = "arm",
95 target_arch = "hexagon",
96 target_arch = "powerpc",
97 target_arch = "sparc",
98 target_arch = "x86_64",
99 target_arch = "x86"))),
100 repr(align(8)))]
101 pub struct pthread_rwlock_t {
102 size: [u8; ::__SIZEOF_PTHREAD_RWLOCK_T],
103 }
104 }
105 };
106}