On Wed, Feb 24, 2021 at 9:04 AM Andrea Corallo wrote: > Pip Cet writes: > > > On Tue, Feb 23, 2021 at 11:36 PM Andrea Corallo wrote: > >> Pip Cet writes: > >> > Is this one of them, or am I confused? > >> > >> What's suspitions with that? At present I'm admittedly quite done but > >> it looks okay to me. > > > > We're emitting > > > > (assume ,lhs (and ,lhs ,rhs)) > > > > even when NEGATED is t. > > Nope, when NEGATED is t the complete sequence we are emitting is (see > line just following your diff hunk): > > (assume tmp-mvar (not rhs)) But tmp-mvar is in the same slot as RHS. > (assume lhs (and lhs tmp-mvar)) So this is equivalent (after the next SSA rename) to (assume lhs (and lhs rhs)) > That's indeed the reason why it's working in the 39 testcases. No, the reason it's "working" is that we never assert our assumes. I've got a patch here that does just that :-)