Upgrade futures-core to 0.3.26 am: d449045c31

Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/futures-core/+/2438291

Change-Id: Ic9dc6df5782b3fd4dc92c8c03925a872def0bc74
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/.cargo_vcs_info.json b/.cargo_vcs_info.json
index e178fd2..2de4b01 100644
--- a/.cargo_vcs_info.json
+++ b/.cargo_vcs_info.json
@@ -1,6 +1,6 @@
 {
   "git": {
-    "sha1": "77d82198c5afd04af3e760a6aa50b7e875289fc3"
+    "sha1": "5e3693a350f96244151081d2c030208cd15f9572"
   },
   "path_in_vcs": "futures-core"
 }
\ No newline at end of file
diff --git a/Android.bp b/Android.bp
index 5a1f3eb..08820ef 100644
--- a/Android.bp
+++ b/Android.bp
@@ -42,7 +42,7 @@
     host_supported: true,
     crate_name: "futures_core",
     cargo_env_compat: true,
-    cargo_pkg_version: "0.3.25",
+    cargo_pkg_version: "0.3.26",
     srcs: ["src/lib.rs"],
     edition: "2018",
     features: [
diff --git a/Cargo.toml b/Cargo.toml
index 7a88a12..62fb265 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -13,7 +13,7 @@
 edition = "2018"
 rust-version = "1.36"
 name = "futures-core"
-version = "0.3.25"
+version = "0.3.26"
 description = """
 The core traits and types in for the `futures` library.
 """
@@ -29,7 +29,10 @@
     "docsrs",
 ]
 
-[dependencies]
+[dependencies.portable-atomic]
+version = "1"
+optional = true
+default-features = false
 
 [dev-dependencies]
 
diff --git a/Cargo.toml.orig b/Cargo.toml.orig
index f80c1a4..5b78edc 100644
--- a/Cargo.toml.orig
+++ b/Cargo.toml.orig
@@ -1,6 +1,6 @@
 [package]
 name = "futures-core"
-version = "0.3.25"
+version = "0.3.26"
 edition = "2018"
 rust-version = "1.36"
 license = "MIT OR Apache-2.0"
@@ -21,6 +21,7 @@
 cfg-target-has-atomic = []
 
 [dependencies]
+portable-atomic = { version = "1", default-features = false, optional = true }
 
 [dev-dependencies]
 futures = { path = "../futures" }
diff --git a/METADATA b/METADATA
index 4f241b8..08f69f6 100644
--- a/METADATA
+++ b/METADATA
@@ -11,13 +11,13 @@
   }
   url {
     type: ARCHIVE
-    value: "https://static.crates.io/crates/futures-core/futures-core-0.3.25.crate"
+    value: "https://static.crates.io/crates/futures-core/futures-core-0.3.26.crate"
   }
-  version: "0.3.25"
+  version: "0.3.26"
   license_type: NOTICE
   last_upgrade_date {
-    year: 2022
-    month: 12
-    day: 12
+    year: 2023
+    month: 2
+    day: 15
   }
 }
diff --git a/src/task/__internal/atomic_waker.rs b/src/task/__internal/atomic_waker.rs
index d49d043..0677e83 100644
--- a/src/task/__internal/atomic_waker.rs
+++ b/src/task/__internal/atomic_waker.rs
@@ -1,9 +1,16 @@
 use core::cell::UnsafeCell;
 use core::fmt;
-use core::sync::atomic::AtomicUsize;
-use core::sync::atomic::Ordering::{AcqRel, Acquire, Release};
 use core::task::Waker;
 
+use atomic::AtomicUsize;
+use atomic::Ordering::{AcqRel, Acquire, Release};
+
+#[cfg(feature = "portable-atomic")]
+use portable_atomic as atomic;
+
+#[cfg(not(feature = "portable-atomic"))]
+use core::sync::atomic;
+
 /// A synchronization primitive for task wakeup.
 ///
 /// Sometimes the task interested in a given event will change over time.