Displaying 4 results from an estimated 4 matches for "jmp_address".
2015 Aug 23
0
[PATCH] efi: leaving long mode in kernel_jump routine
...%rcx
- addq %rcx, %rdi
- pushq %rdi
+ /* save the content of rsi (boot_param argument of kernel_jump function) */
+ mov %rsi, %rbx
+
+ call base_address
+base_address:
+ pop %rsi
+
+ /* need to perform a long jump to update cs
+
+ /* load absolute address of pm_code in jmp_address location */
+ lea (pm_code - base_address)(%rsi, 1), %rax
+ mov %eax, (jmp_address - base_address)(%rsi, 1)
+
+ ljmp *(jmp_address - base_address)(%rsi, 1)
+
+jmp_address:
+ .long 0 /* address */
+ .word 0x10 /* segment */
.code32
pm_code:
- /* Disable IA-32e mode by cl...
2015 Aug 04
13
[PATCH] efi: leaving long mode in kernel_jump routine
...w.
- */
- mov $0x1000000000, %rcx
- addq %rcx, %rdi
- pushq %rdi
+ /* save the content of rsi (boot_param argument of kernel_jump
function) */
+ mov %rsi, %rbx
+
+ call base_address
+base_address:
+ pop %rsi
+
+ /* need to perform a long jump to update cs
+
+ /* load absolute address of pm_code in jmp_address location */
+ lea (pm_code - base_address)(%rsi, 1), %rax
+ mov %eax, (jmp_address - base_address)(%rsi, 1)
+
+ ljmp *(jmp_address - base_address)(%rsi, 1)
+
+jmp_address:
+ .long 0 /* address */
+ .word 0x10 /* segment */
.code32
pm_code:
- /* Disable IA-32e mode by clearing IA32_EFER.LME...
2015 Sep 11
2
[PATCH 1/1] efi/x86_64: fix trivial compilation warning
...S b/efi/x86_64/linux.S
index 972c0b2..29dde94 100644
--- a/efi/x86_64/linux.S
+++ b/efi/x86_64/linux.S
@@ -27,7 +27,7 @@ kernel_jump:
base_address:
pop %rsi
- /* need to perform a long jump to update cs
+ /* need to perform a long jump to update cs */
/* load absolute address of pm_code in jmp_address location */
lea (pm_code - base_address)(%rsi, 1), %rax
--
2.5.1
2015 Sep 11
0
[PATCH 1/1] efi/x86_64: fix trivial compilation warning
...44
> --- a/efi/x86_64/linux.S
> +++ b/efi/x86_64/linux.S
> @@ -27,7 +27,7 @@ kernel_jump:
> base_address:
> pop %rsi
>
> - /* need to perform a long jump to update cs
> + /* need to perform a long jump to update cs */
>
> /* load absolute address of pm_code in jmp_address location
> */ lea (pm_code - base_address)(%rsi, 1), %rax
--
Paulo Alcantara, C.E.S.A.R
Speaking for myself only.