Commits

Doug Gregor committed 61eb9b1f116
(Optionally) Evolve the constraint graph during simplification. Rather than building the constraint graph after simplification and then never modifying it, build the constraint graph before simplification and update it as simplification adds/removes constraints. This is a step toward two separable performance goals: (1) having a single constraint graph that evolves over the lifetime of the constraint system, rather than building a new constraint graph at each solver step, and (2) using the constraint graph to implement a worklist traversal during simplification, so we only re-simplify those constraints that might be affected by a choice the solver makes. This behavior is currently optional with an ugly in-source flag because while it works, it's a rather painful performance regression that I don't want to subject everyone to. I'll turn it on for everyone once it's a win, which should be after either (1) or (2) above is implemented. Swift SVN r10924