Existing pre-conditions seem to be correct: https://rise4fun.com/Alive/lCLB Name: non-zero C1 Pre: !isPowerOf2(C1) && isPowerOf2(C2) && C1 != 0 %sub = shl i8 C2, %X %cmp = icmp eq i8 %sub, C1 => %cmp = false Name: one == C2 Pre: !isPowerOf2(C1) && isPowerOf2(C2) && C2 == 1 %sub = shl i8 C2, %X %cmp = icmp eq i8 %sub, C1 => %cmp = false Name: nuw Pre: !isPowerOf2(C1) && isPowerOf2(C2) %sub = shl nuw i8 C2, %X %cmp = icmp eq i8 %sub, C1 => %cmp = false Name: nsw Pre: !isPowerOf2(C1) && isPowerOf2(C2) %sub = shl nsw i8 C2, %X %cmp = icmp eq i8 %sub, C1 => %cmp = false
223 KiB
223 KiB