1 .file "bmw_small_speed.c"
4 .type bmw_small_f1, %function
6 @ args = 0, pretend = 0, frame = 24
7 @ frame_needed = 0, uses_anonymous_args = 0
8 @ link register save eliminated.
9 stmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp}
10 ldmib r0, {r5, r6} @ phole ldm
16 eor r9, r9, r5, asl #1
17 eor r3, r3, r6, asl #2
20 eor r9, r9, r5, ror #20
21 eor r3, r3, r6, ror #17
22 eor ip, ip, r7, asl #2
24 eor r3, r3, r6, ror #3
25 eor r9, r9, r5, ror #7
27 eor ip, ip, r7, ror #24
28 eor r4, r4, r8, asl #3
30 eor ip, ip, r7, ror #9
33 eor r4, r4, r8, ror #28
34 eor r5, r5, sl, asl #2
36 eor r4, r4, r8, ror #13
38 eor r5, r5, sl, ror #24
39 eor r3, r3, fp, asl #1
41 eor r5, r5, sl, ror #9
43 eor r3, r3, fp, ror #20
44 eor ip, ip, r6, asl #2
47 eor r3, r3, fp, ror #7
49 eor ip, ip, r6, ror #17
50 eor r4, r4, r7, asl #3
52 eor ip, ip, r6, ror #3
55 eor r4, r4, r7, ror #28
57 eor r4, r4, r7, ror #13
61 eor r5, r5, r8, asl #2
65 eor r5, r5, r8, ror #24
66 eor r3, r3, sl, asl #1
68 eor r4, r4, r6, asl #3
70 eor r5, r5, r8, ror #9
71 eor r3, r3, sl, ror #20
73 eor ip, ip, fp, asl #2
74 eor r6, r6, r7, asl #2
75 eor r3, r3, sl, ror #7
77 eor ip, ip, fp, ror #17
78 eor r6, r6, r7, ror #24
80 eor ip, ip, fp, ror #3
81 eor r6, r6, r7, ror #9
84 eor r4, r4, r8, ror #28
85 eor r4, r4, r8, ror #13
92 eor r3, r3, sl, asl #1
97 eor r3, r3, sl, ror #20
102 eor r3, r3, r6, ror #7
106 add r7, r7, ip, ror #31
108 eor r8, r8, fp, asl #2
110 eor r8, r8, ip, ror #17
111 eor sl, sl, r3, asl #3
114 eor r5, r5, r6, asl #1
115 eor r6, r4, ip, asl #2
121 eor r8, r8, r3, ror #3
123 add r7, r7, fp, ror #28
124 eor r5, r5, r3, ror #20
128 eor sl, sl, fp, ror #28
129 eor fp, r6, r3, ror #24
132 eor ip, ip, r6, asl #2
137 sub r7, r7, r4, ror #21
139 eor sl, sl, r8, ror #13
140 eor r5, r5, r3, ror #7
141 eor r8, fp, r4, ror #9
146 eor ip, ip, fp, ror #17
147 eor r6, r6, r3, asl #3
152 eor r6, r6, sl, ror #28
153 eor ip, ip, r8, ror #3
154 eor r6, r6, sl, ror #13
159 eor r4, r4, fp, asl #2
162 eor r4, r4, sl, ror #24
165 eor r4, r4, sl, ror #9
166 eor r3, r3, r8, asl #1
172 eor r3, r3, sl, ror #20
173 eor r3, r3, sl, ror #7
176 eor ip, ip, r8, asl #2
180 eor ip, ip, r8, ror #17
181 eor r6, r6, fp, asl #3
182 eor ip, ip, r3, ror #3
185 eor r6, r6, fp, ror #28
186 eor r6, r6, fp, ror #13
187 eor r8, r8, r7, asl #2
190 eor r8, r8, r7, ror #24
194 eor r8, r8, r7, ror #9
195 eor sl, sl, r3, asl #1
198 eor sl, sl, r6, ror #20
203 eor sl, sl, r8, ror #7
206 add r4, r4, r3, ror #30
208 eor ip, ip, fp, asl #2
209 eor r7, r7, r6, asl #3
213 eor ip, ip, r3, ror #17
215 eor ip, ip, sl, ror #3
218 ldmia r6, {r6, sl} @ phole ldm
222 eor r7, r7, r6, ror #28
223 eor r3, r3, sl, asl #2
225 add r4, r4, #1509949440
226 eor r7, r7, ip, ror #13
227 eor r3, r3, sl, ror #24
228 eor r6, r6, fp, asl #1
230 add r4, r4, #11141120
231 eor r3, r3, sl, ror #9
234 eor r6, r6, fp, ror #20
235 eor ip, ip, r8, asl #2
238 eor r6, r6, fp, ror #7
240 eor ip, ip, r8, ror #17
243 eor ip, ip, r8, ror #3
245 sub r4, r4, sl, ror #20
246 eor r3, r3, r9, asl #3
249 eor r3, r3, r9, ror #28
250 eor r3, r3, r9, ror #13
262 add ip, ip, r3, ror #25
266 add ip, ip, r6, ror #19
270 add ip, ip, sl, ror #16
273 ldmia r9, {r9, sl} @ phole ldm
275 add ip, ip, r6, ror #13
280 add ip, ip, sl, ror #9
283 add r3, r3, fp, ror #29
285 add ip, ip, r6, ror #5
286 eor r4, r4, r4, lsr #1
288 sub r3, r3, #-1610612730
291 sub r3, r3, sl, ror #19
295 eor r5, r5, r5, lsr #2
305 add r5, r5, r4, ror #25
307 ldmia r4, {r4, sl} @ phole ldm
311 ldmia r6, {r6, fp} @ phole ldm
312 add r3, r3, r9, ror #28
315 add r5, r5, sl, ror #19
318 add r5, r5, fp, ror #16
320 add r3, r3, #1711276032
324 add r5, r5, sl, ror #13
326 sub r3, r3, #11141120
328 add r5, r5, r9, ror #9
332 add r5, r5, r6, ror #5
333 eor r4, r4, r4, lsr #1
338 sub r3, r3, r9, ror #18
342 eor ip, ip, ip, lsr #2
351 add ip, ip, r4, ror #25
353 add ip, ip, r6, ror #19
355 add r3, r3, sl, ror #27
356 add ip, ip, r4, ror #16
359 add ip, ip, fp, ror #13
360 add r3, r3, #1778384896
361 add ip, ip, sl, ror #9
362 add r3, r3, #11141120
364 add ip, ip, r9, ror #5
371 sub r3, r3, r9, ror #17
372 eor r4, r4, r4, lsr #1
379 eor r5, r5, r5, lsr #2
388 add r4, r4, r5, ror #25
391 add r4, r4, r6, ror #19
393 add r4, r4, r5, ror #16
396 add r4, r4, r6, ror #13
397 add r3, r3, r8, ror #26
401 add r4, r4, fp, ror #9
404 sub r3, r3, #-1879048185
405 add r4, r4, r8, ror #5
406 sub r3, r3, r9, ror #16
407 eor r5, r5, r5, lsr #1
414 eor ip, ip, ip, lsr #2
424 add r5, r5, r6, ror #25
425 add r3, r3, r7, ror #25
427 add r5, r5, ip, ror #19
428 add r3, r3, #1979711488
430 add r5, r5, r6, ror #16
431 sub r3, r3, #11141120
435 add r5, r5, ip, ror #13
440 add r5, r5, r6, ror #9
443 add r5, r5, r8, ror #5
444 sub r3, r3, sl, ror #31
445 eor ip, ip, ip, lsr #1
453 eor r4, r4, r4, lsr #2
464 add ip, ip, r4, ror #25
465 add r3, r3, r7, ror #24
467 add ip, ip, r6, ror #19
468 add r3, r3, #2063597568
470 add ip, ip, r4, ror #16
474 add ip, ip, r6, ror #13
479 add ip, ip, r9, ror #9
482 add ip, ip, r8, ror #5
483 sub r3, r3, sl, ror #30
484 eor r4, r4, r4, lsr #1
491 eor r5, r5, r5, lsr #2
499 add r4, r4, r5, ror #25
502 add r4, r4, r6, ror #19
505 add r4, r4, r5, ror #16
509 add r4, r4, r6, ror #13
510 add r3, r3, r7, ror #23
514 add r4, r4, r8, ror #9
515 sub r3, r3, #-2147483640
517 add r4, r4, r7, ror #5
518 sub r3, r3, sl, ror #29
519 eor r5, r5, r5, lsr #1
527 eor ip, ip, ip, lsr #2
538 add r5, r5, r6, ror #25
539 add r3, r3, r7, ror #22
541 add r5, r5, ip, ror #19
542 add r3, r3, #-2063597568
544 add r5, r5, r6, ror #16
549 add r5, r5, ip, ror #13
554 add r5, r5, r6, ror #9
557 add r5, r5, r8, ror #5
558 sub r3, r3, sl, ror #28
559 eor ip, ip, ip, lsr #1
566 eor r4, r4, r4, lsr #2
576 add ip, ip, r4, ror #25
579 add r3, r3, r7, ror #21
580 add ip, ip, r6, ror #19
582 add ip, ip, r4, ror #16
583 add r3, r3, #-1979711488
585 add ip, ip, r6, ror #13
587 add r3, r3, #11141120
589 add ip, ip, fp, ror #9
594 add ip, ip, r8, ror #5
595 eor r4, r4, r4, lsr #1
597 sub r3, r3, sl, ror #27
605 eor r5, r5, r5, lsr #2
613 add r4, r4, r5, ror #25
616 add r4, r4, r6, ror #19
619 add r4, r4, r5, ror #16
621 add r4, r4, r6, ror #13
622 add r3, r3, r7, ror #20
626 add r4, r4, r8, ror #9
630 add r4, r4, r7, ror #5
631 eor r5, r5, r5, lsr #1
632 sub r3, r3, #1879048201
633 sub r3, r3, sl, ror #26
641 eor ip, ip, ip, lsr #2
652 add r5, r5, r6, ror #25
653 add r3, r3, r7, ror #19
655 add r5, r5, ip, ror #19
656 add r3, r3, #-1795162112
658 add r5, r5, r6, ror #16
662 add r5, r5, ip, ror #13
666 add r5, r5, fp, ror #9
670 add r5, r5, r8, ror #5
671 sub r3, r3, sl, ror #25
672 eor ip, ip, ip, lsr #1
678 eor r4, r4, r4, lsr #2
687 add ip, ip, r3, ror #25
689 add ip, ip, r4, ror #19
693 add ip, ip, r6, ror #16
696 add ip, ip, r4, ror #13
697 add r3, r3, r7, ror #31
701 add ip, ip, r6, ror #9
702 add r3, r3, sl, ror #18
705 add ip, ip, r7, ror #5
706 sub r3, r3, r9, ror #24
708 eor r4, r4, r4, lsr #1
716 eor r5, r5, r5, lsr #2
722 add r4, r4, r3, ror #29
727 add r4, r4, r5, ror #19
730 add r4, r4, r7, ror #16
731 add r4, r4, r5, ror #13
734 add r4, r4, sl, ror #9
735 add r3, r3, r8, ror #17
739 add r4, r4, r7, ror #5
740 sub r3, r3, #1610612746
743 eor r5, r5, r5, lsr #1
744 sub r3, r3, sl, ror #23
748 eor ip, ip, ip, lsr #2
758 add r3, r3, r5, ror #29
763 add r3, r3, r7, ror #19
764 add ip, ip, r8, ror #16
766 add r3, r3, r5, ror #16
767 add ip, ip, #-1526726656
769 add r3, r3, r6, ror #13
773 add r3, r3, r5, ror #9
778 add r3, r3, r6, ror #5
781 sub ip, ip, r8, ror #22
782 eor r1, r1, r1, lsr #1
787 eor r4, r4, r4, lsr #2
791 ldmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp}
798 .size bmw_small_f1, .-bmw_small_f1
801 .type bmw_small_f0, %function
803 @ args = 0, pretend = 0, frame = 84
804 @ frame_needed = 0, uses_anonymous_args = 0
805 @ link register save eliminated.
806 stmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp}
839 eor ip, ip, r3, asl #3
841 eor ip, ip, r3, ror #28
843 eor ip, ip, r3, ror #13
866 ldmia r3, {r3, r5} @ phole ldm
893 eor r2, r2, r4, asl #2
897 eor r2, r2, r4, ror #17
899 eor r2, r2, r4, ror #3
903 eor r3, r3, ip, asl #2
904 eor r3, r3, ip, ror #24
907 eor r3, r3, ip, ror #9
921 eor r8, r8, r8, lsr #1
929 eor r2, r2, r6, asl #1
934 eor r2, r2, r6, ror #20
935 eor r2, r2, r6, ror #7
947 eor r3, r3, r4, asl #3
950 eor r3, r3, r4, ror #28
951 eor r3, r3, r4, ror #13
959 eor r2, r2, ip, asl #1
961 eor r2, r2, ip, ror #20
964 eor r2, r2, ip, ror #7
971 eor r3, r3, r4, asl #3
972 eor r3, r3, r4, ror #28
979 eor r4, r3, r4, ror #13
989 eor r2, r2, sl, asl #2
992 eor r2, r2, sl, ror #17
994 eor r2, r2, sl, ror #3
999 eor r3, r3, r7, asl #2
1001 eor r3, r3, r7, ror #24
1002 eor r3, r3, r7, ror #9
1014 eor r5, r2, r2, lsr #1
1020 eor r3, r3, r5, asl #2
1022 eor r3, r3, r5, ror #24
1023 eor r3, r3, r5, ror #9
1038 eor r2, r2, r2, lsr #1
1041 eor r3, r3, ip, asl #1
1043 eor r3, r3, ip, ror #20
1045 eor r3, r3, ip, ror #7
1056 eor r2, r2, r9, asl #3
1059 eor r2, r2, r9, ror #28
1061 eor r2, r2, r9, ror #13
1067 eor r3, r3, r6, asl #2
1069 eor r3, r3, r6, ror #17
1070 eor r3, r3, r6, ror #3
1074 ldmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp}
1076 .size bmw_small_f0, .-bmw_small_f0
1079 .type bmw224_init, %function
1081 @ args = 0, pretend = 0, frame = 0
1082 @ frame_needed = 0, uses_anonymous_args = 0
1083 @ link register save eliminated.
1092 add r3, r3, #67108864
1102 .size bmw224_init, .-bmw224_init
1105 .type bmw256_init, %function
1107 @ args = 0, pretend = 0, frame = 0
1108 @ frame_needed = 0, uses_anonymous_args = 0
1109 @ link register save eliminated.
1116 add r3, r3, #67108864
1130 .size bmw256_init, .-bmw256_init
1132 .global bmw256_ctx2hash
1133 .type bmw256_ctx2hash, %function
1135 @ args = 0, pretend = 0, frame = 0
1136 @ frame_needed = 0, uses_anonymous_args = 0
1137 @ link register save eliminated.
1141 .size bmw256_ctx2hash, .-bmw256_ctx2hash
1143 .global bmw224_ctx2hash
1144 .type bmw224_ctx2hash, %function
1146 @ args = 0, pretend = 0, frame = 0
1147 @ frame_needed = 0, uses_anonymous_args = 0
1148 @ link register save eliminated.
1152 .size bmw224_ctx2hash, .-bmw224_ctx2hash
1154 .global bmw_small_nextBlock
1155 .type bmw_small_nextBlock, %function
1156 bmw_small_nextBlock:
1157 @ args = 0, pretend = 0, frame = 192
1158 @ frame_needed = 0, uses_anonymous_args = 0
1159 stmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr}
1173 ldmia r1, {r1, r2, r3, ip} @ phole ldm
1223 ldmia r1, {r1, r3} @ phole ldm
1227 eor r9, r9, r1, lsr #5
1229 eor r9, r9, r0, asl #5
1236 eor sl, sl, r2, asl #8
1238 eor sl, sl, r0, lsr #7
1246 eor r2, r2, r1, asl #5
1247 eor r2, r2, r0, lsr #5
1257 eor r2, r2, r1, asl #5
1258 eor r2, r2, r0, lsr #1
1270 eor r1, r1, r0, lsr #3
1278 eor r4, r4, r2, lsr #6
1280 eor r4, r4, r0, asl #6
1286 eor r5, r5, r3, asl #6
1290 eor r5, r5, r0, lsr #4
1296 eor r6, r6, lr, asl #2
1299 eor r6, r6, r0, lsr #11
1306 eor r3, r3, ip, asl #8
1308 add r3, r3, r1, ror #23
1316 eor r3, r3, ip, lsr #6
1319 add r3, r3, r4, ror #22
1328 eor r3, r3, ip, asl #6
1330 add r3, r3, r5, ror #21
1339 eor r3, r3, ip, asl #4
1341 add r3, r3, r6, ror #20
1350 eor r3, r3, ip, lsr #3
1352 add r3, r3, r9, ror #19
1361 eor r3, r3, ip, lsr #4
1363 add r3, r3, sl, ror #18
1373 eor r3, r3, ip, lsr #7
1374 add r3, r3, lr, ror #17
1382 eor r3, r3, ip, lsr #2
1387 add r3, r3, lr, ror #16
1394 ldmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc}
1395 .size bmw_small_nextBlock, .-bmw_small_nextBlock
1397 .global bmw224_nextBlock
1398 .type bmw224_nextBlock, %function
1400 @ args = 0, pretend = 0, frame = 0
1401 @ frame_needed = 0, uses_anonymous_args = 0
1402 @ link register save eliminated.
1403 b bmw_small_nextBlock
1404 .size bmw224_nextBlock, .-bmw224_nextBlock
1406 .global bmw256_nextBlock
1407 .type bmw256_nextBlock, %function
1409 @ args = 0, pretend = 0, frame = 0
1410 @ frame_needed = 0, uses_anonymous_args = 0
1411 @ link register save eliminated.
1412 b bmw_small_nextBlock
1413 .size bmw256_nextBlock, .-bmw256_nextBlock
1415 .global bmw_small_lastBlock
1416 .type bmw_small_lastBlock, %function
1417 bmw_small_lastBlock:
1418 @ args = 0, pretend = 0, frame = 400
1419 @ frame_needed = 0, uses_anonymous_args = 0
1420 stmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr}
1436 bl bmw_small_nextBlock
1464 add ip, r0, r4, lsr #3
1465 ldrb r2, [ip, #-64] @ zero_extendqisi2
1468 orr r2, r2, r3, asr r1
1489 umlal r3, r4, r2, r1
1494 bl bmw_small_nextBlock
1518 ldmia r8, {r8, ip, lr} @ phole ldm
1520 ldmia r2, {r2, r3} @ phole ldm
1555 ldmia sl, {sl, lr} @ phole ldm
1556 eor r3, r3, r7, lsr #5
1569 eor lr, r2, r8, asl #8
1575 eor r7, r7, ip, asl #5
1578 eor r3, lr, ip, lsr #7
1589 eor r8, r8, r0, asl #5
1591 eor r8, r8, ip, lsr #5
1599 eor r7, r7, r5, asl #5
1603 eor r7, r7, ip, lsr #1
1613 eor r6, r6, ip, lsr #3
1621 eor r5, r5, lr, lsr #6
1625 eor r5, r5, ip, asl #6
1632 eor r4, r4, r0, asl #6
1635 eor r4, r4, ip, lsr #4
1642 eor r0, r0, sl, asl #2
1646 eor r0, r0, ip, lsr #11
1704 eor lr, lr, r1, lsr #2
1714 eor lr, r3, r1, lsr #6
1716 eor r2, r2, r1, asl #6
1718 eor r2, r3, r1, asl #4
1720 eor r3, r3, r1, lsr #3
1723 eor r3, r3, r1, lsr #4
1726 add lr, lr, r5, ror #22
1727 add r2, r2, r0, ror #20
1730 eor sl, sl, r1, asl #8
1732 eor r1, r3, r1, lsr #7
1737 add r4, r5, r4, ror #21
1738 add lr, lr, r0, ror #19
1739 add r2, r2, r3, ror #18
1744 add r7, r5, r7, ror #16
1747 add r1, r1, r8, ror #17
1761 add sl, sl, r6, ror #23
1773 ldmia r4!, {r0, r1, r2, r3}
1797 stmia ip!, {r0, r1, r2, r3}
1798 ldmia r4!, {r0, r1, r2, r3}
1799 stmia ip!, {r0, r1, r2, r3}
1800 ldmia r4!, {r0, r1, r2, r3}
1801 stmia ip!, {r0, r1, r2, r3}
1802 ldmia r4, {r0, r1, r2, r3}
1803 stmia ip, {r0, r1, r2, r3}
1805 ldmfd sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc}
1809 bl bmw_small_nextBlock
1841 .size bmw_small_lastBlock, .-bmw_small_lastBlock
1843 .global bmw256_lastBlock
1844 .type bmw256_lastBlock, %function
1846 @ args = 0, pretend = 0, frame = 0
1847 @ frame_needed = 0, uses_anonymous_args = 0
1848 @ link register save eliminated.
1851 b bmw_small_lastBlock
1852 .size bmw256_lastBlock, .-bmw256_lastBlock
1854 .global bmw224_lastBlock
1855 .type bmw224_lastBlock, %function
1857 @ args = 0, pretend = 0, frame = 0
1858 @ frame_needed = 0, uses_anonymous_args = 0
1859 @ link register save eliminated.
1862 b bmw_small_lastBlock
1863 .size bmw224_lastBlock, .-bmw224_lastBlock
1866 .type bmw256, %function
1868 @ args = 0, pretend = 0, frame = 68
1869 @ frame_needed = 0, uses_anonymous_args = 0
1870 stmfd sp!, {r4, r5, r6, r7, r8, r9, sl, lr}
1882 add r3, r3, #67108864
1902 bl bmw_small_nextBlock
1918 bl bmw_small_lastBlock
1924 ldmfd sp!, {r4, r5, r6, r7, r8, r9, sl, pc}
1929 .size bmw256, .-bmw256
1932 .type bmw224, %function
1934 @ args = 0, pretend = 0, frame = 68
1935 @ frame_needed = 0, uses_anonymous_args = 0
1936 stmfd sp!, {r4, r5, r6, r7, r8, r9, sl, lr}
1950 add r3, r3, #67108864
1970 bl bmw_small_nextBlock
1986 bl bmw_small_lastBlock
1992 ldmfd sp!, {r4, r5, r6, r7, r8, r9, sl, pc}
1993 .size bmw224, .-bmw224
1994 .ident "GCC: (GNU) 4.3.2"