-
Notifications
You must be signed in to change notification settings - Fork 13.4k
use #[naked]
for __rust_probestack
#141992
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
cc @tgross35 |
#[naked]
for __rust_probestack
It will most definitely work, in-tree compiler-builtins has no CI running and it is not yet used for anything :) |
Me and my impatience... Well, I'm happy to rebase this whenever to check whether things are working, and we'll see when everything is ready. |
☔ The latest upstream changes (presumably #142081) made this pull request unmergeable. Please resolve the merge conflicts. |
be86dc8
to
79aa400
Compare
79aa400
to
6b6ad28
Compare
This comment has been minimized.
This comment has been minimized.
6b6ad28
to
a2da8e0
Compare
This comment has been minimized.
This comment has been minimized.
a2da8e0
to
601e479
Compare
I'll kick off some jobs that should cover fortanix/sgx/uefi @bors2 try |
@folkertdev can now perform try builds on this pull request |
use `#[naked]` for `__rust_probestack` Let's see if this works now. Previously this change was in rust-lang/compiler-builtins#897, but we decided to wait until `compiler-builtins` was a subtree (and also `cfg(bootstrap)` is gone now). r? `@tgross35` cc `@bjorn3` try-job: `dist-various*` try-job: `test-various*`
// Our goal here is to touch each page between %rsp+8 and %rsp+8-%rax, | ||
// ensuring that if any pages are unmapped we'll make a page fault. | ||
// | ||
// This function is unsafe because it uses a custom ABI, it does not actually match `extern "C"`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Mind making these FIXME(extern_c)
since that should be a thing soon?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lgtm, mind stuffing the last commit into the first?
@bors delegate+ |
✌️ @folkertdev, you can now approve this pull request! If @tgross35 told you to " |
fff42eb
to
b030442
Compare
…on, r=tgross35 use `#[naked]` for `__rust_probestack` Let's see if this works now. Previously this change was in rust-lang/compiler-builtins#897, but we decided to wait until `compiler-builtins` was a subtree (and also `cfg(bootstrap)` is gone now). r? `@tgross35` cc `@bjorn3` try-job: `dist-various*` try-job: `test-various*`
Rollup of 14 pull requests Successful merges: - #134442 (Specify the behavior of `file!`) - #134841 (Look at proc-macro attributes when encountering unknown attribute) - #140372 (Exhaustively handle parsed attributes in CheckAttr) - #140766 (Stabilize keylocker) - #141642 (Note the version and PR of removed features when using it) - #141909 (Add central execution context to bootstrap) - #141992 (use `#[naked]` for `__rust_probestack`) - #142102 (docs: Small clarification on the usage of read_to_string and read_to_end trait methods) - #142124 (Allow transmute casts in pre-runtime-MIR) - #142240 (deduplicate the rest of AST walker functions) - #142258 (platform-support.md: Mention specific Linux kernel version or later) - #142262 (Mark `core::slice::memchr` as `#[doc(hidden)]`) - #142271 (compiler: fn ptrs should hit different lints based on ABI) - #142288 (const_eval: fix some outdated comments) r? `@ghost` `@rustbot` modify labels: rollup
Rollup of 16 pull requests Successful merges: - #134442 (Specify the behavior of `file!`) - #140372 (Exhaustively handle parsed attributes in CheckAttr) - #140766 (Stabilize keylocker) - #141642 (Note the version and PR of removed features when using it) - #141818 (Don't create .msi installer for gnullvm hosts) - #141909 (Add central execution context to bootstrap) - #141992 (use `#[naked]` for `__rust_probestack`) - #142101 (core::ptr: deduplicate more method docs) - #142102 (docs: Small clarification on the usage of read_to_string and read_to_end trait methods) - #142124 (Allow transmute casts in pre-runtime-MIR) - #142240 (deduplicate the rest of AST walker functions) - #142258 (platform-support.md: Mention specific Linux kernel version or later) - #142262 (Mark `core::slice::memchr` as `#[doc(hidden)]`) - #142271 (compiler: fn ptrs should hit different lints based on ABI) - #142275 (rustdoc: Refractor `clean_ty_generics`) - #142288 (const_eval: fix some outdated comments) r? `@ghost` `@rustbot` modify labels: rollup
Rollup merge of #141992 - folkertdev:probestack-naked-function, r=tgross35 use `#[naked]` for `__rust_probestack` Let's see if this works now. Previously this change was in rust-lang/compiler-builtins#897, but we decided to wait until `compiler-builtins` was a subtree (and also `cfg(bootstrap)` is gone now). r? ``@tgross35`` cc ``@bjorn3`` try-job: `dist-various*` try-job: `test-various*`
Let's see if this works now.
Previously this change was in rust-lang/compiler-builtins#897, but we decided to wait until
compiler-builtins
was a subtree (and alsocfg(bootstrap)
is gone now).r? @tgross35 cc @bjorn3
try-job:
dist-various*
try-job:
test-various*