From b9dd088dc16ce0b56540e8a153d01e563dc9267b Mon Sep 17 00:00:00 2001 From: Philipp Oppermann Date: Fri, 25 Jan 2019 13:51:39 +0100 Subject: [PATCH] Create test-exception-breakpoint integration test --- src/bin/test-exception-breakpoint.rs | 34 ++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) create mode 100644 src/bin/test-exception-breakpoint.rs diff --git a/src/bin/test-exception-breakpoint.rs b/src/bin/test-exception-breakpoint.rs new file mode 100644 index 00000000..c6bf114a --- /dev/null +++ b/src/bin/test-exception-breakpoint.rs @@ -0,0 +1,34 @@ +#![no_std] +#![cfg_attr(not(test), no_main)] +#![cfg_attr(test, allow(dead_code, unused_macros, unused_imports))] + +use blog_os::{exit_qemu, serial_println}; +use core::panic::PanicInfo; + +#[cfg(not(test))] +#[no_mangle] +pub extern "C" fn _start() -> ! { + blog_os::interrupts::init_idt(); + + x86_64::instructions::int3(); + + serial_println!("ok"); + + unsafe { + exit_qemu(); + } + loop {} +} + +#[cfg(not(test))] +#[panic_handler] +fn panic(info: &PanicInfo) -> ! { + serial_println!("failed"); + + serial_println!("{}", info); + + unsafe { + exit_qemu(); + } + loop {} +}