kolibrios/contrib/sdk/sources/newlib/crt/dllstart.c
Sergey Semyonov (Serge) caec3d3e42 sdk: update
git-svn-id: svn://kolibrios.org@4382 a494cfbc-eb01-0410-851d-a64ba20cac60
2013-12-19 13:27:08 +00:00

28 lines
466 B
C

extern void _pei386_runtime_relocator (void);
typedef void (*ctp)();
static void __do_global_ctors ()
{
extern int __CTOR_LIST__;
int *c = &__CTOR_LIST__;
c++;
while (*c)
{
ctp d = (ctp)*c;
(d)();
c++;
}
}
int __attribute__((externally_visible)) DllStartup(void *module, int reason)
{
if(reason == 1)
{
_pei386_runtime_relocator();
__do_global_ctors();
};
return 1;
};