1423c8a29SSathesh Edara# SPDX-License-Identifier: BSD-3-Clause 2423c8a29SSathesh Edara# Copyright(C) 2021 Marvell. 3423c8a29SSathesh Edara# 4423c8a29SSathesh Edara 5423c8a29SSathesh Edarasources = files( 6423c8a29SSathesh Edara 'otx_ep_ethdev.c', 7423c8a29SSathesh Edara 'otx_ep_rxtx.c', 8423c8a29SSathesh Edara 'otx_ep_vf.c', 9423c8a29SSathesh Edara 'otx2_ep_vf.c', 10d826133aSSathesh Edara 'cnxk_ep_vf.c', 11c836a7baSSathesh Edara 'otx_ep_mbox.c', 1235dee56cSVamsi Attunuru 'cnxk_ep_rx.c', 1335dee56cSVamsi Attunuru 'cnxk_ep_tx.c', 14423c8a29SSathesh Edara) 15ab09499eSPavan Nikhilesh 16ab09499eSPavan Nikhileshif arch_subdir == 'x86' 17ab09499eSPavan Nikhilesh sources += files('cnxk_ep_rx_sse.c') 18aa177747SPavan Nikhilesh if cc.get_define('__AVX2__', args: machine_args) != '' 19aa177747SPavan Nikhilesh cflags += ['-DCC_AVX2_SUPPORT'] 20aa177747SPavan Nikhilesh sources += files('cnxk_ep_rx_avx.c') 21aa177747SPavan Nikhilesh elif cc.has_argument('-mavx2') 22aa177747SPavan Nikhilesh cflags += ['-DCC_AVX2_SUPPORT'] 23aa177747SPavan Nikhilesh otx_ep_avx2_lib = static_library('otx_ep_avx2_lib', 24aa177747SPavan Nikhilesh 'cnxk_ep_rx_avx.c', 25aa177747SPavan Nikhilesh dependencies: [static_rte_ethdev, static_rte_pci, static_rte_bus_pci], 26aa177747SPavan Nikhilesh include_directories: includes, 27aa177747SPavan Nikhilesh c_args: [cflags, '-mavx2']) 28aa177747SPavan Nikhilesh objs += otx_ep_avx2_lib.extract_objects('cnxk_ep_rx_avx.c') 29aa177747SPavan Nikhilesh endif 30ab09499eSPavan Nikhileshendif 31ab09499eSPavan Nikhilesh 32*c9e4dc02SPavan Nikhileshif arch_subdir == 'arm' 33*c9e4dc02SPavan Nikhilesh sources += files('cnxk_ep_rx_neon.c') 34*c9e4dc02SPavan Nikhileshendif 35*c9e4dc02SPavan Nikhilesh 36*c9e4dc02SPavan Nikhileshextra_flags = ['-Wno-strict-aliasing', '-flax-vector-conversions'] 37ab09499eSPavan Nikhileshforeach flag: extra_flags 38ab09499eSPavan Nikhilesh if cc.has_argument(flag) 39ab09499eSPavan Nikhilesh cflags += flag 40ab09499eSPavan Nikhilesh endif 41ab09499eSPavan Nikhileshendforeach 42