when compiling with optimizations because LLVM loop unrolls zero_bss and init_data. This causes binaries to be about 500 bytes bigger in size compared to non-loop unrolled version. Here are the disassemblies:
00000400 <Reset>:
400: f000 f922 bl 648 <DefaultPreInit>
404: f240 0000 movw r0, #0
408: f240 0200 movw r2, #0
40c: f2c2 0000 movt r0, #8192 ; 0x2000
410: f2c2 0200 movt r2, #8192 ; 0x2000
414: 4282 cmp r2, r0
416: be00 bkpt 0x0000
418: d25a bcs.n 4d0 <Reset+0xd0>
41a: 1d11 adds r1, r2, #4
41c: ea6f 0c02 mvn.w ip, r2
420: 4281 cmp r1, r0
422: f04f 0401 mov.w r4, #1
426: 460b mov r3, r1
428: bf38 it cc
42a: 4603 movcc r3, r0
42c: 4463 add r3, ip
42e: eb04 0393 add.w r3, r4, r3, lsr #2
432: 079b lsls r3, r3, #30
434: 4613 mov r3, r2
436: d024 beq.n 482 <Reset+0x82>
438: f04f 0e00 mov.w lr, #0
43c: 4613 mov r3, r2
43e: f843 eb04 str.w lr, [r3], #4
442: 4283 cmp r3, r0
444: 461d mov r5, r3
446: bf38 it cc
448: 4605 movcc r5, r0
44a: 4465 add r5, ip
44c: eb04 0495 add.w r4, r4, r5, lsr #2
450: f004 0403 and.w r4, r4, #3
454: 2c01 cmp r4, #1
456: d014 beq.n 482 <Reset+0x82>
458: 4613 mov r3, r2
45a: 2701 movs r7, #1
45c: f843 ef04 str.w lr, [r3, #4]!
460: 4283 cmp r3, r0
462: bf38 it cc
464: 4603 movcc r3, r0
466: 4463 add r3, ip
468: eb07 0393 add.w r3, r7, r3, lsr #2
46c: f003 0303 and.w r3, r3, #3
470: 2b02 cmp r3, #2
472: d004 beq.n 47e <Reset+0x7e>
474: 2300 movs r3, #0
476: 6093 str r3, [r2, #8]
478: f102 030c add.w r3, r2, #12
47c: e001 b.n 482 <Reset+0x82>
47e: f102 0308 add.w r3, r2, #8
482: 4281 cmp r1, r0
484: bf38 it cc
486: 4601 movcc r1, r0
488: 4461 add r1, ip
48a: 0889 lsrs r1, r1, #2
48c: 2903 cmp r1, #3
48e: d31f bcc.n 4d0 <Reset+0xd0>
490: 2100 movs r1, #0
492: f103 0210 add.w r2, r3, #16
496: 6019 str r1, [r3, #0]
498: 4282 cmp r2, r0
49a: 6059 str r1, [r3, #4]
49c: 6099 str r1, [r3, #8]
49e: 60d9 str r1, [r3, #12]
4a0: bf3f itttt cc
4a2: 6011 strcc r1, [r2, #0]
4a4: 6051 strcc r1, [r2, #4]
4a6: 6091 strcc r1, [r2, #8]
4a8: 60d1 strcc r1, [r2, #12]
4aa: bf3c itt cc
4ac: 3210 addcc r2, #16
4ae: 4282 cmpcc r2, r0
4b0: d20e bcs.n 4d0 <Reset+0xd0>
4b2: 6011 str r1, [r2, #0]
4b4: 6051 str r1, [r2, #4]
4b6: 6091 str r1, [r2, #8]
4b8: 60d1 str r1, [r2, #12]
4ba: 3210 adds r2, #16
4bc: 4282 cmp r2, r0
4be: d207 bcs.n 4d0 <Reset+0xd0>
4c0: f102 0310 add.w r3, r2, #16
4c4: 6011 str r1, [r2, #0]
4c6: 4283 cmp r3, r0
4c8: 6051 str r1, [r2, #4]
4ca: 6091 str r1, [r2, #8]
4cc: 60d1 str r1, [r2, #12]
4ce: d3e0 bcc.n 492 <Reset+0x92>
4d0: f240 0e00 movw lr, #0
4d4: f240 0000 movw r0, #0
4d8: f2c2 0e00 movt lr, #8192 ; 0x2000
4dc: f2c2 0000 movt r0, #8192 ; 0x2000
4e0: 4570 cmp r0, lr
4e2: be00 bkpt 0x0000
4e4: f080 8089 bcs.w 5fa <Reset+0x1fa>
4e8: 1d02 adds r2, r0, #4
4ea: ea6f 0c00 mvn.w ip, r0
4ee: 4572 cmp r2, lr
4f0: f04f 0501 mov.w r5, #1
4f4: 4611 mov r1, r2
4f6: f240 6454 movw r4, #1620 ; 0x654
4fa: bf38 it cc
4fc: 4671 movcc r1, lr
4fe: f2c0 0400 movt r4, #0
502: 4461 add r1, ip
504: eb05 0191 add.w r1, r5, r1, lsr #2
508: 0789 lsls r1, r1, #30
50a: d027 beq.n 55c <Reset+0x15c>
50c: 4621 mov r1, r4
50e: 4603 mov r3, r0
510: f851 6b04 ldr.w r6, [r1], #4
514: f843 6b04 str.w r6, [r3], #4
518: 4573 cmp r3, lr
51a: 461e mov r6, r3
51c: bf38 it cc
51e: 4676 movcc r6, lr
520: 4466 add r6, ip
522: eb05 0596 add.w r5, r5, r6, lsr #2
526: f005 0503 and.w r5, r5, #3
52a: 2d01 cmp r5, #1
52c: d018 beq.n 560 <Reset+0x160>
52e: 6861 ldr r1, [r4, #4]
530: 4603 mov r3, r0
532: f843 1f04 str.w r1, [r3, #4]!
536: 4573 cmp r3, lr
538: bf38 it cc
53a: 4673 movcc r3, lr
53c: eb03 010c add.w r1, r3, ip
540: 2301 movs r3, #1
542: eb03 0191 add.w r1, r3, r1, lsr #2
546: f001 0103 and.w r1, r1, #3
54a: 2902 cmp r1, #2
54c: d067 beq.n 61e <Reset+0x21e>
54e: 68a1 ldr r1, [r4, #8]
550: f100 030c add.w r3, r0, #12
554: 6081 str r1, [r0, #8]
556: f104 010c add.w r1, r4, #12
55a: e001 b.n 560 <Reset+0x160>
55c: 4603 mov r3, r0
55e: 4621 mov r1, r4
560: 4572 cmp r2, lr
562: bf38 it cc
564: 4672 movcc r2, lr
566: eb02 000c add.w r0, r2, ip
56a: 0880 lsrs r0, r0, #2
56c: 2803 cmp r0, #3
56e: d344 bcc.n 5fa <Reset+0x1fa>
570: f103 0210 add.w r2, r3, #16
574: 4670 mov r0, lr
576: 4572 cmp r2, lr
578: ea6f 0603 mvn.w r6, r3
57c: bf88 it hi
57e: 4610 movhi r0, r2
580: eb00 0c06 add.w ip, r0, r6
584: 2001 movs r0, #1
586: eb00 101c add.w r0, r0, ip, lsr #4
58a: f010 0003 ands.w r0, r0, #3
58e: d00a beq.n 5a6 <Reset+0x1a6>
590: e891 00f0 ldmia.w r1, {r4, r5, r6, r7}
594: 2801 cmp r0, #1
596: e883 00f0 stmia.w r3, {r4, r5, r6, r7}
59a: d130 bne.n 5fe <Reset+0x1fe>
59c: 3110 adds r1, #16
59e: f1bc 0f30 cmp.w ip, #48 ; 0x30
5a2: d204 bcs.n 5ae <Reset+0x1ae>
5a4: e029 b.n 5fa <Reset+0x1fa>
5a6: 461a mov r2, r3
5a8: f1bc 0f30 cmp.w ip, #48 ; 0x30
5ac: d325 bcc.n 5fa <Reset+0x1fa>
5ae: e891 0089 ldmia.w r1, {r0, r3, r7}
5b2: e9d1 6503 ldrd r6, r5, [r1, #12]
5b6: e9d1 4c05 ldrd r4, ip, [r1, #20]
5ba: f8d1 801c ldr.w r8, [r1, #28]
5be: e882 0089 stmia.w r2, {r0, r3, r7}
5c2: f101 0720 add.w r7, r1, #32
5c6: e9c2 6503 strd r6, r5, [r2, #12]
5ca: e9c2 4c05 strd r4, ip, [r2, #20]
5ce: f8c2 801c str.w r8, [r2, #28]
5d2: cf89 ldmia r7, {r0, r3, r7}
5d4: e9d1 650b ldrd r6, r5, [r1, #44] ; 0x2c
5d8: e9d1 4c0d ldrd r4, ip, [r1, #52] ; 0x34
5dc: f8d1 803c ldr.w r8, [r1, #60] ; 0x3c
5e0: 3140 adds r1, #64 ; 0x40
5e2: 6210 str r0, [r2, #32]
5e4: 6253 str r3, [r2, #36] ; 0x24
5e6: 6297 str r7, [r2, #40] ; 0x28
5e8: e9c2 650b strd r6, r5, [r2, #44] ; 0x2c
5ec: e9c2 4c0d strd r4, ip, [r2, #52] ; 0x34
5f0: f8c2 803c str.w r8, [r2, #60] ; 0x3c
5f4: 3240 adds r2, #64 ; 0x40
5f6: 4572 cmp r2, lr
5f8: d3d9 bcc.n 5ae <Reset+0x1ae>
5fa: be00 bkpt 0x0000
5fc: e7fe b.n 5fc <Reset+0x1fc>
5fe: f101 0610 add.w r6, r1, #16
602: 2802 cmp r0, #2
604: ce74 ldmia r6, {r2, r4, r5, r6}
606: 611a str r2, [r3, #16]
608: 615c str r4, [r3, #20]
60a: 619d str r5, [r3, #24]
60c: 61de str r6, [r3, #28]
60e: d10b bne.n 628 <Reset+0x228>
610: 3120 adds r1, #32
612: f103 0220 add.w r2, r3, #32
616: f1bc 0f30 cmp.w ip, #48 ; 0x30
61a: d2c8 bcs.n 5ae <Reset+0x1ae>
61c: e7ed b.n 5fa <Reset+0x1fa>
61e: f104 0108 add.w r1, r4, #8
622: f100 0308 add.w r3, r0, #8
626: e79b b.n 560 <Reset+0x160>
628: f101 0520 add.w r5, r1, #32
62c: 3130 adds r1, #48 ; 0x30
62e: cd35 ldmia r5, {r0, r2, r4, r5}
630: 6218 str r0, [r3, #32]
632: 625a str r2, [r3, #36] ; 0x24
634: f103 0230 add.w r2, r3, #48 ; 0x30
638: 629c str r4, [r3, #40] ; 0x28
63a: 62dd str r5, [r3, #44] ; 0x2c
63c: f1bc 0f30 cmp.w ip, #48 ; 0x30
640: d2b5 bcs.n 5ae <Reset+0x1ae>
642: e7da b.n 5fa <Reset+0x1fa>