summaryrefslogtreecommitdiffhomepage
path: root/Private/HALKit/AMD64/PlatformAMD64.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Private/HALKit/AMD64/PlatformAMD64.cpp')
-rw-r--r--Private/HALKit/AMD64/PlatformAMD64.cpp61
1 files changed, 25 insertions, 36 deletions
diff --git a/Private/HALKit/AMD64/PlatformAMD64.cpp b/Private/HALKit/AMD64/PlatformAMD64.cpp
index 0bade8dc..3005cc07 100644
--- a/Private/HALKit/AMD64/PlatformAMD64.cpp
+++ b/Private/HALKit/AMD64/PlatformAMD64.cpp
@@ -9,50 +9,39 @@
#include <ArchKit/Arch.hpp>
-namespace hCore::HAL
-{
-namespace Detail
-{
-struct RegisterAMD64 final
-{
- UIntPtr base;
- UShort limit;
+namespace hCore::HAL {
+namespace Detail {
+struct RegisterAMD64 final {
+ UIntPtr base;
+ UShort limit;
};
-} // namespace Detail
+} // namespace Detail
-void GDTLoader::Load(Register64 &gdt)
-{
- Detail::RegisterAMD64 *reg = new Detail::RegisterAMD64();
- MUST_PASS(reg);
+void GDTLoader::Load(Register64 &gdt) {
+ Detail::RegisterAMD64 *reg = new Detail::RegisterAMD64();
+ MUST_PASS(reg);
- reg->base = gdt.Base;
- reg->limit = gdt.Limit;
+ reg->base = gdt.Base;
+ reg->limit = gdt.Limit;
- rt_cli();
- load_gdt(reg);
- rt_sti();
+ rt_cli();
+ load_gdt(reg);
+ rt_sti();
}
-void IDTLoader::Load(Register64 &idt)
-{
- Detail::RegisterAMD64 *reg = new Detail::RegisterAMD64();
- MUST_PASS(reg);
+void IDTLoader::Load(Register64 &idt) {
+ Detail::RegisterAMD64 *reg = new Detail::RegisterAMD64();
+ MUST_PASS(reg);
- reg->base = idt.Base;
- reg->limit = idt.Limit;
+ reg->base = idt.Base;
+ reg->limit = idt.Limit;
- rt_cli();
- load_idt(reg);
- rt_sti();
+ rt_cli();
+ load_idt(reg);
+ rt_sti();
}
-void GDTLoader::Load(Ref<Register64> &gdt)
-{
- GDTLoader::Load(gdt.Leak());
-}
+void GDTLoader::Load(Ref<Register64> &gdt) { GDTLoader::Load(gdt.Leak()); }
-void IDTLoader::Load(Ref<Register64> &idt)
-{
- IDTLoader::Load(idt.Leak());
-}
-} // namespace hCore::HAL
+void IDTLoader::Load(Ref<Register64> &idt) { IDTLoader::Load(idt.Leak()); }
+} // namespace hCore::HAL