diff options
author | 2020-04-24 13:53:11 -0700 | |
---|---|---|
committer | 2020-04-24 13:53:11 -0700 | |
commit | 7dfc9751ee1c13a863074fe693fb01c8716ab5c3 (patch) | |
tree | 449ce71f8605179d08e23e566d7a7677afa229e6 /src/segmentation.rs | |
parent | 5230e09a05b44ae9993d1e1c72be9abf0f689428 (diff) | |
download | rust-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.rs | 22 |
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) } |