50736d2bd9
When resolving control flow check detect a case when all predecessors would contain the same move and try to emit this move at the entry to the block if possible (i.e. when the source of the move is not destroyed by other moves at predecessors). Optimization discovered as part of go/dart-llvm-assessment flutter_gallery_total_size (sizeopt) -0.7127% R=alexmarkov@google.com Cq-Include-Trybots:dart/try:vm-kernel-precomp-linux-debug-x64-try,vm-kernel-precomp-linux-release-x64-try Change-Id: Ic8ead8ec3974a896ac58dfe97d652ffe497dfcce Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/160100 Commit-Queue: Vyacheslav Egorov <vegorov@google.com> Reviewed-by: Alexander Markov <alexmarkov@google.com>