From c773faf05e133b0f1a8bd8cd31e956fae8826203 Mon Sep 17 00:00:00 2001 From: Vladimir Serbinenko Date: Wed, 13 Nov 2013 02:17:20 +0100 Subject: [PATCH] Revert " * include/grub/symbol.h (ADDR): New macro. Replace all occurences of" This reverts commit 286551b4ebac0b6807c42d2034181d508479c542. --- ChangeLog | 6 ------ grub-core/kern/arm/cache.S | 4 ++-- grub-core/kern/arm/misc.S | 2 +- grub-core/kern/arm/uboot/startup.S | 30 +++++++++++++++--------------- include/grub/symbol.h | 10 ---------- 5 files changed, 18 insertions(+), 34 deletions(-) diff --git a/ChangeLog b/ChangeLog index 4d6003655..ae08e7d87 100644 --- a/ChangeLog +++ b/ChangeLog @@ -10,12 +10,6 @@ 2013-11-13 Vladimir Serbinenko - * include/grub/symbol.h (ADDR): New macro. Replace all occurences of - =x with ADDR(x) in arm assembly. - (END): New macro. Replace all .end with END. - -2013-11-12 Vladimir Serbinenko - Redirect all divisions to grub_divmod64. 2013-11-12 Vladimir Serbinenko diff --git a/grub-core/kern/arm/cache.S b/grub-core/kern/arm/cache.S index fba1c4f91..1f524e6d7 100644 --- a/grub-core/kern/arm/cache.S +++ b/grub-core/kern/arm/cache.S @@ -36,7 +36,7 @@ @ r1 - *end (exclusive) clean_dcache_range: @ Clean data cache for range to point-of-unification - ldr r2, ADDR(EXT_C(grub_arch_cache_dlinesz)) + ldr r2, =EXT_C(grub_arch_cache_dlinesz) ldr r2, [r2] sub r3, r2, #1 @ align "beg" to start of line mvn r3, r3 @@ -57,7 +57,7 @@ clean_dcache_range: @ r1 - *end (exclusive) invalidate_icache_range: @ Invalidate instruction cache for range to point-of-unification - ldr r2, ADDR(EXT_C(grub_arch_cache_ilinesz)) + ldr r2, =EXT_C(grub_arch_cache_ilinesz) ldr r2, [r2] sub r3, r2, #1 @ align "beg" to start of line mvn r3, r3 diff --git a/grub-core/kern/arm/misc.S b/grub-core/kern/arm/misc.S index 94522c222..68e4828fd 100644 --- a/grub-core/kern/arm/misc.S +++ b/grub-core/kern/arm/misc.S @@ -58,4 +58,4 @@ FUNCTION(raise) mov r0, #0 bx lr - END + .end diff --git a/grub-core/kern/arm/uboot/startup.S b/grub-core/kern/arm/uboot/startup.S index 4b710a119..3473dacc9 100644 --- a/grub-core/kern/arm/uboot/startup.S +++ b/grub-core/kern/arm/uboot/startup.S @@ -60,22 +60,22 @@ FUNCTION(codestart) @ U-Boot API signature is stored on the U-Boot heap @ Stack pointer used as start address for signature probing mov r12, sp - ldr sp, ADDR(entry_state) + ldr sp, =entry_state push {r4-r12,lr} @ store U-Boot context (sp in r12) - ldr r12, ADDR(EXT_C(grub_uboot_machine_type)) + ldr r12, =EXT_C(grub_uboot_machine_type) str r1, [r12] - ldr r12, ADDR(EXT_C(grub_uboot_boot_data)) + ldr r12, =EXT_C(grub_uboot_boot_data) str r2, [r12] @ Modules have been stored as a blob in BSS, @ they need to be manually relocated to _end - ldr r0, ADDR(EXT_C(__bss_start)) @ src + ldr r0, =EXT_C(__bss_start) @ src add r0, r0, #(GRUB_KERNEL_MACHINE_MOD_ALIGN - 1) mvn r1, #(GRUB_KERNEL_MACHINE_MOD_ALIGN - 1) and r0, r0, r1 - ldr r1, ADDR(EXT_C(_end)) @ dst = End of BSS + ldr r1, =EXT_C(_end) @ dst = End of BSS ldr r2, grub_total_module_size @ blob size add r1, r1, #GRUB_KERNEL_MACHINE_STACK_SIZE @@ -83,7 +83,7 @@ FUNCTION(codestart) sub sp, r1, #8 add r1, r1, #1024 - ldr r12, ADDR(EXT_C(grub_modbase)) + ldr r12, =EXT_C(grub_modbase) str r1, [r12] add r1, r1, r2 @@ -98,14 +98,14 @@ FUNCTION(codestart) @ Since we _are_ the C run-time, we need to manually zero the BSS @ region before continuing - ldr r0, ADDR(EXT_C(__bss_start)) @ zero from here + ldr r0, =EXT_C(__bss_start) @ zero from here @ If unaligned, bytewise zero until base address aligned. mov r2, #0 1: tst r0, #3 beq 2f strb r2, [r0], #1 b 1b -2: ldr r1, ADDR(EXT_C(_end)) @ to here +2: ldr r1, =EXT_C(_end) @ to here 1: str r2, [r0], #4 cmp r0, r1 bne 1b @@ -120,21 +120,21 @@ FUNCTION(codestart) * U-Boot (Global Data Pointer) and preserve it for Grub. */ FUNCTION(grub_uboot_syscall) - ldr ip, ADDR(transition_space) + ldr ip, =transition_space stm ip, {r8, lr} - ldr ip, ADDR(gd_backup) + ldr ip, =gd_backup ldr r8, [ip] - ldr ip, ADDR(grub_uboot_syscall_ptr) + ldr ip, =grub_uboot_syscall_ptr mov lr, pc ldr pc, [ip] - ldr ip, ADDR(gd_backup) + ldr ip, =gd_backup str r8, [ip] - ldr ip, ADDR(transition_space) + ldr ip, =transition_space ldm ip, {r8, lr} bx lr FUNCTION(grub_uboot_return) - ldr sp, ADDR(entry_state_end) + ldr sp, =entry_state_end pop {r4-r12, lr} mov sp, r12 bx lr @@ -166,4 +166,4 @@ transition_space: VARIABLE(grub_uboot_syscall_ptr) .long 0 @ - END + .end diff --git a/include/grub/symbol.h b/include/grub/symbol.h index e31417549..8f54dd8b9 100644 --- a/include/grub/symbol.h +++ b/include/grub/symbol.h @@ -37,16 +37,6 @@ # define EXT_C(sym) sym #endif -#ifdef __arm__ -#ifdef __clang__ -#define ADDR(x) x -#define END -#else -#define ADDR(x) =x -#define END .end -#endif -#endif - #if defined (__APPLE__) #define FUNCTION(x) .globl EXT_C(x) ; EXT_C(x): #define VARIABLE(x) .globl EXT_C(x) ; EXT_C(x):