Using ARM Unified Assembler Language

Change-Id: Iae32a8ba8eff6087330e458fafc912a12fee4509
This commit is contained in:
Chris Chua 2023-03-19 06:22:08 +11:00 committed by Aidan MacDonald
parent a64cad847e
commit 86429dbf1e
23 changed files with 139 additions and 127 deletions

View file

@ -40,24 +40,24 @@ lcd_write_data: /* r1 = pixel count, must be even */
subs r1, r1, #16
.loop16:
ldmgeia r0!, {r2-r3}
stmgeia lr, {r2-r3}
ldmgeia r0!, {r2-r3}
stmgeia lr, {r2-r3}
ldmgeia r0!, {r2-r3}
stmgeia lr, {r2-r3}
ldmgeia r0!, {r2-r3}
stmgeia lr, {r2-r3}
subges r1, r1, #16
ldmiage r0!, {r2-r3}
stmiage lr, {r2-r3}
ldmiage r0!, {r2-r3}
stmiage lr, {r2-r3}
ldmiage r0!, {r2-r3}
stmiage lr, {r2-r3}
ldmiage r0!, {r2-r3}
stmiage lr, {r2-r3}
subsge r1, r1, #16
bge .loop16
/* no need to correct the count, we're just checking bits from now */
tst r1, #8
ldmneia r0!, {r2-r4, r12}
stmneia lr, {r2-r4, r12}
ldmiane r0!, {r2-r4, r12}
stmiane lr, {r2-r4, r12}
tst r1, #4
ldmneia r0!, {r2-r3}
stmneia lr, {r2-r3}
ldmiane r0!, {r2-r3}
stmiane lr, {r2-r3}
tst r1, #2
ldrne r3, [r0], #4
strne r3, [lr]