* crt1.c (__mingw_CRTStartup): Add explicit call to libgcc's __main.
This commit is contained in:
parent
32f67ec6ff
commit
657d7a4610
|
@ -1,3 +1,7 @@
|
||||||
|
2007-06-11 Danny Smith <dannysmith@users.sourceforge.net>
|
||||||
|
|
||||||
|
* crt1.c (__mingw_CRTStartup): Add explicit call to gcc's __main.
|
||||||
|
|
||||||
2007-05-08 Danny Smith <dannysmith@users.sourceforge.net>
|
2007-05-08 Danny Smith <dannysmith@users.sourceforge.net>
|
||||||
|
|
||||||
* include/stdint.h (intptr_t): Fix typo.
|
* include/stdint.h (intptr_t): Fix typo.
|
||||||
|
|
|
@ -29,6 +29,7 @@
|
||||||
#include "init.c"
|
#include "init.c"
|
||||||
#include "cpu_features.h"
|
#include "cpu_features.h"
|
||||||
|
|
||||||
|
extern void __main ();
|
||||||
extern void _pei386_runtime_relocator (void);
|
extern void _pei386_runtime_relocator (void);
|
||||||
|
|
||||||
extern int main (int, char **, char **);
|
extern int main (int, char **, char **);
|
||||||
|
@ -219,6 +220,14 @@ __mingw_CRTStartup (void)
|
||||||
or in functions inlined into main. */
|
or in functions inlined into main. */
|
||||||
asm __volatile__ ("andl $-16, %%esp" : : : "%esp");
|
asm __volatile__ ("andl $-16, %%esp" : : : "%esp");
|
||||||
|
|
||||||
|
/* From libgcc.a, __main calls global class constructors via
|
||||||
|
__do_global_ctors, This in turn registers __do_global_dtors
|
||||||
|
as the first entry of the app's atexit table. We do this
|
||||||
|
explicitly at app startup rather than rely on gcc to generate
|
||||||
|
the call in main's prologue, since main may be imported from a dll
|
||||||
|
which has its own __do_global_ctors. */
|
||||||
|
__main ();
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Call the main function. If the user does not supply one
|
* Call the main function. If the user does not supply one
|
||||||
* the one in the 'libmingw32.a' library will be linked in, and
|
* the one in the 'libmingw32.a' library will be linked in, and
|
||||||
|
|
Loading…
Reference in New Issue