diff options
author | 2018-04-20 13:09:28 -0700 | |
---|---|---|
committer | 2018-04-20 13:09:28 -0700 | |
commit | 07a1d19da3bc23f171f3f140b0d274851dfc0e20 (patch) | |
tree | 6c97a1f6fed87ca88a460c631b3aa706db5f62e8 /src/bits64/segmentation.rs | |
parent | a392747da8e3792da6bb74327142d17a5dece265 (diff) | |
download | rust-x86-07a1d19da3bc23f171f3f140b0d274851dfc0e20.tar.gz rust-x86-07a1d19da3bc23f171f3f140b0d274851dfc0e20.tar.zst rust-x86-07a1d19da3bc23f171f3f140b0d274851dfc0e20.zip |
Make sure 32bit version compiles again.
Signed-off-by: Gerd Zellweger <mail@gerdzellweger.com>
Diffstat (limited to 'src/bits64/segmentation.rs')
-rw-r--r-- | src/bits64/segmentation.rs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/src/bits64/segmentation.rs b/src/bits64/segmentation.rs index 93ac2aa..4c440e9 100644 --- a/src/bits64/segmentation.rs +++ b/src/bits64/segmentation.rs @@ -10,6 +10,7 @@ use bits64::task::*; /// to %cs. Instead we push the new segment selector /// and return value on the stack and use lretq /// to reload cs and continue at 1:. +#[cfg(target_arch="x86-64")] pub unsafe fn set_cs(sel: SegmentSelector) { asm!("pushq $0; \ leaq 1f(%rip), %rax; \ @@ -33,7 +34,7 @@ impl SegmentBitness { } impl SegmentDescriptor { - pub fn new_memory(base: u32, limit: u32, ty: Type, accessed: bool, dpl: PrivilegeLevel, bitness: SegmentBitness) -> SegmentDescriptor { + pub fn new_memory64(base: u32, limit: u32, ty: Type, accessed: bool, dpl: PrivilegeLevel, bitness: SegmentBitness) -> SegmentDescriptor { let ty1 = descriptor::Type::SegmentDescriptor { ty: ty, accessed: accessed, @@ -43,7 +44,7 @@ impl SegmentDescriptor { seg } - pub fn new_tss(tss: &TaskStateSegment, dpl: PrivilegeLevel) -> [SegmentDescriptor; 2] { + pub fn new_tss64(tss: &TaskStateSegment, dpl: PrivilegeLevel) -> [SegmentDescriptor; 2] { let tss_ptr = tss as *const TaskStateSegment; let ty1 = descriptor::Type::SystemDescriptor { size: true, |