@@ -15,222 +15,219 @@ Disassembly of section .text:
1515 movt r1, #0x2000
1616 movt r0, #0x2000
1717 subs r1, r1, r0
18- bl 0x84 <__aeabi_memclr> @ imm = #0x26
18+ bl 0x9c <__aeabi_memclr> @ imm = #0x3e
1919 movw r1, #0x0
2020 movw r0, #0x0
2121 movt r1, #0x2000
2222 movt r0, #0x2000
2323 subs r2, r1, r0
24- movw r1, #0x288
24+ movw r1, #0x282
2525 movt r1, #0x0
26- bl 0x88 <__aeabi_memcpy> @ imm = #0xc
26+ bl 0x84 <__aeabi_memcpy> @ imm = #0x8
2727 bl 0x40 <main> @ imm = #-0x40
2828 trap
2929
3030<UsageFault>:
3131 b 0x82 <UsageFault> @ imm = #-0x4
3232
33- <__aeabi_memclr>:
34- b.w 0x9a <compiler_builtins::arm::__aeabi_memclr::h96ee28dc2b586447> @ imm = #0x12
35-
3633<__aeabi_memcpy>:
37- b.w 0x8c <compiler_builtins::arm::__aeabi_memcpy::hf6d647cdc92d542c > @ imm = #0x0
34+ b.w 0x88 <compiler_builtins::arm::__aeabi_memcpy::h04b06478d4bfd3c5 > @ imm = #0x0
3835
39- <compiler_builtins::arm::__aeabi_memcpy::hf6d647cdc92d542c >:
40- b.w 0xa0 <compiler_builtins::mem::memcpy::hac255b7467641344 > @ imm = #0x10
36+ <compiler_builtins::arm::__aeabi_memcpy::h04b06478d4bfd3c5 >:
37+ b.w 0xa0 <compiler_builtins::mem::memcpy::h73c205043eea1dfd > @ imm = #0x14
4138
42- <compiler_builtins::arm::__aeabi_memset::haf82f618eda1ab58 >:
39+ <compiler_builtins::arm::__aeabi_memset::h1c44b05e4b08d1f1 >:
4340 mov r3, r1
4441 mov r1, r2
4542 mov r2, r3
46- b.w 0x1ec <compiler_builtins::mem::memset::h1dd8afbc6e8f8510 > @ imm = #0x152
43+ b.w 0x1e4 <compiler_builtins::mem::memset::h27a3b72b184bd97c > @ imm = #0x14e
4744
48- <compiler_builtins::arm::__aeabi_memclr::h96ee28dc2b586447 >:
45+ <compiler_builtins::arm::__aeabi_memclr::hbb9242fcc53efe0b >:
4946 movs r2, #0x0
50- b.w 0x90 <compiler_builtins::arm::__aeabi_memset::haf82f618eda1ab58> @ imm = #-0x10
47+ b.w 0x8c <compiler_builtins::arm::__aeabi_memset::h1c44b05e4b08d1f1> @ imm = #-0x10
48+
49+ <__aeabi_memclr>:
50+ b.w 0x96 <compiler_builtins::arm::__aeabi_memclr::hbb9242fcc53efe0b> @ imm = #-0xa
5151
52- <compiler_builtins::mem::memcpy::hac255b7467641344 >:
52+ <compiler_builtins::mem::memcpy::h73c205043eea1dfd >:
5353 push {r4, r5, r6, r7, lr}
5454 add r7, sp, #0xc
5555 push.w {r8, r9, r10}
5656 cmp r2, #0xf
57- bls 0x174 <compiler_builtins::mem::memcpy::hac255b7467641344+ 0xd4 > @ imm = #0xc6
57+ bls 0x170 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+ 0xd0 > @ imm = #0xc2
5858 rsbs r3, r0, #0
5959 ands r4, r3, #0x3
6060 add.w r12, r0, r4
61- beq 0xe6 <compiler_builtins::mem::memcpy::hac255b7467641344 +0x46 > @ imm = #0x2c
61+ beq 0xe6 <compiler_builtins::mem::memcpy::h73c205043eea1dfd +0x46 > @ imm = #0x2c
6262 mov r3, r0
6363 mov r6, r1
6464 ldrb r5, [r6]
6565 strb r5, [r3], #1
6666 cmp r3, r12
67- itttt lo
68- ldrblo r5, [r6, #0x1 ]
69- strblo r5, [r3], #1
70- cmplo r3, r12
67+ bhs 0xe6 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+0x46 > @ imm = #0x1e
68+ ldrb r5, [r6, #0x1 ]
69+ strb r5, [r3], #1
70+ cmp r3, r12
71+ ittt lo
7172 ldrblo r5, [r6, #0x2 ]
72- itt lo
7373 strblo r5, [r3], #1
7474 cmplo r3, r12
75- bhs 0xe6 <compiler_builtins::mem::memcpy::hac255b7467641344 +0x46 > @ imm = #0xa
75+ bhs 0xe6 <compiler_builtins::mem::memcpy::h73c205043eea1dfd +0x46 > @ imm = #0xa
7676 ldrb r5, [r6, #0x3 ]
7777 adds r6, #0x4
7878 strb r5, [r3], #1
7979 cmp r3, r12
80- blo 0xbc <compiler_builtins::mem::memcpy::hac255b7467641344 +0x1c > @ imm = #-0x2c
80+ blo 0xbc <compiler_builtins::mem::memcpy::h73c205043eea1dfd +0x1c > @ imm = #-0x2c
8181 sub.w lr, r2, r4
82- add.w r9, r1, r4
83- bic r8, lr, #0x3
84- add.w r3, r12, r8
85- lsls.w r2, r9, #0x1e
86- beq 0x17c <compiler_builtins::mem::memcpy::hac255b7467641344+0xdc > @ imm = #0x7e
87- cmp.w r8, #0x1
88- blt 0x1ae <compiler_builtins::mem::memcpy::hac255b7467641344+0x10e > @ imm = #0xaa
89- movs r2, #0x18
90- and .w r10, r2, r9, lsl #3
91- movs r2, #0x0
92- sub.w r2, r2, r9, lsl #3
93- and r5, r2, #0x18
94- bic r2, r9, #0x3
95- add.w r6, r2, #0x8
96- ldr r2, [r2]
97- lsr.w r1, r2, r10
98- ldr r2, [r6, #-4 ]
99- lsl.w r4, r2, r5
100- orrs r1, r4
101- str r1, [r12], #4
82+ add.w r8, r1, r4
83+ bic r9, lr, #0x3
84+ ands r1, r8, #0x3
85+ add.w r3, r12, r9
86+ beq 0x176 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+0xd6 > @ imm = #0x78
87+ cmp.w r9, #0x1
88+ blt 0x1a8 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+0x108 > @ imm = #0xa4
89+ bic r6, r8, #0x3
90+ lsl.w r10, r1, #0x3
91+ add.w r5, r6, #0x8
92+ ldr r1, [r6]
93+ rsb.w r6, r10, #0x0
94+ and r6, r6, #0x18
95+ lsr.w r2, r1, r10
96+ ldr r1, [r5, #-4 ]
97+ lsl.w r4, r1, r6
98+ orrs r2, r4
99+ str r2, [r12], #4
102100 cmp r12, r3
103- bhs 0x1ae <compiler_builtins::mem::memcpy::hac255b7467641344+ 0x10e > @ imm = #0x7a
104- lsr.w r1, r2 , r10
105- ldr r2 , [r6 ]
106- lsl.w r4, r2, r5
107- orrs r1 , r4
108- str r1 , [r12], #4
101+ bhs 0x1a8 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+ 0x108 > @ imm = #0x78
102+ lsr.w r2, r1 , r10
103+ ldr r1 , [r5 ]
104+ lsl.w r4, r1, r6
105+ orrs r2 , r4
106+ str r2 , [r12], #4
109107 cmp r12, r3
110108 itttt lo
111- lsrlo.w r1, r2 , r10
112- ldrlo r2 , [r6 , #0x4 ]
113- lsllo.w r4, r2, r5
114- orrlo r1 , r4
109+ lsrlo.w r2, r1 , r10
110+ ldrlo r1 , [r5 , #0x4 ]
111+ lsllo.w r4, r1, r6
112+ orrlo r2 , r4
115113 itt lo
116- strlo r1 , [r12], #4
114+ strlo r2 , [r12], #4
117115 cmplo r12, r3
118- bhs 0x1ae <compiler_builtins::mem::memcpy::hac255b7467641344+ 0x10e > @ imm = #0x50
119- lsr.w r1, r2 , r10
120- ldr r2 , [r6 , #0x8 ]
121- adds r6 , #0x10
122- lsl.w r4, r2, r5
123- orrs r1 , r4
124- str r1 , [r12], #4
116+ bhs 0x1a8 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+ 0x108 > @ imm = #0x4e
117+ lsr.w r2, r1 , r10
118+ ldr r1 , [r5 , #0x8 ]
119+ adds r5 , #0x10
120+ lsl.w r4, r1, r6
121+ orrs r2 , r4
122+ str r2 , [r12], #4
125123 cmp r12, r3
126- blo 0x11c <compiler_builtins::mem::memcpy::hac255b7467641344+ 0x7c > @ imm = #-0x58
127- b 0x1ae <compiler_builtins::mem::memcpy::hac255b7467641344+ 0x10e > @ imm = #0x38
124+ blo 0x118 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+ 0x78 > @ imm = #-0x58
125+ b 0x1a8 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+ 0x108 > @ imm = #0x36
128126 mov r3, r0
129- cmp r2, #0x1
130- bge 0x1ba <compiler_builtins::mem::memcpy::hac255b7467641344+0x11a > @ imm = #0x3e
131- b 0x1e6 <compiler_builtins::mem::memcpy::hac255b7467641344+0x146 > @ imm = #0x68
132- cmp.w r8, #0x1
133- blt 0x1ae <compiler_builtins::mem::memcpy::hac255b7467641344+0x10e > @ imm = #0x2a
134- mov r4, r9
127+ cbnz r2, 0x1b2 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+0x112 > @ imm = #0x3c
128+ b 0x1de <compiler_builtins::mem::memcpy::h73c205043eea1dfd+0x13e > @ imm = #0x66
129+ cmp.w r9, #0x1
130+ blt 0x1a8 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+0x108 > @ imm = #0x2a
131+ mov r4, r8
135132 ldr r1, [r4]
136133 str r1, [r12], #4
137134 cmp r12, r3
138- itttt lo
139- ldrlo r1, [r4, #0x4 ]
140- strlo r1, [r12], #4
141- cmplo r12, r3
135+ bhs 0x1a8 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+0x108 > @ imm = #0x1e
136+ ldr r1, [r4, #0x4 ]
137+ str r1, [r12], #4
138+ cmp r12, r3
139+ ittt lo
142140 ldrlo r1, [r4, #0x8 ]
143- itt lo
144141 strlo r1, [r12], #4
145142 cmplo r12, r3
146- bhs 0x1ae <compiler_builtins::mem::memcpy::hac255b7467641344+ 0x10e > @ imm = #0xa
143+ bhs 0x1a8 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+ 0x108 > @ imm = #0xa
147144 ldr r1, [r4, #0xc ]
148145 adds r4, #0x10
149146 str r1, [r12], #4
150147 cmp r12, r3
151- blo 0x184 <compiler_builtins::mem::memcpy::hac255b7467641344+ 0xe4 > @ imm = #-0x2c
152- add.w r1, r9, r8
148+ blo 0x17e <compiler_builtins::mem::memcpy::h73c205043eea1dfd+ 0xde > @ imm = #-0x2c
149+ add.w r1, r8, r9
153150 and r2, lr, #0x3
154- cmp r2, #0x1
155- blt 0x1e6 <compiler_builtins::mem::memcpy::hac255b7467641344+0x146 > @ imm = #0x2a
151+ cbz r2, 0x1de <compiler_builtins::mem::memcpy::h73c205043eea1dfd+0x13e > @ imm = #0x2a
156152 add r2, r3
157153 ldrb r6, [r1]
158154 strb r6, [r3], #1
159155 cmp r3, r2
160- itttt lo
161- ldrblo r6, [r1, #0x1 ]
162- strblo r6, [r3], #1
163- cmplo r3, r2
156+ bhs 0x1de <compiler_builtins::mem::memcpy::h73c205043eea1dfd+0x13e > @ imm = #0x1e
157+ ldrb r6, [r1, #0x1 ]
158+ strb r6, [r3], #1
159+ cmp r3, r2
160+ ittt lo
164161 ldrblo r6, [r1, #0x2 ]
165- itt lo
166162 strblo r6, [r3], #1
167163 cmplo r3, r2
168- bhs 0x1e6 <compiler_builtins::mem::memcpy::hac255b7467641344+ 0x146 > @ imm = #0xa
164+ bhs 0x1de <compiler_builtins::mem::memcpy::h73c205043eea1dfd+ 0x13e > @ imm = #0xa
169165 ldrb r6, [r1, #0x3 ]
170166 adds r1, #0x4
171167 strb r6, [r3], #1
172168 cmp r3, r2
173- blo 0x1bc <compiler_builtins::mem::memcpy::hac255b7467641344+ 0x11c > @ imm = #-0x2c
169+ blo 0x1b4 <compiler_builtins::mem::memcpy::h73c205043eea1dfd+ 0x114 > @ imm = #-0x2c
174170 pop.w {r8, r9, r10}
175171 pop {r4, r5, r6, r7, pc}
176172
177- <compiler_builtins::mem::memset::h1dd8afbc6e8f8510 >:
173+ <compiler_builtins::mem::memset::h27a3b72b184bd97c >:
178174 push {r4, r6, r7, lr}
179175 add r7, sp, #0x8
180176 cmp r2, #0xf
181- bls 0x260 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+ 0x74 > @ imm = #0x6a
177+ bls 0x25a <compiler_builtins::mem::memset::h27a3b72b184bd97c+ 0x76 > @ imm = #0x6c
182178 rsbs r3, r0, #0
183179 ands lr, r3, #0x3
184180 add.w r12, r0, lr
185- beq 0x220 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+ 0x34 > @ imm = #0x1e
181+ beq 0x21a <compiler_builtins::mem::memset::h27a3b72b184bd97c+ 0x36 > @ imm = #0x20
186182 mov r3, r0
187183 strb r1, [r3], #1
188184 cmp r3, r12
189- itttt lo
190- strblo r1, [r3], #1
191- cmplo r3, r12
185+ bhs 0x21a <compiler_builtins::mem::memset::h27a3b72b184bd97c+0x36 > @ imm = #0x16
186+ strb r1, [r3], #1
187+ cmp r3, r12
188+ itt lo
192189 strblo r1, [r3], #1
193190 cmplo r3, r12
194- bhs 0x220 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+ 0x34 > @ imm = #0x6
191+ bhs 0x21a <compiler_builtins::mem::memset::h27a3b72b184bd97c+ 0x36 > @ imm = #0x6
195192 strb r1, [r3], #1
196193 cmp r3, r12
197- blo 0x202 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510 +0x16 > @ imm = #-0x20
194+ blo 0x1fa <compiler_builtins::mem::memset::h27a3b72b184bd97c +0x16 > @ imm = #-0x22
198195 sub.w lr, r2, lr
199196 bic r2, lr, #0x3
200197 add.w r3, r12, r2
201- cmp r2, #0x1
202- blt 0x256 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+ 0x6a > @ imm = #0x24
198+ cmp r2, #0x0
199+ ble 0x252 <compiler_builtins::mem::memset::h27a3b72b184bd97c+ 0x6e > @ imm = #0x26
203200 uxtb r2, r1
204201 mov.w r4, #0x1010101
205202 muls r2, r4, r2
206203 str r2, [r12], #4
207204 cmp r12, r3
208- itttt lo
209- strlo r2, [r12], #4
210- cmplo r12, r3
205+ bhs 0x252 <compiler_builtins::mem::memset::h27a3b72b184bd97c+0x6e > @ imm = #0x16
206+ str r2, [r12], #4
207+ cmp r12, r3
208+ itt lo
211209 strlo r2, [r12], #4
212210 cmplo r12, r3
213- bhs 0x256 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+ 0x6a > @ imm = #0x6
211+ bhs 0x252 <compiler_builtins::mem::memset::h27a3b72b184bd97c+ 0x6e > @ imm = #0x6
214212 str r2, [r12], #4
215213 cmp r12, r3
216- blo 0x238 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+ 0x4c > @ imm = #-0x20
214+ blo 0x232 <compiler_builtins::mem::memset::h27a3b72b184bd97c+ 0x4e > @ imm = #-0x22
217215 and r2, lr, #0x3
218- cmp r2, #0x1
219- bge 0x266 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+0x7a > @ imm = #0x6
220- b 0x286 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+0x9a > @ imm = #0x24
216+ cbnz r2, 0x25e <compiler_builtins::mem::memset::h27a3b72b184bd97c+0x7a > @ imm = #0x4
217+ b 0x280 <compiler_builtins::mem::memset::h27a3b72b184bd97c+0x9c > @ imm = #0x24
221218 mov r3, r0
222- cmp r2, #0x1
223- blt 0x286 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+0x9a > @ imm = #0x1e
219+ cbz r2, 0x280 <compiler_builtins::mem::memset::h27a3b72b184bd97c+0x9c > @ imm = #0x20
224220 add r2, r3
225221 strb r1, [r3], #1
226222 cmp r3, r2
227- itttt lo
228- strblo r1, [r3], #1
229- cmplo r3, r2
223+ bhs 0x280 <compiler_builtins::mem::memset::h27a3b72b184bd97c+0x9c > @ imm = #0x16
224+ strb r1, [r3], #1
225+ cmp r3, r2
226+ itt lo
230227 strblo r1, [r3], #1
231228 cmplo r3, r2
232- bhs 0x286 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510+ 0x9a > @ imm = #0x6
229+ bhs 0x280 <compiler_builtins::mem::memset::h27a3b72b184bd97c+ 0x9c > @ imm = #0x6
233230 strb r1, [r3], #1
234231 cmp r3, r2
235- blo 0x268 <compiler_builtins::mem::memset::h1dd8afbc6e8f8510 +0x7c > @ imm = #-0x20
232+ blo 0x260 <compiler_builtins::mem::memset::h27a3b72b184bd97c +0x7c > @ imm = #-0x22
236233 pop {r4, r6, r7, pc}
0 commit comments