Skip to content

llvm-reduce: Remove unsupported from bitcode uselistorder test #134185

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

arsenm
Copy link
Contributor

@arsenm arsenm commented Apr 3, 2025

This was disabled due to flakiness but I'm currently unable to reproduce.

I'm nervous the original issue still exists. However, I downgraded the tripped
assert in 8c18c25 to a warning since the same
assert can trigger for illegitimate reasons.

Fixes #64157

This was disabled due to flakiness but I'm currently unable to reproduce.

I'm nervous the original issue still exists. However, I downgraded the tripped
assert in 8c18c25 to a warning since the same
assert can trigger for illegitimate reasons.

Fixes #64157
@arsenm arsenm added the llvm-reduce label Apr 3, 2025 — with Graphite App
Copy link
Contributor Author

arsenm commented Apr 3, 2025

This stack of pull requests is managed by Graphite. Learn more about stacking.

@arsenm arsenm marked this pull request as ready for review April 3, 2025 01:17
@danilaml
Copy link
Collaborator

danilaml commented Apr 3, 2025

I remember hitting this assert not that long ago when reducing the test case for #131355 . Thankfully I was able to fallback to bugpoint, but in general it was easy to trigger eat when reducing miscompile caused by non-determinism in the compiler (which lack of uselists is only a small part of). If llvm-reduce can gracefully recover from this now, then great!

@arsenm
Copy link
Contributor Author

arsenm commented Apr 3, 2025

I remember hitting this assert not that long ago when reducing the test case for #131355 . Thankfully I was able to fallback to bugpoint, but in general it was easy to trigger eat when reducing miscompile caused by non-determinism in the compiler (which lack of uselists is only a small part of). If llvm-reduce can gracefully recover from this now, then great!

It's not a graceful recovery, it's silently ignoring. If you can reduce produce a test that hits this, that would be great. Ignoring is the only thing we can do in the flaky test case, but if it's hit in a non-flaky case that's interesting

@danilaml
Copy link
Collaborator

danilaml commented Apr 3, 2025

@arsenm well, it was potentially flaky as the bug depended on the order of iteration of SmallPtrSet (actual bug was elsewhere but it was triggered by certain iteration orders) which depends on runtime values of pointers but in practice it was 100% reproducible o machines I've tried but failed in llvm-reduce. Maybe it had something to do with the way "counting chunks" was done (i.e. it wasn't the same as running fresh opt on IR). Not sure I have any tests that work with recent master and don't know if I'll be able to spot them if I hit this issue in the future. I guess I'll need to look out for the assert-turned-warning message (hopefully it wouldn't be drawn out by typical reduce log)?

@regehr
Copy link
Contributor

regehr commented Apr 3, 2025

LGTM!

@arsenm
Copy link
Contributor Author

arsenm commented Apr 3, 2025

Unrelated windows failure, will just have to watch for other bots

@arsenm arsenm merged commit 3140d51 into main Apr 3, 2025
13 of 15 checks passed
@arsenm arsenm deleted the users/arsenm/llvm-reduce/restore-unsupported-bitcode-uselistorder-test branch April 3, 2025 04:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Re-enable llvm-reduce bitcode-uselistorder.ll test
3 participants