#define RETCOND
#endif
+#ifndef __USER_LABEL_PREFIX__
+#define __USER_LABEL_PREFIX__ _
+#endif
+
+/* ANSI concatenation macros. */
+
+#define CONCAT1(a, b) CONCAT2(a, b)
+#define CONCAT2(a, b) a ## b
+
+/* Use the right prefix for global labels. */
+
+#define SYM(x) CONCAT1 (__USER_LABEL_PREFIX__, x)
+
#ifdef L_udivsi3
ip .req r12
lr .req r14
pc .req r15
.text
- .globl ___udivsi3
+ .globl SYM (__udivsi3)
.align 0
-___udivsi3:
+SYM (__udivsi3):
stmdb sp!, {r4, r5, lr}
@ Ready to divide. Compute size of quotient; scale comparand.
movs lr, r1
Ldiv_zero:
@ Divide by zero trap. If it returns, return 0 (about as
@ wrong as possible, but that is what SunOS does...).
- bl ___div0
+ bl SYM (__div0)
mov r0, #0
ldmia sp!, {r4, r5, pc}RETCOND
lr .req r14
pc .req r15
.text
- .globl ___divsi3
+ .globl SYM (__divsi3)
.align 0
-___divsi3:
+SYM (__divsi3):
stmdb sp!, {r4, r5, r6, lr}
@ compute sign of result; if neither is negative, no problem
eor r6, r1, r0 @ compute sign
Ldiv_zero:
@ Divide by zero trap. If it returns, return 0 (about as
@ wrong as possible, but that is what SunOS does...).
- bl ___div0
+ bl SYM (__div0)
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}RETCOND
lr .req r14
pc .req r15
.text
- .globl ___umodsi3
+ .globl SYM (__umodsi3)
.align 0
-___umodsi3:
+SYM (__umodsi3):
stmdb sp!, {r4, r5, lr}
@ Ready to divide. Compute size of quotient; scale comparand.
movs lr, r1
Ldiv_zero:
@ Divide by zero trap. If it returns, return 0 (about as
@ wrong as possible, but that is what SunOS does...).
- bl ___div0
+ bl SYM (__div0)
mov r0, #0
ldmia sp!, {r4, r5, pc}RETCOND
lr .req r14
pc .req r15
.text
- .globl ___modsi3
+ .globl SYM (__modsi3)
.align 0
-___modsi3:
+SYM (__modsi3):
stmdb sp!, {r4, r5, r6, lr}
@ compute sign of result; if neither is negative, no problem
mov r6, r0
Ldiv_zero:
@ Divide by zero trap. If it returns, return 0 (about as
@ wrong as possible, but that is what SunOS does...).
- bl ___div0
+ bl SYM (__div0)
mov r0, #0
ldmia sp!, {r4, r5, r6, pc}RETCOND
#ifdef L_dvmd_tls
- .globl ___div0
+ .globl SYM (__div0)
.align 0
-___div0:
+SYM (__div0):
RET pc, lr
#endif /* L_divmodsi_tools */