Subject: Re: bug#46847: 28.0.50; [native-comp] assume pseudo-insns should be verified

From: Andrea Corallo <[email-masked]>
Date: Fri, 05 Mar 2021 11:16:19 +0000

Pip Cet <[email-masked]> writes:

[...]

> (assume (mvar X :slot -1) (not (mvar Y :slot 1)))
> (assume (mvar Z :slot 2) (and ... (mvar X :slot -1)))

Now that we can generate temporaries this might be an option.  But I
think would be helpful if you could show what exactly are the 1:1
assertions you'd like to synthesize for the above assumes, otherwise
this discussion will stay just too high level.

[...]

>> Note: I'm not aware of any compiler emitting run-time checks to verify
>> its compile time predictions by why not.
>
> I don't know why you're unaware Emacs (pre-native-comp) and GCC both
> do that, but they do.

I wasn't even aware that the byte compiler is doing any value prediction
and that is emitting code for to verify these, could give pointers to
boths cases?

  Andrea