NAGARJUNA REDDY

Compilation error

Discussion created by NAGARJUNA REDDY on Oct 28, 2011
Latest reply on Oct 28, 2011 by Stefan Craciun

Hi,

 

I am trying to compile a GCC project using codewarrior HCS12 compiler.

 

I am getting a compiler error C12070 Identifier expected at the below line for asm function.

 

"m" (*((unsigned int *)&log_tooth+1)), \

 

I am pasting the asm function code as below.

 

__asm{           
                 ldab  (__arg1);
                andb  #0xf;
                 brclr (__arg3),#1, tlnot_sync;  // #0x01 is SYNC_SYNCED -> 0x10 in log top byte
                orab  #0x10;
                tlnot_sync:
                brclr (__arg3), #8, tlnot_semi; // #0x08 is SYNC_SEMI -> 0x40 in log top byte
                orab  #0x40;
                tlnot_semi:
                brclr (__arg3), #0x10, tlnot_semi2; // #0x10 is SYNC_SEMI2 -> 0x80 in log top byte
                orab  #0x80;
                tlnot_semi2:
                brclr (__arg4),#1,tlnot_trg2; // #0x01 is flagbyte1_trig2active -> 0x20 in log top byte
                orab  #0x20;
                tlnot_trg2:
                stab  0,Y;

                ldd  (__arg2);
                std  1,Y;\
                : \
                : "y" (log_offset+ram_data),  \
            "m" (*((unsigned char *)&log_tooth+1)), \  // byte 3:**2**:1:0
            "m" (*((unsigned int *)&log_tooth+1)), \ // bytes 3:2:**1**:**0**
            "m" (synch),  \
            "m" (flagbyte1) ;
        }

 

Could you please help me in solving this compiler error.

 

Kindly let me know if there are any bacis hints to take care while porting a GCC project to codewarrior.

 

Regards,

Nagarjuna

Outcomes