Nokia RX-51: Simplify copy kernel code
authorPali Rohár <pali@kernel.org>
Thu, 11 Aug 2022 20:27:23 +0000 (22:27 +0200)
committerTom Rini <trini@konsulko.com>
Sat, 20 Aug 2022 20:17:50 +0000 (16:17 -0400)
Expression (r + (r0 - r1)) produce same result as (r - (r1 - r0)). So it
does not matter which one is called. Always call the first option and
remove second one.

Signed-off-by: Pali Rohár <pali@kernel.org>
board/nokia/rx51/lowlevel_init.S

index dd3c830..4f76e80 100644 (file)
@@ -55,16 +55,13 @@ save_boot_params:
 copy_kernel_start:
        adr     r0, relocaddr   /* r0 - address of section relocaddr */
        ldr     r1, relocaddr   /* r1 - address of relocaddr after relocation */
-       cmp     r0, r1
 
        /* r4 - calculated offset */
-       subhi   r4, r0, r1
-       sublo   r4, r1, r0
+       sub     r4, r0, r1
 
        /* r0 - start of kernel before */
        ldr     r0, startaddr
-       addhi   r0, r0, r4
-       sublo   r0, r0, r4
+       add     r0, r0, r4
        ldr     r1, kernoffs
        add     r0, r0, r1