Rename registers on inlined instructions that use wide operands.

For example, v1 in the callee should be v7 in the caller.

Before:
div-double v7, v8, v10
iput-wide-quick (C) v1, v6, (#136) <- v1 should be renamed
invoke-virtual-quick (PI) v6, v7, v8

After:
div-double v7, v8, v10
iput-wide-quick (C) v7, v6, (#136)
invoke-virtual-quick (PI) v6, v7, v8

Bug: 2907602

Change-Id: I21b9a45f8e422148d45de98c1ec9acbfd9783cc6
diff --git a/vm/compiler/InlineTransformation.c b/vm/compiler/InlineTransformation.c
index 1dfa521..790cc5d 100644
--- a/vm/compiler/InlineTransformation.c
+++ b/vm/compiler/InlineTransformation.c
@@ -65,7 +65,7 @@
     int dfFlags = dvmCompilerDataFlowAttributes[getterInsn.opCode];
 
     /* Expecting vA to be the destination register */
-    if (dfFlags & DF_UA) {
+    if (dfFlags & (DF_UA | DF_UA_WIDE)) {
         LOGE("opcode %d has DF_UA set (not expected)", getterInsn.opCode);
         dvmAbort();
     }
@@ -144,7 +144,7 @@
 
     int dfFlags = dvmCompilerDataFlowAttributes[setterInsn.opCode];
 
-    if (dfFlags & DF_UA) {
+    if (dfFlags & (DF_UA | DF_UA_WIDE)) {
         setterInsn.vA = convertRegId(&invokeMIR->dalvikInsn, calleeMethod,
                                      setterInsn.vA, isRange);