kernel/eka/nkern/arm/nk_entry.cia
changeset 104 466a0df5c15a
parent 0 a41df078684a
equal deleted inserted replaced
100:cad27fd7ca1a 104:466a0df5c15a
    78 	asm("__SuperPage: ");
    78 	asm("__SuperPage: ");
    79 	asm(".word SuperPageAddress ");
    79 	asm(".word SuperPageAddress ");
    80 	asm("__CtorList: ");
    80 	asm("__CtorList: ");
    81 	asm(".word __CTOR_LIST__ ");
    81 	asm(".word __CTOR_LIST__ ");
    82 	}
    82 	}
    83 #elif defined(__ARMCC__)
    83 #elif defined(__EABI__)
    84 void __DLL_Export_Table__(void);
    84 void __DLL_Export_Table__(void);
    85 void __cpp_initialize__aeabi_();
    85 void __cpp_initialize__aeabi_();
    86   
    86   
    87 // The compiler generates calls to this when it reckons a top-level construction
    87 // The compiler generates calls to this when it reckons a top-level construction
    88 // needs destruction. But the kernel never will need this so, define it as a nop
    88 // needs destruction. But the kernel never will need this so, define it as a nop
    89 void __record_needed_destruction (void * d){}
    89 void __record_needed_destruction (void * d){}
    90 // 2.1 calls __aeabi_atexit passing __dso_handle. This can be a dummy (i.e. just a label)
    90 // 2.1 calls __aeabi_atexit passing __dso_handle. This can be a dummy (i.e. just a label)
    91 
    91 
    92 __asm void __dso_handle(void) {}
    92 __NAKED__  void __dso_handle(void) {}
    93 void __aeabi_atexit(void *object, void (*dtor)(void *), void *handle){}
    93 void __aeabi_atexit(void *object, void (*dtor)(void *), void *handle){}
    94 
    94 
    95 void _E32Startup_Body(TLinAddr aRomHeader, TLinAddr aSuperPage);
    95 void _E32Startup_Body(TLinAddr aRomHeader, TLinAddr aSuperPage);
    96 
    96 
    97 __NAKED__ void _E32Startup(TLinAddr aRomHeader, TLinAddr aSuperPage)
    97 __NAKED__ void _E32Startup(TLinAddr aRomHeader, TLinAddr aSuperPage)