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

    <tr>
        <th>Summary</th>
        <td>
            Move JITLink from StringRefs to SymbolStringPtrs
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            good first issue,
            orcjit,
            jitlink
      </td>
    </tr>

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

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

<pre>
    JITLink is using the `lllvm::StringRef` type in many places where `llvm::orc::SymbolStringPtr` would result in better performance and memory footprint, e.g. https://github.com/llvm/llvm-project/blob/77480556c41fbca36b918323c69cb77f8e02b56c/llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h#L648-L649

In such cases the string should be interned in a `llvm::orc::SymbolStringPool` and referenced via `llvm::orc::SymbolStringPtr`. 
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJyVUstu3DAM_Br7QsTwSpYfBx_SJgFSpEDR9gckmbaVytJCkne7f1_am3SBnlJAEEUSMxgNqfxw6b88_3wx7heYCGs0boI0I2R1aa09LRm_p_MjBWp8x5HKkC5HBONgke4CRys1RjjPGN5A7xgf9Bv4sihvrxTfUtgozn61AwSMq00blcKUMMARw-gD8WoE6QZYcPHhAqP36UjolLHPgMVUwJzSMW7s7InOZNK8qkL7hZJdwDXcHYN_RU2wJ2W9otA0VVsKUevqMCotea26Q8sZ13WnVdOMLZZMUfvGY5y264C3wuNv1Gsy3j26ybit8ebf7VXMGeMvddXe0dVl5UNW3l_vZwdx1TNoGcm0zee42wJx3h1Rm7HkhMNhs0V-xFHv7Wbp5lfAkcZA7g1wMh8C7-MoIB96PnS8k3kyyWL_1Z8Q3vdiDH6BvxtAsj38wxHzNdj-v4diYlwx0kMIwXk-95WomlF1nejaCnmDrNXDiAeBrZJd3bDcSoU29pn4lDE2eT_AaEKkFdqYqLQtCAX666tJt5wSu0-IZeIhNz0rGSvFoTmwsql4wSXqRohulILX7MCyqsRFGltsegsfpjz0u3S1TpGa1sQUb00Zo5kc4i6L-OWaZh_6M1pzQuMGTMSV7xL7_ad_AISHH7Q">