File tree 2 files changed +8
-4
lines changed
2 files changed +8
-4
lines changed Original file line number Diff line number Diff line change @@ -313,6 +313,9 @@ impl<T: Numeric> Atomic<T> {
313
313
state. stores [ index] . value = T :: into_u64 ( self . 0 ) ;
314
314
315
315
if !std:: thread:: panicking ( ) {
316
+ state
317
+ . unsync_mut_locations
318
+ . track ( location ! ( ) , & execution. threads ) ;
316
319
state. track_unsync_mut ( & execution. threads ) ;
317
320
}
318
321
} ) ;
@@ -358,6 +361,7 @@ impl State {
358
361
} ;
359
362
360
363
// All subsequent accesses must happen-after.
364
+ state. unsync_mut_locations . track ( location, & threads) ;
361
365
state. track_unsync_mut ( threads) ;
362
366
363
367
// Store the initial thread
Original file line number Diff line number Diff line change
1
+ #[ macro_use]
2
+ mod location;
3
+ pub ( crate ) use self :: location:: Location ;
4
+
1
5
mod access;
2
6
use self :: access:: Access ;
3
7
@@ -10,10 +14,6 @@ pub(crate) use self::arc::Arc;
10
14
mod atomic;
11
15
pub ( crate ) use self :: atomic:: { fence, Atomic } ;
12
16
13
- #[ macro_use]
14
- mod location;
15
- pub ( crate ) use self :: location:: Location ;
16
-
17
17
mod cell;
18
18
pub ( crate ) use self :: cell:: Cell ;
19
19
You can’t perform that action at this time.
0 commit comments