[dpdk-dev] [PATCH v3 0/6] Add clang compilation support for armv8a linuxapp

Hemant Agrawal hemant.agrawal at nxp.com
Mon May 15 12:29:49 CEST 2017


On 5/12/2017 11:15 AM, Ashwin Sekhar T K wrote:
> This series of patches adds the clang compilation support for armv8a linuxapp.
>
> Patch 1 adds an rte_pause() to a tight while loop in rte_eal_wait_lcore().
> It fixes warning -Wempty-body seen with armv8a clang compilation.
>
> Patch 2 is basically for removing the usage of assembly directive ".arch armv8-a+crc"
> as this is not understood by clang. For removing these directives, compilation of
> armv8a crc32 support is made conditional and is only done for machines which has
> the crc extensions. Doing this avoids the need for having the ".arch armv8-a+crc"
> directives in the code.
>
> Patch 3, 4, and 5 are for fixing the compilation errors/warnings.
>
> Patch 6 adds the arm64-armv8a-linuxapp-clang defconfig. It also moves all the common
> defines to common_armv8a_config. Now defconfigs arm64-armv8a-linuxapp-gcc/clang contain
> only the defines related to toolchain.
>
> v3:
>  * Moved [PATCH v2 6/6] to [PATCH v3 1/6] and moved [PATCH v2 2/6] to [PATCH v3 6/6].
>
> v2:
>  * Moved common defines from arm64-armv8a-linuxapp-gcc to common_armv8a_config
>  * Removed the -Wno-empty-body flag from eal Makefile. Added rte_pause() to the
>    while loop causing this warning.
>
> Ashwin Sekhar T K (6):
>   eal: pause while busy-waiting for slave
>   hash: compile armv8a CRC32 support conditionally
>   net/thunderx: fix compile errors for armv8a clang
>   acl: fix warning seen with armv8a clang
>   eal/arm: fix warnings seen with armv8a clang
>   config: add clang support for armv8a linuxapp
>
>  config/common_armv8a_linuxapp                      | 53 ++++++++++++++++++++++
>  config/defconfig_arm64-armv8a-linuxapp-clang       | 35 ++++++++++++++
>  config/defconfig_arm64-armv8a-linuxapp-gcc         | 23 +---------
>  drivers/net/thunderx/base/nicvf_plat.h             |  2 +-
>  lib/librte_acl/Makefile                            |  5 +-
>  lib/librte_eal/common/eal_common_launch.c          |  3 +-
>  .../common/include/arch/arm/rte_byteorder.h        |  2 +-
>  lib/librte_hash/Makefile                           |  2 +
>  lib/librte_hash/rte_crc_arm64.h                    |  4 --
>  lib/librte_hash/rte_hash_crc.h                     |  2 +-
>  10 files changed, 100 insertions(+), 31 deletions(-)
>  create mode 100644 config/common_armv8a_linuxapp
>  create mode 100644 config/defconfig_arm64-armv8a-linuxapp-clang
>
Series
Acked-by: Hemant Agrawal <hemant.agrawal at nxp.com>



More information about the dev mailing list