@@ -320,35 +320,30 @@ impl<'mir, 'tcx: 'mir> StoreBuffer {
320320 // CoWR: if a store happens-before the current load,
321321 // then we can't read-from anything earlier in modification order.
322322 // C++20 §6.9.2.2 [intro.races] paragraph 18
323- log:: info!( "Stopping due to coherent write-read" ) ;
324323 false
325324 } else if store_elem. loads . borrow ( ) . iter ( ) . any ( |( & load_index, & load_timestamp) | {
326325 load_timestamp <= clocks. clock [ load_index]
327326 } ) {
328327 // CoRR: if there was a load from this store which happened-before the current load,
329328 // then we cannot read-from anything earlier in modification order.
330329 // C++20 §6.9.2.2 [intro.races] paragraph 16
331- log:: info!( "Stopping due to coherent read-read" ) ;
332330 false
333331 } else if store_elem. timestamp <= clocks. fence_seqcst [ store_elem. store_index ] {
334332 // The current load, which may be sequenced-after an SC fence, cannot read-before
335333 // the last store sequenced-before an SC fence in another thread.
336334 // C++17 §32.4 [atomics.order] paragraph 6
337- log:: info!( "Stopping due to coherent load sequenced after sc fence" ) ;
338335 false
339336 } else if store_elem. timestamp <= clocks. write_seqcst [ store_elem. store_index ]
340337 && store_elem. is_seqcst
341338 {
342339 // The current non-SC load, which may be sequenced-after an SC fence,
343340 // cannot read-before the last SC store executed before the fence.
344341 // C++17 §32.4 [atomics.order] paragraph 4
345- log:: info!( "Stopping due to needing to load from the last SC store" ) ;
346342 false
347343 } else if is_seqcst && store_elem. timestamp <= clocks. read_seqcst [ store_elem. store_index ] {
348344 // The current SC load cannot read-before the last store sequenced-before
349345 // the last SC fence.
350346 // C++17 §32.4 [atomics.order] paragraph 5
351- log:: info!( "Stopping due to sc load needing to load from the last SC store before an SC fence" ) ;
352347 false
353348 } else { true } ;
354349
0 commit comments