-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
Add CL and CMD into to pdb debug info #113492
Conversation
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @b-naber (or someone else) soon. Please see the contribution instructions for more information. Namely, in order to ensure the minimum review times lag, PR authors and assigned reviewers should ensure that the review label (
|
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
I really have trouble understanding what caused the check to fail here. The thing I most likely see that could have caused it is adding extra members to rustc_session::Session and rustc_interface::interface::Config, to be able to pass the expanded through some functions. Note that I am developing on Windows. |
this is an interesting error. i'm going to go through it step-by-step to see if i can help you figure out how i found the root cause :) the first thing i did was look at the rust-log-analyzer output and decide it was too long, so i looked at the original github actions workflow in case RLA got confused. that shows the following error at the end (along with ~16 or so others):
there are some important clues here. first, the panic happens in
now i know how to replicate the failure locally: there are more clues here.
at this point i look at the diff in your PR and notice you didn't modify clippy at all, so i think it's likely this is due to breakage in either https://crates.io/crates/syn shows that the latest release was 2.0.24, 8 hours ago, just after CI ran. https://crates.io/crates/quote was last released 10 days ago. the timing for i think this is upstream breakage in |
yeah @oli-obk i don't think this is stable because it only uses Cargo.toml without allowing clippy to specify a lockfile
|
hmm. ui_test is using |
This comment has been minimized.
This comment has been minimized.
@rustbot author |
This comment was marked as resolved.
This comment was marked as resolved.
6a54a58
to
155759c
Compare
This comment has been minimized.
This comment has been minimized.
Now storing the cpp args in an object instead of global. I put it into ModuleLlvm so it should outlive the targetmachine that has reference to it, and allows me to dispose of it to avoid memory leaks. |
⌛ Testing commit 7509c34 with merge cb956d913092ea9e2c7f25f11969512d77563758... |
This comment has been minimized.
This comment has been minimized.
💔 Test failed - checks-actions |
Set Arg0 and CommandLineArgs in MCTargetoptions so LLVM outputs correct CL and CMD in LF_DEBUGINFO instead of empty/invalid values.
Changed unit test to use to run only on windows-msvc instead for all windows variants. @rustbot review |
@bors r+ |
☀️ Test successful - checks-actions |
Finished benchmarking commit (9be4eac): comparison URL. Overall result: ✅ improvements - no action needed@rustbot label: -perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResultsThis is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 629.137s -> 629.695s (0.09%) |
Partial fix for #96475
The Arg0 and CommandLineArgs of the MCTargetOptions cpp class are not set within
rust/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp
Line 378 in bb548f9
This causes LLVM to not neither output any compiler path (cl) nor the arguments that were used when invoking it (cmd) in the PDB file.
This fix adds the missing information to the target machine so LLVM can use it.