From 86a76b0825c200ebedd7a5914154a94ad16fa662 Mon Sep 17 00:00:00 2001 From: David Li Date: Thu, 14 Jan 2016 18:06:53 -0700 Subject: Properly check for write traps --- src/shareable_cache.rs | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src') diff --git a/src/shareable_cache.rs b/src/shareable_cache.rs index a4c993b..f6c76f6 100644 --- a/src/shareable_cache.rs +++ b/src/shareable_cache.rs @@ -54,6 +54,8 @@ macro_rules! check_traps { let mut num_traps_hit = 0; let iter = old_bytes.iter() + // Skip {offset} bytes + .skip(($address.0 & 0x3) as usize) .take(new_bytes.len()) .enumerate(); for (offset, old) in iter { @@ -72,6 +74,7 @@ macro_rules! check_traps { } if num_traps_hit > 0 { + println!("Checking for traps: {:?} vs {:?}", old_bytes, new_bytes); info!("[memory] core {}: {} write trap(s) hit at address {:x},\ stalling for 1_000_000 cycles each", $core_id, num_traps_hit, $address); -- cgit v1.2.3