diff --git a/examples/bare1.rs b/examples/bare1.rs index 2db199a217f20afc740eafe8a9c518759c320bda..3c6c445aa23b414a2bb88af6e8b40af6dd032693 100644 --- a/examples/bare1.rs +++ b/examples/bare1.rs @@ -24,7 +24,7 @@ fn main() -> ! { let mut _x = 0; loop { _x += 1; - cortex_m::asm::nop(); + // cortex_m::asm::nop(); cortex_m::asm::bkpt(); _x -= 1; } @@ -69,7 +69,32 @@ fn main() -> ! { // What is the output of: // (gdb) disassemble // -// ** your answer here ** +// Dump of assembler code for function Reset: +// => 0x0800061a <+0>: bl 0x800068a <DefaultPreInit> +// 0x0800061e <+4>: b.n 0x8000620 <Reset+6> +// 0x08000620 <+6>: movw r0, #0 +// 0x08000624 <+10>: movt r0, #8192 ; 0x2000 +// 0x08000628 <+14>: movw r1, #0 +// 0x0800062c <+18>: movt r1, #8192 ; 0x2000 +// 0x08000630 <+22>: bl 0x800068c <r0::zero_bss> +// 0x08000634 <+26>: b.n 0x8000636 <Reset+28> +// 0x08000636 <+28>: movw r0, #0 +// 0x0800063a <+32>: movt r0, #8192 ; 0x2000 +// 0x0800063e <+36>: movw r1, #0 +// 0x08000642 <+40>: movt r1, #8192 ; 0x2000 +// 0x08000646 <+44>: movw r2, #2580 ; 0xa14 +// 0x0800064a <+48>: movt r2, #2048 ; 0x800 +// 0x0800064e <+52>: bl 0x80006d4 <r0::init_data> +// 0x08000652 <+56>: b.n 0x8000654 <Reset+58> +// 0x08000654 <+58>: movw r0, #60808 ; 0xed88 +// 0x08000658 <+62>: movt r0, #57344 ; 0xe000 +// 0x0800065c <+66>: ldr r1, [r0, #0] +// 0x0800065e <+68>: orr.w r1, r1, #15728640 ; 0xf00000 +// 0x08000662 <+72>: bl 0x800074e <core::ptr::write_volatile> +// 0x08000666 <+76>: b.n 0x8000668 <Reset+78> +// 0x08000668 <+78>: bl 0x800066e <ResetTrampoline> +// 0x0800066c <+82>: udf #254 ; 0xfe +// End of assembler dump. // // Commit your answers (bare1_2) //