@@ -143,6 +143,27 @@ namespace xsimd
143143 return __riscv_vreinterpret_i8m1 (x);
144144 }
145145 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 <>
146167 XSIMD_INLINE rvv_type_info<uint16_t , rvv_width_m1 * 1 >::type
147168 rvv_type_info<uint16_t , rvv_width_m1 * 1 >::bitcast<__rvv_uint8m1_t >(
148169 __rvv_uint8m1_t x) noexcept
@@ -179,6 +200,25 @@ namespace xsimd
179200 return __riscv_vreinterpret_u8m1 (x);
180201 }
181202
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+
182222 template <>
183223 XSIMD_INLINE rvv_type_info<uint8_t , rvv_width_m1 * 1 >::byte_type
184224 rvv_type_info<uint8_t , rvv_width_m1 * 1 >::as_bytes<__rvv_uint8m1_t >(__rvv_uint8m1_t x) noexcept
0 commit comments