-
Notifications
You must be signed in to change notification settings - Fork 20
feat: Partition goals extract from InstCombine into success/failure based on whether the goal is a clean QF_BV goal #1575
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
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure what you want me to review exactly; I'm not familiar enough with the python bits to say sensible things beyond that I support the move to pure bitvector stuff.
The CI failing is presumably caused by the fact that we sometimes still have PoisonOr remaining in the goals, or is there something else to be fixed there?
@alexkeizer Well, I wanted to see what you thought of the change, and that you agree that these goals ought to be QF_BV goals |
9116c5a
to
1727c7c
Compare
|
1727c7c
to
6c40e9e
Compare
|
I am not sure we want this split. AFAIU all goals are pure bitvector goals, no? |
@tobiasgrosser they're not necessarily: If The output of the files is the goals that are produced by For example, Until I paired with Alex today, the goals used to have unrelated LLVM-level We now have every file in |
To be precise: the goals in question were of the form "value is-refined-by poison", which of course is equivalent to More generally, ensuring all goals are purely BV will make it easier to add goals that come from other dialects (e.g., LLVM + memory) without having to add all dialects to the imports of each test case, so this is a nice change! |
The purpose of
extract_goals
is to give us clean QF_BV goals. So, we test this by running the file withopen BitVec
and no imports. This gives us:@alexkeizer , the ball is now in your court to improve
simp_alive_peephole
so that poison semantics no longer remains :)