From 06d692febdba7ad9627d23f53aa302488268f2c4 Mon Sep 17 00:00:00 2001 From: Stefan Lankes Date: Sun, 17 May 2020 23:49:18 +0200 Subject: [PATCH 1/2] use new interface to initialize Condvar HermitCore introduce a new interface to intialize conditional variables. Consequently, minor changes are required to support this interface. --- Cargo.lock | 4 ++-- src/libstd/Cargo.toml | 2 +- src/libstd/sys/hermit/condvar.rs | 8 ++++---- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index d6357823a37..22baa79dc62 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1439,9 +1439,9 @@ dependencies = [ [[package]] name = "hermit-abi" -version = "0.1.12" +version = "0.1.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "61565ff7aaace3525556587bd2dc31d4a07071957be715e63ce7b1eccf51a8f4" +checksum = "91780f809e750b0a89f5544be56617ff6b1227ee485bcb06ebe10cdf89bd3b71" dependencies = [ "compiler_builtins", "libc", diff --git a/src/libstd/Cargo.toml b/src/libstd/Cargo.toml index 923d5fa8cac..077ca2a2faa 100644 --- a/src/libstd/Cargo.toml +++ b/src/libstd/Cargo.toml @@ -41,7 +41,7 @@ dlmalloc = { version = "0.1", features = ['rustc-dep-of-std'] } fortanix-sgx-abi = { version = "0.3.2", features = ['rustc-dep-of-std'] } [target.'cfg(all(any(target_arch = "x86_64", target_arch = "aarch64"), target_os = "hermit"))'.dependencies] -hermit-abi = { version = "0.1.12", features = ['rustc-dep-of-std'] } +hermit-abi = { version = "0.1.13", features = ['rustc-dep-of-std'] } [target.wasm32-wasi.dependencies] wasi = { version = "0.9.0", features = ['rustc-dep-of-std'], default-features = false } diff --git a/src/libstd/sys/hermit/condvar.rs b/src/libstd/sys/hermit/condvar.rs index 5b7f16ce562..ce4f2f2590a 100644 --- a/src/libstd/sys/hermit/condvar.rs +++ b/src/libstd/sys/hermit/condvar.rs @@ -9,12 +9,13 @@ pub struct Condvar { impl Condvar { pub const fn new() -> Condvar { - Condvar { identifier: 0 } + Condvar { + identifier: 0, + } } - #[inline] pub unsafe fn init(&mut self) { - // nothing to do + let _ = abi::init_queue(self.id()); } pub unsafe fn notify_one(&self) { @@ -50,7 +51,6 @@ impl Condvar { ret } - #[inline] pub unsafe fn destroy(&self) { let _ = abi::destroy_queue(self.id()); } From 3f47d9d2e6195babf10b4063deb504a00aa5d249 Mon Sep 17 00:00:00 2001 From: Stefan Lankes Date: Mon, 18 May 2020 00:06:32 +0200 Subject: [PATCH 2/2] minor changes to pass the format check --- src/libstd/sys/hermit/condvar.rs | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/libstd/sys/hermit/condvar.rs b/src/libstd/sys/hermit/condvar.rs index ce4f2f2590a..94e3275448a 100644 --- a/src/libstd/sys/hermit/condvar.rs +++ b/src/libstd/sys/hermit/condvar.rs @@ -9,9 +9,7 @@ pub struct Condvar { impl Condvar { pub const fn new() -> Condvar { - Condvar { - identifier: 0, - } + Condvar { identifier: 0 } } pub unsafe fn init(&mut self) {