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

    <tr>
        <th>Summary</th>
        <td>
            [LSV] Load Store Vectorizer failed to combine two related loads.
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            new issue
      </td>
    </tr>

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

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

<pre>
    The LSV pass doesn't combine the loads even though the base address remain the same for them.
There are many instances found in the AMDGPU codegen lit test folder. For example, llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx940.ll (in function local_atomic_fadd_v2bf16_noret) should have the two loads combined earlier. But they are merged using the target specific Load Store Optimizer pass (si-load-store-opt) after ISel.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxMkk9vqzgUxT-N2VwFGYdAWLBoG1GN1NGMlE630cW-Bo-MjWyTtu_TPwGR-pb4_uGcc38YoxkcUctOz-x0yXBJow-tVHRHhTHrvfpu30eCt-sHzBgjKE_RMVEnkH7qjSNII4H1qCLQnRyk0S_DuL32GAlQqUAxQqAJjdveI04E2of1Y8oZvzD-9D5SIMBAMKH7BuNiQicpgvaLU_CYfPr78vrvfyC9ooEcWJMgUUygvVUUcuh8APrCabbExAtYe5-Y6NYWJroXr-iVHBPdvoaJ7tX6Hu1fV7JMdHo-YPKTkfEw6K-m5Lm1wMTZONCLk8l4B9ZLtLe97aZRqdtd9Lqobs4HSkw0EEe_WAUj3vdo0qd_xPMITAFhsGaV-7ykted7901hIAVLNG7YJzEMlCDOJI02Et48KrgmHwj-mZOZzC8K-1GYOEdzWP9yiGv94OdNC-pEAVZ7eabao2qODWbUFrXgvBHlkWdjS_KIla5kgVrrvqKzLrBURV3ySihqeGZawUXJa14WhagLnp-qRhQVaVmc-wr7Eyv5elubr3HnPgyZiXGhtqnr4pRZ7MnGDTAhHH3CVmRCrLyFdp059MsQWcmtiSn-bEkm2Y3Mt-sHO13-9P9BMvmwBaDRWFKQ_A-Qnx4CWUyk9uTzbAm2HVOaIzs-MdEx0Q0mjUufS78C8uBk0zIH_z_JlZdNaGSi243cW_E7AAD__46WEzY">