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

    <tr>
        <th>Summary</th>
        <td>
            Outliner separates ADRP and LDR into separate sections
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
      </td>
    </tr>

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

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

<pre>
    This came up in #131630 where we are trying to fix the a case where outliner separates ADRP and LDR instructions into two separate sections which leads to problems that #131630 is trying to fix.

@smithp35 mentioned that this shouldn't happen in the first place because it prevents an optimization that converts GOT indirection to PC-relative addressing.

Unfortunately, I don't have a minimal repro I can share as of now but this happens with our internal code where outliner exhibits this. 
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyEkt1q3D4QxZ_Gvhmy2LK9Hxe-yD9h_wQKCSF9gLE1u5pWloxmvJv06Yuym37QQkGgC82Z-R3NQRE-BqK-6P4ruvsSF3Ux9XPCgKev5RDtW__iWGDEiWCZgQMUpqmbet1UcHaUCM4EmAg0vXE4gkY48CuoI0AYUehaFRf1HCiB0IwJlQRu75-fAIOFT_fPwEE0LaNyDAIcNIKe449iELo-nR2PDjyhlTxrTnHwNAmoQ_0FjeV3oFVR3ebTVjKxurnpYKKQW5K9aDXbFBcXb0NhNgoO55lCdpzNHDiJwuxxJBhoxEUIWGFOdKKgAhggzsoTf8Pc9dJzjOFESQX-f3wBDpbTxUaGerq7SeRR-USA1iYS4XC8cn4Oh5h0Cajk3wpzBw9g4wdWFsDEgSf0kGhOER5gxADi8iJQIB4gxDMMy9XWxYrAmdVBXFL-YEoBPYzR_rEhenU8sMq7dgWl7Ru7a3ZYUl9vWmOa7brelq7f7Lpd12wJt_bQorGHQ7ftDLXtMK67YcCSe1OZrmrqTb2rq3q7MvW63lnTDltb2R1R0VY0IfuV96dpFdOxZJGF-rzEdVV6HMjLRzZTn6tuhuUoRVt5FpWfOmX11D_-M2T6l0yVS_K9U52laG4Lsy_M_sjqlmE1xqkw-zzket3MKX6hUQuzfyeVwuyvsKfefA8AAP__Am8hwg">