diff options
Diffstat (limited to 'libcutils/arch-arm/memset32.S')
-rw-r--r-- | libcutils/arch-arm/memset32.S | 20 |
1 files changed, 11 insertions, 9 deletions
diff --git a/libcutils/arch-arm/memset32.S b/libcutils/arch-arm/memset32.S index 6efab9f93..1e89636b4 100644 --- a/libcutils/arch-arm/memset32.S +++ b/libcutils/arch-arm/memset32.S | |||
@@ -18,6 +18,8 @@ | |||
18 | * | 18 | * |
19 | */ | 19 | */ |
20 | 20 | ||
21 | .syntax unified | ||
22 | |||
21 | .text | 23 | .text |
22 | .align | 24 | .align |
23 | 25 | ||
@@ -45,7 +47,7 @@ android_memset16: | |||
45 | 47 | ||
46 | /* align to 32 bits */ | 48 | /* align to 32 bits */ |
47 | tst r0, #2 | 49 | tst r0, #2 |
48 | strneh r1, [r0], #2 | 50 | strhne r1, [r0], #2 |
49 | subne r2, r2, #2 | 51 | subne r2, r2, #2 |
50 | .fnend | 52 | .fnend |
51 | 53 | ||
@@ -68,27 +70,27 @@ android_memset32: | |||
68 | 70 | ||
69 | /* conditionally writes 0 to 7 words (length in r3) */ | 71 | /* conditionally writes 0 to 7 words (length in r3) */ |
70 | movs r3, r3, lsl #28 | 72 | movs r3, r3, lsl #28 |
71 | stmcsia r0!, {r1, lr} | 73 | stmiacs r0!, {r1, lr} |
72 | stmcsia r0!, {r1, lr} | 74 | stmiacs r0!, {r1, lr} |
73 | stmmiia r0!, {r1, lr} | 75 | stmiami r0!, {r1, lr} |
74 | movs r3, r3, lsl #2 | 76 | movs r3, r3, lsl #2 |
75 | strcs r1, [r0], #4 | 77 | strcs r1, [r0], #4 |
76 | 78 | ||
77 | .Laligned32: | 79 | .Laligned32: |
78 | mov r3, r1 | 80 | mov r3, r1 |
79 | 1: subs r2, r2, #32 | 81 | 1: subs r2, r2, #32 |
80 | stmhsia r0!, {r1,r3,r12,lr} | 82 | stmiahs r0!, {r1,r3,r12,lr} |
81 | stmhsia r0!, {r1,r3,r12,lr} | 83 | stmiahs r0!, {r1,r3,r12,lr} |
82 | bhs 1b | 84 | bhs 1b |
83 | add r2, r2, #32 | 85 | add r2, r2, #32 |
84 | 86 | ||
85 | /* conditionally stores 0 to 30 bytes */ | 87 | /* conditionally stores 0 to 30 bytes */ |
86 | movs r2, r2, lsl #28 | 88 | movs r2, r2, lsl #28 |
87 | stmcsia r0!, {r1,r3,r12,lr} | 89 | stmiacs r0!, {r1,r3,r12,lr} |
88 | stmmiia r0!, {r1,lr} | 90 | stmiami r0!, {r1,lr} |
89 | movs r2, r2, lsl #2 | 91 | movs r2, r2, lsl #2 |
90 | strcs r1, [r0], #4 | 92 | strcs r1, [r0], #4 |
91 | strmih lr, [r0], #2 | 93 | strhmi lr, [r0], #2 |
92 | 94 | ||
93 | ldr lr, [sp], #4 | 95 | ldr lr, [sp], #4 |
94 | .cfi_def_cfa_offset 0 | 96 | .cfi_def_cfa_offset 0 |