Migrate run-make/pgo-branch-weights to rmake#125165
Conversation
This comment has been minimized.
This comment has been minimized.
it's the |
|
Yeah, run-make Makefiles have # This is a comment block that has a starting line,
# ignore-windows in the middle of the sentence,
# and hello world in the end of the sentence.Here |
|
Ah, I was wondering if that comment meant the test did not run at all... I am equally soothed that my work on this one was not wasted, and worried that this means it will have to be fully understood to proceed... It does use features found in other tests, though, so this should make the other tests using LLVM instrumentation much easier to port. EDIT: That does mean that the LLVM_FILECHECK part that fixes Windows path to use slashes won't have to be ported over in this test, since Windows is already getting ignored. Not sure if that mattered in the first place. EDIT 2: Not Windows, Windows-gnu. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
To clarify, windows-gnu is ignored, not windows-msvc (the main windows target), or the other windows targets. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
I'll take a closer took tomorrow |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
586d556 to
8fc4a0d
Compare
|
Feel free to ping me if you need any PR CI runs (i.e. try jobs) for various platforms. |
This comment has been minimized.
This comment has been minimized.
@jieyouxu I might need some try jobs for windows-gnu (once CI is green). The description has been changed already. |
This comment has been minimized.
This comment has been minimized.
|
☔ The latest upstream changes (presumably #125752) made this pull request unmergeable. Please resolve the merge conflicts. |
This comment has been minimized.
This comment has been minimized.
|
💔 Test failed - checks-actions |
46b3886 to
d94c5ac
Compare
This comment has been minimized.
This comment has been minimized.
|
@bors try |
|
🔒 Merge conflict This pull request and the master branch diverged in a way that cannot be automatically merged. Please rebase on top of the latest master branch, and let the reviewer approve again. How do I rebase?Assuming
You may also read Git Rebasing to Resolve Conflicts by Drew Blessing for a short tutorial. Please avoid the "Resolve conflicts" button on GitHub. It uses Sometimes step 4 will complete without asking for resolution. This is usually due to difference between how Error message |
8c4ba6c to
0bb84af
Compare
|
@bors try |
Migrate `run-make/pgo-branch-weights` to `rmake` Part of rust-lang#121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html). This is a scary one and I expect things to break. Set as draft, because this isn't ready. - [x] There is this comment here, which suggests the test is excluded from the testing process due to a platform specific issue? I can't see anything here that would cause this test to not run... > // FIXME(mati865): MinGW GCC miscompiles compiler-rt profiling library but with Clang it works // properly. Since we only have GCC on the CI ignore the test for now." EDIT: This is specific to Windows-gnu. - [x] The Makefile has this line: ``` ifneq (,$(findstring x86,$(TARGET))) COMMON_FLAGS=-Clink-args=-fuse-ld=gold ``` I honestly can't tell whether this is checking if the target IS x86, or IS NOT. EDIT: It's checking if it IS x86. - [x] I don't know why the Makefile was trying to pass an argument directly in the Makefile instead of setting that "aaaaaaaaaaaa2bbbbbbbbbbbb2bbbbbbbbbbbbbbbbcc" input as a variable in the Rust program directly. I changed that, let me know if that was wrong. - [x] Trying to rewrite `cat "$(TMPDIR)/interesting.ll" | "$(LLVM_FILECHECK)" filecheck-patterns.txt` resulted in some butchery. For starters, in `tools.mk`, LLVM_FILECHECK corrects its own backslashes on Windows distributions, but there is no further mention of it, so I assume this is a preset environment variable... but is it really? Then, the command itself uses a Standard Input and a passed input file as an argument simultaneously, according to the [documentation](https://llvm.org/docs/CommandGuide/FileCheck.html#synopsis). try-job: aarch64-gnu
|
☀️ Try build successful - checks-actions |
jieyouxu
left a comment
There was a problem hiding this comment.
Left some minor nits, but otherwise looks good
0bb84af to
17b0771
Compare
|
Changes implemented. I'm slightly worried that the bors try success was not real and was caused by the CI outage of yesterday, but I suppose we're about to find out. |
|
We'll see in full CI. |
|
@bors delegate+ (r=me after CI is green) |
|
✌️ @Oneirical, you can now approve this pull request! If @jieyouxu told you to " |
|
☀️ Test successful - checks-actions |
|
Finished benchmarking commit (f6b4b71): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (primary 1.9%)This 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.
CyclesResults (secondary -2.1%)This 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: 672.648s -> 671.891s (-0.11%) |
Part of #121876 and the associated Google Summer of Code project.
This is a scary one and I expect things to break. Set as draft, because this isn't ready.
EDIT: This is specific to Windows-gnu.
I honestly can't tell whether this is checking if the target IS x86, or IS NOT. EDIT: It's checking if it IS x86.
I don't know why the Makefile was trying to pass an argument directly in the Makefile instead of setting that "aaaaaaaaaaaa2bbbbbbbbbbbb2bbbbbbbbbbbbbbbbcc" input as a variable in the Rust program directly. I changed that, let me know if that was wrong.
Trying to rewrite
cat "$(TMPDIR)/interesting.ll" | "$(LLVM_FILECHECK)" filecheck-patterns.txtresulted in some butchery. For starters, intools.mk, LLVM_FILECHECK corrects its own backslashes on Windows distributions, but there is no further mention of it, so I assume this is a preset environment variable... but is it really? Then, the command itself uses a Standard Input and a passed input file as an argument simultaneously, according to the documentation.try-job: aarch64-gnu