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.

TMS320F28388D: Function parameters are copied to which register ?

Part Number: TMS320F28388D

We have used  function as : 

void memcpy_asm(void * dst, const void * src, UINT16 u16Length)
{

asm( " LSR AL, #1\n");
asm( " DEC AL\n" );
asm( " MOV AR0, AL\n");
asm( " MOVL ACC,*XAR5++\n" 
" MOVL *XAR4++,ACC \n"
" BANZ -2,AR0--\n"); 

}

UINT16 XorChecksum_asm(void *vptrData, UINT16 u16Length)
{


asm( " DEC AL\n" ); 
asm( " MOV AR0, AL\n");
asm( " MOV ACC, #0\n");
asm( " RPT AR0 || XOR ACC, *XAR4++\n");
}

My question is when parameters are passed, how AL, XAR4, XAR5  are filled with data of passed parameters ?. Which PDF will give me information about this ?

I was referring " TMS320C28x Optimizing C/C++ Compiler v18.1.0.LTS". But no where its mentioned UINT16 data is stored in AL, FIrst void * parameter, second void * parameter in so and so register. 

 

Can I get details from where I could get data ?.