diff options
Diffstat (limited to 'volk/orc')
-rw-r--r-- | volk/orc/Makefile.am | 6 | ||||
-rw-r--r-- | volk/orc/volk_16sc_magnitude_16s_aligned16_orc_impl.orc | 24 | ||||
-rw-r--r-- | volk/orc/volk_16sc_magnitude_32f_aligned16_orc_impl.orc | 25 | ||||
-rw-r--r-- | volk/orc/volk_32fc_magnitude_16s_aligned16_orc_impl.orc | 25 | ||||
-rw-r--r-- | volk/orc/volk_32fc_magnitude_32f_aligned16_orc_impl.orc | 21 | ||||
-rw-r--r-- | volk/orc/volk_32s_or_aligned16_orc_impl.orc | 5 |
6 files changed, 105 insertions, 1 deletions
diff --git a/volk/orc/Makefile.am b/volk/orc/Makefile.am index c71625d87..3f105fd80 100644 --- a/volk/orc/Makefile.am +++ b/volk/orc/Makefile.am @@ -29,11 +29,15 @@ volk_8s_convert_16s_aligned16_orc_impl.orc \ volk_8s_convert_32f_aligned16_orc_impl.orc \ volk_16u_byteswap_aligned16_orc_impl.orc \ volk_32s_and_aligned16_orc_impl.orc \ +volk_32s_or_aligned16_orc_impl.orc \ volk_32f_add_aligned16_orc_impl.orc \ volk_32f_subtract_aligned16_orc_impl.orc \ volk_32f_divide_aligned16_orc_impl.orc \ volk_32f_multiply_aligned16_orc_impl.orc \ -volk_32f_sqrt_aligned16_orc_impl.orc +volk_32f_sqrt_aligned16_orc_impl.orc \ +volk_16sc_magnitude_32f_aligned16_orc_impl.orc \ +volk_32fc_magnitude_32f_aligned16_orc_impl.orc \ +volk_32fc_magnitude_16s_aligned16_orc_impl.orc diff --git a/volk/orc/volk_16sc_magnitude_16s_aligned16_orc_impl.orc b/volk/orc/volk_16sc_magnitude_16s_aligned16_orc_impl.orc new file mode 100644 index 000000000..f6c959c00 --- /dev/null +++ b/volk/orc/volk_16sc_magnitude_16s_aligned16_orc_impl.orc @@ -0,0 +1,24 @@ +.function volk_16sc_magnitude_16s_aligned16_orc_impl +.source 4 src +.dest 2 dst +.temp 2 reals +.temp 2 imags +.temp 4 reall +.temp 4 imagl +.temp 4 realf +.temp 4 imagf +.temp 4 sumf +.temp 4 rootf +.temp 4 rootl + +splitlw reals, imags, src +convwl reall, reals +convwl imagl, imags +convlf realf, reall +convlf imagf, imagl +mulf realf, realf, (1.0 / 32768.0) +mulf imagf, imagf, (1.0 / 32768.0) +addf sumf, realf, imagf +sqrtf rootf, sumf +convfl rootl, rootf +conflw dst, rootl diff --git a/volk/orc/volk_16sc_magnitude_32f_aligned16_orc_impl.orc b/volk/orc/volk_16sc_magnitude_32f_aligned16_orc_impl.orc new file mode 100644 index 000000000..44654ad8e --- /dev/null +++ b/volk/orc/volk_16sc_magnitude_32f_aligned16_orc_impl.orc @@ -0,0 +1,25 @@ +.function volk_16sc_magnitude_32f_aligned16_orc_impl +.source 4 src +.dest 4 dst +.floatparam 4 scalar +.temp 4 invscalar +.temp 4 reall +.temp 4 imagl +.temp 2 reals +.temp 2 imags +.temp 4 realf +.temp 4 imagf +.temp 4 sumf + +divf invscalar, 1.0, scalar +splitlw reals, imags, src +convswl reall, reals +convswl imagl, imags +convlf realf, reall +convlf imagf, imagl +mulf realf, realf, invscalar +mulf imagf, imagf, invscalar +mulf realf, realf, realf +mulf imagf, imagf, imagf +addf sumf, realf, imagf +sqrtf dst, sumf diff --git a/volk/orc/volk_32fc_magnitude_16s_aligned16_orc_impl.orc b/volk/orc/volk_32fc_magnitude_16s_aligned16_orc_impl.orc new file mode 100644 index 000000000..db8405e59 --- /dev/null +++ b/volk/orc/volk_32fc_magnitude_16s_aligned16_orc_impl.orc @@ -0,0 +1,25 @@ +.function volk_32fc_magnitude_16s_aligned16_orc_impl +.source 8 src +.dest 2 dst +.floatparam 4 scalar +.temp 4 invscalar +.temp 4 reall +.temp 4 imagl +.temp 4 realf +.temp 4 imagf +.temp 4 sumf +.temp 4 rootf +.temp 4 rootl + +divf invscalar, 1.0, scalar +splitql reall, imagl, src +convlf realf, reall +convlf imagf, imagl +mulf realf, realf, invscalar +mulf imagf, imagf, invscalar +mulf realf, realf, realf +mulf imagf, imagf, imagf +addf sumf, realf, imagf +sqrtf rootf, sumf +convfl rootl, rootf +convlw dst, rootl diff --git a/volk/orc/volk_32fc_magnitude_32f_aligned16_orc_impl.orc b/volk/orc/volk_32fc_magnitude_32f_aligned16_orc_impl.orc new file mode 100644 index 000000000..cc5c85b45 --- /dev/null +++ b/volk/orc/volk_32fc_magnitude_32f_aligned16_orc_impl.orc @@ -0,0 +1,21 @@ +.function volk_32fc_magnitude_32f_aligned16_orc_impl +.source 8 src +.dest 4 dst +.floatparam 4 scalar +.temp 4 invscalar +.temp 4 reall +.temp 4 imagl +.temp 4 realf +.temp 4 imagf +.temp 4 sumf + +divf invscalar, 1.0, scalar +splitql reall, imagl, src +convlf realf, reall +convlf imagf, imagl +mulf realf, realf, invscalar +mulf imagf, imagf, invscalar +mulf realf, realf, realf +mulf imagf, imagf, imagf +addf sumf, realf, imagf +sqrtf dst, sumf diff --git a/volk/orc/volk_32s_or_aligned16_orc_impl.orc b/volk/orc/volk_32s_or_aligned16_orc_impl.orc new file mode 100644 index 000000000..6d2a3859a --- /dev/null +++ b/volk/orc/volk_32s_or_aligned16_orc_impl.orc @@ -0,0 +1,5 @@ +.function volk_32s_or_aligned16_orc_impl +.dest 4 dst +.source 4 src1 +.source 4 src2 +orl dst, src1, src2 |