Add map output to compiledump.py

Change-Id: I7fdb15835499e7650ad0efe0bcd85edb2db04dab
diff --git a/src/main/java/com/android/tools/r8/utils/CompileDumpCompatR8.java b/src/main/java/com/android/tools/r8/utils/CompileDumpCompatR8.java
index 271bd70..21a5123 100644
--- a/src/main/java/com/android/tools/r8/utils/CompileDumpCompatR8.java
+++ b/src/main/java/com/android/tools/r8/utils/CompileDumpCompatR8.java
@@ -8,6 +8,7 @@
 import com.android.tools.r8.CompilationMode;
 import com.android.tools.r8.OutputMode;
 import com.android.tools.r8.R8;
+import com.android.tools.r8.R8Command.Builder;
 import java.nio.file.Path;
 import java.nio.file.Paths;
 import java.util.ArrayList;
@@ -46,6 +47,7 @@
     boolean isCompatMode = false;
     OutputMode outputMode = OutputMode.DexIndexed;
     Path outputPath = null;
+    Path pgMapOutput = null;
     CompilationMode compilationMode = CompilationMode.RELEASE;
     List<Path> program = new ArrayList<>();
     List<Path> library = new ArrayList<>();
@@ -107,6 +109,11 @@
               config.add(Paths.get(operand));
               break;
             }
+          case "--pg-map-output":
+            {
+              pgMapOutput = Paths.get(operand);
+              break;
+            }
           default:
             throw new IllegalArgumentException("Unimplemented option: " + option);
         }
@@ -114,7 +121,7 @@
         program.add(Paths.get(option));
       }
     }
-    R8.run(
+    Builder builder =
         new CompatProguardCommandBuilder(isCompatMode)
             .addProgramFiles(program)
             .addLibraryFiles(library)
@@ -122,7 +129,10 @@
             .addProguardConfigurationFiles(config)
             .setOutput(outputPath, outputMode)
             .setMode(compilationMode)
-            .setMinApiLevel(minApi)
-            .build());
+            .setMinApiLevel(minApi);
+    if (pgMapOutput != null) {
+      builder.setProguardMapOutputPath(pgMapOutput);
+    }
+    R8.run(builder.build());
   }
 }
diff --git a/tools/compiledump.py b/tools/compiledump.py
index 2ab1425..5aa5f97 100755
--- a/tools/compiledump.py
+++ b/tools/compiledump.py
@@ -187,6 +187,8 @@
       cmd.extend(['--classpath', dump.classpath_jar()])
     if compiler != 'd8' and dump.config_file():
       cmd.extend(['--pg-conf', dump.config_file()])
+    if compiler != 'd8':
+      cmd.extend(['--pg-map-output', '%s.map' % out])
     cmd.extend(otherargs)
     utils.PrintCmd(cmd)
     try: