Fix FS and GS handling

This commit is contained in:
ssvine
2025-12-30 15:19:05 +03:00
parent 57ad277158
commit f25ee26c36
7 changed files with 93 additions and 53 deletions

View File

@@ -35,6 +35,7 @@ struct x86_emulator : arch_emulator<Traits>
using pointer_type = typename Traits::pointer_type;
virtual void set_segment_base(register_type base, pointer_type value) = 0;
virtual pointer_type get_segment_base(register_type base) = 0;
virtual void load_gdt(pointer_type address, uint32_t limit) = 0;
};

View File

@@ -16,10 +16,11 @@ enum class instruction_hook_continuation : bool
skip_instruction = true,
};
enum class memory_violation_continuation : bool
enum class memory_violation_continuation : uint8_t
{
stop = false,
resume = true,
stop,
resume,
restart,
};
enum class memory_violation_type : uint8_t