You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When Souper look for nops, it batches up the possibilities and issues a single solver query looking for the existence of a nop. If none of them work (the expected case by far) then we're done. If a nop is detected, with an unsat result, we don't know which nop is the one that worked, so we have to go and look at each one individually. If none is found, then there must be a bug in the way we aggregated the nops into a single query. That seems to be the case here. This is the smallest LHS that I can find that triggers this bug.
/home/regehr/souper-regehr/build/souper-check -solver-timeout=15 -z3-path=/usr/bin/z3 -infer-rhs -souper-infer-nop
*** oops ***
%0:i32 = var
%1:i1 = eq 0:i32, %0
%2:i32 = sub 32:i32, %0
%3:i32 = lshr 71:i32, %2
%4:i32 = select %1, 0:i32, %3
infer %4
LLVM ERROR: big query indicated a nop, but none was found
The text was updated successfully, but these errors were encountered:
When Souper look for nops, it batches up the possibilities and issues a single solver query looking for the existence of a nop. If none of them work (the expected case by far) then we're done. If a nop is detected, with an unsat result, we don't know which nop is the one that worked, so we have to go and look at each one individually. If none is found, then there must be a bug in the way we aggregated the nops into a single query. That seems to be the case here. This is the smallest LHS that I can find that triggers this bug.
The text was updated successfully, but these errors were encountered: