<table border="1" cellspacing="0" cellpadding="8">
    <tr>
        <th>Issue</th>
        <td>
            <a href=http://email.email.llvm.org/c/eJylU9uK2zAQ_Rr5RdjI8qX2gx-SpoFCl4WmPzCyJ7G2smUkOSX79R152-4WUlgoDLaOpLmcw5Gyw6073SZlDQ-gDHI966DB6GcI2s6cyWaxy2oIzRfOavF5XtZw1AZZsaPwWy6r9kzuWHWgC0y2XHuO4DU6HixfwIExSCWRhxFm_pLDHXpr1tgl40wcmNi9fE-IfAxh8bGDPFI4vGr84TNjrlNm3YW2DrXMm-Zd92Qr-NnZiX_6cszeNvo24szkR6JMc2Ekl6Y-gAup0YpQJM9kUcm2yCMrOgsYE_4lg49JPTFUyD1ccYj0ae1w9QTUjc92Tg0832KJR_X0WoBE8rj1rMVeh94OeO9QNp7UIbkPeV4XrYiSy-adKhAHiiwZumJoixYSWMNoXfcA_vtXuCWrM93fpS46jKvKejsRiPV-_dLF2SfsA0Ht_YqeFlWRizIZu0KWUNWlEBWW8lyrpirbqh1EPUhZQ6sSAwqN7zbPSGMG6vYA_fhIiOgk_z-D7qSQUuS5EGVJKmVDKWTV9n2f12f5AZGVAifQ5o9Eieu2kmq9eDo02odX_RLwXl9mxG1kmjDoYDZAw6cTjW5pl58Wo8Nvb999SzAPb0zPij15pSfj3fcSP1vH3xgy2Vh2G8WfBxUrtg>53104</a>
        </td>
    </tr>

    <tr>
        <th>Summary</th>
        <td>
            [lld-macho] Split symbol table initialization and resolution; cache InputFile::symbols for --start-lib
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            lld:MachO
      </td>
    </tr>

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

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

<pre>
    Symbol table initialization (populating `InputFile::symbol[*]`) is easier to parallelize than symbol resolution. 

See https://reviews.llvm.org/D62188 https://reviews.llvm.org/D62290 from ELF.

Then, in the `--start-lib` (#52931) state, `InputFile::symbols` can be saved to be reused by non-lazy `ObjFile::parse` `BitcodeFile::parse` (see [D116390](https://reviews.llvm.org/D62290)).
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyNkt2O2yAQhZ8G3yBbGP9f-CJpGqlSVys1fQGwxzZbbCzAqbJP38HbdlMplVZCmDHMzDkfSNPf2sttlkZTL6QGqhblldDqVXhlFkp4vZp10xgtIyUl-7Ksmz8rDSQ74HB7LimOhB9IccIDhDdUOQrCKbDUG7oKK7QGLAnUT2KhbznUgjN6C10SStiJsMPbfAGgk_erCx34GYeFq4KfLtH6OifGjvjrVPK0rj90jjeMDtbM9PPXc3Lf6PsEC-Gf0DLqgmAujp0X1sdaSYyCecKzgjdZGlzhnoeQ8D8MLiR16FACdeIKfbCPawubw0De6GKWWIvXWyjxLF_eCyAkB3vPkh2V70wPjzZ57ZAO4j6laZk1LCDn9QcpoAccSdS3Wd9kjYi88hparKZ1H8-imwzWo5dVK__nkh4-CrH0d7dHsiOa7pDgYyh0MJbekY02q9t_JY_KT5tMOjNjEHT__sSrNS_QeQyVcxs4XBRZyvJoagWrUihzVvZll-d1N2RcDhlURVoNfV9VkRYStGv3t8nRIXZ7QpnPGKHNSLWccc7SlLE8R5ZJnzNeNF3XpeXAKwCSM5iF0n9BRrbdRcltdLiplfPvlCPhnBoX2HmG-mLzk7Htk3A_volbtOtvd_G_ADDBFxA">