Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

I use Respberry Pi 3 , but get 'sgemv_1x8.S' error ! #6

Closed
z-huabao opened this issue Mar 1, 2018 · 1 comment
Closed

I use Respberry Pi 3 , but get 'sgemv_1x8.S' error ! #6

z-huabao opened this issue Mar 1, 2018 · 1 comment

Comments

@z-huabao
Copy link

z-huabao commented Mar 1, 2018

my etc/config use ARM a53:
device.default= cpu.rk3399.a53.2

I get error when make:

make[2]: Leaving directory '/home/pi/tengine/operator/plugin'
gcc  -std=gnu99 -o /home/pi/tengine/build/operator/liboperator.so -shared /home/pi/tengine/build/operator/operator/built-in.o /home/pi/tengine/build/operator/plugin/built-in.o 
make[1]: Leaving directory '/home/pi/tengine/operator'
make[1]: Entering directory '/home/pi/tengine/executor'
make[2]: Entering directory '/home/pi/tengine/executor/operator'
make[3]: Entering directory '/home/pi/tengine/executor/operator/arm'
make[4]: Entering directory '/home/pi/tengine/executor/operator/arm/fc'
g++ -std=c++11   -I. -I./include  -O3 -funroll-loops  -Wall -g -fPIC  -I/home/pi/tengine/executor/../core/include -I/home/pi/tengine/executor/../include -I/home/pi/tengine/executor/../operator/include  -I/home/pi/tengine/executor/include   -DCONFIG_ARCH_ARM64=1  -I../include  -c fully_connected.cpp -o /home/pi/tengine/build/executor/operator/arm/fc/fully_connected.o 
gcc  -std=gnu99   -Wall -g -fPIC  -I/home/pi/tengine/executor/../core/include -I/home/pi/tengine/executor/../include -I/home/pi/tengine/executor/../operator/include  -I/home/pi/tengine/executor/include   -DCONFIG_ARCH_ARM64=1   -E sgemv_1x8.S -o /home/pi/tengine/build/executor/operator/arm/fc/sgemv_1x8.s
gcc  -std=gnu99 -g    -c /home/pi/tengine/build/executor/operator/arm/fc/sgemv_1x8.s -o /home/pi/tengine/build/executor/operator/arm/fc/sgemv_1x8.o 
sgemv_1x8.S: Assembler messages:
sgemv_1x8.S:83: 错误:bad instruction `ldp x9,x10,[sp]'
sgemv_1x8.S:84: 错误:bad instruction `ldp x11,x12,[sp,0x10]'
sgemv_1x8.S:85: 错误:bad instruction `ldp x13,x14,[sp,0x20]'
sgemv_1x8.S:86: 错误:ARM register expected -- `ldr x15,[sp,0x30]'
sgemv_1x8.S:88: 错误:bad instruction `ldp q30,q31,[x0]'
sgemv_1x8.S:90: 错误:selected processor does not support `cbz x15,loop_end' in ARM mode
sgemv_1x8.S:94: 错误:ARM register expected -- `ldr q0,[x1],#0x10'
sgemv_1x8.S:95: 错误:bad instruction `ld4 { v16.d,v17.d,v18.d,v19.d}[0],[x2],#0x20'
sgemv_1x8.S:96: 错误:bad instruction `ld4 { v16.d,v17.d,v18.d,v19.d}[1],[x3],#0x20'
sgemv_1x8.S:97: 错误:bad instruction `ld4 { v20.d,v21.d,v22.d,v23.d}[0],[x4],#0x20'
sgemv_1x8.S:98: 错误:bad instruction `ld4 { v20.d,v21.d,v22.d,v23.d}[1],[x5],#0x20'
sgemv_1x8.S:100: 错误:bad instruction `fmla v30.4s,v16.4s,v0.s[0]'
sgemv_1x8.S:101: 错误:bad instruction `fmla v30.4s,v17.4s,v0.s[1]'
sgemv_1x8.S:102: 错误:ARM register expected -- `subs x15,x15,0x1'
sgemv_1x8.S:103: 错误:bad instruction `fmla v30.4s,v18.4s,v0.s[2]'
sgemv_1x8.S:104: 错误:bad instruction `prfm pldl1keep,[x1,0x80]'
sgemv_1x8.S:105: 错误:bad instruction `fmla v30.4s,v19.4s,v0.s[3]'
sgemv_1x8.S:106: 错误:bad instruction `prfm pldl1keep,[x2,0xa0]'
sgemv_1x8.S:108: 错误:bad instruction `fmla v31.4s,v20.4s,v0.s[0]'
sgemv_1x8.S:109: 错误:bad instruction `prfm pldl1keep,[x3,0x90]'
sgemv_1x8.S:110: 错误:bad instruction `fmla v31.4s,v21.4s,v0.s[1]'
sgemv_1x8.S:111: 错误:bad instruction `prfm pldl1keep,[x4,0xb0]'
sgemv_1x8.S:112: 错误:bad instruction `fmla v31.4s,v22.4s,v0.s[2]'
sgemv_1x8.S:113: 错误:bad instruction `prfm pldl1keep,[x5,0xc0]'
sgemv_1x8.S:114: 错误:bad instruction `fmla v31.4s,v23.4s,v0.s[3]'
sgemv_1x8.S:116: 错误:unexpected character `n' in type specifier
sgemv_1x8.S:116: 错误:bad instruction `b.ne loop'
sgemv_1x8.S:122: 错误:bad instruction `st1 {v30.s}[0],[x6]'
sgemv_1x8.S:123: 错误:bad instruction `st1 {v30.s}[1],[x7]'
sgemv_1x8.S:124: 错误:bad instruction `st1 {v30.s}[2],[x9]'
sgemv_1x8.S:125: 错误:bad instruction `st1 {v30.s}[3],[x10]'
sgemv_1x8.S:126: 错误:bad instruction `st1 {v31.s}[0],[x11]'
sgemv_1x8.S:127: 错误:bad instruction `st1 {v31.s}[1],[x12]'
sgemv_1x8.S:128: 错误:bad instruction `st1 {v31.s}[2],[x13]'
sgemv_1x8.S:129: 错误:bad instruction `st1 {v31.s}[3],[x14]'
sgemv_1x8.S:131: 错误:bad instruction `ret'
/home/pi/tengine/scripts/makefile.build:105: recipe for target '/home/pi/tengine/build/executor/operator/arm/fc/sgemv_1x8.o' failed
make[4]: *** [/home/pi/tengine/build/executor/operator/arm/fc/sgemv_1x8.o] Error 1
make[4]: Leaving directory '/home/pi/tengine/executor/operator/arm/fc'
/home/pi/tengine/scripts/makefile.build:70: recipe for target 'fc' failed
make[3]: *** [fc] Error 2
make[3]: Leaving directory '/home/pi/tengine/executor/operator/arm'
/home/pi/tengine/scripts/makefile.build:70: recipe for target 'arm' failed
make[2]: *** [arm] Error 2
make[2]: Leaving directory '/home/pi/tengine/executor/operator'
Makefile:72: recipe for target 'operator' failed
make[1]: *** [operator] Error 2
make[1]: Leaving directory '/home/pi/tengine/executor'
Makefile:52: recipe for target 'executor' failed
make: *** [executor] Error 2
pi@raspberrypi:~/tengine $ 
@00liujj
Copy link

00liujj commented Mar 1, 2018

the compiler is 32 bit, while the asm code is 64 bit.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants