Bug 341 - [GCCE] Enabling support for gcce in cia files GCCE_COMPATIBILITY
authorarunabha
Thu, 19 Nov 2009 19:10:45 +0000
branchGCCE_COMPATIBILITY
changeset 3 9a3ffdc955cd
parent 2 2fa1cc9bce0b
child 4 367fcce9cce0
Bug 341 - [GCCE] Enabling support for gcce in cia files Bug 340 - [GCCE] improper use of __asm
kernel/eka/kernel/arm/d_entry.cpp
kernel/eka/kernel/arm/k_entry.cia
kernel/eka/kernel/arm/l_entry.cia
kernel/eka/kernel/arm/v_entry.cpp
kernel/eka/kernel/arm/x_entry.cpp
--- a/kernel/eka/kernel/arm/d_entry.cpp	Thu Nov 12 16:07:31 2009 +0000
+++ b/kernel/eka/kernel/arm/d_entry.cpp	Thu Nov 19 19:10:45 2009 +0000
@@ -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)
 //
--- a/kernel/eka/kernel/arm/k_entry.cia	Thu Nov 12 16:07:31 2009 +0000
+++ b/kernel/eka/kernel/arm/k_entry.cia	Thu Nov 19 19:10:45 2009 +0000
@@ -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);
--- a/kernel/eka/kernel/arm/l_entry.cia	Thu Nov 12 16:07:31 2009 +0000
+++ b/kernel/eka/kernel/arm/l_entry.cia	Thu Nov 19 19:10:45 2009 +0000
@@ -19,7 +19,7 @@
 
 extern "C" {
 
-#if defined(__ARMCC__)
+#if defined(__EABI__)
 void __DLL_Export_Table__(void);
 #endif
 
--- a/kernel/eka/kernel/arm/v_entry.cpp	Thu Nov 12 16:07:31 2009 +0000
+++ b/kernel/eka/kernel/arm/v_entry.cpp	Thu Nov 19 19:10:45 2009 +0000
@@ -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)
--- a/kernel/eka/kernel/arm/x_entry.cpp	Thu Nov 12 16:07:31 2009 +0000
+++ b/kernel/eka/kernel/arm/x_entry.cpp	Thu Nov 19 19:10:45 2009 +0000
@@ -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)