Use fast TLS on Fuchsia
This commit is contained in:
parent
704af2d7e1
commit
a6fa656555
1 changed files with 1 additions and 6 deletions
|
@ -20,7 +20,7 @@
|
||||||
// fallback implementation to use as well.
|
// fallback implementation to use as well.
|
||||||
//
|
//
|
||||||
// Due to rust-lang/rust#18804, make sure this is not generic!
|
// Due to rust-lang/rust#18804, make sure this is not generic!
|
||||||
#[cfg(target_os = "linux")]
|
#[cfg(any(target_os = "linux", target_os = "fuchsia"))]
|
||||||
pub unsafe fn register_dtor(t: *mut u8, dtor: unsafe extern fn(*mut u8)) {
|
pub unsafe fn register_dtor(t: *mut u8, dtor: unsafe extern fn(*mut u8)) {
|
||||||
use libc;
|
use libc;
|
||||||
use mem;
|
use mem;
|
||||||
|
@ -55,11 +55,6 @@ pub unsafe fn register_dtor(t: *mut u8, dtor: unsafe extern fn(*mut u8)) {
|
||||||
_tlv_atexit(dtor, t);
|
_tlv_atexit(dtor, t);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Just use the thread_local fallback implementation, at least until there's
|
|
||||||
// a more direct implementation.
|
|
||||||
#[cfg(target_os = "fuchsia")]
|
|
||||||
pub use sys_common::thread_local::register_dtor_fallback as register_dtor;
|
|
||||||
|
|
||||||
pub fn requires_move_before_drop() -> bool {
|
pub fn requires_move_before_drop() -> bool {
|
||||||
// The macOS implementation of TLS apparently had an odd aspect to it
|
// The macOS implementation of TLS apparently had an odd aspect to it
|
||||||
// where the pointer we have may be overwritten while this destructor
|
// where the pointer we have may be overwritten while this destructor
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue