From 9d9aadd420773c7ede511fde0a583b7e0ffe928d Mon Sep 17 00:00:00 2001 From: Raymond Knopp Date: Tue, 9 Oct 2018 15:08:59 +0200 Subject: [PATCH] more SIMD modifications --- .../nrPolar_tools/nr_polar_decoding_tools.c | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/openair1/PHY/CODING/nrPolar_tools/nr_polar_decoding_tools.c b/openair1/PHY/CODING/nrPolar_tools/nr_polar_decoding_tools.c index f9105844d1..f9d8d7fbb3 100644 --- a/openair1/PHY/CODING/nrPolar_tools/nr_polar_decoding_tools.c +++ b/openair1/PHY/CODING/nrPolar_tools/nr_polar_decoding_tools.c @@ -474,6 +474,11 @@ void applyGtoright(t_nrPolar_params *pp,decoder_node_t *node) { } } +int16_t minus1[16] = {-1,-1,-1,-1, + -1,-1,-1,-1, + -1,-1,-1,-1, + -1,-1,-1,-1}; + void computeBeta(t_nrPolar_params *pp,decoder_node_t *node) { int16_t *betav = node->beta; @@ -483,7 +488,7 @@ void computeBeta(t_nrPolar_params *pp,decoder_node_t *node) { printf("Computing beta @ level %d first_leaf_index %d (all_frozen %d)\n",node->level,node->first_leaf_index,node->left->all_frozen); #endif if (node->left->all_frozen==0) { // if left node is not aggregation of frozen bits - /*#if defined(__AVX2__) +#if defined(__AVX2__) int avx2mod = (node->Nv/2)&15; if (avx2mod == 0) { int avx2len = node->Nv/2/16; @@ -491,18 +496,24 @@ void computeBeta(t_nrPolar_params *pp,decoder_node_t *node) { for (int i=0;iNv/2;i++) { betav[i] = (betal[i] != betar[i]) ? 1 : -1;