Skip to content

Commit 8e80158

Browse files
committed
Export asm! macro where necessary
It has been removed from the prelude during stabilization. See rust-lang/rust#87228
1 parent 75024f9 commit 8e80158

File tree

17 files changed

+23
-4
lines changed

17 files changed

+23
-4
lines changed

boot/amd64/src/cpuid.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
use core::arch::asm;
2+
13
pub struct Features {
24
max_basic_eax: u32,
35
max_extended_eax: u32,

boot/amd64/src/gdt.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
use core::arch::asm;
12
use core::mem;
23

34
#[repr(C)]

boot/amd64/src/main.rs

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
#![no_main]
22
#![no_std]
3-
#![feature(asm, asm_const)]
3+
#![feature(asm_const)]
44
#![feature(maybe_uninit_uninit_array, maybe_uninit_slice)]
55

66
mod cpuid;
@@ -13,6 +13,7 @@ mod multiboot2;
1313
mod paging;
1414
mod vga;
1515

16+
use core::arch::asm;
1617
use core::mem::MaybeUninit;
1718
use core::panic::PanicInfo;
1819
use core::slice;

boot/amd64/src/msr.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
use core::arch::asm;
2+
13
/// # Safety
24
///
35
/// MSRs must be supported.

kernel/src/arch/amd64/asm.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
11
pub mod io {
2+
use core::arch::asm;
3+
24
pub unsafe fn inb(address: u16) -> u8 {
35
let out: u8;
46
asm!("in al, dx", out("al") out, in("dx") address);

kernel/src/arch/amd64/gdt.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
use super::tss::TSS;
2+
use core::arch::asm;
23
use core::marker::PhantomData;
34
use core::mem;
45
use core::pin::Pin;

kernel/src/arch/amd64/idt.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
use core::arch::asm;
12
use core::mem;
23

34
#[macro_export]

kernel/src/arch/amd64/mod.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ mod tss;
99
pub mod r#virtual;
1010

1111
use crate::{driver::apic, power, scheduler, time::Monotonic};
12+
use core::arch::asm;
13+
use core::mem::MaybeUninit;
1214
pub use idt::{Handler, IDTEntry};
1315
pub use syscall::{current_process, current_thread, current_thread_weak, set_current_thread};
1416

15-
use core::mem::MaybeUninit;
16-
1717
static mut TSS: tss::TSS = tss::TSS::new();
1818
static mut TSS_STACK: [usize; 512] = [0; 512];
1919

kernel/src/arch/amd64/msr.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
use core::arch::asm;
2+
13
pub const IA32_APIC_BASE_MSR: u32 = 0x1b;
24
#[allow(dead_code)]
35
pub const IA32_APIC_BASE_MSR_BSP: u64 = 0x100;

kernel/src/arch/amd64/syscall.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ use alloc::{
66
boxed::Box,
77
sync::{Arc, Weak},
88
};
9+
use core::arch::asm;
910
use core::ptr::{self, NonNull};
1011

1112
pub unsafe fn init() {

0 commit comments

Comments
 (0)