diff options
author | Benoit Lamarche <benoitlamarche@google.com> | 2015-07-20 16:13:41 +0200 |
---|---|---|
committer | Benoit Lamarche <benoitlamarche@google.com> | 2015-07-20 16:13:41 +0200 |
commit | 50f041d5328a9bb084a7a3b637a5162f1220ed45 (patch) | |
tree | 9294eb7e1f4115aff8f56b43c25c5512fa11c995 | |
parent | 778812bfdb6d754db747786d9986d7a608e596bb (diff) | |
download | toolchain_jack-50f041d5328a9bb084a7a3b637a5162f1220ed45.zip toolchain_jack-50f041d5328a9bb084a7a3b637a5162f1220ed45.tar.gz toolchain_jack-50f041d5328a9bb084a7a3b637a5162f1220ed45.tar.bz2 |
Do not emit debug info for synthetic variables coming from Jill
Bug: 22491084
Change-Id: I398f63fa10e3cf2ba2f032dae713a967709c8faf
-rw-r--r-- | jack/src/com/android/jack/backend/dex/rop/RopRegisterManager.java | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/jack/src/com/android/jack/backend/dex/rop/RopRegisterManager.java b/jack/src/com/android/jack/backend/dex/rop/RopRegisterManager.java index 18f47bc..8b0d1e2 100644 --- a/jack/src/com/android/jack/backend/dex/rop/RopRegisterManager.java +++ b/jack/src/com/android/jack/backend/dex/rop/RopRegisterManager.java @@ -132,7 +132,7 @@ class RopRegisterManager { JType type = var.getType(); Type dexRegType = RopHelper.convertTypeToDx(type); RegisterSpec reg; - if (emitDebugInfo && (emitSyntheticDebugInfo || !var.isSynthetic()) && var.getName() != null) { + if (emitDebugInfo && var.getName() != null && (emitSyntheticDebugInfo || !isSynthetic(var))) { CstString cstSignature = null; GenericSignature infoMarker = var.getMarker(GenericSignature.class); if (infoMarker != null) { @@ -151,6 +151,12 @@ class RopRegisterManager { return (reg); } + private boolean isSynthetic(@Nonnull JVariable var) { + return var.isSynthetic() + || var.getName().startsWith("-p_") || var.getName().startsWith("-l_") + || var.getName().startsWith("-s_") || var.getName().startsWith("-e_"); + } + /** * Get a {@code RegisterSpec} from a {@code JVariableRef}. * |