freemyipod r747 - Code Review

Jump to: navigation, search
Repository:freemyipod
Revision:r746‎ | r747 | r748 >
Date:05:11, 13 July 2011
Author:theseven
Status:new
Tags:
Comment:
emCORE: Minor dithering performance improvements
Modified paths:
  • /emcore/trunk/target/ipodnano2g/lcd.c (modified) (history)
  • /emcore/trunk/target/ipodnano3g/lcd.c (modified) (history)

Diff [purge]

Index: emcore/trunk/target/ipodnano2g/lcd.c
@@ -257,7 +257,6 @@
258258 __asm__ volatile(" mov r6, #0 \n");
259259 __asm__ volatile(" mov r7, r8 \n");
260260 __asm__ volatile("displaylcd_dither_x: \n");
261 - __asm__ volatile(" mov r2, #0 \n");
262261 __asm__ volatile(" ldrb r1, [r3], #1 \n");
263262 __asm__ volatile(" ldrsb r0, [r7] \n");
264263 __asm__ volatile(" add r1, r1, r4 \n");
@@ -266,7 +265,7 @@
267266 __asm__ volatile(" mvnhi r1, r1,asr#31 \n");
268267 __asm__ volatile(" andhi r1, r1, #0xff \n");
269268 __asm__ volatile(" mov r0, r1,lsr#3 \n");
270 - __asm__ volatile(" orr r2, r0,lsl#11 \n");
 269+ __asm__ volatile(" mov r2, r0,lsl#11 \n");
271270 __asm__ volatile(" sub r1, r1, r0,lsl#3 \n");
272271 __asm__ volatile(" sub r1, r1, r0,lsr#2 \n");
273272 __asm__ volatile(" mov r4, r4,lsr#1 \n");
@@ -281,7 +280,7 @@
282281 __asm__ volatile(" mvnhi r1, r1,asr#31 \n");
283282 __asm__ volatile(" andhi r1, r1, #0xff \n");
284283 __asm__ volatile(" mov r0, r1,lsr#2 \n");
285 - __asm__ volatile(" orr r2, r0,lsl#5 \n");
 284+ __asm__ volatile(" orr r2, r2, r0,lsl#5 \n");
286285 __asm__ volatile(" sub r1, r1, r0,lsl#2 \n");
287286 __asm__ volatile(" sub r1, r1, r0,lsr#4 \n");
288287 __asm__ volatile(" mov r5, r5,lsr#1 \n");
@@ -296,7 +295,7 @@
297296 __asm__ volatile(" mvnhi r1, r1,asr#31 \n");
298297 __asm__ volatile(" andhi r1, r1, #0xff \n");
299298 __asm__ volatile(" mov r0, r1,lsr#3 \n");
300 - __asm__ volatile(" orr r2, r0 \n");
 299+ __asm__ volatile(" orr r2, r2, r0 \n");
301300 __asm__ volatile(" sub r1, r1, r0,lsl#3 \n");
302301 __asm__ volatile(" sub r1, r1, r0,lsr#2 \n");
303302 __asm__ volatile(" mov r6, r6,lsr#1 \n");
Index: emcore/trunk/target/ipodnano3g/lcd.c
@@ -324,9 +324,9 @@
325325 __asm__ volatile(" mov r6, r6,lsr#1 \n");
326326 __asm__ volatile(" add r6, r6, r1,lsr#2 \n");
327327 __asm__ volatile(" strb r6, [r7], #1 \n");
328 - __asm__ volatile(" mov r6, r1,asr#1 \n");
329328 __asm__ volatile("displaylcd_dither_wait2: \n");
330329 __asm__ volatile(" ldr r0, [r9,#-0x24] \n");
 330+ __asm__ volatile(" mov r6, r1,asr#1 \n");
331331 __asm__ volatile(" tst r0, #0x10 \n");
332332 __asm__ volatile(" bne displaylcd_dither_wait2 \n");
333333 __asm__ volatile(" str r2, [r9] \n");