kernel/eka/debug/ost/inc/traceutils.h
branchGCC_SURGE
changeset 160 30e086416910
parent 0 a41df078684a
equal deleted inserted replaced
159:185ac9ba847c 160:30e086416910
    83 	BTrace::OutFilteredPcFormatBig(OST_HEADER(8,aGroupId,aThreadIdPresent,aPcPresent),(TUint32)(aComponentId),aPc,aTraceId,aData,(TInt)(aDataSize))
    83 	BTrace::OutFilteredPcFormatBig(OST_HEADER(8,aGroupId,aThreadIdPresent,aPcPresent),(TUint32)(aComponentId),aPc,aTraceId,aData,(TInt)(aDataSize))
    84 
    84 
    85 
    85 
    86 #ifdef __MARM_ARMV5__
    86 #ifdef __MARM_ARMV5__
    87 	//armv5
    87 	//armv5
    88 #define GET_PC(pc) \
    88 	#if defined(__GCCE__)
    89 	TUint32 pc = 0; \
    89 	#define GET_PC(pc) \
    90 	asm("mov pc, __return_address()")
    90 		TUint32 pc = 0; \
       
    91 		asm("mov %[res], %[val]" : [res] "=r" (pc) : [val] "r" (__builtin_return_address(0)))
       
    92 	#elif defined(__ARMCC__)
       
    93 	#define GET_PC(pc) \
       
    94 		TUint32 pc = 0; \
       
    95 		asm("mov pc, __return_address()")
       
    96 	#else
       
    97 	#error What compiler?
       
    98 	#endif
    91 #elif __MARM_ARM4__
    99 #elif __MARM_ARM4__
    92 	//arm4 not implemented yet!
   100 	//arm4 not implemented yet!
    93 #define GET_PC(pc) \
   101 #define GET_PC(pc) \
    94 	TUint32 pc = 0;
   102 	TUint32 pc = 0;
    95 #elif __WINS__
   103 #elif __WINS__