diff options
author | Juergen Beisert <j.beisert@pengutronix.de> | 2009-06-23 15:59:10 +0200 |
---|---|---|
committer | Juergen Beisert <j.beisert@pengutronix.de> | 2009-07-01 10:45:02 +0200 |
commit | a05e3120093fde426e43182042c446e9bce802ef (patch) | |
tree | dfcd0446dda3de5c38394666886ca7a02462524b /arch/arm | |
parent | 18e49f74703943ca293974d9c09a312b91eb85b7 (diff) | |
download | barebox-a05e3120093fde426e43182042c446e9bce802ef.tar.gz barebox-a05e3120093fde426e43182042c446e9bce802ef.tar.xz |
Separate all assembler functions into their own section to
let the linker remove unused functions.
Signed-off-by: Juergen Beisert <j.beisert@pengutronix.de>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/lib/_ashldi3.S | 2 | ||||
-rw-r--r-- | arch/arm/lib/_ashrdi3.S | 2 | ||||
-rw-r--r-- | arch/arm/lib/_divsi3.S | 2 | ||||
-rw-r--r-- | arch/arm/lib/_lshrdi3.S | 1 | ||||
-rw-r--r-- | arch/arm/lib/_modsi3.S | 2 | ||||
-rw-r--r-- | arch/arm/lib/_udivsi3.S | 3 | ||||
-rw-r--r-- | arch/arm/lib/_umodsi3.S | 3 | ||||
-rw-r--r-- | arch/arm/lib/findbit.S | 2 | ||||
-rw-r--r-- | arch/arm/lib/io-readsb.S | 2 | ||||
-rw-r--r-- | arch/arm/lib/io-readsw-armv4.S | 2 | ||||
-rw-r--r-- | arch/arm/lib/io-writesb.S | 2 | ||||
-rw-r--r-- | arch/arm/lib/io-writesw-armv4.S | 2 |
12 files changed, 22 insertions, 3 deletions
diff --git a/arch/arm/lib/_ashldi3.S b/arch/arm/lib/_ashldi3.S index de4403d632..7344aa7639 100644 --- a/arch/arm/lib/_ashldi3.S +++ b/arch/arm/lib/_ashldi3.S @@ -34,6 +34,8 @@ Boston, MA 02110-1301, USA. */ #define ah r1 #endif + .section .text.__ashldi3 + .globl __ashldi3 __ashldi3: diff --git a/arch/arm/lib/_ashrdi3.S b/arch/arm/lib/_ashrdi3.S index 5edbcb3ae7..8994557186 100644 --- a/arch/arm/lib/_ashrdi3.S +++ b/arch/arm/lib/_ashrdi3.S @@ -34,6 +34,8 @@ Boston, MA 02110-1301, USA. */ #define ah r1 #endif + .section .text.__ashrdi3 + .globl __ashrdi3 __ashrdi3: diff --git a/arch/arm/lib/_divsi3.S b/arch/arm/lib/_divsi3.S index 9dc15f6d6b..f6cd2f9338 100644 --- a/arch/arm/lib/_divsi3.S +++ b/arch/arm/lib/_divsi3.S @@ -94,6 +94,8 @@ .endm + .section .text.__divsi3 + .align 5 .globl __divsi3 __divsi3: diff --git a/arch/arm/lib/_lshrdi3.S b/arch/arm/lib/_lshrdi3.S index 1bcfb64ebd..44b335bdf7 100644 --- a/arch/arm/lib/_lshrdi3.S +++ b/arch/arm/lib/_lshrdi3.S @@ -32,6 +32,7 @@ Boston, MA 02110-1301, USA. */ #define al r0 #define ah r1 #endif + .section .text.__lshrdi3 .globl __lshrdi3 __lshrdi3: diff --git a/arch/arm/lib/_modsi3.S b/arch/arm/lib/_modsi3.S index 539c584997..d17f8f0d21 100644 --- a/arch/arm/lib/_modsi3.S +++ b/arch/arm/lib/_modsi3.S @@ -1,4 +1,6 @@ + .section .text.__modsi3 + .macro ARM_MOD_BODY dividend, divisor, order, spare #if __LINUX_ARM_ARCH__ >= 5 diff --git a/arch/arm/lib/_udivsi3.S b/arch/arm/lib/_udivsi3.S index 2cdcd48b49..1975a0e0fb 100644 --- a/arch/arm/lib/_udivsi3.S +++ b/arch/arm/lib/_udivsi3.S @@ -9,7 +9,8 @@ curbit .req r3 /* sp .req r13 */ /* lr .req r14 */ /* pc .req r15 */ - .text + .section .text.__udivsi3 + .globl __udivsi3 .type __udivsi3 ,function .align 0 diff --git a/arch/arm/lib/_umodsi3.S b/arch/arm/lib/_umodsi3.S index e4aebe84ca..58186e9ce8 100644 --- a/arch/arm/lib/_umodsi3.S +++ b/arch/arm/lib/_umodsi3.S @@ -10,7 +10,8 @@ curbit .req r3 /* sp .req r13 */ /* lr .req r14 */ /* pc .req r15 */ - .text + .section .text.__umodsi3 + .globl __umodsi3 .type __umodsi3 ,function .align 0 diff --git a/arch/arm/lib/findbit.S b/arch/arm/lib/findbit.S index 8023a7fcc4..30c8a1a62a 100644 --- a/arch/arm/lib/findbit.S +++ b/arch/arm/lib/findbit.S @@ -18,7 +18,7 @@ * also call with zero size. * Reworked by rmk. */ - .text + .section .text.basic_bit_functions /* * Purpose : Find a 'zero' bit diff --git a/arch/arm/lib/io-readsb.S b/arch/arm/lib/io-readsb.S index 9f4238987f..f4ee00afb7 100644 --- a/arch/arm/lib/io-readsb.S +++ b/arch/arm/lib/io-readsb.S @@ -23,6 +23,8 @@ subs r2, r2, ip bne .Linsb_aligned +.section .text.readsb + ENTRY(__raw_readsb) teq r2, #0 @ do we have to check for the zero len? moveq pc, lr diff --git a/arch/arm/lib/io-readsw-armv4.S b/arch/arm/lib/io-readsw-armv4.S index 1f393d4259..ad7a75aa39 100644 --- a/arch/arm/lib/io-readsw-armv4.S +++ b/arch/arm/lib/io-readsw-armv4.S @@ -18,6 +18,8 @@ #endif .endm +.section .text.readsw + .Linsw_align: movs ip, r1, lsl #31 bne .Linsw_noalign ldrh ip, [r0] diff --git a/arch/arm/lib/io-writesb.S b/arch/arm/lib/io-writesb.S index 68b92f4aca..b8b8ebf3d9 100644 --- a/arch/arm/lib/io-writesb.S +++ b/arch/arm/lib/io-writesb.S @@ -30,6 +30,8 @@ #endif .endm +.section .text.writesb + .Loutsb_align: rsb ip, ip, #4 cmp ip, r2 movgt ip, r2 diff --git a/arch/arm/lib/io-writesw-armv4.S b/arch/arm/lib/io-writesw-armv4.S index d6585612c8..a325186710 100644 --- a/arch/arm/lib/io-writesw-armv4.S +++ b/arch/arm/lib/io-writesw-armv4.S @@ -22,6 +22,8 @@ #endif .endm +.section .text.writesw + .Loutsw_align: movs ip, r1, lsl #31 bne .Loutsw_noalign |