)]}'
{
  "commit": "1ab1290cb08d16fc1f3a68d625aaf485eb4f9279",
  "tree": "5c873a52cff4b0633d4b0e77ccb2f975787fab87",
  "parents": [
    "d433ca92d445d857852f61117c02c9eccbf5491c"
  ],
  "author": {
    "name": "Christoffer Quist Adamsen",
    "email": "christofferqa@google.com",
    "time": "Mon Jan 13 13:07:32 2020 +0100"
  },
  "committer": {
    "name": "Christoffer Quist Adamsen",
    "email": "christofferqa@google.com",
    "time": "Mon Jan 13 15:26:21 2020 +0000"
  },
  "message": "Improve precision of field bit access analysis\n\nIn the field bit access analysis, we ignore the following pattern, because the value is not read except for the write to the same field:\n\n  bitField \u003d bitField | 1;\n\nHowever, due to redundant field load elimination, the following code:\n\n  bitField \u003d bitField | 1;\n  bitField \u003d bitField | 2;\n\n... may be optimized into:\n\n  int x \u003d bitField | 1;\n  bitField \u003d x;\n  bitField \u003d x | 2;\n\nTherefore, this CL extends the analysis that determines if a read only flows into a write to allow the read to flow into a series of logical binop instructions, before it is assigned back into the field.\n\nChange-Id: Ib06219a5ee1014095a7e4c10a158ed63e645512f",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "5b4ac7d053fcdfbc471d9669d978e05871e1ddda",
      "old_mode": 33188,
      "old_path": "src/main/java/com/android/tools/r8/ir/analysis/fieldaccess/FieldBitAccessAnalysis.java",
      "new_id": "deabda71e3f0e36c97b8798ebe3c5689a86af1b2",
      "new_mode": 33188,
      "new_path": "src/main/java/com/android/tools/r8/ir/analysis/fieldaccess/FieldBitAccessAnalysis.java"
    }
  ]
}
