)]}'
{
  "commit": "0498065e0c85dc98e48ed87daf6a3c6104627ad8",
  "tree": "6a2fedf2e10774c07cbc9fa802e48552e5c914de",
  "parents": [
    "c3c5427ec9e5983633199eaab9c6a392ba3a107a"
  ],
  "author": {
    "name": "Steven Perron",
    "email": "stevenperron@google.com",
    "time": "Fri May 30 09:11:31 2025 -0400"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Fri May 30 09:11:31 2025 -0400"
  },
  "message": "[OPT] Use conservative default case for `GetPtr` (#6158)\n\nThe `MemPass::GetPtr` assumed that variable pointers were not used. So\nif the pointer instruction was not a variable or function parameter, it\nassumed it was something like an OpAccessChain. This is not correct with\nvariable pointers. It could be a load or a phi or other things.\n\nThis modifies the code the have a default case that assumes the base\nvariable could not be found. It will only return a variable id if it\nrecornizes all of the instructions.\n\nFixes #6157",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "aa4ae26b64144ff9502ae8cb0a589dd9bc081248",
      "old_mode": 33188,
      "old_path": "source/opt/instruction.cpp",
      "new_id": "883e47f0dd2fc0907753da706f63e78aefd575bd",
      "new_mode": 33188,
      "new_path": "source/opt/instruction.cpp"
    },
    {
      "type": "modify",
      "old_id": "65f45ec3b8aa84fa4e1d58ac5f25644a730eb449",
      "old_mode": 33188,
      "old_path": "source/opt/mem_pass.cpp",
      "new_id": "e4eb751cb4e49643a1c8541d5f789bf4302a0844",
      "new_mode": 33188,
      "new_path": "source/opt/mem_pass.cpp"
    },
    {
      "type": "modify",
      "old_id": "45006ca65725546811800c65d1dadfb571113ebc",
      "old_mode": 33188,
      "old_path": "test/opt/local_ssa_elim_test.cpp",
      "new_id": "34efcf77c6ef180053054d7be92be00a4e289a04",
      "new_mode": 33188,
      "new_path": "test/opt/local_ssa_elim_test.cpp"
    }
  ]
}
