s/__libc/_libc/diff -r1.10 -r1.11 src/common/lib/libc/arch/arm/gen/divsi3.S
(matt)
--- src/common/lib/libc/arch/arm/gen/Attic/divsi3.S 2013/09/08 13:24:16 1.10
+++ src/common/lib/libc/arch/arm/gen/Attic/divsi3.S 2013/09/09 00:34:10 1.11
@@ -1,14 +1,14 @@ | @@ -1,14 +1,14 @@ | |||
1 | /* $NetBSD: divsi3.S,v 1.10 2013/09/08 13:24:16 matt Exp $ */ | 1 | /* $NetBSD: divsi3.S,v 1.11 2013/09/09 00:34:10 matt Exp $ */ | |
2 | 2 | |||
3 | /* | 3 | /* | |
4 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | 4 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | |
5 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 5 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
6 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | 6 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
7 | * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | 7 | * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | |
8 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | 8 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |
9 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | 9 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | |
10 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | 10 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |
11 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | 11 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | |
12 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | 12 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | |
13 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | 13 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | |
14 | * SUCH DAMAGE. | 14 | * SUCH DAMAGE. | |
@@ -22,53 +22,53 @@ ARM_ENTRY(__divsi3) | @@ -22,53 +22,53 @@ ARM_ENTRY(__divsi3) | |||
22 | ENTRY(__divsi3) | 22 | ENTRY(__divsi3) | |
23 | #endif | 23 | #endif | |
24 | #if defined(__ARM_ARCH_EXT_IDIV__) | 24 | #if defined(__ARM_ARCH_EXT_IDIV__) | |
25 | # if defined(__ARM_EABI__) | 25 | # if defined(__ARM_EABI__) | |
26 | mov r3, r0 @ save for mls | 26 | mov r3, r0 @ save for mls | |
27 | # endif | 27 | # endif | |
28 | sdiv r0, r0, r1 | 28 | sdiv r0, r0, r1 | |
29 | # if defined(__ARM_EABI__) | 29 | # if defined(__ARM_EABI__) | |
30 | mls r1, r0, r1, r3 @ return modulus in r1 | 30 | mls r1, r0, r1, r3 @ return modulus in r1 | |
31 | # endif | 31 | # endif | |
32 | RET | 32 | RET | |
33 | #elif defined(__ARM_EABI__) && defined(_LIBC) | 33 | #elif defined(__ARM_EABI__) && defined(_LIBC) | |
34 | #ifdef _ARM_ARCH_7 | 34 | #ifdef _ARM_ARCH_7 | |
35 | movw r2, #:lower16:REL_SYM(__libc_arm_hwdiv_present, .LPIC0) | 35 | movw r2, #:lower16:REL_SYM(_libc_arm_hwdiv_present, .LPIC0) | |
36 | movt r2, #:upper16:REL_SYM(__libc_arm_hwdiv_present, .LPIC0) | 36 | movt r2, #:upper16:REL_SYM(_libc_arm_hwdiv_present, .LPIC0) | |
37 | #else | 37 | #else | |
38 | ldr r2, .Lhwdiv_present | 38 | ldr r2, .Lhwdiv_present | |
39 | #endif | 39 | #endif | |
40 | # ifdef PIC | 40 | # ifdef PIC | |
41 | add r2, r2, pc | 41 | add r2, r2, pc | |
42 | # endif | 42 | # endif | |
43 | ldr r2, [r2] | 43 | ldr r2, [r2] | |
44 | .LPIC0: cmp r2, #0 | 44 | .LPIC0: cmp r2, #0 | |
45 | beq __divide | 45 | beq __divide | |
46 | mov r3, r0 | 46 | mov r3, r0 | |
47 | #if defined(__ARM_ARCH_EXT_IDIV__) | 47 | #if defined(__ARM_ARCH_EXT_IDIV__) | |
48 | sdiv r0, r0, r1 | 48 | sdiv r0, r0, r1 | |
49 | mls r1, r0, r1, r3 /* return modulus in r1 */ | 49 | mls r1, r0, r1, r3 /* return modulus in r1 */ | |
50 | #elif defined(__thumb__) && defined(_ARM_ARCH_T2) | 50 | #elif defined(__thumb__) && defined(_ARM_ARCH_T2) | |
51 | .inst.w 0xfb90f0f1 | 51 | .inst.w 0xfb90f0f1 | |
52 | .inst.w 0xfb003111 | 52 | .inst.w 0xfb003111 | |
53 | #else | 53 | #else | |
54 | .inst 0xe710f110 | 54 | .inst 0xe710f110 | |
55 | .inst 0xe0613190 | 55 | .inst 0xe0613190 | |
56 | #endif | 56 | #endif | |
57 | RET | 57 | RET | |
58 | #ifndef _ARM_ARCH_7 | 58 | #ifndef _ARM_ARCH_7 | |
59 | .align 0 | 59 | .align 0 | |
60 | .Lhwdiv_present: | 60 | .Lhwdiv_present: | |
61 | .word REL_SYM(__libc_arm_hwdiv_present, .LPIC0) | 61 | .word REL_SYM(_libc_arm_hwdiv_present, .LPIC0) | |
62 | #endif | 62 | #endif | |
63 | #else /* !__ARM_EABI__ */ | 63 | #else /* !__ARM_EABI__ */ | |
64 | b __divide | 64 | b __divide | |
65 | #endif | 65 | #endif | |
66 | END(__divsi3) | 66 | END(__divsi3) | |
67 | 67 | |||
68 | #if defined(__ARM_EABI__) | 68 | #if defined(__ARM_EABI__) | |
69 | STRONG_ALIAS(__aeabi_idivmod, __divsi3) | 69 | STRONG_ALIAS(__aeabi_idivmod, __divsi3) | |
70 | STRONG_ALIAS(__aeabi_idiv, __divsi3) | 70 | STRONG_ALIAS(__aeabi_idiv, __divsi3) | |
71 | #if defined(PIC_SYMVER) | 71 | #if defined(PIC_SYMVER) | |
72 | .symver __aeabi_idiv,__aeabi_idiv@@GCC_3.5 | 72 | .symver __aeabi_idiv,__aeabi_idiv@@GCC_3.5 | |
73 | .symver __aeabi_idivmod,__aeabi_idivmod@@GCC_3.5 | 73 | .symver __aeabi_idivmod,__aeabi_idivmod@@GCC_3.5 | |
74 | #endif | 74 | #endif |
--- src/common/lib/libc/arch/arm/gen/Attic/udivsi3.S 2013/09/08 13:24:16 1.6
+++ src/common/lib/libc/arch/arm/gen/Attic/udivsi3.S 2013/09/09 00:34:10 1.7
@@ -1,14 +1,14 @@ | @@ -1,14 +1,14 @@ | |||
1 | /* $NetBSD: udivsi3.S,v 1.6 2013/09/08 13:24:16 matt Exp $ */ | 1 | /* $NetBSD: udivsi3.S,v 1.7 2013/09/09 00:34:10 matt Exp $ */ | |
2 | 2 | |||
3 | /* | 3 | /* | |
4 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | 4 | * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND | |
5 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | 5 | * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE | |
6 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | 6 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE | |
7 | * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | 7 | * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE | |
8 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | 8 | * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL | |
9 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | 9 | * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS | |
10 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | 10 | * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) | |
11 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | 11 | * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT | |
12 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | 12 | * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY | |
13 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | 13 | * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF | |
14 | * SUCH DAMAGE. | 14 | * SUCH DAMAGE. | |
@@ -22,50 +22,50 @@ ARM_ENTRY(__udivsi3) | @@ -22,50 +22,50 @@ ARM_ENTRY(__udivsi3) | |||
22 | ENTRY(__udivsi3) | 22 | ENTRY(__udivsi3) | |
23 | #endif | 23 | #endif | |
24 | #if defined(__ARM_ARCH_EXT_IDIV__) | 24 | #if defined(__ARM_ARCH_EXT_IDIV__) | |
25 | # if defined(__ARM_EABI__) | 25 | # if defined(__ARM_EABI__) | |
26 | mov r3, r0 @ save for mls | 26 | mov r3, r0 @ save for mls | |
27 | # endif | 27 | # endif | |
28 | udiv r0, r0, r1 | 28 | udiv r0, r0, r1 | |
29 | # if defined(__ARM_EABI__) | 29 | # if defined(__ARM_EABI__) | |
30 | mls r1, r0, r1, r3 @ return modulus in r1 | 30 | mls r1, r0, r1, r3 @ return modulus in r1 | |
31 | # endif | 31 | # endif | |
32 | RET | 32 | RET | |
33 | #elif defined(__ARM_EABI__) && defined(_LIBC) | 33 | #elif defined(__ARM_EABI__) && defined(_LIBC) | |
34 | #ifdef _ARM_ARCH_7 | 34 | #ifdef _ARM_ARCH_7 | |
35 | movw r2, #:lower16:REL_SYM(__libc_arm_hwdiv_present, .LPIC0) | 35 | movw r2, #:lower16:REL_SYM(_libc_arm_hwdiv_present, .LPIC0) | |
36 | movt r2, #:upper16:REL_SYM(__libc_arm_hwdiv_present, .LPIC0) | 36 | movt r2, #:upper16:REL_SYM(_libc_arm_hwdiv_present, .LPIC0) | |
37 | #else | 37 | #else | |
38 | ldr r2, .Lhwdiv_present | 38 | ldr r2, .Lhwdiv_present | |
39 | #endif | 39 | #endif | |
40 | #ifdef PIC | 40 | #ifdef PIC | |
41 | add r2, r2, pc | 41 | add r2, r2, pc | |
42 | #endif | 42 | #endif | |
43 | ldr r2, [r2] | 43 | ldr r2, [r2] | |
44 | .LPIC0: cmp r2, #0 | 44 | .LPIC0: cmp r2, #0 | |
45 | beq __udivide | 45 | beq __udivide | |
46 | mov r3, r0 | 46 | mov r3, r0 | |
47 | #if defined(__ARM_ARCH_EXT_IDIV__) | 47 | #if defined(__ARM_ARCH_EXT_IDIV__) | |
48 | udiv r0, r0, r1 | 48 | udiv r0, r0, r1 | |
49 | mls r1, r0, r1, r3 /* return modulus in r1 */ | 49 | mls r1, r0, r1, r3 /* return modulus in r1 */ | |
50 | #elif defined(__thumb__) && defined(_ARM_ARCH_T2) | 50 | #elif defined(__thumb__) && defined(_ARM_ARCH_T2) | |
51 | .inst.w 0xfbb0f0f1 | 51 | .inst.w 0xfbb0f0f1 | |
52 | .inst.w 0xfb003111 | 52 | .inst.w 0xfb003111 | |
53 | #else | 53 | #else | |
54 | .inst 0xe730f110 | 54 | .inst 0xe730f110 | |
55 | .inst 0xe0613190 | 55 | .inst 0xe0613190 | |
56 | #endif | 56 | #endif | |
57 | RET | 57 | RET | |
58 | #ifndef _ARM_ARCH_7 | 58 | #ifndef _ARM_ARCH_7 | |
59 | .align 0 | 59 | .align 0 | |
60 | .Lhwdiv_present: | 60 | .Lhwdiv_present: | |
61 | .word REL_SYM(__libc_arm_hwdiv_present, .LPIC0) | 61 | .word REL_SYM(_libc_arm_hwdiv_present, .LPIC0) | |
62 | #endif | 62 | #endif | |
63 | #else | 63 | #else | |
64 | b __udivide | 64 | b __udivide | |
65 | #endif | 65 | #endif | |
66 | END(__udivsi3) | 66 | END(__udivsi3) | |
67 | 67 | |||
68 | #ifdef __ARM_EABI__ | 68 | #ifdef __ARM_EABI__ | |
69 | STRONG_ALIAS(__aeabi_uidivmod, __udivsi3) | 69 | STRONG_ALIAS(__aeabi_uidivmod, __udivsi3) | |
70 | STRONG_ALIAS(__aeabi_uidiv, __udivsi3) | 70 | STRONG_ALIAS(__aeabi_uidiv, __udivsi3) | |
71 | #endif | 71 | #endif |