)]}'
{
  "commit": "3245c8976976c70d54137d58362d3caefe111c71",
  "tree": "ab078a7516b4eb146dd81e44340951623a53291c",
  "parents": [
    "80d77505fdde270f51ec814df76d861db26b1013"
  ],
  "author": {
    "name": "Jonah Williams",
    "email": "jonahwilliams@google.com",
    "time": "Wed Nov 20 09:41:14 2024 -0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Nov 20 17:41:14 2024 +0000"
  },
  "message": "[Impeller] flush all GLES cmd buffers together. (#56724)\n\nLocally this gives much better performance, about doubling frame time on the Pixel 4. This avoids multiple glbuffersubdata calls that seems to perform particularly bad on mobile devices.\r\n\r\nThinking about it more, I\u0027m not sure that having a separate EncodeCommands API is useful for RenderPass/BlitPass. instead they should probably just use submit. but that is a refactor for another day.\r\n\r\nhttps://github.com/flutter/flutter/issues/159177",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "640f36e3ce5506b05dd68e2d3f12a2df2f73c249",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/context_gles.cc",
      "new_id": "ba98e78f5cbe5ab977347687bf8f54099fb3b87d",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/context_gles.cc"
    },
    {
      "type": "modify",
      "old_id": "138494429bd18540a78de3161936e4472ddfe650",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/context_gles.h",
      "new_id": "1c2587cc0d276d22ca18891265506063b5a43647",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/context_gles.h"
    },
    {
      "type": "modify",
      "old_id": "945e2205febc6ff4a5a90b08296a67558f6b0bf1",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/reactor_gles.cc",
      "new_id": "82266bfd998eb89b75008c2d7417b40c0e09c8e2",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/reactor_gles.cc"
    },
    {
      "type": "modify",
      "old_id": "dc1396314e96990b365bdb8fd3d9c9ff69dce506",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/reactor_gles.h",
      "new_id": "88d77ccffe398ff6d20a2ed40b376969047239ca",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/reactor_gles.h"
    },
    {
      "type": "modify",
      "old_id": "5ca2f5d47f8a10b0384d1ec0b2c79c6fd5a34d96",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/render_pass_gles.cc",
      "new_id": "32228d3d8783012a65f6e5724f43caebc9bbd642",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/render_pass_gles.cc"
    },
    {
      "type": "modify",
      "old_id": "fe589c7dbcaae5726ab7d71878aea667463e39c6",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/test/reactor_unittests.cc",
      "new_id": "c43b9b1b96c40224eaf021fda84fce5d1df3386d",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/test/reactor_unittests.cc"
    }
  ]
}
