I checked the default build, as expected no breakage.
But this no more is about the default dpdk build, but a potential gcc bug lets ignore the default gcc build and use DPDK source as a test.
To enable a non portable build you would have to use the rte_machine DBE_BUILD_OPTION in dpdk.
Further is you don't have the very latest skylake you'd also need to modify a build file to set this march still.
=> mk/machine/native/rte.vars.mk
Replace -march=native with -march=skylake-avx512
Then check the built testpmd program from the static build tree (to have all in one object):
$ objdump -dM intel /build/dpdk-9ZbA0X/dpdk-18.08/debian/build/static-root/build/app/test-pmd/testpmd > /tmp/testpmd.objdump
grep -e 'vmovdqu' /tmp/testpmd.objdump | grep -e '\[rax.*0x[2468]\]' | pastebinit
I checked the default build, as expected no breakage.
But this no more is about the default dpdk build, but a potential gcc bug lets ignore the default gcc build and use DPDK source as a test.
To enable a non portable build you would have to use the rte_machine DBE_BUILD_OPTION in dpdk.
$ DEB_BUILD_ OPTIONS= "parallel= 8 rte_machine=native" sbuild --purge=never -Adbionic-amd64 dpdk_18. 08-1~ubuntu0. 18.04.5. dsc
Further is you don't have the very latest skylake you'd also need to modify a build file to set this march still. native/ rte.vars. mk
=> mk/machine/
Replace -march=native with -march= skylake- avx512
Then check the built testpmd program from the static build tree (to have all in one object): dpdk-9ZbA0X/ dpdk-18. 08/debian/ build/static- root/build/ app/test- pmd/testpmd > /tmp/testpmd. objdump objdump | grep -e '\[rax.*0x[2468]\]' | pastebinit
$ objdump -dM intel /build/
grep -e 'vmovdqu' /tmp/testpmd.
-march= skylake- avx512 -mno-avx512f paste.ubuntu. com/p/nGrfJgffb k/ skylake- avx512 paste.ubuntu. com/p/zhbhFRqVj F/
=> http://
-march=
=> http://
I do not see the same error sequence as reported in https:/ /bugs.dpdk. org/show_ bug.cgi? id=97#c39
Could it be that: dpdk-9ZbA0X/ dpdk-18. 08/debian/ build/static- root/build/ app/test- pmd/testpmd' -ex 'set disassembly-flavor intel' -ex 'disassemble/rs mlx5_tx_ descriptor_ status' | less dpdk-9ZbA0X/ dpdk-18. 08/debian/ build/static- root/include/ rte_memcpy. h: 45a1d7 <+2311>: 48 83 ea 80 sub rdx,0xfffffffff fffff80
gdb -batch -ex 'file /build/
/build/
427 dst = (uint8_t *)dst + 128;
0x0000000000
/usr/lib/ gcc/x86_ 64-linux- gnu/7/include/ avxintrin. h: 45a1db <+2315>: 62 f1 fe 28 6f 04 c5 01 00 00 00 vmovdqu64 ymm0,YMMWORD PTR [rax*8+0x1]
921 return *__P;
0x0000000000
922 } _((__gnu_ inline_ _, __always_inline__, __artificial__)) 45a1e6 <+2326>: 62 f1 fe 28 7f 42 fd vmovdqu64 YMMWORD PTR [rdx-0x60],ymm0
923
924 extern __inline void __attribute_
925 _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
926 {
927 *__P = __A;
0x0000000000
921 return *__P; 45a1ed <+2333>: 62 f1 fe 28 6f 04 c5 02 00 00 00 vmovdqu64 ymm0,YMMWORD PTR [rax*8+0x2]
0x0000000000
922 } _((__gnu_ inline_ _, __always_inline__, __artificial__)) 45a1f8 <+2344>: 62 f1 fe 28 7f 42 fe vmovdqu64 YMMWORD PTR [rdx-0x40],ymm0
923
924 extern __inline void __attribute_
925 _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
926 {
927 *__P = __A;
0x0000000000
921 return *__P; 45a1ff <+2351>: 62 f1 fe 28 6f 04 c5 03 00 00 00 vmovdqu64 ymm0,YMMWORD PTR [rax*8+0x3]
0x0000000000