AnonymousYWL/LibShalom

compile error: x29 cannot be used in asm here

Closed this issue · 2 comments

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

Hello! Thank you for your interest in this work.
Please check your GCC version.

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?