--- a/src/request_id.rs
+++ b/src/request_id.rs
@@ -492,3 +492,3 @@
         sync::{
-            atomic::{AtomicU64, Ordering},
+            atomic::Ordering,
             Arc,
@@ -496,2 +496,4 @@
     };
+    #[cfg(target_has_atomic = "64")]
+    use std::sync::atomic::AtomicU64;
     use tower::{ServiceBuilder, ServiceExt};
@@ -503,2 +505,3 @@
     #[cfg(feature = "util")]
+    #[cfg(target_has_atomic = "64")]
     async fn basic() {
@@ -533,2 +536,3 @@
     #[tokio::test]
+    #[cfg(target_has_atomic = "64")]
     async fn other_middleware_setting_request_id() {
@@ -561,2 +565,3 @@
     #[tokio::test]
+    #[cfg(target_has_atomic = "64")]
     async fn other_middleware_setting_request_id_on_response() {
@@ -581,4 +586,6 @@
     #[derive(Clone, Default)]
+    #[cfg(target_has_atomic = "64")]
     struct Counter(Arc<AtomicU64>);
 
+    #[cfg(target_has_atomic = "64")]
     impl MakeRequestId for Counter {
