Rollup merge of #97026 - Nilstrieb:make-atomic-debug-relaxed, r=scottmcm

Change orderings of `Debug` for the Atomic types to `Relaxed`.

This reduces synchronization between threads when debugging the atomic types.  Reducing the synchronization means that executions with and without the debug calls will be more consistent, making it easier to debug.

We discussed this on the Rust Community Discord with `@ibraheemdev` before.
This commit is contained in:
Dylan DPC 2022-05-25 07:31:42 +02:00 committed by GitHub
commit fbb17777fe
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1517,7 +1517,7 @@ macro_rules! atomic_int {
#[$stable_debug]
impl fmt::Debug for $atomic_type {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
fmt::Debug::fmt(&self.load(Ordering::SeqCst), f)
fmt::Debug::fmt(&self.load(Ordering::Relaxed), f)
}
}
@ -2996,7 +2996,7 @@ pub fn compiler_fence(order: Ordering) {
#[stable(feature = "atomic_debug", since = "1.3.0")]
impl fmt::Debug for AtomicBool {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
fmt::Debug::fmt(&self.load(Ordering::SeqCst), f)
fmt::Debug::fmt(&self.load(Ordering::Relaxed), f)
}
}
@ -3004,7 +3004,7 @@ impl fmt::Debug for AtomicBool {
#[stable(feature = "atomic_debug", since = "1.3.0")]
impl<T> fmt::Debug for AtomicPtr<T> {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
fmt::Debug::fmt(&self.load(Ordering::SeqCst), f)
fmt::Debug::fmt(&self.load(Ordering::Relaxed), f)
}
}