compile error: x29 cannot be used in asm here
Closed this issue · 2 comments
Bran-Sun commented
I am trying to compile on Kunpeng 920-4826 machine, but got this error
g++ -c -fPIC test_temp_L1.c -o test_temp_L1.o
test_temp_L1.c: In function 'void SGEMM_NN_L1(float*, float*, float*, long int, long int, long int)':
test_temp_L1.c:2727:1: error: x29 cannot be used in asm here
}
^
Makefile:14: recipe for target 'test_temp_L1.o' failed
It seems like register x29 is the frame pointer and cannot be used directly. Can you check this problem, Thanks.
The infomation of the CPU
Handle 0x002B, DMI type 4, 48 bytes
Processor Information
Socket Designation: CPU01
Type: Central Processor
Family: ARM
Manufacturer: HiSilicon
Version: Kunpeng 920-4826
Voltage: 0.9 V
External Clock: 100 MHz
Max Speed: 2600 MHz
Current Speed: 2600 MHz
Status: Populated, Enabled
Upgrade: Unknown
Core Count: 48
Core Enabled: 48
Thread Count: 48
Characteristics:
64-bit capable
Multi-Core
Execute Protection
Enhanced Virtualization
Power/Performance Control
AnonymousYWL commented
Hello! Thank you for your interest in this work.
Please check your GCC version.
Bran-Sun commented
Thanks, g++-8 works for me.
By the way, I notice that the interface of gemm miss some arguments like lda, will you support such arguments later?