)]}'
{
  "commit": "8a160bae33c684fbfada8a2625a2ae7d84cb0c65",
  "tree": "e6fbac97192d63aa4f318c19ae14a803301511d0",
  "parents": [
    "f1444a1ac6705ef233ede5c4b21b4f216cf2cdc5"
  ],
  "author": {
    "name": "Christoffer Quist Adamsen",
    "email": "christofferqa@google.com",
    "time": "Tue Nov 05 14:12:54 2019 +0100"
  },
  "committer": {
    "name": "Christoffer Quist Adamsen",
    "email": "christofferqa@google.com",
    "time": "Wed Nov 06 09:18:18 2019 +0000"
  },
  "message": "Dead code eliminate enum reads\n\nThis CL refines the class-initializer-may-be-postponed analysis such that R8 can now classify the class initializers of standard enum classes as being postponeable.\n\nThis enables enum reads, such as `MyEnum unused \u003d MyEnum.A`, to be dead code eliminated.\n\nBug: 142762129\nChange-Id: I886d4c2419b5e3b5ac560cf516efe2b78029c8bd",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "05feeccb2993caa68841dc97d85ddebddc236805",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/graph/DexEncodedField.java",
      "new_id": "b1a96c1496435a0a63bed32b1c33e25a31db2456",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/graph/DexEncodedField.java"
    },
    {
      "type": "modify",
      "old_id": "c7e119901dd40cd722a6f026fb304603a20ebc31",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/graph/DexItemFactory.java",
      "new_id": "1174f5ed30c874b5c3fe11df2e2505884ddb1ff3",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/graph/DexItemFactory.java"
    },
    {
      "type": "modify",
      "old_id": "d1652ca3e90a7ffd29ba7bedf99f6b3fc76397d1",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/graph/DexType.java",
      "new_id": "523fd85337794babfa1e6039dbcdd6abe3f41e0d",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/graph/DexType.java"
    },
    {
      "type": "modify",
      "old_id": "96dada145f4741ef750a43498409bb74af880d7e",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/analysis/ValueMayDependOnEnvironmentAnalysis.java",
      "new_id": "b30952df91ca9144cc2c789b961bf1876aecf0d3",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/analysis/ValueMayDependOnEnvironmentAnalysis.java"
    },
    {
      "type": "modify",
      "old_id": "5f85ba6362788b9aee991314a52adb1b81a6361a",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/analysis/fieldvalueanalysis/FieldValueAnalysis.java",
      "new_id": "1079da11fa74ef439b47307a98832426fba0d02d",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/analysis/fieldvalueanalysis/FieldValueAnalysis.java"
    },
    {
      "type": "modify",
      "old_id": "e002c133fdab4153e69f270382902b07a813148e",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/optimize/info/MethodOptimizationInfoCollector.java",
      "new_id": "984a782835f01b66c478d0c2edac1038efb8d505",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/optimize/info/MethodOptimizationInfoCollector.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a108b5fe9ae709e2c708f82c122dfb29a0b80d45",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/ir/analysis/sideeffect/EnumClassInitializerCanBePostponedTest.java"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "a9e6b3d5f24086b1ab14a87aa578ee38299a9159",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/ir/analysis/sideeffect/EnumClassInitializerCannotBePostponedTest.java"
    },
    {
      "type": "modify",
      "old_id": "2052919a82f5cf2d9116faf43113d27083e71e36",
      "old_mode": 33188,
      "old_path": "src/test/java/com/android/tools/r8/naming/EnumMinification.java",
      "new_id": "177a7f0177b4bec7c6f0ed5924d9ed699921d1b5",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/naming/EnumMinification.java"
    },
    {
      "type": "modify",
      "old_id": "3369fb4ee5772139c7d3bc94c5eb1505a39b9217",
      "old_mode": 33188,
      "old_path": "src/test/java/com/android/tools/r8/rewrite/enums/EnumOptimizationTest.java",
      "new_id": "63f69d7c564a9fe59c5c41779d17308655737074",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/rewrite/enums/EnumOptimizationTest.java"
    },
    {
      "type": "modify",
      "old_id": "c823258cc1293605bd40e0d7e9e5f9ab666c6c77",
      "old_mode": 33188,
      "old_path": "src/test/java/com/android/tools/r8/rewrite/enums/Names.java",
      "new_id": "e9e4c9fd64e93b391f4683dd594ccdb095561070",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/rewrite/enums/Names.java"
    },
    {
      "type": "modify",
      "old_id": "1ced08d886eeefa4503f3126d337b75efd1ab0f6",
      "old_mode": 33188,
      "old_path": "src/test/java/com/android/tools/r8/rewrite/enums/Ordinals.java",
      "new_id": "b439e67fe02c4934586df4a5ca8903b7e37b1cd5",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/rewrite/enums/Ordinals.java"
    },
    {
      "type": "modify",
      "old_id": "9cf54dbdcecaf93cfb698fdf86641fd542cafabc",
      "old_mode": 33188,
      "old_path": "src/test/java/com/android/tools/r8/rewrite/enums/ToStrings.java",
      "new_id": "44d73092e3adb00be1b3d4e8ca6c1040f1883b95",
      "new_mode": 33188,
      "new_path": "src/test/java/com/android/tools/r8/rewrite/enums/ToStrings.java"
    }
  ]
}
