cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Highlighted
Explorer
Explorer
6,766 Views
Registered: ‎08-26-2014

How to include assembly files to a C project in SDK?

Hello,

 

I am trying to use the NEON optimized functions from the Ne10 project in a Zynq standalone application using the SDK environment.

 

I successfully ran some C math functions (matrix multiplication, matrix inversion, determinant...) but when I try to use these same functions optimized for NEON (which are written in assembly code), after including the library files the compiler throw several errors:

 

[...]NE10header.s:19:1: error: stray '@' in program

[...]NE10_mulmat.neon.s:186:15: error: invalid preprocessing directive #load

I tried to look for a solution but I could not find anything. Does anyone know how to do it?

 

Thanks,

 

Cerilet.

Tags (4)
0 Kudos
2 Replies
Highlighted
Xilinx Employee
Xilinx Employee
6,727 Views
Registered: ‎08-02-2007

hi,

 

did you get a chance to look at this AR? http://www.xilinx.com/support/answers/18561.html

 

--hs

----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.

Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
0 Kudos
Highlighted
Explorer
Explorer
6,714 Views
Registered: ‎08-26-2014

Hi,

 

yes, I found that answer, but I need to use a library written in assembler, so when I add the call to the function ne10_mulmat_4x4f_neon which links to the next line in NE10_math.h:

 

 

extern ne10_result_t ne10_invmat_4x4f_neon (ne10_mat4x4f_t * dst, ne10_mat4x4f_t * src, ne10_uint32_t count) asm ("ne10_invmat_4x4f_neon");

 

It throws the following error:

 

[...]NE10_mulmat.neon.s:186:15: error: invalid preprocessing directive #load
[...]NE10_mulmat.neon.s:199:16: error: invalid preprocessing directive #rearrange
[...]NE10_mulmat.neon.s:273:15: error: invalid preprocessing directive #store

 

It seems it is not recognizing the assembly code properly. It is been ages since I used assembly code. I add the files so you can have a look.

0 Kudos