@@ -9,7 +9,14 @@ use core::fmt;
99use std:: collections:: { HashMap , HashSet } ;
1010use std:: mem:: swap;
1111use std:: ops:: { Add , AddAssign , DerefMut , Sub } ;
12- use std:: sync:: atomic:: { AtomicBool , AtomicI64 , AtomicU64 , AtomicUsize , Ordering } ;
12+ use std:: sync:: atomic:: { Ordering } ;
13+
14+ #[ cfg( not( any( target_arch = "xtensa" ) ) ) ]
15+ use std:: sync:: atomic:: { AtomicBool , AtomicI64 , AtomicU64 , AtomicUsize } ;
16+
17+ #[ cfg( any( target_arch = "xtensa" ) ) ]
18+ use portable_atomic:: { AtomicBool , AtomicI64 , AtomicU64 , AtomicUsize } ;
19+
1320use std:: sync:: { Arc , OnceLock , RwLock } ;
1421
1522use aggregate:: { is_under_cardinality_limit, STREAM_CARDINALITY_LIMIT } ;
@@ -439,8 +446,8 @@ mod tests {
439446 #[ test]
440447 fn can_add_and_get_u64_atomic_value ( ) {
441448 let atomic = u64:: new_atomic_tracker ( 0 ) ;
442- atomic . add ( 15 ) ;
443- atomic . add ( 10 ) ;
449+ AtomicTracker :: add ( & atomic , 15 ) ;
450+ AtomicTracker :: add ( & atomic , 10 ) ;
444451
445452 let value = atomic. get_value ( ) ;
446453 assert_eq ! ( value, 25 ) ;
@@ -449,7 +456,7 @@ mod tests {
449456 #[ test]
450457 fn can_reset_u64_atomic_value ( ) {
451458 let atomic = u64:: new_atomic_tracker ( 0 ) ;
452- atomic . add ( 15 ) ;
459+ AtomicTracker :: add ( & atomic , 15 ) ;
453460
454461 let value = atomic. get_and_reset_value ( ) ;
455462 let value2 = atomic. get_value ( ) ;
@@ -478,8 +485,8 @@ mod tests {
478485 #[ test]
479486 fn can_add_and_get_i64_atomic_value ( ) {
480487 let atomic = i64:: new_atomic_tracker ( 0 ) ;
481- atomic . add ( 15 ) ;
482- atomic . add ( -10 ) ;
488+ AtomicTracker :: add ( & atomic , 15 ) ;
489+ AtomicTracker :: add ( & atomic , -10 ) ;
483490
484491 let value = atomic. get_value ( ) ;
485492 assert_eq ! ( value, 5 ) ;
@@ -488,7 +495,7 @@ mod tests {
488495 #[ test]
489496 fn can_reset_i64_atomic_value ( ) {
490497 let atomic = i64:: new_atomic_tracker ( 0 ) ;
491- atomic . add ( 15 ) ;
498+ AtomicTracker :: add ( & atomic , 15 ) ;
492499
493500 let value = atomic. get_and_reset_value ( ) ;
494501 let value2 = atomic. get_value ( ) ;
@@ -517,8 +524,8 @@ mod tests {
517524 #[ test]
518525 fn can_add_and_get_f64_atomic_value ( ) {
519526 let atomic = f64:: new_atomic_tracker ( 0.0 ) ;
520- atomic . add ( 15.3 ) ;
521- atomic . add ( 10.4 ) ;
527+ AtomicTracker :: add ( & atomic , 15.3 ) ;
528+ AtomicTracker :: add ( & atomic , 10.4 ) ;
522529
523530 let value = atomic. get_value ( ) ;
524531
@@ -528,7 +535,7 @@ mod tests {
528535 #[ test]
529536 fn can_reset_f64_atomic_value ( ) {
530537 let atomic = f64:: new_atomic_tracker ( 0.0 ) ;
531- atomic . add ( 15.5 ) ;
538+ AtomicTracker :: add ( & atomic , 15.5 ) ;
532539
533540 let value = atomic. get_and_reset_value ( ) ;
534541 let value2 = atomic. get_value ( ) ;
0 commit comments