Hi Damjan, The patch[2] installs clang-9 in package dependencies and sets “clang-10 clang-9 gcc-9 cc” as the default compiler.
The problem is, 1. clang-9 does not support ‘-mtune=qdf24xx’, ‘-mtune=neoverse-n1’, ‘-mcpu=neoverse-n1’, so it cannot do arch-specific compiling and optimal function selection for those two CPUs. These options requires gcc-9.2, clang-10 and any newer versions. 2. The clang package servers for Ubuntu-18.04 mentioned in https://apt.llvm.org/ support x86, but does not support Arm64, so we cannot install clang-10/clang-11 directly via apt commands on Arm servers. I’m thinking two options, 1. remove clang-9 dependency in Makefile or add for x86_64 only, so that users should install clang-10/clang-9 for x86 manually, and for Arm, install gcc-9 and clang-10/clang-11(not available yet). Just like CSIT has to update gcc version to gcc-8.3 manually(gcc-8.3 not listed in dependencies) previously. 2. there are other several workaround, 2.1 install clang-10 from source code until we can do clang-10 binary install on Ubuntu-18.04 on Arm; 2.2 keep the code as it is now, although it will disable multi-arch support for these two CPUs with clang-9; 2.3 when we are developing code or doing benchmarking, we need to hack the code temporarily from “set(CMAKE_C_COMPILER_NAMES clang-10 clang-9 gcc-9 cc)” to “set(CMAKE_C_COMPILER_NAMES clang-10 gcc-9 cc)”, so that multi-arch will be supported with gcc-9. Could you suggest on this issue? Thanks. From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> On Behalf Of Damjan Marion via lists.fd.io Sent: 2020年4月28日 22:14 To: vpp-dev <vpp-dev@lists.fd.io> Subject: [vpp-dev] clang-9 Folks, As there is bug in gnu assembler which is shipping with ubuntu 18.04 we are not able to produce working binaries with avx512 instruction set. Because of that, I had to change default to avx2. reported bug[1], but it is ignored for a year. As alternative[2], I wanted to consider using clang-9 which is shipped with ubuntu 18.04 and seems like it is even capable of producing faster binaries than gcc. Unfortunately, "make test" is failing at several places including vxlan, ipsec and tcp stack[3]. May I ask folks who “own” that code to take a quick look? Thanks, Damjan [1] https://bugs.launchpad.net/ubuntu/cosmic/+source/binutils/+bug/1819961 [2] https://gerrit.fd.io/r/c/vpp/+/26744 [3] https://jenkins.fd.io/job/vpp-verify-master-ubuntu1804/3615/console
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#16289): https://lists.fd.io/g/vpp-dev/message/16289 Mute This Topic: https://lists.fd.io/mt/73327785/21656 Group Owner: vpp-dev+ow...@lists.fd.io Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-