diff options
| author | bors <bors@rust-lang.org> | 2019-10-25 20:41:28 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2019-10-25 20:41:28 +0000 |
| commit | 246be7e1a557b8ac8287c6842379a0db67770be6 (patch) | |
| tree | 6359f78c7c2bbf20c7e999fa95ddab93ba1a0ea7 /src/libstd | |
| parent | 23f890f10202a71168c6424da0cdf94135d3c40c (diff) | |
| parent | d40c6afba04c906907cb57157c0aec7e12519c94 (diff) | |
| download | rust-246be7e1a557b8ac8287c6842379a0db67770be6.tar.gz rust-246be7e1a557b8ac8287c6842379a0db67770be6.zip | |
Auto merge of #65826 - JohnTitor:rollup-mr6crka, r=JohnTitor
Rollup of 6 pull requests
Successful merges:
- #65705 (Add {String,Vec}::into_raw_parts)
- #65749 (Insurance policy in case `iter.size_hint()` lies.)
- #65799 (Fill tracking issue number for `array_value_iter`)
- #65800 (self-profiling: Update measureme to 0.4.0 and remove non-RAII methods from profiler.)
- #65806 (Add [T]::as_ptr_range() and [T]::as_mut_ptr_range().)
- #65810 (SGX: Clear additional flag on enclave entry)
Failed merges:
r? @ghost
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/sys/sgx/abi/entry.S | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/libstd/sys/sgx/abi/entry.S b/src/libstd/sys/sgx/abi/entry.S index c35e49b1dc6..cd26c7ca200 100644 --- a/src/libstd/sys/sgx/abi/entry.S +++ b/src/libstd/sys/sgx/abi/entry.S @@ -119,8 +119,14 @@ sgx_entry: mov %rbx,%gs:tcsls_tcs_addr stmxcsr %gs:tcsls_user_mxcsr fnstcw %gs:tcsls_user_fcw + /* reset user state */ - cld /* x86-64 ABI requires DF to be unset at function entry/exit */ +/* - DF flag: x86-64 ABI requires DF to be unset at function entry/exit */ +/* - AC flag: AEX on misaligned memory accesses leaks side channel info */ + pushfq + andq $~0x40400, (%rsp) + popfq + /* check for debug buffer pointer */ testb $0xff,DEBUG(%rip) jz .Lskip_debug_init |
