diff options
| author | Matteo Gmür <matteo.gmuer1@ost.ch> | 2025-03-28 09:59:09 +0000 |
|---|---|---|
| committer | Matteo Gmür <matteo.gmuer1@ost.ch> | 2025-03-28 09:59:09 +0000 |
| commit | e0eae9b9e905a1842b333823bfdb7c253cda8d1e (patch) | |
| tree | bf02711f9d3e0424dccef4dc1299b5a70c9f839a /arch/x86_64/src/kernel | |
| parent | 9ddfcd02413a93718e8cde53f9ba5a96a5b29b8f (diff) | |
| download | teachos-e0eae9b9e905a1842b333823bfdb7c253cda8d1e.tar.xz teachos-e0eae9b9e905a1842b333823bfdb7c253cda8d1e.zip | |
Revert "update long jump handling"
This reverts commit 9ddfcd02413a93718e8cde53f9ba5a96a5b29b8f.
Diffstat (limited to 'arch/x86_64/src/kernel')
| -rw-r--r-- | arch/x86_64/src/kernel/cpu/jmp.cpp | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/arch/x86_64/src/kernel/cpu/jmp.cpp b/arch/x86_64/src/kernel/cpu/jmp.cpp index 78b65f4..205c4a9 100644 --- a/arch/x86_64/src/kernel/cpu/jmp.cpp +++ b/arch/x86_64/src/kernel/cpu/jmp.cpp @@ -7,10 +7,8 @@ namespace teachos::arch::kernel::cpu asm volatile("jmp *%[input]" : /* no output from call */ : [input] "r"(address)); } - // auto jmp(far_pointer pointer) -> void - // { - // asm volatile("ljmp $[segment_selector],$[address]" - // : /* no output from call */ - // : [segment_selector] "m"(pointer.selector), [address] "m"(pointer.offset)); - // } + auto jmp(far_pointer pointer) -> void + { + asm volatile("jmp *%[input]" : /* no output from call */ : [input] "m"(pointer)); + } } // namespace teachos::arch::kernel::cpu |
