DeadCodeElimination should only run once.

Changes to DeadCodeElimination to ensure that almost all of the optimizations performed can be done in a single
pass.  I only know of one remaining case where running the visitor twice can result in additional changes: the
optimization performed in endVisit(JNewInstance) involving ignored new operations to empty constructor calls.
Sometimes the constructor becomes empty later in the optimization pass, and earlier calls aren't removed.  This
seems to be a very rare case, though.

http://gwt-code-reviews.appspot.com/983802/show

Review by: zundel@google.com

git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@9057 8db76d5a-ed1c-0410-87a9-c151d255dfc7
4 files changed