diff options
| author | Fabian Imhof <fabian.imhof@ost.ch> | 2025-03-27 14:02:05 +0000 |
|---|---|---|
| committer | Fabian Imhof <fabian.imhof@ost.ch> | 2025-03-27 14:02:05 +0000 |
| commit | 9ddfcd02413a93718e8cde53f9ba5a96a5b29b8f (patch) | |
| tree | a31e132e717c9acc68f2480e9d50d78b32711262 /arch/x86_64/src/kernel | |
| parent | a6c5f6a273d0c5c4161f600fca6d4fe49858c23c (diff) | |
| download | teachos-9ddfcd02413a93718e8cde53f9ba5a96a5b29b8f.tar.xz teachos-9ddfcd02413a93718e8cde53f9ba5a96a5b29b8f.zip | |
update long jump handling
Diffstat (limited to 'arch/x86_64/src/kernel')
| -rw-r--r-- | arch/x86_64/src/kernel/cpu/jmp.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/arch/x86_64/src/kernel/cpu/jmp.cpp b/arch/x86_64/src/kernel/cpu/jmp.cpp index 205c4a9..78b65f4 100644 --- a/arch/x86_64/src/kernel/cpu/jmp.cpp +++ b/arch/x86_64/src/kernel/cpu/jmp.cpp @@ -7,8 +7,10 @@ namespace teachos::arch::kernel::cpu asm volatile("jmp *%[input]" : /* no output from call */ : [input] "r"(address)); } - auto jmp(far_pointer pointer) -> void - { - asm volatile("jmp *%[input]" : /* no output from call */ : [input] "m"(pointer)); - } + // 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)); + // } } // namespace teachos::arch::kernel::cpu |
