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

    <tr>
        <th>Summary</th>
        <td>
            [LLVM] Remove calls to pass initialization from pass constructors
        </td>
    </tr>

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

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

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

<pre>
    Many LLVM passes call their `initializeXYZPass()` from their constructors. As discussed in https://discourse.llvm.org/t/why-call-initializexyzpass-from-xyz-constructor/80692, this is not required, and pass initialization should ideally happen in one of the specific pass initialization functions (as a part of target initialization for target specific passes and one of the functions in `InitializePasses.h` for target independent passes).

This issue is to cleanup such initializations in pass constructors.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxsUk1vnDwQ_jXmMgIZ77LAgUPeN0KqlEhRVVVtbwaGxZHXph47Cfn1lZ1tNmlyAYTHz9c8kkgdDWLHqv9YdZ3J4Bfruvvg5BJ0Nthp626l2eDm5vstrJIICUapNfgFlQN24Moor6RWz_jj5687ScREw0TLDhxmZ0_nwdEa8i6M3joq4IpgUjQGIpxAGVi8X4ntrpjomejjkQ2OsND64VRYd2Si90z0j8uWR_L8wvm0PUdVeaTKn7bn_A0RE33DD61g4n_wiyJQBMZ6cPg7KIdT_C_NlGzBK6T0yhqgxQY9gZpQar3BItcVTZRqDYKdoyugFUc1q_FTgDmYMX4QMNFIAgmrdD5dle6I_sO8dX9P3uEiJY1vaC_IysQFfHkN4y7NF0vK_oKnzIQrmgmNP0My0RaMXzN-9fL89pIOBYwZeQujRmnCChTG5R-liTY5frfTbOp2U7trZYZdWYumKst922ZLVx0mPFRyP_O6nOuBD3xAbGQtZ1FX426XqU5wsS85b4Xg-6otBiw5zrtmwLkVdSPZnuNJKv1ahyxJ7cqyrA91puWAmlKDhTD4-GKECREL7bp4KR_Ckdiea0WeLjBeeZ2qH9vNqmv4iif7gKngKYZPFxtL_cF_Fpzu3tf4qPwShmK0Jyb6yHl-5auz9zjGQielxER_tvLQiT8BAAD__w0dO8E">