)]}'
{
  "commit": "edde212818e3bd1c19ade3cf52927bb7cdfd520f",
  "tree": "d4fc681313b77def4b53d7d6b9c5df583d359f6c",
  "parents": [
    "261b306edfacba870b81983e47bedc5ec080fd7e"
  ],
  "author": {
    "name": "Alexey Bataev",
    "email": "a.bataev@outlook.com",
    "time": "Wed Oct 07 11:19:22 2026 -0400"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Wed Oct 07 11:19:22 2026 -0400"
  },
  "message": "[X86][TTI]Model the sqrt folded into the reciprocal estimate as free (#229482)\n\nThe scalar sqrt, divided into with the reciprocal allowed, is folded\nwith\nthe division into the rsqrt* estimate sequence. Report no cost for it\nwhen\nthe type has the estimate and the function does not disable it, so the\nvectorizers do not pack it and break the folding.\n\nAssisted-by: Cursor",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "7c44a4a830020f6178806a6b22baa30f17d4fcc1",
      "old_mode": 33188,
      "old_path": "llvm/include/llvm/CodeGen/TargetLowering.h",
      "new_id": "70718b1466653472a7cd92b2b6234263bda0fb57",
      "new_mode": 33188,
      "new_path": "llvm/include/llvm/CodeGen/TargetLowering.h"
    },
    {
      "type": "modify",
      "old_id": "1c7bca06b225ac4104fc72f859810dabcb2ed53c",
      "old_mode": 33188,
      "old_path": "llvm/lib/CodeGen/TargetLoweringBase.cpp",
      "new_id": "ff7b8439b549ccc4c84752b61ca994949945460f",
      "new_mode": 33188,
      "new_path": "llvm/lib/CodeGen/TargetLoweringBase.cpp"
    },
    {
      "type": "modify",
      "old_id": "dfb63c3b609e1292496f90a8121f36dbb5d385cd",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/X86/X86ISelLowering.cpp",
      "new_id": "2730793664792420ab2ce71e5b7d90a64049209a",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/X86/X86ISelLowering.cpp"
    },
    {
      "type": "modify",
      "old_id": "ba04080573c421fc41722abd810c62a83810e5b6",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/X86/X86ISelLowering.h",
      "new_id": "b972949b5727e896ab03a59b944045bbe955bd74",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/X86/X86ISelLowering.h"
    },
    {
      "type": "modify",
      "old_id": "d870a79a0e0a54567f189a91f4cbd1a2977d4a10",
      "old_mode": 33188,
      "old_path": "llvm/lib/Target/X86/X86TargetTransformInfo.cpp",
      "new_id": "0001c93fb42b6f6faf1b7402260009d3e146b8ad",
      "new_mode": 33188,
      "new_path": "llvm/lib/Target/X86/X86TargetTransformInfo.cpp"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "1bc561f54e743457c686a2cd0cb85d0857035947",
      "new_mode": 33188,
      "new_path": "llvm/test/Analysis/CostModel/X86/sqrt-rsqrt-estimate.ll"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "efd3e00c24c1eebe701d76d77cb7c210e4fa633a",
      "new_mode": 33188,
      "new_path": "llvm/test/Transforms/SLPVectorizer/X86/once-used-rsqrt-seeds.ll"
    }
  ]
}
