# HG changeset patch # User William Roberts # Date 1280139675 -3600 # Node ID ec72eca27576c67b4cc6e7d4b6e1fb81ab8f655f # Parent 07a685bbdd3db0360d58dad2d60e5d626bb671da# Parent e4a1175ecbc05a3ee98d9d089e840c30b9f634a5 Merge in latest fix for rom_sbs.pl diff -r e4a1175ecbc0 -r ec72eca27576 bsptemplate/asspandvariant/template_assp/eabi/katemplate.def diff -r e4a1175ecbc0 -r ec72eca27576 bsptemplate/asspandvariant/template_assp/interrupts.cia --- a/bsptemplate/asspandvariant/template_assp/interrupts.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/bsptemplate/asspandvariant/template_assp/interrupts.cia Mon Jul 26 11:21:15 2010 +0100 @@ -88,6 +88,6 @@ asm("__KTemplateIntCtrlBase: "); asm(".word %a0" : : "i" ((TInt)KHwBaseInterrupts)); asm("__Handlers: "); - asm(".word %a0" : : "i" ((TInt)&TemplateInterrupt::Handlers[0])); + asm(".word %a0" : : "i" (&TemplateInterrupt::Handlers[0])); } diff -r e4a1175ecbc0 -r ec72eca27576 bsptemplate/asspandvariant/template_variant/bld.inf --- a/bsptemplate/asspandvariant/template_variant/bld.inf Mon Jul 26 11:06:41 2010 +0100 +++ b/bsptemplate/asspandvariant/template_variant/bld.inf Mon Jul 26 11:21:15 2010 +0100 @@ -115,6 +115,11 @@ start extension base.bootstrap bootstrap +#ifdef SYMBIAN_OLD_EXPORT_LOCATION +option INC_PATH $(EPOCROOT)epoc32/include +#else +option INC_PATH $(EPOCROOT)epoc32/include/platform +#endif option NAME _template_bootrom option CPU arm @@ -146,6 +151,13 @@ option EXTRA_SRC_PATH $(EXTENSION_ROOT)/bootstrap option INCLUDES $(EXTENSION_ROOT)/config.inc option E32PATH $(EXTENSION_ROOT)/../../../kernel/eka/../. +#ifdef GCCE +option GCCE GCCE +option EXTRA_INC_PATH $(EPOCBLD)/$(NAME) +#endif +#ifdef ARMCC +option ARMCC ARMCC +#endif end diff -r e4a1175ecbc0 -r ec72eca27576 bsptemplate/asspandvariant/template_variant/inc/lffsdev.h --- a/bsptemplate/asspandvariant/template_variant/inc/lffsdev.h Mon Jul 26 11:06:41 2010 +0100 +++ b/bsptemplate/asspandvariant/template_variant/inc/lffsdev.h Mon Jul 26 11:21:15 2010 +0100 @@ -47,18 +47,18 @@ #if FLASH_BUS_WIDTH == 32 #define TFLASHWORD TUint32 - #define FLASH_BYTES_TO_WORDS(aNumBytes) (aNumBytes >> 2) - #define FLASH_ADDRESS_IN_BYTES(aWordAddr) (aWordAddr << 2) + #define FLASH_BYTES_TO_WORDS(aNumBytes) ((aNumBytes) >> 2) + #define FLASH_ADDRESS_IN_BYTES(aWordAddr) ((aWordAddr) << 2) #define FLASH_ERASE_WORD_VALUE 0xFFFFFFFF #elif FLASH_BUS_WIDTH == 16 #define TFLASHWORD TUint16 - #define FLASH_BYTES_TO_WORDS(aNumBytes) (aNumBytes >> 1) - #define FLASH_ADDRESS_IN_BYTES(aWordAddr) (aWordAddr << 1) + #define FLASH_BYTES_TO_WORDS(aNumBytes) ((aNumBytes) >> 1) + #define FLASH_ADDRESS_IN_BYTES(aWordAddr) ((aWordAddr) << 1) #define FLASH_ERASE_WORD_VALUE 0xFFFF #else // FLASH_BUS_WIDTH == 8 #define TFLASHWORD TUint8 - #define FLASH_BYTES_TO_WORDS(aNumBytes) aNumBytes - #define FLASH_ADDRESS_IN_BYTES(aWordAddr) aWordAddr + #define FLASH_BYTES_TO_WORDS(aNumBytes) (aNumBytes) + #define FLASH_ADDRESS_IN_BYTES(aWordAddr) (aWordAddr) #define FLASH_ERASE_WORD_VALUE 0xFF #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/common/arm/carray.cia --- a/kernel/eka/common/arm/carray.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/common/arm/carray.cia Mon Jul 26 11:21:15 2010 +0100 @@ -82,6 +82,7 @@ EXPORT_C __NAKED__ TInt RPointerArrayBase::Find(const TAny* /*anEntry*/, TGeneralIdentityRelation /*anIdentity*/) const { + __EH_FNSTART asm("stmfd sp!, {r4-r8,lr} "); __EH_FRAME_PUSH2(r4-r8,lr) asm("ldmia r0, {r4,r5} "); // r4=iCount, r5=iEntries @@ -103,16 +104,17 @@ asm("ptr_find2_return: "); // return r6 asm("mov r0, r6 "); __POPRET("r4-r8,"); + __EH_FNEND } -EXPORT_C __NAKED__ TInt RPointerArrayBase::BinarySearchSigned(TInt /*anEntry*/, TInt& /*anIndex*/) const +EXPORT_C TInt RPointerArrayBase::BinarySearchSigned(TInt anEntry, TInt& anIndex) const { - asm("mov r3, #0 "); - // fall through + return RPointerArrayBase::BinarySearchSigned(anEntry, anIndex, 0); } EXPORT_C __NAKED__ TInt RPointerArrayBase::BinarySearchSigned(TInt /*anEntry*/, TInt& /*anIndex*/, TInt /*aMode*/) const { + __EH_FNSTART asm("stmfd sp!, {r4-r6,lr} "); __EH_FRAME_PUSH2(r4-r6,lr) asm("mov r6, r2 "); // r6=&anIndex @@ -160,16 +162,17 @@ asm("bne 3b "); // if not, V=0 (left from subs), N=1 for last, 0 for first, Z=0 => LAST->LT FIRST->GT asm("mov r2, r12 "); // if so, r2 = mid __JUMP(,lr); // and return with r0 = 0 + __EH_FNEND } -EXPORT_C __NAKED__ TInt RPointerArrayBase::BinarySearchUnsigned(TUint /*anEntry*/, TInt& /*anIndex*/) const +EXPORT_C TInt RPointerArrayBase::BinarySearchUnsigned(TUint anEntry, TInt& anIndex) const { - asm("mov r3, #0 "); - // fall through + return RPointerArrayBase::BinarySearchUnsigned(anEntry, anIndex, 0); } EXPORT_C __NAKED__ TInt RPointerArrayBase::BinarySearchUnsigned(TUint /*anEntry*/, TInt& /*anIndex*/, TInt /*aMode*/) const { + __EH_FNSTART asm("stmfd sp!, {r4-r6,lr} "); __EH_FRAME_PUSH2(r4-r6,lr) asm("mov r6, r2 "); // r6=&anIndex @@ -218,10 +221,12 @@ asm("bne 3b "); // if not ANY, branch back asm("mov r2, r12 "); // if ANY, r2 = mid __JUMP(,lr); // and return with r0 = 0 + __EH_FNEND } EXPORT_C __NAKED__ TInt RPointerArrayBase::BinarySearch(const TAny* /*anEntry*/, TInt& /*anIndex*/, TGeneralLinearOrder /*anOrder*/, TInt /*aMode*/) const { + __EH_FNSTART asm("stmfd sp!, {r2,r4-r11,lr} "); // store &anIndex, r4-r11, lr __EH_FRAME_ADDRESS(sp,4) __EH_FRAME_PUSH2(r4-r11,lr) @@ -282,16 +287,17 @@ asm("2: "); asm("mov r5, r8 "); // if ANY, r8 = mid __JUMP(,r9); // and return with r0 = 0, Z=1 + __EH_FNEND } -EXPORT_C __NAKED__ TInt RPointerArrayBase::FindIsqSigned(TInt /*anEntry*/) const +EXPORT_C TInt RPointerArrayBase::FindIsqSigned(TInt anEntry) const { - asm("mov r2, #0 "); - // fall through + return RPointerArrayBase::FindIsqSigned(anEntry, 0); } EXPORT_C __NAKED__ TInt RPointerArrayBase::FindIsqSigned(TInt /*anEntry*/, TInt /*aMode*/) const { + __EH_FNSTART #ifdef __EABI__ // sp needs correct alignment asm("stmfd sp!, {r4-r6,lr} "); @@ -308,16 +314,17 @@ #else __POPRET("r4,r5,"); #endif + __EH_FNEND } -EXPORT_C __NAKED__ TInt RPointerArrayBase::FindIsqUnsigned(TUint /*anEntry*/) const +EXPORT_C TInt RPointerArrayBase::FindIsqUnsigned(TUint anEntry) const { - asm("mov r2, #0 "); - // fall through + return RPointerArrayBase::FindIsqUnsigned(anEntry, 0); } EXPORT_C __NAKED__ TInt RPointerArrayBase::FindIsqUnsigned(TUint /*anEntry*/, TInt /*aMode*/) const { + __EH_FNSTART #ifdef __EABI__ // sp needs correct alignment asm("stmfd sp!, {r4-r6,lr} "); @@ -334,17 +341,17 @@ #else __POPRET("r4,r5,"); #endif + __EH_FNEND } -EXPORT_C __NAKED__ TInt RPointerArrayBase::FindIsq(const TAny* /*anEntry*/, TGeneralLinearOrder /*anOrder*/) const +EXPORT_C TInt RPointerArrayBase::FindIsq(const TAny* anEntry, TGeneralLinearOrder anOrder) const { - asm("mov r3, #0 "); - // fall through + return RPointerArrayBase::FindIsq(anEntry, anOrder, 0); } EXPORT_C __NAKED__ TInt RPointerArrayBase::FindIsq(const TAny* /*anEntry*/, TGeneralLinearOrder /*anOrder*/, TInt /*aMode*/) const { - + __EH_FNSTART asm("stmfd sp!, {r3-r11,lr} "); __EH_FRAME_PUSH2(r4-r6,lr) asm("ldmia r0, {r5,r6} "); // r5=count, r6=iEntries @@ -354,11 +361,13 @@ asm("bl BinarySearchPointers "); asm("moveq r0, r5 "); // if match, r0=match index __POPRET("r3-r11,"); + __EH_FNEND } #ifndef __KERNEL_MODE__ EXPORT_C __NAKED__ void RPointerArrayBase::HeapSortSigned() { + __EH_FNSTART #ifdef __EABI__ asm("stmfd sp!, {r4-r10,lr} "); __EH_FRAME_PUSH2(r4-r10,lr) @@ -420,6 +429,7 @@ asm("bgt hss_loop_start2 "); asm("str r7, [r5, #0] "); __JUMP(,lr); + __EH_FNEND } EXPORT_C __NAKED__ void RPointerArrayBase::HeapSortUnsigned() @@ -492,6 +502,7 @@ #ifndef __KERNEL_MODE__ EXPORT_C __NAKED__ void RPointerArrayBase::HeapSort(TGeneralLinearOrder /*anOrder*/) { + __EH_FNSTART asm("stmfd sp!, {r3-r11,lr} "); // r3 is caller save __EH_FRAME_ADDRESS(sp,4) @@ -553,6 +564,7 @@ asm("bgt hsp_loop_start2 "); asm("str r7, [r5, #0] "); __JUMP(,r11); + __EH_FNEND } #endif // __KERNEL_MODE__ @@ -623,6 +635,7 @@ EXPORT_C __NAKED__ TInt RArrayBase::Find(const TAny* /*anEntry*/, TGeneralIdentityRelation /*anIdentity*/) const { + __EH_FNSTART asm("stmfd sp!, {r4-r10,lr} "); // save r4-r10,lr __EH_FRAME_PUSH2(r4-r10,lr) asm("ldmia r0, {r4,r5,r6} "); // r4=count, r5=iEntries, r6=iEntrySize @@ -644,16 +657,17 @@ asm("simple_find2_return: "); asm("sub r0, r7, r4 "); // index=count-r4 __POPRET("r4-r10,"); + __EH_FNEND } -EXPORT_C __NAKED__ TInt RArrayBase::BinarySearchSigned(const TAny* /*anEntry*/, TInt& /*anIndex*/) const +EXPORT_C TInt RArrayBase::BinarySearchSigned(const TAny* anEntry, TInt& anIndex) const { - asm("mov r3, #0 "); - // fall through + return RArrayBase::BinarySearchSigned(anEntry, anIndex, 0); } EXPORT_C __NAKED__ TInt RArrayBase::BinarySearchSigned(const TAny* /*anEntry*/, TInt& /*anIndex*/, TInt /*aMode*/) const { + __EH_FNSTART asm("stmfd sp!, {r4-r8,lr} "); __EH_FRAME_PUSH2(r4-r8,lr) asm("mov r8, r2 "); // r8=&anIndex @@ -709,16 +723,17 @@ asm("bne 3b "); // if not, V=0 (left from subs), N=1 for last, 0 for first, Z=0 => LAST->LT FIRST->GT asm("mov r2, r12 "); // if so, r2 = mid __JUMP(,lr); // and return with r0 = 0 + __EH_FNEND } -EXPORT_C __NAKED__ TInt RArrayBase::BinarySearchUnsigned(const TAny* /*anEntry*/, TInt& /*anIndex*/) const +EXPORT_C TInt RArrayBase::BinarySearchUnsigned(const TAny* anEntry, TInt& anIndex) const { - asm("mov r3, #0 "); - // fall through + return RArrayBase::BinarySearchUnsigned(anEntry, anIndex, 0); } EXPORT_C __NAKED__ TInt RArrayBase::BinarySearchUnsigned(const TAny* /*anEntry*/, TInt& /*anIndex*/, TInt /*aMode*/) const { + __EH_FNSTART asm("stmfd sp!, {r4-r8,lr} "); __EH_FRAME_PUSH2(r4-r8,lr) asm("mov r8, r2 "); // r8=&anIndex @@ -775,10 +790,12 @@ asm("bne 3b "); // if not ANY, branch back asm("mov r2, r12 "); // if ANY, r2 = mid __JUMP(,lr); // and return with r0 = 0 + __EH_FNEND } EXPORT_C __NAKED__ TInt RArrayBase::BinarySearch(const TAny* /*anEntry*/, TInt& /*anIndex*/, TGeneralLinearOrder /*anOrder*/, TInt /*aMode*/) const { + __EH_FNSTART asm("stmfd sp!, {r3-r11,lr} "); // r3 is caller save __EH_FRAME_ADDRESS(sp,4) @@ -836,16 +853,17 @@ asm("2: "); asm("mov r5, r8 "); // if ANY, r8 = mid __POPRET("r2,"); // and return with r0 = 0, Z=1 + __EH_FNEND } -EXPORT_C __NAKED__ TInt RArrayBase::FindIsqSigned(const TAny* /*anEntry*/) const +EXPORT_C TInt RArrayBase::FindIsqSigned(const TAny* anEntry) const { - asm("mov r2, #0 "); - // fall through + return RArrayBase::FindIsqSigned(anEntry, 0); } EXPORT_C __NAKED__ TInt RArrayBase::FindIsqSigned(const TAny* /*anEntry*/, TInt /*aMode*/) const { + __EH_FNSTART #ifdef __EABI__ // sp needs to be aligned correctly asm("stmfd sp!, {r4-r8,lr} "); @@ -869,16 +887,17 @@ #else __POPRET("r4-r7,"); #endif + __EH_FNEND } -EXPORT_C __NAKED__ TInt RArrayBase::FindIsqUnsigned(const TAny* /*anEntry*/) const +EXPORT_C TInt RArrayBase::FindIsqUnsigned(const TAny* anEntry) const { - asm("mov r2, #0 "); - // fall through + return RArrayBase::FindIsqUnsigned(anEntry, 0); } EXPORT_C __NAKED__ TInt RArrayBase::FindIsqUnsigned(const TAny* /*anEntry*/, TInt /*aMode*/) const { + __EH_FNSTART #ifdef __EABI__ // sp needs to be aligned correctly asm("stmfd sp!, {r4-r8,lr} "); @@ -902,16 +921,17 @@ #else __POPRET("r4-r7,"); #endif + __EH_FNEND } -EXPORT_C __NAKED__ TInt RArrayBase::FindIsq(const TAny* /*anEntry*/, TGeneralLinearOrder /*anOrder*/) const +EXPORT_C TInt RArrayBase::FindIsq(const TAny* anEntry, TGeneralLinearOrder anOrder) const { - asm("mov r3, #0 "); - // fall through + return RArrayBase::FindIsq(anEntry, anOrder, 0); } EXPORT_C __NAKED__ TInt RArrayBase::FindIsq(const TAny* /*anEntry*/, TGeneralLinearOrder /*anOrder*/, TInt /*aMode*/) const { + __EH_FNSTART asm("stmfd sp!, {r3-r11,lr} "); // r3 is caller save __EH_FRAME_ADDRESS(sp,4) @@ -924,11 +944,13 @@ asm("bl BinarySearchEntries "); asm("moveq r0, r5 "); // if match r0=index __POPRET("r3-r11,"); + __EH_FNEND } #ifndef __KERNEL_MODE__ EXPORT_C __NAKED__ void RArrayBase::HeapSortSigned() { +// __EH_FNSTART #ifdef __EABI__ // need sp aligned correctly asm("stmfd sp!, {r3-r11,lr} "); @@ -1017,10 +1039,12 @@ asm("bl wordmove "); // entry[0]=[sp] asm("add sp, sp, r10 "); // free temporary stack space __JUMP(,r7); +// __EH_FNEND } EXPORT_C __NAKED__ void RArrayBase::HeapSortUnsigned() { +// __EH_FNSTART #ifdef __EABI__ // need sp aligned correctly asm("stmfd sp!, {r3-r11,lr} "); @@ -1109,10 +1133,12 @@ asm("bl wordmove "); // entry[0]=[sp] asm("add sp, sp, r10 "); // free temporary stack space __JUMP(,r7); +// __EH_FNEND } EXPORT_C __NAKED__ void RArrayBase::HeapSort(TGeneralLinearOrder anOrder) { +// __EH_FNSTART #ifdef __EABI__ // need sp aligned correctly asm("stmfd sp!, {r3-r11,lr} "); @@ -1204,6 +1230,7 @@ asm("bl wordmove "); // entry[0]=[sp] asm("ldr sp, [sp, r10] "); // restore stack pointer, freeing temporary stack space __POPRET(""); +// __EH_FNEND } #endif // __KERNEL_MODE__ #endif // __ARRAY_MACHINE_CODED__ diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/common/arm/cdes16.cia --- a/kernel/eka/common/arm/cdes16.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/common/arm/cdes16.cia Mon Jul 26 11:21:15 2010 +0100 @@ -183,7 +183,7 @@ asm("sub r3, r3, r1 "); // r3 = 2*length asm("mov r3, r3, lsr #1 "); // r3 = length (+EBufC) asm("cmp r3, r2 "); // check against max length - asm("bgt Des16PanicLengthOutOfRange__Fv "); + asm("bgt " CSM_Z26Des16PanicLengthOutOfRangev); asm("stmfd sp!, {r0,lr} "); // save registers for function call asm("str r3, [r0], #4 "); // save length/type field, r0->buffer asm("add r2, r3, r3 "); // size=2*length into r2 for function call @@ -230,7 +230,7 @@ asm("sub r3, r3, r1 "); // r3 = 2*length asm("mov r3, r3, lsr #1 "); // r3 = length (+EBufC) asm("cmp r3, r2 "); // check against max length - asm("bgt Des16PanicLengthOutOfRange__Fv "); + asm("bgt " CSM_Z26Des16PanicLengthOutOfRangev); asm("str r3, [r0], #4 "); // save length/type field, r0->buffer asm("add r2, r3, r3 "); // size=2*length into r2 for function call asm("b memmove "); // call memmove @@ -290,7 +290,7 @@ asm("rsb r3, r12, r1, lsr #1 "); // r3 = length + 1 asm("sub r3, r3, #1 "); // r3 = length asm("cmp r3, r2 "); // compare to max length - asm("bgt Des16PanicLengthOutOfRange__Fv "); // length too big, so panic + asm("bgt " CSM_Z26Des16PanicLengthOutOfRangev); // length too big, so panic asm("orr r1, r3, #0x30000000 "); // if length<=max, r1=EBuf + length asm("stmfd sp!, {r0, lr} "); // save registers for function call asm("stmia r0!, {r1, r2} "); // store type/length and max length fields, r0->buffer @@ -373,9 +373,9 @@ asm("mov r2, r2, lsr #1 "); // r2=length of string asm("ldmia r0, {r3,r12} "); // r3=type/length of this, r12=maxlength asm("cmp r2, r12 "); // compare new length against maxlength - asm("bgt Des16PanicDesOverflow__Fv "); + asm("bgt " CSM_Z21Des16PanicDesOverflowv); asm("cmp r3, #0x50000000 "); - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("and r3, r3, #0xF0000000 "); // r3=type of this asm("orr r3, r3, r2 "); // r3=new type/length asm("str r3, [r0], #4 "); // store it @@ -451,12 +451,12 @@ // Return TPtr8 ([r0]=length/type,[r0,#4]=maxLength,[r0,#8]=Ptr) asm("ldr r3, [r1], #4 "); // r3=this.length/type asm("cmp r2, #0 "); // check aLength>=0 - asm("blt Des16PanicPosOutOfRange__Fv "); // if not, panic + asm("blt " CSM_Z23Des16PanicPosOutOfRangev); // if not, panic asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, r12 "); // else limit aLength to Length() asm("movgt r2, r12 "); asm("cmp r3, #0x50000000 "); - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -477,12 +477,12 @@ // Return TPtr8 ([r0]=length/type,[r0,#4]=maxLength,[r0,#8]=Ptr) asm("ldr r3, [r1], #4 "); // r3=this.length/type asm("cmp r2, #0 "); // check aLength>=0 - asm("blt Des16PanicPosOutOfRange__Fv "); // if not, panic + asm("blt " CSM_Z23Des16PanicPosOutOfRangev); // if not, panic asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, r12 "); // else limit aLength to Length() asm("movgt r2, r12 "); asm("cmp r3, #0x50000000 "); - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -506,9 +506,9 @@ asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, #0 "); // check aPos>=0 asm("cmpge r12, r2 "); // if so check Length()>=aPos - asm("blt Des16PanicPosOutOfRange__Fv "); + asm("blt " CSM_Z23Des16PanicPosOutOfRangev); asm("cmp r3, #0x50000000 "); - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -532,7 +532,7 @@ asm("ldr r12, [r1], #4 "); // r12=this.length/type asm("mov r4, r1 "); asm("cmp r12, #0x50000000 "); // check valid descriptor type - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("eor r12, r12, r12, lsr #1 "); asm("msr cpsr_flg, r12 "); asm("ldr r12, [r1, #-4] "); @@ -549,7 +549,7 @@ asm("stmgeia r0, {r1-r3} "); asm("ldrge r4, [sp], #4 "); __JUMP(ge,lr); - asm("b Des16PanicPosOutOfRange__Fv "); + asm("b " CSM_Z23Des16PanicPosOutOfRangev); } __NAKED__ EXPORT_C const TUint16& TDesC16::AtC(TInt /*anIndex*/) const @@ -581,7 +581,7 @@ { asm("ldr r2, [r0], #4 "); // r2=length/type asm("cmp r2, #0x50000000 "); - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("bics r3, r2, #0xF0000000 "); // r3=length asm("mvneq r0, #0 "); // if length=0, not found __JUMP(eq,lr); @@ -611,7 +611,7 @@ { asm("ldr r2, [r0], #4 "); // r2=length/type asm("cmp r2, #0x50000000 "); - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("bics r3, r2, #0xF0000000 "); // r3=length asm("mvneq r0, #0 "); // if length=0, not found __JUMP(eq,lr); @@ -643,7 +643,7 @@ asm("ldr r12, 1f "); asm("b comparebody "); asm("1: "); - asm(".word " CSM_ZN3Mem8CompareFEPKtiS0_i); + asm(".word " CSM_ZN3Mem8CompareFEPKtiS1_i); } __NAKED__ EXPORT_C TInt TDesC16::CompareC(const TDesC16& /*aDes*/) const @@ -654,7 +654,7 @@ asm("ldr r12, 1f "); asm("b comparebody "); asm("1: "); - asm(".word " CSM_ZN3Mem8CompareCEPKtiS0_i); + asm(".word " CSM_ZN3Mem8CompareCEPKtiS1_i); } #endif @@ -695,7 +695,7 @@ #ifdef __KERNEL_MODE__ asm(".word memcompare "); #else - asm(".word " CSM_ZN3Mem7CompareEPKtiS0_i); + asm(".word " CSM_ZN3Mem7CompareEPKtiS1_i); #endif } #endif // __DES16_MACHINE_CODED__ @@ -820,12 +820,12 @@ // Return TPtr16 ([r0]=length/type,[r0,#4]=Ptr) asm("ldr r3, [r1], #4 "); // r3=this.length/type asm("cmp r2, #0 "); // check aLength>=0 - asm("blt Des16PanicPosOutOfRange__Fv "); // if not, panic + asm("blt " CSM_Z23Des16PanicPosOutOfRangev); // if not, panic asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, r12 "); // else limit aLength to Length() asm("movgt r2, r12 "); asm("cmp r3, #0x50000000 "); - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -846,12 +846,12 @@ // Return TPtr16 ([r0]=length/type,[r0,#4]=Ptr) asm("ldr r3, [r1], #4 "); // r3=this.length/type asm("cmp r2, #0 "); // check aLength>=0 - asm("blt Des16PanicPosOutOfRange__Fv "); // if not, panic + asm("blt " CSM_Z23Des16PanicPosOutOfRangev); // if not, panic asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, r12 "); // else limit aLength to Length() asm("movgt r2, r12 "); asm("cmp r3, #0x50000000 "); - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -875,9 +875,9 @@ asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, #0 "); // check aPos>=0 asm("cmpge r12, r2 "); // if so check Length()>=aPos - asm("blt Des16PanicPosOutOfRange__Fv "); + asm("blt " CSM_Z23Des16PanicPosOutOfRangev); asm("cmp r3, #0x50000000 "); - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -899,7 +899,7 @@ // Return TPtr16 ([r0]=length/type,[r0,#4]=Ptr) asm("ldr r12, [r1], #4 "); // r12=this.length/type asm("cmp r12, #0x50000000 "); // check valid descriptor type - asm("bcs Des16PanicBadDesType__Fv "); + asm("bcs " CSM_Z20Des16PanicBadDesTypev); asm("eor r12, r12, r12, lsr #1 "); asm("msr cpsr_flg, r12 "); asm("ldr r12, [r1, #-4] "); @@ -914,7 +914,7 @@ asm("orrge r1, r3, #0x10000000 "); // and r1 = aLength + EPtrC asm("stmgeia r0, {r1,r2} "); __JUMP(ge,lr); - asm("b Des16PanicPosOutOfRange__Fv "); + asm("b " CSM_Z23Des16PanicPosOutOfRangev); } #endif // __EABI__ @@ -953,9 +953,9 @@ asm("ldmia r0, {r1,r2} "); // r1=length/type, r2=maxlength asm("bic r3, r1, #0xF0000000 "); // r3=Length(); asm("cmp r3, r2 "); // check Length()=0 - asm("blt Des8PanicPosOutOfRange__Fv "); // if not panic + asm("blt " CSM_Z27Des8PanicDesIndexOutOfRangev); // if not panic asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, r12 "); // limit aLength to Length() asm("movgt r2, r12 "); asm("cmp r3, #0x50000000 "); // check type() <= 4 - asm("bcs Des8PanicBadDesType__Fv "); // if not, panic + asm("bcs " CSM_Z19Des8PanicBadDesTypev); // if not, panic asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -467,12 +467,12 @@ // Return TPtr8 ([r0]=length/type,[r0,#4]=maxLength,[r0,#8]=Ptr) asm("ldr r3, [r1], #4 "); // r3=this.length/type asm("cmp r2, #0 "); // check aLength>=0 - asm("blt Des8PanicPosOutOfRange__Fv "); // if not, panic + asm("blt " CSM_Z27Des8PanicDesIndexOutOfRangev); // if not, panic asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, r12 "); // limit aLength to Length() asm("movgt r2, r12 "); asm("cmp r3, #0x50000000 "); // check type() <= 4 - asm("bcs Des8PanicBadDesType__Fv "); + asm("bcs " CSM_Z19Des8PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -496,9 +496,9 @@ asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, #0 "); // check aPos>=0 asm("cmpge r12, r2 "); // if so check Length()>=aPos - asm("blt Des8PanicPosOutOfRange__Fv "); + asm("blt " CSM_Z27Des8PanicDesIndexOutOfRangev); asm("cmp r3, #0x50000000 "); // check type() <= 4 - asm("bcs Des8PanicBadDesType__Fv "); + asm("bcs " CSM_Z19Des8PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -522,7 +522,7 @@ asm("ldr r12, [r1], #4 "); // r12=this.length/type asm("mov r4, r1 "); asm("cmp r12, #0x50000000 "); // check valid descriptor type - asm("bcs Des8PanicBadDesType__Fv "); + asm("bcs " CSM_Z19Des8PanicBadDesTypev); asm("eor r12, r12, r12, lsr #1 "); asm("msr cpsr_flg, r12 "); asm("ldr r12, [r1, #-4] "); @@ -539,7 +539,7 @@ asm("stmgeia r0, {r1-r3} "); asm("ldrge r4, [sp], #4 "); __JUMP(ge,lr); - asm("b Des8PanicPosOutOfRange__Fv "); + asm("b " CSM_Z27Des8PanicDesIndexOutOfRangev); } #endif @@ -630,7 +630,7 @@ asm("ldr r12, 1f "); asm("b comparebody "); asm("1: "); - asm(".word " CSM_ZN3Mem8CompareFEPKhiS0_i); + asm(".word " CSM_ZN3Mem8CompareFEPKhiS1_i); } __NAKED__ EXPORT_C TInt TDesC8::CompareC(const TDesC8& /*aDes*/) const @@ -641,7 +641,7 @@ asm("ldr r12, 1f "); asm("b comparebody "); asm("1: "); - asm(".word " CSM_ZN3Mem8CompareCEPKhiS0_i); + asm(".word " CSM_ZN3Mem8CompareCEPKhiS1_i); } #endif @@ -798,12 +798,12 @@ // Return TPtrC8 ([r0]=length/type,[r0,#4]=Ptr) asm("ldr r3, [r1], #4 "); // r3=this.length/type asm("cmp r2, #0 "); // check aLength>=0 - asm("blt Des8PanicPosOutOfRange__Fv "); // if not panic + asm("blt " CSM_Z27Des8PanicDesIndexOutOfRangev); // if not panic asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, r12 "); // limit aLength to Length() asm("movgt r2, r12 "); asm("cmp r3, #0x50000000 "); // check type() <= 4 - asm("bcs Des8PanicBadDesType__Fv "); // if not, panic + asm("bcs " CSM_Z19Des8PanicBadDesTypev); // if not, panic asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -824,12 +824,12 @@ // Return TPtrC8 ([r0]=length/type,[r0,#4]=Ptr) asm("ldr r3, [r1], #4 "); // r3=this.length/type asm("cmp r2, #0 "); // check aLength>=0 - asm("blt Des8PanicPosOutOfRange__Fv "); // if not, panic + asm("blt " CSM_Z27Des8PanicDesIndexOutOfRangev); // if not, panic asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, r12 "); // limit aLength to Length() asm("movgt r2, r12 "); asm("cmp r3, #0x50000000 "); // check type() <= 4 - asm("bcs Des8PanicBadDesType__Fv "); + asm("bcs " CSM_Z19Des8PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -853,9 +853,9 @@ asm("bic r12, r3, #0xF0000000 "); // r12=this.Length() asm("cmp r2, #0 "); // check aPos>=0 asm("cmpge r12, r2 "); // if so check Length()>=aPos - asm("blt Des8PanicPosOutOfRange__Fv "); + asm("blt " CSM_Z27Des8PanicDesIndexOutOfRangev); asm("cmp r3, #0x50000000 "); // check type() <= 4 - asm("bcs Des8PanicBadDesType__Fv "); + asm("bcs " CSM_Z19Des8PanicBadDesTypev); asm("eor r3, r3, r3, lsr #1 "); asm("msr cpsr_flg, r3 "); asm("addcs r1, r1, #4 "); @@ -877,7 +877,7 @@ // Return TPtrC8 ([r0]=length/type,[r0,#4]=Ptr) asm("ldr r12, [r1], #4 "); // r12=this.length/type asm("cmp r12, #0x50000000 "); // check valid descriptor type - asm("bcs Des8PanicBadDesType__Fv "); + asm("bcs " CSM_Z19Des8PanicBadDesTypev); asm("eor r12, r12, r12, lsr #1 "); asm("msr cpsr_flg, r12 "); asm("ldr r12, [r1, #-4] "); @@ -892,7 +892,7 @@ asm("orrge r1, r3, #0x10000000 "); // and r1=aLength + EPtrC asm("stmgeia r0, {r1,r2} "); __JUMP(ge,lr); - asm("b Des8PanicPosOutOfRange__Fv "); + asm("b " CSM_Z27Des8PanicDesIndexOutOfRangev); } #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/common/arm/cmem.cia --- a/kernel/eka/common/arm/cmem.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/common/arm/cmem.cia Mon Jul 26 11:21:15 2010 +0100 @@ -181,19 +181,46 @@ asm("small_fill_end: "); __JUMP(,lr); + } + #ifdef __EABI__ - // The AEABI switched the order of arg2 and arg3 to save an intruction when - // calling 'memset' from 'memclr' - asm(".global __aeabi_memset8 "); - asm("__aeabi_memset8: "); - asm(".global __aeabi_memset4 "); - asm("__aeabi_memset4: "); - asm(".global __aeabi_memset "); - asm("__aeabi_memset: "); - asm(" and r2, r2, #255"); - asm(" b fill "); -#endif - } +//mikek N.B. These __aeabi_mem functions are also defined in rvct/compsupp/aeabimem.cpp +// and should be implemented in the compsupp library, not here, when we build one for gcce. + +#define EXPORT_EABI_MEMSET_VENEER(name) \ +extern "C" EXPORT_C __NAKED__ TAny* (name)(TAny* /*aTrg*/, unsigned int /*aLength*/, TInt /*aValue*/ ) \ +{ \ + asm(" and r2, r2, #255"); \ + asm(" b fill "); \ +} + +EXPORT_EABI_MEMSET_VENEER(__aeabi_memset8) +EXPORT_EABI_MEMSET_VENEER(__aeabi_memset4) +EXPORT_EABI_MEMSET_VENEER(__aeabi_memset) + +#define EXPORT_EABI_MEMCLR_ALIAS(alias) \ +extern "C" EXPORT_C __NAKED__ TAny* (alias)(TAny* /*aTrg*/, unsigned int /*aLength*/ ) \ +{ \ + asm(" b memclr "); \ +} + +EXPORT_EABI_MEMCLR_ALIAS(__aeabi_memclr8) +EXPORT_EABI_MEMCLR_ALIAS(__aeabi_memclr4) +EXPORT_EABI_MEMCLR_ALIAS(__aeabi_memclr) + +#define EXPORT_EABI_MEMMOVE_ALIAS(alias,func) \ +extern "C" EXPORT_C __NAKED__ TAny* (alias)(TAny* /*aTrg*/, const TAny* /*aSrc*/, unsigned int /*aLength*/) \ +{ \ + asm(" b " #func ); \ +} + +EXPORT_EABI_MEMMOVE_ALIAS(__aeabi_memcpy8,memcpy) +EXPORT_EABI_MEMMOVE_ALIAS(__aeabi_memcpy4,memcpy) +EXPORT_EABI_MEMMOVE_ALIAS(__aeabi_memcpy,memcpy) +EXPORT_EABI_MEMMOVE_ALIAS(__aeabi_memmove8,memmove) +EXPORT_EABI_MEMMOVE_ALIAS(__aeabi_memmove4,memmove) +EXPORT_EABI_MEMMOVE_ALIAS(__aeabi_memmove,memmove) +#endif // __EABI__ #endif // USE_REPLACEMENT_MEMSET diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/common/arm/gccehlp.cpp --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kernel/eka/common/arm/gccehlp.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -0,0 +1,121 @@ +// Copyright (c) 1995-2009 Nokia Corporation and/or its subsidiary(-ies). +// All rights reserved. +// This component and the accompanying materials are made available +// under the terms of the License "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Mike Kinghan, mikek@symbian.org, for Symbian Foundation +// +// Contributors: +// +// Description: +// kernelhwsrv/kernel/eka/common/arm/gccehlp.cpp +// +// + +#include "../common.h" +#include + +extern "C" { +EXPORT_C int __aeabi_idiv0 (int return_value) + { + FAULT(); + return return_value; + } + +EXPORT_C long long __aeabi_ldiv0 (long long return_value) + { + FAULT(); + return return_value; + } + +EXPORT_C int __cxa_pure_virtual() +// +// Gets called for any unreplaced pure virtual methods. +// + { +#ifdef __STANDALONE_NANOKERNEL__ + __NK_ASSERT_ALWAYS(0); +#else + Panic(EPureVirtualCalled); +#endif + return 0; + } + +#ifdef __KERNEL_MODE__ + +void __cxa_end_catch(){} + +void __cxa_begin_catch(){} + +void __cxa_rethrow(){} +// std::terminate + +void __cxa_call_unexpected() {} + +void __aeabi_unwind_cpp_pr0() {} + +void __cxa_end_cleanup() {} + +EXPORT_C void __cxa_guard_abort() {} + +EXPORT_C void __cxa_guard_acquire() {} + +EXPORT_C void __cxa_guard_release() {} + +#endif +} + +// +// The global new operator. +// +#include + +EXPORT_C TAny* operator new[](TUint aSize, const std::nothrow_t&) __NO_THROW + { + return Kern::Alloc(aSize); + } + +EXPORT_C TAny* operator new(TUint aSize, const std::nothrow_t&) __NO_THROW + { + return Kern::Alloc(aSize); + } + + + +__NAKED__ void __rt_exporter_dummy(void) + { +// Ensure that "vtable for __cxxabiv1::__si_class_type_info" is available from ekern.exe +// ** This is almost certainly just creating an instance of the symbol, without supplying the +// ** required functionality! + +#define COMM_SYMBOL(x) asm(".comm " x ",4") + +COMM_SYMBOL("_ZTVN10__cxxabiv117__class_type_infoE"); // vtable for __cxxabiv1::__class_type_info +COMM_SYMBOL("_ZTVN10__cxxabiv120__si_class_type_infoE"); // vtable for __cxxabiv1::__si_class_type_info +COMM_SYMBOL("_ZTVN10__cxxabiv121__vmi_class_type_infoE"); // vtable for __cxxabiv1::__vmi_class_type_info + +// Implementations exist as globals in libgcc.a, we just need to pull them in +#define IMPORT_GLOBAL(x) asm(".global " x ); + +IMPORT_GLOBAL("__aeabi_lasr"); +IMPORT_GLOBAL("__aeabi_lcmp"); +IMPORT_GLOBAL("__aeabi_llsl"); +IMPORT_GLOBAL("__aeabi_llsr"); +IMPORT_GLOBAL("__aeabi_lmul"); +IMPORT_GLOBAL("__aeabi_ulcmp"); + +// Implementations exist as "hidden" in libgcc.a, so we need to pull them in and reveal them +// ** This version will completely fail to do that, but creates junk to be exported +#define IMPORT_HIDDEN(x) asm(".comm " x ",4"); + +// unaligned-funcs.c +IMPORT_HIDDEN("__aeabi_uread4"); +IMPORT_HIDDEN("__aeabi_uread8"); +IMPORT_HIDDEN("__aeabi_uwrite4"); +IMPORT_HIDDEN("__aeabi_uwrite8"); + + } + diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/common/des16.cpp --- a/kernel/eka/common/des16.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/common/des16.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -2013,7 +2013,7 @@ */ { __ASSERT_ALWAYS(aMaxLength>=0,Panic(ETDes16MaxLengthNegative)); - return new(STD_CLASS::Alloc(_FOFF(HBufC16,iBuf[aMaxLength]))) HBufC16(0); + return new(STD_CLASS::Alloc(_FOFF_DYNAMIC(HBufC16,iBuf[aMaxLength]))) HBufC16(0); } EXPORT_C HBufC16 *HBufC16::NewL(TInt aMaxLength) @@ -2092,7 +2092,7 @@ */ { __ASSERT_ALWAYS(aMaxLength>=0,Panic(ETDes16MaxLengthNegative)); - return new(STD_CLASS::Alloc(_FOFF(HBufC16,iBuf[aMaxLength]))) HBufC16(aMaxLength); + return new(STD_CLASS::Alloc(_FOFF_DYNAMIC(HBufC16,iBuf[aMaxLength]))) HBufC16(aMaxLength); } EXPORT_C HBufC16 *HBufC16::NewMaxL(TInt aMaxLength) diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/common/des8.cpp --- a/kernel/eka/common/des8.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/common/des8.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -978,7 +978,7 @@ */ { __ASSERT_ALWAYS(aMaxLength>=0,Panic(ETDes8MaxLengthNegative)); - return new(STD_CLASS::Alloc(_FOFF(HBufC8,iBuf[aMaxLength]))) HBufC8(0); + return new(STD_CLASS::Alloc(_FOFF_DYNAMIC(HBufC8,iBuf[aMaxLength]))) HBufC8(0); } EXPORT_C HBufC8 *HBufC8::NewL(TInt aMaxLength) @@ -1057,7 +1057,7 @@ */ { __ASSERT_ALWAYS(aMaxLength>=0,Panic(ETDes8MaxLengthNegative)); - return new(STD_CLASS::Alloc(_FOFF(HBufC8,iBuf[aMaxLength]))) HBufC8(aMaxLength); + return new(STD_CLASS::Alloc(_FOFF_DYNAMIC(HBufC8,iBuf[aMaxLength]))) HBufC8(aMaxLength); } EXPORT_C HBufC8 *HBufC8::NewMaxL(TInt aMaxLength) diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/common/mem.cpp --- a/kernel/eka/common/mem.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/common/mem.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -23,7 +23,6 @@ //NOTE - if these values are changed then the WINS test case value must be updated #ifndef __MEM_MACHINE_CODED__ - extern "C" { // See header file e32cmn.h for the in-source documentation. @@ -161,7 +160,7 @@ - +//IMK: Should this __GCC32__ should be __GCCE__ now? #if defined(__GCC32__) && !defined(__KERNEL_MODE__) /** Compares a block of data at one specified location with a block of data at diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/bld.inf --- a/kernel/eka/compsupp/bld.inf Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/compsupp/bld.inf Mon Jul 26 11:21:15 2010 +0100 @@ -29,10 +29,11 @@ compsupp.iby /epoc32/rom/include/ - PRJ_MMPFILES -#if !defined GCCXML && !defined GCCE +#if !defined GCCXML + +#if !defined GCCE symcpp/scppnwdl.mmp rvct/dfprvct-thunk.mmp @@ -57,22 +58,34 @@ #endif +#endif // !defined GCCE + PRJ_EXTENSIONS -// Unzip RVCT3.1 runtime if being built with RVCT2.2 or RVCT4.0 - -start extension tools/compsupp +// Export the compiler-specific support files built by this component +// when using the other versions of RVCT -#if defined(ARMCC_2_2) || defined(ARMCC_4_0) -option FILE $(EXTENSION_ROOT)/rt_3_1.zip -#elif defined(ARMCC_3_1) -option FILE $(EXTENSION_ROOT)/rt_2_2.zip +#if !defined(ARMCC_2_2) +start extension tools/compsupp +option FILE $(EXTENSION_ROOT)/rt_2_2_export.zip +option TODIR $(EPOCROOT) +end #endif -option TODIR $(EPOCROOT)epoc32/release - +#if !defined(ARMCC_3_1) +start extension tools/compsupp +option FILE $(EXTENSION_ROOT)/rt_3_1_export.zip +option TODIR $(EPOCROOT) end +#endif -#endif // #if !defined GCCXML && !defined GCCE +#if !defined(ARMCC_4_0) +start extension tools/compsupp +option FILE $(EXTENSION_ROOT)/rt_4_0_export.zip +option TODIR $(EPOCROOT) +end +#endif + +#endif // #if !defined GCCXML diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/gcce/bld.inf --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/kernel/eka/compsupp/gcce/bld.inf Mon Jul 26 11:21:15 2010 +0100 @@ -0,0 +1,33 @@ +// Copyright (c) 2010 Symbian Foundation Ltd +// This component and the accompanying materials are made available +// under the terms of the License "Eclipse Public License v1.0" +// which accompanies this distribution, and is available +// at the URL "http://www.eclipse.org/legal/epl-v10.html". +// +// Initial Contributors: +// Symbian Foundation Ltd - initial contribution. +// +// Contributors: +// +// Description: +// GCC runtime support +// +// + +PRJ_PLATFORMS + +ARMV5 + + +PRJ_EXPORTS + +// Workaround for GCCE builds +// Export the generic binaries which are currently only built with RVCT + +:zip ..\rt_generic_export.zip +:zip ..\rt_4_0_export.zip + +PRJ_MMPFILES + +// none - (yet) + diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/gcce/gcce.h --- a/kernel/eka/compsupp/gcce/gcce.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/compsupp/gcce/gcce.h Mon Jul 26 11:21:15 2010 +0100 @@ -97,6 +97,7 @@ // __NAKED__ from cpudefs.h #define __NAKED__ __declspec(naked) #define ____ONLY_USE_NAKED_IN_CIA____ __declspec(naked) +#define __WEAK__ __attribute__((weak)) // Int64 and Uint64 from nkern\nklib.h typedef long long Int64; @@ -167,9 +168,24 @@ // Support for throwing exceptions through embedded assembler // Should only be needed user side -#define __EH_FRAME_ADDRESS(reg,offset) FRAME ADDRESS reg, offset -#define __EH_FRAME_PUSH2(reg1,reg2) FRAME PUSH {reg1, reg2} -#define __EH_FRAME_SAVE1(reg,offset) FRAME SAVE {reg}, offset +#define __VSTR(x) #x +#define __STR(x) __VSTR(x) +#define __GAS_SAVE_REG(reg) ".save {" __STR(reg) " }" +#define __ASM_GAS_SAVE_REG(reg) asm( __GAS_SAVE_REG(reg) ); +#define __GAS_SAVE_REGS2(reg1,reg2) ".save {" __STR(reg1) "," __STR(reg2) "}" +#define __ASM_GAS_SAVE_REGS2(reg1,reg2) asm( __GAS_SAVE_REGS2(reg1,reg2) ); +#define __GAS_SETFP(reg,offset) ".setfp fp," __STR(reg) ",#" __STR(offset) +#define __ASM_GAS_SETFP(reg,offset) asm( __GAS_SETFP(reg,offset) ); + +#define __EH_FRAME_ADDRESS(reg,offset) \ + __ASM_GAS_SETFP(reg,offset) +#define __EH_FRAME_PUSH2(reg1,reg2) __ASM_GAS_SAVE_REGS2(reg1,reg2) +#define __EH_FRAME_SAVE1(reg,offset) \ + __EH_FRAME_ADDRESS(fp,offset) \ + __ASM_GAS_SAVE_REG(reg) + +#define __EH_FNSTART asm(".fnstart"); +#define __EH_FNEND asm(".fnend"); #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/rt_2_2.zip Binary file kernel/eka/compsupp/rt_2_2.zip has changed diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/rt_2_2_export.zip Binary file kernel/eka/compsupp/rt_2_2_export.zip has changed diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/rt_3_1.zip Binary file kernel/eka/compsupp/rt_3_1.zip has changed diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/rt_3_1_export.zip Binary file kernel/eka/compsupp/rt_3_1_export.zip has changed diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/rt_4_0_export.zip Binary file kernel/eka/compsupp/rt_4_0_export.zip has changed diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/rt_generic_export.zip Binary file kernel/eka/compsupp/rt_generic_export.zip has changed diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/rvct.h --- a/kernel/eka/compsupp/rvct.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/compsupp/rvct.h Mon Jul 26 11:21:15 2010 +0100 @@ -116,6 +116,7 @@ // __NAKED__ from cpudefs.h #define __NAKED__ __asm #define ____ONLY_USE_NAKED_IN_CIA____ __asm +#define __WEAK__ __attribute__((weak)) // Int64 and Uint64 from nkern\nklib.h typedef long long Int64; @@ -175,5 +176,9 @@ #define __EH_FRAME_ADDRESS(reg,offset) FRAME ADDRESS reg, offset #define __EH_FRAME_PUSH2(reg1,reg2) FRAME PUSH {reg1, reg2} #define __EH_FRAME_SAVE1(reg,offset) FRAME SAVE {reg}, offset + + #define __EH_FNSTART + #define __EH_FNEND + #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/compsupp/rvct2_1/rvct2_1.h --- a/kernel/eka/compsupp/rvct2_1/rvct2_1.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/compsupp/rvct2_1/rvct2_1.h Mon Jul 26 11:21:15 2010 +0100 @@ -191,4 +191,7 @@ #define __EH_FRAME_PUSH2(reg1,reg2) FRAME PUSH {reg1, reg2} #define __EH_FRAME_SAVE1(reg,offset) FRAME SAVE {reg}, offset +#define __EH_FNSTART +#define __EH_FNEND + #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/debug/ost/inc/traceutils.h --- a/kernel/eka/debug/ost/inc/traceutils.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/debug/ost/inc/traceutils.h Mon Jul 26 11:21:15 2010 +0100 @@ -85,9 +85,17 @@ #ifdef __MARM_ARMV5__ //armv5 -#define GET_PC(pc) \ - TUint32 pc = 0; \ - asm("mov pc, __return_address()") + #if defined(__GCCE__) + #define GET_PC(pc) \ + TUint32 pc = 0; \ + asm("mov %[res], %[val]" : [res] "=r" (pc) : [val] "r" (__builtin_return_address(0))) + #elif defined(__ARMCC__) + #define GET_PC(pc) \ + TUint32 pc = 0; \ + asm("mov pc, __return_address()") + #else + #error What compiler? + #endif #elif __MARM_ARM4__ //arm4 not implemented yet! #define GET_PC(pc) \ diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/debug/utrace/inc/traceutils.h --- a/kernel/eka/debug/utrace/inc/traceutils.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/debug/utrace/inc/traceutils.h Mon Jul 26 11:21:15 2010 +0100 @@ -77,9 +77,17 @@ #ifdef __MARM_ARMV5__ //armv5 -#define GET_PC(pc) \ - TUint32 pc = 0; \ - asm("mov pc, __return_address()") + #if defined(__GCCE__) + #define GET_PC(pc) \ + TUint32 pc = 0; \ + asm("mov %[res], %[val]" : [res] "=r" (pc) : [val] "r" (__builtin_return_address(0))) + #elif defined(__ARMCC__) + #define GET_PC(pc) \ + TUint32 pc = 0; \ + asm("mov pc, __return_address()") + #else + #error What compiler? + #endif #elif __MARM_ARM4__ //arm4 not implemented yet! #define GET_PC(pc) \ diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/debug/group/rm_debug_kerneldriver.mmh --- a/kernel/eka/drivers/debug/group/rm_debug_kerneldriver.mmh Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/debug/group/rm_debug_kerneldriver.mmh Mon Jul 26 11:21:15 2010 +0100 @@ -52,4 +52,9 @@ capability all +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + SMPSAFE diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/debug/rmdebug/d_rmd_stepping.cpp --- a/kernel/eka/drivers/debug/rmdebug/d_rmd_stepping.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/debug/rmdebug/d_rmd_stepping.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -325,7 +325,13 @@ // determine the architecture TUint32 cpuid; +#if defined(__ARMCC__) asm("mrc p15, 0, cpuid, c0, c0, 0 "); +#elif defined(__GCCE__) + asm("mrc p15, 0, %[id], c0, c0, 0 " : [id] "=r" (cpuid)); +#else +#error What compiler? +#endif LOG_MSG2("DRMDStepping::PCAfterInstructionExecutes() - cpuid = 0x%08x\n",cpuid); cpuid >>= 8; @@ -866,7 +872,7 @@ // // ARM ARM DDI0406A - section A8.6.26 - if (inst32 & 0xFFF0FFFF == 0xE3C08F00) + if ((inst32 & 0xFFF0FFFF) == 0xE3C08F00) { LOG_MSG("ARM ARM DDI0406A - section A8.6.26 - BXJ is not supported"); @@ -879,7 +885,7 @@ // ARM ARM DDi046A - section B6.1.13 - SUBS PC,LR // // Encoding T1 - if (inst32 & 0xFFFFFF00 == 0xF3DE8F00) + if ((inst32 & 0xFFFFFF00) == 0xF3DE8F00) { LOG_MSG("ARM ARM DDI0406A - section B6.1.13 - SUBS PC,LR Encoding T1"); @@ -905,7 +911,7 @@ // ARM ARM DDI0406A - section A8.6.16 - B // // Branch Encoding T3 - if (inst32 & 0xF800D000 == 0xF0008000) + if ((inst32 & 0xF800D000) == 0xF0008000) { LOG_MSG("ARM ARM DDI0406A - section A8.6.16 - B Encoding T3"); @@ -930,7 +936,7 @@ // ARM ARM DDI0406A - section A8.6.16 - B // // Branch Encoding T4 - if (inst32 & 0xF800D000 == 0xF0009000) + if ((inst32 & 0xF800D000) == 0xF0009000) { LOG_MSG("ARM ARM DDI0406A - section A8.6.16 - B"); @@ -959,7 +965,7 @@ // ARM ARM DDI0406A - section A8.6.225 - TBB, TBH // // Table Branch Byte, Table Branch Halfword - if (inst32 & 0xFFF0FFE0 == 0xE8D0F000) + if ((inst32 & 0xFFF0FFE0) == 0xE8D0F000) { LOG_MSG("ARM ARM DDI0406A - section A8.6.225 TBB,TBH Encoding T1"); @@ -1000,7 +1006,7 @@ // ARM ARM DDI0406A - section A8.6.55 - LDMDB, LDMEA // // LDMDB Encoding T1 - if (inst32 & 0xFFD02000 == 0xE9100000) + if ((inst32 & 0xFFD02000) == 0xE9100000) { LOG_MSG("ARM ARM DDI0406 - section A8.6.55 LDMDB Encoding T1"); @@ -1046,7 +1052,7 @@ // ARM ARM DDI0406A - section A8.6.121 POP // // POP.W Encoding T2 - if (inst32 & 0xFFFF2000 == 0xE8BD0000) + if ((inst32 & 0xFFFF2000) == 0xE8BD0000) { LOG_MSG("ARM ARM DDI0406A - section A8.6.121 POP Encoding T2"); @@ -1082,7 +1088,7 @@ } // POP Encoding T3 - if (inst32 & 0xFFFF0FFFF == 0xF85D0B04) + if ((inst32 & 0xFFFF0FFFF) == 0xF85D0B04) { LOG_MSG("ARM ARM DDI0406A - section A8.6.121 POP Encoding T3"); diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/debug/rmdebug/d_rmd_stepping.inl --- a/kernel/eka/drivers/debug/rmdebug/d_rmd_stepping.inl Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/debug/rmdebug/d_rmd_stepping.inl Mon Jul 26 11:21:15 2010 +0100 @@ -238,7 +238,7 @@ { //#define ARM_B_ADDR(x) ((x & 0x00800000) ? ((TUint32)(x) & 0x00FFFFFF | 0xFF000000) : (TUint32)(x) & 0x00FFFFFF) - TUint32 aVal = ((aInst & 0x00800000) ? ((TUint32)(aInst) & 0x00FFFFFF | 0xFF000000) : (TUint32)(aInst) & 0x00FFFFFF); + TUint32 aVal = ((aInst & 0x00800000) ? (((TUint32)(aInst) & 0x00FFFFFF) | 0xFF000000) : (TUint32)(aInst) & 0x00FFFFFF); return aVal; } diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/ecomm/d_comm.cpp --- a/kernel/eka/drivers/ecomm/d_comm.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/ecomm/d_comm.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -933,7 +933,7 @@ { // Replace bad character if (iConfig.iParityError==KConfigParityErrorReplaceChar) - c = c & ~(0xff|KReceiveIsrParityError) | iConfig.iParityErrorChar; + c = (c & ~(0xff|KReceiveIsrParityError)) | iConfig.iParityErrorChar; // Ignore parity error if (iConfig.iParityError==KConfigParityErrorIgnore) c = c & ~KReceiveIsrParityError; diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/locmedia/traces/OstTraceDefinitions.h --- a/kernel/eka/drivers/locmedia/traces/OstTraceDefinitions.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/locmedia/traces/OstTraceDefinitions.h Mon Jul 26 11:21:15 2010 +0100 @@ -17,5 +17,5 @@ // OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler // REMOVE BEFORE CHECK-IN TO VERSION CONTROL //#define OST_TRACE_COMPILER_IN_USE -#include +#include #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/medmmc/traces/OstTraceDefinitions.h --- a/kernel/eka/drivers/medmmc/traces/OstTraceDefinitions.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/medmmc/traces/OstTraceDefinitions.h Mon Jul 26 11:21:15 2010 +0100 @@ -17,5 +17,5 @@ // OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler // REMOVE BEFORE CHECK-IN TO VERSION CONTROL //#define OST_TRACE_COMPILER_IN_USE -#include +#include #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/pbus/mmc/sdcard/eabi/sdcard3c/epbusmu.def diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/pbus/mmc/sdcard/eabi/sdcard3c/sdio/epbusmu.def diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/pbus/mmc/stack.cpp --- a/kernel/eka/drivers/pbus/mmc/stack.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/pbus/mmc/stack.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -2453,8 +2453,8 @@ DISABLEPREEMPTION - if( !iAbortReq && - ((iStackState & KMMCStackStateWaitingDFC) || + if( ((!iAbortReq && + ((iStackState & KMMCStackStateWaitingDFC))) || (iCompReq | iInitialise | iAttention)==0) || ((iSessionP) && (iSessionP->iState & KMMCSessStateAllowDirectCommands))) { diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/pbus/mmc/traces/OstTraceDefinitions.h --- a/kernel/eka/drivers/pbus/mmc/traces/OstTraceDefinitions.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/pbus/mmc/traces/OstTraceDefinitions.h Mon Jul 26 11:21:15 2010 +0100 @@ -17,5 +17,5 @@ // OST_TRACE_COMPILER_IN_USE flag has been added by Trace Compiler // REMOVE BEFORE CHECK-IN TO VERSION CONTROL //#define OST_TRACE_COMPILER_IN_USE -#include +#include #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/trace/arm/btracex_impl.cia --- a/kernel/eka/drivers/trace/arm/btracex_impl.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/trace/arm/btracex_impl.cia Mon Jul 26 11:21:15 2010 +0100 @@ -161,7 +161,7 @@ #ifdef BTRACE_INCLUDE_TIMESTAMPS #ifdef __SMP__ - asm("bl Timestamp__5NKern "); + asm("bl " CSM_ZN5NKern9TimestampEv); asm("str r0, [r5], #4 "); // store timestamp low word #ifdef USE_TIMESTAMP2 asm("str r1, [r5], #4 "); // store timestamp high word diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/trace/btracec.cpp --- a/kernel/eka/drivers/trace/btracec.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/trace/btracec.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -213,7 +213,7 @@ if (--retries<0) return KErrInUse; // sleep every 8 tries to give the write a chance - if (retries&7==0) + if ((retries&7)==0) User::AfterHighRes(1); g0 = iGeneration; __e32_memory_barrier(); diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/usbcsc/d_usbcsc.cpp --- a/kernel/eka/drivers/usbcsc/d_usbcsc.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/usbcsc/d_usbcsc.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -3523,7 +3523,7 @@ } - if (iBuffer && (iBuffer->iStatusList.iState) || (!iRealEpNumber)) + if ((iBuffer && (iBuffer->iStatusList.iState)) || (!iRealEpNumber)) { if (iRequestCallbackInfo->iTransferDir==EControllerWrite) iController->CancelWriteBuffer(iLdd, iRealEpNumber); diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/drivers/usbcsc/usbcsc_bil.cpp --- a/kernel/eka/drivers/usbcsc/usbcsc_bil.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/drivers/usbcsc/usbcsc_bil.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -160,7 +160,7 @@ TUint localTail = endpointHdr->iBilTail; TUsbcScTransferHeader* currentTransfer = (TUsbcScTransferHeader*) (base + localTail); - if ((localTail == (TUint)endpointHdr->iHead) || (currentTransfer->iAltSettingSeq != (iAltSettingSeq+1)&0xFFFF)) + if ((localTail == (TUint)endpointHdr->iHead) || (currentTransfer->iAltSettingSeq != ((iAltSettingSeq+1)&0xFFFF))) // if alternate setting has not changed return KErrNotReady; else diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/eabi/elocdu.def diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/eabi/emptyu.def diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/eabi/epbusmu.def diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/eabi/exmoncommonu.def diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/euser/bld.inf --- a/kernel/eka/euser/bld.inf Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/euser/bld.inf Mon Jul 26 11:21:15 2010 +0100 @@ -76,7 +76,7 @@ euser #endif -#if defined(GENERIC_MARM) && !defined(ARMCC) +#if defined(GENERIC_MARM) && !defined(EABI) #ifndef SMP epoc/arm/eka1_entry_stub #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/euser/epoc/arm/uc_dll.cia --- a/kernel/eka/euser/epoc/arm/uc_dll.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/euser/epoc/arm/uc_dll.cia Mon Jul 26 11:21:15 2010 +0100 @@ -72,6 +72,32 @@ #endif #endif +#elif defined(__GCCE__) +#ifdef __SUPPORT_CPP_EXCEPTIONS__ + + + /* It is possible no functions included in the image require + * a handler table. Therefore make only a weak reference to + * the handler table base symbol, which may be absent. + */ + asm(".weak .ARM.extab$$Base"); + asm(".global Symbian$$CPP$$Exception$$Descriptor"); + + /* Symbian$$CPP$$Exception$$Descriptor is referenced from the Image header. + * A pointer to this object can be cached by the unwinder in the UCB + * on the assumption that the EHT for the previous frame is likely to be right + * for the current frame + */ + + asm("Symbian$$CPP$$Exception$$Descriptor:"); +#ifdef __LEAVE_EQUALS_THROW__ + asm(".word .ARM.exidx$$Base"); /* index table base */ + asm(".word .ARM.exidx$$Limit"); /* index table limit */ +#endif + asm(".word Image$$ER_RO$$Base + 1"); /* RO segment base + mark as ehabi v2 */ + asm(".word Image$$ER_RO$$Limit"); /* RO segment limit */ + asm(".word 0"); /* reserved for future use */ +#endif #endif } } diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/euser/epoc/arm/uc_dll.cpp --- a/kernel/eka/euser/epoc/arm/uc_dll.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/euser/epoc/arm/uc_dll.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -44,11 +44,11 @@ return 0; } -#elif defined(__ARMCC__) +#elif defined(__EABI__) void __DLL_Export_Table__(void); void __cpp_initialize__aeabi_(void); -__weak void run_static_dtors(void); +__WEAK__ void run_static_dtors(void); GLDEF_C TInt _E32Dll_Body(TInt aReason) { diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/euser/epoc/arm/uc_exe.cia --- a/kernel/eka/euser/epoc/arm/uc_exe.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/euser/epoc/arm/uc_exe.cia Mon Jul 26 11:21:15 2010 +0100 @@ -62,7 +62,7 @@ asm("mov r11, sp "); // save stack pointer // The frame starts 84 bytes (up) from r11 i.e. CFA is r11 + 84 - __EH_FRAME_ADDRESS(r11, 84) + __EH_FRAME_ADDRESS(sp, 84) // Reg needs to be sp (=r11) here for gcce // we can only restore callee-save values, but that's what we want if we 'leave' // saved link is -8 bytes from CFA (= r11 + 0x24 + 0x20 + 0x8) __EH_FRAME_SAVE1(lr, -8) @@ -73,10 +73,15 @@ __EH_FRAME_SAVE1(r4-r11, -48) // but the macro expansion gives rise to odd code so we do what follows #endif -#ifdef __ARMCC__ +#if defined(__ARMCC__) FRAME SAVE {r4-r11}, -48 +#elif defined(__GCCE__) + __EH_FRAME_SAVE1(r4-r11,-48) +#else +#error What compiler? #endif + asm("bic sp, sp, #4 "); // align stack to 8 byte boundary // asm("bl " CSM_ZN4User15HandleExceptionEPv ); asm("bl _xxxx_call_user_handle_exception "); @@ -116,6 +121,32 @@ #endif #endif +#elif defined(__GCCE__) +#ifdef __SUPPORT_CPP_EXCEPTIONS__ + + + /* It is possible no functions included in the image require + * a handler table. Therefore make only a weak reference to + * the handler table base symbol, which may be absent. + */ + asm(".weak .ARM.extab$$Base"); + asm(".global Symbian$$CPP$$Exception$$Descriptor"); + + /* Symbian$$CPP$$Exception$$Descriptor is referenced from the Image header. + * A pointer to this object can be cached by the unwinder in the UCB + * on the assumption that the EHT for the previous frame is likely to be right + * for the current frame + */ + + asm("Symbian$$CPP$$Exception$$Descriptor:"); +#ifdef __LEAVE_EQUALS_THROW__ + asm(".word .ARM.exidx$$Base"); /* index table base */ + asm(".word .ARM.exidx$$Limit"); /* index table limit */ +#endif + asm(".word Image$$ER_RO$$Base + 1"); /* RO segment base + mark as ehabi v2 */ + asm(".word Image$$ER_RO$$Limit"); /* RO segment limit */ + asm(".word 0"); /* reserved for future use */ +#endif #endif } diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/euser/epoc/arm/uc_exe.cpp --- a/kernel/eka/euser/epoc/arm/uc_exe.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/euser/epoc/arm/uc_exe.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -70,11 +70,11 @@ } } -#elif defined(__ARMCC__) +#elif defined(__EABI__) TInt CallThrdProcEntry(TInt (*aFn)(void*), void* aPtr, TInt aNotFirst); -__weak void run_static_dtors(void); +__WEAK__ void run_static_dtors(void); void globalDestructorFunc() { diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/euser/epoc/arm/uc_i64.cia --- a/kernel/eka/euser/epoc/arm/uc_i64.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/euser/epoc/arm/uc_i64.cia Mon Jul 26 11:21:15 2010 +0100 @@ -21,7 +21,7 @@ #if defined(__GCC32__) extern "C" void __division_by_zero(); #define DIV_BY_ZERO " __division_by_zero " -#elif defined(__ARMCC__) +#elif defined(__EABI__) extern "C" void __rt_div0 (void); #define DIV_BY_ZERO " __cpp(__rt_div0) " #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/euser/epoc/arm/uc_realx.cia --- a/kernel/eka/euser/epoc/arm/uc_realx.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/euser/epoc/arm/uc_realx.cia Mon Jul 26 11:21:15 2010 +0100 @@ -3548,7 +3548,7 @@ #endif #ifdef __REALS_MACHINE_CODED__ -#ifndef __ARMCC__ +#ifndef __EABI__ extern "C" { extern "C" void __math_exception(TInt aErrType); diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/euser/euser.mmh --- a/kernel/eka/euser/euser.mmh Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/euser/euser.mmh Mon Jul 26 11:21:15 2010 +0100 @@ -22,7 +22,7 @@ ALWAYS_BUILD_AS_ARM #endif -#if defined(USE_VFP_MATH) && defined(ARMCC) +#if defined(USE_VFP_MATH) && defined(EABI) macro __USE_VFP_MATH #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/ewsrv/ky_tran.cpp --- a/kernel/eka/ewsrv/ky_tran.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/ewsrv/ky_tran.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -451,8 +451,8 @@ iDigits+=ch.DigitValue(); iErrorFlag=(TBool)(iErrorFlag || !ch.IsDigitGivenRadix(iRadix) - || (iTermination==ETerminationByCtrlUp) - && ((aModifiers&EModifierCtrl)==0)); + || ((iTermination==ETerminationByCtrlUp) + && ((aModifiers&EModifierCtrl)==0))); } // TBool TCtrlDigits::Terminated(TInt aModifiers) const diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/include/cpudefs.h --- a/kernel/eka/include/cpudefs.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/include/cpudefs.h Mon Jul 26 11:21:15 2010 +0100 @@ -247,7 +247,7 @@ #define __COBJECT_MACHINE_CODED__ #define __CACTIVESCHEDULER_MACHINE_CODED__ #define __CSERVER_MACHINE_CODED__ - #define __ARRAY_MACHINE_CODED__ +// #define __ARRAY_MACHINE_CODED__ IMK working around bug #2976 #define __HUFFMAN_MACHINE_CODED__ #if defined(__MARM_ARM4__) || defined(__MARM_ARMI__) || defined(__MARM_THUMB__) || defined(__MARM_ARMV4__) || defined(__MARM_ARMV5__) #define __DES16_MACHINE_CODED_HWORD__ diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/include/d32usbcsc.h --- a/kernel/eka/include/d32usbcsc.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/include/d32usbcsc.h Mon Jul 26 11:21:15 2010 +0100 @@ -1336,7 +1336,9 @@ This return value used by GetBuffer indicates that the item pointed to by aBuffer/aOffset represents a state change, instead of endpoint data. */ - const static TInt KStateChange = 0x01; + enum { + KStateChange = 0x01 + }; public: IMPORT_C TEndpointBuffer(); diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/include/drivers/rm_debug_eventhandler.h --- a/kernel/eka/include/drivers/rm_debug_eventhandler.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/include/drivers/rm_debug_eventhandler.h Mon Jul 26 11:21:15 2010 +0100 @@ -27,12 +27,12 @@ TInt Start(); TInt Stop(); - inline void DRM_DebugEventHandler::LockDataAccess() + inline void LockDataAccess() { Kern::SemaphoreWait(*iProtectionLock); } - inline void DRM_DebugEventHandler::ReleaseDataAccess() + inline void ReleaseDataAccess() { Kern::SemaphoreSignal(*iProtectionLock); } diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/include/e32cia.h --- a/kernel/eka/include/e32cia.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/include/e32cia.h Mon Jul 26 11:21:15 2010 +0100 @@ -28,7 +28,7 @@ // CIA symbols for USER side code // CIA symbol macros for Gcc98r2 -#if defined(__GCC32__) +#if defined(__GCC32__) && !defined(__EABI__) #define CSM_ZN4Exec12PopTrapFrameEv " PopTrapFrame__4Exec" #define CSM_ZN4User7ReAllocEPvii " ReAlloc__4UserPvii" #define CSM_Z30PanicCObjectConIndexOutOfRangev " PanicCObjectConIndexOutOfRange__Fv" @@ -134,8 +134,8 @@ // CIA symbols for KERNEL side code // CIA symbol macros for Gcc98r2 -#if defined(__GCC32__) -#define CSM_ZN1K8MsgInfoE " _1K.MsgInfo" +#if defined(__GCC32__) && !defined(__EABI__) +#define CSM_ZN1K7MsgInfoE " _1K.MsgInfo" #define CSM_ZN14NFastSemaphore6SignalEv " Signal__14NFastSemaphore" #define CSM_ZN4Kern4ExitEi " Exit__4Kerni" #define CSM_ZN5NKern4ExitEv " Exit__5NKern" @@ -244,9 +244,12 @@ #define CSM_ZN8DSession14PinDescriptorsEPiPA3_mPP17TVirtualPinObject "PinDescriptors__8DSessionPiPA2_UlPP17TVirtualPinObject" #define CSM_ZN14TClientRequest5ResetEv "Reset__14TClientRequest" #define CSM_ZN9RMessageK8CloseRefEv "CloseRef__9RMessageK" +#define CSM_ZN14DBTraceFilter25CheckEm " Check__14DBTraceFilter2Ul" +#define CSM_ZN19DKernelEventHandler8DispatchE12TKernelEventPvS1_ "Dispatch__19DKernelEventHandler12TKernelEventPvT2" + #elif defined(__ARMCC__) // CIA symbol macros for RVCT -#define CSM_ZN1K8MsgInfoE " __cpp(&K::MsgInfo)" +#define CSM_ZN1K7MsgInfoE " __cpp(&K::MsgInfo)" #define CSM_ZN14NFastSemaphore6SignalEv " __cpp(NFastSemaphore::Signal)" #define CSM_ZN4Kern4ExitEi " __cpp(Kern::Exit)" #define CSM_ZN5NKern4ExitEv " __cpp(NKern::Exit)" @@ -355,9 +358,11 @@ #define CSM_ZN8DSession14PinDescriptorsEPiPA3_mPP17TVirtualPinObject " __cpp(DSession::PinDescriptors)" #define CSM_ZN14TClientRequest5ResetEv "__cpp(TClientRequest::Reset)" #define CSM_ZN9RMessageK8CloseRefEv "__cpp(RMessageK::CloseRef)" +#define CSM_ZN14DBTraceFilter25CheckEm " __cpp(DBTraceFilter2::Check)" +#define CSM_ZN19DKernelEventHandler8DispatchE12TKernelEventPvS1_ "__cpp(DKernelEventHandler::Dispatch)" #else // CIA symbol macros for EABI assemblers -#define CSM_ZN1K8MsgInfoE " _ZN1K9MsgInfoE" +#define CSM_ZN1K7MsgInfoE " _ZN1K7MsgInfoE" #define CSM_ZN14NFastSemaphore6SignalEv " _ZN14NFastSemaphore6SignalEv" #define CSM_ZN4Kern4ExitEi " _ZN4Kern4ExitEi" #define CSM_ZN5NKern4ExitEv " _ZN5NKern4ExitEv" @@ -466,27 +471,29 @@ #define CSM_ZN8DSession14PinDescriptorsEPiPA3_mPP17TVirtualPinObject "_ZN8DSession14PinDescriptorsEPiPA3_mPP17TVirtualPinObject" #define CSM_ZN14TClientRequest5ResetEv "_ZN14TClientRequest5ResetEv" #define CSM_ZN9RMessageK8CloseRefEv "_ZN9RMessageK8CloseRefEv" +#define CSM_ZN14DBTraceFilter25CheckEm " _ZN14DBTraceFilter25CheckEm" +#define CSM_ZN19DKernelEventHandler8DispatchE12TKernelEventPvS1_ " _ZN19DKernelEventHandler8DispatchE12TKernelEventPvS1_" #endif // CIA symbols for COMMON code (used both USER and KERNEL side) // CIA symbol macros for Gcc98r2 -#if defined(__GCC32__) +#if defined(__GCC32__) && !defined(__EABI__) #define CSM_CFUNC(f) #f #define CSM_Z26Des16PanicLengthOutOfRangev " Des16PanicLengthOutOfRange__Fv" #define CSM_Z20Des8PanicDesOverflowv " Des8PanicDesOverflow__Fv" #define CSM_ZN10RArrayBase4GrowEv " Grow__10RArrayBase" -#define CSM_ZN3Mem8CompareCEPKtiS0_i " CompareC__3MemPCUsiT1i" +#define CSM_ZN3Mem8CompareCEPKtiS1_i " CompareC__3MemPCUsiT1i" #define CSM_Z20Des16PanicBadDesTypev " Des16PanicBadDesType__Fv" #define CSM_Z24Des16PanicLengthNegativev " Des16PanicLengthNegative__Fv" #define CSM_Z19Des8PanicBadDesTypev " Des8PanicBadDesType__Fv" -#define CSM_ZN3Mem7CompareEPKtiS0_i " Compare__3MemPCUsiT1i" +#define CSM_ZN3Mem7CompareEPKtiS1_i " Compare__3MemPCUsiT1i" #define CSM_Z23Des8PanicLengthNegativev " Des8PanicLengthNegative__Fv" #define CSM_ZN17RPointerArrayBase4GrowEv " Grow__17RPointerArrayBase" #define CSM_Z28Des16PanicDesIndexOutOfRangev " Des16PanicDesIndexOutOfRange__Fv" -#define CSM_ZN3Mem8CompareFEPKhiS0_i " CompareF__3MemPCUciT1i" +#define CSM_ZN3Mem8CompareFEPKhiS1_i " CompareF__3MemPCUciT1i" #define CSM_Z5Panic9TCdtPanic " Panic__F9TCdtPanic" #define CSM_Z27Des8PanicDesIndexOutOfRangev " Des8PanicDesIndexOutOfRange__Fv" -#define CSM_ZN3Mem8CompareFEPKtiS0_i " CompareF__3MemPCUsiT1i" +#define CSM_ZN3Mem8CompareFEPKtiS1_i " CompareF__3MemPCUsiT1i" #define CSM_Z26Des8PanicMaxLengthNegativev " Des8PanicMaxLengthNegative__Fv" #define CSM_Z25Des8PanicLengthOutOfRangev " Des8PanicLengthOutOfRange__Fv" #define CSM_Z21Des16PanicDesOverflowv " Des16PanicDesOverflow__Fv" @@ -494,7 +501,7 @@ #define CSM_Z18PanicBadArrayIndexv " PanicBadArrayIndex__Fv" #define CSM_Z22Des8PanicPosOutOfRangev " Des8PanicPosOutOfRange__Fv" #define CSM_Z23Des16PanicPosOutOfRangev " Des16PanicPosOutOfRange__Fv" -#define CSM_ZN3Mem8CompareCEPKhiS0_i " CompareC__3MemPCUciT1i" +#define CSM_ZN3Mem8CompareCEPKhiS1_i " CompareC__3MemPCUciT1i" #define CSM_Z22RHeap_PanicBadNextCellv " RHeap_PanicBadNextCell__Fv" #define CSM_Z30PanicEWordMoveSourceNotAlignedv " PanicEWordMoveSourceNotAligned__Fv" #define CSM_Z30PanicEWordMoveTargetNotAlignedv " PanicEWordMoveTargetNotAligned__Fv" @@ -508,18 +515,18 @@ #define CSM_Z26Des16PanicLengthOutOfRangev " __cpp(Des16PanicLengthOutOfRange)" #define CSM_Z20Des8PanicDesOverflowv " __cpp(Des8PanicDesOverflow)" #define CSM_ZN10RArrayBase4GrowEv " __cpp(RArrayBase::Grow)" -#define CSM_ZN3Mem8CompareCEPKtiS0_i " __cpp(static_cast(&Mem::CompareC))" +#define CSM_ZN3Mem8CompareCEPKtiS1_i " __cpp(static_cast(&Mem::CompareC))" #define CSM_Z20Des16PanicBadDesTypev " __cpp(Des16PanicBadDesType)" #define CSM_Z24Des16PanicLengthNegativev " __cpp(Des16PanicLengthNegative)" #define CSM_Z19Des8PanicBadDesTypev " __cpp(Des8PanicBadDesType)" -#define CSM_ZN3Mem7CompareEPKtiS0_i " __cpp(static_cast(&Mem::Compare))" +#define CSM_ZN3Mem7CompareEPKtiS1_i " __cpp(static_cast(&Mem::Compare))" #define CSM_Z23Des8PanicLengthNegativev " __cpp(Des8PanicLengthNegative)" #define CSM_ZN17RPointerArrayBase4GrowEv " __cpp(RPointerArrayBase::Grow)" #define CSM_Z28Des16PanicDesIndexOutOfRangev " __cpp(Des16PanicDesIndexOutOfRange)" -#define CSM_ZN3Mem8CompareFEPKhiS0_i " __cpp(static_cast(&Mem::CompareF))" +#define CSM_ZN3Mem8CompareFEPKhiS1_i " __cpp(static_cast(&Mem::CompareF))" #define CSM_Z5Panic9TCdtPanic " __cpp(Panic)" #define CSM_Z27Des8PanicDesIndexOutOfRangev " __cpp(Des8PanicDesIndexOutOfRange)" -#define CSM_ZN3Mem8CompareFEPKtiS0_i " __cpp(static_cast(&Mem::CompareF))" +#define CSM_ZN3Mem8CompareFEPKtiS1_i " __cpp(static_cast(&Mem::CompareF))" #define CSM_Z26Des8PanicMaxLengthNegativev " __cpp(Des8PanicMaxLengthNegative)" #define CSM_Z25Des8PanicLengthOutOfRangev " __cpp(Des8PanicLengthOutOfRange)" #define CSM_Z21Des16PanicDesOverflowv " __cpp(Des16PanicDesOverflow)" @@ -527,7 +534,7 @@ #define CSM_Z18PanicBadArrayIndexv " __cpp(PanicBadArrayIndex)" #define CSM_Z22Des8PanicPosOutOfRangev " __cpp(Des8PanicPosOutOfRange)" #define CSM_Z23Des16PanicPosOutOfRangev " __cpp(Des16PanicPosOutOfRange)" -#define CSM_ZN3Mem8CompareCEPKhiS0_i " __cpp(static_cast(&Mem::CompareC))" +#define CSM_ZN3Mem8CompareCEPKhiS1_i " __cpp(static_cast(&Mem::CompareC))" #define CSM_Z22RHeap_PanicBadNextCellv " __cpp(RHeap_PanicBadNextCell)" #define CSM_Z30PanicEWordMoveSourceNotAlignedv " __cpp(PanicEWordMoveSourceNotAligned)" #define CSM_Z30PanicEWordMoveTargetNotAlignedv " __cpp(PanicEWordMoveTargetNotAligned)" @@ -540,18 +547,18 @@ #define CSM_Z26Des16PanicLengthOutOfRangev " _Z26Des16PanicLengthOutOfRangev" #define CSM_Z20Des8PanicDesOverflowv " _Z20Des8PanicDesOverflowv" #define CSM_ZN10RArrayBase4GrowEv " _ZN10RArrayBase4GrowEv" -#define CSM_ZN3Mem8CompareCEPKtiS0_i " _ZN3Mem8CompareCEPKtiS0_i" +#define CSM_ZN3Mem8CompareCEPKtiS1_i " _ZN3Mem8CompareCEPKtiS1_i" #define CSM_Z20Des16PanicBadDesTypev " _Z20Des16PanicBadDesTypev" #define CSM_Z24Des16PanicLengthNegativev " _Z24Des16PanicLengthNegativev" #define CSM_Z19Des8PanicBadDesTypev " _Z19Des8PanicBadDesTypev" -#define CSM_ZN3Mem7CompareEPKtiS0_i " _ZN3Mem7CompareEPKtiS0_i" +#define CSM_ZN3Mem7CompareEPKtiS1_i " _ZN3Mem7CompareEPKtiS1_i" #define CSM_Z23Des8PanicLengthNegativev " _Z23Des8PanicLengthNegativev" #define CSM_ZN17RPointerArrayBase4GrowEv " _ZN17RPointerArrayBase4GrowEv" #define CSM_Z28Des16PanicDesIndexOutOfRangev " _Z28Des16PanicDesIndexOutOfRangev" -#define CSM_ZN3Mem8CompareFEPKhiS0_i " _ZN3Mem8CompareFEPKhiS0_i" +#define CSM_ZN3Mem8CompareFEPKhiS1_i " _ZN3Mem8CompareFEPKhiS1_i" #define CSM_Z5Panic9TCdtPanic " _Z5Panic9TCdtPanic" #define CSM_Z27Des8PanicDesIndexOutOfRangev " _Z27Des8PanicDesIndexOutOfRangev" -#define CSM_ZN3Mem8CompareFEPKtiS0_i " _ZN3Mem8CompareFEPKtiS0_i" +#define CSM_ZN3Mem8CompareFEPKtiS1_i " _ZN3Mem8CompareFEPKtiS1_i" #define CSM_Z26Des8PanicMaxLengthNegativev " _Z26Des8PanicMaxLengthNegativev" #define CSM_Z25Des8PanicLengthOutOfRangev " _Z25Des8PanicLengthOutOfRangev" #define CSM_Z21Des16PanicDesOverflowv " _Z21Des16PanicDesOverflowv" @@ -559,7 +566,7 @@ #define CSM_Z18PanicBadArrayIndexv " _Z18PanicBadArrayIndexv" #define CSM_Z22Des8PanicPosOutOfRangev " _Z22Des8PanicPosOutOfRangev" #define CSM_Z23Des16PanicPosOutOfRangev " _Z23Des16PanicPosOutOfRangev" -#define CSM_ZN3Mem8CompareCEPKhiS0_i " _ZN3Mem8CompareCEPKhiS0_i" +#define CSM_ZN3Mem8CompareCEPKhiS1_i " _ZN3Mem8CompareCEPKhiS1_i" #define CSM_Z22RHeap_PanicBadNextCellv " _Z22RHeap_PanicBadNextCellv" #define CSM_Z30PanicEWordMoveSourceNotAlignedv " _Z30PanicEWordMoveSourceNotAlignedv" #define CSM_Z30PanicEWordMoveTargetNotAlignedv " _Z30PanicEWordMoveTargetNotAlignedv" diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/include/e32cmn.inl --- a/kernel/eka/include/e32cmn.inl Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/include/e32cmn.inl Mon Jul 26 11:21:15 2010 +0100 @@ -6992,7 +6992,7 @@ inline const TSecureId* SSecureId::operator&() const { return (const TSecureId*)this; } inline SSecureId::operator const TSecureId&() const - { /* coverity[return_local_addr] */ return (const TSecureId&)iId; } + { return reinterpret_cast(iId); } inline SSecureId::operator TUint32() const { return iId; } inline SSecureId::operator TUid() const @@ -7032,7 +7032,7 @@ inline const TVendorId* SVendorId::operator&() const { return (const TVendorId*)this; } inline SVendorId::operator const TVendorId&() const - { /* coverity[return_local_addr] */ return (const TVendorId&)iId; } + { return reinterpret_cast(iId); } inline SVendorId::operator TUint32() const { return iId; } inline SVendorId::operator TUid() const diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/include/e32def.h --- a/kernel/eka/include/e32def.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/include/e32def.h Mon Jul 26 11:21:15 2010 +0100 @@ -443,10 +443,11 @@ @see TDblQue */ #ifndef _FOFF +#define _FOFF_DYNAMIC(c,f) (((TInt)&(((c *)0x1000)->f))-0x1000) // can be a runtime calculation if f is not sufficiently constant #if __GNUC__ < 4 -#define _FOFF(c,f) (((TInt)&(((c *)0x1000)->f))-0x1000) +#define _FOFF(c,f) _FOFF_DYNAMIC(c,f) #else -#define _FOFF(c,f) __builtin_offsetof(c,f) +#define _FOFF(c,f) (__builtin_offsetof(c,f)) #endif #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/include/kernel/execs.h --- a/kernel/eka/include/kernel/execs.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/include/kernel/execs.h Mon Jul 26 11:21:15 2010 +0100 @@ -127,7 +127,7 @@ #define FAST_EXEC_END #define DECLARE_WORD(n) asm(".word %a0" : : "i" ((TInt)n)); -#define DECLARE_FUNC(f) asm(".word %a0" : : "i" ((TInt)&f)); +#define DECLARE_FUNC(f) asm(".word %a0" : : "i" (&f)); #define DECLARE_FAST_EXEC_INVALID DECLARE_FUNC(InvalidFastExec) #define SLOW_EXEC_BEGIN \ diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/include/page_alloc.h --- a/kernel/eka/include/page_alloc.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/include/page_alloc.h Mon Jul 26 11:21:15 2010 +0100 @@ -18,7 +18,7 @@ #ifndef __KERNEL_MODE__ const int MAXSMALLPAGEBITS = 68<<3; -#define MINPAGEPOWER PAGESHIFT+2 +#define MINPAGEPOWER ((PAGESHIFT)+2) struct paged_bitmap { diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/cache_maintenance.cia --- a/kernel/eka/kernel/arm/cache_maintenance.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/cache_maintenance.cia Mon Jul 26 11:21:15 2010 +0100 @@ -58,9 +58,9 @@ __JUMP(,lr); asm("__DCacheInfo: "); - asm(".word %a0" : : "i" ((TInt)&InternalCache::Info[KCacheInfoD])); + asm(".word %a0" : : "i" (&InternalCache::Info[KCacheInfoD])); asm("__ICacheInfo: "); - asm(".word %a0" : : "i" ((TInt)&InternalCache::Info[KCacheInfoI])); + asm(".word %a0" : : "i" (&InternalCache::Info[KCacheInfoI])); asm("__TheScheduler: "); asm(".word TheScheduler "); } @@ -340,7 +340,7 @@ __JUMP(,lr); asm("__ExternalCacheCtrlBase: "); - asm(".word %a0" : : "i" ((TInt)&Base)); + asm(".word %a0" : : "i" (&Base)); asm("__KDummyUncachedAddr: "); asm(".word %a0" : : "i" ((TInt)KDummyUncachedAddr)); } @@ -376,7 +376,7 @@ __POPRET(""); asm("__ExternalCacheCtrlBase: "); - asm(".word %a0" : : "i" ((TInt)&Base)); + asm(".word %a0" : : "i" (&Base)); asm("__KDummyUncachedAddr: "); asm(".word %a0" : : "i" ((TInt)KDummyUncachedAddr)); } @@ -413,10 +413,10 @@ __POPRET(""); asm("__ExternalCacheCtrlBase: "); - asm(".word %a0" : : "i" ((TInt)&Base)); + asm(".word %a0" : : "i" (&Base)); #if defined(__SMP__) asm("__PL310SpinLock: "); - asm(".word %a0" : : "i" ((TInt)&iLock)); + asm(".word %a0" : : "i" (&iLock)); #endif } #endif //(__ARM_L210_CACHE__) or (__ARM_L220_CACHE__) or (__ARM_PL310_CACHE__) diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/cache_maintenancev7.cia --- a/kernel/eka/kernel/arm/cache_maintenancev7.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/cache_maintenancev7.cia Mon Jul 26 11:21:15 2010 +0100 @@ -72,11 +72,11 @@ __JUMP(,lr); asm("__DCacheInfoPoU: "); - asm(".word %a0" : : "i" ((TInt)&InternalCache::Info[KCacheInfoD_PoU])); + asm(".word %a0" : : "i" (&InternalCache::Info[KCacheInfoD_PoU])); asm("__DCacheInfoPoC: "); - asm(".word %a0" : : "i" ((TInt)&InternalCache::Info[KCacheInfoD])); + asm(".word %a0" : : "i" (&InternalCache::Info[KCacheInfoD])); asm("__ICacheInfo: "); - asm(".word %a0" : : "i" ((TInt)&InternalCache::Info[KCacheInfoI])); + asm(".word %a0" : : "i" (&InternalCache::Info[KCacheInfoI])); } __NAKED__ void InternalCache::IMB_CacheLine(TLinAddr /*aAddr*/) diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/cexec.cia --- a/kernel/eka/kernel/arm/cexec.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/cexec.cia Mon Jul 26 11:21:15 2010 +0100 @@ -838,7 +838,7 @@ asm("b " CSM_ZN1K18PanicCurrentThreadEi); asm("__KernMsgInfo: "); - asm(".word " CSM_ZN1K8MsgInfoE); + asm(".word " CSM_ZN1K7MsgInfoE); } diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/cipc.cia --- a/kernel/eka/kernel/arm/cipc.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/cipc.cia Mon Jul 26 11:21:15 2010 +0100 @@ -432,6 +432,6 @@ asm(".word TheScheduler "); #endif asm("__K_MsgInfo: "); - asm(".word " CSM_ZN1K8MsgInfoE); + asm(".word " CSM_ZN1K7MsgInfoE); } #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/ckernel.cia --- a/kernel/eka/kernel/arm/ckernel.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/ckernel.cia Mon Jul 26 11:21:15 2010 +0100 @@ -38,7 +38,7 @@ #ifdef __DEBUGGER_SUPPORT__ asm("mov r0, #%a0" : : "i" ((TInt)EEventStartThread)); asm("mov r1, r4"); - asm("bl Dispatch__19DKernelEventHandler12TKernelEventPvT2"); + asm("bl " CSM_ZN19DKernelEventHandler8DispatchE12TKernelEventPvS1_); #endif #ifdef __EMI_SUPPORT__ asm("mov r0,r4"); // a1=DThread; @@ -271,7 +271,7 @@ asm(".word TheScheduler "); #endif asm("__IpcExcHandler: "); - asm(".word %a0" : : "i" ((TInt)DThread::IpcExcHandler)); + asm(".word %a0" : : "i" (DThread::IpcExcHandler)); asm("__default_exc_trap_handler: "); asm("mov r1, #%a0" : : "i" ((TInt)KErrBadDescriptor)); // r0 already contains pointer to TExcTrap // fall through @@ -544,7 +544,7 @@ __JUMP(,lr); asm("__FirstFree: "); - asm(".word %a0" : : "i" ((TInt)&FirstFree)); + asm(".word %a0" : : "i" (&FirstFree)); } __NAKED__ void TThreadWaitList::ChangePriority(DThread* aThread, TInt aNewPriority) diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/d_entry.cpp --- a/kernel/eka/kernel/arm/d_entry.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/d_entry.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -49,11 +49,11 @@ return KernelModuleEntry(aReason); } -#elif defined(__ARMCC__) +#elif defined(__EABI__) void __DLL_Export_Table__(void); void __cpp_initialize__aeabi_(void); -__weak void run_static_dtors(void); +__WEAK__ void run_static_dtors(void); GLDEF_C TInt _E32Dll_Body(TInt aReason) // diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/k_entry.cia --- a/kernel/eka/kernel/arm/k_entry.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/k_entry.cia Mon Jul 26 11:21:15 2010 +0100 @@ -71,7 +71,7 @@ asm("__CtorList: "); asm(".word __CTOR_LIST__ "); } -#elif defined(__ARMCC__) +#elif defined(__EABI__) void __DLL_Export_Table__(void); void __cpp_initialize__aeabi_(); @@ -80,7 +80,7 @@ void __record_needed_destruction (void * d){} // 2.1 calls __aeabi_atexit passing __dso_handle. This can be a dummy (i.e. just a label) -__asm void __dso_handle(void) {} +__NAKED__ void __dso_handle(void) {} void __aeabi_atexit(void *object, void (*dtor)(void *), void *handle){} void _E32Startup_Body(TLinAddr aRomHeader, TLinAddr aSuperPage); diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/l_entry.cia --- a/kernel/eka/kernel/arm/l_entry.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/l_entry.cia Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ extern "C" { -#if defined(__ARMCC__) +#if defined(__EABI__) void __DLL_Export_Table__(void); #endif diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/v_entry.cpp --- a/kernel/eka/kernel/arm/v_entry.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/v_entry.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -46,7 +46,7 @@ return KErrGeneral; } -#elif defined(__ARMCC__) +#elif defined(__EABI__) void __DLL_Export_Table__(void); void __cpp_initialize__aeabi_(); @@ -55,7 +55,7 @@ // needs destruction. But kernel side static objects will never need this so, define it as a nop void __record_needed_destruction (void * d){} // 2.1 calls __aeabi_atexit passing __dso_handle. This can just be a label since its not used -__asm void __dso_handle(void) {} +__NAKED__ void __dso_handle(void) {} void __aeabi_atexit(void *object, void (*dtor)(void *), void *handle){} GLDEF_C TInt _E32Dll_Body(TInt aReason) diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/arm/x_entry.cpp --- a/kernel/eka/kernel/arm/x_entry.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/arm/x_entry.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -41,7 +41,7 @@ return KernelModuleEntry(aReason); } -#elif defined(__ARMCC__) +#elif defined(__EABI__) void __DLL_Export_Table__(void); void __cpp_initialize__aeabi_(); @@ -50,7 +50,7 @@ // needs destruction. But the kernel never will need this so, define it as a nop void __record_needed_destruction (void * d){} // 2.1 calls __aeabi_atexit passing __dso_handle. This can just be a label since its not used. -__asm void __dso_handle(void){} +__NAKED__ void __dso_handle(void){} void __aeabi_atexit(void *object, void (*dtor)(void *), void *handle){} GLDEF_C TInt _E32Dll_Body(TInt aReason) diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/ekern.mmp --- a/kernel/eka/kernel/ekern.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/ekern.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -87,13 +87,15 @@ source ckdes8.cia cumem.cia cbma.cia sourcepath ../common/arm source carray.cia cdes8.cia cmem.cia -#if defined(GCC32) -source cgcchelp.cpp cgcchelp.cia -#elif defined(ARMCC) +#if defined(ARMCC) source armcchlp.cpp #ifndef SBSV2 source armcchlp.cia #endif +#elif defined(GCCE) +source gccehlp.cpp +#elif defined(GCC32) +source cgcchelp.cpp cgcchelp.cia #endif #if defined(REPLACE_GENERIC_UTILS) diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/kdebug.cpp --- a/kernel/eka/kernel/kdebug.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/kdebug.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -563,7 +563,7 @@ DChunk* chunk = (DChunk*)a1; //The chunk will not neccesarily have an owning process. - interested = hdrPresent && ( !chunk->iOwningProcess && hdr->iFlags & TFilterHeader::EGlobalEvents || + interested = hdrPresent && ( (!chunk->iOwningProcess && hdr->iFlags & TFilterHeader::EGlobalEvents) || (chunk->iOwningProcess && DEventHandler::InterestedIn(aType, *(chunk->iOwningProcess->iName)))); Change() |= KDebuggerChangeChunk; diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/smonitor.cpp --- a/kernel/eka/kernel/smonitor.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/smonitor.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -655,7 +655,7 @@ __KTRACE_OPT(KALWAYS,Kern::Printf("All monitors have completed. Restarting...")); //Ensure all characters make it to the serial port... __KTRACE_OPT(KALWAYS,Kern::Printf(" ")); - if(restartType&ESoftRestart == ESoftRestart) + if((restartType&ESoftRestart) == ESoftRestart) Kern::Restart(0); else //EHardRestart Kern::Restart(0x80000000); diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/kernel/sprocess.cpp --- a/kernel/eka/kernel/sprocess.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/kernel/sprocess.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -32,7 +32,7 @@ DProcess::DProcess() : iPriority(EProcPriorityForeground), iExitType((TUint8)EExitPending), iGeneration(1), iFlags(KProcessFlagJustInTime), - iDynamicCode(8, _FOFF(SCodeSegEntry, iSeg), 2*256) + iDynamicCode(8, (TInt)_FOFF(SCodeSegEntry, iSeg), 2*256) { //reserve slot 0 for later use for the command line iEnvironmentData[0] = EBinaryData; @@ -115,7 +115,7 @@ TInt DProcess::SetPaging(const TProcessCreateInfo& aInfo) {// Default implementation that only verifies flags, this virtual method // is overridden in memory models that support paging. - if (aInfo.iFlags & TProcessCreateInfo::EDataPagingMask == + if ((aInfo.iFlags & TProcessCreateInfo::EDataPagingMask) == TProcessCreateInfo::EDataPagingMask) { return KErrCorrupt; diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/memmodel/epoc/mmubase/ramalloc.cpp --- a/kernel/eka/memmodel/epoc/mmubase/ramalloc.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/memmodel/epoc/mmubase/ramalloc.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -396,9 +396,9 @@ aZone->iFlags &= ~KRamZoneFlagMark; // clear the mark as this zone is active // Check if power state of zone needs to be changed - if (iZonePowerFunc && !(iZonePwrState & (((TUint64)1) << aZone - iZones))) + if (iZonePowerFunc && !(iZonePwrState & (((TUint64)1) << (aZone - iZones)))) {//zone no longer empty so call variant to power RAM zone up if necessary - iZonePwrState |= (((TUint64)1) << aZone - iZones); + iZonePwrState |= (((TUint64)1) << (aZone - iZones)); if (iZoneCallbackInitSent) { @@ -541,7 +541,7 @@ if (iZonePowerFunc && !(aZone->iFlags & KRamZoneFlagClaiming) && aZone->iFreePages == aZone->iPhysPages) {// Zone is empty so call variant to power down RAM zone if desirable. - TUint64 pwrMask = ~(((TUint64)1) << aZone - iZones); + TUint64 pwrMask = ~(((TUint64)1) << (aZone - iZones)); iZonePwrState &= pwrMask; // Don't invoke callback until Init callback sent. @@ -1009,7 +1009,7 @@ for (; zone2 < lastZone; zone2++) { if (zone->iPref > zone2->iPref || - zone->iPref == zone2->iPref && zone->iFreePages > zone2->iFreePages) + (zone->iPref == zone2->iPref && zone->iFreePages > zone2->iFreePages)) { lowerZones++; } diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/nkern/arm/ncsched.cia --- a/kernel/eka/nkern/arm/ncsched.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/nkern/arm/ncsched.cia Mon Jul 26 11:21:15 2010 +0100 @@ -895,7 +895,7 @@ __JUMP(,lr); asm("__PendingDfcQueue: "); - asm(".word %a0" : : "i" ((TInt)&TheScheduler.iDfcs)); + asm(".word %a0" : : "i" (&TheScheduler.iDfcs)); } @@ -1760,11 +1760,11 @@ SET_THUMB2EE_HNDLR_BASE(,r1); #endif #ifdef __CPU_HAS_CP15_THREAD_ID_REG - SET_RWRW_TID(,r3) // restore Thread ID from r3 + SET_RWRW_TID(,r3); // restore Thread ID from r3 #endif asm("mov r3, r2 "); // r3=TheCurrentThread #ifdef __CPU_HAS_COPROCESSOR_ACCESS_REG - SET_CAR(,r10) + SET_CAR(,r10); #endif #ifdef __CPU_ARM_USE_DOMAINS asm("mcr p15, 0, r11, c3, c0, 0 "); @@ -1850,7 +1850,7 @@ asm("__TheScheduler: "); asm(".word TheScheduler "); asm("__SystemLock: "); - asm(".word %a0" : : "i" ((TInt)&TheScheduler.iLock)); + asm(".word %a0" : : "i" (&TheScheduler.iLock)); #ifdef BTRACE_CPU_USAGE asm("context_switch_trace_header:"); asm(".word %a0" : : "i" ((TInt)(8< !~ /Global Symbols/) { } - while () { - if (/^\s*(\S+)\s+(\S+)\s+data\s+(\S+)/i) + last if /Global Symbols|Linker script and memory map/; + } + + my @return_values = (); + my $line; + while ($line = ) + { + next if (index($line, $name) < 0); + + # RVCT 2.2 + # + # KHeapMinCellSize 0x0004e38c Data 4 mem.o(.constdata) + # + if ($line =~ /^\s*(\S+)\s+(\S+)\s+data\s+(\S+)/i) { my ($symbol, $addr, $size) = ($1, $2, $3); if ($symbol eq $name) { - close TMP; - return ($addr, $size); + @return_values = ($addr, $size); + last; } } @@ -736,18 +749,42 @@ # # KHeapMinCellSize (EXPORTED) 0x0003d81c Data 4 mem.o(.constdata) # - elsif (/^\s*(\S+)\s+\(exported\)\s+(\S+)\s+data\s+(\S+)/i) + elsif ($line =~ /^\s*(\S+)\s+\(exported\)\s+(\S+)\s+data\s+(\S+)/i) { my ($symbol, $addr, $size) = ($1, $2, $3); if ($symbol eq $name) { - close TMP; - return ($addr, $size); + @return_values = ($addr, $size); + last; } } - } + + # GCC 4.x map files + # 0x00114c68 KHeapMinCellSize + # 0x00114c6c KHeapShrinkHysRatio + # .rodata 0x00115130 0x968 M:/epoc32/build/kernel/c_99481fddbd6c6f58/_omap3530_ekern_exe/armv5/udeb/heap_hybrid.o + # + elsif ($line =~ /^.+\s+(0x\S+)\s+(\S+)/i) + { + my ($addr, $symbol) = ($1, $2); + if ($symbol eq $name) + { + my $next_line = ; + if ($next_line =~ /^.+\s+(0x\S+)\s+(\S+)/i) + { + my $addr2 = $1; + + @return_values = ($addr, hex($addr2) - hex($addr)); + last; + } + } + } - die "patchdata: Can't find symbol $name\n"; + } + close TMP; + + die "patchdata: Can't find symbol $name\n" if (scalar @return_values == 0); + return @return_values; } sub parsePatchData($$) @@ -767,6 +804,8 @@ die "Bad patchdata command: $line\n"; } + print "Handling $line\n" if $debug; + my ($file, $symbol, $value) = (lc $1, $2, $3); my ($srcFile, $destFile) = lookupFileInfo($infile, $file); my ($index, $elementSize) = (undef, undef); @@ -778,6 +817,7 @@ if ($srcFile =~ /\\armv5(smp)?\\/i) { + print "..looking up $symbol in $srcFile.map\n" if $debug; my ($symbolAddr, $symbolSize) = lookupSymbolInfo("$srcFile.map", $symbol); my $max; @@ -819,6 +859,7 @@ $value = sprintf("0x%08x", $value); $line = "patchdata $destFile addr $symbolAddr $symbolSize $value\n"; + print ".. new line is $line\n" if $debug; } else { diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/rombuild/rom_sbs.pl diff -r e4a1175ecbc0 -r ec72eca27576 kernel/eka/rombuild/user.iby --- a/kernel/eka/rombuild/user.iby Mon Jul 26 11:06:41 2010 +0100 +++ b/kernel/eka/rombuild/user.iby Mon Jul 26 11:21:15 2010 +0100 @@ -29,7 +29,7 @@ file=\Epoc32\Release\##EUSERDIR##\##BUILD##\##EUSER_DLL \sys\bin\EUSER.DLL #ifdef RVCT -#include +#include #endif #ifndef SYMBIAN_EXCLUDE_KEYBOARD diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/defrag/perf/t_perf.cpp --- a/kerneltest/e32test/defrag/perf/t_perf.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/defrag/perf/t_perf.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -37,8 +37,8 @@ #include #include -#include "..\d_pagemove.h" -#include "..\..\mmu\mmudetect.h" +#include "../d_pagemove.h" +#include "../../mmu/mmudetect.h" #include "t_perf.h" diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/defrag/perf/t_perf.h --- a/kerneltest/e32test/defrag/perf/t_perf.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/defrag/perf/t_perf.h Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ #define _DEFRAG_PERF_T_PERF_H_ #include "t_testdll.h" -#include "..\d_pagemove.h" +#include "../d_pagemove.h" typedef TUint32 DTime_t; //#define EXTRA_TRACE diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/defrag/perf/t_perfdll.cpp --- a/kerneltest/e32test/defrag/perf/t_perfdll.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/defrag/perf/t_perfdll.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -18,7 +18,7 @@ #define __E32TEST_EXTENSION__ #include #include -#include "..\d_pagemove.h" +#include "../d_pagemove.h" #include "t_perf.h" #include "t_testdll.h" diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/defrag/perf/t_testproc.cpp --- a/kerneltest/e32test/defrag/perf/t_testproc.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/defrag/perf/t_testproc.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -18,7 +18,7 @@ #define __E32TEST_EXTENSION__ #include -#include "..\d_pagemove.h" +#include "../d_pagemove.h" #include "t_perf.h" #include "t_testdll.h" diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/defrag/t_pagemove.cia --- a/kerneltest/e32test/defrag/t_pagemove.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/defrag/t_pagemove.cia Mon Jul 26 11:21:15 2010 +0100 @@ -46,13 +46,13 @@ { asm("add r0, r0, #1 "); __JUMP(,lr); - asm("Increment__Fi_end: "); + asm("_Z9Incrementi_end: "); } __NAKED__ TUint Increment_Length() { - asm("adr r0, Increment__Fi_end "); - asm("adr r1, Increment__Fi "); + asm("adr r0, _Z9Incrementi_end "); + asm("adr r1, _Z9Incrementi "); asm("sub r0, r0, r1 "); __JUMP(,lr); } @@ -61,13 +61,13 @@ { asm("sub r0, r0, #1 "); __JUMP(,lr); - asm("Decrement__Fi_end: "); + asm("_Z9Decrementi_end: "); } __NAKED__ TUint Decrement_Length() { - asm("adr r0, Decrement__Fi_end "); - asm("adr r1, Decrement__Fi "); + asm("adr r0, _Z9Decrementi_end "); + asm("adr r1, _Z9Decrementi "); asm("sub r0, r0, r1 "); __JUMP(,lr); } diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/defrag/t_pagemove.cpp --- a/kerneltest/e32test/defrag/t_pagemove.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/defrag/t_pagemove.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -60,9 +60,9 @@ #include "d_pagemove.h" #include "t_pagemove_dll.h" #include "t_pmwsd.h" -#include "..\mmu\mmudetect.h" -#include "..\debug\d_codemodifier.h" -#include "..\mmu\d_memorytest.h" +#include "../mmu/mmudetect.h" +#include "../debug/d_codemodifier.h" +#include "../mmu/d_memorytest.h" //#define _DEBUG_MSG #ifdef _DEBUG_MSG diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/defrag/t_ramdefrag.cpp --- a/kerneltest/e32test/defrag/t_ramdefrag.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/defrag/t_ramdefrag.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -33,7 +33,7 @@ #include #include #include "testdefs.h" -#include "..\mmu\mmudetect.h" +#include "../mmu/mmudetect.h" #include diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/demandpaging/t_printsysinfo.cpp --- a/kerneltest/e32test/demandpaging/t_printsysinfo.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/demandpaging/t_printsysinfo.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -20,7 +20,7 @@ #include #include #include -#include "..\mmu\mmudetect.h" +#include "../mmu/mmudetect.h" RTest test(_L("T_PRINTSYSINFO")); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/digitiser/d_ldddigitisertest.h --- a/kerneltest/e32test/digitiser/d_ldddigitisertest.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/digitiser/d_ldddigitisertest.h Mon Jul 26 11:21:15 2010 +0100 @@ -111,5 +111,5 @@ inline TInt setPointer3DPressureStep(TUint aPointer3DPressureStep); }; -#include "d_lddDigitisertest.inl" +#include "d_ldddigitisertest.inl" #endif //__DLDDDIGITISERTEST_H__ diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/digitiser/t_ldddigitisertest.cpp --- a/kerneltest/e32test/digitiser/t_ldddigitisertest.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/digitiser/t_ldddigitisertest.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -17,7 +17,7 @@ #include #include -#include "d_lddDigitisertest.h" +#include "d_ldddigitisertest.h" #include _LIT(KLddFileName, "D_LDDDIGITISERTEST.LDD"); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/eabi/d_second_excp2u.def --- a/kerneltest/e32test/eabi/d_second_excp2u.def Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/eabi/d_second_excp2u.def Mon Jul 26 11:21:15 2010 +0100 @@ -7,5 +7,5 @@ _ZN14UncaughtTesterC2ERi @ 6 NONAME _ZN14UncaughtTesterD1Ev @ 7 NONAME _ZN14UncaughtTesterD2Ev @ 8 NONAME - _ZTT17MyFourthException @ 9 NONAME + _ZTT17MyFourthException @ 9 ABSENT diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/eabi/d_second_excpu.def --- a/kerneltest/e32test/eabi/d_second_excpu.def Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/eabi/d_second_excpu.def Mon Jul 26 11:21:15 2010 +0100 @@ -7,5 +7,5 @@ _ZN14UncaughtTesterC2ERi @ 6 NONAME _ZN14UncaughtTesterD1Ev @ 7 NONAME _ZN14UncaughtTesterD2Ev @ 8 NONAME - _ZTT17MyFourthException @ 9 NONAME + _ZTT17MyFourthException @ 9 ABSENT diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/examples/defrag/t_defrag_ref.cpp --- a/kerneltest/e32test/examples/defrag/t_defrag_ref.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/examples/defrag/t_defrag_ref.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -33,7 +33,7 @@ #define __E32TEST_EXTENSION__ #include #include "d_defrag_ref.h" -#include "..\..\mmu\mmudetect.h" +#include "../../mmu/mmudetect.h" LOCAL_D RTest test(_L("T_DEFRAG_REF")); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/bld.inf --- a/kerneltest/e32test/group/bld.inf Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/bld.inf Mon Jul 26 11:21:15 2010 +0100 @@ -1066,6 +1066,8 @@ #include "../hcr/hcr.inf" +#ifndef GCCE //pci tests t_pci +#endif diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/d_ldd.mmp --- a/kerneltest/e32test/group/d_ldd.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/d_ldd.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -29,5 +29,10 @@ UID 0x100000af VENDORID 0x70000001 +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + capability all SMPSAFE diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/d_ldd2.mmp --- a/kerneltest/e32test/group/d_ldd2.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/d_ldd2.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -26,5 +26,10 @@ EPOCALLOWDLLDATA +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + capability all SMPSAFE diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/d_ldd2_ram.mmp --- a/kerneltest/e32test/group/d_ldd2_ram.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/d_ldd2_ram.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -29,5 +29,10 @@ romtarget ramtarget + +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + capability all SMPSAFE diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/d_ldd_ram.mmp --- a/kerneltest/e32test/group/d_ldd_ram.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/d_ldd_ram.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -31,5 +31,10 @@ romtarget RAMTARGET + +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + capability all SMPSAFE diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/d_lddns.mmp --- a/kerneltest/e32test/group/d_lddns.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/d_lddns.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -30,5 +30,10 @@ VENDORID 0x70000001 RAMTARGET D_LDDNS_ram.LDD +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + capability all SMPSAFE diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/d_nanowait.mmp --- a/kerneltest/e32test/group/d_nanowait.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/d_nanowait.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -24,7 +24,7 @@ SOURCEPATH ../SYSTEM SOURCE D_NANOWAIT.CPP -LIBRARY EKERN.LIB +LIBRARY ekern.lib epocallowdlldata diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/d_timestamp.mmp --- a/kerneltest/e32test/group/d_timestamp.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/d_timestamp.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -17,7 +17,7 @@ -#include "kernel\kern_ext.mmh" +#include "kernel/kern_ext.mmh" TARGET D_TIMESTAMP.LDD TARGETTYPE LDD @@ -25,7 +25,7 @@ SOURCEPATH ../timestamp SOURCE D_TIMESTAMP.CPP -LIBRARY EKERN.LIB +LIBRARY ekern.lib epocallowdlldata diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/rescontrol_extended_psl.mmp --- a/kerneltest/e32test/group/rescontrol_extended_psl.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/rescontrol_extended_psl.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -46,6 +46,11 @@ uid 0x100039d0 0x10285812 capability all +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + start wins win32_headers end diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/rescontrol_psl.mmp --- a/kerneltest/e32test/group/rescontrol_psl.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/rescontrol_psl.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -43,9 +43,14 @@ uid 0x100039d0 0x10285812 capability all +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + start wins win32_headers end macro CPU_AFFINITY_ANY -SMPSAFE \ No newline at end of file +SMPSAFE diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_break.mmp --- a/kerneltest/e32test/group/t_break.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_break.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../SYSTEM SOURCE T_BREAK.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN RAMTARGET + diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_dce.mmp --- a/kerneltest/e32test/group/t_dce.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_dce.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../DEVICE SOURCE T_DCE.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_dceutl.mmp --- a/kerneltest/e32test/group/t_dceutl.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_dceutl.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../DEVICE SOURCE T_DCEUTL.CPP -LIBRARY EUSER.LIB HAL.LIB +LIBRARY euser.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_defragperf.mmp --- a/kerneltest/e32test/group/t_defragperf.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_defragperf.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -20,7 +20,7 @@ ALWAYS_BUILD_AS_ARM SOURCEPATH ../DEFRAG/PERF SOURCE T_PERF.CPP T_PERFDLL.CPP T_TIMER.CPP -LIBRARY EUSER.LIB HAL.LIB +LIBRARY euser.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN ROMTARGET RAMTARGET + diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_defragtestperf.mmp --- a/kerneltest/e32test/group/t_defragtestperf.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_defragtestperf.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../DEFRAG/PERF SOURCE t_testproc.cpp T_PERFDLL.CPP t_timer.cpp -LIBRARY EUSER.LIB HAL.LIB +LIBRARY euser.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN ROMTARGET diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_drtaeabi.mmp --- a/kerneltest/e32test/group/t_drtaeabi.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_drtaeabi.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -21,6 +21,8 @@ SOURCE aeabidiv0.cpp SOURCE drtaeabi.cpp +OS_LAYER_LIBC_SYSTEMINCLUDE +OS_LAYER_STDCPP_SYSTEMINCLUDE SOURCE type_info.cpp USERINCLUDE ../../../kernel/eka/include diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_lfsdrvbm.mmp --- a/kerneltest/e32test/group/t_lfsdrvbm.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_lfsdrvbm.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../LFFS SOURCE T_LFSDRVBM.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_modem1.mmp --- a/kerneltest/e32test/group/t_modem1.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_modem1.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../DEVICE SOURCE T_MODEM1.CPP -LIBRARY EUSER.LIB HAL.LIB +LIBRARY euser.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_modem2.mmp --- a/kerneltest/e32test/group/t_modem2.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_modem2.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../DEVICE SOURCE T_MODEM2.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_nanowait.mmp --- a/kerneltest/e32test/group/t_nanowait.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_nanowait.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../SYSTEM SOURCE T_NANOWAIT.CPP -LIBRARY EUSER.LIB HAL.LIB +LIBRARY euser.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_pagemove.mmp --- a/kerneltest/e32test/group/t_pagemove.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_pagemove.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -20,7 +20,7 @@ SOURCEPATH ../DEFRAG SOURCE T_PAGEMOVE.CPP SOURCE T_PAGEMOVE.CIA -LIBRARY EUSER.LIB dptest.lib T_PMWSD.LIB T_PAGEMOVE_DLL.LIB +LIBRARY euser.lib dptest.lib t_pmwsd.lib t_pagemove_dll.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN // This process shouldn't be paged diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_pccd1.mmp --- a/kerneltest/e32test/group/t_pccd1.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_pccd1.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../PCCD SOURCE T_PCCD1.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_pccd2.mmp --- a/kerneltest/e32test/group/t_pccd2.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_pccd2.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../PCCD SOURCE T_PCCD2.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_pccd3.mmp --- a/kerneltest/e32test/group/t_pccd3.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_pccd3.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../PCCD SOURCE T_PCCD3.CPP -LIBRARY EUSER.LIB HAL.LIB +LIBRARY euser.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_persistrestart.mmp --- a/kerneltest/e32test/group/t_persistrestart.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_persistrestart.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../POWER SOURCE T_PERSISTRESTART.CPP -LIBRARY EUSER.LIB HAL.LIB +LIBRARY euser.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN USERINCLUDE ../power diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_prom.mmp --- a/kerneltest/e32test/group/t_prom.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_prom.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../DEVICE SOURCE T_PROM.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_r64.mmp --- a/kerneltest/e32test/group/t_r64.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_r64.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -21,7 +21,7 @@ SOURCE T_R64.CPP SOURCE T_R64DTA.CPP SOURCE T_GCC64.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_regram.mmp --- a/kerneltest/e32test/group/t_regram.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_regram.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../SYSTEM SOURCE T_REGRAM.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_romchk.mmp --- a/kerneltest/e32test/group/t_romchk.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_romchk.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../MISC SOURCE T_ROMCHK.CPP -LIBRARY EUSER.LIB +LIBRARY euser.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN capability all diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_usb_device.mmp --- a/kerneltest/e32test/group/t_usb_device.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_usb_device.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -22,7 +22,7 @@ OS_LAYER_SYSTEMINCLUDE_SYMBIAN -USERINCLUDE ../USB/T_USB_DEVICE/INCLUDE +USERINCLUDE ../usb/t_usb_device/include // Source file paths @@ -40,8 +40,8 @@ SOURCE usbms.cpp -LIBRARY EUSER.LIB HAL.LIB -LIBRARY EFSRV.LIB +LIBRARY euser.lib hal.lib +LIBRARY efsrv.lib CAPABILITY ALL diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_usb_scdevice.mmp --- a/kerneltest/e32test/group/t_usb_scdevice.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_usb_scdevice.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -42,9 +42,9 @@ SOURCE usbms.cpp -LIBRARY EUSER.LIB HAL.LIB +LIBRARY euser.lib hal.lib LIBRARY usbcsc_bil.lib -LIBRARY EFSRV.LIB +LIBRARY efsrv.lib CAPABILITY ALL diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/t_usbcsc.mmp --- a/kerneltest/e32test/group/t_usbcsc.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/t_usbcsc.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -22,7 +22,7 @@ SOURCE t_usbcsc.cpp OS_LAYER_SYSTEMINCLUDE_SYMBIAN -LIBRARY EUSER.LIB HAL.LIB usbcsc_bil.lib +LIBRARY euser.lib hal.lib usbcsc_bil.lib CAPABILITY all diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/group/thrdlist.mmp --- a/kerneltest/e32test/group/thrdlist.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/group/thrdlist.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ TARGETTYPE EXE SOURCEPATH ../MISC SOURCE THRDLIST.CPP -LIBRARY EUSER.LIB EFSRV.LIB +LIBRARY euser.lib efsrv.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/hcr/d_hcrsim_client.mmp --- a/kerneltest/e32test/hcr/d_hcrsim_client.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/hcr/d_hcrsim_client.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -33,6 +33,11 @@ epocallowdlldata smpsafe +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + start wins win32_headers end diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/hcr/d_hcrsim_own.mmp --- a/kerneltest/e32test/hcr/d_hcrsim_own.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/hcr/d_hcrsim_own.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -32,6 +32,11 @@ epocallowdlldata smpsafe +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + start wins win32_headers end diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/hcr/d_hcrut.mmp --- a/kerneltest/e32test/hcr/d_hcrut.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/hcr/d_hcrut.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -38,6 +38,11 @@ epocallowdlldata smpsafe +#ifdef GCCE +staticlibrary usrt4_0.lib +library drtaeabi.dso +#endif + start wins win32_headers end diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/lffs/t_lfsdrv2.cpp --- a/kerneltest/e32test/lffs/t_lfsdrv2.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/lffs/t_lfsdrv2.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -22,7 +22,7 @@ #include #include #include "u32std.h" -#include "..\misc\prbs.h" +#include "../misc/prbs.h" _LIT(KTestName,"T_LFSDRV"); _LIT(KMediaDriverName,"MEDLFS"); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/lffs/t_lfsdrvbm.cpp --- a/kerneltest/e32test/lffs/t_lfsdrvbm.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/lffs/t_lfsdrvbm.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ #include #include #include -#include "..\misc\prbs.h" +#include "../misc/prbs.h" LOCAL_D TBuf<16384> DataBuf; diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/misc/d_testkerncorestats.cpp --- a/kerneltest/e32test/misc/d_testkerncorestats.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/misc/d_testkerncorestats.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -15,7 +15,7 @@ // // -#include "d_TestKernCoreStats.h" +#include "d_testkerncorestats.h" #include #include diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/mmu/t_alias_remove.cpp --- a/kerneltest/e32test/mmu/t_alias_remove.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/mmu/t_alias_remove.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -30,7 +30,7 @@ #include #include #include -#include "..\defrag\d_pagemove.h" +#include "../defrag/d_pagemove.h" const TPtrC KAliasProcessName = _L("T_ALIAS_REMOVE"); const TPtrC KAliasChunkName = _L("AliasChunk"); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/mmu/t_cachechunk.cpp --- a/kerneltest/e32test/mmu/t_cachechunk.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/mmu/t_cachechunk.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -87,7 +87,7 @@ #include "d_gobble.h" #include #include "freeram.h" -#include "..\demandpaging\t_dpcmn.h" +#include "../demandpaging/t_dpcmn.h" RTest test(_L("T_CACHECHUNK")); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/mmu/t_imb.cia --- a/kerneltest/e32test/mmu/t_imb.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/mmu/t_imb.cia Mon Jul 26 11:21:15 2010 +0100 @@ -169,14 +169,14 @@ asm("bic r3, r3, #0x00080000 "); // else convert SNaN to QNaN asm("b fastsqrtxa "); // and return KErrArgument - asm("Sqrt__FRdRCd_end: "); + asm("_Z4SqrtRdRKd_end: "); } __NAKED__ TUint Sqrt_Length() { - asm("adr r0, Sqrt__FRdRCd_end "); - asm("adr r1, Sqrt__FRdRCd "); + asm("adr r0, _Z4SqrtRdRKd_end "); + asm("adr r1, _Z4SqrtRdRKd "); asm("sub r0, r0, r1 "); __JUMP(,lr); } @@ -436,13 +436,13 @@ asm("__RealIndefiniteExponent: "); asm(".word 0xFFFF0001 "); - asm("Divide__FR6TRealXRC6TRealX_end: "); + asm("_Z6DivideR6TRealXRKS__end: "); } __NAKED__ TUint Divide_Length() { - asm("adr r0, Divide__FR6TRealXRC6TRealX_end "); - asm("adr r1, Divide__FR6TRealXRC6TRealX "); + asm("adr r0, _Z6DivideR6TRealXRKS__end "); + asm("adr r1, _Z6DivideR6TRealXRKS_ "); asm("sub r0, r0, r1 "); __JUMP(,lr); } @@ -450,13 +450,13 @@ __NAKED__ TInt SDummy(TInt) { __JUMP(,lr); - asm("SDummy__Fi_end: "); + asm("_Z6SDummyi_end: "); } __NAKED__ TUint SDummy_Length() { - asm("adr r0, SDummy__Fi_end "); - asm("adr r1, SDummy__Fi "); + asm("adr r0, _Z6SDummyi_end "); + asm("adr r1, _Z6SDummyi "); asm("sub r0, r0, r1 "); __JUMP(,lr); } @@ -465,13 +465,13 @@ { asm("add r0, r0, #1 "); __JUMP(,lr); - asm("Increment__Fi_end: "); + asm("_Z9Incrementi_end: "); } __NAKED__ TUint Increment_Length() { - asm("adr r0, Increment__Fi_end "); - asm("adr r1, Increment__Fi "); + asm("adr r0, _Z9Incrementi_end "); + asm("adr r1, _Z9Incrementi "); asm("sub r0, r0, r1 "); __JUMP(,lr); } diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/mmu/t_mmustress.cpp --- a/kerneltest/e32test/mmu/t_mmustress.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/mmu/t_mmustress.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -29,7 +29,7 @@ #include #include #include "d_memorytest.h" -#include "..\defrag\d_pagemove.h" +#include "../defrag/d_pagemove.h" TBool TRACE = 0; diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/mmu/t_shadow.cpp --- a/kerneltest/e32test/mmu/t_shadow.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/mmu/t_shadow.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -40,7 +40,7 @@ #include #include "d_shadow.h" #include "d_gobble.h" -#include "..\defrag\d_pagemove.h" +#include "../defrag/d_pagemove.h" #include "d_memorytest.h" #include #include "mmudetect.h" diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/pipe/t_pipe.cpp --- a/kerneltest/e32test/pipe/t_pipe.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/pipe/t_pipe.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -58,7 +58,7 @@ #include #include -#include "RPipe.h" +#include "rpipe.h" LOCAL_D RTest test(_L("t_pipe")); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/rm_debug/group/t_rmdebug2.mmp --- a/kerneltest/e32test/rm_debug/group/t_rmdebug2.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/rm_debug/group/t_rmdebug2.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -18,6 +18,8 @@ target t_rmdebug2.exe +USERINCLUDE ../../../../kernel/eka/debug/securityServer/inc + sourcepath ../basic_tests source t_rmdebug2.cpp source r_low_memory_security_svr_session.cpp diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/rm_debug/group/t_rmdebug2_oem.mmp --- a/kerneltest/e32test/rm_debug/group/t_rmdebug2_oem.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/rm_debug/group/t_rmdebug2_oem.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -20,6 +20,8 @@ target t_rmdebug2_oem.exe +USERINCLUDE ../../../../kernel/eka/debug/securityServer/inc + sourcepath ../basic_tests source t_rmdebug2.cpp source r_low_memory_security_svr_session.cpp diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/rm_debug/group/t_rmdebug2_oem2.mmp --- a/kerneltest/e32test/rm_debug/group/t_rmdebug2_oem2.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/rm_debug/group/t_rmdebug2_oem2.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -20,6 +20,8 @@ target t_rmdebug2_oem2.exe +USERINCLUDE ../../../../kernel/eka/debug/securityServer/inc + sourcepath ../basic_tests source t_rmdebug2.cpp source r_low_memory_security_svr_session.cpp diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/usb/t_usb_device/src/activedevicestatenotifier.cpp --- a/kerneltest/e32test/usb/t_usb_device/src/activedevicestatenotifier.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/usb/t_usb_device/src/activedevicestatenotifier.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -20,7 +20,7 @@ #include "general.h" #include "activerw.h" // CActiveRW #include "config.h" -#include "activeControl.h" +#include "activecontrol.h" #include "activedevicestatenotifier.h" extern CActiveControl* gActiveControl; diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32test/usb/t_usb_device/src/main.cpp --- a/kerneltest/e32test/usb/t_usb_device/src/main.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/e32test/usb/t_usb_device/src/main.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -20,7 +20,7 @@ #include "general.h" #include "config.h" #include "activecontrol.h" -#include "activeRW.h" +#include "activerw.h" // --- Global Top Level Variables diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/e32utils/group/bld.inf diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/bench/t_fsrdirload.cpp --- a/kerneltest/f32test/bench/t_fsrdirload.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/bench/t_fsrdirload.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -18,7 +18,7 @@ #include #include #include "t_select.h" -#include "..\server\t_server.h" +#include "../server/t_server.h" #include "t_benchmain.h" diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/bench/t_fsrdirscan.cpp --- a/kerneltest/f32test/bench/t_fsrdirscan.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/bench/t_fsrdirscan.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -18,7 +18,7 @@ #include #include #include "t_select.h" -#include "..\server\t_server.h" +#include "../server/t_server.h" #include "t_benchmain.h" GLDEF_D RTest test(_L("File Server Benchmarks, DirScan")); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/bench/t_fsropen.cpp --- a/kerneltest/f32test/bench/t_fsropen.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/bench/t_fsropen.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -18,7 +18,7 @@ #include #include #include "t_select.h" -#include "..\server\t_server.h" +#include "../server/t_server.h" #include "t_benchmain.h" GLDEF_D RTest test(_L("File Server Benchmarks, Open File")); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/demandpaging/loader/t_pageldrtstdll.cia --- a/kerneltest/f32test/demandpaging/loader/t_pageldrtstdll.cia Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/demandpaging/loader/t_pageldrtstdll.cia Mon Jul 26 11:21:15 2010 +0100 @@ -32,7 +32,7 @@ //#if defined(_DEBUG) || defined(_DEBUG_RELEASE) -#if defined __ARMCC__ || defined __X86__ +#if defined __EABI__ || defined __X86__ #ifdef __X86__ @@ -68,7 +68,7 @@ #define __NAKED__ #endif -#if defined __ARMCC__ +#if defined __EABI__ #define ASM_OP1 asm("movs r2,r0"); #define ASM_OP2 asm("adds r0,r2,r1"); #define ASM_OP3 asm("bx lr"); @@ -1633,12 +1633,17 @@ __NAKED__ TInt TestAlignmentxXXx(TInt aParam1) { -#ifdef __X86__ +#if defined(__X86__) return 0; -#else +#elif defined(__ARMCC__) space 4096 BX lr ENDP +#elif defined(__GCCE__) + asm(".fill 4096"); + asm("bx lr"); +#else +#error What compiler? #endif } @@ -1934,7 +1939,7 @@ } -#endif // __ARMCC__ +#endif // __EABI__ TInt CallTestFunc(TInt aParam1, TInt aParam2, TInt aIndex) { diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/demandpaging/t_mmcpaging.cpp --- a/kerneltest/f32test/demandpaging/t_mmcpaging.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/demandpaging/t_mmcpaging.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -350,7 +350,7 @@ { TInt r=UserSvr::HalFunction(EHalGroupVM,EVMHalFlushCache,0,0); if (Random() & 1) - User::AfterHighRes(500+Random() & 2047); + User::AfterHighRes((500+Random()) & 2047); if (r<0) { @@ -376,7 +376,7 @@ } PagedTrashCount++; if (RandomNo & 1) - User::AfterHighRes(500+Random() & 2047); + User::AfterHighRes((500+Random()) & 2047); } } diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/demandpaging/t_nandpaging.cpp --- a/kerneltest/f32test/demandpaging/t_nandpaging.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/demandpaging/t_nandpaging.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -356,7 +356,7 @@ { TInt r=UserSvr::HalFunction(EHalGroupVM,EVMHalFlushCache,0,0); if (Random() & 1) - User::AfterHighRes(500+Random() & 2047); + User::AfterHighRes((500+Random()) & 2047); if (r<0) { @@ -382,7 +382,7 @@ } PagedTrashCount++; if (RandomNo & 1) - User::AfterHighRes(500+Random() & 2047); + User::AfterHighRes((500+Random()) & 2047); } } @@ -670,7 +670,7 @@ TInt tries = 10; do { // If we get zero hits, maybe the page hasnt hit yet. tries--; - User::AfterHighRes(1000+Random() & 2047); // Throw some uncertainly into things + User::AfterHighRes((1000+Random()) & 2047); // Throw some uncertainly into things TPtr8 statsBuf((TUint8*) &stats, sizeof(stats)); r = Drive.ControlIO(KNandGetDeferStats,statsBuf,0); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/demandpaging/t_pagestress.cpp --- a/kerneltest/f32test/demandpaging/t_pagestress.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/demandpaging/t_pagestress.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -974,7 +974,7 @@ TestPrioChange = EFalse; TestMediaAccess = EFalse; -#if defined __ARMCC__ || defined __X86__ +#if defined __EABI__ || defined __X86__ // Currently we only build aligned DLLs on ARMV5 and X86 builds. TEST_NEXT((_L("Alignment Check."))); RUNTEST1(CheckAlignments() == KErrNone); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/filesystem/fat/b_fat32.cpp --- a/kerneltest/f32test/filesystem/fat/b_fat32.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/filesystem/fat/b_fat32.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -305,7 +305,7 @@ // { static TBuf<6> str(_L("------")); - static char* atr = "RHSVDA"; + static char const * atr = "RHSVDA"; for (TInt i = 0; i < 6; i++) if ((aAttrib >> i) & 1) str[i] = atr[i]; diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/filesystem/fat/t_scn32dr1.cpp --- a/kerneltest/f32test/filesystem/fat/t_scn32dr1.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/filesystem/fat/t_scn32dr1.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -519,7 +519,7 @@ // { LOCAL_D TBuf<6> str; - LOCAL_D char* atr = "RHSVDA"; + LOCAL_D char const * atr = "RHSVDA"; str.Fill(TText('-'), 6); for (TInt i = 0; i < 6; i++) if ((aAttrib >> i) & 1) @@ -1987,7 +1987,7 @@ ReadFatDisk(fatBuf); } - // use first entry \scndrv\dir2\almostfull\ + // use first entry \scndrv\dir2\almostfull test.Next(_L("Partial entry in middle of subdir")); last = GetStartCluster(gClusterDir2_AFull,7); TEntryInfo partial2(ClusterEntryToBytes(gClusterDir2_AFull,2),6); @@ -1998,7 +1998,7 @@ res=TestPartialEntry(partial2); test(res); - // reduce size of \scndrv\dir2\full\ + // reduce size of \scndrv\dir2\full test.Next(_L("Test directory reclaim")); last = GetStartCluster(gClusterDir2_Full,gEntriesPerCluster-2); WriteEndOfDir(ClusterEntryToBytes(gClusterDir2_Full,gEntriesPerCluster-2)); @@ -2018,7 +2018,7 @@ res=IsSameAsDrive(fatBuf,dirBuf); test(res); - // use last entry of first cluster in \scndrv\dir2\full\ + // use last entry of first cluster in \scndrv\dir2\full test.Next(_L("Partial entry at end of subdir")); r=temp.Create(TheFs,_L("\\scndrv\\dir2\\full\\temp"),EFileShareAny); test_KErrNone(r); @@ -2030,7 +2030,7 @@ res=TestPartialEntry(partial3); test(res); - // use entry in \scndrv\dir2\almostfull\ + // use entry in \scndrv\dir2\almostfull test.Next(_L("Partial entry preceeding end-of-dir marker")); last = GetStartCluster(gClusterDir2_AFull,14); if (last > 0) @@ -2052,7 +2052,7 @@ // as it is impossible for ScanDrive to judge if the illegal byte is part of a legal // DBCS charater. - // create entry in \scndrv\dir2\almostfull\ + // create entry in \scndrv\dir2\almostfull // test.Next(_L("Partial entry with invalid dos name")); // r=temp.Create(TheFs,_L("\\scndrv\\dir2\\almostfull\\Dodgy file name"),EFileShareAny); // test_KErrNone(r); @@ -2069,7 +2069,7 @@ if (BootSector.SectorsPerCluster() == 1) { - // use entry created in \scndrv\dir2\ + // use entry created in \scndrv\dir2 test.Next(_L("Partial entry spanning more than two clusters")); last = GetStartCluster(gClusterDir2_Full,gEntriesPerCluster-1); WriteEndOfDir(ClusterEntryToBytes(gClusterDir2_Full,gEntriesPerCluster-2)); @@ -2121,7 +2121,7 @@ test(res); // matching entries between 2 subdirs, one which has a full cluster - // first entry in \scndrv\dir2\full\ + end of \scndrv\dir2\almostfull\ + // first entry in \scndrv\dir2\full\ + end of \scndrv\dir2\almostfull test.Next(_L("matching entries between 2 subdirs")); TEntryInfo from2(ClusterEntryToBytes(gClusterDir2_Full,2),2); TEntryInfo to2(ClusterEntryToBytes(gClusterDir2_AFull,14),2); @@ -2130,7 +2130,7 @@ test(res); // matching entries between two subdirs - one with end of dir marker next - // \scndrv\dir2\somedirwith3entries to \scndrv\ + // \scndrv\dir2\somedirwith3entries to \scndrv test.Next(_L("matching entries between two subdirs")); TEntryInfo from3(ClusterEntryToBytes(gClusterDir2,4),3); TEntryInfo to3(ClusterEntryToBytes(gClusterScnDrv,6),3); @@ -2139,7 +2139,7 @@ test(res); // matching entries in same subdir, one in new cluster - irrelevant if matching names - // 1st and last entries in \scndrv\dir2\full\ + // 1st and last entries in \scndrv\dir2\full test.Next(_L("matching entries in same subdir")); // delete entries to allow contiguous clusters in \scndrv\dir2\full directory TInt r=TheFs.RmDir(_L("\\scndrv\\dir2\\somedirwith3entries\\")); @@ -2161,7 +2161,7 @@ res=TestMatchingEntry(to4); test(res); - // \scndrv\dir1\very long name to \\scndrv\dir2\full\ + // \scndrv\dir1\very long name to \\scndrv\dir2\full test.Next(_L("matching entries in diff dirs + new cluster")); // delete last entry in directory r=TheFs.Delete(LastInFull); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/filesystem/fat/t_tscan32.cpp --- a/kerneltest/f32test/filesystem/fat/t_tscan32.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/filesystem/fat/t_tscan32.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -475,7 +475,7 @@ // { LOCAL_D TBuf<6> str(_L("------")); - LOCAL_D char* atr = "RHSVDA"; + LOCAL_D char const * atr = "RHSVDA"; for (TInt i = 0; i < 6; i++) if ((aAttrib >> i) & 1) str[i] = atr[i]; diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/bld.inf --- a/kerneltest/f32test/group/bld.inf Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/bld.inf Mon Jul 26 11:21:15 2010 +0100 @@ -57,6 +57,7 @@ t_fsysbm support t_whet support #ifdef ARMCC +// ARMCC should become EABI if and when VFP is supported for GCCE builds. t_whetvfp support #endif //T_WARM manual diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/t_bigfile.mmp --- a/kerneltest/f32test/group/t_bigfile.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/t_bigfile.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -23,7 +23,7 @@ SOURCEPATH ../fileutils/src SOURCE f32_test_utils.cpp SOURCE t_chlffs.cpp -LIBRARY EUSER.LIB EFSRV.LIB HAL.LIB +LIBRARY euser.lib efsrv.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN USERINCLUDE ../server USERINCLUDE ../fileutils/inc diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/t_cfileman.mmp --- a/kerneltest/f32test/group/t_cfileman.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/t_cfileman.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -30,7 +30,7 @@ USERINCLUDE ../server USERINCLUDE ../fileutils/inc -LIBRARY EUSER.LIB EFSRV.LIB HAL.LIB +LIBRARY euser.lib efsrv.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN USERINCLUDE ../server diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/t_cp_plugin.mmp --- a/kerneltest/f32test/group/t_cp_plugin.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/t_cp_plugin.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -29,7 +29,7 @@ SOURCE fat_utils.cpp f32_test_utils.cpp SOURCE t_chlffs.cpp -LIBRARY EUSER.LIB EFSRV.LIB EKTRAN.LIB HAL.LIB +LIBRARY euser.lib efsrv.lib ektran.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN USERINCLUDE ../server USERINCLUDE ../fileutils/inc diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/t_fatcharsetconv.mmp --- a/kerneltest/f32test/group/t_fatcharsetconv.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/t_fatcharsetconv.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -26,7 +26,7 @@ SOURCE fat_utils.cpp f32_test_utils.cpp SOURCE T_CHLFFS.CPP -LIBRARY EUSER.LIB EFSRV.LIB EKTRAN.LIB HAL.LIB +LIBRARY euser.lib efsrv.lib ektran.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN USERINCLUDE ../server USERINCLUDE ../fileutils/inc diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/t_file64bit.mmp --- a/kerneltest/f32test/group/t_file64bit.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/t_file64bit.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -23,10 +23,10 @@ SOURCEPATH ../FILEUTILS/SRC SOURCE f32_test_utils.cpp SOURCE t_chlffs.cpp -LIBRARY EUSER.LIB EFSRV.LIB HAL.LIB +LIBRARY euser.lib efsrv.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN -USERINCLUDE ../SERVER -USERINCLUDE ../FILEUTILS/INC +USERINCLUDE ../server +USERINCLUDE ../fileutils/inc CAPABILITY All -TCB NetworkControl diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/t_filecache.mmp --- a/kerneltest/f32test/group/t_filecache.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/t_filecache.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -23,7 +23,7 @@ //SOURCE T_MAIN.CPP //SOURCE T_CHLFFS.CPP -LIBRARY EUSER.LIB EFSRV.LIB HAL.LIB +LIBRARY euser.lib efsrv.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN CAPABILITY TCB DISKADMIN ALLFILES diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/t_localeutils_cp932.mmp --- a/kerneltest/f32test/group/t_localeutils_cp932.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/t_localeutils_cp932.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -26,7 +26,7 @@ SOURCE fat_utils.cpp f32_test_utils.cpp SOURCE t_chlffs.cpp -LIBRARY EUSER.LIB EFSRV.LIB EKTRAN.LIB HAL.LIB +LIBRARY euser.lib efsrv.lib ektran.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN USERINCLUDE ../server USERINCLUDE ../fileutils/inc diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/t_romg.mmp --- a/kerneltest/f32test/group/t_romg.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/t_romg.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -25,7 +25,7 @@ SOURCE f32_test_utils.cpp SOURCE T_CHLFFS.CPP -LIBRARY EUSER.LIB EFSRV.LIB HAL.LIB +LIBRARY euser.lib efsrv.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN USERINCLUDE ../server USERINCLUDE ../fileutils/inc diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/group/t_surrogatepair.mmp --- a/kerneltest/f32test/group/t_surrogatepair.mmp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/group/t_surrogatepair.mmp Mon Jul 26 11:21:15 2010 +0100 @@ -27,7 +27,7 @@ SOURCE fat_utils.cpp f32_test_utils.cpp SOURCE t_chlffs.cpp -LIBRARY EUSER.LIB EFSRV.LIB EKTRAN.LIB HAL.LIB +LIBRARY euser.lib efsrv.lib ektran.lib hal.lib OS_LAYER_SYSTEMINCLUDE_SYMBIAN USERINCLUDE ../server USERINCLUDE ../fileutils/inc diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/locl/localeutils/elocl32_japan/inc/t_tlocl32_charconv.h --- a/kerneltest/f32test/locl/localeutils/elocl32_japan/inc/t_tlocl32_charconv.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/locl/localeutils/elocl32_japan/inc/t_tlocl32_charconv.h Mon Jul 26 11:21:15 2010 +0100 @@ -21,11 +21,11 @@ #define __CHARCONV_H__ #if !defined(__E32STD_H__) -#include +#include #endif #if !defined(__E32BASE_H__) -#include +#include #endif /** diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/locl/localeutils/elocl32_japan/inc/t_tlocl32_shiftjis.h --- a/kerneltest/f32test/locl/localeutils/elocl32_japan/inc/t_tlocl32_shiftjis.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/locl/localeutils/elocl32_japan/inc/t_tlocl32_shiftjis.h Mon Jul 26 11:21:15 2010 +0100 @@ -21,15 +21,15 @@ #define __SHIFTJIS_H__ #if !defined(__E32STD_H__) -#include +#include #endif #if !defined(__CHARCONV_H__) -#include "T_TLOCL32_CHARCONV.H" +#include "t_tlocl32_charconv.h" #endif #if !defined(__CONVUTILS_H__) -#include "T_TLOCL32_CONVUTILS.H" +#include "t_tlocl32_convutils.h" #endif class CnvShiftJis diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/locl/t_locChange.cpp --- a/kerneltest/f32test/locl/t_locChange.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/locl/t_locChange.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -41,7 +41,7 @@ } //new version of End, which calls handler before exit.. - IMPORT_C void End() + EXPORT_C void End() { if (iFailHdnFunc) iFailHdnFunc(*this); RTest::End(); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/manager/t_romg.cpp --- a/kerneltest/f32test/manager/t_romg.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/manager/t_romg.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ #include #include #include -#include "..\server\t_server.h" +#include "../server/t_server.h" const TInt KBufSize=0x10000; const TInt KFillerSize=0x100; diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/outsideBMP/src/t_surrogatepair.cpp --- a/kerneltest/f32test/outsideBMP/src/t_surrogatepair.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/outsideBMP/src/t_surrogatepair.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -18,10 +18,10 @@ #define __E32TEST_EXTENSION__ #include -#include +#include #include #include -#include "..\server\t_server.h" +#include "../server/t_server.h" RTest test(_L("T_SURROGATEPAIR")); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/plugins/version_1/virus/t_virus.cpp --- a/kerneltest/f32test/plugins/version_1/virus/t_virus.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/plugins/version_1/virus/t_virus.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -21,13 +21,13 @@ #include #include "t_server.h" -GLREF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char aFileName[]); +GLREF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char const * aFileName); #define TEST_FOR_ERROR( r ) TestIfEqual( r, KErrNone, __LINE__, __FILE__) #define TEST_FOR_VALUE( r, expected ) TestIfEqual( r, expected, __LINE__, __FILE__) _LIT( KValueTestFailMsg, "ERROR Got %d expected %d" ); -GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char aFileName[]) +GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char const *aFileName) { if( aExpected != aValue ) { diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/plugins/version_2/src/AllSupportedDrives_plugin.cpp --- a/kerneltest/f32test/plugins/version_2/src/AllSupportedDrives_plugin.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/plugins/version_2/src/AllSupportedDrives_plugin.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -13,7 +13,7 @@ // Description: // -#include "AllSupportedDrives_plugin.h" +#include "allsupporteddrives_plugin.h" #include /** diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/plugins/version_2/src/combinational2_plugin.cpp --- a/kerneltest/f32test/plugins/version_2/src/combinational2_plugin.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/plugins/version_2/src/combinational2_plugin.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -13,7 +13,7 @@ // Description: // -#include "Combinational2_plugin.h" +#include "combinational2_plugin.h" #include "plugincommon.h" #include diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/plugins/version_2/src/drivec_plugin.cpp --- a/kerneltest/f32test/plugins/version_2/src/drivec_plugin.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/plugins/version_2/src/drivec_plugin.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -13,7 +13,7 @@ // Description: // -#include "DriveC_plugin.h" +#include "drivec_plugin.h" #include #include "plugincommon.h" diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/plugins/version_2/src/drivez_plugin.cpp --- a/kerneltest/f32test/plugins/version_2/src/drivez_plugin.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/plugins/version_2/src/drivez_plugin.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -13,7 +13,7 @@ // Description: // -#include "DriveZ_plugin.h" +#include "drivez_plugin.h" #include #include "plugincommon.h" diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/plugins/version_2beta/t_plugin_v2beta.cpp --- a/kerneltest/f32test/plugins/version_2beta/t_plugin_v2beta.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/plugins/version_2beta/t_plugin_v2beta.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -24,7 +24,7 @@ #include "encrypt.h" #include "hex.h" -GLREF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char aFileName[]); +GLREF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char const * aFileName); #define TEST_FOR_ERROR( r ) { TInt _r = (r); if (_r < 0) HandleError(_r, __LINE__); } #define TEST_FOR_VALUE( r, expected ) TestIfEqual( r, expected, __LINE__, __FILE__) @@ -51,7 +51,7 @@ "line 9 abcdefghijklmnopqrstuvwxyz\n"); _LIT( KValueTestFailMsg, "ERROR Got %d expected %d" ); -GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char aFileName[]) +GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char const * aFileName) { if( aExpected != aValue ) { diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/server/t_cp_plugintest.cpp --- a/kerneltest/f32test/server/t_cp_plugintest.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/server/t_cp_plugintest.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -19,10 +19,10 @@ #define __E32TEST_EXTENSION__ #include -#include +#include #include #include -#include "..\server\t_server.h" +#include "../server/t_server.h" #include "fat_utils.h" diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/server/t_fatcharsetconv_Cases.h --- a/kerneltest/f32test/server/t_fatcharsetconv_Cases.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/server/t_fatcharsetconv_Cases.h Mon Jul 26 11:21:15 2010 +0100 @@ -19,7 +19,7 @@ #ifndef T_FATCHARSETCONV_CASES_H #define T_FATCHARSETCONV_CASES_H -#include "T_Fatcharsetconv_Aux.h" +#include "t_fatcharsetconv_aux.h" #if defined(_DEBUG) || defined(_DEBUG_RELEASE) extern CFileMan* gFileman; diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/server/t_fatcharsetconv_SpecificCases.cpp --- a/kerneltest/f32test/server/t_fatcharsetconv_SpecificCases.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/server/t_fatcharsetconv_SpecificCases.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -16,14 +16,14 @@ */ #define __E32TEST_EXTENSION__ -#include "T_Fatcharsetconv_aux.h" +#include "t_fatcharsetconv_aux.h" #include #include #include -#include +#include #include #include -#include "..\server\t_server.h" +#include "../server/t_server.h" //#include "fat_utils.h" @@ -578,7 +578,8 @@ while(__FILE__[i]!='\0') { fileName.SetLength(i+1); - fileName[i] = __FILE__[i++]; + fileName[i] = __FILE__[i]; + ++i; } gFileName = fileName; diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/server/t_fatcharsetconv_aux.cpp --- a/kerneltest/f32test/server/t_fatcharsetconv_aux.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/server/t_fatcharsetconv_aux.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -16,7 +16,7 @@ // #include -#include "T_fatcharsetconv_Aux.h" +#include "t_fatcharsetconv_aux.h" CFileMan* gFileMan = NULL; RPointerArray* gFileHandles = NULL; diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/server/t_fatcharsetconv_main.cpp --- a/kerneltest/f32test/server/t_fatcharsetconv_main.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/server/t_fatcharsetconv_main.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -25,7 +25,7 @@ #include "t_server.h" #include "t_chlffs.h" #include "fat_utils.h" -#include "T_Fatcharsetconv_Cases.h" +#include "t_fatcharsetconv_Cases.h" RTest test(_L("T_FatCharSetConv")); @@ -1341,7 +1341,8 @@ while(__FILE__[i]!='\0') { fileName.SetLength(i+1); - fileName[i] = __FILE__[i++]; + fileName[i] = __FILE__[i]; + ++i; } gFileName.Append(fileName); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/server/t_file64bit.cpp --- a/kerneltest/f32test/server/t_file64bit.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/server/t_file64bit.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -31,7 +31,7 @@ #include #include "t_server.h" #include "t_file64bit.h" -#include "..\\fileshare\\handshare64bit.h" +#include "../fileshare/handshare64bit.h" #include #include #include diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/server/t_fsrv.cpp --- a/kerneltest/f32test/server/t_fsrv.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/server/t_fsrv.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -297,7 +297,7 @@ if (anInfo.iType==EMediaNotPresent) return; - test_Value(anInfo.iDriveAtt, anInfo.iDriveAtt&(KDriveAttLocal|KDriveAttInternal)==KDriveAttLocal|KDriveAttInternal); // LFFS sets KDriveAttTransaction as well + test_Value(anInfo.iDriveAtt, (anInfo.iDriveAtt&(KDriveAttLocal|KDriveAttInternal))==(KDriveAttLocal|KDriveAttInternal)); // LFFS sets KDriveAttTransaction as well test_Value(anInfo.iType, anInfo.iType==EMediaFlash); test_Value(anInfo.iMediaAtt, anInfo.iMediaAtt==KMediaAttFormattable); } diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/server/t_localeutils_cp932.cpp --- a/kerneltest/f32test/server/t_localeutils_cp932.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/server/t_localeutils_cp932.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -19,11 +19,11 @@ #include -#include +#include #include #include #include -#include "..\server\t_server.h" +#include "../server/t_server.h" #include "fat_utils.h" RTest test(_L("T_LOCALEUTILS_CP932")); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/server/t_prel.cpp --- a/kerneltest/f32test/server/t_prel.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/server/t_prel.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -22,7 +22,7 @@ EXPORT_C void FurtiveD(TFileName &aInfo) { - char *dummy="Link unit for Preload test"; + char const *dummy="Link unit for Preload test"; dummy=dummy; TFileName name; Dll::FileName(name); diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/smassstorage/scsiprot/t_ms_main.cpp --- a/kerneltest/f32test/smassstorage/scsiprot/t_ms_main.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/smassstorage/scsiprot/t_ms_main.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -45,7 +45,7 @@ } _LIT( KValueTestFailMsg, "ERROR Got %d expected %d" ); -GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char aFileName[]) +GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char const *aFileName) { if( aExpected != aValue ) { diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/smassstorage/scsiprot/t_ms_main.h --- a/kerneltest/f32test/smassstorage/scsiprot/t_ms_main.h Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/smassstorage/scsiprot/t_ms_main.h Mon Jul 26 11:21:15 2010 +0100 @@ -34,7 +34,7 @@ GLDEF_C void t_scsi_prot(); -GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char aFileName[]); +GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char const * aFileName); #define TEST_FOR_VALUE( r, expected ) TestIfEqual( r, expected, __LINE__, __FILE__) #define TEST_SENSE_CODE( aSensePtr, aExpKey, aExtAddCode ) \ diff -r e4a1175ecbc0 -r ec72eca27576 kerneltest/f32test/smassstorage/src/t_ms_main.cpp --- a/kerneltest/f32test/smassstorage/src/t_ms_main.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/kerneltest/f32test/smassstorage/src/t_ms_main.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -38,7 +38,7 @@ _LIT( KValueTestFailMsg, "ERROR Got %d expected %d" ); -GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char aFileName[]) +GLDEF_C void TestIfEqual( TInt aValue, TInt aExpected, TInt aLine, char const * aFileName) { if( aExpected != aValue ) { diff -r e4a1175ecbc0 -r ec72eca27576 package_definition.xml --- a/package_definition.xml Mon Jul 26 11:06:41 2010 +0100 +++ b/package_definition.xml Mon Jul 26 11:21:15 2010 +0100 @@ -92,6 +92,9 @@ + + + diff -r e4a1175ecbc0 -r ec72eca27576 userlibandfileserver/domainmgr/eabi/domaincliu.def diff -r e4a1175ecbc0 -r ec72eca27576 userlibandfileserver/fileserver/eabi/efileu.def diff -r e4a1175ecbc0 -r ec72eca27576 userlibandfileserver/fileserver/eabi/efsrvu.def diff -r e4a1175ecbc0 -r ec72eca27576 userlibandfileserver/fileserver/sfat/sl_utl.cpp --- a/userlibandfileserver/fileserver/sfat/sl_utl.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/userlibandfileserver/fileserver/sfat/sl_utl.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -203,7 +203,7 @@ chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ((w0 << 8) >> 24)); chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ( w0 >> 24)); - chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + (w1) & 0xFF); + chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + (w1 & 0xFF)); chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ((w1 << 16) >> 24)); chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ((w1 << 8) >> 24)); chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ( w1 >> 24)); diff -r e4a1175ecbc0 -r ec72eca27576 userlibandfileserver/fileserver/sfat32/sl_utl.cpp --- a/userlibandfileserver/fileserver/sfat32/sl_utl.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/userlibandfileserver/fileserver/sfat32/sl_utl.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -150,7 +150,7 @@ chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ((w0 << 8) >> 24)); chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ( w0 >> 24)); - chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + (w1) & 0xFF); + chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + (w1 & 0xFF)); chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ((w1 << 16) >> 24)); chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ((w1 << 8) >> 24)); chkSum = (TUint8)(((chkSum<<7) | (chkSum>>1)) + ( w1 >> 24)); diff -r e4a1175ecbc0 -r ec72eca27576 userlibandfileserver/fileserver/sfile/sf_func.h --- a/userlibandfileserver/fileserver/sfile/sf_func.h Mon Jul 26 11:06:41 2010 +0100 +++ b/userlibandfileserver/fileserver/sfile/sf_func.h Mon Jul 26 11:21:15 2010 +0100 @@ -918,9 +918,12 @@ public: static TInt Initialise(CFsRequest* aRequest); static TInt DoRequestL(CFsRequest* aRequest); + +#ifndef __GCCE__ // GCC does not like AddFsToCompositeMountL() being private #ifndef __GCC32__ // GCC does not like AddFsToCompositeMountL() being private private: #endif +#endif static void AddFsToCompositeMountL(TInt aDriveNumber, CFileSystem& aFileSystem, TInt aLocalDriveNumber); }; diff -r e4a1175ecbc0 -r ec72eca27576 userlibandfileserver/fileserver/sfile/sf_sys.cpp diff -r e4a1175ecbc0 -r ec72eca27576 userlibandfileserver/fileserver/sfile/sf_thread.cpp --- a/userlibandfileserver/fileserver/sfile/sf_thread.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/userlibandfileserver/fileserver/sfile/sf_thread.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -379,7 +379,7 @@ TUint id=RThread().Id(); if(aIsLock) t.iFSLock.Wait(); - TBool b = t.iIsAvailable && (!t.iIsSync && t.iId==id || t.iIsSync); + TBool b = t.iIsAvailable && ((!t.iIsSync && t.iId==id) || t.iIsSync); if(aIsLock) t.iFSLock.Signal(); return(b); diff -r e4a1175ecbc0 -r ec72eca27576 userlibandfileserver/fileserver/sfsrv/cl_fman.cpp --- a/userlibandfileserver/fileserver/sfsrv/cl_fman.cpp Mon Jul 26 11:06:41 2010 +0100 +++ b/userlibandfileserver/fileserver/sfsrv/cl_fman.cpp Mon Jul 26 11:21:15 2010 +0100 @@ -2614,7 +2614,7 @@ TInt r=KErrNotFound; if (iAction == EInternalRmDir || (iAction == EInternalCopyForMove && ((iMatchEntry & KMovingFilesMask) != KMovingFilesMask) && !iMovingContents && !iSrcFile.IsRoot()) || - iAction == EInternalRenameForMove && !iMovingContents && iNumberOfFilesProcessed) + (iAction == EInternalRenameForMove && !iMovingContents && iNumberOfFilesProcessed)) { r=iFs.RmDir(iSrcFile.FullName()); if ((r!=KErrNone && r!=KErrNotFound && iAction!=EInternalRenameForMove && r!=KErrInUse) || (iAction == EInternalRmDir && r == KErrInUse))