#include<reg51.h> void fun(char,int,long); main() { step 1 fun(0xdd,0xaabb,0xfedcba); } step 2 void fun(char cc,int ii,long ll) { int i=0xabcd; char c=0x77; long l=0xabcdef; while(1); return; }
Your code shows that fun()'s parameters are not being used initially. Those parameters need to be stored so that the auto's can be allocated to the registers for operation.
Thank You.