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

    <tr>
        <th>Summary</th>
        <td>
            XCode15 Otool bug
        </td>
    </tr>

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

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

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

<pre>
    Using the `Xcode 14 Command Line Tools`, execute the command `otool -x -V` to disassemble Objective-C and Swift symbols such as `_OBJC_CLASS_$_`, `OBJC_IVAR`, or various method names using `adrp` and `bl` instructions.:
```
+[TestJumpProtocolHandler load]:
0000000000000000        sub     sp, sp, #0x40
0000000000000004        stp     x22, x21, [sp, #0x10]
0000000000000008        stp     x20, x19, [sp, #0x20]
000000000000000c        stp     x29, x30, [sp, #0x30]
0000000000000010        add     x29, sp, #0x30
0000000000000014        mov     x19, x0
0000000000000018        adrp    x8, _OBJC_CLASSLIST_REFERENCES_$_@PAGE
000000000000001c        ldr     x0, [x8, _OBJC_CLASSLIST_REFERENCES_$_@PAGEOFF]
0000000000000020        adrp    x8, l__unnamed_cfstring_@PAGE
0000000000000024        add     x8, x8, l__unnamed_cfstring_@PAGEOFF
0000000000000028        str     x8, [sp]
000000000000002c        adrp    x2, l__unnamed_cfstring_.2@PAGE
0000000000000030        add     x2, x2, l__unnamed_cfstring_.2@PAGEOFF
0000000000000034        bl      "_objc_msgSend$stringWithFormat:"
0000000000000038        mov     x29, x29
000000000000003c        bl      _objc_retainAutoreleasedReturnValue
0000000000000040        mov     x20, x0
0000000000000044        adrp    x8, _OBJC_CLASSLIST_REFERENCES_$_.3@PAGE
0000000000000048        ldr     x21, [x8, _OBJC_CLASSLIST_REFERENCES_$_.3@PAGEOFF]
000000000000004c        mov     x0, x19
0000000000000050        bl      _objc_msgSend$class
0000000000000054        bl      _NSStringFromClass
0000000000000058        mov     x29, x29
000000000000005c        bl      _objc_retainAutoreleasedReturnValue
0000000000000060        mov     x19, x0
0000000000000064        mov     x0, x21
0000000000000068        mov     x2, x19
000000000000006c        mov     x3, x20
0000000000000070        bl      "_objc_msgSend$registerProtocolHandlerClassName:withProtocolKey:"
0000000000000074        mov     x0, x19
0000000000000078        bl      _objc_release
000000000000007c        mov     x0, x20
0000000000000080        ldp     x29, x30, [sp, #0x30]
0000000000000084        ldp     x20, x19, [sp, #0x20]
0000000000000088        ldp     x22, x21, [sp, #0x10]
000000000000008c        add     sp, sp, #0x40
0000000000000090        b       _objc_release
```

but I using `XCode15 Command Line Tool`,`adrp` and `bl` can not disassemb the Objective-C method and Swift symbol:
```
+[COCheckoutJumpProtocolHandler load]:
0000000000000000        sub     sp, sp, #0x40
0000000000000004        stp     x22, x21, [sp, #0x10]
0000000000000008        stp     x20, x19, [sp, #0x20]
000000000000000c        stp     x29, x30, [sp, #0x30]
0000000000000010        add     x29, sp, #0x30
0000000000000014        mov     x19, x0
0000000000000018        adrp    x8, 0 ; 0x0
000000000000001c        ldr     x0, [x8]
0000000000000020        adrp    x8, 0 ; 0x0
0000000000000024        add     x8, x8, #0x0
0000000000000028        str     x8, [sp]
000000000000002c        adrp    x2, 0 ; 0x0
0000000000000030        add     x2, x2, #0x0
0000000000000034        bl      0x34
0000000000000038        mov     x29, x29
000000000000003c        bl      0x3c
0000000000000040        mov     x20, x0
0000000000000044        adrp    x8, 0 ; 0x0
0000000000000048        ldr     x21, [x8]
000000000000004c        mov     x0, x19
0000000000000050        bl      0x50
0000000000000054        bl      0x54
0000000000000058        mov     x29, x29
000000000000005c        bl      0x5c
0000000000000060        mov     x19, x0
0000000000000064        mov     x0, x21
0000000000000068        mov     x2, x19
000000000000006c        mov     x3, x20
0000000000000070        bl      0x70
0000000000000074        mov     x0, x19
0000000000000078        bl      0x78
000000000000007c        mov     x0, x20
0000000000000080        ldp     x29, x30, [sp, #0x30]
0000000000000084        ldp     x20, x19, [sp, #0x20]
0000000000000088        ldp     x22, x21, [sp, #0x10]
000000000000008c        add     sp, sp, #0x40
0000000000000090        b       0x90
```

