|
13 | 13 | //!
|
14 | 14 | //! This is **not** currently the `simd` crate on crates.io.
|
15 | 15 |
|
16 |
| -#![cfg_attr(feature = "serde", feature(plugin, custom_derive))] |
17 |
| -#![cfg_attr(feature = "serde", plugin(serde_macros))] |
18 |
| - |
19 | 16 | #![feature(cfg_target_feature, repr_simd, platform_intrinsics, const_fn)]
|
20 | 17 | #![allow(non_camel_case_types)]
|
21 | 18 |
|
22 |
| -#[cfg(feature = "serde")] |
| 19 | +#[cfg(feature = "with-serde")] |
23 | 20 | extern crate serde;
|
| 21 | +#[cfg(feature = "with-serde")] |
| 22 | +#[macro_use] |
| 23 | +extern crate serde_derive; |
24 | 24 |
|
25 | 25 | /// Boolean type for 8-bit integers.
|
26 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 26 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
27 | 27 | #[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)]
|
28 | 28 | pub struct bool8i(i8);
|
29 | 29 | /// Boolean type for 16-bit integers.
|
30 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 30 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
31 | 31 | #[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)]
|
32 | 32 | pub struct bool16i(i16);
|
33 | 33 | /// Boolean type for 32-bit integers.
|
34 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 34 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
35 | 35 | #[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)]
|
36 | 36 | pub struct bool32i(i32);
|
37 | 37 | /// Boolean type for 32-bit floats.
|
38 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 38 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
39 | 39 | #[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord)]
|
40 | 40 | pub struct bool32f(i32);
|
41 | 41 |
|
@@ -74,90 +74,90 @@ pub unsafe trait Simd {
|
74 | 74 |
|
75 | 75 | /// A SIMD vector of 4 `u32`s.
|
76 | 76 | #[repr(simd)]
|
77 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 77 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
78 | 78 | #[derive(Debug, Copy)]
|
79 | 79 | pub struct u32x4(u32, u32, u32, u32);
|
80 | 80 | /// A SIMD vector of 4 `i32`s.
|
81 | 81 | #[repr(simd)]
|
82 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 82 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
83 | 83 | #[derive(Debug, Copy)]
|
84 | 84 | pub struct i32x4(i32, i32, i32, i32);
|
85 | 85 | /// A SIMD vector of 4 `f32`s.
|
86 | 86 | #[repr(simd)]
|
87 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 87 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
88 | 88 | #[derive(Debug, Copy)]
|
89 | 89 | pub struct f32x4(f32, f32, f32, f32);
|
90 | 90 | /// A SIMD boolean vector for length-4 vectors of 32-bit integers.
|
91 | 91 | #[repr(simd)]
|
92 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 92 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
93 | 93 | #[derive(Debug, Copy)]
|
94 | 94 | pub struct bool32ix4(i32, i32, i32, i32);
|
95 | 95 | /// A SIMD boolean vector for length-4 vectors of 32-bit floats.
|
96 | 96 | #[repr(simd)]
|
97 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 97 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
98 | 98 | #[derive(Debug, Copy)]
|
99 | 99 | pub struct bool32fx4(i32, i32, i32, i32);
|
100 | 100 |
|
101 | 101 | #[allow(dead_code)]
|
102 | 102 | #[repr(simd)]
|
103 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 103 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
104 | 104 | #[derive(Debug, Copy)]
|
105 | 105 | struct u32x2(u32, u32);
|
106 | 106 | #[allow(dead_code)]
|
107 | 107 | #[repr(simd)]
|
108 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 108 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
109 | 109 | #[derive(Debug, Copy)]
|
110 | 110 | struct i32x2(i32, i32);
|
111 | 111 | #[allow(dead_code)]
|
112 | 112 | #[repr(simd)]
|
113 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 113 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
114 | 114 | #[derive(Debug, Copy)]
|
115 | 115 | struct f32x2(f32, f32);
|
116 | 116 | #[allow(dead_code)]
|
117 | 117 | #[repr(simd)]
|
118 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 118 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
119 | 119 | #[derive(Debug, Copy)]
|
120 | 120 | struct bool32ix2(i32, i32);
|
121 | 121 | #[allow(dead_code)]
|
122 | 122 | #[repr(simd)]
|
123 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 123 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
124 | 124 | #[derive(Debug, Copy)]
|
125 | 125 | struct bool32fx2(i32, i32);
|
126 | 126 |
|
127 | 127 | /// A SIMD vector of 8 `u16`s.
|
128 | 128 | #[repr(simd)]
|
129 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 129 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
130 | 130 | #[derive(Debug, Copy)]
|
131 | 131 | pub struct u16x8(u16, u16, u16, u16,
|
132 | 132 | u16, u16, u16, u16);
|
133 | 133 | /// A SIMD vector of 8 `i16`s.
|
134 | 134 | #[repr(simd)]
|
135 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 135 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
136 | 136 | #[derive(Debug, Copy)]
|
137 | 137 | pub struct i16x8(i16, i16, i16, i16,
|
138 | 138 | i16, i16, i16, i16);
|
139 | 139 | /// A SIMD boolean vector for length-8 vectors of 16-bit integers.
|
140 | 140 | #[repr(simd)]
|
141 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 141 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
142 | 142 | #[derive(Debug, Copy)]
|
143 | 143 | pub struct bool16ix8(i16, i16, i16, i16,
|
144 | 144 | i16, i16, i16, i16);
|
145 | 145 |
|
146 | 146 | /// A SIMD vector of 16 `u8`s.
|
147 | 147 | #[repr(simd)]
|
148 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 148 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
149 | 149 | #[derive(Debug, Copy)]
|
150 | 150 | pub struct u8x16(u8, u8, u8, u8, u8, u8, u8, u8,
|
151 | 151 | u8, u8, u8, u8, u8, u8, u8, u8);
|
152 | 152 | /// A SIMD vector of 16 `i8`s.
|
153 | 153 | #[repr(simd)]
|
154 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 154 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
155 | 155 | #[derive(Debug, Copy)]
|
156 | 156 | pub struct i8x16(i8, i8, i8, i8, i8, i8, i8, i8,
|
157 | 157 | i8, i8, i8, i8, i8, i8, i8, i8);
|
158 | 158 | /// A SIMD boolean vector for length-16 vectors of 8-bit integers.
|
159 | 159 | #[repr(simd)]
|
160 |
| -#[cfg_attr(feature = "serde", derive(Serialize, Deserialize))] |
| 160 | +#[cfg_attr(feature = "with-serde", derive(Serialize, Deserialize))] |
161 | 161 | #[derive(Debug, Copy)]
|
162 | 162 | pub struct bool8ix16(i8, i8, i8, i8, i8, i8, i8, i8,
|
163 | 163 | i8, i8, i8, i8, i8, i8, i8, i8);
|
|
0 commit comments