Hi
  I am trying to build dpdk-next-net code based Kunpeng920(ARM64) platform used 
meson build. However, it is build fail.
The libtmp_rte_event_octeontx2 build error happened. The output as follows:

  [1986/2298] Compiling C object 
drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o
FAILED: 
drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o
cc -Idrivers/libtmp_rte_event_octeontx2.a.p -Idrivers -I../drivers 
-Idrivers/event/octeontx2 -I../drivers/event/octeontx2 
-Idrivers/crypto/octeontx2 -I../drivers/crypto/octeontx2 -Idrivers/common/cpt 
-I../drivers/common/cpt -Ilib/librte_eventdev -I../lib/librte_eventdev -I. -I.. 
-Iconfig -I../config -Ilib/librte_eal/include -I../lib/librte_eal/include 
-Ilib/librte_eal/linux/include -I../lib/librte_eal/linux/include 
-Ilib/librte_eal/arm/include -I../lib/librte_eal/arm/include 
-Ilib/librte_eal/common -I../lib/librte_eal/common -Ilib/librte_eal 
-I../lib/librte_eal -Ilib/librte_kvargs -I../lib/librte_kvargs 
-Ilib/librte_metrics -I../lib/librte_metrics -Ilib/librte_telemetry 
-I../lib/librte_telemetry -Ilib/librte_ring -I../lib/librte_ring 
-Ilib/librte_ethdev -I../lib/librte_ethdev -Ilib/librte_net -I../lib/librte_net 
-Ilib/librte_mbuf -I../lib/librte_mbuf -Ilib/librte_mempool 
-I../lib/librte_mempool -Ilib/librte_meter -I../lib/librte_meter 
-Ilib/librte_hash -I../lib/librte_hash -Ilib/librte_timer -I../lib/librte_timer 
-Ilib/librte_cryptodev -I../lib/librte_cryptodev -Idrivers/bus/pci 
-I../drivers/bus/pci -I../drivers/bus/pci/linux -Ilib/librte_pci 
-I../lib/librte_pci -Idrivers/common/octeontx2 -I../drivers/common/octeontx2 
-Idrivers/mempool/octeontx2 -I../drivers/mempool/octeontx2 
-Idrivers/net/octeontx2 -I../drivers/net/octeontx2 -Idrivers/crypto/octeontx 
-I../drivers/crypto/octeontx -Ilib/librte_security -I../lib/librte_security 
-Idrivers/bus/vdev -I../drivers/bus/vdev -pipe -D_FILE_OFFSET_BITS=64 -Wall 
-Winvalid-pch -O3 -include rte_config.h -Wextra -Wcast-qual -Wdeprecated 
-Wformat-nonliteral -Wformat-security -Wmissing-declarations 
-Wmissing-prototypes -Wnested-externs -Wold-style-definition -Wpointer-arith 
-Wsign-compare -Wstrict-prototypes -Wundef -Wwrite-strings 
-Wno-missing-field-initializers -D_GNU_SOURCE -fPIC -march=armv8-a+crc 
-DALLOW_EXPERIMENTAL_API -DALLOW_INTERNAL_API -MD -MQ 
drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o -MF 
drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o.d -o 
drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_tim_worker.c.o -c 
../drivers/event/octeontx2/otx2_tim_worker.c
../drivers/event/octeontx2/otx2_tim_worker.c: In function 
‘otx2_tim_arm_tmo_tick_burst_mod’:
../drivers/event/octeontx2/otx2_tim_worker.c:154:18: error: could not split insn
           struct rte_event_timer **tim, \
                  ^
../drivers/event/octeontx2/otx2_tim_evdev.h:208:1: note: in expansion of macro 
‘FP’
 FP(mod,   0, 0, 0, OTX2_TIM_BKT_MOD | OTX2_TIM_ENA_DFB)  \
 ^
../drivers/event/octeontx2/otx2_tim_worker.c:161:1: note: in expansion of macro 
‘TIM_ARM_TMO_FASTPATH_MODES’
 TIM_ARM_TMO_FASTPATH_MODES
 ^
(insn 252 250 255 (parallel [
            (set (reg:DI 1 x1 [orig:230 D.16918 ] [230])
                (mem/v:DI (reg/f:DI 10 x10 [orig:229 D.16920 ] [229]) [-1  S8 
A64]))
            (set (mem/v:DI (reg/f:DI 10 x10 [orig:229 D.16920 ] [229]) [-1  S8 
A64])
                (unspec_volatile:DI [
                        (plus:DI (mem/v:DI (reg/f:DI 10 x10 [orig:229 D.16920 ] 
[229]) [-1  S8 A64])
                            (const_int 1099511627776 [0x10000000000]))
                        (const_int 2 [0x2])
                    ] UNSPECV_ATOMIC_OP))
            (clobber (reg:CC 66 cc))
            (clobber (reg:DI 4 x4))
            (clobber (reg:SI 3 x3))
        ]) ../drivers/event/octeontx2/otx2_tim_worker.h:81 1832 
{atomic_fetch_adddi}
     (expr_list:REG_UNUSED (reg:CC 66 cc)
        (expr_list:REG_UNUSED (reg:DI 4 x4)
            (expr_list:REG_UNUSED (reg:SI 3 x3)
                (nil)))))
../drivers/event/octeontx2/otx2_tim_worker.c:154:18: internal compiler error: 
in final_scan_insn, at final.c:2897
           struct rte_event_timer **tim, \
                  ^
../drivers/event/octeontx2/otx2_tim_evdev.h:208:1: note: in expansion of macro 
‘FP’
 FP(mod,   0, 0, 0, OTX2_TIM_BKT_MOD | OTX2_TIM_ENA_DFB)  \
 ^
../drivers/event/octeontx2/otx2_tim_worker.c:161:1: note: in expansion of macro 
‘TIM_ARM_TMO_FASTPATH_MODES’
 TIM_ARM_TMO_FASTPATH_MODES
 ^
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://bugzilla.redhat.com/bugzilla> for instructions.
{standard input}: Assembler messages:
{standard input}: Error: open CFI at the end of file; missing .cfi_endproc 
directive
Preprocessed source stored into /tmp/cchw0Ftu.out file, please attach this to 
your bugreport.
[2056/2298] Compiling C object 
drivers/libtmp_rte_event_octeontx2.a.p/event_octeontx2_otx2_worker_dual.c.o
ninja: build stopped: subcommand failed.

The gcc version is:
[root@centos-C3 dpdk-next-net]# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc/aarch64-unknown-linux-gnu/10.1.0/lto-wrapper
Target: aarch64-unknown-linux-gnu
Configured with: ./configure --disable-multilib --enable-languages=c,c++ 
--with-gmp=/usr/local/gmp-5.1.3 --with-mpfr=/usr/local/mpfr-4.0.2 
--with-mpc=/usr/local/mpc-1.1.0
Thread model: posix
Supported LTO compression algorithms: zlib
gcc version 10.1.0 (GCC)

the OS types is centos
Linux centos-C3 5.6.0-rc5+ #1 SMP PREEMPT Wed Oct 21 16:32:46 HKT 2020 aarch64 
aarch64 aarch64 GNU/Linux

Do you have any idea about above?

Best Regards
Lijun Ou

Reply via email to