Fix loop optimization in the presence of environment uses.

We should not remove instructions that have deoptimize as
users, or that have environment uses in a debuggable setup.

bug: 62536525
bug: 33775412
Test: 656-loop-deopt

(cherry picked from commit 1a0a519c82044ec3e6d3910ff0602b11292de47a)

Change-Id: I213dc85ac644619b041f0fa408e112352efcef2d
5 files changed