From: Daniel Jacobowitz Date: Tue, 27 Jan 2009 17:10:08 +0000 (+0000) Subject: 2009-01-27 Min Zhang X-Git-Tag: upstream/2.20~3636^2~661 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f2c9d882070d2c4bc5a099690961562662b8522a;p=platform%2Fupstream%2Flinaro-glibc.git 2009-01-27 Min Zhang * sysdeps/arm/memset.S (memset): Use stm instead of two str instructions. --- diff --git a/ChangeLog.arm b/ChangeLog.arm index 2a8a252..338d768 100644 --- a/ChangeLog.arm +++ b/ChangeLog.arm @@ -1,3 +1,8 @@ +2009-01-27 Min Zhang + + * sysdeps/arm/memset.S (memset): Use stm instead of two + str instructions. + 2009-01-27 Kirill A. Shutemov * sysdeps/arm/elf/start.S (_start): Use position-independent code diff --git a/sysdeps/arm/memset.S b/sysdeps/arm/memset.S index b37451b..a276570 100644 --- a/sysdeps/arm/memset.S +++ b/sysdeps/arm/memset.S @@ -35,20 +35,17 @@ ENTRY(memset) and r1, r1, #255 @ clear any sign bits orr r1, r1, r1, lsl $8 orr r1, r1, r1, lsl $16 + mov ip, r1 1: subs r2, r2, #8 - strcs r1, [r3], #4 @ store up to 32 bytes per loop iteration - strcs r1, [r3], #4 + stmcsia r3!, {r1, ip} @ store up to 32 bytes per loop iteration subcss r2, r2, #8 - strcs r1, [r3], #4 - strcs r1, [r3], #4 + stmcsia r3!, {r1, ip} subcss r2, r2, #8 - strcs r1, [r3], #4 - strcs r1, [r3], #4 + stmcsia r3!, {r1, ip} subcss r2, r2, #8 - strcs r1, [r3], #4 - strcs r1, [r3], #4 + stmcsia r3!, {r1, ip} bcs 1b and r2, r2, #7