On 1/16/2020 7:09 AM, Xiaolong Ye wrote:
> Move the conditional compilation block to the inner check helper, so we
> can reduce the number of multiple ifdef check pairs used.
> 
> Signed-off-by: Xiaolong Ye <xiaolong...@intel.com>

<...>
        
> @@ -2794,10 +2792,8 @@ ice_tx_done_cleanup(void *txq, uint32_t free_cnt)
>       struct ice_adapter *ad =
>               ICE_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
>  
> -#ifdef RTE_ARCH_X86
>       if (ad->tx_vec_allowed)
>               return ice_tx_done_cleanup_vec(q, free_cnt);
> -#endif
>       if (ad->tx_simple_allowed)
>               return ice_tx_done_cleanup_simple(q, free_cnt);
>       else
> @@ -2953,7 +2949,6 @@ ice_set_rx_function(struct rte_eth_dev *dev)
>       PMD_INIT_FUNC_TRACE();
>       struct ice_adapter *ad =
>               ICE_DEV_PRIVATE_TO_ADAPTER(dev->data->dev_private);
> -#ifdef RTE_ARCH_X86
>       struct ice_rx_queue *rxq;
>       int i;
>       bool use_avx2 = false;


The build is still failing for arm, some defines like 'RTE_CPUFLAG_AVX2' &
'RTE_CPUFLAG_AVX512F' or functions 'ice_rxq_vec_setup', 'ice_recv_pkts_vec',
'ice_recv_scattered_pkts_vec' etc only defined for x86

It looks like more work is required, to created dummy versions of these failin
functions also moving 'ice_rx_vec_dev_check()' form 'ice_rxtx_vec_sse.c' to
'ice_rxtx.c', otherwise we are having chicken-egg problem. So needs something
similar to done in i40e.

If it is too much work for rc1, we can with existing #ifdef for now, up to you.

Reply via email to