<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=https://github.com/llvm/llvm-project/issues/150069>150069</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [DAG] combineVSelectWithAllOnesOrZeros - missing freeze
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            good first issue,
            llvm:SelectionDAG
      </td>
    </tr>

    <tr>
      <th>Assignees</th>
      <td>
      </td>
    </tr>

    <tr>
      <th>Reporter</th>
      <td>
          RKSimon
      </td>
    </tr>
</table>

<pre>
    With #145298 we forgot to ensure that the selected operand was frozen - see foldVSelectToSignBitSplatMask for reference

I've included the alive2 for the `select Cond, -1, x → or Cond, x` fold here: https://alive2.llvm.org/ce/z/fwT9Si - but you should confirm the other 2 folds require this as well.

CC @woruyu
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJxUUk1v2zgQ_TWjy8AGPfqyDjoo9mqxWCwCrIMW6I0SRxJbinRJyk7y6wvJQYpeSBDzZt57nCdD0KNlriF_gvycyCVOztf__3vRs7NJ59Rb_VXHCYHSQ5ZTdcQ74-D86CJGh2zD4hnjJCPGiTGw4T6yQndlL63Cuww4ePfOFncYeO016stlg724ix7tk46Xq5HxPxl-rJPR88Cebc8gGhDNP0DljVHb3iyK1UYjjb4xbej1CYV4EOPJWQV0wt1hPV8R_iI4FlAROv9ZfIVCbDpwYs-QNjjFeA2QNkAtUPuYvjfmNu-dH4HanoHad6B2uL9UF4077JaIb27BMLnFKOydHbSfNzUuTuyRNoaAnn8uevsiHVAGvLMx-4ez0wkhE3fnl7clUXWqqrSSCdeHMk9J5IdcJFNdFsQ8VD0XpRBplaZVxqoY0r7gXkk1JLomQbkoiQ4l5bnYH7ssH6SomI9lmnUHyATPUptPQ4kOYeH6kAtRVImRHZuwBYBodE7hoH2IuIGACOgERGsvpM1jcdrZc_P3WsvPia_X2q5bxgCZMDrE8Jsp6mi2cK34_Iy9mztt-SMAa7IaY54th2f_jb0LuMNZh6DtiINnfudk8ab-cz2jjtPS7Xs3A7Wbrse1u3r3nfsI1G7aA1D74fFW068AAAD__2ak8aY">