12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- int __data_start = 0;
- void
- _start ()
- {
-
- __asm__ volatile("pop $r10");
- __asm__ volatile("move.d $sp, $r11");
- __asm__ volatile("jump start1");
- }
- #include <features.h>
- extern void __uClibc_main(int argc, char **argv, char **envp)
- __attribute__ ((__noreturn__));
- extern void __uClibc_start_main(int argc, char **argv, char **envp,
- void (*app_init)(void), void (*app_fini)(void))
- __attribute__ ((__noreturn__));
- extern void weak_function _init(void);
- extern void weak_function _fini(void);
- static void
- start1 (int argc, char **argv)
- {
- char** environ;
-
- environ = &argv[argc + 1];
-
-
- if ((char *) environ == *argv)
-
- --environ;
-
- #if defined L_crt0 || ! defined __UCLIBC_CTOR_DTOR__
-
- __uClibc_main(argc, argv, environ);
- #else
- __uClibc_start_main(argc, argv, environ, _init, _fini);
- #endif
- }
|