Reland: Remove DebugLocalWrite when it is possible

- It allows to D8 to generate smaller code in debug mode. It save about
12k on framework and 46k on GMSCore v10.

Bug: 66161160
Change-Id: I5c9c3e6abdc817aba3f469a395bdde9b72d76b6d
diff --git a/src/test/debugTestResources/Locals.java b/src/test/debugTestResources/Locals.java
index 205ae64..71f2a66 100644
--- a/src/test/debugTestResources/Locals.java
+++ b/src/test/debugTestResources/Locals.java
@@ -346,6 +346,13 @@
     return c + d;
   }
 
+  public static int intAddition(int a, int b, int c) {
+    a += b;
+    b += c;
+    c = a + b;
+    return c;
+  }
+
   public static void main(String[] args) {
     noLocals();
     unusedLocals();
@@ -369,5 +376,6 @@
     System.out.println(localConstant(true));
     System.out.println(localConstantBis(true));
     System.out.println(localTriggeringCSE());
+    System.out.println(intAddition(1, 2, 6));
   }
 }