diff options
Diffstat (limited to 'c/src/lib/libbsp/moxie/moxiesim/startup/__main.c')
-rw-r--r-- | c/src/lib/libbsp/moxie/moxiesim/startup/__main.c | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/c/src/lib/libbsp/moxie/moxiesim/startup/__main.c b/c/src/lib/libbsp/moxie/moxiesim/startup/__main.c new file mode 100644 index 0000000000..ffe8b55961 --- /dev/null +++ b/c/src/lib/libbsp/moxie/moxiesim/startup/__main.c @@ -0,0 +1,21 @@ +/* + * COPYRIGHT (c) 2011 Anthony Green <green@moxielogic.com> + * + */ + +typedef void (*pfunc) (void); +extern pfunc __ctors[]; +extern pfunc __ctors_end[]; + +void __main (void) +{ + static int initialized; + pfunc *p; + + if (initialized) + return; + + initialized = 1; + for (p = __ctors_end; p > __ctors; ) + (*--p) (); +} |