1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- Get at91dataflashboot to build with EABI toolchains, by providing the
- __aeabi_uidiv and __aeabi_uidivmod symbols. The code is based on
- U-Boot's code.
- Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
- ---
- _udivsi3.S | 14 ++++++++++++++
- 1 file changed, 14 insertions(+)
- Index: DataflashBoot-1.05/_udivsi3.S
- ===================================================================
- --- DataflashBoot-1.05.orig/_udivsi3.S
- +++ DataflashBoot-1.05/_udivsi3.S
- @@ -12,8 +12,11 @@
- .text
- .globl __udivsi3
- .type __udivsi3 ,function
- + .globl __aeabi_uidiv
- + .type __aeabi_uidiv ,function
- .align 0
- __udivsi3 :
- + __aeabi_uidiv:
- cmp divisor, #0
- beq Ldiv0
- mov curbit, #1
- @@ -68,6 +71,17 @@
- mov r0, #0 @ about as wrong as it could be
- ldmia sp!, {pc}
- .size __udivsi3 , . - __udivsi3
- +
- +.globl __aeabi_uidivmod
- +__aeabi_uidivmod:
- +
- + stmfd sp!, {r0, r1, ip, lr}
- + bl __aeabi_uidiv
- + ldmfd sp!, {r1, r2, ip, lr}
- + mul r3, r0, r2
- + sub r1, r1, r3
- + mov pc, lr
- +
- /* # 235 "libgcc1.S" */
- /* # 320 "libgcc1.S" */
- /* # 421 "libgcc1.S" */
|