Report DexPcMoved events only when required

We used to report DexPCMove events unconditionally when running in
interpreter. This Cl makes it so we only report if
1. The method is deoptimized for breakpoints
2. The thread is deoptimized for single stepping
3. Interpreter stubs installed. When interpreter stubs are installed no
   additional data is available on whether we are single stepping / if
   method has breakpoints etc., so we cannot optimize this further.

Bug: 206029744

Change-Id: Iaf059bc2ed74ca5174d445d46f3dc0d4bb0106b9
5 files changed