aboutsummaryrefslogtreecommitdiff
path: root/src/segmentation.rs
diff options
context:
space:
mode:
authorGravatar Gerd Zellweger <mail@gerdzellweger.com> 2020-04-24 13:53:11 -0700
committerGravatar Gerd Zellweger <mail@gerdzellweger.com> 2020-04-24 13:53:11 -0700
commit7dfc9751ee1c13a863074fe693fb01c8716ab5c3 (patch)
tree449ce71f8605179d08e23e566d7a7677afa229e6 /src/segmentation.rs
parent5230e09a05b44ae9993d1e1c72be9abf0f689428 (diff)
downloadrust-x86-7dfc9751ee1c13a863074fe693fb01c8716ab5c3.tar.gz
rust-x86-7dfc9751ee1c13a863074fe693fb01c8716ab5c3.tar.zst
rust-x86-7dfc9751ee1c13a863074fe693fb01c8716ab5c3.zip
llvm_asm! instead of asm! to compile on nightly.
Diffstat (limited to 'src/segmentation.rs')
-rw-r--r--src/segmentation.rs22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/segmentation.rs b/src/segmentation.rs
index c58403e..878b643 100644
--- a/src/segmentation.rs
+++ b/src/segmentation.rs
@@ -554,27 +554,27 @@ impl Descriptor {
/// Reload stack segment register.
pub unsafe fn load_ss(sel: SegmentSelector) {
- asm!("movw $0, %ss " :: "r" (sel.bits()) : "memory");
+ llvm_asm!("movw $0, %ss " :: "r" (sel.bits()) : "memory");
}
/// Reload data segment register.
pub unsafe fn load_ds(sel: SegmentSelector) {
- asm!("movw $0, %ds " :: "r" (sel.bits()) : "memory");
+ llvm_asm!("movw $0, %ds " :: "r" (sel.bits()) : "memory");
}
/// Reload es segment register.
pub unsafe fn load_es(sel: SegmentSelector) {
- asm!("movw $0, %es " :: "r" (sel.bits()) : "memory");
+ llvm_asm!("movw $0, %es " :: "r" (sel.bits()) : "memory");
}
/// Reload fs segment register.
pub unsafe fn load_fs(sel: SegmentSelector) {
- asm!("movw $0, %fs " :: "r" (sel.bits()) : "memory");
+ llvm_asm!("movw $0, %fs " :: "r" (sel.bits()) : "memory");
}
/// Reload gs segment register.
pub unsafe fn load_gs(sel: SegmentSelector) {
- asm!("movw $0, %gs " :: "r" (sel.bits()) : "memory");
+ llvm_asm!("movw $0, %gs " :: "r" (sel.bits()) : "memory");
}
pub use crate::current::segmentation::load_cs;
@@ -582,42 +582,42 @@ pub use crate::current::segmentation::load_cs;
/// Returns the current value of the code segment register.
pub fn cs() -> SegmentSelector {
let segment: u16;
- unsafe { asm!("mov %cs, $0" : "=r" (segment) ) };
+ unsafe { llvm_asm!("mov %cs, $0" : "=r" (segment) ) };
SegmentSelector::from_raw(segment)
}
/// Returns the current value of the extra segment register.
pub fn es() -> SegmentSelector {
let segment: u16;
- unsafe { asm!("mov %es, $0" : "=r" (segment) ) };
+ unsafe { llvm_asm!("mov %es, $0" : "=r" (segment) ) };
SegmentSelector::from_raw(segment)
}
/// Returns the current value of the stack segment register.
pub fn ss() -> SegmentSelector {
let segment: u16;
- unsafe { asm!("mov %ss, $0" : "=r" (segment) ) };
+ unsafe { llvm_asm!("mov %ss, $0" : "=r" (segment) ) };
SegmentSelector::from_raw(segment)
}
/// Returns the current value of the data segment register.
pub fn ds() -> SegmentSelector {
let segment: u16;
- unsafe { asm!("mov %ds, $0" : "=r" (segment) ) };
+ unsafe { llvm_asm!("mov %ds, $0" : "=r" (segment) ) };
SegmentSelector::from_raw(segment)
}
/// Returns the current value of the FS segment register.
pub fn fs() -> SegmentSelector {
let segment: u16;
- unsafe { asm!("mov %fs, $0" : "=r" (segment) ) };
+ unsafe { llvm_asm!("mov %fs, $0" : "=r" (segment) ) };
SegmentSelector::from_raw(segment)
}
/// Returns the current value of the GS segment register.
pub fn gs() -> SegmentSelector {
let segment: u16;
- unsafe { asm!("mov %gs, $0" : "=r" (segment) ) };
+ unsafe { llvm_asm!("mov %gs, $0" : "=r" (segment) ) };
SegmentSelector::from_raw(segment)
}