]> Cypherpunks repositories - gostls13.git/commit
cmd/compile: in prove, shortcircuit self-facts
authorGiovanni Bajo <rasky@develer.com>
Mon, 12 Mar 2018 23:25:06 +0000 (00:25 +0100)
committerGiovanni Bajo <rasky@develer.com>
Sat, 24 Mar 2018 03:06:21 +0000 (03:06 +0000)
commitd54902ece907d55d937b7b2fa294e0cc22b57a32
tree79c6b8bd3d130360392daadad41865d992182c3d
parent385d936fb287cfe3a491ced2d77d52d71b7705a8
cmd/compile: in prove, shortcircuit self-facts

Sometimes, we can end up calling update with a self-relation
about a variable (x REL x). In this case, there is no need
to record anything: the relation is unsatisfiable if and only
if it doesn't contain eq.

This also helps avoiding infinite loop in next CL that will
introduce transitive closure of relations.

Passes toolstash -cmp.

Change-Id: Ic408452ec1c13653f22ada35466ec98bc14aaa8e
Reviewed-on: https://go-review.googlesource.com/100276
Reviewed-by: Austin Clements <austin@google.com>
src/cmd/compile/internal/ssa/prove.go