mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
x86/boot/compressed/64: Use TEST %reg,%reg instead of CMP $0,%reg
Use TEST %reg,%reg which sets the zero flag in the same way as CMP $0,%reg, but the encoding uses one byte less. Signed-off-by: Uros Bizjak <ubizjak@gmail.com> Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Andy Lutomirski <luto@kernel.org> Link: https://lkml.kernel.org/r/20201029160258.139216-1-ubizjak@gmail.com
This commit is contained in:
committed by
Borislav Petkov
parent
61b39ad9a7
commit
ab09b58e4b
@@ -241,12 +241,12 @@ SYM_FUNC_START(startup_32)
|
||||
leal rva(startup_64)(%ebp), %eax
|
||||
#ifdef CONFIG_EFI_MIXED
|
||||
movl rva(efi32_boot_args)(%ebp), %edi
|
||||
cmp $0, %edi
|
||||
testl %edi, %edi
|
||||
jz 1f
|
||||
leal rva(efi64_stub_entry)(%ebp), %eax
|
||||
movl rva(efi32_boot_args+4)(%ebp), %esi
|
||||
movl rva(efi32_boot_args+8)(%ebp), %edx // saved bootparams pointer
|
||||
cmpl $0, %edx
|
||||
testl %edx, %edx
|
||||
jnz 1f
|
||||
/*
|
||||
* efi_pe_entry uses MS calling convention, which requires 32 bytes of
|
||||
@@ -592,7 +592,7 @@ SYM_CODE_START(trampoline_32bit_src)
|
||||
movl %eax, %cr0
|
||||
|
||||
/* Check what paging mode we want to be in after the trampoline */
|
||||
cmpl $0, %edx
|
||||
testl %edx, %edx
|
||||
jz 1f
|
||||
|
||||
/* We want 5-level paging: don't touch CR3 if it already points to 5-level page tables */
|
||||
@@ -622,7 +622,7 @@ SYM_CODE_START(trampoline_32bit_src)
|
||||
|
||||
/* Enable PAE and LA57 (if required) paging modes */
|
||||
movl $X86_CR4_PAE, %eax
|
||||
cmpl $0, %edx
|
||||
testl %edx, %edx
|
||||
jz 1f
|
||||
orl $X86_CR4_LA57, %eax
|
||||
1:
|
||||
|
||||
Reference in New Issue
Block a user