aboutsummaryrefslogtreecommitdiff
path: root/src/bits64/rflags.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/bits64/rflags.rs')
-rw-r--r--src/bits64/rflags.rs2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/bits64/rflags.rs b/src/bits64/rflags.rs
index 69e85ee..937d3d3 100644
--- a/src/bits64/rflags.rs
+++ b/src/bits64/rflags.rs
@@ -67,12 +67,14 @@ impl RFlags {
}
}
+#[cfg(target_arch="x86-64")]
pub unsafe fn flags() -> RFlags {
let r: u64;
asm!("pushfq; popq $0" : "=r"(r) :: "memory");
RFlags::from_bits_truncate(r)
}
+#[cfg(target_arch="x86-64")]
pub unsafe fn set(val: RFlags) {
asm!("pushq $0; popfq" :: "r"(val.bits()) : "memory" "flags");
}