12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- #include <features.h>
- .text
- .global _start
- .type _start,
- _start:
-
- mov r7, 0
- mov lr, 0
- ld.w r11, sp++
- mov r10, sp
- st.w --sp, r10
- st.w --sp, r12
- #ifdef __PIC__
- lddpc r6, .L_GOT
- .L_RGOT:
- rsub r6, pc
- lda.w r9, _init
- lda.w r8, _fini
- lda.w r12, main
-
- call __uClibc_main
- .align 2
- .L_GOT:
- .long .L_RGOT - _GLOBAL_OFFSET_TABLE_
- #else
- lddpc r9, __init_addr
- lddpc r8, __fini_addr
- lddpc r12, __main_addr
-
- lddpc pc, ___uClibc_main_addr
- .align 2
- __init_addr:
- .long _init
- __fini_addr:
- .long _fini
- __main_addr:
- .long main
- ___uClibc_main_addr:
- .long __uClibc_main
- #endif
- .size _start, . - _start
-
- .section ".note.ABI-tag", "a"
- .align 4
- .long 2f - 1f
- .long 4f - 3f
- .long 1
- 1: .asciz "GNU"
- 2: .align 4
- 3: .long 0
- .long 2,6,0
- 4: .align 4
|