-
Notifications
You must be signed in to change notification settings - Fork 31
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The core::intrinsics::unreachable() we used at the end of every naked function is essentially pointless, as #[naked] implies that intrinsic at the end of the function. rustc currently does not implement that behavior (rust-lang/rust#32487), but it is a bug. On top of that, anything except a single asm!() in naked functions is likely to be disallowed in the future (rust-lang/rust#32490). A nice side effect is that we avoid the core_intrinsics feature, which will be never stabilized, though neither asm nor naked_functions are likely to be stabilized soon.
- Loading branch information
1 parent
ddbf9a5
commit f34ddc6
Showing
3 changed files
with
13 additions
and
23 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,10 +1,8 @@ | ||
// This file is part of libfringe, a low-level green threading library. | ||
// Copyright (c) edef <[email protected]> | ||
// See the LICENSE file included in this distribution. | ||
#![feature(asm)] | ||
#![feature(asm, naked_functions)] | ||
#![cfg_attr(test, feature(test, thread_local, const_fn))] | ||
#![cfg_attr(target_arch = "x86", feature(naked_functions, core_intrinsics))] | ||
#![cfg_attr(target_arch = "x86_64", feature(naked_functions, core_intrinsics))] | ||
#![no_std] | ||
|
||
//! libfringe is a library implementing safe, lightweight context switches, | ||
|