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

    <tr>
        <th>Summary</th>
        <td>
            HLSL intrinsic expansion cleanup - preserve/apply attributes/tail call/FMF consistently
        </td>
    </tr>

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

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

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

<pre>
    We need to determine and consistently apply an agreed upon approach in `llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp`, when it comes to preserving call `Attributes` and `TailCall` state on generated intrinsic calls based on the original intrinsic call, as well as any needed `FastMathFlags` preservation.
</pre>
<img width="1px" height="1px" alt="" src="http://email.email.llvm.org/o/eJxcUktv3CAQ_jX4grLC-LHaA4c0KWqk5NRIzXUME3sqFiwY5_HvK6xdpe3FRsMw872gFJojohHDNzHcN7DxkrJh_Oh8MyX_aX6hjIhecpIeGfOZIkqIXroUCxXGyOFTwrrWb5Qw59q9rSnWYk7gFklRilGF8HYW2gaahLbPkGdkoe09ZXT8Uk8vD48PkTPFQu77xwqxUIoHt65iVELfyfcFoySWLp2xVEBrxoL5jeIsHYRQl9wyZ5o2xiJGteMUo3oGCncQQi0VBkaZopwxYgZGL-m6dJ9S5AQFfW3hBWXKNFOE8F9XxQNFvmMI9Q_xc5cJ930WCj8BLzbAvOO4AAWuhBpvOn_qTtCgaY_62Opej6pZTHtq23bw_av37TB1Hp0fWlBHN3Sjfx3HhoxWulcn3WnV91odcBj86DuYFCjvFIpe4RkoHKrWh5TnhkrZ0LTqdGyPTYAJQ9m91jriu9xvhdbV-mzqo5tpm4voVaDC5WsMEwc0Px5_Pv6lA149ki4gxG2VN1emKLS9ZOLLEG0ZKFzks_bJ_pOhZsvBLMxrEd2t0FZoOxMv23Rwac_NJT4V5JrTb3Q1PjuDOvpC8c3oPwEAAP__py30aQ">