diff options
| author | Jethro Beekman <jethro@fortanix.com> | 2019-02-06 22:28:45 +0530 |
|---|---|---|
| committer | Jethro Beekman <jethro@fortanix.com> | 2019-02-06 23:24:55 +0530 |
| commit | 0d2ab0b77dd82d192f987ab4e1645577eccd3562 (patch) | |
| tree | a774b680b8d2e703eee44c2af9ba6de634c180af /src/libstd/lib.rs | |
| parent | 4b1e39b7b36d677803e40130ea29ee6d300abf6e (diff) | |
| download | rust-0d2ab0b77dd82d192f987ab4e1645577eccd3562.tar.gz rust-0d2ab0b77dd82d192f987ab4e1645577eccd3562.zip | |
SGX target: simplify usercall internals
This moves logic from assembly to Rust and removes the special case for exit/panic handling, merging it with regular usercall handling. Also, this fixes a bug in the exit usercall introduced in a75ae00. The bug would make regular exits look like panics with high probability. It would also with some probability leak information through uncleared registers.
Diffstat (limited to 'src/libstd/lib.rs')
| -rw-r--r-- | src/libstd/lib.rs | 3 |
1 files changed, 0 insertions, 3 deletions
diff --git a/src/libstd/lib.rs b/src/libstd/lib.rs index 244caf28ec7..d1cf087c355 100644 --- a/src/libstd/lib.rs +++ b/src/libstd/lib.rs @@ -343,9 +343,6 @@ extern crate backtrace_sys; #[cfg(test)] extern crate std as realstd; #[cfg(all(target_vendor = "fortanix", target_env = "sgx"))] -#[macro_use] -#[allow(unused_imports)] // FIXME: without `#[macro_use]`, get error: “cannot - // determine resolution for the macro `usercalls_asm`” extern crate fortanix_sgx_abi; // The standard macros that are not built-in to the compiler. |