</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJzsWFFv4jgX_TXmxSpyHCckDzxACt_X2aodlW533pDjGMisEyPbadN_v7KhkKEO03b6sCtNVYVA7jk-9_om9yhU63Jdcz4G0RRElwPamI1U4w0XXPAUDXJZPI__1GW9hmbDIYjRNyYLDgMCM1lVtC7gdVlzeC-l0CBGAGeQt5w1hjsA2weBGEkjpYAXLbx4ADGCRsKi1FRrXuWCw9v8O2emfOQXGbSAxVO5MlA_V7kUGuqGbSDVlmZ5O_2SLbPryWKxBJgs94uCGLkLVw-Tu_1PUsFHqkrZaFhxs5EFrGnFNWxcOiBGtFBbK2UvMBf2S1lroxpmSlnrIZjNwTQD6QSgS4Amlnj3v_uKpyCa3nNtvjTV9quSRjIp_k_rQnAFhaQFiC5BuAejkz-AUt3k9ri1andHgEPUEuRFEBtrtgClLcY2uMWBw0TTDjhAdlEfPungXYHaIH2Nx7141sE7YBui1_iwDx_YjGlRHPE_onwQm3IlHy1kp7X1xyWOWjltiY3rdMn11eJ-eTebz-5mN9ls3zQEfZ38b-blsmmKQlmql_Tew3k7n_cUAKNTlWK5bGrblMWSrbRRZb0-Jw2TYwUd_qcsVoyPaNcK6kC028Ie2awjG_ctOMRnhIfdrd917k95eqSHtga5ACgFGC9l_p0tK71e8LoAmOw4_irNZi5VRY299zD20iTHzto3M069gexlvd1iihta1pPGSMUFp5oXd9w0qn6gouE-AnszH1ZC_T1MyDt7eBieqThJjl18eEq8j7a_kQk7pnR4kHjiIvRj7Y4bxQTV2gs5bO_yZrFw2zlXssp649-6j9Gv7mOM3vYsislpcXDgjesqP1PEuFPscMfnXXeEztwYiq9Lbbg6mVGurDe04iCcPJVm83L5D_7cf-uMXiXoFz5KTivu6uwNfdVQ_hwT5Lr6wyMoIR38B0ZgknTwHxjBCTs8B9849FO3q_4anroRd8wbA6-OFudbJgseRK_NmoXtzE2S9VkhRmtYS3P0ac7SdZ3a3ledGra32KbsNttw9rdsfpunf5t5QhCEU4h6wv3-6K2W5yx3j8FxSfoBv2ZkzorpMS39Yo7WBLX2_FNcB2rt-WfairNJ9_mGzzICqI2860ad2kXe2n1g0qM28tbuvzPKUTvyR7x7BqPWnv8evR8YvahNkXeQDYpxWKRhSgd8HIxQSJI0JtFgM04JIwklzH6u0tEqiVZpktMV52GQx0ExKMcY4TDAOEKjkKBoiBEboVHOGEmTPCAFIIhXtBRDIR6roVTrQal1w8ejOIzwQNCcC-3e2WBc8yfoLlq_Fl0O1NhiLvJmrQFBotRGH1lMaQQfv7iCW_dKJm_Wg0aJ8caYrXa-bw7wfF2aTZMPmawAnlv8_uNiq6Q1AADP3aoa4LlT9U8AAAD__2Tzmk8">