<table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Issue</th>
<td>
<a href=https://github.com/llvm/llvm-project/issues/119699>119699</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>
support new struct path tbaa in MLIR LLVM Dialect
</td>
</tr>
<tr>
<th>Labels</th>
<td>
mlir
</td>
</tr>
<tr>
<th>Assignees</th>
<td>
</td>
</tr>
<tr>
<th>Reporter</th>
<td>
PikachuHyA
</td>
</tr>
</table>
<pre>
I'm currently working on implementing support for TBAA ( https://github.com/llvm/clangir/pull/1076 ) in Clang IR and have noticed that the LLVM Dialect does not accommodate the new format of TBAA.
To address this, I’ve identified two potential approaches:
1. **Enhance Existing Attributes**: We could extend the current attributes, namely `LLVM_TBAAMemberAttr`, `LLVM_TBAATypeDescriptorAttr`, and `LLVM_TBAATagAttr`, to support the new struct path TBAA format.
2. **Introduce Separate Attributes**: Alternatively, we could introduce separate attributes such as `LLVM_TBAAStructFieldAttr`, `LLVM_TBAATypeNodeAttr`, and `LLVM_TBAAAccessTagAttr` that are specifically designed to handle the new struct path TBAA. (a draft patch is https://github.com/llvm/llvm-project/pull/119698 )
I’d like to gather feedback from the community on which design approach is preferred. Your insights and suggestions would be greatly appreciated!
cc @bcardosolopes
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJyUlM9u4zYQxp-GugxqSJTiWAcdtEmMGkiKYjdo0VMxIscSG4oUyJG9fvuCcpw4RRt0TwLFwfD7fvMHYzS9I2rEzRdxc5_hzIMPza_mBdUw_3xqs87rU7MT8nYENYdAju0Jjj68GNeDd2DGydJIjtM5ztPkA8PeB3j-0rYg5AYG5imKshVyK-S2NzzM3Ur5UcittYf0URZdb4KQ22m2Vshtkd-uQcgajIO7dAm7r4BOw4AHAufZKNLAAzLwQPD4-NsT3Bu0pBi0p5hCAJXy4-g1Mi1Rjo5J2IgMfr_IW4m8FXn77AG1DhQj8GCikHewEw9SbHJR1wcCo5O9vUlPHj1MntMZLeA0BY9qoMXekqtYgZCtkO2DG9ApgofvJi5sWuZgupkpngNE2cLvBMrPVgN9Z3J6kflKGfAq_g4cjmRPINZ5MvtnUv9EY0chpRXrPMVcXz6fJrqnqIKZ2F8HJYofArG_umX_VsMLsshhVgwT8nCu6ZnhKzt58btzHLyeFcE3mjAk6P_muLVMwSGbA9lTevF4QWDeEsRLgncEEGc1AMYP0r8tyraGrP6Ewi9e0yf-W6UoxncK567CQBAnUmZvFFp7Ak3LoOhEaECnLf0noERkg6AD7pe_agAT_8cUpM9PU_B_keKrUSjqdb1Jw3AG_t6ZGqx5oSSoRx4owJ5Id6heYB_8eO4lP46zM3xKk3ocjBpejby1bpI2BdpTCKRX8IefAxgXTT9wXFjFue8psvEuwnEpVEfQB8K0B1IWUgaZtJDFWaDIW6VAVHmnMGgfvfUTRRB5m-mm1HVZY0ZNcVtWeV4XeZUNDdXdRne4KbQsSnVTyC7fENVdV6xVtaYyM43MZVXIQhZlUVTVao_U5VWFN11ZlkVdiCqnEY1dJYgrH_rMxDhTs9CrM4sd2bgsOSlHm1aNTOsuNAv0bu6jqHJrIsf3DGzYUnMZh39WmjvEtJ6eHndfPyygbA62-eFqL3Ljpd51dmjk3wEAAP__M0DaUg">