This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TMS320F28379D: Assembly Gateway

Part Number: TMS320F28379D

Tool/software:

Hello,

I put a assembly gatemway in my project.

The output format is EABI. The prototype of the function I call in the C file is : extern float32_t asmfuncEQDIM(float32_t * flt_tabX, float32_t * flt_tabY,uint16_t uint16_Dim);

The function is defined in a asm file (down here the begining of the gateway):

  

So, when I call this function, I modify XAR4, XAR5, ACC and R0H registers.

In the gateway I modify XAR7, R3H, R7H, ...

When calling it in a the main routine, everything is OK.

But the are bugs when calling it in a function. I expected that the compiler would save every register needed, but it seems not.

So, maybe the register I work on in the gateway disturb the function in which the gateway is called.

Can you tell what is the right way to use a assembly function in a funtion ? (what to save, how to do it ...)

Thank you