The comment was added with:
https://reviews.llvm.org/rL293773
...but there would be a cost to implement this and possibly no payoff.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@293823
91177308-0d34-0410-b5e6-
96231b3b80d8
// FIXME: Publish a warning/remark that we have encountered UB or the compiler
// is broken.
- // FIXME: Implement a stronger version of "I give up" by invalidating/clearing
- // the assumption cache. This should indicate that the cache is corrupted so
- // future callers will not waste time repopulating it with faulty assumptions.
-
if ((KnownZero & KnownOne) != 0) {
KnownZero.clearAllBits();
KnownOne.clearAllBits();
; Similar to above: there's no way to know which assumption is truthful,
; so just don't crash. The second icmp+assume gets processed later, so that
-; determines the return value. This can be improved by permanently invalidating
-; the cached assumptions for this function.
+; determines the return value.
define i8 @conflicting_assumptions(i8 %x) {
; CHECK-LABEL: @conflicting_assumptions(