boot1_arch.h 563 B

1234567891011121314151617181920212223
  1. /* Any assmbly language/system dependent hacks needed to setup boot1.c so it
  2. * will work as expected and cope with whatever platform specific wierdness is
  3. * needed for this architecture. */
  4. asm("\
  5. .text
  6. .globl _dl_boot
  7. _dl_boot:
  8. mov r15, r4
  9. mov.l .L_dl_boot2, r1
  10. mova .L_dl_boot2, r0
  11. add r1, r0
  12. jsr @r0
  13. add #4, r4
  14. jmp @r0
  15. mov #0, r4 /* call _start with arg == 0 */
  16. .L_dl_boot2:\n\
  17. .long _dl_boot2-.\n\
  18. .previous\n\
  19. ");
  20. #define _dl_boot _dl_boot2
  21. #define LD_BOOT(X) static void * __attribute__ ((unused)) _dl_boot (X)