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

    <tr>
        <th>Summary</th>
        <td>
            Missing `alias` support in `mlir::LLVM::GlobalOp`
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            mlir:llvm
      </td>
    </tr>

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

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

<pre>
    While working on ClangIR to LLVM lowering, we want to generate this kind of LLVM IR code:
 
```
@_ZN1BD1Ev = dso_local unnamed_addr alias void (ptr), ptr @_ZN1BD2Ev
@_ZN1CD2Ev = dso_local unnamed_addr alias void (ptr), ptr @_ZN1BD2Ev
@_ZN1CD1Ev = dso_local unnamed_addr alias void (ptr), ptr @_ZN1BD2Ev
 
define dso_local void @_ZN1BD2Ev(ptr noundef nonnull align 8 dereferenceable(9) %this) unnamed_addr #0 {
```

One of the reasons it's not possible it's because there's no support for `alias` (the other one will be filed in another issue)
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJy0k8Fu2zwMx5-GvhANZCpx4oMPadN8KNB-BXrYgF0K2aIdrYpkSHKCvf2gON1aYMcNMCyJpH6i_hRVjGZwzA2sbmG1K9SUDj40baeC9tFbP3IsWq9_NF8PxjKefXgzbkDv8M4qNzy8YPL4-PjlCa0_czBuALrDM-NZuZR9AzsOKjGmg4n4ZpxG3887Hl6w85pBbkHsQGxxHqAS129eLsXrt__L2115f0KQO9TRv1rfKYuTc-rI-lVpHVBZoyKevNEItBlTAKpzLmMK-ItB96dP1Lts-QfUv5rrVRfNvXH8ATnv_xh-YaHzk9Pco_POTdbm0waHG9QcuOfArmPVWgba1EA1Aq1ybfL0U5JAUiCsb_9clcv_2XGuZjowBlbRu4gmAa0jOp9w9DGa1vK7reVOTTG_BA58jcI4jaMPCXsfECpxUQYqkXXJWJ-D0TvGs7EWW8beWNZoHCo3O02MEwPVhW6krmWtCm7KtSwFibpaFYdGtp3YlLXsZbdcK-rLqqt011e1ku26qtaFaUjQsizFmqSoiRasq6rrS0WbZUmrdgNLwUdl7MLa03Hhw1BcDm3KciVrUVjVso2XHiI6WhNAbnMkEOWmCk1e3LTTEGEprIkp_gYlkyw3TybG3FcfFXhXxrhsvmJBbnPvzLP_rG-VfR6hEsUUbHNIaYzZRXug_WDSYWoXnT8C7ed0LsPNGPx37hLQ_nKLCLS_XuTU0M8AAAD___bbROk">