Skip to content

Commit 8e88f1e

Browse files
committed
use segmented store in rotator2 rvvseg implementation
Signed-off-by: Olaf Bernstein <[email protected]>
1 parent 99127fa commit 8e88f1e

File tree

1 file changed

+2
-6
lines changed

1 file changed

+2
-6
lines changed

kernels/volk/volk_32fc_s32fc_x2_rotator2_32fc.h

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -906,12 +906,8 @@ static inline void volk_32fc_s32fc_x2_rotator2_32fc_rvvseg(lv_32fc_t* outVector,
906906
__riscv_vfnmsac(__riscv_vfmul(var, phr, vl), vai, phi, vl);
907907
vfloat32m2_t vi =
908908
__riscv_vfmacc(__riscv_vfmul(var, phi, vl), vai, phr, vl);
909-
910-
vuint32m2_t vru = __riscv_vreinterpret_u32m2(vr);
911-
vuint32m2_t viu = __riscv_vreinterpret_u32m2(vi);
912-
vuint64m4_t res =
913-
__riscv_vwmaccu(__riscv_vwaddu_vv(vru, viu, vl), 0xFFFFFFFF, viu, vl);
914-
__riscv_vse64((uint64_t*)outVector, res, vl);
909+
vfloat32m2x2_t vc = __riscv_vcreate_v_f32m2x2(vr, vi);
910+
__riscv_vsseg2e32_v_f32m2x2((float*)outVector, vc, vl);
915911

916912
vfloat32m2_t tmp = phr;
917913
phr = __riscv_vfnmsac(__riscv_vfmul(tmp, incr, vl), phi, inci, vl);

0 commit comments

Comments
 (0)