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

    <tr>
        <th>Summary</th>
        <td>
            [flang][debug] Missing function/subroutine attribute {DW_AT_elemental, DW_AT_pure, DW_AT_recursive}
        </td>
    </tr>

    <tr>
      <th>Labels</th>
      <td>
            flang
      </td>
    </tr>

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

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

<pre>
    Flang currently does not generate DWARF attribute DW_AT_elemental, DW_AT_pure and DW_AT_recursive for function/subroutine.

Need to emit metadata for `DISubprogram` field `spFlags:`,  values are: DISPFlagElemental, DISPFlagPure, and DISPFlagRecursive. These procedure attributes info should be retrievable from the func operation.
</pre>
<img width="1" height="1" alt="" src="http://email.email.llvm.org/o/eJx8ks1unzAQxJ_GXFZBYL4PHEgpUg6toiRSj5ENCzgyNrLXfylvX0FJ00pVDwjP2mvNeH_Ce7UYxJYV96zoIxFota59U6iPL5J2em8HLcwCY3AODel3mCx6MJZgQYNOEEL_o3saQBA5JcOpX7uXV9S4oSGhGf9ylfbgEISZLulwDM6rG8JsHczBjKSsYXzwQTobSBmMWdKxpPuOOAFZwE0RbEhiEiTOLlYm_cNzkLuzixMbKxOYFerp2PD7oMXiWdaxMjlcwE3ogB6EQ5Z10D88Px4nvv7l9Co-BoeHPu1etacPwzG8rOgRdmdHnM5UH-k9KDNb8KsNegKJ4JCcwpuQGmF2dgNa8QwLdj_eT1kTR1ObTU3WiAjbtMryvKp5nURr2wg5j7LAuiqbuizyJsdmFDnWoqpqIcdItTzhecrTimdZypN4rkqZpSmvsnIseJmzPMFNKB1rfdti65ZIeR-wTXmSZUWkhUTtTwA4n49RM84PFlx7NNzJsHiWJ1p58p9XkCJ9UvOro-hZcT-hDMcSvinvlVn-PdA_MGHV_X9J-VS_QWFVHwWn25VoP-fKB8aHRdEaZDzajfHh8Hj97nZn33Akxoczs2d8uGLfWv4zAAD__34R_mE">