@@ -143,6 +143,27 @@ namespace xsimd
143
143
return __riscv_vreinterpret_i8m1 (x);
144
144
}
145
145
template <>
146
+ XSIMD_INLINE rvv_type_info<int16_t , rvv_width_m1 * 1 >::type
147
+ rvv_type_info<int16_t , rvv_width_m1 * 1 >::bitcast<__rvv_uint8m1_t >(
148
+ __rvv_uint8m1_t x) noexcept
149
+ {
150
+ return __riscv_vreinterpret_i16m1 (x);
151
+ }
152
+ template <>
153
+ XSIMD_INLINE rvv_type_info<int32_t , rvv_width_m1 * 1 >::type
154
+ rvv_type_info<int32_t , rvv_width_m1 * 1 >::bitcast<__rvv_uint8m1_t >(
155
+ __rvv_uint8m1_t x) noexcept
156
+ {
157
+ return __riscv_vreinterpret_i32m1 (x);
158
+ }
159
+ template <>
160
+ XSIMD_INLINE rvv_type_info<int64_t , rvv_width_m1 * 1 >::type
161
+ rvv_type_info<int64_t , rvv_width_m1 * 1 >::bitcast<__rvv_uint8m1_t >(
162
+ __rvv_uint8m1_t x) noexcept
163
+ {
164
+ return __riscv_vreinterpret_i64m1 (x);
165
+ }
166
+ template <>
146
167
XSIMD_INLINE rvv_type_info<uint16_t , rvv_width_m1 * 1 >::type
147
168
rvv_type_info<uint16_t , rvv_width_m1 * 1 >::bitcast<__rvv_uint8m1_t >(
148
169
__rvv_uint8m1_t x) noexcept
@@ -179,6 +200,25 @@ namespace xsimd
179
200
return __riscv_vreinterpret_u8m1 (x);
180
201
}
181
202
203
+ template <>
204
+ XSIMD_INLINE rvv_type_info<int16_t , rvv_width_m1 * 1 >::byte_type
205
+ rvv_type_info<int16_t , rvv_width_m1 * 1 >::as_bytes<__rvv_int16m1_t >(__rvv_int16m1_t x) noexcept
206
+ {
207
+ return __riscv_vreinterpret_u8m1 (x);
208
+ }
209
+ template <>
210
+ XSIMD_INLINE rvv_type_info<int32_t , rvv_width_m1 * 1 >::byte_type
211
+ rvv_type_info<int32_t , rvv_width_m1 * 1 >::as_bytes<__rvv_int32m1_t >(__rvv_int32m1_t x) noexcept
212
+ {
213
+ return __riscv_vreinterpret_u8m1 (x);
214
+ }
215
+ template <>
216
+ XSIMD_INLINE rvv_type_info<int64_t , rvv_width_m1 * 1 >::byte_type
217
+ rvv_type_info<int64_t , rvv_width_m1 * 1 >::as_bytes<__rvv_int64m1_t >(__rvv_int64m1_t x) noexcept
218
+ {
219
+ return __riscv_vreinterpret_u8m1 (x);
220
+ }
221
+
182
222
template <>
183
223
XSIMD_INLINE rvv_type_info<uint8_t , rvv_width_m1 * 1 >::byte_type
184
224
rvv_type_info<uint8_t , rvv_width_m1 * 1 >::as_bytes<__rvv_uint8m1_t >(__rvv_uint8m1_t x) noexcept
0 commit comments