-
Notifications
You must be signed in to change notification settings - Fork 13.5k
check-all misses 3200+ compiler-rt tests in runtimes build #72511
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
Comments
Interesting. Can you please provide full cmake command? |
I just saw it when looking at a LLVM 17 release build with The
|
I can reproduce this. DLLVM_ENABLE_RUNTIMES check-all is missing all/most unittests and all builtin tests. However check-compiler-rt is missing only builtin tests. On our sanitizer bots we run check-compiler-rt, and builtins are not in the scope of the group, so I probably was not concerned switching to DLLVM_ENABLE_RUNTIMES. |
I have managed to reproduce this and I think I understand the issue, I'll try to come up with a solution. |
I have confirmed that most of these will be addressed by #72955, the only ones that's not covered by that pull request are builtins tests which need a different solution. |
When building |
Unfortunately, the lack of |
When doing a 2-stage build on Solaris (amd64 and sparcv9) yesterday, this warning reminded me of upcoming doom:
Prompted by this, ran two 2-stage builds on
I haven't even started looking at those. This combination of missing tests clearly indicates that the I understand all too well that maintaining two different ways of building |
As has been reported for a long time (probably since the LLVM 14 release cycle when the runtimes build was first made the
reltest.sh
default), building with-DLLVM_ENABLE_RUNTIMES=compiler-rt
(which is the default these days) misses a large number ofcompiler-rt
tests that are run with-DLLVM_ENABLE_PROJECTS=compiler-rt
. The issue came up again in Issue #71971 and has apparently never been noticed during the development of the runtimes build (which doesn't speak particularly highly for the diligence of the testing at that point) and completely ignored despite the release tester reports since, massively reducingcompiler-rt
test coverage and missing all sorts of issues in new patches that would be noticed immedidately otherwise.To provide detail, I've now run two
x86_64-pc-linux-gnu
builds, one projects build and one runtimes build. Here are the differences in overall test results from just that change (which should be a no-op for test results):As one can see, more than 3200 tests are no longer run in a runtimes build. I've then extracted the names of the tests run from both build's
ninja check-all
output. Here are the test categrories that are missing in the runtimes build:In most cases, all tests from a category are missing, while for the
xray
tests about half of the tests changed fromPASS
toUNSUPPORTED
.I then looked for the missing tests: in the case of
builtins
, thelit.*
files that controlled the tests used to live inwhile they are now missing completely: they are neither present in
runtimes-bins
nor inbuiltins-bins
where they should be after splitting the object directories forbuiltins
from the rest ofcompiler-rt
. Without thelit.*
files, it's no wonder thebuiltins
tests aren't run at all.For the other missing tests, the
lit.*
files are present, but I don't yet see why the tests aren't run.The text was updated successfully, but these errors were encountered: