diff options
Diffstat (limited to 'cortex-m-rt/examples/qemu.rs')
-rw-r--r-- | cortex-m-rt/examples/qemu.rs | 19 |
1 files changed, 15 insertions, 4 deletions
diff --git a/cortex-m-rt/examples/qemu.rs b/cortex-m-rt/examples/qemu.rs index e2cd895..7553e70 100644 --- a/cortex-m-rt/examples/qemu.rs +++ b/cortex-m-rt/examples/qemu.rs @@ -2,18 +2,22 @@ #![no_main] #![no_std] -extern crate cortex_m; +extern crate cortex_m; extern crate cortex_m_rt as rt; + +#[cfg(not(armv8m))] extern crate cortex_m_semihosting as semihosting; + extern crate panic_halt; -use core::fmt::Write; use cortex_m::asm; use rt::entry; +#[cfg(not(armv8m))] #[entry] fn main() -> ! { + use core::fmt::Write; let x = 42; loop { @@ -21,9 +25,16 @@ fn main() -> ! { // write something through semihosting interface let mut hstdout = semihosting::hio::hstdout().unwrap(); - write!(hstdout, "x = {}\n", x); - + write!(hstdout, "x = {}\n", x).unwrap(); // exit from qemu semihosting::debug::exit(semihosting::debug::EXIT_SUCCESS); } } + +#[cfg(armv8m)] +#[entry] +fn main() -> ! { + loop { + asm::nop(); + } +} |