Skip to content
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

Code coverage and profiling don't work on non-X86_64 -musl targets because profiler_builtins isn't provided for them #79556

Open
2 of 5 tasks
briansmith opened this issue Nov 30, 2020 · 10 comments
Labels
A-code-coverage Area: Source-based code coverage (-Cinstrument-coverage)

Comments

@briansmith
Copy link
Contributor

briansmith commented Nov 30, 2020

This indicates to me that it should be practical to enable the profiler feature for -musl targets on ARM and Intel targets, and we should do so. At a minimum, the following very common targets should have the profiler feature enabled:

@briansmith

This comment has been minimized.

@kobehz
Copy link

kobehz commented Jun 3, 2021

This indicates to me that it should be practical to enable the profiler feature for -musl targets on ARM and Intel targets, and we should do so. At a minimum, the following very common targets should have the profiler feature enabled:

I have the same problem for target aarch64-unknown-linux-musl.
What time do you expect to enable the the profiler feature for these targets?
Or what can I do myself to solve the problem?

@briansmith
Copy link
Contributor Author

Or what can I do myself to solve the problem?

I think there's not much stopping us from making a PR to rust-lang/rust that copies https://github.com/rust-lang/rust/pull/76035/files for the other musl targets.

@mati865
Copy link
Contributor

mati865 commented Jun 3, 2021

This might be harder than it sounds since only x86_64 musl target is natively built. Others are cross compiled from Linux GNU target.
But trying to do what Brian said won't hurt.

@clarfonthey
Copy link
Contributor

Ran into something similar to this after trying to test some code via cross. If I'm understanding correctly, all tier-2 and below targets don't have support for profiler_builtins. That includes not only the MUSL targets, but targets for architectures other than x86_64, aarch64, and i686.

@kobehz
Copy link

kobehz commented Jul 13, 2022 via email

@tmandry
Copy link
Member

tmandry commented Jul 13, 2022

It definitely works for Fuchsia (Tier 2) since we use it there. But we also build our own toolchain. This is probably (at least in part) an issue with the way the official distribution for those targets is configured and built.

@briansmith
Copy link
Contributor Author

This might be harder than it sounds since only x86_64 musl target is natively built. Others are cross compiled from Linux GNU target.

https://github.com/rust-lang/rust/pull/111575/files added profiler support by just adding --enable-profiler to ENV RUST_CONFIGURE_ARGS. So I think it isn't as hard as we're worried about.

@kobehz
Copy link

kobehz commented Oct 31, 2023 via email

@clarfonthey
Copy link
Contributor

@kobehz You definitely have your GitHub notifications configured incorrectly. Please make sure that you're not auto-replying to notification emails.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-code-coverage Area: Source-based code coverage (-Cinstrument-coverage)
Projects
None yet
Development

No branches or pull requests

6 participants