arm64: efi-entry.S: avoid open-coded adr_l
Some places in the kernel open-code sequences using ADRP for a symbol
another instruction using a :lo12: relocation for that same symbol.
These sequences are easy to get wrong, and more painful to read than is
necessary. For these reasons, it is preferable to use the
{adr,ldr,str}_l macros for these cases.
This patch makes use of these in efi-entry.S, removing open-coded
sequences using adrp.
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Matt Fleming <matt@codeblueprint.co.uk>
Cc: Will Deacon <will.deacon@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
This commit is contained in:
committed by
Will Deacon
parent
9bb003600e
commit
526d10ae02
@@ -46,8 +46,7 @@ ENTRY(entry)
|
||||
* efi_system_table_t *sys_table,
|
||||
* unsigned long *image_addr) ;
|
||||
*/
|
||||
adrp x8, _text
|
||||
add x8, x8, #:lo12:_text
|
||||
adr_l x8, _text
|
||||
add x2, sp, 16
|
||||
str x8, [x2]
|
||||
bl efi_entry
|
||||
@@ -68,10 +67,8 @@ ENTRY(entry)
|
||||
/*
|
||||
* Calculate size of the kernel Image (same for original and copy).
|
||||
*/
|
||||
adrp x1, _text
|
||||
add x1, x1, #:lo12:_text
|
||||
adrp x2, _edata
|
||||
add x2, x2, #:lo12:_edata
|
||||
adr_l x1, _text
|
||||
adr_l x2, _edata
|
||||
sub x1, x2, x1
|
||||
|
||||
/*
|
||||
|
||||
Reference in New Issue
Block a user