204 explicit Flags(uint64_t& flags,
bool* modified);
212 inline
void set_modified() {
213 if (modified_ !=
nullptr)
219 bool* modified_ =
nullptr;
Handler for the x86 EFLAGS/RFLAGS register.
Definition Flags.hh:26
Flags(uint64_t flags)
Construct a new Flags instances.
uint64_t value() const
Get the raw flags value.
bool resume() const
Get the RF (Resume flag) bit.
bool virtual_interrupt_pending() const
Get the VIP (Virtual-interrupt pending flag) bit.
bool adjust() const
Get the AF (Adjust flag) bit.
bool overflow() const
Get the OF (Overflow flag) bit.
bool sign() const
Get the SF (Sign flag) bit.
int8_t iopl() const
Get the IOPL (I/O privilege level) bits.
Flags & operator=(const Flags &)=delete
Flags & operator=(Flags &&) noexcept=default
bool cpuid() const
Get the ID (CPUID) bit.
Flags()
Construct a new Flags instance (default)
void interrupt(bool val)
Set the IF (interrupt flag) flag.
bool direction() const
Get the DF (Direction flag) bit.
bool zero() const
Get the ZF (Zero flag) bit.
bool interrupt() const
Get the IF (interrupt flag) bit.
bool trap() const
Get the TF (Trap flag) bit.
bool virtual_interrupt() const
Get the VIF (Virtual-interrupt flag) bit.
bool carry() const
Get the CF (Carry flag) bit.
void value(uint64_t value)
Set the raw flags value.
Flags(const Flags &src)=delete
bool alignment_check() const
Get the AC (Aligment-check) bit.
bool virtual_8086() const
Get the VM (Virtual 8086 mode) bit.
Flags(uint64_t &flags, bool *modified)
Construct a new Flags instances using a reference variable.
bool nested_task() const
Get the NT (Nested-task flag) bit.
bool parity() const
Get the PF (Parity flag) bit.
Core IntroVirt classes.
Definition Cr0.hh:20