From a5f08ad436ee3154b839953974765d0d781030f7 Mon Sep 17 00:00:00 2001 From: Emil Kitti <emil.kitti@outlook.com> Date: Fri, 26 Jan 2018 19:46:35 +0100 Subject: [PATCH] bare0_5 --- examples/bare0.rs | 24 ++++++++++++++++++------ 1 file changed, 18 insertions(+), 6 deletions(-) diff --git a/examples/bare0.rs b/examples/bare0.rs index 075a762..1749032 100644 --- a/examples/bare0.rs +++ b/examples/bare0.rs @@ -18,17 +18,29 @@ static mut Y: u32 = 0; #[inline(never)] fn main() { - let mut x = unsafe { X }; + let mut x = read_x(); loop { x = x.wrapping_add(1); - unsafe { - X = X.wrapping_add(1); - Y = X; - assert!(x == X && X == Y + 1); - } + write_x(read_x().wrapping_add(1)); + write_y(read_x()); } } + +fn write_y(y: u32) { + unsafe { + Y = y; + } +} +fn read_x() -> u32 { + unsafe { X } +} +fn write_x(x: u32) { + unsafe { + X = x; + } +} + // 1. run the program in the debugger, // let the program run for a while and then press pause // look in the (Local -vscode) Variables view what do you find -- GitLab