diff --git a/examples/bare1.rs b/examples/bare1.rs index 76c253018837e3bb2e0cac22e0aa7d7c6c3ab5ed..80dd8e8edd0b246e0733d93a5fc8b62a0a3c94bc 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; } @@ -68,7 +68,33 @@ fn main() -> ! { // // What is the output of: // (gdb) disassemble -// +// +// Dump of assembler code for function Reset: +// => 0x08000616 <+0>: bl 0x8000686 <DefaultPreInit> +// 0x0800061a <+4>: b.n 0x800061c <Reset+6> +// 0x0800061c <+6>: movw r0, #0 +// 0x08000620 <+10>: movt r0, #8192 ; 0x2000 +// 0x08000624 <+14>: movw r1, #0 +// 0x08000628 <+18>: movt r1, #8192 ; 0x2000 +// 0x0800062c <+22>: bl 0x8000688 <r0::zero_bss> +// 0x08000630 <+26>: b.n 0x8000632 <Reset+28> +// 0x08000632 <+28>: movw r0, #0 +// 0x08000636 <+32>: movt r0, #8192 ; 0x2000 +// 0x0800063a <+36>: movw r1, #0 +// 0x0800063e <+40>: movt r1, #8192 ; 0x2000 +// 0x08000642 <+44>: movw r2, #2580 ; 0xa14 +// 0x08000646 <+48>: movt r2, #2048 ; 0x800 +// 0x0800064a <+52>: bl 0x80006d0 <r0::init_data> +// 0x0800064e <+56>: b.n 0x8000650 <Reset+58> +// 0x08000650 <+58>: movw r0, #60808 ; 0xed88 +// 0x08000654 <+62>: movt r0, #57344 ; 0xe000 +// 0x08000658 <+66>: ldr r1, [r0, #0] +// 0x0800065a <+68>: orr.w r1, r1, #15728640 ; 0xf00000 +// 0x0800065e <+72>: bl 0x800074a <core::ptr::write_volatile> +// 0x08000662 <+76>: b.n 0x8000664 <Reset+78> +// 0x08000664 <+78>: bl 0x800066a <ResetTrampoline> +// 0x08000668 <+82>: udf #254 ; 0xfe +// End of assembler dump. // // Commit your answers (bare1_2) //